@fundamental-ngx/core 0.33.4 → 0.33.5-rc.11
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/README.md +1 -1
- package/action-bar/package.json +1 -1
- package/action-sheet/package.json +1 -1
- package/alert/package.json +1 -1
- package/avatar/package.json +1 -1
- package/avatar-group/package.json +1 -1
- package/bar/package.json +1 -1
- package/breadcrumb/package.json +1 -1
- package/busy-indicator/package.json +1 -1
- package/button/package.json +1 -1
- package/calendar/package.json +1 -1
- package/card/package.json +1 -1
- package/carousel/package.json +1 -1
- package/checkbox/package.json +1 -1
- package/combobox/package.json +1 -1
- package/date-picker/package.json +1 -1
- package/datetime/package.json +1 -1
- package/datetime-picker/esm2020/datetime-picker.component.mjs +3 -3
- package/datetime-picker/fesm2015/fundamental-ngx-core-datetime-picker.mjs +2 -2
- package/datetime-picker/fesm2015/fundamental-ngx-core-datetime-picker.mjs.map +1 -1
- package/datetime-picker/fesm2020/fundamental-ngx-core-datetime-picker.mjs +2 -2
- package/datetime-picker/fesm2020/fundamental-ngx-core-datetime-picker.mjs.map +1 -1
- package/datetime-picker/package.json +1 -1
- package/dialog/package.json +1 -1
- package/dynamic-page/package.json +1 -1
- package/dynamic-side-content/package.json +1 -1
- package/esm2020/datetime-picker/datetime-picker.component.mjs +3 -3
- package/esm2020/multi-input/multi-input-mobile/multi-input-mobile.component.mjs +8 -5
- package/esm2020/multi-input/multi-input.component.mjs +52 -40
- package/esm2020/multi-input/multi-input.interface.mjs +1 -1
- package/esm2020/time/time-column/time-column.component.mjs +51 -25
- package/esm2020/time/time.component.mjs +15 -4
- package/esm2020/time-picker/time-picker.component.mjs +1 -1
- package/facets/package.json +1 -1
- package/feed-input/package.json +1 -1
- package/feed-list-item/package.json +1 -1
- package/fesm2015/fundamental-ngx-core-datetime-picker.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-datetime-picker.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-multi-input.mjs +59 -43
- package/fesm2015/fundamental-ngx-core-multi-input.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-time-picker.mjs +1 -1
- package/fesm2015/fundamental-ngx-core-time.mjs +64 -27
- package/fesm2015/fundamental-ngx-core-time.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-datetime-picker.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-datetime-picker.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-multi-input.mjs +58 -43
- package/fesm2020/fundamental-ngx-core-multi-input.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-time-picker.mjs +1 -1
- package/fesm2020/fundamental-ngx-core-time.mjs +64 -27
- package/fesm2020/fundamental-ngx-core-time.mjs.map +1 -1
- package/file-uploader/package.json +1 -1
- package/fixed-card-layout/package.json +1 -1
- package/flexible-column-layout/package.json +1 -1
- package/form/package.json +1 -1
- package/formatted-text/package.json +1 -1
- package/grid-list/package.json +1 -1
- package/icon/package.json +1 -1
- package/illustrated-message/package.json +1 -1
- package/infinite-scroll/package.json +1 -1
- package/info-label/package.json +1 -1
- package/inline-help/package.json +1 -1
- package/input-group/package.json +1 -1
- package/layout-grid/package.json +1 -1
- package/layout-panel/package.json +1 -1
- package/link/package.json +1 -1
- package/list/package.json +1 -1
- package/menu/package.json +1 -1
- package/message-box/package.json +1 -1
- package/message-strip/package.json +1 -1
- package/message-toast/package.json +1 -1
- package/micro-process-flow/package.json +1 -1
- package/mobile-mode/package.json +1 -1
- package/multi-input/esm2020/multi-input-mobile/multi-input-mobile.component.mjs +8 -5
- package/multi-input/esm2020/multi-input.component.mjs +52 -40
- package/multi-input/esm2020/multi-input.interface.mjs +1 -1
- package/multi-input/fesm2015/fundamental-ngx-core-multi-input.mjs +59 -43
- package/multi-input/fesm2015/fundamental-ngx-core-multi-input.mjs.map +1 -1
- package/multi-input/fesm2020/fundamental-ngx-core-multi-input.mjs +58 -43
- package/multi-input/fesm2020/fundamental-ngx-core-multi-input.mjs.map +1 -1
- package/multi-input/multi-input-mobile/multi-input-mobile.component.d.ts +3 -1
- package/multi-input/multi-input.component.d.ts +13 -6
- package/multi-input/multi-input.interface.d.ts +2 -1
- package/multi-input/package.json +1 -1
- package/nested-list/package.json +1 -1
- package/notification/package.json +1 -1
- package/object-identifier/package.json +1 -1
- package/object-marker/package.json +1 -1
- package/object-number/package.json +1 -1
- package/object-status/package.json +1 -1
- package/package.json +1 -1
- package/pagination/package.json +1 -1
- package/panel/package.json +1 -1
- package/popover/package.json +1 -1
- package/product-switch/package.json +1 -1
- package/progress-indicator/package.json +1 -1
- package/quick-view/package.json +1 -1
- package/radio/package.json +1 -1
- package/rating-indicator/package.json +1 -1
- package/resizable-card-layout/package.json +1 -1
- package/scroll-spy/package.json +1 -1
- package/scrollbar/package.json +1 -1
- package/segmented-button/package.json +1 -1
- package/select/package.json +1 -1
- package/shared/package.json +1 -1
- package/shellbar/package.json +1 -1
- package/side-navigation/package.json +1 -1
- package/slider/package.json +1 -1
- package/split-button/package.json +1 -1
- package/splitter/package.json +1 -1
- package/status-indicator/package.json +1 -1
- package/step-input/package.json +1 -1
- package/switch/package.json +1 -1
- package/table/package.json +1 -1
- package/tabs/package.json +1 -1
- package/text/package.json +1 -1
- package/tile/package.json +1 -1
- package/time/esm2020/time-column/time-column.component.mjs +51 -25
- package/time/esm2020/time.component.mjs +15 -4
- package/time/fesm2015/fundamental-ngx-core-time.mjs +64 -27
- package/time/fesm2015/fundamental-ngx-core-time.mjs.map +1 -1
- package/time/fesm2020/fundamental-ngx-core-time.mjs +64 -27
- package/time/fesm2020/fundamental-ngx-core-time.mjs.map +1 -1
- package/time/package.json +1 -1
- package/time/time-column/time-column.component.d.ts +13 -3
- package/time/time.component.d.ts +5 -1
- package/time-picker/esm2020/time-picker.component.mjs +1 -1
- package/time-picker/fesm2015/fundamental-ngx-core-time-picker.mjs +1 -1
- package/time-picker/fesm2020/fundamental-ngx-core-time-picker.mjs +1 -1
- package/time-picker/package.json +1 -1
- package/timeline/package.json +1 -1
- package/title/package.json +1 -1
- package/token/package.json +1 -1
- package/toolbar/package.json +1 -1
- package/tree/package.json +1 -1
- package/upload-collection/package.json +1 -1
- package/utils/package.json +1 -1
- package/vertical-navigation/package.json +1 -1
- package/wizard/package.json +1 -1
|
@@ -51,6 +51,8 @@ export class TimeComponent {
|
|
|
51
51
|
this.displayHours = true;
|
|
52
52
|
/** @Input Defines if time component should be used in tablet mode */
|
|
53
53
|
this.tablet = false;
|
|
54
|
+
/** @Input Defines quantity of the elements, that are visible at the same time. Should be odd number */
|
|
55
|
+
this.elementsAtOnce = 7;
|
|
54
56
|
/** @Input Whether to show spinner buttons */
|
|
55
57
|
this.spinnerButtons = true;
|
|
56
58
|
/** Active column view to iterate with */
|
|
@@ -88,6 +90,10 @@ export class TimeComponent {
|
|
|
88
90
|
}
|
|
89
91
|
this.time = this._getDefaultValue();
|
|
90
92
|
}
|
|
93
|
+
/** Offset */
|
|
94
|
+
get offset() {
|
|
95
|
+
return Math.floor(this.elementsAtOnce / 2);
|
|
96
|
+
}
|
|
91
97
|
/** Component aria-label */
|
|
92
98
|
get _componentAriaLabel() {
|
|
93
99
|
return this._timeI18nLabels.componentAriaName;
|
|
@@ -113,6 +119,9 @@ export class TimeComponent {
|
|
|
113
119
|
if (changes.meridian || changes.time) {
|
|
114
120
|
this._setUpViewGrid();
|
|
115
121
|
}
|
|
122
|
+
if (changes.elementsAtOnce && changes.elementsAtOnce.currentValue % 2 === 0) {
|
|
123
|
+
throw new Error('[elementsAtOnce] should be odd number');
|
|
124
|
+
}
|
|
116
125
|
}
|
|
117
126
|
/** @hidden */
|
|
118
127
|
ngOnDestroy() {
|
|
@@ -408,13 +417,13 @@ export class TimeComponent {
|
|
|
408
417
|
}
|
|
409
418
|
}
|
|
410
419
|
TimeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.2", ngImport: i0, type: TimeComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.TimeI18n }, { token: i2.DatetimeAdapter, optional: true }, { token: i3.ContentDensityService, optional: true }, { token: i3.RtlService, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
411
|
-
TimeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.2", type: TimeComponent, selector: "fd-time", inputs: { meridian: "meridian", validate: "validate", keepTwoDigits: "keepTwoDigits", disabled: "disabled", displaySeconds: "displaySeconds", displayMinutes: "displayMinutes", displayHours: "displayHours", compact: "compact", tablet: "tablet", time: "time", spinnerButtons: "spinnerButtons" }, host: { listeners: { "blur": "onTouched()" } }, providers: [
|
|
420
|
+
TimeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.2", type: TimeComponent, selector: "fd-time", inputs: { meridian: "meridian", validate: "validate", keepTwoDigits: "keepTwoDigits", disabled: "disabled", displaySeconds: "displaySeconds", displayMinutes: "displayMinutes", displayHours: "displayHours", compact: "compact", tablet: "tablet", elementsAtOnce: "elementsAtOnce", time: "time", spinnerButtons: "spinnerButtons" }, host: { listeners: { "blur": "onTouched()" } }, providers: [
|
|
412
421
|
{
|
|
413
422
|
provide: NG_VALUE_ACCESSOR,
|
|
414
423
|
useExisting: forwardRef(() => TimeComponent),
|
|
415
424
|
multi: true
|
|
416
425
|
}
|
|
417
|
-
], viewQueries: [{ propertyName: "columns", predicate: TimeColumnComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div\n class=\"fd-time\"\n (keydown)=\"handleKeyDownEvent($event)\"\n [class.fd-time--compact]=\"compact\"\n [class.fd-time--tablet]=\"tablet\"\n [attr.aria-label]=\"_componentAriaLabel\"\n>\n <fd-time-column\n [active]=\"isActive('hour')\"\n [rows]=\"hourViewItems\"\n [compact]=\"compact\"\n [activeValue]=\"activeHourViewItem\"\n [timeConfig]=\"getHoursConfig()\"\n [spinners]=\"spinnerButtons\"\n (activeValueChange)=\"handleHourChange($event.value.value)\"\n (activeStateChange)=\"changeActive('hour')\"\n ></fd-time-column>\n <fd-time-column\n *ngIf=\"displayMinutes\"\n [active]=\"isActive('minute')\"\n [rows]=\"minuteViewItems\"\n [compact]=\"compact\"\n [activeValue]=\"activeMinuteViewItem\"\n [timeConfig]=\"getMinutesConfig()\"\n [spinners]=\"spinnerButtons\"\n (activeValueChange)=\"handleMinuteChange($event.value.value)\"\n (activeStateChange)=\"changeActive('minute')\"\n ></fd-time-column>\n <fd-time-column\n *ngIf=\"displaySeconds\"\n [active]=\"isActive('second')\"\n [rows]=\"secondViewItems\"\n [compact]=\"compact\"\n [activeValue]=\"activeSecondViewItem\"\n [timeConfig]=\"getSecondsConfig()\"\n [spinners]=\"spinnerButtons\"\n (activeValueChange)=\"handleSecondChange($event.value.value)\"\n (activeStateChange)=\"changeActive('second')\"\n ></fd-time-column>\n <fd-time-column\n *ngIf=\"meridian\"\n [active]=\"isActive('meridian')\"\n [rows]=\"meridianViewItems\"\n [activeValue]=\"activeMeridianViewItem\"\n [offset]=\"0\"\n [compact]=\"compact\"\n [timeConfig]=\"getPeriodConfig()\"\n [meridian]=\"true\"\n [spinners]=\"spinnerButtons\"\n (activeValueChange)=\"handleMeridianChange($event.value.value)\"\n (activeStateChange)=\"changeActive('meridian')\"\n ></fd-time-column>\n</div>\n", styles: ["/*!\n.fd-input\n*/.fd-input{font-size:.875rem;font-size:var(--sapFontSize, .875rem);line-height:1.4;line-height:var(--sapContent_LineHeight, 1.4);color:var(--sapTextColor, #32363a);font-family:\"72\",\"72full\",Arial,Helvetica,sans-serif;font-family:var(--sapFontFamily, \"72\", \"72full\", Arial, Helvetica, sans-serif);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;white-space:nowrap;text-overflow:ellipsis;color:#32363a;color:var(--sapField_TextColor, #32363a);background-color:#fff;background-color:var(--sapField_Background, #fff);border-style:solid;border-width:.0625rem;border-width:var(--sapField_BorderWidth, .0625rem);border-color:#89919a;border-color:var(--sapField_BorderColor, #89919a);border-radius:.125rem;border-radius:var(--sapField_BorderCornerRadius, .125rem);outline:0;appearance:none;-webkit-appearance:none;-moz-appearance:none;padding-left:.75rem;padding-right:.75rem;min-width:2.75rem;width:100%;height:2.25rem;margin-top:.25rem;margin-bottom:.25rem;padding:0 .625rem;z-index:1;cursor:text;overflow:hidden;text-shadow:none;text-shadow:var(--fdInput_Text_Shadow, none)}.fd-input:after,.fd-input:before{box-sizing:inherit;font-size:inherit}.fd-input::placeholder{font-style:italic;color:#74777a;color:var(--sapField_PlaceholderTextColor, #74777a)}.fd-input::selection{color:#fff;color:var(--sapContent_ContrastTextColor, #fff);background-color:#0854a0;background-color:var(--sapSelectedColor, #0854a0)}.fd-input.is-hover,.fd-input:hover{background-color:#fff;background-color:var(--sapField_Hover_Background, #fff);border-color:#0854a0;border-color:var(--sapField_Hover_BorderColor, #0854a0)}.fd-input.is-success{background-color:#fff;background-color:var(--sapField_SuccessBackground, #fff);border-color:#107e3e;border-color:var(--sapField_SuccessColor, #107e3e);border-width:.0625rem;border-width:var(--sapField_SuccessBorderWidth, .0625rem);border-style:solid;border-style:var(--sapField_SuccessBorderStyle, solid)}.fd-input.is-success.is-hover,.fd-input.is-success:hover{background-color:#fff;background-color:var(--sapField_SuccessBackground, #fff);border-color:#107e3e;border-color:var(--sapField_SuccessColor, #107e3e)}.fd-input.is-error{background-color:#fff;background-color:var(--sapField_InvalidBackground, #fff);font-style:normal;font-style:var(--fdInput_State_Text_Style, normal);font-weight:400;font-weight:var(--fdInput_State_Font_Weight, normal);border-color:#b00;border-color:var(--sapField_InvalidColor, #b00);border-width:.125rem;border-width:var(--sapField_InvalidBorderWidth, .125rem);border-style:solid;border-style:var(--sapField_InvalidBorderStyle, solid)}.fd-input.is-error.is-hover,.fd-input.is-error:hover{background-color:#fff;background-color:var(--sapField_InvalidBackground, #fff);border-color:#b00;border-color:var(--sapField_InvalidColor, #b00)}.fd-input.is-alert,.fd-input.is-warning{background-color:#fff;background-color:var(--sapField_WarningBackground, #fff);font-style:normal;font-style:var(--fdInput_State_Text_Style, normal);font-weight:400;font-weight:var(--fdInput_State_Font_Weight, normal);border-color:#df6e0c;border-color:var(--sapField_WarningColor, #df6e0c);border-width:.125rem;border-width:var(--sapField_WarningBorderWidth, .125rem);border-style:solid;border-style:var(--sapField_WarningBorderStyle, solid)}.fd-input.is-alert.is-hover,.fd-input.is-alert:hover,.fd-input.is-warning.is-hover,.fd-input.is-warning:hover{background-color:#fff;background-color:var(--sapField_WarningBackground, #fff);border-color:#df6e0c;border-color:var(--sapField_WarningColor, #df6e0c)}.fd-input.is-information{background-color:#fff;background-color:var(--sapField_InformationBackground, #fff);border-color:#0a6ed1;border-color:var(--sapField_InformationColor, #0a6ed1);border-width:.125rem;border-width:var(--sapField_InformationBorderWidth, .125rem);border-style:solid;border-style:var(--sapField_InformationBorderStyle, solid)}.fd-input.is-information.is-hover,.fd-input.is-information:hover{background-color:#fff;background-color:var(--sapField_InformationBackground, #fff);border-color:#0a6ed1;border-color:var(--sapField_InformationColor, #0a6ed1)}.fd-input.is-focus,.fd-input:focus{z-index:5;box-shadow:none;outline-offset:-.1875rem;outline-width:.0625rem;outline-width:var(--sapContent_FocusWidth, .0625rem);outline-color:#000;outline-color:var(--sapContent_FocusColor, #000);outline-style:dotted;outline-style:var(--sapContent_FocusStyle, dotted)}.fd-input.is-alert,.fd-input.is-error,.fd-input.is-information,.fd-input.is-warning{border-width:.125rem;border-style:solid;border-style:var(--fdInput_State_Border_Type, solid)}.fd-input.is-alert.is-focus,.fd-input.is-alert:focus,.fd-input.is-error.is-focus,.fd-input.is-error:focus,.fd-input.is-information.is-focus,.fd-input.is-information:focus,.fd-input.is-warning.is-focus,.fd-input.is-warning:focus{z-index:5;box-shadow:none;outline-offset:-.25rem}.fd-input.is-disabled,.fd-input:disabled,.fd-input[aria-disabled=true]{pointer-events:none;opacity:.4;opacity:var(--sapContent_DisabledOpacity, .4)}.fd-input.is-disabled::placeholder,.fd-input:disabled::placeholder,.fd-input[aria-disabled=true]::placeholder{color:transparent}.fd-input.is-readonly,.fd-input[aria-readonly=true],.fd-input[readonly]{background-color:#f2f2f280;background-color:var(--sapField_ReadOnly_Background, rgba(242, 242, 242, .5));border-color:#89919a;border-color:var(--sapField_ReadOnly_BorderColor, #89919a)}.fd-input.is-readonly::placeholder,.fd-input[aria-readonly=true]::placeholder,.fd-input[readonly]::placeholder{color:transparent}.fd-input::-ms-clear{display:none}.fd-input[aria-expanded=false]{z-index:0}.fd-input.is-expanded,.fd-input[aria-expanded=true]{z-index:4}.fd-input:last-child{margin-bottom:.25rem}.fd-input--compact{min-width:2rem;height:1.625rem;margin-top:.1875rem;margin-bottom:.1875rem;padding:0 .5rem;box-sizing:border-box}.fd-input--no-number-spinner{-moz-appearance:textfield}.fd-input--no-number-spinner::-webkit-inner-spin-button,.fd-input--no-number-spinner::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.fd-input.right-align{text-align:right}/*!\n * Fundamental Library Styles v0.21.0-rc.92\n * Copyright (c) 2022 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n */.fd-time{font-size:.875rem;font-size:var(--sapFontSize, .875rem);line-height:1.4;line-height:var(--sapContent_LineHeight, 1.4);color:#32363a;color:var(--sapTextColor, #32363a);font-family:\"72\",\"72full\",Arial,Helvetica,sans-serif;font-family:var(--sapFontFamily, \"72\", \"72full\", Arial, Helvetica, sans-serif);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;display:flex;flex-direction:row;justify-content:center;padding:1rem}.fd-time:after,.fd-time:before{box-sizing:inherit;font-size:inherit}.fd-time__col{font-size:.875rem;font-size:var(--sapFontSize, .875rem);line-height:1.4;line-height:var(--sapContent_LineHeight, 1.4);color:#32363a;color:var(--sapTextColor, #32363a);font-family:\"72\",\"72full\",Arial,Helvetica,sans-serif;font-family:var(--sapFontFamily, \"72\", \"72full\", Arial, Helvetica, sans-serif);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;display:flex;align-items:center;flex-direction:column;margin-right:.5rem}.fd-time__col:after,.fd-time__col:before{box-sizing:inherit;font-size:inherit}.fd-time__col:last-child{margin-right:0}.fd-time__current-indicator{font-size:.875rem;font-size:var(--sapFontSize, .875rem);line-height:1.4;line-height:var(--sapContent_LineHeight, 1.4);color:#32363a;color:var(--sapTextColor, #32363a);font-family:\"72\",\"72full\",Arial,Helvetica,sans-serif;font-family:var(--sapFontFamily, \"72\", \"72full\", Arial, Helvetica, sans-serif);font-weight:400;padding:0;margin:0;border:0;position:absolute;top:50%;left:0;transform:translateY(-50%);box-sizing:border-box;width:3rem;height:2.875rem;border:.0625rem solid #0854a0;border:.0625rem solid var(--sapList_SelectionBorderColor, #0854a0);border-radius:.25rem;border-radius:var(--sapButton_BorderCornerRadius, .25rem)}.fd-time__current-indicator:after,.fd-time__current-indicator:before{box-sizing:inherit;font-size:inherit}.fd-time__wrapper{font-size:.875rem;font-size:var(--sapFontSize, .875rem);line-height:1.4;line-height:var(--sapContent_LineHeight, 1.4);color:#32363a;color:var(--sapTextColor, #32363a);font-family:\"72\",\"72full\",Arial,Helvetica,sans-serif;font-family:var(--sapFontFamily, \"72\", \"72full\", Arial, Helvetica, sans-serif);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;display:flex;justify-content:center;align-items:center;flex-direction:column;overflow:hidden;position:relative;flex:1 1 auto;width:3rem}.fd-time__wrapper:after,.fd-time__wrapper:before{box-sizing:inherit;font-size:inherit}.fd-time__wrapper--active{max-height:20.125rem;height:20.125rem;justify-content:initial}.fd-time__wrapper--meridian .fd-time__item:first-child{margin-top:8.625rem}.fd-time__wrapper--meridian .fd-time__item:last-child{margin-bottom:8.625rem}.fd-time__wrapper--meridian .fd-time__list{height:20.125rem}.fd-time__item{font-size:.875rem;font-size:var(--sapFontSize, .875rem);line-height:1.4;line-height:var(--sapContent_LineHeight, 1.4);color:#32363a;color:var(--sapTextColor, #32363a);font-family:\"72\",\"72full\",Arial,Helvetica,sans-serif;font-family:var(--sapFontFamily, \"72\", \"72full\", Arial, Helvetica, sans-serif);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;display:flex;justify-content:center;align-items:center;cursor:default;width:3rem;height:2.875rem;min-height:2.875rem;border-radius:.25rem;border-radius:var(--sapButton_BorderCornerRadius, .25rem);background-color:#fafafa;background-color:var(--sapLegend_WorkingBackground, #fafafa);border:.0625rem solid #fff;border:.0625rem solid var(--sapList_Background, #fff);text-shadow:none;text-shadow:var(--fdTime_Text_Shadow, none)}.fd-time__item:after,.fd-time__item:before{box-sizing:inherit;font-size:inherit}.fd-time__item:hover{background-color:#f5f5f5;background-color:var(--sapList_Hover_Background, #f5f5f5)}.fd-time__item:active{background-color:#0854a0;background-color:var(--sapContent_Selected_Background, #0854a0);border-color:transparent;color:#fff;color:var(--sapContent_Selected_TextColor, #fff)}.fd-time__item--current{border-color:#0854a0;border-color:var(--sapList_SelectionBorderColor, #0854a0);background-color:#fff;background-color:var(--sapList_Background, #fff)}.fd-time__item--current:hover{background-color:#f5f5f5;background-color:var(--sapList_Hover_Background, #f5f5f5)}.fd-time__item--current:active{background-color:#0854a0;background-color:var(--sapContent_Selected_Background, #0854a0);border-color:transparent;color:#fff;color:var(--sapContent_Selected_TextColor, #fff)}.fd-time__item--collapsed{background-color:#0854a0;background-color:var(--sapContent_Selected_Background, #0854a0);color:#fff;color:var(--sapContent_Selected_TextColor, #fff);border-color:transparent}.fd-time__item--collapsed:hover{background-color:#095caf;background-color:var(--sapContent_Selected_Hover_Background, #095caf)}.fd-time__item--hidden{visibility:hidden}.fd-time__unit{font-size:.875rem;font-size:var(--sapFontSize, .875rem);line-height:1.4;line-height:var(--sapContent_LineHeight, 1.4);color:#32363a;color:var(--sapTextColor, #32363a);font-family:\"72\",\"72full\",Arial,Helvetica,sans-serif;font-family:var(--sapFontFamily, \"72\", \"72full\", Arial, Helvetica, sans-serif);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center;color:inherit;display:block;width:100%;height:100%;z-index:2;line-height:2.875rem}.fd-time__unit:after,.fd-time__unit:before{box-sizing:inherit;font-size:inherit}.fd-time__list{font-size:.875rem;font-size:var(--sapFontSize, .875rem);line-height:1.4;line-height:var(--sapContent_LineHeight, 1.4);color:#32363a;color:var(--sapTextColor, #32363a);font-family:\"72\",\"72full\",Arial,Helvetica,sans-serif;font-family:var(--sapFontFamily, \"72\", \"72full\", Arial, Helvetica, sans-serif);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;-ms-overflow-style:none;scrollbar-width:none;overflow:hidden}.fd-time__list:after,.fd-time__list:before{box-sizing:inherit;font-size:inherit}.fd-time__list::-webkit-scrollbar{display:none}.fd-time__slider-label{line-height:1.4;line-height:var(--sapContent_LineHeight, 1.4);color:#32363a;color:var(--sapTextColor, #32363a);font-family:\"72\",\"72full\",Arial,Helvetica,sans-serif;font-family:var(--sapFontFamily, \"72\", \"72full\", Arial, Helvetica, sans-serif);font-weight:400;box-sizing:border-box;border:0;text-overflow:ellipsis;width:-moz-fit-content;width:fit-content;position:relative;max-width:100%;font-size:.875rem;font-size:var(--sapFontSize, .875rem);color:#6a6d70;color:var(--sapContent_LabelColor, #6a6d70);margin-right:.5rem;cursor:text;align-self:flex-start;line-height:2rem;height:2rem;font-size:.75rem;font-size:var(--sapFontSmallSize, .75rem);max-width:3rem;overflow:hidden;white-space:nowrap;text-overflow:clip;padding:0;margin:0;align-self:auto}.fd-time__slider-label:after,.fd-time__slider-label:before{box-sizing:inherit;font-size:inherit}.fd-time__slider-label[dir=rtl],[dir=rtl] .fd-time__slider-label{margin-left:.5rem;margin-right:0}.fd-time__slider-label[dir=rtl],[dir=rtl] .fd-time__slider-label{padding:0;margin:0}.fd-time__control{font-size:.875rem;font-size:var(--sapFontSize, .875rem);line-height:1.4;line-height:var(--sapContent_LineHeight, 1.4);color:#32363a;color:var(--sapTextColor, #32363a);font-family:\"72\",\"72full\",Arial,Helvetica,sans-serif;font-family:var(--sapFontFamily, \"72\", \"72full\", Arial, Helvetica, sans-serif);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0}.fd-time__control:after,.fd-time__control:before{box-sizing:inherit;font-size:inherit}.fd-time--tablet{padding:.5rem}.fd-time--tablet .fd-time__item{height:2.875rem;min-height:2.875rem}.fd-time--compact{padding:.5rem}.fd-time--compact .fd-time__item{height:2rem;min-height:2rem}.fd-time--compact .fd-time__wrapper .fd-time__current-indicator{height:2rem}.fd-time--compact .fd-time__wrapper.fd-time__wrapper--active{max-height:14rem;height:14rem}.fd-time--compact .fd-time__wrapper.fd-time__wrapper--meridian .fd-time__item:first-child{margin-top:6rem}.fd-time--compact .fd-time__wrapper.fd-time__wrapper--meridian .fd-time__item:last-child{margin-bottom:6rem}.fd-time--compact .fd-time__wrapper.fd-time__wrapper--meridian .fd-time__list{height:14rem}.fd-time--compact .fd-time__unit{line-height:2rem}.fd-time--scrollable .fd-time__list{overflow:auto}.fd-time[dir=rtl] .fd-time__col,[dir=rtl] .fd-time .fd-time__col{margin-right:0;margin-left:.5rem}.fd-time[dir=rtl] .fd-time__col:last-child,[dir=rtl] .fd-time .fd-time__col:last-child{margin-left:0}.fd-time__list{touch-action:pan-x;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}\n"], components: [{ type: i4.TimeColumnComponent, selector: "fd-time-column", inputs: ["rows", "compact", "spinners", "activeValue", "active", "meridian", "id", "timeConfig", "offset"], outputs: ["activeValueChange", "activeStateChange"] }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
426
|
+
], viewQueries: [{ propertyName: "columns", predicate: TimeColumnComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div\n class=\"fd-time\"\n (keydown)=\"handleKeyDownEvent($event)\"\n [class.fd-time--compact]=\"compact\"\n [class.fd-time--tablet]=\"tablet\"\n [attr.aria-label]=\"_componentAriaLabel\"\n>\n <fd-time-column\n [active]=\"isActive('hour')\"\n [rows]=\"hourViewItems\"\n [compact]=\"compact\"\n [offset]=\"offset\"\n [elementsAtOnce]=\"elementsAtOnce\"\n [activeValue]=\"activeHourViewItem\"\n [timeConfig]=\"getHoursConfig()\"\n [spinners]=\"spinnerButtons\"\n (activeValueChange)=\"handleHourChange($event.value.value)\"\n (activeStateChange)=\"changeActive('hour')\"\n ></fd-time-column>\n <fd-time-column\n *ngIf=\"displayMinutes\"\n [active]=\"isActive('minute')\"\n [rows]=\"minuteViewItems\"\n [compact]=\"compact\"\n [offset]=\"offset\"\n [elementsAtOnce]=\"elementsAtOnce\"\n [activeValue]=\"activeMinuteViewItem\"\n [timeConfig]=\"getMinutesConfig()\"\n [spinners]=\"spinnerButtons\"\n (activeValueChange)=\"handleMinuteChange($event.value.value)\"\n (activeStateChange)=\"changeActive('minute')\"\n ></fd-time-column>\n <fd-time-column\n *ngIf=\"displaySeconds\"\n [active]=\"isActive('second')\"\n [rows]=\"secondViewItems\"\n [compact]=\"compact\"\n [offset]=\"offset\"\n [elementsAtOnce]=\"elementsAtOnce\"\n [activeValue]=\"activeSecondViewItem\"\n [timeConfig]=\"getSecondsConfig()\"\n [spinners]=\"spinnerButtons\"\n (activeValueChange)=\"handleSecondChange($event.value.value)\"\n (activeStateChange)=\"changeActive('second')\"\n ></fd-time-column>\n <fd-time-column\n *ngIf=\"meridian\"\n [active]=\"isActive('meridian')\"\n [rows]=\"meridianViewItems\"\n [activeValue]=\"activeMeridianViewItem\"\n [offset]=\"0\"\n [elementsAtOnce]=\"elementsAtOnce\"\n [compact]=\"compact\"\n [timeConfig]=\"getPeriodConfig()\"\n [meridian]=\"true\"\n [spinners]=\"spinnerButtons\"\n (activeValueChange)=\"handleMeridianChange($event.value.value)\"\n (activeStateChange)=\"changeActive('meridian')\"\n ></fd-time-column>\n</div>\n", styles: ["/*!\n.fd-input\n*/.fd-input{font-size:.875rem;font-size:var(--sapFontSize, .875rem);line-height:1.4;line-height:var(--sapContent_LineHeight, 1.4);color:var(--sapTextColor, #32363a);font-family:\"72\",\"72full\",Arial,Helvetica,sans-serif;font-family:var(--sapFontFamily, \"72\", \"72full\", Arial, Helvetica, sans-serif);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;white-space:nowrap;text-overflow:ellipsis;color:#32363a;color:var(--sapField_TextColor, #32363a);background-color:#fff;background-color:var(--sapField_Background, #fff);border-style:solid;border-width:.0625rem;border-width:var(--sapField_BorderWidth, .0625rem);border-color:#89919a;border-color:var(--sapField_BorderColor, #89919a);border-radius:.125rem;border-radius:var(--sapField_BorderCornerRadius, .125rem);outline:0;appearance:none;-webkit-appearance:none;-moz-appearance:none;padding-left:.75rem;padding-right:.75rem;min-width:2.75rem;width:100%;height:2.25rem;margin-top:.25rem;margin-bottom:.25rem;padding:0 .625rem;z-index:1;cursor:text;overflow:hidden;text-shadow:none;text-shadow:var(--fdInput_Text_Shadow, none)}.fd-input:after,.fd-input:before{box-sizing:inherit;font-size:inherit}.fd-input::placeholder{font-style:italic;color:#74777a;color:var(--sapField_PlaceholderTextColor, #74777a)}.fd-input::selection{color:#fff;color:var(--sapContent_ContrastTextColor, #fff);background-color:#0854a0;background-color:var(--sapSelectedColor, #0854a0)}.fd-input.is-hover,.fd-input:hover{background-color:#fff;background-color:var(--sapField_Hover_Background, #fff);border-color:#0854a0;border-color:var(--sapField_Hover_BorderColor, #0854a0)}.fd-input.is-success{background-color:#fff;background-color:var(--sapField_SuccessBackground, #fff);border-color:#107e3e;border-color:var(--sapField_SuccessColor, #107e3e);border-width:.0625rem;border-width:var(--sapField_SuccessBorderWidth, .0625rem);border-style:solid;border-style:var(--sapField_SuccessBorderStyle, solid)}.fd-input.is-success.is-hover,.fd-input.is-success:hover{background-color:#fff;background-color:var(--sapField_SuccessBackground, #fff);border-color:#107e3e;border-color:var(--sapField_SuccessColor, #107e3e)}.fd-input.is-error{background-color:#fff;background-color:var(--sapField_InvalidBackground, #fff);font-style:normal;font-style:var(--fdInput_State_Text_Style, normal);font-weight:400;font-weight:var(--fdInput_State_Font_Weight, normal);border-color:#b00;border-color:var(--sapField_InvalidColor, #b00);border-width:.125rem;border-width:var(--sapField_InvalidBorderWidth, .125rem);border-style:solid;border-style:var(--sapField_InvalidBorderStyle, solid)}.fd-input.is-error.is-hover,.fd-input.is-error:hover{background-color:#fff;background-color:var(--sapField_InvalidBackground, #fff);border-color:#b00;border-color:var(--sapField_InvalidColor, #b00)}.fd-input.is-alert,.fd-input.is-warning{background-color:#fff;background-color:var(--sapField_WarningBackground, #fff);font-style:normal;font-style:var(--fdInput_State_Text_Style, normal);font-weight:400;font-weight:var(--fdInput_State_Font_Weight, normal);border-color:#df6e0c;border-color:var(--sapField_WarningColor, #df6e0c);border-width:.125rem;border-width:var(--sapField_WarningBorderWidth, .125rem);border-style:solid;border-style:var(--sapField_WarningBorderStyle, solid)}.fd-input.is-alert.is-hover,.fd-input.is-alert:hover,.fd-input.is-warning.is-hover,.fd-input.is-warning:hover{background-color:#fff;background-color:var(--sapField_WarningBackground, #fff);border-color:#df6e0c;border-color:var(--sapField_WarningColor, #df6e0c)}.fd-input.is-information{background-color:#fff;background-color:var(--sapField_InformationBackground, #fff);border-color:#0a6ed1;border-color:var(--sapField_InformationColor, #0a6ed1);border-width:.125rem;border-width:var(--sapField_InformationBorderWidth, .125rem);border-style:solid;border-style:var(--sapField_InformationBorderStyle, solid)}.fd-input.is-information.is-hover,.fd-input.is-information:hover{background-color:#fff;background-color:var(--sapField_InformationBackground, #fff);border-color:#0a6ed1;border-color:var(--sapField_InformationColor, #0a6ed1)}.fd-input.is-focus,.fd-input:focus{z-index:5;box-shadow:none;outline-offset:-.1875rem;outline-width:.0625rem;outline-width:var(--sapContent_FocusWidth, .0625rem);outline-color:#000;outline-color:var(--sapContent_FocusColor, #000);outline-style:dotted;outline-style:var(--sapContent_FocusStyle, dotted)}.fd-input.is-alert,.fd-input.is-error,.fd-input.is-information,.fd-input.is-warning{border-width:.125rem;border-style:solid;border-style:var(--fdInput_State_Border_Type, solid)}.fd-input.is-alert.is-focus,.fd-input.is-alert:focus,.fd-input.is-error.is-focus,.fd-input.is-error:focus,.fd-input.is-information.is-focus,.fd-input.is-information:focus,.fd-input.is-warning.is-focus,.fd-input.is-warning:focus{z-index:5;box-shadow:none;outline-offset:-.25rem}.fd-input.is-disabled,.fd-input:disabled,.fd-input[aria-disabled=true]{pointer-events:none;opacity:.4;opacity:var(--sapContent_DisabledOpacity, .4)}.fd-input.is-disabled::placeholder,.fd-input:disabled::placeholder,.fd-input[aria-disabled=true]::placeholder{color:transparent}.fd-input.is-readonly,.fd-input[aria-readonly=true],.fd-input[readonly]{background-color:#f2f2f280;background-color:var(--sapField_ReadOnly_Background, rgba(242, 242, 242, .5));border-color:#89919a;border-color:var(--sapField_ReadOnly_BorderColor, #89919a)}.fd-input.is-readonly::placeholder,.fd-input[aria-readonly=true]::placeholder,.fd-input[readonly]::placeholder{color:transparent}.fd-input::-ms-clear{display:none}.fd-input[aria-expanded=false]{z-index:0}.fd-input.is-expanded,.fd-input[aria-expanded=true]{z-index:4}.fd-input:last-child{margin-bottom:.25rem}.fd-input--compact{min-width:2rem;height:1.625rem;margin-top:.1875rem;margin-bottom:.1875rem;padding:0 .5rem;box-sizing:border-box}.fd-input--no-number-spinner{-moz-appearance:textfield}.fd-input--no-number-spinner::-webkit-inner-spin-button,.fd-input--no-number-spinner::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.fd-input.right-align{text-align:right}/*!\n * Fundamental Library Styles v0.21.0-rc.92\n * Copyright (c) 2022 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n */.fd-time{font-size:.875rem;font-size:var(--sapFontSize, .875rem);line-height:1.4;line-height:var(--sapContent_LineHeight, 1.4);color:#32363a;color:var(--sapTextColor, #32363a);font-family:\"72\",\"72full\",Arial,Helvetica,sans-serif;font-family:var(--sapFontFamily, \"72\", \"72full\", Arial, Helvetica, sans-serif);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;display:flex;flex-direction:row;justify-content:center;padding:1rem}.fd-time:after,.fd-time:before{box-sizing:inherit;font-size:inherit}.fd-time__col{font-size:.875rem;font-size:var(--sapFontSize, .875rem);line-height:1.4;line-height:var(--sapContent_LineHeight, 1.4);color:#32363a;color:var(--sapTextColor, #32363a);font-family:\"72\",\"72full\",Arial,Helvetica,sans-serif;font-family:var(--sapFontFamily, \"72\", \"72full\", Arial, Helvetica, sans-serif);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;display:flex;align-items:center;flex-direction:column;margin-right:.5rem}.fd-time__col:after,.fd-time__col:before{box-sizing:inherit;font-size:inherit}.fd-time__col:last-child{margin-right:0}.fd-time__current-indicator{font-size:.875rem;font-size:var(--sapFontSize, .875rem);line-height:1.4;line-height:var(--sapContent_LineHeight, 1.4);color:#32363a;color:var(--sapTextColor, #32363a);font-family:\"72\",\"72full\",Arial,Helvetica,sans-serif;font-family:var(--sapFontFamily, \"72\", \"72full\", Arial, Helvetica, sans-serif);font-weight:400;padding:0;margin:0;border:0;position:absolute;top:50%;left:0;transform:translateY(-50%);box-sizing:border-box;width:3rem;height:2.875rem;border:.0625rem solid #0854a0;border:.0625rem solid var(--sapList_SelectionBorderColor, #0854a0);border-radius:.25rem;border-radius:var(--sapButton_BorderCornerRadius, .25rem)}.fd-time__current-indicator:after,.fd-time__current-indicator:before{box-sizing:inherit;font-size:inherit}.fd-time__wrapper{font-size:.875rem;font-size:var(--sapFontSize, .875rem);line-height:1.4;line-height:var(--sapContent_LineHeight, 1.4);color:#32363a;color:var(--sapTextColor, #32363a);font-family:\"72\",\"72full\",Arial,Helvetica,sans-serif;font-family:var(--sapFontFamily, \"72\", \"72full\", Arial, Helvetica, sans-serif);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;display:flex;justify-content:center;align-items:center;flex-direction:column;overflow:hidden;position:relative;flex:1 1 auto;width:3rem}.fd-time__wrapper:after,.fd-time__wrapper:before{box-sizing:inherit;font-size:inherit}.fd-time__wrapper--active{max-height:20.125rem;height:20.125rem;justify-content:initial}.fd-time__wrapper--meridian .fd-time__item:first-child{margin-top:8.625rem}.fd-time__wrapper--meridian .fd-time__item:last-child{margin-bottom:8.625rem}.fd-time__wrapper--meridian .fd-time__list{height:20.125rem}.fd-time__item{font-size:.875rem;font-size:var(--sapFontSize, .875rem);line-height:1.4;line-height:var(--sapContent_LineHeight, 1.4);color:#32363a;color:var(--sapTextColor, #32363a);font-family:\"72\",\"72full\",Arial,Helvetica,sans-serif;font-family:var(--sapFontFamily, \"72\", \"72full\", Arial, Helvetica, sans-serif);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;display:flex;justify-content:center;align-items:center;cursor:default;width:3rem;height:2.875rem;min-height:2.875rem;border-radius:.25rem;border-radius:var(--sapButton_BorderCornerRadius, .25rem);background-color:#fafafa;background-color:var(--sapLegend_WorkingBackground, #fafafa);border:.0625rem solid #fff;border:.0625rem solid var(--sapList_Background, #fff);text-shadow:none;text-shadow:var(--fdTime_Text_Shadow, none)}.fd-time__item:after,.fd-time__item:before{box-sizing:inherit;font-size:inherit}.fd-time__item:hover{background-color:#f5f5f5;background-color:var(--sapList_Hover_Background, #f5f5f5)}.fd-time__item:active{background-color:#0854a0;background-color:var(--sapContent_Selected_Background, #0854a0);border-color:transparent;color:#fff;color:var(--sapContent_Selected_TextColor, #fff)}.fd-time__item--current{border-color:#0854a0;border-color:var(--sapList_SelectionBorderColor, #0854a0);background-color:#fff;background-color:var(--sapList_Background, #fff)}.fd-time__item--current:hover{background-color:#f5f5f5;background-color:var(--sapList_Hover_Background, #f5f5f5)}.fd-time__item--current:active{background-color:#0854a0;background-color:var(--sapContent_Selected_Background, #0854a0);border-color:transparent;color:#fff;color:var(--sapContent_Selected_TextColor, #fff)}.fd-time__item--collapsed{background-color:#0854a0;background-color:var(--sapContent_Selected_Background, #0854a0);color:#fff;color:var(--sapContent_Selected_TextColor, #fff);border-color:transparent}.fd-time__item--collapsed:hover{background-color:#095caf;background-color:var(--sapContent_Selected_Hover_Background, #095caf)}.fd-time__item--hidden{visibility:hidden}.fd-time__unit{font-size:.875rem;font-size:var(--sapFontSize, .875rem);line-height:1.4;line-height:var(--sapContent_LineHeight, 1.4);color:#32363a;color:var(--sapTextColor, #32363a);font-family:\"72\",\"72full\",Arial,Helvetica,sans-serif;font-family:var(--sapFontFamily, \"72\", \"72full\", Arial, Helvetica, sans-serif);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center;color:inherit;display:block;width:100%;height:100%;z-index:2;line-height:2.875rem}.fd-time__unit:after,.fd-time__unit:before{box-sizing:inherit;font-size:inherit}.fd-time__list{font-size:.875rem;font-size:var(--sapFontSize, .875rem);line-height:1.4;line-height:var(--sapContent_LineHeight, 1.4);color:#32363a;color:var(--sapTextColor, #32363a);font-family:\"72\",\"72full\",Arial,Helvetica,sans-serif;font-family:var(--sapFontFamily, \"72\", \"72full\", Arial, Helvetica, sans-serif);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;-ms-overflow-style:none;scrollbar-width:none;overflow:hidden}.fd-time__list:after,.fd-time__list:before{box-sizing:inherit;font-size:inherit}.fd-time__list::-webkit-scrollbar{display:none}.fd-time__slider-label{line-height:1.4;line-height:var(--sapContent_LineHeight, 1.4);color:#32363a;color:var(--sapTextColor, #32363a);font-family:\"72\",\"72full\",Arial,Helvetica,sans-serif;font-family:var(--sapFontFamily, \"72\", \"72full\", Arial, Helvetica, sans-serif);font-weight:400;box-sizing:border-box;border:0;text-overflow:ellipsis;width:-moz-fit-content;width:fit-content;position:relative;max-width:100%;font-size:.875rem;font-size:var(--sapFontSize, .875rem);color:#6a6d70;color:var(--sapContent_LabelColor, #6a6d70);margin-right:.5rem;cursor:text;align-self:flex-start;line-height:2rem;height:2rem;font-size:.75rem;font-size:var(--sapFontSmallSize, .75rem);max-width:3rem;overflow:hidden;white-space:nowrap;text-overflow:clip;padding:0;margin:0;align-self:auto}.fd-time__slider-label:after,.fd-time__slider-label:before{box-sizing:inherit;font-size:inherit}.fd-time__slider-label[dir=rtl],[dir=rtl] .fd-time__slider-label{margin-left:.5rem;margin-right:0}.fd-time__slider-label[dir=rtl],[dir=rtl] .fd-time__slider-label{padding:0;margin:0}.fd-time__control{font-size:.875rem;font-size:var(--sapFontSize, .875rem);line-height:1.4;line-height:var(--sapContent_LineHeight, 1.4);color:#32363a;color:var(--sapTextColor, #32363a);font-family:\"72\",\"72full\",Arial,Helvetica,sans-serif;font-family:var(--sapFontFamily, \"72\", \"72full\", Arial, Helvetica, sans-serif);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0}.fd-time__control:after,.fd-time__control:before{box-sizing:inherit;font-size:inherit}.fd-time--tablet{padding:.5rem}.fd-time--tablet .fd-time__item{height:2.875rem;min-height:2.875rem}.fd-time--compact{padding:.5rem}.fd-time--compact .fd-time__item{height:2rem;min-height:2rem}.fd-time--compact .fd-time__wrapper .fd-time__current-indicator{height:2rem}.fd-time--compact .fd-time__wrapper.fd-time__wrapper--active{max-height:14rem;height:14rem}.fd-time--compact .fd-time__wrapper.fd-time__wrapper--meridian .fd-time__item:first-child{margin-top:6rem}.fd-time--compact .fd-time__wrapper.fd-time__wrapper--meridian .fd-time__item:last-child{margin-bottom:6rem}.fd-time--compact .fd-time__wrapper.fd-time__wrapper--meridian .fd-time__list{height:14rem}.fd-time--compact .fd-time__unit{line-height:2rem}.fd-time--scrollable .fd-time__list{overflow:auto}.fd-time[dir=rtl] .fd-time__col,[dir=rtl] .fd-time .fd-time__col{margin-right:0;margin-left:.5rem}.fd-time[dir=rtl] .fd-time__col:last-child,[dir=rtl] .fd-time .fd-time__col:last-child{margin-left:0}.fd-time__list{touch-action:pan-x;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}\n"], components: [{ type: i4.TimeColumnComponent, selector: "fd-time-column", inputs: ["rows", "compact", "spinners", "activeValue", "active", "meridian", "id", "timeConfig", "offset", "elementsAtOnce"], outputs: ["activeValueChange", "activeStateChange"] }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
418
427
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.2", ngImport: i0, type: TimeComponent, decorators: [{
|
|
419
428
|
type: Component,
|
|
420
429
|
args: [{ selector: 'fd-time', host: {
|
|
@@ -425,7 +434,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.2", ngImpor
|
|
|
425
434
|
useExisting: forwardRef(() => TimeComponent),
|
|
426
435
|
multi: true
|
|
427
436
|
}
|
|
428
|
-
], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div\n class=\"fd-time\"\n (keydown)=\"handleKeyDownEvent($event)\"\n [class.fd-time--compact]=\"compact\"\n [class.fd-time--tablet]=\"tablet\"\n [attr.aria-label]=\"_componentAriaLabel\"\n>\n <fd-time-column\n [active]=\"isActive('hour')\"\n [rows]=\"hourViewItems\"\n [compact]=\"compact\"\n [activeValue]=\"activeHourViewItem\"\n [timeConfig]=\"getHoursConfig()\"\n [spinners]=\"spinnerButtons\"\n (activeValueChange)=\"handleHourChange($event.value.value)\"\n (activeStateChange)=\"changeActive('hour')\"\n ></fd-time-column>\n <fd-time-column\n *ngIf=\"displayMinutes\"\n [active]=\"isActive('minute')\"\n [rows]=\"minuteViewItems\"\n [compact]=\"compact\"\n [activeValue]=\"activeMinuteViewItem\"\n [timeConfig]=\"getMinutesConfig()\"\n [spinners]=\"spinnerButtons\"\n (activeValueChange)=\"handleMinuteChange($event.value.value)\"\n (activeStateChange)=\"changeActive('minute')\"\n ></fd-time-column>\n <fd-time-column\n *ngIf=\"displaySeconds\"\n [active]=\"isActive('second')\"\n [rows]=\"secondViewItems\"\n [compact]=\"compact\"\n [activeValue]=\"activeSecondViewItem\"\n [timeConfig]=\"getSecondsConfig()\"\n [spinners]=\"spinnerButtons\"\n (activeValueChange)=\"handleSecondChange($event.value.value)\"\n (activeStateChange)=\"changeActive('second')\"\n ></fd-time-column>\n <fd-time-column\n *ngIf=\"meridian\"\n [active]=\"isActive('meridian')\"\n [rows]=\"meridianViewItems\"\n [activeValue]=\"activeMeridianViewItem\"\n [offset]=\"0\"\n [compact]=\"compact\"\n [timeConfig]=\"getPeriodConfig()\"\n [meridian]=\"true\"\n [spinners]=\"spinnerButtons\"\n (activeValueChange)=\"handleMeridianChange($event.value.value)\"\n (activeStateChange)=\"changeActive('meridian')\"\n ></fd-time-column>\n</div>\n", styles: ["/*!\n.fd-input\n*/.fd-input{font-size:.875rem;font-size:var(--sapFontSize, .875rem);line-height:1.4;line-height:var(--sapContent_LineHeight, 1.4);color:var(--sapTextColor, #32363a);font-family:\"72\",\"72full\",Arial,Helvetica,sans-serif;font-family:var(--sapFontFamily, \"72\", \"72full\", Arial, Helvetica, sans-serif);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;white-space:nowrap;text-overflow:ellipsis;color:#32363a;color:var(--sapField_TextColor, #32363a);background-color:#fff;background-color:var(--sapField_Background, #fff);border-style:solid;border-width:.0625rem;border-width:var(--sapField_BorderWidth, .0625rem);border-color:#89919a;border-color:var(--sapField_BorderColor, #89919a);border-radius:.125rem;border-radius:var(--sapField_BorderCornerRadius, .125rem);outline:0;appearance:none;-webkit-appearance:none;-moz-appearance:none;padding-left:.75rem;padding-right:.75rem;min-width:2.75rem;width:100%;height:2.25rem;margin-top:.25rem;margin-bottom:.25rem;padding:0 .625rem;z-index:1;cursor:text;overflow:hidden;text-shadow:none;text-shadow:var(--fdInput_Text_Shadow, none)}.fd-input:after,.fd-input:before{box-sizing:inherit;font-size:inherit}.fd-input::placeholder{font-style:italic;color:#74777a;color:var(--sapField_PlaceholderTextColor, #74777a)}.fd-input::selection{color:#fff;color:var(--sapContent_ContrastTextColor, #fff);background-color:#0854a0;background-color:var(--sapSelectedColor, #0854a0)}.fd-input.is-hover,.fd-input:hover{background-color:#fff;background-color:var(--sapField_Hover_Background, #fff);border-color:#0854a0;border-color:var(--sapField_Hover_BorderColor, #0854a0)}.fd-input.is-success{background-color:#fff;background-color:var(--sapField_SuccessBackground, #fff);border-color:#107e3e;border-color:var(--sapField_SuccessColor, #107e3e);border-width:.0625rem;border-width:var(--sapField_SuccessBorderWidth, .0625rem);border-style:solid;border-style:var(--sapField_SuccessBorderStyle, solid)}.fd-input.is-success.is-hover,.fd-input.is-success:hover{background-color:#fff;background-color:var(--sapField_SuccessBackground, #fff);border-color:#107e3e;border-color:var(--sapField_SuccessColor, #107e3e)}.fd-input.is-error{background-color:#fff;background-color:var(--sapField_InvalidBackground, #fff);font-style:normal;font-style:var(--fdInput_State_Text_Style, normal);font-weight:400;font-weight:var(--fdInput_State_Font_Weight, normal);border-color:#b00;border-color:var(--sapField_InvalidColor, #b00);border-width:.125rem;border-width:var(--sapField_InvalidBorderWidth, .125rem);border-style:solid;border-style:var(--sapField_InvalidBorderStyle, solid)}.fd-input.is-error.is-hover,.fd-input.is-error:hover{background-color:#fff;background-color:var(--sapField_InvalidBackground, #fff);border-color:#b00;border-color:var(--sapField_InvalidColor, #b00)}.fd-input.is-alert,.fd-input.is-warning{background-color:#fff;background-color:var(--sapField_WarningBackground, #fff);font-style:normal;font-style:var(--fdInput_State_Text_Style, normal);font-weight:400;font-weight:var(--fdInput_State_Font_Weight, normal);border-color:#df6e0c;border-color:var(--sapField_WarningColor, #df6e0c);border-width:.125rem;border-width:var(--sapField_WarningBorderWidth, .125rem);border-style:solid;border-style:var(--sapField_WarningBorderStyle, solid)}.fd-input.is-alert.is-hover,.fd-input.is-alert:hover,.fd-input.is-warning.is-hover,.fd-input.is-warning:hover{background-color:#fff;background-color:var(--sapField_WarningBackground, #fff);border-color:#df6e0c;border-color:var(--sapField_WarningColor, #df6e0c)}.fd-input.is-information{background-color:#fff;background-color:var(--sapField_InformationBackground, #fff);border-color:#0a6ed1;border-color:var(--sapField_InformationColor, #0a6ed1);border-width:.125rem;border-width:var(--sapField_InformationBorderWidth, .125rem);border-style:solid;border-style:var(--sapField_InformationBorderStyle, solid)}.fd-input.is-information.is-hover,.fd-input.is-information:hover{background-color:#fff;background-color:var(--sapField_InformationBackground, #fff);border-color:#0a6ed1;border-color:var(--sapField_InformationColor, #0a6ed1)}.fd-input.is-focus,.fd-input:focus{z-index:5;box-shadow:none;outline-offset:-.1875rem;outline-width:.0625rem;outline-width:var(--sapContent_FocusWidth, .0625rem);outline-color:#000;outline-color:var(--sapContent_FocusColor, #000);outline-style:dotted;outline-style:var(--sapContent_FocusStyle, dotted)}.fd-input.is-alert,.fd-input.is-error,.fd-input.is-information,.fd-input.is-warning{border-width:.125rem;border-style:solid;border-style:var(--fdInput_State_Border_Type, solid)}.fd-input.is-alert.is-focus,.fd-input.is-alert:focus,.fd-input.is-error.is-focus,.fd-input.is-error:focus,.fd-input.is-information.is-focus,.fd-input.is-information:focus,.fd-input.is-warning.is-focus,.fd-input.is-warning:focus{z-index:5;box-shadow:none;outline-offset:-.25rem}.fd-input.is-disabled,.fd-input:disabled,.fd-input[aria-disabled=true]{pointer-events:none;opacity:.4;opacity:var(--sapContent_DisabledOpacity, .4)}.fd-input.is-disabled::placeholder,.fd-input:disabled::placeholder,.fd-input[aria-disabled=true]::placeholder{color:transparent}.fd-input.is-readonly,.fd-input[aria-readonly=true],.fd-input[readonly]{background-color:#f2f2f280;background-color:var(--sapField_ReadOnly_Background, rgba(242, 242, 242, .5));border-color:#89919a;border-color:var(--sapField_ReadOnly_BorderColor, #89919a)}.fd-input.is-readonly::placeholder,.fd-input[aria-readonly=true]::placeholder,.fd-input[readonly]::placeholder{color:transparent}.fd-input::-ms-clear{display:none}.fd-input[aria-expanded=false]{z-index:0}.fd-input.is-expanded,.fd-input[aria-expanded=true]{z-index:4}.fd-input:last-child{margin-bottom:.25rem}.fd-input--compact{min-width:2rem;height:1.625rem;margin-top:.1875rem;margin-bottom:.1875rem;padding:0 .5rem;box-sizing:border-box}.fd-input--no-number-spinner{-moz-appearance:textfield}.fd-input--no-number-spinner::-webkit-inner-spin-button,.fd-input--no-number-spinner::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.fd-input.right-align{text-align:right}/*!\n * Fundamental Library Styles v0.21.0-rc.92\n * Copyright (c) 2022 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n */.fd-time{font-size:.875rem;font-size:var(--sapFontSize, .875rem);line-height:1.4;line-height:var(--sapContent_LineHeight, 1.4);color:#32363a;color:var(--sapTextColor, #32363a);font-family:\"72\",\"72full\",Arial,Helvetica,sans-serif;font-family:var(--sapFontFamily, \"72\", \"72full\", Arial, Helvetica, sans-serif);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;display:flex;flex-direction:row;justify-content:center;padding:1rem}.fd-time:after,.fd-time:before{box-sizing:inherit;font-size:inherit}.fd-time__col{font-size:.875rem;font-size:var(--sapFontSize, .875rem);line-height:1.4;line-height:var(--sapContent_LineHeight, 1.4);color:#32363a;color:var(--sapTextColor, #32363a);font-family:\"72\",\"72full\",Arial,Helvetica,sans-serif;font-family:var(--sapFontFamily, \"72\", \"72full\", Arial, Helvetica, sans-serif);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;display:flex;align-items:center;flex-direction:column;margin-right:.5rem}.fd-time__col:after,.fd-time__col:before{box-sizing:inherit;font-size:inherit}.fd-time__col:last-child{margin-right:0}.fd-time__current-indicator{font-size:.875rem;font-size:var(--sapFontSize, .875rem);line-height:1.4;line-height:var(--sapContent_LineHeight, 1.4);color:#32363a;color:var(--sapTextColor, #32363a);font-family:\"72\",\"72full\",Arial,Helvetica,sans-serif;font-family:var(--sapFontFamily, \"72\", \"72full\", Arial, Helvetica, sans-serif);font-weight:400;padding:0;margin:0;border:0;position:absolute;top:50%;left:0;transform:translateY(-50%);box-sizing:border-box;width:3rem;height:2.875rem;border:.0625rem solid #0854a0;border:.0625rem solid var(--sapList_SelectionBorderColor, #0854a0);border-radius:.25rem;border-radius:var(--sapButton_BorderCornerRadius, .25rem)}.fd-time__current-indicator:after,.fd-time__current-indicator:before{box-sizing:inherit;font-size:inherit}.fd-time__wrapper{font-size:.875rem;font-size:var(--sapFontSize, .875rem);line-height:1.4;line-height:var(--sapContent_LineHeight, 1.4);color:#32363a;color:var(--sapTextColor, #32363a);font-family:\"72\",\"72full\",Arial,Helvetica,sans-serif;font-family:var(--sapFontFamily, \"72\", \"72full\", Arial, Helvetica, sans-serif);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;display:flex;justify-content:center;align-items:center;flex-direction:column;overflow:hidden;position:relative;flex:1 1 auto;width:3rem}.fd-time__wrapper:after,.fd-time__wrapper:before{box-sizing:inherit;font-size:inherit}.fd-time__wrapper--active{max-height:20.125rem;height:20.125rem;justify-content:initial}.fd-time__wrapper--meridian .fd-time__item:first-child{margin-top:8.625rem}.fd-time__wrapper--meridian .fd-time__item:last-child{margin-bottom:8.625rem}.fd-time__wrapper--meridian .fd-time__list{height:20.125rem}.fd-time__item{font-size:.875rem;font-size:var(--sapFontSize, .875rem);line-height:1.4;line-height:var(--sapContent_LineHeight, 1.4);color:#32363a;color:var(--sapTextColor, #32363a);font-family:\"72\",\"72full\",Arial,Helvetica,sans-serif;font-family:var(--sapFontFamily, \"72\", \"72full\", Arial, Helvetica, sans-serif);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;display:flex;justify-content:center;align-items:center;cursor:default;width:3rem;height:2.875rem;min-height:2.875rem;border-radius:.25rem;border-radius:var(--sapButton_BorderCornerRadius, .25rem);background-color:#fafafa;background-color:var(--sapLegend_WorkingBackground, #fafafa);border:.0625rem solid #fff;border:.0625rem solid var(--sapList_Background, #fff);text-shadow:none;text-shadow:var(--fdTime_Text_Shadow, none)}.fd-time__item:after,.fd-time__item:before{box-sizing:inherit;font-size:inherit}.fd-time__item:hover{background-color:#f5f5f5;background-color:var(--sapList_Hover_Background, #f5f5f5)}.fd-time__item:active{background-color:#0854a0;background-color:var(--sapContent_Selected_Background, #0854a0);border-color:transparent;color:#fff;color:var(--sapContent_Selected_TextColor, #fff)}.fd-time__item--current{border-color:#0854a0;border-color:var(--sapList_SelectionBorderColor, #0854a0);background-color:#fff;background-color:var(--sapList_Background, #fff)}.fd-time__item--current:hover{background-color:#f5f5f5;background-color:var(--sapList_Hover_Background, #f5f5f5)}.fd-time__item--current:active{background-color:#0854a0;background-color:var(--sapContent_Selected_Background, #0854a0);border-color:transparent;color:#fff;color:var(--sapContent_Selected_TextColor, #fff)}.fd-time__item--collapsed{background-color:#0854a0;background-color:var(--sapContent_Selected_Background, #0854a0);color:#fff;color:var(--sapContent_Selected_TextColor, #fff);border-color:transparent}.fd-time__item--collapsed:hover{background-color:#095caf;background-color:var(--sapContent_Selected_Hover_Background, #095caf)}.fd-time__item--hidden{visibility:hidden}.fd-time__unit{font-size:.875rem;font-size:var(--sapFontSize, .875rem);line-height:1.4;line-height:var(--sapContent_LineHeight, 1.4);color:#32363a;color:var(--sapTextColor, #32363a);font-family:\"72\",\"72full\",Arial,Helvetica,sans-serif;font-family:var(--sapFontFamily, \"72\", \"72full\", Arial, Helvetica, sans-serif);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center;color:inherit;display:block;width:100%;height:100%;z-index:2;line-height:2.875rem}.fd-time__unit:after,.fd-time__unit:before{box-sizing:inherit;font-size:inherit}.fd-time__list{font-size:.875rem;font-size:var(--sapFontSize, .875rem);line-height:1.4;line-height:var(--sapContent_LineHeight, 1.4);color:#32363a;color:var(--sapTextColor, #32363a);font-family:\"72\",\"72full\",Arial,Helvetica,sans-serif;font-family:var(--sapFontFamily, \"72\", \"72full\", Arial, Helvetica, sans-serif);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;-ms-overflow-style:none;scrollbar-width:none;overflow:hidden}.fd-time__list:after,.fd-time__list:before{box-sizing:inherit;font-size:inherit}.fd-time__list::-webkit-scrollbar{display:none}.fd-time__slider-label{line-height:1.4;line-height:var(--sapContent_LineHeight, 1.4);color:#32363a;color:var(--sapTextColor, #32363a);font-family:\"72\",\"72full\",Arial,Helvetica,sans-serif;font-family:var(--sapFontFamily, \"72\", \"72full\", Arial, Helvetica, sans-serif);font-weight:400;box-sizing:border-box;border:0;text-overflow:ellipsis;width:-moz-fit-content;width:fit-content;position:relative;max-width:100%;font-size:.875rem;font-size:var(--sapFontSize, .875rem);color:#6a6d70;color:var(--sapContent_LabelColor, #6a6d70);margin-right:.5rem;cursor:text;align-self:flex-start;line-height:2rem;height:2rem;font-size:.75rem;font-size:var(--sapFontSmallSize, .75rem);max-width:3rem;overflow:hidden;white-space:nowrap;text-overflow:clip;padding:0;margin:0;align-self:auto}.fd-time__slider-label:after,.fd-time__slider-label:before{box-sizing:inherit;font-size:inherit}.fd-time__slider-label[dir=rtl],[dir=rtl] .fd-time__slider-label{margin-left:.5rem;margin-right:0}.fd-time__slider-label[dir=rtl],[dir=rtl] .fd-time__slider-label{padding:0;margin:0}.fd-time__control{font-size:.875rem;font-size:var(--sapFontSize, .875rem);line-height:1.4;line-height:var(--sapContent_LineHeight, 1.4);color:#32363a;color:var(--sapTextColor, #32363a);font-family:\"72\",\"72full\",Arial,Helvetica,sans-serif;font-family:var(--sapFontFamily, \"72\", \"72full\", Arial, Helvetica, sans-serif);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0}.fd-time__control:after,.fd-time__control:before{box-sizing:inherit;font-size:inherit}.fd-time--tablet{padding:.5rem}.fd-time--tablet .fd-time__item{height:2.875rem;min-height:2.875rem}.fd-time--compact{padding:.5rem}.fd-time--compact .fd-time__item{height:2rem;min-height:2rem}.fd-time--compact .fd-time__wrapper .fd-time__current-indicator{height:2rem}.fd-time--compact .fd-time__wrapper.fd-time__wrapper--active{max-height:14rem;height:14rem}.fd-time--compact .fd-time__wrapper.fd-time__wrapper--meridian .fd-time__item:first-child{margin-top:6rem}.fd-time--compact .fd-time__wrapper.fd-time__wrapper--meridian .fd-time__item:last-child{margin-bottom:6rem}.fd-time--compact .fd-time__wrapper.fd-time__wrapper--meridian .fd-time__list{height:14rem}.fd-time--compact .fd-time__unit{line-height:2rem}.fd-time--scrollable .fd-time__list{overflow:auto}.fd-time[dir=rtl] .fd-time__col,[dir=rtl] .fd-time .fd-time__col{margin-right:0;margin-left:.5rem}.fd-time[dir=rtl] .fd-time__col:last-child,[dir=rtl] .fd-time .fd-time__col:last-child{margin-left:0}.fd-time__list{touch-action:pan-x;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}\n"] }]
|
|
437
|
+
], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div\n class=\"fd-time\"\n (keydown)=\"handleKeyDownEvent($event)\"\n [class.fd-time--compact]=\"compact\"\n [class.fd-time--tablet]=\"tablet\"\n [attr.aria-label]=\"_componentAriaLabel\"\n>\n <fd-time-column\n [active]=\"isActive('hour')\"\n [rows]=\"hourViewItems\"\n [compact]=\"compact\"\n [offset]=\"offset\"\n [elementsAtOnce]=\"elementsAtOnce\"\n [activeValue]=\"activeHourViewItem\"\n [timeConfig]=\"getHoursConfig()\"\n [spinners]=\"spinnerButtons\"\n (activeValueChange)=\"handleHourChange($event.value.value)\"\n (activeStateChange)=\"changeActive('hour')\"\n ></fd-time-column>\n <fd-time-column\n *ngIf=\"displayMinutes\"\n [active]=\"isActive('minute')\"\n [rows]=\"minuteViewItems\"\n [compact]=\"compact\"\n [offset]=\"offset\"\n [elementsAtOnce]=\"elementsAtOnce\"\n [activeValue]=\"activeMinuteViewItem\"\n [timeConfig]=\"getMinutesConfig()\"\n [spinners]=\"spinnerButtons\"\n (activeValueChange)=\"handleMinuteChange($event.value.value)\"\n (activeStateChange)=\"changeActive('minute')\"\n ></fd-time-column>\n <fd-time-column\n *ngIf=\"displaySeconds\"\n [active]=\"isActive('second')\"\n [rows]=\"secondViewItems\"\n [compact]=\"compact\"\n [offset]=\"offset\"\n [elementsAtOnce]=\"elementsAtOnce\"\n [activeValue]=\"activeSecondViewItem\"\n [timeConfig]=\"getSecondsConfig()\"\n [spinners]=\"spinnerButtons\"\n (activeValueChange)=\"handleSecondChange($event.value.value)\"\n (activeStateChange)=\"changeActive('second')\"\n ></fd-time-column>\n <fd-time-column\n *ngIf=\"meridian\"\n [active]=\"isActive('meridian')\"\n [rows]=\"meridianViewItems\"\n [activeValue]=\"activeMeridianViewItem\"\n [offset]=\"0\"\n [elementsAtOnce]=\"elementsAtOnce\"\n [compact]=\"compact\"\n [timeConfig]=\"getPeriodConfig()\"\n [meridian]=\"true\"\n [spinners]=\"spinnerButtons\"\n (activeValueChange)=\"handleMeridianChange($event.value.value)\"\n (activeStateChange)=\"changeActive('meridian')\"\n ></fd-time-column>\n</div>\n", styles: ["/*!\n.fd-input\n*/.fd-input{font-size:.875rem;font-size:var(--sapFontSize, .875rem);line-height:1.4;line-height:var(--sapContent_LineHeight, 1.4);color:var(--sapTextColor, #32363a);font-family:\"72\",\"72full\",Arial,Helvetica,sans-serif;font-family:var(--sapFontFamily, \"72\", \"72full\", Arial, Helvetica, sans-serif);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;white-space:nowrap;text-overflow:ellipsis;color:#32363a;color:var(--sapField_TextColor, #32363a);background-color:#fff;background-color:var(--sapField_Background, #fff);border-style:solid;border-width:.0625rem;border-width:var(--sapField_BorderWidth, .0625rem);border-color:#89919a;border-color:var(--sapField_BorderColor, #89919a);border-radius:.125rem;border-radius:var(--sapField_BorderCornerRadius, .125rem);outline:0;appearance:none;-webkit-appearance:none;-moz-appearance:none;padding-left:.75rem;padding-right:.75rem;min-width:2.75rem;width:100%;height:2.25rem;margin-top:.25rem;margin-bottom:.25rem;padding:0 .625rem;z-index:1;cursor:text;overflow:hidden;text-shadow:none;text-shadow:var(--fdInput_Text_Shadow, none)}.fd-input:after,.fd-input:before{box-sizing:inherit;font-size:inherit}.fd-input::placeholder{font-style:italic;color:#74777a;color:var(--sapField_PlaceholderTextColor, #74777a)}.fd-input::selection{color:#fff;color:var(--sapContent_ContrastTextColor, #fff);background-color:#0854a0;background-color:var(--sapSelectedColor, #0854a0)}.fd-input.is-hover,.fd-input:hover{background-color:#fff;background-color:var(--sapField_Hover_Background, #fff);border-color:#0854a0;border-color:var(--sapField_Hover_BorderColor, #0854a0)}.fd-input.is-success{background-color:#fff;background-color:var(--sapField_SuccessBackground, #fff);border-color:#107e3e;border-color:var(--sapField_SuccessColor, #107e3e);border-width:.0625rem;border-width:var(--sapField_SuccessBorderWidth, .0625rem);border-style:solid;border-style:var(--sapField_SuccessBorderStyle, solid)}.fd-input.is-success.is-hover,.fd-input.is-success:hover{background-color:#fff;background-color:var(--sapField_SuccessBackground, #fff);border-color:#107e3e;border-color:var(--sapField_SuccessColor, #107e3e)}.fd-input.is-error{background-color:#fff;background-color:var(--sapField_InvalidBackground, #fff);font-style:normal;font-style:var(--fdInput_State_Text_Style, normal);font-weight:400;font-weight:var(--fdInput_State_Font_Weight, normal);border-color:#b00;border-color:var(--sapField_InvalidColor, #b00);border-width:.125rem;border-width:var(--sapField_InvalidBorderWidth, .125rem);border-style:solid;border-style:var(--sapField_InvalidBorderStyle, solid)}.fd-input.is-error.is-hover,.fd-input.is-error:hover{background-color:#fff;background-color:var(--sapField_InvalidBackground, #fff);border-color:#b00;border-color:var(--sapField_InvalidColor, #b00)}.fd-input.is-alert,.fd-input.is-warning{background-color:#fff;background-color:var(--sapField_WarningBackground, #fff);font-style:normal;font-style:var(--fdInput_State_Text_Style, normal);font-weight:400;font-weight:var(--fdInput_State_Font_Weight, normal);border-color:#df6e0c;border-color:var(--sapField_WarningColor, #df6e0c);border-width:.125rem;border-width:var(--sapField_WarningBorderWidth, .125rem);border-style:solid;border-style:var(--sapField_WarningBorderStyle, solid)}.fd-input.is-alert.is-hover,.fd-input.is-alert:hover,.fd-input.is-warning.is-hover,.fd-input.is-warning:hover{background-color:#fff;background-color:var(--sapField_WarningBackground, #fff);border-color:#df6e0c;border-color:var(--sapField_WarningColor, #df6e0c)}.fd-input.is-information{background-color:#fff;background-color:var(--sapField_InformationBackground, #fff);border-color:#0a6ed1;border-color:var(--sapField_InformationColor, #0a6ed1);border-width:.125rem;border-width:var(--sapField_InformationBorderWidth, .125rem);border-style:solid;border-style:var(--sapField_InformationBorderStyle, solid)}.fd-input.is-information.is-hover,.fd-input.is-information:hover{background-color:#fff;background-color:var(--sapField_InformationBackground, #fff);border-color:#0a6ed1;border-color:var(--sapField_InformationColor, #0a6ed1)}.fd-input.is-focus,.fd-input:focus{z-index:5;box-shadow:none;outline-offset:-.1875rem;outline-width:.0625rem;outline-width:var(--sapContent_FocusWidth, .0625rem);outline-color:#000;outline-color:var(--sapContent_FocusColor, #000);outline-style:dotted;outline-style:var(--sapContent_FocusStyle, dotted)}.fd-input.is-alert,.fd-input.is-error,.fd-input.is-information,.fd-input.is-warning{border-width:.125rem;border-style:solid;border-style:var(--fdInput_State_Border_Type, solid)}.fd-input.is-alert.is-focus,.fd-input.is-alert:focus,.fd-input.is-error.is-focus,.fd-input.is-error:focus,.fd-input.is-information.is-focus,.fd-input.is-information:focus,.fd-input.is-warning.is-focus,.fd-input.is-warning:focus{z-index:5;box-shadow:none;outline-offset:-.25rem}.fd-input.is-disabled,.fd-input:disabled,.fd-input[aria-disabled=true]{pointer-events:none;opacity:.4;opacity:var(--sapContent_DisabledOpacity, .4)}.fd-input.is-disabled::placeholder,.fd-input:disabled::placeholder,.fd-input[aria-disabled=true]::placeholder{color:transparent}.fd-input.is-readonly,.fd-input[aria-readonly=true],.fd-input[readonly]{background-color:#f2f2f280;background-color:var(--sapField_ReadOnly_Background, rgba(242, 242, 242, .5));border-color:#89919a;border-color:var(--sapField_ReadOnly_BorderColor, #89919a)}.fd-input.is-readonly::placeholder,.fd-input[aria-readonly=true]::placeholder,.fd-input[readonly]::placeholder{color:transparent}.fd-input::-ms-clear{display:none}.fd-input[aria-expanded=false]{z-index:0}.fd-input.is-expanded,.fd-input[aria-expanded=true]{z-index:4}.fd-input:last-child{margin-bottom:.25rem}.fd-input--compact{min-width:2rem;height:1.625rem;margin-top:.1875rem;margin-bottom:.1875rem;padding:0 .5rem;box-sizing:border-box}.fd-input--no-number-spinner{-moz-appearance:textfield}.fd-input--no-number-spinner::-webkit-inner-spin-button,.fd-input--no-number-spinner::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.fd-input.right-align{text-align:right}/*!\n * Fundamental Library Styles v0.21.0-rc.92\n * Copyright (c) 2022 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n */.fd-time{font-size:.875rem;font-size:var(--sapFontSize, .875rem);line-height:1.4;line-height:var(--sapContent_LineHeight, 1.4);color:#32363a;color:var(--sapTextColor, #32363a);font-family:\"72\",\"72full\",Arial,Helvetica,sans-serif;font-family:var(--sapFontFamily, \"72\", \"72full\", Arial, Helvetica, sans-serif);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;display:flex;flex-direction:row;justify-content:center;padding:1rem}.fd-time:after,.fd-time:before{box-sizing:inherit;font-size:inherit}.fd-time__col{font-size:.875rem;font-size:var(--sapFontSize, .875rem);line-height:1.4;line-height:var(--sapContent_LineHeight, 1.4);color:#32363a;color:var(--sapTextColor, #32363a);font-family:\"72\",\"72full\",Arial,Helvetica,sans-serif;font-family:var(--sapFontFamily, \"72\", \"72full\", Arial, Helvetica, sans-serif);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;display:flex;align-items:center;flex-direction:column;margin-right:.5rem}.fd-time__col:after,.fd-time__col:before{box-sizing:inherit;font-size:inherit}.fd-time__col:last-child{margin-right:0}.fd-time__current-indicator{font-size:.875rem;font-size:var(--sapFontSize, .875rem);line-height:1.4;line-height:var(--sapContent_LineHeight, 1.4);color:#32363a;color:var(--sapTextColor, #32363a);font-family:\"72\",\"72full\",Arial,Helvetica,sans-serif;font-family:var(--sapFontFamily, \"72\", \"72full\", Arial, Helvetica, sans-serif);font-weight:400;padding:0;margin:0;border:0;position:absolute;top:50%;left:0;transform:translateY(-50%);box-sizing:border-box;width:3rem;height:2.875rem;border:.0625rem solid #0854a0;border:.0625rem solid var(--sapList_SelectionBorderColor, #0854a0);border-radius:.25rem;border-radius:var(--sapButton_BorderCornerRadius, .25rem)}.fd-time__current-indicator:after,.fd-time__current-indicator:before{box-sizing:inherit;font-size:inherit}.fd-time__wrapper{font-size:.875rem;font-size:var(--sapFontSize, .875rem);line-height:1.4;line-height:var(--sapContent_LineHeight, 1.4);color:#32363a;color:var(--sapTextColor, #32363a);font-family:\"72\",\"72full\",Arial,Helvetica,sans-serif;font-family:var(--sapFontFamily, \"72\", \"72full\", Arial, Helvetica, sans-serif);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;display:flex;justify-content:center;align-items:center;flex-direction:column;overflow:hidden;position:relative;flex:1 1 auto;width:3rem}.fd-time__wrapper:after,.fd-time__wrapper:before{box-sizing:inherit;font-size:inherit}.fd-time__wrapper--active{max-height:20.125rem;height:20.125rem;justify-content:initial}.fd-time__wrapper--meridian .fd-time__item:first-child{margin-top:8.625rem}.fd-time__wrapper--meridian .fd-time__item:last-child{margin-bottom:8.625rem}.fd-time__wrapper--meridian .fd-time__list{height:20.125rem}.fd-time__item{font-size:.875rem;font-size:var(--sapFontSize, .875rem);line-height:1.4;line-height:var(--sapContent_LineHeight, 1.4);color:#32363a;color:var(--sapTextColor, #32363a);font-family:\"72\",\"72full\",Arial,Helvetica,sans-serif;font-family:var(--sapFontFamily, \"72\", \"72full\", Arial, Helvetica, sans-serif);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;display:flex;justify-content:center;align-items:center;cursor:default;width:3rem;height:2.875rem;min-height:2.875rem;border-radius:.25rem;border-radius:var(--sapButton_BorderCornerRadius, .25rem);background-color:#fafafa;background-color:var(--sapLegend_WorkingBackground, #fafafa);border:.0625rem solid #fff;border:.0625rem solid var(--sapList_Background, #fff);text-shadow:none;text-shadow:var(--fdTime_Text_Shadow, none)}.fd-time__item:after,.fd-time__item:before{box-sizing:inherit;font-size:inherit}.fd-time__item:hover{background-color:#f5f5f5;background-color:var(--sapList_Hover_Background, #f5f5f5)}.fd-time__item:active{background-color:#0854a0;background-color:var(--sapContent_Selected_Background, #0854a0);border-color:transparent;color:#fff;color:var(--sapContent_Selected_TextColor, #fff)}.fd-time__item--current{border-color:#0854a0;border-color:var(--sapList_SelectionBorderColor, #0854a0);background-color:#fff;background-color:var(--sapList_Background, #fff)}.fd-time__item--current:hover{background-color:#f5f5f5;background-color:var(--sapList_Hover_Background, #f5f5f5)}.fd-time__item--current:active{background-color:#0854a0;background-color:var(--sapContent_Selected_Background, #0854a0);border-color:transparent;color:#fff;color:var(--sapContent_Selected_TextColor, #fff)}.fd-time__item--collapsed{background-color:#0854a0;background-color:var(--sapContent_Selected_Background, #0854a0);color:#fff;color:var(--sapContent_Selected_TextColor, #fff);border-color:transparent}.fd-time__item--collapsed:hover{background-color:#095caf;background-color:var(--sapContent_Selected_Hover_Background, #095caf)}.fd-time__item--hidden{visibility:hidden}.fd-time__unit{font-size:.875rem;font-size:var(--sapFontSize, .875rem);line-height:1.4;line-height:var(--sapContent_LineHeight, 1.4);color:#32363a;color:var(--sapTextColor, #32363a);font-family:\"72\",\"72full\",Arial,Helvetica,sans-serif;font-family:var(--sapFontFamily, \"72\", \"72full\", Arial, Helvetica, sans-serif);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center;color:inherit;display:block;width:100%;height:100%;z-index:2;line-height:2.875rem}.fd-time__unit:after,.fd-time__unit:before{box-sizing:inherit;font-size:inherit}.fd-time__list{font-size:.875rem;font-size:var(--sapFontSize, .875rem);line-height:1.4;line-height:var(--sapContent_LineHeight, 1.4);color:#32363a;color:var(--sapTextColor, #32363a);font-family:\"72\",\"72full\",Arial,Helvetica,sans-serif;font-family:var(--sapFontFamily, \"72\", \"72full\", Arial, Helvetica, sans-serif);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;-ms-overflow-style:none;scrollbar-width:none;overflow:hidden}.fd-time__list:after,.fd-time__list:before{box-sizing:inherit;font-size:inherit}.fd-time__list::-webkit-scrollbar{display:none}.fd-time__slider-label{line-height:1.4;line-height:var(--sapContent_LineHeight, 1.4);color:#32363a;color:var(--sapTextColor, #32363a);font-family:\"72\",\"72full\",Arial,Helvetica,sans-serif;font-family:var(--sapFontFamily, \"72\", \"72full\", Arial, Helvetica, sans-serif);font-weight:400;box-sizing:border-box;border:0;text-overflow:ellipsis;width:-moz-fit-content;width:fit-content;position:relative;max-width:100%;font-size:.875rem;font-size:var(--sapFontSize, .875rem);color:#6a6d70;color:var(--sapContent_LabelColor, #6a6d70);margin-right:.5rem;cursor:text;align-self:flex-start;line-height:2rem;height:2rem;font-size:.75rem;font-size:var(--sapFontSmallSize, .75rem);max-width:3rem;overflow:hidden;white-space:nowrap;text-overflow:clip;padding:0;margin:0;align-self:auto}.fd-time__slider-label:after,.fd-time__slider-label:before{box-sizing:inherit;font-size:inherit}.fd-time__slider-label[dir=rtl],[dir=rtl] .fd-time__slider-label{margin-left:.5rem;margin-right:0}.fd-time__slider-label[dir=rtl],[dir=rtl] .fd-time__slider-label{padding:0;margin:0}.fd-time__control{font-size:.875rem;font-size:var(--sapFontSize, .875rem);line-height:1.4;line-height:var(--sapContent_LineHeight, 1.4);color:#32363a;color:var(--sapTextColor, #32363a);font-family:\"72\",\"72full\",Arial,Helvetica,sans-serif;font-family:var(--sapFontFamily, \"72\", \"72full\", Arial, Helvetica, sans-serif);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0}.fd-time__control:after,.fd-time__control:before{box-sizing:inherit;font-size:inherit}.fd-time--tablet{padding:.5rem}.fd-time--tablet .fd-time__item{height:2.875rem;min-height:2.875rem}.fd-time--compact{padding:.5rem}.fd-time--compact .fd-time__item{height:2rem;min-height:2rem}.fd-time--compact .fd-time__wrapper .fd-time__current-indicator{height:2rem}.fd-time--compact .fd-time__wrapper.fd-time__wrapper--active{max-height:14rem;height:14rem}.fd-time--compact .fd-time__wrapper.fd-time__wrapper--meridian .fd-time__item:first-child{margin-top:6rem}.fd-time--compact .fd-time__wrapper.fd-time__wrapper--meridian .fd-time__item:last-child{margin-bottom:6rem}.fd-time--compact .fd-time__wrapper.fd-time__wrapper--meridian .fd-time__list{height:14rem}.fd-time--compact .fd-time__unit{line-height:2rem}.fd-time--scrollable .fd-time__list{overflow:auto}.fd-time[dir=rtl] .fd-time__col,[dir=rtl] .fd-time .fd-time__col{margin-right:0;margin-left:.5rem}.fd-time[dir=rtl] .fd-time__col:last-child,[dir=rtl] .fd-time .fd-time__col:last-child{margin-left:0}.fd-time__list{touch-action:pan-x;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}\n"] }]
|
|
429
438
|
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1.TimeI18n }, { type: i2.DatetimeAdapter, decorators: [{
|
|
430
439
|
type: Optional
|
|
431
440
|
}] }, { type: i3.ContentDensityService, decorators: [{
|
|
@@ -450,6 +459,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.2", ngImpor
|
|
|
450
459
|
type: Input
|
|
451
460
|
}], tablet: [{
|
|
452
461
|
type: Input
|
|
462
|
+
}], elementsAtOnce: [{
|
|
463
|
+
type: Input
|
|
453
464
|
}], time: [{
|
|
454
465
|
type: Input
|
|
455
466
|
}], spinnerButtons: [{
|
|
@@ -458,4 +469,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.2", ngImpor
|
|
|
458
469
|
type: ViewChildren,
|
|
459
470
|
args: [TimeColumnComponent]
|
|
460
471
|
}] } });
|
|
461
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi90aW1lL3RpbWUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvdGltZS90aW1lLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsS0FBSyxFQUNMLFNBQVMsRUFFVCxZQUFZLEVBQ1osaUJBQWlCLEVBRWpCLFFBQVEsRUFJWCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM3QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFaEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsVUFBVSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFHekYsT0FBTyxFQUFFLG9DQUFvQyxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUU1QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQzs7Ozs7OztBQTBCMUUsTUFBTSxPQUFPLGFBQWE7SUE0SHRCLGNBQWM7SUFDZCxZQUNZLGtCQUFxQyxFQUNyQyxlQUF5QjtJQUNqQyxxR0FBcUc7SUFDakYsZ0JBQW9DLEVBQ3BDLHNCQUE2QyxFQUM3QyxXQUF1QjtRQUxuQyx1QkFB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QkFBdUIsQ0FBQyxNQUFNLGlCQUNoQyxpQkFBaUIsQ0FBQyxJQUFJOzswQkFtSWhDLFFBQVE7OzBCQUNSLFFBQVE7OzBCQUNSLFFBQVE7NENBN0hiLFFBQVE7c0JBRFAsS0FBSztnQkFPTixRQUFRO3NCQURQLEtBQUs7Z0JBU04sYUFBYTtzQkFEWixLQUFLO2dCQU9OLFFBQVE7c0JBRFAsS0FBSztnQkFPTixjQUFjO3NCQURiLEtBQUs7Z0JBS04sY0FBYztzQkFEYixLQUFLO2dCQU9OLFlBQVk7c0JBRFgsS0FBSztnQkFLTixPQUFPO3NCQUROLEtBQUs7Z0JBS04sTUFBTTtzQkFETCxLQUFLO2dCQU9OLElBQUk7c0JBREgsS0FBSztnQkFLTixjQUFjO3NCQURiLEtBQUs7Z0JBS04sT0FBTztzQkFETixZQUFZO3VCQUFDLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIGZvcndhcmRSZWYsXG4gICAgSW5wdXQsXG4gICAgUXVlcnlMaXN0LFxuICAgIE9uSW5pdCxcbiAgICBWaWV3Q2hpbGRyZW4sXG4gICAgVmlld0VuY2Fwc3VsYXRpb24sXG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBPcHRpb25hbCxcbiAgICBPbkRlc3Ryb3ksXG4gICAgT25DaGFuZ2VzLFxuICAgIFNpbXBsZUNoYW5nZXNcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJqZWN0LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IExFRlRfQVJST1csIFJJR0hUX0FSUk9XIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2tleWNvZGVzJztcblxuaW1wb3J0IHsgRGF0ZXRpbWVBZGFwdGVyIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2RhdGV0aW1lJztcbmltcG9ydCB7IEtleVV0aWwsIENvbnRlbnREZW5zaXR5U2VydmljZSwgUnRsU2VydmljZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS91dGlscyc7XG5cbmltcG9ydCB7IE1lcmlkaWFuLCBTZWxlY3RhYmxlVmlld0l0ZW0gfSBmcm9tICcuL21vZGVscyc7XG5pbXBvcnQgeyBjcmVhdGVNaXNzaW5nRGF0ZUltcGxlbWVudGF0aW9uRXJyb3IgfSBmcm9tICcuL2Vycm9ycyc7XG5pbXBvcnQgeyBUaW1lSTE4biB9IGZyb20gJy4vaTE4bi90aW1lLWkxOG4nO1xuaW1wb3J0IHsgVGltZUNvbHVtbkNvbmZpZyB9IGZyb20gJy4vdGltZS1jb2x1bW4vdGltZS1jb2x1bW4tY29uZmlnJztcbmltcG9ydCB7IFRpbWVDb2x1bW5Db21wb25lbnQgfSBmcm9tICcuL3RpbWUtY29sdW1uL3RpbWUtY29sdW1uLmNvbXBvbmVudCc7XG5cbmV4cG9ydCB0eXBlIEZkVGltZUFjdGl2ZVZpZXcgPSAnaG91cicgfCAnbWludXRlJyB8ICdzZWNvbmQnIHwgJ21lcmlkaWFuJztcblxudHlwZSBIb3VyVmlld0l0ZW0gPSBTZWxlY3RhYmxlVmlld0l0ZW08bnVtYmVyPjtcbnR5cGUgTWludXRlVmlld0l0ZW0gPSBTZWxlY3RhYmxlVmlld0l0ZW08bnVtYmVyPjtcbnR5cGUgU2Vjb25kVmlld0l0ZW0gPSBTZWxlY3RhYmxlVmlld0l0ZW08bnVtYmVyPjtcbnR5cGUgTWVyaWRpYW5WaWV3SXRlbSA9IFNlbGVjdGFibGVWaWV3SXRlbTxNZXJpZGlhbj47XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZmQtdGltZScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3RpbWUuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3RpbWUuY29tcG9uZW50LnNjc3MnXSxcbiAgICBob3N0OiB7XG4gICAgICAgICcoYmx1ciknOiAnb25Ub3VjaGVkKCknXG4gICAgfSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUaW1lQ29tcG9uZW50KSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlXG4gICAgICAgIH1cbiAgICBdLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgVGltZUNvbXBvbmVudDxEPiBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXQsIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcbiAgICAvKipcbiAgICAgKiBASW5wdXQgV2hlbiBzZXQgdG8gZmFsc2UsIHVzZXMgdGhlIDI0IGhvdXIgY2xvY2sgKGhvdXJzIHJhbmdpbmcgZnJvbSAwIHRvIDIzKVxuICAgICAqIGFuZCBkb2VzIG5vdCBkaXNwbGF5IGEgcGVyaW9kIGNvbnRyb2wuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBtZXJpZGlhbiA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogIEBJbnB1dCBXaGVuIHNldCB0byBmYWxzZSwgZG9lcyBub3Qgc2V0IHRoZSBpbnB1dCBmaWVsZCB0byBpbnZhbGlkIHN0YXRlIG9uIGludmFsaWQgZW50cnkuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICB2YWxpZGF0ZSA9IHRydWU7XG5cbiAgICAvKipcbiAgICAgKiBASW5wdXQgd2hlbiBzZXQgdG8gdHJ1ZSwgdGltZSBpbnB1dHMgd29uJ3QgYWxsb3cgdG8gaGF2ZSAxIGRpZ2l0XG4gICAgICogZm9yIGV4YW1wbGUgOSB3aWxsIGJlY29tZSAwOVxuICAgICAqIGJ1dCAxMiB3aWxsIGJlIGtlcHQgYXMgMTIuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBrZWVwVHdvRGlnaXRzID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiBASW5wdXQgRGlzYWJsZXMgdGhlIGNvbXBvbmVudC5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIGRpc2FibGVkOiBib29sZWFuO1xuXG4gICAgLyoqXG4gICAgICogQElucHV0IFdoZW4gc2V0IHRvIGZhbHNlLCBoaWRlcyB0aGUgaW5wdXQgZm9yIHNlY29uZHMuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBkaXNwbGF5U2Vjb25kcyA9IHRydWU7XG5cbiAgICAvKiogQElucHV0IFdoZW4gc2V0IHRvIGZhbHNlLCBoaWRlcyB0aGUgaW5wdXQgZm9yIG1pbnV0ZXMuICovXG4gICAgQElucHV0KClcbiAgICBkaXNwbGF5TWludXRlcyA9IHRydWU7XG5cbiAgICAvKipcbiAgICAgKiBXaGVuIHNldCB0byBmYWxzZSwgaGlkZXMgdGhlIGlucHV0IGZvciBob3Vyc1xuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgZGlzcGxheUhvdXJzID0gdHJ1ZTtcblxuICAgIC8qKiBASW5wdXQgRGVmaW5lcyBpZiB0aW1lIGNvbXBvbmVudCBzaG91bGQgYmUgdXNlZCBpbiBjb21wYWN0IG1vZGUgKi9cbiAgICBASW5wdXQoKVxuICAgIGNvbXBhY3Q/OiBib29sZWFuO1xuXG4gICAgLyoqIEBJbnB1dCBEZWZpbmVzIGlmIHRpbWUgY29tcG9uZW50IHNob3VsZCBiZSB1c2VkIGluIHRhYmxldCBtb2RlICovXG4gICAgQElucHV0KClcbiAgICB0YWJsZXQgPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIEBJbnB1dCBBbiBvYmplY3QgdGhhdCBjb250YWlucyBkYXRldGltZSByZXByZXNlbnRhdGlvblxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgdGltZTogRDtcblxuICAgIC8qKiBASW5wdXQgV2hldGhlciB0byBzaG93IHNwaW5uZXIgYnV0dG9ucyAqL1xuICAgIEBJbnB1dCgpXG4gICAgc3Bpbm5lckJ1dHRvbnMgPSB0cnVlO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBAVmlld0NoaWxkcmVuKFRpbWVDb2x1bW5Db21wb25lbnQpXG4gICAgY29sdW1uczogUXVlcnlMaXN0PFRpbWVDb2x1bW5Db21wb25lbnQ8dW5rbm93biwgU2VsZWN0YWJsZVZpZXdJdGVtPHVua25vd24+Pj47XG5cbiAgICAvKiogQWN0aXZlIGNvbHVtbiB2aWV3IHRvIGl0ZXJhdGUgd2l0aCAqL1xuICAgIGFjdGl2ZVZpZXc6IEZkVGltZUFjdGl2ZVZpZXcgPSAnaG91cic7XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogY29udGFpbmVyIGZvciBbMCAtIDIzXSBob3Vyc1xuICAgICAqL1xuICAgIGhvdXJWaWV3SXRlbXM6IEhvdXJWaWV3SXRlbVtdID0gW107XG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIHJlZmVyZW5jZSB0byBjdXJyZW50bHkgc2VsZWN0ZWQgaG91clZpZXdJdGVtcyBlbGVtZW50XG4gICAgICovXG4gICAgYWN0aXZlSG91clZpZXdJdGVtOiBIb3VyVmlld0l0ZW07XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogY29udGFpbmVyIGZvciBbMCAtIDU5XSBtaW51dGVzXG4gICAgICovXG4gICAgbWludXRlVmlld0l0ZW1zOiBNaW51dGVWaWV3SXRlbVtdID0gW107XG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIHJlZmVyZW5jZSB0byBjdXJyZW50bHkgc2VsZWN0ZWQgbWludXRlVmlld0l0ZW1zIGVsZW1lbnRcbiAgICAgKi9cbiAgICBhY3RpdmVNaW51dGVWaWV3SXRlbTogTWludXRlVmlld0l0ZW07XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogY29udGFpbmVyIGZvciBbMCAtIDU5XSBzZWNvbmRzXG4gICAgICovXG4gICAgc2Vjb25kVmlld0l0ZW1zOiBTZWNvbmRWaWV3SXRlbVtdID0gW107XG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIHJlZmVyZW5jZSB0byBjdXJyZW50bHkgc2VsZWN0ZWQgc2Vjb25kVmlld0l0ZW1zIGVsZW1lbnRcbiAgICAgKi9cbiAgICBhY3RpdmVTZWNvbmRWaWV3SXRlbTogU2Vjb25kVmlld0l0ZW07XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogY29udGFpbmVyIGZvciBbYW0sIHBtXSBtZXJpZGlhbiB2YWx1ZXNcbiAgICAgKi9cbiAgICBtZXJpZGlhblZpZXdJdGVtczogTWVyaWRpYW5WaWV3SXRlbVtdID0gW107XG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIHJlZmVyZW5jZSB0byBjdXJyZW50bHkgc2VsZWN0ZWQgbWVyaWRpYW5WaWV3SXRlbXMgZWxlbWVudFxuICAgICAqL1xuICAgIGFjdGl2ZU1lcmlkaWFuVmlld0l0ZW06IE1lcmlkaWFuVmlld0l0ZW07XG5cbiAgICAvKiogQ29tcG9uZW50IGFyaWEtbGFiZWwgKi9cbiAgICBnZXQgX2NvbXBvbmVudEFyaWFMYWJlbCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5fdGltZUkxOG5MYWJlbHMuY29tcG9uZW50QXJpYU5hbWU7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IF9vbkRlc3Ryb3kkOiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfc3Vic2NyaXB0aW9ucyA9IG5ldyBTdWJzY3JpcHRpb24oKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgX2NoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgcHJpdmF0ZSBfdGltZUkxOG5MYWJlbHM6IFRpbWVJMThuLFxuICAgICAgICAvLyBVc2UgQE9wdGlvbmFsIHRvIGF2b2lkIGFuZ3VsYXIgaW5qZWN0aW9uIGVycm9yIG1lc3NhZ2UgYW5kIHRocm93IG91ciBvd24gd2hpY2ggaXMgbW9yZSBwcmVjaXNlIG9uZVxuICAgICAgICBAT3B0aW9uYWwoKSBwcml2YXRlIF9kYXRlVGltZUFkYXB0ZXI6IERhdGV0aW1lQWRhcHRlcjxEPixcbiAgICAgICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSBfY29udGVudERlbnNpdHlTZXJ2aWNlOiBDb250ZW50RGVuc2l0eVNlcnZpY2UsXG4gICAgICAgIEBPcHRpb25hbCgpIHByaXZhdGUgX3J0bFNlcnZpY2U6IFJ0bFNlcnZpY2VcbiAgICApIHtcbiAgICAgICAgaWYgKCFfZGF0ZVRpbWVBZGFwdGVyKSB7XG4gICAgICAgICAgICB0aHJvdyBjcmVhdGVNaXNzaW5nRGF0ZUltcGxlbWVudGF0aW9uRXJyb3IoJ0RhdGVUaW1lQWRhcHRlcicpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy50aW1lID0gdGhpcy5fZ2V0RGVmYXVsdFZhbHVlKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fZGF0ZVRpbWVBZGFwdGVyLmxvY2FsZUNoYW5nZXMucGlwZSh0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLl9zZXRVcFZpZXdHcmlkKCk7XG4gICAgICAgICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuX3NldFVwVmlld0dyaWQoKTtcblxuICAgICAgICBpZiAodGhpcy5jb21wYWN0ID09PSB1bmRlZmluZWQgJiYgdGhpcy5fY29udGVudERlbnNpdHlTZXJ2aWNlKSB7XG4gICAgICAgICAgICB0aGlzLl9zdWJzY3JpcHRpb25zLmFkZChcbiAgICAgICAgICAgICAgICB0aGlzLl9jb250ZW50RGVuc2l0eVNlcnZpY2UuX2lzQ29tcGFjdERlbnNpdHkuc3Vic2NyaWJlKChpc0NvbXBhY3QpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jb21wYWN0ID0gaXNDb21wYWN0O1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuXG4gICAgICogUmVhY3RzIG9ubHkgd2hlbiB0aGVyZSBpcyBtZXJpZGlhbiBvciB0aW1lIGlucHV0IGNoYW5nZVxuICAgICAqL1xuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICAgICAgaWYgKGNoYW5nZXMubWVyaWRpYW4gfHwgY2hhbmdlcy50aW1lKSB7XG4gICAgICAgICAgICB0aGlzLl9zZXRVcFZpZXdHcmlkKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9zdWJzY3JpcHRpb25zLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIHRoaXMuX29uRGVzdHJveSQubmV4dCgpO1xuICAgICAgICB0aGlzLl9vbkRlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMucmVmcmVzaENvbHVtbnMoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG9uQ2hhbmdlOiAodmFsdWU6IEQpID0+IHZvaWQgPSAoKSA9PiB7fTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgb25Ub3VjaGVkID0gKCk6IHZvaWQgPT4ge307XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHJlZ2lzdGVyT25DaGFuZ2UoZm46ICh0aW1lOiBEKSA9PiB2b2lkKTogdm9pZCB7XG4gICAgICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcmVmcmVzaENvbHVtbnMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY29sdW1ucy5mb3JFYWNoKChjb2x1bW4pID0+IGNvbHVtbi5zZXRWYWx1ZU9mQWN0aXZlKCkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiBIYW5kbGVzIG1lcmlkaWFuIGNoYW5nZS5cbiAgICAgKiBUaGlzIGltcGxpY2l0bHkgY2hhbmdlcyBob3VycyBieSArLy0gMTJcbiAgICAgKi9cbiAgICBoYW5kbGVNZXJpZGlhbkNoYW5nZShtZXJpZGlhbjogTWVyaWRpYW4pOiB2b2lkIHtcbiAgICAgICAgbGV0IGhvdXJPZmZzZXQ6IG51bWJlciA9IG1lcmlkaWFuID09PSBNZXJpZGlhbi5BTSA/IC0xMiA6IDEyO1xuICAgICAgICBsZXQgY3VycmVudEhvdXIgPSB0aGlzLl9nZXRNb2RlbEhvdXIoKTtcblxuICAgICAgICBpZiAoY3VycmVudEhvdXIgPiAxMiAmJiBtZXJpZGlhbiA9PT0gTWVyaWRpYW4uUE0pIHtcbiAgICAgICAgICAgIGN1cnJlbnRIb3VyIC09IDEyO1xuICAgICAgICB9IGVsc2UgaWYgKGN1cnJlbnRIb3VyID09PSAxMikge1xuICAgICAgICAgICAgY3VycmVudEhvdXIgPSAwO1xuICAgICAgICB9IGVsc2UgaWYgKGN1cnJlbnRIb3VyIDwgMTIgJiYgbWVyaWRpYW4gPT09IE1lcmlkaWFuLkFNKSB7XG4gICAgICAgICAgICBob3VyT2Zmc2V0ID0gMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IG5ld0hvdXIgPSBNYXRoLm1heCgwLCBNYXRoLm1pbigyMywgY3VycmVudEhvdXIgKyBob3VyT2Zmc2V0KSk7XG5cbiAgICAgICAgdGhpcy5oYW5kbGVIb3VyQ2hhbmdlKG5ld0hvdXIpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgaGFuZGxlU2Vjb25kQ2hhbmdlKHNlY29uZDogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIHRoaXMudGltZSA9IHRoaXMuX2RhdGVUaW1lQWRhcHRlci5zZXRTZWNvbmRzKHRoaXMudGltZSwgc2Vjb25kKTtcbiAgICAgICAgdGhpcy5fY2FsY3VsYXRlQWN0aXZlU2Vjb25kVmlld0l0ZW0oKTtcbiAgICAgICAgdGhpcy5vbkNoYW5nZSh0aGlzLnRpbWUpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgaGFuZGxlTWludXRlQ2hhbmdlKG1pbnV0ZTogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIHRoaXMudGltZSA9IHRoaXMuX2RhdGVUaW1lQWRhcHRlci5zZXRNaW51dGVzKHRoaXMudGltZSwgbWludXRlKTtcbiAgICAgICAgdGhpcy5fY2FsY3VsYXRlQWN0aXZlTWludXRlVmlld0l0ZW0oKTtcbiAgICAgICAgdGhpcy5vbkNoYW5nZSh0aGlzLnRpbWUpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiBIYW5kbGVzIGNoYW5nZXMgb2YgZGlzcGxheWVkIGhvdXIgdmFsdWUgZnJvbSB0ZW1wbGF0ZS5cbiAgICAgKi9cbiAgICBoYW5kbGVIb3VyQ2hhbmdlKGhvdXI6IG51bWJlcik6IHZvaWQge1xuICAgICAgICB0aGlzLnRpbWUgPSB0aGlzLl9kYXRlVGltZUFkYXB0ZXIuc2V0SG91cnModGhpcy50aW1lLCBob3VyKTtcbiAgICAgICAgdGhpcy5fY2FsY3VsYXRlQWN0aXZlSG91clZpZXdJdGVtKCk7XG5cbiAgICAgICAgaWYgKHRoaXMubWVyaWRpYW4pIHtcbiAgICAgICAgICAgIHRoaXMuX2NhbGN1bGF0ZUFjdGl2ZU1lcmlkaWFuVmlld0l0ZW0oKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMub25DaGFuZ2UodGhpcy50aW1lKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGhhbmRsZU5leHRDb2x1bW5Gb2N1cyhjb2x1bW46IEZkVGltZUFjdGl2ZVZpZXcpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgY29sdW1ucyA9IHRoaXMuX2dldFZpc2libGVDb2x1bW5zV2l0aFJ0bCgpO1xuICAgICAgICBsZXQgbmV4dEluZGV4ID0gY29sdW1ucy5pbmRleE9mKGNvbHVtbikgKyAxO1xuICAgICAgICBpZiAobmV4dEluZGV4ID49IGNvbHVtbnMubGVuZ3RoKSB7XG4gICAgICAgICAgICBuZXh0SW5kZXggPSAwO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuY2hhbmdlQWN0aXZlKGNvbHVtbnNbbmV4dEluZGV4XSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBoYW5kbGVQcmV2aW91c0NvbHVtbkZvY3VzKGNvbHVtbjogRmRUaW1lQWN0aXZlVmlldyk6IHZvaWQge1xuICAgICAgICBjb25zdCBjb2x1bW5zID0gdGhpcy5fZ2V0VmlzaWJsZUNvbHVtbnNXaXRoUnRsKCk7XG4gICAgICAgIGxldCBuZXh0SW5kZXggPSBjb2x1bW5zLmluZGV4T2YoY29sdW1uKSAtIDE7XG4gICAgICAgIGlmIChuZXh0SW5kZXggPCAwKSB7XG4gICAgICAgICAgICBuZXh0SW5kZXggPSBjb2x1bW5zLmxlbmd0aCAtIDE7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jaGFuZ2VBY3RpdmUoY29sdW1uc1tuZXh0SW5kZXhdKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGhhbmRsZUtleURvd25FdmVudChldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAoS2V5VXRpbC5pc0tleUNvZGUoZXZlbnQsIExFRlRfQVJST1cpKSB7XG4gICAgICAgICAgICB0aGlzLmhhbmRsZVByZXZpb3VzQ29sdW1uRm9jdXModGhpcy5hY3RpdmVWaWV3KTtcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICB0aGlzLmZvY3VzQWN0aXZlQ29sdW1uKCk7XG4gICAgICAgIH0gZWxzZSBpZiAoS2V5VXRpbC5pc0tleUNvZGUoZXZlbnQsIFJJR0hUX0FSUk9XKSkge1xuICAgICAgICAgICAgdGhpcy5oYW5kbGVOZXh0Q29sdW1uRm9jdXModGhpcy5hY3RpdmVWaWV3KTtcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICB0aGlzLmZvY3VzQWN0aXZlQ29sdW1uKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHdyaXRlVmFsdWUodGltZTogRCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRpbWUgfHwgIXRoaXMuX2RhdGVUaW1lQWRhcHRlci5pc1ZhbGlkKHRpbWUpKSB7XG4gICAgICAgICAgICB0aW1lID0gdGhpcy5fZ2V0RGVmYXVsdFZhbHVlKCk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy50aW1lID0gdGltZTtcblxuICAgICAgICB0aGlzLl9zZXRVcEFjdGl2ZVZpZXdJdGVtcygpO1xuXG4gICAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGNoYW5nZUFjdGl2ZSh2aWV3OiBGZFRpbWVBY3RpdmVWaWV3KTogdm9pZCB7XG4gICAgICAgIHRoaXMuYWN0aXZlVmlldyA9IHZpZXc7XG4gICAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGlzQWN0aXZlKHZpZXc6IEZkVGltZUFjdGl2ZVZpZXcpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYWN0aXZlVmlldyA9PT0gdmlldztcbiAgICB9XG5cbiAgICAvKiogQ29uZmlndXJhdGlvbiBmb3IgaG91cnMgY29sdW1uICovXG4gICAgZ2V0SG91cnNDb25maWcoKTogVGltZUNvbHVtbkNvbmZpZyB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBkZWNyZWFzZUxhYmVsOiB0aGlzLl90aW1lSTE4bkxhYmVscy5kZWNyZWFzZUhvdXJzTGFiZWwsXG4gICAgICAgICAgICBpbmNyZWFzZUxhYmVsOiB0aGlzLl90aW1lSTE4bkxhYmVscy5pbmNyZWFzZUhvdXJzTGFiZWwsXG4gICAgICAgICAgICBsYWJlbDogdGhpcy5fdGltZUkxOG5MYWJlbHMuaG91cnNMYWJlbCxcbiAgICAgICAgICAgIG5hdmlnYXRpb25JbnN0cnVjdGlvbjogdGhpcy5fdGltZUkxOG5MYWJlbHMubmF2aWdhdGlvbkluc3RydWN0aW9uXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgLyoqIENvbmZpZ3VyYXRpb24gZm9yIG1pbnV0ZXMgY29sdW1uICovXG4gICAgZ2V0TWludXRlc0NvbmZpZygpOiBUaW1lQ29sdW1uQ29uZmlnIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGRlY3JlYXNlTGFiZWw6IHRoaXMuX3RpbWVJMThuTGFiZWxzLmRlY3JlYXNlTWludXRlc0xhYmVsLFxuICAgICAgICAgICAgaW5jcmVhc2VMYWJlbDogdGhpcy5fdGltZUkxOG5MYWJlbHMuaW5jcmVhc2VNaW51dGVzTGFiZWwsXG4gICAgICAgICAgICBsYWJlbDogdGhpcy5fdGltZUkxOG5MYWJlbHMubWludXRlc0xhYmVsLFxuICAgICAgICAgICAgbmF2aWdhdGlvbkluc3RydWN0aW9uOiB0aGlzLl90aW1lSTE4bkxhYmVscy5uYXZpZ2F0aW9uSW5zdHJ1Y3Rpb25cbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICAvKiogQ29uZmlndXJhdGlvbiBmb3Igc2Vjb25kcyBjb2x1bW4gKi9cbiAgICBnZXRTZWNvbmRzQ29uZmlnKCk6IFRpbWVDb2x1bW5Db25maWcge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgZGVjcmVhc2VMYWJlbDogdGhpcy5fdGltZUkxOG5MYWJlbHMuZGVjcmVhc2VTZWNvbmRzTGFiZWwsXG4gICAgICAgICAgICBpbmNyZWFzZUxhYmVsOiB0aGlzLl90aW1lSTE4bkxhYmVscy5pbmNyZWFzZVNlY29uZHNMYWJlbCxcbiAgICAgICAgICAgIGxhYmVsOiB0aGlzLl90aW1lSTE4bkxhYmVscy5zZWNvbmRzTGFiZWwsXG4gICAgICAgICAgICBuYXZpZ2F0aW9uSW5zdHJ1Y3Rpb246IHRoaXMuX3RpbWVJMThuTGFiZWxzLm5hdmlnYXRpb25JbnN0cnVjdGlvblxuICAgICAgICB9O1xuICAgIH1cblxuICAgIC8qKiBDb25maWd1cmF0aW9uIGZvciBwZXJpb2QgY29sdW1uICovXG4gICAgZ2V0UGVyaW9kQ29uZmlnKCk6IFRpbWVDb2x1bW5Db25maWcge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgZGVjcmVhc2VMYWJlbDogdGhpcy5fdGltZUkxOG5MYWJlbHMuZGVjcmVhc2VQZXJpb2RMYWJlbCxcbiAgICAgICAgICAgIGluY3JlYXNlTGFiZWw6IHRoaXMuX3RpbWVJMThuTGFiZWxzLmluY3JlYXNlUGVyaW9kTGFiZWwsXG4gICAgICAgICAgICBsYWJlbDogdGhpcy5fdGltZUkxOG5MYWJlbHMucGVyaW9kTGFiZWwsXG4gICAgICAgICAgICBuYXZpZ2F0aW9uSW5zdHJ1Y3Rpb246IHRoaXMuX3RpbWVJMThuTGFiZWxzLm5hdmlnYXRpb25JbnN0cnVjdGlvblxuICAgICAgICB9O1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgZm9jdXNBY3RpdmVDb2x1bW4oKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGNvbHVtbiA9IHRoaXMuY29sdW1ucy5maW5kKCh7IGFjdGl2ZSB9KSA9PiBhY3RpdmUpO1xuICAgICAgICBjb2x1bW4/LmZvY3VzKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0IHZpc2libGUgdGltZSBjb2x1bW5zXG4gICAgICogQHJldHVybnMgdmlzaWJsZSBjb2x1bW5zIGxpc3QgQHNlZSB7RmRUaW1lQWN0aXZlVmlld1tdfVxuICAgICAqL1xuICAgIHByaXZhdGUgX2dldFZpc2libGVDb2x1bW5zKCk6IEZkVGltZUFjdGl2ZVZpZXdbXSB7XG4gICAgICAgIGNvbnN0IGFsbE9wdGlvbnM6IEFycmF5PFtib29sZWFuLCBGZFRpbWVBY3RpdmVWaWV3XT4gPSBbXG4gICAgICAgICAgICBbdGhpcy5kaXNwbGF5SG91cnMsICdob3VyJ10sXG4gICAgICAgICAgICBbdGhpcy5kaXNwbGF5TWludXRlcywgJ21pbnV0ZSddLFxuICAgICAgICAgICAgW3RoaXMuZGlzcGxheVNlY29uZHMsICdzZWNvbmQnXSxcbiAgICAgICAgICAgIFt0aGlzLm1lcmlkaWFuLCAnbWVyaWRpYW4nXVxuICAgICAgICBdO1xuICAgICAgICByZXR1cm4gYWxsT3B0aW9ucy5maWx0ZXIoKFtlbmFibGVkXSkgPT4gZW5hYmxlZCkubWFwKChbLCB2aWV3XSkgPT4gdmlldyk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0IHZpc2libGUgY29sdW1ucyB0YWtpbmcgaW50byBhY2NvdW50IFJUTFxuICAgICAqIEByZXR1cm5zIHZpc2libGUgY29sdW1ucyBsaXN0IEBzZWUge0ZkVGltZUFjdGl2ZVZpZXdbXX1cbiAgICAgKi9cbiAgICBwcml2YXRlIF9nZXRWaXNpYmxlQ29sdW1uc1dpdGhSdGwoKTogRmRUaW1lQWN0aXZlVmlld1tdIHtcbiAgICAgICAgY29uc3QgY29sdW1ucyA9IHRoaXMuX2dldFZpc2libGVDb2x1bW5zKCk7XG4gICAgICAgIHJldHVybiB0aGlzLl9ydGxTZXJ2aWNlPy5ydGwudmFsdWUgPyBjb2x1bW5zLnJldmVyc2UoKSA6IGNvbHVtbnM7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9zZXRVcFZpZXdHcmlkKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9jb25zdHJ1Y3RIb3VyVmlld0l0ZW1zKCk7XG4gICAgICAgIHRoaXMuX2NvbnN0cnVjdE1pbnV0ZVZpZXdJdGVtcygpO1xuICAgICAgICB0aGlzLl9jb25zdHJ1Y3RTZWNvbmRWaWV3SXRlbXMoKTtcbiAgICAgICAgdGhpcy5fY29uc3RydWN0TWVyaWRpYW5WaWV3SXRlbXMoKTtcbiAgICAgICAgLy8gdXBkYXRlIHJlZmVyZW5jZSB0byBhY3RpdmUgdmlldyBpdGVtc1xuICAgICAgICB0aGlzLl9zZXRVcEFjdGl2ZVZpZXdJdGVtcygpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfc2V0VXBBY3RpdmVWaWV3SXRlbXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2NhbGN1bGF0ZUFjdGl2ZUhvdXJWaWV3SXRlbSgpO1xuICAgICAgICB0aGlzLl9jYWxjdWxhdGVBY3RpdmVNaW51dGVWaWV3SXRlbSgpO1xuICAgICAgICB0aGlzLl9jYWxjdWxhdGVBY3RpdmVTZWNvbmRWaWV3SXRlbSgpO1xuICAgICAgICB0aGlzLl9jYWxjdWxhdGVBY3RpdmVNZXJpZGlhblZpZXdJdGVtKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9jb25zdHJ1Y3RIb3VyVmlld0l0ZW1zKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmhvdXJWaWV3SXRlbXMgPSB0aGlzLl9kYXRlVGltZUFkYXB0ZXJcbiAgICAgICAgICAgIC5nZXRIb3VyTmFtZXMoeyBtZXJpZGlhbjogdGhpcy5tZXJpZGlhbiwgdHdvRGlnaXQ6IHRoaXMua2VlcFR3b0RpZ2l0cyB9KVxuICAgICAgICAgICAgLm1hcCgobmFtZSwgaG91cikgPT4gKHtcbiAgICAgICAgICAgICAgICB2YWx1ZTogaG91cixcbiAgICAgICAgICAgICAgICBsYWJlbDogbmFtZVxuICAgICAgICAgICAgfSkpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfY29uc3RydWN0TWludXRlVmlld0l0ZW1zKCk6IHZvaWQge1xuICAgICAgICB0aGlzLm1pbnV0ZVZpZXdJdGVtcyA9IHRoaXMuX2RhdGVUaW1lQWRhcHRlclxuICAgICAgICAgICAgLmdldE1pbnV0ZU5hbWVzKHsgdHdvRGlnaXQ6IHRoaXMua2VlcFR3b0RpZ2l0cyB9KVxuICAgICAgICAgICAgLm1hcCgobmFtZSwgbWludXRlKSA9PiAoe1xuICAgICAgICAgICAgICAgIHZhbHVlOiBtaW51dGUsXG4gICAgICAgICAgICAgICAgbGFiZWw6IG5hbWVcbiAgICAgICAgICAgIH0pKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2NvbnN0cnVjdFNlY29uZFZpZXdJdGVtcygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZWNvbmRWaWV3SXRlbXMgPSB0aGlzLl9kYXRlVGltZUFkYXB0ZXJcbiAgICAgICAgICAgIC5nZXRTZWNvbmROYW1lcyh7IHR3b0RpZ2l0OiB0aGlzLmtlZXBUd29EaWdpdHMgfSlcbiAgICAgICAgICAgIC5tYXAoKG5hbWUsIHNlY29uZCkgPT4gKHtcbiAgICAgICAgICAgICAgICB2YWx1ZTogc2Vjb25kLFxuICAgICAgICAgICAgICAgIGxhYmVsOiBuYW1lXG4gICAgICAgICAgICB9KSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9jb25zdHJ1Y3RNZXJpZGlhblZpZXdJdGVtcygpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgW2FtTGFiZWwsIHBtTGFiZWxdID0gdGhpcy5fZGF0ZVRpbWVBZGFwdGVyLmdldERheVBlcmlvZE5hbWVzKCk7XG4gICAgICAgIHRoaXMubWVyaWRpYW5WaWV3SXRlbXMgPSBbXG4gICAgICAgICAgICB7IHZhbHVlOiBNZXJpZGlhbi5BTSwgbGFiZWw6IGFtTGFiZWwgfSxcbiAgICAgICAgICAgIHsgdmFsdWU6IE1lcmlkaWFuLlBNLCBsYWJlbDogcG1MYWJlbCB9XG4gICAgICAgIF07XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9jYWxjdWxhdGVBY3RpdmVIb3VyVmlld0l0ZW0oKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGhvdXIgPSB0aGlzLl9nZXRNb2RlbEhvdXIoKTtcbiAgICAgICAgdGhpcy5hY3RpdmVIb3VyVmlld0l0ZW0gPSB0aGlzLmhvdXJWaWV3SXRlbXMuZmluZCgoeyB2YWx1ZSB9KSA9PiB2YWx1ZSA9PT0gaG91cik7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9jYWxjdWxhdGVBY3RpdmVNaW51dGVWaWV3SXRlbSgpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgbWludXRlID0gdGhpcy5fZ2V0TW9kZWxNaW51dGUoKTtcbiAgICAgICAgdGhpcy5hY3RpdmVNaW51dGVWaWV3SXRlbSA9IHRoaXMubWludXRlVmlld0l0ZW1zLmZpbmQoKHsgdmFsdWUgfSkgPT4gdmFsdWUgPT09IG1pbnV0ZSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9jYWxjdWxhdGVBY3RpdmVTZWNvbmRWaWV3SXRlbSgpOiB2b2lkIHtcbiAgICAgICAgY29uc3Qgc2Vjb25kID0gdGhpcy5fZ2V0TW9kZWxTZWNvbmQoKTtcbiAgICAgICAgdGhpcy5hY3RpdmVTZWNvbmRWaWV3SXRlbSA9IHRoaXMuc2Vjb25kVmlld0l0ZW1zLmZpbmQoKHsgdmFsdWUgfSkgPT4gdmFsdWUgPT09IHNlY29uZCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9jYWxjdWxhdGVBY3RpdmVNZXJpZGlhblZpZXdJdGVtKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBtZXJpZGlhbiA9IHRoaXMuX2dldERheVBlcmlvZEJ5SG91cigpO1xuICAgICAgICB0aGlzLmFjdGl2ZU1lcmlkaWFuVmlld0l0ZW0gPSB0aGlzLm1lcmlkaWFuVmlld0l0ZW1zLmZpbmQoKHsgdmFsdWUgfSkgPT4gdmFsdWUgPT09IG1lcmlkaWFuKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogTW9kZWwgaG91cnMgKDAgLSAyMylcbiAgICAgKi9cbiAgICBwcml2YXRlIF9nZXRNb2RlbEhvdXIoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2RhdGVUaW1lQWRhcHRlci5nZXRIb3Vycyh0aGlzLnRpbWUpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiBNb2RlbCBtaW51dGVzICgwIC0gNTkpXG4gICAgICovXG4gICAgcHJpdmF0ZSBfZ2V0TW9kZWxNaW51dGUoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2RhdGVUaW1lQWRhcHRlci5nZXRNaW51dGVzKHRoaXMudGltZSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIE1vZGVsIHNlY29uZHMgKDAgLSA1OSlcbiAgICAgKi9cbiAgICBwcml2YXRlIF9nZXRNb2RlbFNlY29uZCgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5fZGF0ZVRpbWVBZGFwdGVyLmdldFNlY29uZHModGhpcy50aW1lKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogR2V0IG1lcmlkaWFuIHBlcmlvZCBiYXNlZCBvbiBhIGdpdmVuIGhvdXJzXG4gICAgICovXG4gICAgcHJpdmF0ZSBfZ2V0RGF5UGVyaW9kQnlIb3VyKGhvdXIgPSB0aGlzLl9nZXRNb2RlbEhvdXIoKSk6IE1lcmlkaWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2lzUG0oaG91cikgPyBNZXJpZGlhbi5QTSA6IE1lcmlkaWFuLkFNO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfaXNQbShob3VyczogbnVtYmVyID0gdGhpcy5fZ2V0TW9kZWxIb3VyKCkpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIGhvdXJzID49IDEyO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiBAcmV0dXJucyBkZWZhdWx0IHRpbWUgMDA6MDA6MDBcbiAgICAgKi9cbiAgICBwcml2YXRlIF9nZXREZWZhdWx0VmFsdWUoKTogRCB7XG4gICAgICAgIHJldHVybiB0aGlzLl9kYXRlVGltZUFkYXB0ZXIudG9kYXkoKTtcbiAgICB9XG59XG4iLCI8ZGl2XG4gICAgY2xhc3M9XCJmZC10aW1lXCJcbiAgICAoa2V5ZG93bik9XCJoYW5kbGVLZXlEb3duRXZlbnQoJGV2ZW50KVwiXG4gICAgW2NsYXNzLmZkLXRpbWUtLWNvbXBhY3RdPVwiY29tcGFjdFwiXG4gICAgW2NsYXNzLmZkLXRpbWUtLXRhYmxldF09XCJ0YWJsZXRcIlxuICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiX2NvbXBvbmVudEFyaWFMYWJlbFwiXG4+XG4gICAgPGZkLXRpbWUtY29sdW1uXG4gICAgICAgIFthY3RpdmVdPVwiaXNBY3RpdmUoJ2hvdXInKVwiXG4gICAgICAgIFtyb3dzXT1cImhvdXJWaWV3SXRlbXNcIlxuICAgICAgICBbY29tcGFjdF09XCJjb21wYWN0XCJcbiAgICAgICAgW2FjdGl2ZVZhbHVlXT1cImFjdGl2ZUhvdXJWaWV3SXRlbVwiXG4gICAgICAgIFt0aW1lQ29uZmlnXT1cImdldEhvdXJzQ29uZmlnKClcIlxuICAgICAgICBbc3Bpbm5lcnNdPVwic3Bpbm5lckJ1dHRvbnNcIlxuICAgICAgICAoYWN0aXZlVmFsdWVDaGFuZ2UpPVwiaGFuZGxlSG91ckNoYW5nZSgkZXZlbnQudmFsdWUudmFsdWUpXCJcbiAgICAgICAgKGFjdGl2ZVN0YXRlQ2hhbmdlKT1cImNoYW5nZUFjdGl2ZSgnaG91cicpXCJcbiAgICA+PC9mZC10aW1lLWNvbHVtbj5cbiAgICA8ZmQtdGltZS1jb2x1bW5cbiAgICAgICAgKm5nSWY9XCJkaXNwbGF5TWludXRlc1wiXG4gICAgICAgIFthY3RpdmVdPVwiaXNBY3RpdmUoJ21pbnV0ZScpXCJcbiAgICAgICAgW3Jvd3NdPVwibWludXRlVmlld0l0ZW1zXCJcbiAgICAgICAgW2NvbXBhY3RdPVwiY29tcGFjdFwiXG4gICAgICAgIFthY3RpdmVWYWx1ZV09XCJhY3RpdmVNaW51dGVWaWV3SXRlbVwiXG4gICAgICAgIFt0aW1lQ29uZmlnXT1cImdldE1pbnV0ZXNDb25maWcoKVwiXG4gICAgICAgIFtzcGlubmVyc109XCJzcGlubmVyQnV0dG9uc1wiXG4gICAgICAgIChhY3RpdmVWYWx1ZUNoYW5nZSk9XCJoYW5kbGVNaW51dGVDaGFuZ2UoJGV2ZW50LnZhbHVlLnZhbHVlKVwiXG4gICAgICAgIChhY3RpdmVTdGF0ZUNoYW5nZSk9XCJjaGFuZ2VBY3RpdmUoJ21pbnV0ZScpXCJcbiAgICA+PC9mZC10aW1lLWNvbHVtbj5cbiAgICA8ZmQtdGltZS1jb2x1bW5cbiAgICAgICAgKm5nSWY9XCJkaXNwbGF5U2Vjb25kc1wiXG4gICAgICAgIFthY3RpdmVdPVwiaXNBY3RpdmUoJ3NlY29uZCcpXCJcbiAgICAgICAgW3Jvd3NdPVwic2Vjb25kVmlld0l0ZW1zXCJcbiAgICAgICAgW2NvbXBhY3RdPVwiY29tcGFjdFwiXG4gICAgICAgIFthY3RpdmVWYWx1ZV09XCJhY3RpdmVTZWNvbmRWaWV3SXRlbVwiXG4gICAgICAgIFt0aW1lQ29uZmlnXT1cImdldFNlY29uZHNDb25maWcoKVwiXG4gICAgICAgIFtzcGlubmVyc109XCJzcGlubmVyQnV0dG9uc1wiXG4gICAgICAgIChhY3RpdmVWYWx1ZUNoYW5nZSk9XCJoYW5kbGVTZWNvbmRDaGFuZ2UoJGV2ZW50LnZhbHVlLnZhbHVlKVwiXG4gICAgICAgIChhY3RpdmVTdGF0ZUNoYW5nZSk9XCJjaGFuZ2VBY3RpdmUoJ3NlY29uZCcpXCJcbiAgICA+PC9mZC10aW1lLWNvbHVtbj5cbiAgICA8ZmQtdGltZS1jb2x1bW5cbiAgICAgICAgKm5nSWY9XCJtZXJpZGlhblwiXG4gICAgICAgIFthY3RpdmVdPVwiaXNBY3RpdmUoJ21lcmlkaWFuJylcIlxuICAgICAgICBbcm93c109XCJtZXJpZGlhblZpZXdJdGVtc1wiXG4gICAgICAgIFthY3RpdmVWYWx1ZV09XCJhY3RpdmVNZXJpZGlhblZpZXdJdGVtXCJcbiAgICAgICAgW29mZnNldF09XCIwXCJcbiAgICAgICAgW2NvbXBhY3RdPVwiY29tcGFjdFwiXG4gICAgICAgIFt0aW1lQ29uZmlnXT1cImdldFBlcmlvZENvbmZpZygpXCJcbiAgICAgICAgW21lcmlkaWFuXT1cInRydWVcIlxuICAgICAgICBbc3Bpbm5lcnNdPVwic3Bpbm5lckJ1dHRvbnNcIlxuICAgICAgICAoYWN0aXZlVmFsdWVDaGFuZ2UpPVwiaGFuZGxlTWVyaWRpYW5DaGFuZ2UoJGV2ZW50LnZhbHVlLnZhbHVlKVwiXG4gICAgICAgIChhY3RpdmVTdGF0ZUNoYW5nZSk9XCJjaGFuZ2VBY3RpdmUoJ21lcmlkaWFuJylcIlxuICAgID48L2ZkLXRpbWUtY29sdW1uPlxuPC9kaXY+XG4iXX0=
|
|
472
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi90aW1lL3RpbWUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvdGltZS90aW1lLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsS0FBSyxFQUNMLFNBQVMsRUFFVCxZQUFZLEVBQ1osaUJBQWlCLEVBRWpCLFFBQVEsRUFJWCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM3QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFaEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsVUFBVSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFHekYsT0FBTyxFQUFFLG9DQUFvQyxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUU1QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQzs7Ozs7OztBQTBCMUUsTUFBTSxPQUFPLGFBQWE7SUFxSXRCLGNBQWM7SUFDZCxZQUNZLGtCQUFxQyxFQUNyQyxlQUF5QjtJQUNqQyxxR0FBcUc7SUFDakYsZ0JBQW9DLEVBQ3BDLHNCQUE2QyxFQUM3QyxXQUF1QjtRQUxuQyx1QkFB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RUFBRSxDQUFDLGFBQWEsQ0FBQztZQUM1QyxLQUFLLEVBQUUsSUFBSTtTQUNkO0tBQ0osc0RBdUVhLG1CQUFtQixxRUN6SHJDLDB1RUE0REE7MkZETmEsYUFBYTtrQkFqQnpCLFNBQVM7K0JBQ0ksU0FBUyxRQUdiO3dCQUNGLFFBQVEsRUFBRSxhQUFhO3FCQUMxQixhQUNVO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLGNBQWMsQ0FBQzs0QkFDNUMsS0FBSyxFQUFFLElBQUk7eUJBQ2Q7cUJBQ0osbUJBQ2dCLHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUk7OzBCQTRJaEMsUUFBUTs7MEJBQ1IsUUFBUTs7MEJBQ1IsUUFBUTs0Q0F0SWIsUUFBUTtzQkFEUCxLQUFLO2dCQU9OLFFBQVE7c0JBRFAsS0FBSztnQkFTTixhQUFhO3NCQURaLEtBQUs7Z0JBT04sUUFBUTtzQkFEUCxLQUFLO2dCQU9OLGNBQWM7c0JBRGIsS0FBSztnQkFLTixjQUFjO3NCQURiLEtBQUs7Z0JBT04sWUFBWTtzQkFEWCxLQUFLO2dCQUtOLE9BQU87c0JBRE4sS0FBSztnQkFLTixNQUFNO3NCQURMLEtBQUs7Z0JBS04sY0FBYztzQkFEYixLQUFLO2dCQU9OLElBQUk7c0JBREgsS0FBSztnQkFLTixjQUFjO3NCQURiLEtBQUs7Z0JBS04sT0FBTztzQkFETixZQUFZO3VCQUFDLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIGZvcndhcmRSZWYsXG4gICAgSW5wdXQsXG4gICAgUXVlcnlMaXN0LFxuICAgIE9uSW5pdCxcbiAgICBWaWV3Q2hpbGRyZW4sXG4gICAgVmlld0VuY2Fwc3VsYXRpb24sXG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBPcHRpb25hbCxcbiAgICBPbkRlc3Ryb3ksXG4gICAgT25DaGFuZ2VzLFxuICAgIFNpbXBsZUNoYW5nZXNcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJqZWN0LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IExFRlRfQVJST1csIFJJR0hUX0FSUk9XIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2tleWNvZGVzJztcblxuaW1wb3J0IHsgRGF0ZXRpbWVBZGFwdGVyIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2RhdGV0aW1lJztcbmltcG9ydCB7IEtleVV0aWwsIENvbnRlbnREZW5zaXR5U2VydmljZSwgUnRsU2VydmljZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS91dGlscyc7XG5cbmltcG9ydCB7IE1lcmlkaWFuLCBTZWxlY3RhYmxlVmlld0l0ZW0gfSBmcm9tICcuL21vZGVscyc7XG5pbXBvcnQgeyBjcmVhdGVNaXNzaW5nRGF0ZUltcGxlbWVudGF0aW9uRXJyb3IgfSBmcm9tICcuL2Vycm9ycyc7XG5pbXBvcnQgeyBUaW1lSTE4biB9IGZyb20gJy4vaTE4bi90aW1lLWkxOG4nO1xuaW1wb3J0IHsgVGltZUNvbHVtbkNvbmZpZyB9IGZyb20gJy4vdGltZS1jb2x1bW4vdGltZS1jb2x1bW4tY29uZmlnJztcbmltcG9ydCB7IFRpbWVDb2x1bW5Db21wb25lbnQgfSBmcm9tICcuL3RpbWUtY29sdW1uL3RpbWUtY29sdW1uLmNvbXBvbmVudCc7XG5cbmV4cG9ydCB0eXBlIEZkVGltZUFjdGl2ZVZpZXcgPSAnaG91cicgfCAnbWludXRlJyB8ICdzZWNvbmQnIHwgJ21lcmlkaWFuJztcblxudHlwZSBIb3VyVmlld0l0ZW0gPSBTZWxlY3RhYmxlVmlld0l0ZW08bnVtYmVyPjtcbnR5cGUgTWludXRlVmlld0l0ZW0gPSBTZWxlY3RhYmxlVmlld0l0ZW08bnVtYmVyPjtcbnR5cGUgU2Vjb25kVmlld0l0ZW0gPSBTZWxlY3RhYmxlVmlld0l0ZW08bnVtYmVyPjtcbnR5cGUgTWVyaWRpYW5WaWV3SXRlbSA9IFNlbGVjdGFibGVWaWV3SXRlbTxNZXJpZGlhbj47XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZmQtdGltZScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3RpbWUuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3RpbWUuY29tcG9uZW50LnNjc3MnXSxcbiAgICBob3N0OiB7XG4gICAgICAgICcoYmx1ciknOiAnb25Ub3VjaGVkKCknXG4gICAgfSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUaW1lQ29tcG9uZW50KSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlXG4gICAgICAgIH1cbiAgICBdLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgVGltZUNvbXBvbmVudDxEPiBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXQsIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcbiAgICAvKipcbiAgICAgKiBASW5wdXQgV2hlbiBzZXQgdG8gZmFsc2UsIHVzZXMgdGhlIDI0IGhvdXIgY2xvY2sgKGhvdXJzIHJhbmdpbmcgZnJvbSAwIHRvIDIzKVxuICAgICAqIGFuZCBkb2VzIG5vdCBkaXNwbGF5IGEgcGVyaW9kIGNvbnRyb2wuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBtZXJpZGlhbiA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogIEBJbnB1dCBXaGVuIHNldCB0byBmYWxzZSwgZG9lcyBub3Qgc2V0IHRoZSBpbnB1dCBmaWVsZCB0byBpbnZhbGlkIHN0YXRlIG9uIGludmFsaWQgZW50cnkuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICB2YWxpZGF0ZSA9IHRydWU7XG5cbiAgICAvKipcbiAgICAgKiBASW5wdXQgd2hlbiBzZXQgdG8gdHJ1ZSwgdGltZSBpbnB1dHMgd29uJ3QgYWxsb3cgdG8gaGF2ZSAxIGRpZ2l0XG4gICAgICogZm9yIGV4YW1wbGUgOSB3aWxsIGJlY29tZSAwOVxuICAgICAqIGJ1dCAxMiB3aWxsIGJlIGtlcHQgYXMgMTIuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBrZWVwVHdvRGlnaXRzID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiBASW5wdXQgRGlzYWJsZXMgdGhlIGNvbXBvbmVudC5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIGRpc2FibGVkOiBib29sZWFuO1xuXG4gICAgLyoqXG4gICAgICogQElucHV0IFdoZW4gc2V0IHRvIGZhbHNlLCBoaWRlcyB0aGUgaW5wdXQgZm9yIHNlY29uZHMuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBkaXNwbGF5U2Vjb25kcyA9IHRydWU7XG5cbiAgICAvKiogQElucHV0IFdoZW4gc2V0IHRvIGZhbHNlLCBoaWRlcyB0aGUgaW5wdXQgZm9yIG1pbnV0ZXMuICovXG4gICAgQElucHV0KClcbiAgICBkaXNwbGF5TWludXRlcyA9IHRydWU7XG5cbiAgICAvKipcbiAgICAgKiBXaGVuIHNldCB0byBmYWxzZSwgaGlkZXMgdGhlIGlucHV0IGZvciBob3Vyc1xuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgZGlzcGxheUhvdXJzID0gdHJ1ZTtcblxuICAgIC8qKiBASW5wdXQgRGVmaW5lcyBpZiB0aW1lIGNvbXBvbmVudCBzaG91bGQgYmUgdXNlZCBpbiBjb21wYWN0IG1vZGUgKi9cbiAgICBASW5wdXQoKVxuICAgIGNvbXBhY3Q/OiBib29sZWFuO1xuXG4gICAgLyoqIEBJbnB1dCBEZWZpbmVzIGlmIHRpbWUgY29tcG9uZW50IHNob3VsZCBiZSB1c2VkIGluIHRhYmxldCBtb2RlICovXG4gICAgQElucHV0KClcbiAgICB0YWJsZXQgPSBmYWxzZTtcblxuICAgIC8qKiBASW5wdXQgRGVmaW5lcyBxdWFudGl0eSBvZiB0aGUgZWxlbWVudHMsIHRoYXQgYXJlIHZpc2libGUgYXQgdGhlIHNhbWUgdGltZS4gU2hvdWxkIGJlIG9kZCBudW1iZXIgKi9cbiAgICBASW5wdXQoKVxuICAgIGVsZW1lbnRzQXRPbmNlID0gNztcblxuICAgIC8qKlxuICAgICAqIEBJbnB1dCBBbiBvYmplY3QgdGhhdCBjb250YWlucyBkYXRldGltZSByZXByZXNlbnRhdGlvblxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgdGltZTogRDtcblxuICAgIC8qKiBASW5wdXQgV2hldGhlciB0byBzaG93IHNwaW5uZXIgYnV0dG9ucyAqL1xuICAgIEBJbnB1dCgpXG4gICAgc3Bpbm5lckJ1dHRvbnMgPSB0cnVlO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBAVmlld0NoaWxkcmVuKFRpbWVDb2x1bW5Db21wb25lbnQpXG4gICAgY29sdW1uczogUXVlcnlMaXN0PFRpbWVDb2x1bW5Db21wb25lbnQ8dW5rbm93biwgU2VsZWN0YWJsZVZpZXdJdGVtPHVua25vd24+Pj47XG5cbiAgICAvKiogQWN0aXZlIGNvbHVtbiB2aWV3IHRvIGl0ZXJhdGUgd2l0aCAqL1xuICAgIGFjdGl2ZVZpZXc6IEZkVGltZUFjdGl2ZVZpZXcgPSAnaG91cic7XG5cbiAgICAvKiogT2Zmc2V0ICovXG4gICAgZ2V0IG9mZnNldCgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gTWF0aC5mbG9vcih0aGlzLmVsZW1lbnRzQXRPbmNlIC8gMik7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIGNvbnRhaW5lciBmb3IgWzAgLSAyM10gaG91cnNcbiAgICAgKi9cbiAgICBob3VyVmlld0l0ZW1zOiBIb3VyVmlld0l0ZW1bXSA9IFtdO1xuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiByZWZlcmVuY2UgdG8gY3VycmVudGx5IHNlbGVjdGVkIGhvdXJWaWV3SXRlbXMgZWxlbWVudFxuICAgICAqL1xuICAgIGFjdGl2ZUhvdXJWaWV3SXRlbTogSG91clZpZXdJdGVtO1xuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIGNvbnRhaW5lciBmb3IgWzAgLSA1OV0gbWludXRlc1xuICAgICAqL1xuICAgIG1pbnV0ZVZpZXdJdGVtczogTWludXRlVmlld0l0ZW1bXSA9IFtdO1xuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiByZWZlcmVuY2UgdG8gY3VycmVudGx5IHNlbGVjdGVkIG1pbnV0ZVZpZXdJdGVtcyBlbGVtZW50XG4gICAgICovXG4gICAgYWN0aXZlTWludXRlVmlld0l0ZW06IE1pbnV0ZVZpZXdJdGVtO1xuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIGNvbnRhaW5lciBmb3IgWzAgLSA1OV0gc2Vjb25kc1xuICAgICAqL1xuICAgIHNlY29uZFZpZXdJdGVtczogU2Vjb25kVmlld0l0ZW1bXSA9IFtdO1xuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiByZWZlcmVuY2UgdG8gY3VycmVudGx5IHNlbGVjdGVkIHNlY29uZFZpZXdJdGVtcyBlbGVtZW50XG4gICAgICovXG4gICAgYWN0aXZlU2Vjb25kVmlld0l0ZW06IFNlY29uZFZpZXdJdGVtO1xuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIGNvbnRhaW5lciBmb3IgW2FtLCBwbV0gbWVyaWRpYW4gdmFsdWVzXG4gICAgICovXG4gICAgbWVyaWRpYW5WaWV3SXRlbXM6IE1lcmlkaWFuVmlld0l0ZW1bXSA9IFtdO1xuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiByZWZlcmVuY2UgdG8gY3VycmVudGx5IHNlbGVjdGVkIG1lcmlkaWFuVmlld0l0ZW1zIGVsZW1lbnRcbiAgICAgKi9cbiAgICBhY3RpdmVNZXJpZGlhblZpZXdJdGVtOiBNZXJpZGlhblZpZXdJdGVtO1xuXG4gICAgLyoqIENvbXBvbmVudCBhcmlhLWxhYmVsICovXG4gICAgZ2V0IF9jb21wb25lbnRBcmlhTGFiZWwoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3RpbWVJMThuTGFiZWxzLmNvbXBvbmVudEFyaWFOYW1lO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSByZWFkb25seSBfb25EZXN0cm95JDogU3ViamVjdDx2b2lkPiA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3N1YnNjcmlwdGlvbnMgPSBuZXcgU3Vic2NyaXB0aW9uKCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIF9jaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIHByaXZhdGUgX3RpbWVJMThuTGFiZWxzOiBUaW1lSTE4bixcbiAgICAgICAgLy8gVXNlIEBPcHRpb25hbCB0byBhdm9pZCBhbmd1bGFyIGluamVjdGlvbiBlcnJvciBtZXNzYWdlIGFuZCB0aHJvdyBvdXIgb3duIHdoaWNoIGlzIG1vcmUgcHJlY2lzZSBvbmVcbiAgICAgICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSBfZGF0ZVRpbWVBZGFwdGVyOiBEYXRldGltZUFkYXB0ZXI8RD4sXG4gICAgICAgIEBPcHRpb25hbCgpIHByaXZhdGUgX2NvbnRlbnREZW5zaXR5U2VydmljZTogQ29udGVudERlbnNpdHlTZXJ2aWNlLFxuICAgICAgICBAT3B0aW9uYWwoKSBwcml2YXRlIF9ydGxTZXJ2aWNlOiBSdGxTZXJ2aWNlXG4gICAgKSB7XG4gICAgICAgIGlmICghX2RhdGVUaW1lQWRhcHRlcikge1xuICAgICAgICAgICAgdGhyb3cgY3JlYXRlTWlzc2luZ0RhdGVJbXBsZW1lbnRhdGlvbkVycm9yKCdEYXRlVGltZUFkYXB0ZXInKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMudGltZSA9IHRoaXMuX2dldERlZmF1bHRWYWx1ZSgpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2RhdGVUaW1lQWRhcHRlci5sb2NhbGVDaGFuZ2VzLnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5fc2V0VXBWaWV3R3JpZCgpO1xuICAgICAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLl9zZXRVcFZpZXdHcmlkKCk7XG5cbiAgICAgICAgaWYgKHRoaXMuY29tcGFjdCA9PT0gdW5kZWZpbmVkICYmIHRoaXMuX2NvbnRlbnREZW5zaXR5U2VydmljZSkge1xuICAgICAgICAgICAgdGhpcy5fc3Vic2NyaXB0aW9ucy5hZGQoXG4gICAgICAgICAgICAgICAgdGhpcy5fY29udGVudERlbnNpdHlTZXJ2aWNlLl9pc0NvbXBhY3REZW5zaXR5LnN1YnNjcmliZSgoaXNDb21wYWN0KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY29tcGFjdCA9IGlzQ29tcGFjdDtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQGhpZGRlblxuICAgICAqIFJlYWN0cyBvbmx5IHdoZW4gdGhlcmUgaXMgbWVyaWRpYW4gb3IgdGltZSBpbnB1dCBjaGFuZ2VcbiAgICAgKi9cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGlmIChjaGFuZ2VzLm1lcmlkaWFuIHx8IGNoYW5nZXMudGltZSkge1xuICAgICAgICAgICAgdGhpcy5fc2V0VXBWaWV3R3JpZCgpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChjaGFuZ2VzLmVsZW1lbnRzQXRPbmNlICYmIGNoYW5nZXMuZWxlbWVudHNBdE9uY2UuY3VycmVudFZhbHVlICUgMiA9PT0gMCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdbZWxlbWVudHNBdE9uY2VdIHNob3VsZCBiZSBvZGQgbnVtYmVyJyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9zdWJzY3JpcHRpb25zLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIHRoaXMuX29uRGVzdHJveSQubmV4dCgpO1xuICAgICAgICB0aGlzLl9vbkRlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMucmVmcmVzaENvbHVtbnMoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG9uQ2hhbmdlOiAodmFsdWU6IEQpID0+IHZvaWQgPSAoKSA9PiB7fTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgb25Ub3VjaGVkID0gKCk6IHZvaWQgPT4ge307XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHJlZ2lzdGVyT25DaGFuZ2UoZm46ICh0aW1lOiBEKSA9PiB2b2lkKTogdm9pZCB7XG4gICAgICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcmVmcmVzaENvbHVtbnMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY29sdW1ucy5mb3JFYWNoKChjb2x1bW4pID0+IGNvbHVtbi5zZXRWYWx1ZU9mQWN0aXZlKCkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiBIYW5kbGVzIG1lcmlkaWFuIGNoYW5nZS5cbiAgICAgKiBUaGlzIGltcGxpY2l0bHkgY2hhbmdlcyBob3VycyBieSArLy0gMTJcbiAgICAgKi9cbiAgICBoYW5kbGVNZXJpZGlhbkNoYW5nZShtZXJpZGlhbjogTWVyaWRpYW4pOiB2b2lkIHtcbiAgICAgICAgbGV0IGhvdXJPZmZzZXQ6IG51bWJlciA9IG1lcmlkaWFuID09PSBNZXJpZGlhbi5BTSA/IC0xMiA6IDEyO1xuICAgICAgICBsZXQgY3VycmVudEhvdXIgPSB0aGlzLl9nZXRNb2RlbEhvdXIoKTtcblxuICAgICAgICBpZiAoY3VycmVudEhvdXIgPiAxMiAmJiBtZXJpZGlhbiA9PT0gTWVyaWRpYW4uUE0pIHtcbiAgICAgICAgICAgIGN1cnJlbnRIb3VyIC09IDEyO1xuICAgICAgICB9IGVsc2UgaWYgKGN1cnJlbnRIb3VyID09PSAxMikge1xuICAgICAgICAgICAgY3VycmVudEhvdXIgPSAwO1xuICAgICAgICB9IGVsc2UgaWYgKGN1cnJlbnRIb3VyIDwgMTIgJiYgbWVyaWRpYW4gPT09IE1lcmlkaWFuLkFNKSB7XG4gICAgICAgICAgICBob3VyT2Zmc2V0ID0gMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IG5ld0hvdXIgPSBNYXRoLm1heCgwLCBNYXRoLm1pbigyMywgY3VycmVudEhvdXIgKyBob3VyT2Zmc2V0KSk7XG5cbiAgICAgICAgdGhpcy5oYW5kbGVIb3VyQ2hhbmdlKG5ld0hvdXIpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgaGFuZGxlU2Vjb25kQ2hhbmdlKHNlY29uZDogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIHRoaXMudGltZSA9IHRoaXMuX2RhdGVUaW1lQWRhcHRlci5zZXRTZWNvbmRzKHRoaXMudGltZSwgc2Vjb25kKTtcbiAgICAgICAgdGhpcy5fY2FsY3VsYXRlQWN0aXZlU2Vjb25kVmlld0l0ZW0oKTtcbiAgICAgICAgdGhpcy5vbkNoYW5nZSh0aGlzLnRpbWUpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgaGFuZGxlTWludXRlQ2hhbmdlKG1pbnV0ZTogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIHRoaXMudGltZSA9IHRoaXMuX2RhdGVUaW1lQWRhcHRlci5zZXRNaW51dGVzKHRoaXMudGltZSwgbWludXRlKTtcbiAgICAgICAgdGhpcy5fY2FsY3VsYXRlQWN0aXZlTWludXRlVmlld0l0ZW0oKTtcbiAgICAgICAgdGhpcy5vbkNoYW5nZSh0aGlzLnRpbWUpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiBIYW5kbGVzIGNoYW5nZXMgb2YgZGlzcGxheWVkIGhvdXIgdmFsdWUgZnJvbSB0ZW1wbGF0ZS5cbiAgICAgKi9cbiAgICBoYW5kbGVIb3VyQ2hhbmdlKGhvdXI6IG51bWJlcik6IHZvaWQge1xuICAgICAgICB0aGlzLnRpbWUgPSB0aGlzLl9kYXRlVGltZUFkYXB0ZXIuc2V0SG91cnModGhpcy50aW1lLCBob3VyKTtcbiAgICAgICAgdGhpcy5fY2FsY3VsYXRlQWN0aXZlSG91clZpZXdJdGVtKCk7XG5cbiAgICAgICAgaWYgKHRoaXMubWVyaWRpYW4pIHtcbiAgICAgICAgICAgIHRoaXMuX2NhbGN1bGF0ZUFjdGl2ZU1lcmlkaWFuVmlld0l0ZW0oKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMub25DaGFuZ2UodGhpcy50aW1lKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGhhbmRsZU5leHRDb2x1bW5Gb2N1cyhjb2x1bW46IEZkVGltZUFjdGl2ZVZpZXcpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgY29sdW1ucyA9IHRoaXMuX2dldFZpc2libGVDb2x1bW5zV2l0aFJ0bCgpO1xuICAgICAgICBsZXQgbmV4dEluZGV4ID0gY29sdW1ucy5pbmRleE9mKGNvbHVtbikgKyAxO1xuICAgICAgICBpZiAobmV4dEluZGV4ID49IGNvbHVtbnMubGVuZ3RoKSB7XG4gICAgICAgICAgICBuZXh0SW5kZXggPSAwO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuY2hhbmdlQWN0aXZlKGNvbHVtbnNbbmV4dEluZGV4XSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBoYW5kbGVQcmV2aW91c0NvbHVtbkZvY3VzKGNvbHVtbjogRmRUaW1lQWN0aXZlVmlldyk6IHZvaWQge1xuICAgICAgICBjb25zdCBjb2x1bW5zID0gdGhpcy5fZ2V0VmlzaWJsZUNvbHVtbnNXaXRoUnRsKCk7XG4gICAgICAgIGxldCBuZXh0SW5kZXggPSBjb2x1bW5zLmluZGV4T2YoY29sdW1uKSAtIDE7XG4gICAgICAgIGlmIChuZXh0SW5kZXggPCAwKSB7XG4gICAgICAgICAgICBuZXh0SW5kZXggPSBjb2x1bW5zLmxlbmd0aCAtIDE7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jaGFuZ2VBY3RpdmUoY29sdW1uc1tuZXh0SW5kZXhdKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGhhbmRsZUtleURvd25FdmVudChldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAoS2V5VXRpbC5pc0tleUNvZGUoZXZlbnQsIExFRlRfQVJST1cpKSB7XG4gICAgICAgICAgICB0aGlzLmhhbmRsZVByZXZpb3VzQ29sdW1uRm9jdXModGhpcy5hY3RpdmVWaWV3KTtcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICB0aGlzLmZvY3VzQWN0aXZlQ29sdW1uKCk7XG4gICAgICAgIH0gZWxzZSBpZiAoS2V5VXRpbC5pc0tleUNvZGUoZXZlbnQsIFJJR0hUX0FSUk9XKSkge1xuICAgICAgICAgICAgdGhpcy5oYW5kbGVOZXh0Q29sdW1uRm9jdXModGhpcy5hY3RpdmVWaWV3KTtcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICB0aGlzLmZvY3VzQWN0aXZlQ29sdW1uKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHdyaXRlVmFsdWUodGltZTogRCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRpbWUgfHwgIXRoaXMuX2RhdGVUaW1lQWRhcHRlci5pc1ZhbGlkKHRpbWUpKSB7XG4gICAgICAgICAgICB0aW1lID0gdGhpcy5fZ2V0RGVmYXVsdFZhbHVlKCk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy50aW1lID0gdGltZTtcblxuICAgICAgICB0aGlzLl9zZXRVcEFjdGl2ZVZpZXdJdGVtcygpO1xuXG4gICAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGNoYW5nZUFjdGl2ZSh2aWV3OiBGZFRpbWVBY3RpdmVWaWV3KTogdm9pZCB7XG4gICAgICAgIHRoaXMuYWN0aXZlVmlldyA9IHZpZXc7XG4gICAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGlzQWN0aXZlKHZpZXc6IEZkVGltZUFjdGl2ZVZpZXcpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYWN0aXZlVmlldyA9PT0gdmlldztcbiAgICB9XG5cbiAgICAvKiogQ29uZmlndXJhdGlvbiBmb3IgaG91cnMgY29sdW1uICovXG4gICAgZ2V0SG91cnNDb25maWcoKTogVGltZUNvbHVtbkNvbmZpZyB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBkZWNyZWFzZUxhYmVsOiB0aGlzLl90aW1lSTE4bkxhYmVscy5kZWNyZWFzZUhvdXJzTGFiZWwsXG4gICAgICAgICAgICBpbmNyZWFzZUxhYmVsOiB0aGlzLl90aW1lSTE4bkxhYmVscy5pbmNyZWFzZUhvdXJzTGFiZWwsXG4gICAgICAgICAgICBsYWJlbDogdGhpcy5fdGltZUkxOG5MYWJlbHMuaG91cnNMYWJlbCxcbiAgICAgICAgICAgIG5hdmlnYXRpb25JbnN0cnVjdGlvbjogdGhpcy5fdGltZUkxOG5MYWJlbHMubmF2aWdhdGlvbkluc3RydWN0aW9uXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgLyoqIENvbmZpZ3VyYXRpb24gZm9yIG1pbnV0ZXMgY29sdW1uICovXG4gICAgZ2V0TWludXRlc0NvbmZpZygpOiBUaW1lQ29sdW1uQ29uZmlnIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGRlY3JlYXNlTGFiZWw6IHRoaXMuX3RpbWVJMThuTGFiZWxzLmRlY3JlYXNlTWludXRlc0xhYmVsLFxuICAgICAgICAgICAgaW5jcmVhc2VMYWJlbDogdGhpcy5fdGltZUkxOG5MYWJlbHMuaW5jcmVhc2VNaW51dGVzTGFiZWwsXG4gICAgICAgICAgICBsYWJlbDogdGhpcy5fdGltZUkxOG5MYWJlbHMubWludXRlc0xhYmVsLFxuICAgICAgICAgICAgbmF2aWdhdGlvbkluc3RydWN0aW9uOiB0aGlzLl90aW1lSTE4bkxhYmVscy5uYXZpZ2F0aW9uSW5zdHJ1Y3Rpb25cbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICAvKiogQ29uZmlndXJhdGlvbiBmb3Igc2Vjb25kcyBjb2x1bW4gKi9cbiAgICBnZXRTZWNvbmRzQ29uZmlnKCk6IFRpbWVDb2x1bW5Db25maWcge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgZGVjcmVhc2VMYWJlbDogdGhpcy5fdGltZUkxOG5MYWJlbHMuZGVjcmVhc2VTZWNvbmRzTGFiZWwsXG4gICAgICAgICAgICBpbmNyZWFzZUxhYmVsOiB0aGlzLl90aW1lSTE4bkxhYmVscy5pbmNyZWFzZVNlY29uZHNMYWJlbCxcbiAgICAgICAgICAgIGxhYmVsOiB0aGlzLl90aW1lSTE4bkxhYmVscy5zZWNvbmRzTGFiZWwsXG4gICAgICAgICAgICBuYXZpZ2F0aW9uSW5zdHJ1Y3Rpb246IHRoaXMuX3RpbWVJMThuTGFiZWxzLm5hdmlnYXRpb25JbnN0cnVjdGlvblxuICAgICAgICB9O1xuICAgIH1cblxuICAgIC8qKiBDb25maWd1cmF0aW9uIGZvciBwZXJpb2QgY29sdW1uICovXG4gICAgZ2V0UGVyaW9kQ29uZmlnKCk6IFRpbWVDb2x1bW5Db25maWcge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgZGVjcmVhc2VMYWJlbDogdGhpcy5fdGltZUkxOG5MYWJlbHMuZGVjcmVhc2VQZXJpb2RMYWJlbCxcbiAgICAgICAgICAgIGluY3JlYXNlTGFiZWw6IHRoaXMuX3RpbWVJMThuTGFiZWxzLmluY3JlYXNlUGVyaW9kTGFiZWwsXG4gICAgICAgICAgICBsYWJlbDogdGhpcy5fdGltZUkxOG5MYWJlbHMucGVyaW9kTGFiZWwsXG4gICAgICAgICAgICBuYXZpZ2F0aW9uSW5zdHJ1Y3Rpb246IHRoaXMuX3RpbWVJMThuTGFiZWxzLm5hdmlnYXRpb25JbnN0cnVjdGlvblxuICAgICAgICB9O1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgZm9jdXNBY3RpdmVDb2x1bW4oKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGNvbHVtbiA9IHRoaXMuY29sdW1ucy5maW5kKCh7IGFjdGl2ZSB9KSA9PiBhY3RpdmUpO1xuICAgICAgICBjb2x1bW4/LmZvY3VzKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0IHZpc2libGUgdGltZSBjb2x1bW5zXG4gICAgICogQHJldHVybnMgdmlzaWJsZSBjb2x1bW5zIGxpc3QgQHNlZSB7RmRUaW1lQWN0aXZlVmlld1tdfVxuICAgICAqL1xuICAgIHByaXZhdGUgX2dldFZpc2libGVDb2x1bW5zKCk6IEZkVGltZUFjdGl2ZVZpZXdbXSB7XG4gICAgICAgIGNvbnN0IGFsbE9wdGlvbnM6IEFycmF5PFtib29sZWFuLCBGZFRpbWVBY3RpdmVWaWV3XT4gPSBbXG4gICAgICAgICAgICBbdGhpcy5kaXNwbGF5SG91cnMsICdob3VyJ10sXG4gICAgICAgICAgICBbdGhpcy5kaXNwbGF5TWludXRlcywgJ21pbnV0ZSddLFxuICAgICAgICAgICAgW3RoaXMuZGlzcGxheVNlY29uZHMsICdzZWNvbmQnXSxcbiAgICAgICAgICAgIFt0aGlzLm1lcmlkaWFuLCAnbWVyaWRpYW4nXVxuICAgICAgICBdO1xuICAgICAgICByZXR1cm4gYWxsT3B0aW9ucy5maWx0ZXIoKFtlbmFibGVkXSkgPT4gZW5hYmxlZCkubWFwKChbLCB2aWV3XSkgPT4gdmlldyk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0IHZpc2libGUgY29sdW1ucyB0YWtpbmcgaW50byBhY2NvdW50IFJUTFxuICAgICAqIEByZXR1cm5zIHZpc2libGUgY29sdW1ucyBsaXN0IEBzZWUge0ZkVGltZUFjdGl2ZVZpZXdbXX1cbiAgICAgKi9cbiAgICBwcml2YXRlIF9nZXRWaXNpYmxlQ29sdW1uc1dpdGhSdGwoKTogRmRUaW1lQWN0aXZlVmlld1tdIHtcbiAgICAgICAgY29uc3QgY29sdW1ucyA9IHRoaXMuX2dldFZpc2libGVDb2x1bW5zKCk7XG4gICAgICAgIHJldHVybiB0aGlzLl9ydGxTZXJ2aWNlPy5ydGwudmFsdWUgPyBjb2x1bW5zLnJldmVyc2UoKSA6IGNvbHVtbnM7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9zZXRVcFZpZXdHcmlkKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9jb25zdHJ1Y3RIb3VyVmlld0l0ZW1zKCk7XG4gICAgICAgIHRoaXMuX2NvbnN0cnVjdE1pbnV0ZVZpZXdJdGVtcygpO1xuICAgICAgICB0aGlzLl9jb25zdHJ1Y3RTZWNvbmRWaWV3SXRlbXMoKTtcbiAgICAgICAgdGhpcy5fY29uc3RydWN0TWVyaWRpYW5WaWV3SXRlbXMoKTtcbiAgICAgICAgLy8gdXBkYXRlIHJlZmVyZW5jZSB0byBhY3RpdmUgdmlldyBpdGVtc1xuICAgICAgICB0aGlzLl9zZXRVcEFjdGl2ZVZpZXdJdGVtcygpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfc2V0VXBBY3RpdmVWaWV3SXRlbXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2NhbGN1bGF0ZUFjdGl2ZUhvdXJWaWV3SXRlbSgpO1xuICAgICAgICB0aGlzLl9jYWxjdWxhdGVBY3RpdmVNaW51dGVWaWV3SXRlbSgpO1xuICAgICAgICB0aGlzLl9jYWxjdWxhdGVBY3RpdmVTZWNvbmRWaWV3SXRlbSgpO1xuICAgICAgICB0aGlzLl9jYWxjdWxhdGVBY3RpdmVNZXJpZGlhblZpZXdJdGVtKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9jb25zdHJ1Y3RIb3VyVmlld0l0ZW1zKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmhvdXJWaWV3SXRlbXMgPSB0aGlzLl9kYXRlVGltZUFkYXB0ZXJcbiAgICAgICAgICAgIC5nZXRIb3VyTmFtZXMoeyBtZXJpZGlhbjogdGhpcy5tZXJpZGlhbiwgdHdvRGlnaXQ6IHRoaXMua2VlcFR3b0RpZ2l0cyB9KVxuICAgICAgICAgICAgLm1hcCgobmFtZSwgaG91cikgPT4gKHtcbiAgICAgICAgICAgICAgICB2YWx1ZTogaG91cixcbiAgICAgICAgICAgICAgICBsYWJlbDogbmFtZVxuICAgICAgICAgICAgfSkpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfY29uc3RydWN0TWludXRlVmlld0l0ZW1zKCk6IHZvaWQge1xuICAgICAgICB0aGlzLm1pbnV0ZVZpZXdJdGVtcyA9IHRoaXMuX2RhdGVUaW1lQWRhcHRlclxuICAgICAgICAgICAgLmdldE1pbnV0ZU5hbWVzKHsgdHdvRGlnaXQ6IHRoaXMua2VlcFR3b0RpZ2l0cyB9KVxuICAgICAgICAgICAgLm1hcCgobmFtZSwgbWludXRlKSA9PiAoe1xuICAgICAgICAgICAgICAgIHZhbHVlOiBtaW51dGUsXG4gICAgICAgICAgICAgICAgbGFiZWw6IG5hbWVcbiAgICAgICAgICAgIH0pKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2NvbnN0cnVjdFNlY29uZFZpZXdJdGVtcygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZWNvbmRWaWV3SXRlbXMgPSB0aGlzLl9kYXRlVGltZUFkYXB0ZXJcbiAgICAgICAgICAgIC5nZXRTZWNvbmROYW1lcyh7IHR3b0RpZ2l0OiB0aGlzLmtlZXBUd29EaWdpdHMgfSlcbiAgICAgICAgICAgIC5tYXAoKG5hbWUsIHNlY29uZCkgPT4gKHtcbiAgICAgICAgICAgICAgICB2YWx1ZTogc2Vjb25kLFxuICAgICAgICAgICAgICAgIGxhYmVsOiBuYW1lXG4gICAgICAgICAgICB9KSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9jb25zdHJ1Y3RNZXJpZGlhblZpZXdJdGVtcygpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgW2FtTGFiZWwsIHBtTGFiZWxdID0gdGhpcy5fZGF0ZVRpbWVBZGFwdGVyLmdldERheVBlcmlvZE5hbWVzKCk7XG4gICAgICAgIHRoaXMubWVyaWRpYW5WaWV3SXRlbXMgPSBbXG4gICAgICAgICAgICB7IHZhbHVlOiBNZXJpZGlhbi5BTSwgbGFiZWw6IGFtTGFiZWwgfSxcbiAgICAgICAgICAgIHsgdmFsdWU6IE1lcmlkaWFuLlBNLCBsYWJlbDogcG1MYWJlbCB9XG4gICAgICAgIF07XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9jYWxjdWxhdGVBY3RpdmVIb3VyVmlld0l0ZW0oKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGhvdXIgPSB0aGlzLl9nZXRNb2RlbEhvdXIoKTtcbiAgICAgICAgdGhpcy5hY3RpdmVIb3VyVmlld0l0ZW0gPSB0aGlzLmhvdXJWaWV3SXRlbXMuZmluZCgoeyB2YWx1ZSB9KSA9PiB2YWx1ZSA9PT0gaG91cik7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9jYWxjdWxhdGVBY3RpdmVNaW51dGVWaWV3SXRlbSgpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgbWludXRlID0gdGhpcy5fZ2V0TW9kZWxNaW51dGUoKTtcbiAgICAgICAgdGhpcy5hY3RpdmVNaW51dGVWaWV3SXRlbSA9IHRoaXMubWludXRlVmlld0l0ZW1zLmZpbmQoKHsgdmFsdWUgfSkgPT4gdmFsdWUgPT09IG1pbnV0ZSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9jYWxjdWxhdGVBY3RpdmVTZWNvbmRWaWV3SXRlbSgpOiB2b2lkIHtcbiAgICAgICAgY29uc3Qgc2Vjb25kID0gdGhpcy5fZ2V0TW9kZWxTZWNvbmQoKTtcbiAgICAgICAgdGhpcy5hY3RpdmVTZWNvbmRWaWV3SXRlbSA9IHRoaXMuc2Vjb25kVmlld0l0ZW1zLmZpbmQoKHsgdmFsdWUgfSkgPT4gdmFsdWUgPT09IHNlY29uZCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9jYWxjdWxhdGVBY3RpdmVNZXJpZGlhblZpZXdJdGVtKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBtZXJpZGlhbiA9IHRoaXMuX2dldERheVBlcmlvZEJ5SG91cigpO1xuICAgICAgICB0aGlzLmFjdGl2ZU1lcmlkaWFuVmlld0l0ZW0gPSB0aGlzLm1lcmlkaWFuVmlld0l0ZW1zLmZpbmQoKHsgdmFsdWUgfSkgPT4gdmFsdWUgPT09IG1lcmlkaWFuKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogTW9kZWwgaG91cnMgKDAgLSAyMylcbiAgICAgKi9cbiAgICBwcml2YXRlIF9nZXRNb2RlbEhvdXIoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2RhdGVUaW1lQWRhcHRlci5nZXRIb3Vycyh0aGlzLnRpbWUpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiBNb2RlbCBtaW51dGVzICgwIC0gNTkpXG4gICAgICovXG4gICAgcHJpdmF0ZSBfZ2V0TW9kZWxNaW51dGUoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2RhdGVUaW1lQWRhcHRlci5nZXRNaW51dGVzKHRoaXMudGltZSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIE1vZGVsIHNlY29uZHMgKDAgLSA1OSlcbiAgICAgKi9cbiAgICBwcml2YXRlIF9nZXRNb2RlbFNlY29uZCgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5fZGF0ZVRpbWVBZGFwdGVyLmdldFNlY29uZHModGhpcy50aW1lKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogR2V0IG1lcmlkaWFuIHBlcmlvZCBiYXNlZCBvbiBhIGdpdmVuIGhvdXJzXG4gICAgICovXG4gICAgcHJpdmF0ZSBfZ2V0RGF5UGVyaW9kQnlIb3VyKGhvdXIgPSB0aGlzLl9nZXRNb2RlbEhvdXIoKSk6IE1lcmlkaWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2lzUG0oaG91cikgPyBNZXJpZGlhbi5QTSA6IE1lcmlkaWFuLkFNO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfaXNQbShob3VyczogbnVtYmVyID0gdGhpcy5fZ2V0TW9kZWxIb3VyKCkpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIGhvdXJzID49IDEyO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiBAcmV0dXJucyBkZWZhdWx0IHRpbWUgMDA6MDA6MDBcbiAgICAgKi9cbiAgICBwcml2YXRlIF9nZXREZWZhdWx0VmFsdWUoKTogRCB7XG4gICAgICAgIHJldHVybiB0aGlzLl9kYXRlVGltZUFkYXB0ZXIudG9kYXkoKTtcbiAgICB9XG59XG4iLCI8ZGl2XG4gICAgY2xhc3M9XCJmZC10aW1lXCJcbiAgICAoa2V5ZG93bik9XCJoYW5kbGVLZXlEb3duRXZlbnQoJGV2ZW50KVwiXG4gICAgW2NsYXNzLmZkLXRpbWUtLWNvbXBhY3RdPVwiY29tcGFjdFwiXG4gICAgW2NsYXNzLmZkLXRpbWUtLXRhYmxldF09XCJ0YWJsZXRcIlxuICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiX2NvbXBvbmVudEFyaWFMYWJlbFwiXG4+XG4gICAgPGZkLXRpbWUtY29sdW1uXG4gICAgICAgIFthY3RpdmVdPVwiaXNBY3RpdmUoJ2hvdXInKVwiXG4gICAgICAgIFtyb3dzXT1cImhvdXJWaWV3SXRlbXNcIlxuICAgICAgICBbY29tcGFjdF09XCJjb21wYWN0XCJcbiAgICAgICAgW29mZnNldF09XCJvZmZzZXRcIlxuICAgICAgICBbZWxlbWVudHNBdE9uY2VdPVwiZWxlbWVudHNBdE9uY2VcIlxuICAgICAgICBbYWN0aXZlVmFsdWVdPVwiYWN0aXZlSG91clZpZXdJdGVtXCJcbiAgICAgICAgW3RpbWVDb25maWddPVwiZ2V0SG91cnNDb25maWcoKVwiXG4gICAgICAgIFtzcGlubmVyc109XCJzcGlubmVyQnV0dG9uc1wiXG4gICAgICAgIChhY3RpdmVWYWx1ZUNoYW5nZSk9XCJoYW5kbGVIb3VyQ2hhbmdlKCRldmVudC52YWx1ZS52YWx1ZSlcIlxuICAgICAgICAoYWN0aXZlU3RhdGVDaGFuZ2UpPVwiY2hhbmdlQWN0aXZlKCdob3VyJylcIlxuICAgID48L2ZkLXRpbWUtY29sdW1uPlxuICAgIDxmZC10aW1lLWNvbHVtblxuICAgICAgICAqbmdJZj1cImRpc3BsYXlNaW51dGVzXCJcbiAgICAgICAgW2FjdGl2ZV09XCJpc0FjdGl2ZSgnbWludXRlJylcIlxuICAgICAgICBbcm93c109XCJtaW51dGVWaWV3SXRlbXNcIlxuICAgICAgICBbY29tcGFjdF09XCJjb21wYWN0XCJcbiAgICAgICAgW29mZnNldF09XCJvZmZzZXRcIlxuICAgICAgICBbZWxlbWVudHNBdE9uY2VdPVwiZWxlbWVudHNBdE9uY2VcIlxuICAgICAgICBbYWN0aXZlVmFsdWVdPVwiYWN0aXZlTWludXRlVmlld0l0ZW1cIlxuICAgICAgICBbdGltZUNvbmZpZ109XCJnZXRNaW51dGVzQ29uZmlnKClcIlxuICAgICAgICBbc3Bpbm5lcnNdPVwic3Bpbm5lckJ1dHRvbnNcIlxuICAgICAgICAoYWN0aXZlVmFsdWVDaGFuZ2UpPVwiaGFuZGxlTWludXRlQ2hhbmdlKCRldmVudC52YWx1ZS52YWx1ZSlcIlxuICAgICAgICAoYWN0aXZlU3RhdGVDaGFuZ2UpPVwiY2hhbmdlQWN0aXZlKCdtaW51dGUnKVwiXG4gICAgPjwvZmQtdGltZS1jb2x1bW4+XG4gICAgPGZkLXRpbWUtY29sdW1uXG4gICAgICAgICpuZ0lmPVwiZGlzcGxheVNlY29uZHNcIlxuICAgICAgICBbYWN0aXZlXT1cImlzQWN0aXZlKCdzZWNvbmQnKVwiXG4gICAgICAgIFtyb3dzXT1cInNlY29uZFZpZXdJdGVtc1wiXG4gICAgICAgIFtjb21wYWN0XT1cImNvbXBhY3RcIlxuICAgICAgICBbb2Zmc2V0XT1cIm9mZnNldFwiXG4gICAgICAgIFtlbGVtZW50c0F0T25jZV09XCJlbGVtZW50c0F0T25jZVwiXG4gICAgICAgIFthY3RpdmVWYWx1ZV09XCJhY3RpdmVTZWNvbmRWaWV3SXRlbVwiXG4gICAgICAgIFt0aW1lQ29uZmlnXT1cImdldFNlY29uZHNDb25maWcoKVwiXG4gICAgICAgIFtzcGlubmVyc109XCJzcGlubmVyQnV0dG9uc1wiXG4gICAgICAgIChhY3RpdmVWYWx1ZUNoYW5nZSk9XCJoYW5kbGVTZWNvbmRDaGFuZ2UoJGV2ZW50LnZhbHVlLnZhbHVlKVwiXG4gICAgICAgIChhY3RpdmVTdGF0ZUNoYW5nZSk9XCJjaGFuZ2VBY3RpdmUoJ3NlY29uZCcpXCJcbiAgICA+PC9mZC10aW1lLWNvbHVtbj5cbiAgICA8ZmQtdGltZS1jb2x1bW5cbiAgICAgICAgKm5nSWY9XCJtZXJpZGlhblwiXG4gICAgICAgIFthY3RpdmVdPVwiaXNBY3RpdmUoJ21lcmlkaWFuJylcIlxuICAgICAgICBbcm93c109XCJtZXJpZGlhblZpZXdJdGVtc1wiXG4gICAgICAgIFthY3RpdmVWYWx1ZV09XCJhY3RpdmVNZXJpZGlhblZpZXdJdGVtXCJcbiAgICAgICAgW29mZnNldF09XCIwXCJcbiAgICAgICAgW2VsZW1lbnRzQXRPbmNlXT1cImVsZW1lbnRzQXRPbmNlXCJcbiAgICAgICAgW2NvbXBhY3RdPVwiY29tcGFjdFwiXG4gICAgICAgIFt0aW1lQ29uZmlnXT1cImdldFBlcmlvZENvbmZpZygpXCJcbiAgICAgICAgW21lcmlkaWFuXT1cInRydWVcIlxuICAgICAgICBbc3Bpbm5lcnNdPVwic3Bpbm5lckJ1dHRvbnNcIlxuICAgICAgICAoYWN0aXZlVmFsdWVDaGFuZ2UpPVwiaGFuZGxlTWVyaWRpYW5DaGFuZ2UoJGV2ZW50LnZhbHVlLnZhbHVlKVwiXG4gICAgICAgIChhY3RpdmVTdGF0ZUNoYW5nZSk9XCJjaGFuZ2VBY3RpdmUoJ21lcmlkaWFuJylcIlxuICAgID48L2ZkLXRpbWUtY29sdW1uPlxuPC9kaXY+XG4iXX0=
|