@alauda/ui 7.3.3-beta.8 → 7.4.0
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/anchor/anchor.component.d.ts +2 -2
- package/autocomplete/suggestion/suggestion.component.d.ts +1 -1
- package/button/button.component.d.ts +1 -1
- package/button/button.types.d.ts +1 -1
- package/date-picker/calendar/header/component.d.ts +1 -1
- package/date-picker/calendar/panel/picker-panel.d.ts +1 -1
- package/date-picker/calendar/range-picker-panel/component.d.ts +1 -1
- package/date-picker/range-picker/range-picker.component.d.ts +1 -1
- package/date-picker/trigger/trigger.component.d.ts +2 -2
- package/dialog/confirm-dialog/confirm-dialog.component.d.ts +1 -1
- package/dialog/dialog-content/dialog-content.component.d.ts +1 -1
- package/dialog/dialog-content/dialog-footer.component.d.ts +1 -1
- package/dialog/dialog-content/dialog-header.component.d.ts +1 -1
- package/dialog/dialog.component.d.ts +1 -1
- package/drawer/types.d.ts +1 -1
- package/dropdown/dropdown-button/dropdown-button.component.d.ts +2 -2
- package/dropdown/dropdown.types.d.ts +1 -1
- package/dropdown/menu/menu.component.d.ts +2 -2
- package/dropdown/menu-item/menu-item.component.d.ts +1 -1
- package/dropdown/submenu/submenu.component.d.ts +2 -2
- package/esm2022/anchor/anchor.component.mjs +2 -2
- package/esm2022/anchor/anchor.directive.mjs +2 -2
- package/esm2022/anchor/utils.mjs +2 -2
- package/esm2022/autocomplete/autocomplete.component.mjs +4 -4
- package/esm2022/autocomplete/autocomplete.directive.mjs +2 -2
- package/esm2022/autocomplete/suggestion/suggestion.component.mjs +4 -4
- package/esm2022/autocomplete/suggestion-group/suggestion-group.component.mjs +2 -2
- package/esm2022/button/button.component.mjs +2 -2
- package/esm2022/button/button.types.mjs +1 -1
- package/esm2022/date-picker/calendar/header/component.mjs +2 -2
- package/esm2022/date-picker/calendar/panel/picker-panel.mjs +2 -2
- package/esm2022/date-picker/calendar/range-picker-panel/component.mjs +2 -2
- package/esm2022/date-picker/date-picker/date-picker.component.mjs +2 -2
- package/esm2022/date-picker/range-picker/range-picker.component.mjs +1 -1
- package/esm2022/date-picker/trigger/trigger.component.mjs +2 -2
- package/esm2022/dialog/confirm-dialog/confirm-dialog.component.mjs +2 -2
- package/esm2022/dialog/dialog-animations.mjs +2 -2
- package/esm2022/dialog/dialog-content/dialog-content.component.mjs +2 -2
- package/esm2022/dialog/dialog-content/dialog-footer.component.mjs +2 -2
- package/esm2022/dialog/dialog-content/dialog-header.component.mjs +2 -2
- package/esm2022/dialog/dialog.component.mjs +2 -2
- package/esm2022/drawer/component/internal/internal.component.mjs +2 -2
- package/esm2022/drawer/types.mjs +1 -1
- package/esm2022/dropdown/dropdown-button/dropdown-button.component.mjs +3 -3
- package/esm2022/dropdown/dropdown.types.mjs +1 -1
- package/esm2022/dropdown/menu/menu.component.mjs +3 -3
- package/esm2022/dropdown/menu-item/menu-item.component.mjs +2 -2
- package/esm2022/dropdown/submenu/submenu.component.mjs +3 -3
- package/esm2022/form/common-form.mjs +6 -4
- package/esm2022/form/form-item/form-item.component.mjs +2 -2
- package/esm2022/form/form.types.mjs +1 -1
- package/esm2022/form/helper-directives.mjs +2 -2
- package/esm2022/i18n/i18n.pipe.mjs +1 -1
- package/esm2022/i18n/i18n.service.mjs +1 -1
- package/esm2022/i18n/i18n.type.mjs +1 -1
- package/esm2022/icon/icon.component.mjs +2 -2
- package/esm2022/icon/icons.mjs +2 -2
- package/esm2022/index.mjs +3 -4
- package/esm2022/inline-alert/inline-alert.component.mjs +2 -2
- package/esm2022/inline-alert/inline-alert.types.mjs +1 -1
- package/esm2022/input/input-group/input-group.component.mjs +2 -2
- package/esm2022/input/input.component.mjs +5 -5
- package/esm2022/input/number-input/number-input.component.mjs +3 -3
- package/esm2022/input/search/search.component.mjs +3 -3
- package/esm2022/input/tags-input/tags-input.component.mjs +5 -5
- package/esm2022/input/tags-input/with-max-row-count.mjs +2 -2
- package/esm2022/internal/types/index.mjs +8 -0
- package/esm2022/internal/utils/animations.mjs +2 -0
- package/esm2022/internal/utils/async.mjs +6 -0
- package/esm2022/internal/utils/bem.mjs +44 -0
- package/esm2022/internal/utils/coercion.mjs +5 -0
- package/esm2022/internal/utils/fn.mjs +16 -0
- package/esm2022/internal/utils/index.mjs +10 -0
- package/esm2022/internal/utils/observe-dom.mjs +23 -0
- package/esm2022/internal/utils/operators.mjs +15 -0
- package/esm2022/internal/utils/scroll-into-view.mjs +17 -0
- package/esm2022/internal/utils/styles-renderer.mjs +43 -0
- package/esm2022/internal/utils/watch-content-exist.mjs +6 -0
- package/esm2022/message/message.component.mjs +2 -2
- package/esm2022/notification/notification.component.mjs +2 -2
- package/esm2022/paginator/paginator.component.mjs +7 -5
- package/esm2022/radio/radio-button/radio-button.component.mjs +2 -2
- package/esm2022/radio/radio.component.mjs +2 -2
- package/esm2022/radio/radio.types.mjs +1 -1
- package/esm2022/select/base-select.mjs +4 -4
- package/esm2022/select/multi-select/multi-select.component.mjs +7 -7
- package/esm2022/select/option/option.component.mjs +5 -5
- package/esm2022/select/option-group/option-group.component.mjs +2 -2
- package/esm2022/select/select.component.mjs +4 -4
- package/esm2022/select/validators.mjs +2 -2
- package/esm2022/sort/sort-header.component.mjs +2 -2
- package/esm2022/status-bar/status-bar.component.mjs +2 -2
- package/esm2022/status-bar/status-bar.types.mjs +1 -1
- package/esm2022/steps/types.mjs +1 -1
- package/esm2022/switch/switch.component.mjs +2 -2
- package/esm2022/table/index.mjs +3 -3
- package/esm2022/table/table-column-resizable.directive.mjs +149 -0
- package/esm2022/table/table-scroll.directive.mjs +3 -3
- package/esm2022/table/table.component.mjs +5 -5
- package/esm2022/table/table.module.mjs +31 -73
- package/esm2022/tabs/tab-body.component.mjs +2 -2
- package/esm2022/tabs/tab-group.component.mjs +2 -2
- package/esm2022/tabs/tab-header-active-indicator.component.mjs +2 -2
- package/esm2022/tabs/tab-header.component.mjs +2 -2
- package/esm2022/tabs/tab.component.mjs +2 -2
- package/esm2022/tabs/tabs.types.mjs +1 -1
- package/esm2022/tag/check-tag/check-tag.component.mjs +3 -3
- package/esm2022/tag/tag.component.mjs +3 -3
- package/esm2022/tag/tag.types.mjs +1 -1
- package/esm2022/time-picker/component.mjs +2 -2
- package/esm2022/time-picker/panel/panel.component.mjs +3 -3
- package/esm2022/time-picker/time-picker.type.mjs +2 -2
- package/esm2022/tooltip/base-tooltip.mjs +2 -2
- package/esm2022/tooltip/tooltip.component.mjs +2 -2
- package/esm2022/tree-select/tree-select.component.mjs +4 -4
- package/fesm2022/alauda-ui.mjs +376 -446
- package/fesm2022/alauda-ui.mjs.map +1 -1
- package/form/common-form.d.ts +3 -2
- package/form/form-item/form-item.component.d.ts +1 -1
- package/form/form.types.d.ts +1 -1
- package/i18n/i18n.pipe.d.ts +1 -2
- package/i18n/i18n.service.d.ts +2 -2
- package/i18n/i18n.type.d.ts +0 -1
- package/icon/icon.component.d.ts +1 -1
- package/icon/icons.d.ts +1 -1
- package/index.d.ts +2 -3
- package/inline-alert/inline-alert.component.d.ts +1 -1
- package/inline-alert/inline-alert.types.d.ts +1 -1
- package/input/input-group/input-group.component.d.ts +1 -1
- package/input/input.component.d.ts +1 -1
- package/input/number-input/number-input.component.d.ts +2 -2
- package/input/search/search.component.d.ts +2 -2
- package/input/tags-input/tags-input.component.d.ts +2 -2
- package/input/tags-input/with-max-row-count.d.ts +1 -1
- package/{utils → internal/utils}/index.d.ts +1 -0
- package/internal/utils/styles-renderer.d.ts +18 -0
- package/message/message.component.d.ts +1 -1
- package/notification/notification.component.d.ts +1 -1
- package/package.json +1 -1
- package/paginator/paginator.component.d.ts +1 -1
- package/radio/radio-button/radio-button.component.d.ts +1 -1
- package/radio/radio.component.d.ts +1 -1
- package/radio/radio.types.d.ts +1 -1
- package/select/base-select.d.ts +2 -2
- package/select/multi-select/multi-select.component.d.ts +1 -1
- package/select/option/option.component.d.ts +2 -2
- package/sort/sort-header.component.d.ts +1 -1
- package/status-bar/status-bar.component.d.ts +1 -1
- package/status-bar/status-bar.types.d.ts +1 -1
- package/steps/types.d.ts +1 -1
- package/switch/switch.component.d.ts +1 -1
- package/table/index.d.ts +2 -2
- package/table/table-column-resizable.directive.d.ts +30 -0
- package/table/table-scroll.directive.d.ts +1 -1
- package/table/table.component.d.ts +2 -2
- package/table/table.module.d.ts +17 -18
- package/tabs/tab-group.component.d.ts +1 -1
- package/tabs/tab-header-active-indicator.component.d.ts +1 -1
- package/tabs/tab-header.component.d.ts +1 -1
- package/tabs/tabs.types.d.ts +1 -1
- package/tag/check-tag/check-tag.component.d.ts +2 -2
- package/tag/tag.component.d.ts +2 -2
- package/tag/tag.types.d.ts +1 -1
- package/time-picker/component.d.ts +1 -1
- package/time-picker/panel/panel.component.d.ts +1 -1
- package/tooltip/tooltip.component.d.ts +1 -1
- package/tree-select/tree-select.component.d.ts +1 -1
- package/esm2022/resizable/index.mjs +0 -2
- package/esm2022/resizable/resizable.directive.mjs +0 -181
- package/esm2022/table/table-col-resizable.directive.mjs +0 -48
- package/esm2022/types.mjs +0 -8
- package/esm2022/utils/animations.mjs +0 -2
- package/esm2022/utils/async.mjs +0 -6
- package/esm2022/utils/bem.mjs +0 -44
- package/esm2022/utils/coercion.mjs +0 -5
- package/esm2022/utils/fn.mjs +0 -16
- package/esm2022/utils/index.mjs +0 -9
- package/esm2022/utils/observe-dom.mjs +0 -23
- package/esm2022/utils/operators.mjs +0 -15
- package/esm2022/utils/scroll-into-view.mjs +0 -17
- package/esm2022/utils/watch-content-exist.mjs +0 -6
- package/resizable/index.d.ts +0 -1
- package/resizable/resizable.directive.d.ts +0 -44
- package/resizable/resizable.scss +0 -38
- package/table/table-col-resizable.directive.d.ts +0 -14
- /package/{types.d.ts → internal/types/index.d.ts} +0 -0
- /package/{utils → internal/utils}/animations.d.ts +0 -0
- /package/{utils → internal/utils}/async.d.ts +0 -0
- /package/{utils → internal/utils}/bem.d.ts +0 -0
- /package/{utils → internal/utils}/coercion.d.ts +0 -0
- /package/{utils → internal/utils}/fn.d.ts +0 -0
- /package/{utils → internal/utils}/observe-dom.d.ts +0 -0
- /package/{utils → internal/utils}/operators.d.ts +0 -0
- /package/{utils → internal/utils}/scroll-into-view.d.ts +0 -0
- /package/{utils → internal/utils}/watch-content-exist.d.ts +0 -0
|
@@ -9,8 +9,8 @@ import { IconComponent } from '../icon/icon.component';
|
|
|
9
9
|
import { InputSuffixDirective } from '../input/helper-directives';
|
|
10
10
|
import { InputGroupComponent } from '../input/input-group/input-group.component';
|
|
11
11
|
import { InputComponent } from '../input/input.component';
|
|
12
|
+
import { ComponentSize } from '../internal/types';
|
|
12
13
|
import { TooltipDirective } from '../tooltip/tooltip.directive';
|
|
13
|
-
import { ComponentSize } from '../types';
|
|
14
14
|
import { TimePickerPanelComponent } from './panel/panel.component';
|
|
15
15
|
import { isTimePickerModel, } from './time-picker.type';
|
|
16
16
|
import * as i0 from "@angular/core";
|
|
@@ -189,4 +189,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.3", ngImpor
|
|
|
189
189
|
type: ViewChild,
|
|
190
190
|
args: ['tooltipRef']
|
|
191
191
|
}] } });
|
|
192
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3RpbWUtcGlja2VyL2NvbXBvbmVudC50cyIsIi4uLy4uLy4uL3NyYy90aW1lLXBpY2tlci90ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2QyxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFFTixTQUFTLEVBQ1QsaUJBQWlCLEVBQ2pCLFVBQVUsR0FDWCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEUsT0FBTyxLQUFnQixNQUFNLE9BQU8sQ0FBQztBQUNyQyxPQUFPLGlCQUFpQixNQUFNLGdDQUFnQyxDQUFDO0FBRS9ELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUNqRixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUV6QyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNuRSxPQUFPLEVBR0wsaUJBQWlCLEdBQ2xCLE1BQU0sb0JBQW9CLENBQUM7OztBQUU1QixLQUFLLENBQUMsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7QUEyQmhDLE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxpQkFHeEM7SUFFQyxNQUFNLEdBQUcsVUFBVSxDQUFDO0lBR3BCLElBQUksR0FBa0IsYUFBYSxDQUFDLE1BQU0sQ0FBQztJQUczQyxXQUFXLEdBQUcsRUFBRSxDQUFDO0lBR2pCLFNBQVMsR0FBRyxJQUFJLENBQUM7SUFHakIsUUFBUSxHQUFHLElBQUksQ0FBQztJQUdoQixZQUFZLENBQWlCO0lBRzdCLGNBQWMsQ0FBOEI7SUFHNUMsY0FBYyxDQUErQztJQUc3RCxRQUFRLEdBQUcsQ0FBQyxDQUFDO0lBR2IsVUFBVSxHQUFHLENBQUMsQ0FBQztJQUdmLFVBQVUsR0FBRyxDQUFDLENBQUM7SUFHZixjQUFjLENBQW9CO0lBR3pCLElBQUksR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO0lBR2hDLEtBQUssR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO0lBRzFDLFVBQVUsQ0FBbUI7SUFFN0IsU0FBUyxHQUFVLElBQUksQ0FBQztJQUN4QixlQUFlLEdBQUcsRUFBRSxDQUFDO0lBRVosVUFBVSxDQUFDLEtBQXlCO1FBQzNDLEtBQUssQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDeEIsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNWLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUM1QjtRQUNELElBQUksTUFBYSxDQUFDO1FBQ2xCLElBQUksaUJBQWlCLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDNUIsTUFBTSxHQUFHLHFCQUFxQixDQUFDLEtBQUssRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO1NBQ2hEO2FBQU07WUFDTCxNQUFNLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3RCLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1NBQzVCO1FBQ0QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN4QixDQUFDO0lBRUQsUUFBUSxDQUFDLEtBQVk7UUFDbkIsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7UUFDdkIsSUFBSSxDQUFDLGVBQWUsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDdkUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsZUFBZSxDQUFDLEtBQVk7UUFDMUIsSUFBSSxDQUFDLGVBQWUsR0FBRyxLQUFLLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNwRCxDQUFDO0lBRUQsZUFBZSxDQUFDLE1BQWM7UUFDNUIsSUFBSSxNQUFNLEVBQUU7WUFDVixNQUFNLFdBQVcsR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUMvQyxJQUFJLFdBQVcsQ0FBQyxPQUFPLEVBQUUsRUFBRTtnQkFDekIsSUFBSSxDQUFDLFNBQVMsR0FBRyxXQUFXLENBQUM7YUFDOUI7U0FDRjthQUFNO1lBQ0wsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7U0FDdkI7SUFDSCxDQUFDO0lBRUQsU0FBUyxDQUFDLEtBQW9CO1FBQzVCLFFBQVEsS0FBSyxDQUFDLEdBQUcsRUFBRTtZQUNqQixLQUFLLE9BQU8sQ0FBQyxDQUFDO2dCQUNaLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztnQkFDakIsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO2dCQUN4QixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7Z0JBQ3ZCLE1BQU07YUFDUDtZQUNELEtBQUssUUFBUSxDQUFDLENBQUM7Z0JBQ2IsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO2dCQUNsQixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7Z0JBQ3hCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztnQkFDdkIsTUFBTTthQUNQO1NBQ0Y7SUFDSCxDQUFDO0lBRUQsb0JBQW9CLENBQUMsT0FBZ0I7UUFDbkMsSUFBSSxPQUFPLEVBQUU7WUFDWCxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1NBQ2xCO2FBQU07WUFDTCxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUU7Z0JBQ2xCLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQzthQUNsQjtZQUNELElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQzlCLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUVkLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7U0FDbkI7SUFDSCxDQUFDO0lBRUQsU0FBUztRQUNQLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLEVBQUU7WUFDN0IsT0FBTztTQUNSO1FBQ0QsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN2QixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFFRCxVQUFVO1FBQ1IsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsU0FBUyxFQUFFO1lBQzlCLE9BQU87U0FDUjtRQUNELElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNwQixDQUFDO0lBRUQsVUFBVSxDQUFDLEtBQVk7UUFDckIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNwQixJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDZCxLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDeEIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxNQUFNLENBQUMsS0FBSyxHQUFHLElBQUksRUFBRSxLQUFhO1FBQ2hDLE1BQU0sS0FBSyxHQUFHLEtBQUssSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxTQUFTLENBQ1osS0FBSztZQUNILENBQUMsQ0FBQztnQkFDRSxNQUFNLEVBQUUsS0FBSyxDQUFDLE1BQU0sRUFBRTtnQkFDdEIsTUFBTSxFQUFFLEtBQUssQ0FBQyxNQUFNLEVBQUU7Z0JBQ3RCLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSSxFQUFFO2FBQ25CO1lBQ0gsQ0FBQyxDQUFDLElBQUksQ0FDVCxDQUFDO1FBQ0YsSUFBSSxLQUFLLEVBQUU7WUFDVCxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7U0FDbkI7SUFDSCxDQUFDO3VHQTVKVSxtQkFBbUI7MkZBQW5CLG1CQUFtQiw2YUFuQm5CO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQztnQkFDbEQsS0FBSyxFQUFFLElBQUk7YUFDWjtTQUNGLDJKQzlDSCw0c0RBNERBLGtpRkRYSSxnQkFBZ0IsMlRBQ2hCLG1CQUFtQiw0REFDbkIsY0FBYyw4R0FDZCxXQUFXLCttQkFDWCxJQUFJLDZGQUNKLG9CQUFvQiw2REFDcEIsYUFBYSw0SkFDYix3QkFBd0I7OzJGQUdmLG1CQUFtQjtrQkF6Qi9CLFNBQVM7K0JBQ0UsaUJBQWlCLGlCQUdaLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0sYUFDcEM7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsb0JBQW9CLENBQUM7NEJBQ2xELEtBQUssRUFBRSxJQUFJO3lCQUNaO3FCQUNGLGNBQ1csSUFBSSxXQUNQO3dCQUNQLGdCQUFnQjt3QkFDaEIsbUJBQW1CO3dCQUNuQixjQUFjO3dCQUNkLFdBQVc7d0JBQ1gsSUFBSTt3QkFDSixvQkFBb0I7d0JBQ3BCLGFBQWE7d0JBQ2Isd0JBQXdCO3FCQUN6Qjs4QkFPRCxNQUFNO3NCQURMLEtBQUs7Z0JBSU4sSUFBSTtzQkFESCxLQUFLO2dCQUlOLFdBQVc7c0JBRFYsS0FBSztnQkFJTixTQUFTO3NCQURSLEtBQUs7Z0JBSU4sUUFBUTtzQkFEUCxLQUFLO2dCQUlOLFlBQVk7c0JBRFgsS0FBSztnQkFJTixjQUFjO3NCQURiLEtBQUs7Z0JBSU4sY0FBYztzQkFEYixLQUFLO2dCQUlOLFFBQVE7c0JBRFAsS0FBSztnQkFJTixVQUFVO3NCQURULEtBQUs7Z0JBSU4sVUFBVTtzQkFEVCxLQUFLO2dCQUlOLGNBQWM7c0JBRGIsS0FBSztnQkFJRyxJQUFJO3NCQURaLE1BQU07Z0JBSUUsS0FBSztzQkFEYixNQUFNO2dCQUlQLFVBQVU7c0JBRFQsU0FBUzt1QkFBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdJZiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxuICBmb3J3YXJkUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5HX1ZBTFVFX0FDQ0VTU09SLCBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCBkYXlqcywgeyBEYXlqcyB9IGZyb20gJ2RheWpzJztcbmltcG9ydCBjdXN0b21QYXJzZUZvcm1hdCBmcm9tICdkYXlqcy9wbHVnaW4vY3VzdG9tUGFyc2VGb3JtYXQnO1xuXG5pbXBvcnQgeyB1cGRhdGVEYXRlQnlUaW1lTW9kZWwgfSBmcm9tICcuLi9kYXRlLXBpY2tlci9jYWxlbmRhci91dGlsJztcbmltcG9ydCB7IENvbW1vbkZvcm1Db250cm9sIH0gZnJvbSAnLi4vZm9ybS9jb21tb24tZm9ybSc7XG5pbXBvcnQgeyBJY29uQ29tcG9uZW50IH0gZnJvbSAnLi4vaWNvbi9pY29uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJbnB1dFN1ZmZpeERpcmVjdGl2ZSB9IGZyb20gJy4uL2lucHV0L2hlbHBlci1kaXJlY3RpdmVzJztcbmltcG9ydCB7IElucHV0R3JvdXBDb21wb25lbnQgfSBmcm9tICcuLi9pbnB1dC9pbnB1dC1ncm91cC9pbnB1dC1ncm91cC5jb21wb25lbnQnO1xuaW1wb3J0IHsgSW5wdXRDb21wb25lbnQgfSBmcm9tICcuLi9pbnB1dC9pbnB1dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVG9vbHRpcERpcmVjdGl2ZSB9IGZyb20gJy4uL3Rvb2x0aXAvdG9vbHRpcC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQ29tcG9uZW50U2l6ZSB9IGZyb20gJy4uL3R5cGVzJztcblxuaW1wb3J0IHsgVGltZVBpY2tlclBhbmVsQ29tcG9uZW50IH0gZnJvbSAnLi9wYW5lbC9wYW5lbC5jb21wb25lbnQnO1xuaW1wb3J0IHtcbiAgVGltZVBpY2tlckRhdGFMaWtlLFxuICBUaW1lUGlja2VyTW9kZWwsXG4gIGlzVGltZVBpY2tlck1vZGVsLFxufSBmcm9tICcuL3RpbWUtcGlja2VyLnR5cGUnO1xuXG5kYXlqcy5leHRlbmQoY3VzdG9tUGFyc2VGb3JtYXQpO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhdWktdGltZS1waWNrZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vdGVtcGxhdGUuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3N0eWxlLnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gVGltZVBpY2tlckNvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICBdLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgVG9vbHRpcERpcmVjdGl2ZSxcbiAgICBJbnB1dEdyb3VwQ29tcG9uZW50LFxuICAgIElucHV0Q29tcG9uZW50LFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIE5nSWYsXG4gICAgSW5wdXRTdWZmaXhEaXJlY3RpdmUsXG4gICAgSWNvbkNvbXBvbmVudCxcbiAgICBUaW1lUGlja2VyUGFuZWxDb21wb25lbnQsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFRpbWVQaWNrZXJDb21wb25lbnQgZXh0ZW5kcyBDb21tb25Gb3JtQ29udHJvbDxcbiAgVGltZVBpY2tlckRhdGFMaWtlLFxuICBUaW1lUGlja2VyTW9kZWxcbj4ge1xuICBASW5wdXQoKVxuICBmb3JtYXQgPSAnSEg6bW06c3MnO1xuXG4gIEBJbnB1dCgpXG4gIHNpemU6IENvbXBvbmVudFNpemUgPSBDb21wb25lbnRTaXplLk1lZGl1bTtcblxuICBASW5wdXQoKVxuICBwbGFjZWhvbGRlciA9ICcnO1xuXG4gIEBJbnB1dCgpXG4gIGNsZWFyYWJsZSA9IHRydWU7XG5cbiAgQElucHV0KClcbiAgc2hvd0ljb24gPSB0cnVlO1xuXG4gIEBJbnB1dCgpXG4gIGRpc2FibGVIb3VyczogKCkgPT4gbnVtYmVyW107XG5cbiAgQElucHV0KClcbiAgZGlzYWJsZU1pbnV0ZXM6IChob3VyPzogbnVtYmVyKSA9PiBudW1iZXJbXTtcblxuICBASW5wdXQoKVxuICBkaXNhYmxlU2Vjb25kczogKGhvdXI/OiBudW1iZXIsIG1pbnV0ZT86IG51bWJlcikgPT4gbnVtYmVyW107XG5cbiAgQElucHV0KClcbiAgaG91clN0ZXAgPSAxO1xuXG4gIEBJbnB1dCgpXG4gIG1pbnV0ZVN0ZXAgPSAxO1xuXG4gIEBJbnB1dCgpXG4gIHNlY29uZFN0ZXAgPSAxO1xuXG4gIEBJbnB1dCgpXG4gIGZvb3RlclRlbXBsYXRlOiBUZW1wbGF0ZVJlZjx2b2lkPjtcblxuICBAT3V0cHV0KClcbiAgcmVhZG9ubHkgb3BlbiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBAT3V0cHV0KClcbiAgcmVhZG9ubHkgY2xvc2UgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgQFZpZXdDaGlsZCgndG9vbHRpcFJlZicpXG4gIHRvb2x0aXBSZWY6IFRvb2x0aXBEaXJlY3RpdmU7XG5cbiAgdGltZVZhbHVlOiBEYXlqcyA9IG51bGw7XG4gIHRpbWVGb3JtYXRWYWx1ZSA9ICcnO1xuXG4gIG92ZXJyaWRlIHdyaXRlVmFsdWUodmFsdWU6IFRpbWVQaWNrZXJEYXRhTGlrZSkge1xuICAgIHN1cGVyLndyaXRlVmFsdWUodmFsdWUpO1xuICAgIGlmICghdmFsdWUpIHtcbiAgICAgIHJldHVybiB0aGlzLnNldFZhbHVlKG51bGwpO1xuICAgIH1cbiAgICBsZXQgcmVzdWx0OiBEYXlqcztcbiAgICBpZiAoaXNUaW1lUGlja2VyTW9kZWwodmFsdWUpKSB7XG4gICAgICByZXN1bHQgPSB1cGRhdGVEYXRlQnlUaW1lTW9kZWwoZGF5anMoKSwgdmFsdWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXN1bHQgPSBkYXlqcyh2YWx1ZSk7XG4gICAgICB0aGlzLnN1Ym1pdChmYWxzZSwgcmVzdWx0KTtcbiAgICB9XG4gICAgdGhpcy5zZXRWYWx1ZShyZXN1bHQpO1xuICB9XG5cbiAgc2V0VmFsdWUodmFsdWU6IERheWpzKSB7XG4gICAgdGhpcy50aW1lVmFsdWUgPSB2YWx1ZTtcbiAgICB0aGlzLnRpbWVGb3JtYXRWYWx1ZSA9IHZhbHVlID8gZGF5anModmFsdWUpLmZvcm1hdCh0aGlzLmZvcm1hdCkgOiBudWxsO1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgY2hhbmdlRnJvbVBhbmVsKHZhbHVlOiBEYXlqcykge1xuICAgIHRoaXMudGltZUZvcm1hdFZhbHVlID0gdmFsdWU/LmZvcm1hdCh0aGlzLmZvcm1hdCk7XG4gIH1cblxuICBjaGFuZ2VGcm9tSW5wdXQoc291cmNlOiBzdHJpbmcpIHtcbiAgICBpZiAoc291cmNlKSB7XG4gICAgICBjb25zdCBhZnRlclBhcnNlZCA9IGRheWpzKHNvdXJjZSwgdGhpcy5mb3JtYXQpO1xuICAgICAgaWYgKGFmdGVyUGFyc2VkLmlzVmFsaWQoKSkge1xuICAgICAgICB0aGlzLnRpbWVWYWx1ZSA9IGFmdGVyUGFyc2VkO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnRpbWVWYWx1ZSA9IG51bGw7XG4gICAgfVxuICB9XG5cbiAgb25LZXlEb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgc3dpdGNoIChldmVudC5rZXkpIHtcbiAgICAgIGNhc2UgJ0VudGVyJzoge1xuICAgICAgICB0aGlzLm9wZW5QYW5lbCgpO1xuICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBjYXNlICdFc2NhcGUnOiB7XG4gICAgICAgIHRoaXMuY2xvc2VQYW5lbCgpO1xuICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaGFuZGxlVG9vbHRpcFZpc2libGUodmlzaWJsZTogYm9vbGVhbikge1xuICAgIGlmICh2aXNpYmxlKSB7XG4gICAgICB0aGlzLm9wZW4uZW1pdCgpO1xuICAgIH0gZWxzZSB7XG4gICAgICBpZiAodGhpcy5vblRvdWNoZWQpIHtcbiAgICAgICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuc2V0VmFsdWUodGhpcy50aW1lVmFsdWUpO1xuICAgICAgdGhpcy5zdWJtaXQoKTtcblxuICAgICAgdGhpcy5jbG9zZS5lbWl0KCk7XG4gICAgfVxuICB9XG5cbiAgb3BlblBhbmVsKCkge1xuICAgIGlmICh0aGlzLnRvb2x0aXBSZWYuaXNDcmVhdGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMudG9vbHRpcFJlZi5zaG93KCk7XG4gICAgdGhpcy5vcGVuLm5leHQoKTtcbiAgfVxuXG4gIGNsb3NlUGFuZWwoKSB7XG4gICAgaWYgKCF0aGlzLnRvb2x0aXBSZWYuaXNDcmVhdGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMudG9vbHRpcFJlZi5oaWRlKCk7XG4gICAgdGhpcy5jbG9zZS5uZXh0KCk7XG4gIH1cblxuICBjbGVhclZhbHVlKGV2ZW50OiBFdmVudCkge1xuICAgIHRoaXMuc2V0VmFsdWUobnVsbCk7XG4gICAgdGhpcy5zdWJtaXQoKTtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICB9XG5cbiAgc3VibWl0KGNsb3NlID0gdHJ1ZSwgdmFsdWU/OiBEYXlqcykge1xuICAgIGNvbnN0IHJlZmVyID0gdmFsdWUgPz8gdGhpcy50aW1lVmFsdWU7XG4gICAgdGhpcy5lbWl0TW9kZWwoXG4gICAgICByZWZlclxuICAgICAgICA/IHtcbiAgICAgICAgICAgIHNlY29uZDogcmVmZXIuc2Vjb25kKCksXG4gICAgICAgICAgICBtaW51dGU6IHJlZmVyLm1pbnV0ZSgpLFxuICAgICAgICAgICAgaG91cjogcmVmZXIuaG91cigpLFxuICAgICAgICAgIH1cbiAgICAgICAgOiBudWxsLFxuICAgICk7XG4gICAgaWYgKGNsb3NlKSB7XG4gICAgICB0aGlzLmNsb3NlUGFuZWwoKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJhdWktdGltZS1waWNrZXJcIlxuICBbY2xhc3MuaXNEaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gIFtjbGFzcy5pc0NsZWFyYWJsZV09XCJjbGVhcmFibGUgJiYgdGltZUZvcm1hdFZhbHVlXCJcbiAgI3Rvb2x0aXBSZWY9XCJhdWlUb29sdGlwXCJcbiAgW2F1aVRvb2x0aXBdPVwidGVtcGxhdGVcIlxuICBhdWlUb29sdGlwQW5pbVR5cGU9XCJub25lXCJcbiAgYXVpVG9vbHRpcFR5cGU9XCJwbGFpblwiXG4gIGF1aVRvb2x0aXBUcmlnZ2VyPVwiY2xpY2tcIlxuICBhdWlUb29sdGlwUG9zaXRpb249XCJib3R0b20gc3RhcnRcIlxuICBbYXVpVG9vbHRpcERpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgKGF1aVRvb2x0aXBWaXNpYmxlQ2hhbmdlKT1cImhhbmRsZVRvb2x0aXBWaXNpYmxlKCRldmVudClcIlxuPlxuICA8YXVpLWlucHV0LWdyb3VwPlxuICAgIDxpbnB1dFxuICAgICAgYXVpLWlucHV0XG4gICAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxuICAgICAgW3NpemVdPVwic2l6ZVwiXG4gICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgIFsobmdNb2RlbCldPVwidGltZUZvcm1hdFZhbHVlXCJcbiAgICAgIChuZ01vZGVsQ2hhbmdlKT1cImNoYW5nZUZyb21JbnB1dCgkZXZlbnQpXCJcbiAgICAgIChrZXlkb3duKT1cIm9uS2V5RG93bigkZXZlbnQpXCJcbiAgICAvPlxuICAgIDxzcGFuXG4gICAgICAqbmdJZj1cInNob3dJY29uXCJcbiAgICAgIGF1aUlucHV0U3VmZml4XG4gICAgICBjbGFzcz1cImF1aS10aW1lLXBpY2tlcl9faWNvbi1jb250YWluZXJcIlxuICAgID5cbiAgICAgIDxhdWktaWNvblxuICAgICAgICBjbGFzcz1cImF1aS10aW1lLXBpY2tlcl9faW5kaWNhdG9yXCJcbiAgICAgICAgaWNvbj1cImNsb2NrXCJcbiAgICAgID48L2F1aS1pY29uPlxuICAgICAgPGF1aS1pY29uXG4gICAgICAgIGNsYXNzPVwiYXVpLXRpbWUtcGlja2VyX19jbGVhclwiXG4gICAgICAgIGljb249XCJ4bWFya19zbWFsbFwiXG4gICAgICAgIChjbGljayk9XCJjbGVhclZhbHVlKCRldmVudClcIlxuICAgICAgPjwvYXVpLWljb24+XG4gICAgPC9zcGFuPlxuICA8L2F1aS1pbnB1dC1ncm91cD5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI3RlbXBsYXRlPlxuICA8YXVpLXRpbWUtcGlja2VyLXBhbmVsXG4gICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICBbZGlzYWJsZUhvdXJzXT1cImRpc2FibGVIb3Vyc1wiXG4gICAgW2Rpc2FibGVNaW51dGVzXT1cImRpc2FibGVNaW51dGVzXCJcbiAgICBbZGlzYWJsZVNlY29uZHNdPVwiZGlzYWJsZVNlY29uZHNcIlxuICAgIFtob3VyU3RlcF09XCJob3VyU3RlcFwiXG4gICAgW21pbnV0ZVN0ZXBdPVwibWludXRlU3RlcFwiXG4gICAgW3NlY29uZFN0ZXBdPVwic2Vjb25kU3RlcFwiXG4gICAgW2Zvcm1hdF09XCJmb3JtYXRcIlxuICAgIFtmb290ZXJUZW1wbGF0ZV09XCJmb290ZXJUZW1wbGF0ZVwiXG4gICAgWyhuZ01vZGVsKV09XCJ0aW1lVmFsdWVcIlxuICAgIChuZ01vZGVsQ2hhbmdlKT1cImNoYW5nZUZyb21QYW5lbCgkZXZlbnQpXCJcbiAgICAoY29uZmlybSk9XCJzdWJtaXQoKVwiXG4gICAgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiXG4gICAgKG1vdXNlZG93bik9XCIkZXZlbnQucHJldmVudERlZmF1bHQoKVwiXG4gID48L2F1aS10aW1lLXBpY2tlci1wYW5lbD5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
192
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3RpbWUtcGlja2VyL2NvbXBvbmVudC50cyIsIi4uLy4uLy4uL3NyYy90aW1lLXBpY2tlci90ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2QyxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFFTixTQUFTLEVBQ1QsaUJBQWlCLEVBQ2pCLFVBQVUsR0FDWCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEUsT0FBTyxLQUFnQixNQUFNLE9BQU8sQ0FBQztBQUNyQyxPQUFPLGlCQUFpQixNQUFNLGdDQUFnQyxDQUFDO0FBRS9ELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUNqRixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRWhFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ25FLE9BQU8sRUFHTCxpQkFBaUIsR0FDbEIsTUFBTSxvQkFBb0IsQ0FBQzs7O0FBRTVC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LEtBQUs7Z0JBSU4sV0FBVztzQkFEVixLQUFLO2dCQUlOLFNBQVM7c0JBRFIsS0FBSztnQkFJTixRQUFRO3NCQURQLEtBQUs7Z0JBSU4sWUFBWTtzQkFEWCxLQUFLO2dCQUlOLGNBQWM7c0JBRGIsS0FBSztnQkFJTixjQUFjO3NCQURiLEtBQUs7Z0JBSU4sUUFBUTtzQkFEUCxLQUFLO2dCQUlOLFVBQVU7c0JBRFQsS0FBSztnQkFJTixVQUFVO3NCQURULEtBQUs7Z0JBSU4sY0FBYztzQkFEYixLQUFLO2dCQUlHLElBQUk7c0JBRFosTUFBTTtnQkFJRSxLQUFLO3NCQURiLE1BQU07Z0JBSVAsVUFBVTtzQkFEVCxTQUFTO3VCQUFDLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ0lmIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG4gIGZvcndhcmRSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IsIEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IGRheWpzLCB7IERheWpzIH0gZnJvbSAnZGF5anMnO1xuaW1wb3J0IGN1c3RvbVBhcnNlRm9ybWF0IGZyb20gJ2RheWpzL3BsdWdpbi9jdXN0b21QYXJzZUZvcm1hdCc7XG5cbmltcG9ydCB7IHVwZGF0ZURhdGVCeVRpbWVNb2RlbCB9IGZyb20gJy4uL2RhdGUtcGlja2VyL2NhbGVuZGFyL3V0aWwnO1xuaW1wb3J0IHsgQ29tbW9uRm9ybUNvbnRyb2wgfSBmcm9tICcuLi9mb3JtL2NvbW1vbi1mb3JtJztcbmltcG9ydCB7IEljb25Db21wb25lbnQgfSBmcm9tICcuLi9pY29uL2ljb24uY29tcG9uZW50JztcbmltcG9ydCB7IElucHV0U3VmZml4RGlyZWN0aXZlIH0gZnJvbSAnLi4vaW5wdXQvaGVscGVyLWRpcmVjdGl2ZXMnO1xuaW1wb3J0IHsgSW5wdXRHcm91cENvbXBvbmVudCB9IGZyb20gJy4uL2lucHV0L2lucHV0LWdyb3VwL2lucHV0LWdyb3VwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJbnB1dENvbXBvbmVudCB9IGZyb20gJy4uL2lucHV0L2lucHV0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb21wb25lbnRTaXplIH0gZnJvbSAnLi4vaW50ZXJuYWwvdHlwZXMnO1xuaW1wb3J0IHsgVG9vbHRpcERpcmVjdGl2ZSB9IGZyb20gJy4uL3Rvb2x0aXAvdG9vbHRpcC5kaXJlY3RpdmUnO1xuXG5pbXBvcnQgeyBUaW1lUGlja2VyUGFuZWxDb21wb25lbnQgfSBmcm9tICcuL3BhbmVsL3BhbmVsLmNvbXBvbmVudCc7XG5pbXBvcnQge1xuICBUaW1lUGlja2VyRGF0YUxpa2UsXG4gIFRpbWVQaWNrZXJNb2RlbCxcbiAgaXNUaW1lUGlja2VyTW9kZWwsXG59IGZyb20gJy4vdGltZS1waWNrZXIudHlwZSc7XG5cbmRheWpzLmV4dGVuZChjdXN0b21QYXJzZUZvcm1hdCk7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F1aS10aW1lLXBpY2tlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi90ZW1wbGF0ZS5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc3R5bGUuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUaW1lUGlja2VyQ29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgIH0sXG4gIF0sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBUb29sdGlwRGlyZWN0aXZlLFxuICAgIElucHV0R3JvdXBDb21wb25lbnQsXG4gICAgSW5wdXRDb21wb25lbnQsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgTmdJZixcbiAgICBJbnB1dFN1ZmZpeERpcmVjdGl2ZSxcbiAgICBJY29uQ29tcG9uZW50LFxuICAgIFRpbWVQaWNrZXJQYW5lbENvbXBvbmVudCxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVGltZVBpY2tlckNvbXBvbmVudCBleHRlbmRzIENvbW1vbkZvcm1Db250cm9sPFxuICBUaW1lUGlja2VyRGF0YUxpa2UsXG4gIFRpbWVQaWNrZXJNb2RlbFxuPiB7XG4gIEBJbnB1dCgpXG4gIGZvcm1hdCA9ICdISDptbTpzcyc7XG5cbiAgQElucHV0KClcbiAgc2l6ZTogQ29tcG9uZW50U2l6ZSA9IENvbXBvbmVudFNpemUuTWVkaXVtO1xuXG4gIEBJbnB1dCgpXG4gIHBsYWNlaG9sZGVyID0gJyc7XG5cbiAgQElucHV0KClcbiAgY2xlYXJhYmxlID0gdHJ1ZTtcblxuICBASW5wdXQoKVxuICBzaG93SWNvbiA9IHRydWU7XG5cbiAgQElucHV0KClcbiAgZGlzYWJsZUhvdXJzOiAoKSA9PiBudW1iZXJbXTtcblxuICBASW5wdXQoKVxuICBkaXNhYmxlTWludXRlczogKGhvdXI/OiBudW1iZXIpID0+IG51bWJlcltdO1xuXG4gIEBJbnB1dCgpXG4gIGRpc2FibGVTZWNvbmRzOiAoaG91cj86IG51bWJlciwgbWludXRlPzogbnVtYmVyKSA9PiBudW1iZXJbXTtcblxuICBASW5wdXQoKVxuICBob3VyU3RlcCA9IDE7XG5cbiAgQElucHV0KClcbiAgbWludXRlU3RlcCA9IDE7XG5cbiAgQElucHV0KClcbiAgc2Vjb25kU3RlcCA9IDE7XG5cbiAgQElucHV0KClcbiAgZm9vdGVyVGVtcGxhdGU6IFRlbXBsYXRlUmVmPHZvaWQ+O1xuXG4gIEBPdXRwdXQoKVxuICByZWFkb25seSBvcGVuID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIEBPdXRwdXQoKVxuICByZWFkb25seSBjbG9zZSA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBAVmlld0NoaWxkKCd0b29sdGlwUmVmJylcbiAgdG9vbHRpcFJlZjogVG9vbHRpcERpcmVjdGl2ZTtcblxuICB0aW1lVmFsdWU6IERheWpzID0gbnVsbDtcbiAgdGltZUZvcm1hdFZhbHVlID0gJyc7XG5cbiAgb3ZlcnJpZGUgd3JpdGVWYWx1ZSh2YWx1ZTogVGltZVBpY2tlckRhdGFMaWtlKSB7XG4gICAgc3VwZXIud3JpdGVWYWx1ZSh2YWx1ZSk7XG4gICAgaWYgKCF2YWx1ZSkge1xuICAgICAgcmV0dXJuIHRoaXMuc2V0VmFsdWUobnVsbCk7XG4gICAgfVxuICAgIGxldCByZXN1bHQ6IERheWpzO1xuICAgIGlmIChpc1RpbWVQaWNrZXJNb2RlbCh2YWx1ZSkpIHtcbiAgICAgIHJlc3VsdCA9IHVwZGF0ZURhdGVCeVRpbWVNb2RlbChkYXlqcygpLCB2YWx1ZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJlc3VsdCA9IGRheWpzKHZhbHVlKTtcbiAgICAgIHRoaXMuc3VibWl0KGZhbHNlLCByZXN1bHQpO1xuICAgIH1cbiAgICB0aGlzLnNldFZhbHVlKHJlc3VsdCk7XG4gIH1cblxuICBzZXRWYWx1ZSh2YWx1ZTogRGF5anMpIHtcbiAgICB0aGlzLnRpbWVWYWx1ZSA9IHZhbHVlO1xuICAgIHRoaXMudGltZUZvcm1hdFZhbHVlID0gdmFsdWUgPyBkYXlqcyh2YWx1ZSkuZm9ybWF0KHRoaXMuZm9ybWF0KSA6IG51bGw7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBjaGFuZ2VGcm9tUGFuZWwodmFsdWU6IERheWpzKSB7XG4gICAgdGhpcy50aW1lRm9ybWF0VmFsdWUgPSB2YWx1ZT8uZm9ybWF0KHRoaXMuZm9ybWF0KTtcbiAgfVxuXG4gIGNoYW5nZUZyb21JbnB1dChzb3VyY2U6IHN0cmluZykge1xuICAgIGlmIChzb3VyY2UpIHtcbiAgICAgIGNvbnN0IGFmdGVyUGFyc2VkID0gZGF5anMoc291cmNlLCB0aGlzLmZvcm1hdCk7XG4gICAgICBpZiAoYWZ0ZXJQYXJzZWQuaXNWYWxpZCgpKSB7XG4gICAgICAgIHRoaXMudGltZVZhbHVlID0gYWZ0ZXJQYXJzZWQ7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudGltZVZhbHVlID0gbnVsbDtcbiAgICB9XG4gIH1cblxuICBvbktleURvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICBzd2l0Y2ggKGV2ZW50LmtleSkge1xuICAgICAgY2FzZSAnRW50ZXInOiB7XG4gICAgICAgIHRoaXMub3BlblBhbmVsKCk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICAgIGNhc2UgJ0VzY2FwZSc6IHtcbiAgICAgICAgdGhpcy5jbG9zZVBhbmVsKCk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBoYW5kbGVUb29sdGlwVmlzaWJsZSh2aXNpYmxlOiBib29sZWFuKSB7XG4gICAgaWYgKHZpc2libGUpIHtcbiAgICAgIHRoaXMub3Blbi5lbWl0KCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICh0aGlzLm9uVG91Y2hlZCkge1xuICAgICAgICB0aGlzLm9uVG91Y2hlZCgpO1xuICAgICAgfVxuICAgICAgdGhpcy5zZXRWYWx1ZSh0aGlzLnRpbWVWYWx1ZSk7XG4gICAgICB0aGlzLnN1Ym1pdCgpO1xuXG4gICAgICB0aGlzLmNsb3NlLmVtaXQoKTtcbiAgICB9XG4gIH1cblxuICBvcGVuUGFuZWwoKSB7XG4gICAgaWYgKHRoaXMudG9vbHRpcFJlZi5pc0NyZWF0ZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy50b29sdGlwUmVmLnNob3coKTtcbiAgICB0aGlzLm9wZW4ubmV4dCgpO1xuICB9XG5cbiAgY2xvc2VQYW5lbCgpIHtcbiAgICBpZiAoIXRoaXMudG9vbHRpcFJlZi5pc0NyZWF0ZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy50b29sdGlwUmVmLmhpZGUoKTtcbiAgICB0aGlzLmNsb3NlLm5leHQoKTtcbiAgfVxuXG4gIGNsZWFyVmFsdWUoZXZlbnQ6IEV2ZW50KSB7XG4gICAgdGhpcy5zZXRWYWx1ZShudWxsKTtcbiAgICB0aGlzLnN1Ym1pdCgpO1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gIH1cblxuICBzdWJtaXQoY2xvc2UgPSB0cnVlLCB2YWx1ZT86IERheWpzKSB7XG4gICAgY29uc3QgcmVmZXIgPSB2YWx1ZSA/PyB0aGlzLnRpbWVWYWx1ZTtcbiAgICB0aGlzLmVtaXRNb2RlbChcbiAgICAgIHJlZmVyXG4gICAgICAgID8ge1xuICAgICAgICAgICAgc2Vjb25kOiByZWZlci5zZWNvbmQoKSxcbiAgICAgICAgICAgIG1pbnV0ZTogcmVmZXIubWludXRlKCksXG4gICAgICAgICAgICBob3VyOiByZWZlci5ob3VyKCksXG4gICAgICAgICAgfVxuICAgICAgICA6IG51bGwsXG4gICAgKTtcbiAgICBpZiAoY2xvc2UpIHtcbiAgICAgIHRoaXMuY2xvc2VQYW5lbCgpO1xuICAgIH1cbiAgfVxufVxuIiwiPGRpdlxuICBjbGFzcz1cImF1aS10aW1lLXBpY2tlclwiXG4gIFtjbGFzcy5pc0Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgW2NsYXNzLmlzQ2xlYXJhYmxlXT1cImNsZWFyYWJsZSAmJiB0aW1lRm9ybWF0VmFsdWVcIlxuICAjdG9vbHRpcFJlZj1cImF1aVRvb2x0aXBcIlxuICBbYXVpVG9vbHRpcF09XCJ0ZW1wbGF0ZVwiXG4gIGF1aVRvb2x0aXBBbmltVHlwZT1cIm5vbmVcIlxuICBhdWlUb29sdGlwVHlwZT1cInBsYWluXCJcbiAgYXVpVG9vbHRpcFRyaWdnZXI9XCJjbGlja1wiXG4gIGF1aVRvb2x0aXBQb3NpdGlvbj1cImJvdHRvbSBzdGFydFwiXG4gIFthdWlUb29sdGlwRGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAoYXVpVG9vbHRpcFZpc2libGVDaGFuZ2UpPVwiaGFuZGxlVG9vbHRpcFZpc2libGUoJGV2ZW50KVwiXG4+XG4gIDxhdWktaW5wdXQtZ3JvdXA+XG4gICAgPGlucHV0XG4gICAgICBhdWktaW5wdXRcbiAgICAgIGF1dG9jb21wbGV0ZT1cIm9mZlwiXG4gICAgICBbc2l6ZV09XCJzaXplXCJcbiAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgWyhuZ01vZGVsKV09XCJ0aW1lRm9ybWF0VmFsdWVcIlxuICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwiY2hhbmdlRnJvbUlucHV0KCRldmVudClcIlxuICAgICAgKGtleWRvd24pPVwib25LZXlEb3duKCRldmVudClcIlxuICAgIC8+XG4gICAgPHNwYW5cbiAgICAgICpuZ0lmPVwic2hvd0ljb25cIlxuICAgICAgYXVpSW5wdXRTdWZmaXhcbiAgICAgIGNsYXNzPVwiYXVpLXRpbWUtcGlja2VyX19pY29uLWNvbnRhaW5lclwiXG4gICAgPlxuICAgICAgPGF1aS1pY29uXG4gICAgICAgIGNsYXNzPVwiYXVpLXRpbWUtcGlja2VyX19pbmRpY2F0b3JcIlxuICAgICAgICBpY29uPVwiY2xvY2tcIlxuICAgICAgPjwvYXVpLWljb24+XG4gICAgICA8YXVpLWljb25cbiAgICAgICAgY2xhc3M9XCJhdWktdGltZS1waWNrZXJfX2NsZWFyXCJcbiAgICAgICAgaWNvbj1cInhtYXJrX3NtYWxsXCJcbiAgICAgICAgKGNsaWNrKT1cImNsZWFyVmFsdWUoJGV2ZW50KVwiXG4gICAgICA+PC9hdWktaWNvbj5cbiAgICA8L3NwYW4+XG4gIDwvYXVpLWlucHV0LWdyb3VwPlxuPC9kaXY+XG5cbjxuZy10ZW1wbGF0ZSAjdGVtcGxhdGU+XG4gIDxhdWktdGltZS1waWNrZXItcGFuZWxcbiAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgIFtkaXNhYmxlSG91cnNdPVwiZGlzYWJsZUhvdXJzXCJcbiAgICBbZGlzYWJsZU1pbnV0ZXNdPVwiZGlzYWJsZU1pbnV0ZXNcIlxuICAgIFtkaXNhYmxlU2Vjb25kc109XCJkaXNhYmxlU2Vjb25kc1wiXG4gICAgW2hvdXJTdGVwXT1cImhvdXJTdGVwXCJcbiAgICBbbWludXRlU3RlcF09XCJtaW51dGVTdGVwXCJcbiAgICBbc2Vjb25kU3RlcF09XCJzZWNvbmRTdGVwXCJcbiAgICBbZm9ybWF0XT1cImZvcm1hdFwiXG4gICAgW2Zvb3RlclRlbXBsYXRlXT1cImZvb3RlclRlbXBsYXRlXCJcbiAgICBbKG5nTW9kZWwpXT1cInRpbWVWYWx1ZVwiXG4gICAgKG5nTW9kZWxDaGFuZ2UpPVwiY2hhbmdlRnJvbVBhbmVsKCRldmVudClcIlxuICAgIChjb25maXJtKT1cInN1Ym1pdCgpXCJcbiAgICAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcbiAgICAobW91c2Vkb3duKT1cIiRldmVudC5wcmV2ZW50RGVmYXVsdCgpXCJcbiAgPjwvYXVpLXRpbWUtcGlja2VyLXBhbmVsPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|
|
@@ -6,8 +6,8 @@ import { ButtonComponent } from '../../button/button.component';
|
|
|
6
6
|
import { updateDateByTimeModel } from '../../date-picker/calendar/util';
|
|
7
7
|
import { CommonFormControl } from '../../form/common-form';
|
|
8
8
|
import { I18nPipe } from '../../i18n/i18n.pipe';
|
|
9
|
-
import { ComponentSize } from '../../types';
|
|
10
|
-
import { buildBem } from '../../utils';
|
|
9
|
+
import { ComponentSize } from '../../internal/types';
|
|
10
|
+
import { buildBem } from '../../internal/utils';
|
|
11
11
|
import { CONTROL_ITEM_HEIGHT, HOUR_ITEMS, MINUTE_ITEMS, SECOND_ITEMS, } from '../constant';
|
|
12
12
|
import { TimePickerControlType } from '../time-picker.type';
|
|
13
13
|
import * as i0 from "@angular/core";
|
|
@@ -245,4 +245,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.3", ngImpor
|
|
|
245
245
|
type: ViewChild,
|
|
246
246
|
args: ['secondRef', { static: false }]
|
|
247
247
|
}] } });
|
|
248
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFuZWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3RpbWUtcGlja2VyL3BhbmVsL3BhbmVsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3NyYy90aW1lLXBpY2tlci9wYW5lbC9wYW5lbC50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxJQUFJLEVBQ0osS0FBSyxFQUNMLE9BQU8sRUFDUCxnQkFBZ0IsRUFDaEIsV0FBVyxHQUNaLE1BQU0saUJBQWlCLENBQUM7QUFDekIsT0FBTyxFQUNMLHVCQUF1QixFQUV2QixTQUFTLEVBRVQsWUFBWSxFQUNaLFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUdOLFNBQVMsRUFDVCxpQkFBaUIsRUFDakIsVUFBVSxHQUNYLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ25ELE9BQU8sS0FBZ0IsTUFBTSxPQUFPLENBQUM7QUFFckMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzNELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDdkMsT0FBTyxFQUNMLG1CQUFtQixFQUNuQixVQUFVLEVBQ1YsWUFBWSxFQUNaLFlBQVksR0FDYixNQUFNLGFBQWEsQ0FBQztBQUNyQixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7QUFFNUQsTUFBTSx3QkFBd0IsR0FBRyxFQUFFLENB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QUs7Z0JBSU4sVUFBVTtzQkFEVCxLQUFLO2dCQUlOLGNBQWM7c0JBRGIsS0FBSztnQkFJTixPQUFPO3NCQUROLE1BQU07Z0JBSVAsWUFBWTtzQkFEWCxLQUFLO2dCQUlOLGNBQWM7c0JBRGIsS0FBSztnQkFJTixjQUFjO3NCQURiLEtBQUs7Z0JBaUJOLE9BQU87c0JBRE4sU0FBUzt1QkFBQyxTQUFTLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQUl2QyxTQUFTO3NCQURSLFNBQVM7dUJBQUMsV0FBVyxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkFJekMsU0FBUztzQkFEUixTQUFTO3VCQUFDLFdBQVcsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBOZ0lmLFxuICBOZ0ZvcixcbiAgTmdDbGFzcyxcbiAgTmdUZW1wbGF0ZU91dGxldCxcbiAgRGVjaW1hbFBpcGUsXG59IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBIb3N0TGlzdGVuZXIsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE91dHB1dCxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG4gIGZvcndhcmRSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgZGF5anMsIHsgRGF5anMgfSBmcm9tICdkYXlqcyc7XG5cbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2J1dHRvbi9idXR0b24uY29tcG9uZW50JztcbmltcG9ydCB7IHVwZGF0ZURhdGVCeVRpbWVNb2RlbCB9IGZyb20gJy4uLy4uL2RhdGUtcGlja2VyL2NhbGVuZGFyL3V0aWwnO1xuaW1wb3J0IHsgQ29tbW9uRm9ybUNvbnRyb2wgfSBmcm9tICcuLi8uLi9mb3JtL2NvbW1vbi1mb3JtJztcbmltcG9ydCB7IEkxOG5QaXBlIH0gZnJvbSAnLi4vLi4vaTE4bi9pMThuLnBpcGUnO1xuaW1wb3J0IHsgQ29tcG9uZW50U2l6ZSB9IGZyb20gJy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IGJ1aWxkQmVtIH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuaW1wb3J0IHtcbiAgQ09OVFJPTF9JVEVNX0hFSUdIVCxcbiAgSE9VUl9JVEVNUyxcbiAgTUlOVVRFX0lURU1TLFxuICBTRUNPTkRfSVRFTVMsXG59IGZyb20gJy4uL2NvbnN0YW50JztcbmltcG9ydCB7IFRpbWVQaWNrZXJDb250cm9sVHlwZSB9IGZyb20gJy4uL3RpbWUtcGlja2VyLnR5cGUnO1xuXG5jb25zdCBUSU1FX1BJQ0tFUl9DT0xVTU5fV0lEVEggPSA4MDtcbmNvbnN0IGJlbSA9IGJ1aWxkQmVtKCdhdWktdGltZS1waWNrZXItcGFuZWwnKTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXVpLXRpbWUtcGlja2VyLXBhbmVsJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3BhbmVsLnRlbXBsYXRlLmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9wYW5lbC5zdHlsZS5zY3NzJ10sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFRpbWVQaWNrZXJQYW5lbENvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICBdLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgTmdJZixcbiAgICBOZ0ZvcixcbiAgICBOZ0NsYXNzLFxuICAgIEJ1dHRvbkNvbXBvbmVudCxcbiAgICBOZ1RlbXBsYXRlT3V0bGV0LFxuICAgIERlY2ltYWxQaXBlLFxuICAgIEkxOG5QaXBlLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBUaW1lUGlja2VyUGFuZWxDb21wb25lbnRcbiAgZXh0ZW5kcyBDb21tb25Gb3JtQ29udHJvbDxEYXlqcz5cbiAgaW1wbGVtZW50cyBPbkNoYW5nZXNcbntcbiAgQElucHV0KClcbiAgc2V0IGZvcm1hdCh2YWx1ZTogc3RyaW5nKSB7XG4gICAgaWYgKHZhbHVlICE9IG51bGwpIHtcbiAgICAgIHRoaXMuX2Zvcm1hdCA9IHZhbHVlO1xuICAgICAgY29uc3QgY2hhclNldCA9IG5ldyBTZXQodmFsdWUpO1xuICAgICAgdGhpcy5ob3VyRW5hYmxlZCA9IGNoYXJTZXQuaGFzKCdIJykgfHwgY2hhclNldC5oYXMoJ2gnKTtcbiAgICAgIHRoaXMubWludXRlRW5hYmxlZCA9IGNoYXJTZXQuaGFzKCdtJyk7XG4gICAgICB0aGlzLnNlY29uZEVuYWJsZWQgPSBjaGFyU2V0LmhhcygncycpO1xuICAgICAgdGhpcy5lbmFibGVkQ29sdW1ucyA9IFtcbiAgICAgICAgdGhpcy5ob3VyRW5hYmxlZCxcbiAgICAgICAgdGhpcy5taW51dGVFbmFibGVkLFxuICAgICAgICB0aGlzLnNlY29uZEVuYWJsZWQsXG4gICAgICBdLmZpbHRlcihCb29sZWFuKS5sZW5ndGg7XG4gICAgfVxuICB9XG5cbiAgZ2V0IGZvcm1hdCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9mb3JtYXQ7XG4gIH1cblxuICBwcml2YXRlIF9mb3JtYXQ6IHN0cmluZztcblxuICBnZXQgdG90YWxXaWR0aCgpIHtcbiAgICByZXR1cm4gdGhpcy5lbmFibGVkQ29sdW1ucyAqIFRJTUVfUElDS0VSX0NPTFVNTl9XSURUSDtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ21vdXNlZG93bicpIG9uTW91c2Vkb3duKCkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIGhvdXJTdGVwID0gMTtcblxuICBASW5wdXQoKVxuICBtaW51dGVTdGVwID0gMTtcblxuICBASW5wdXQoKVxuICBzZWNvbmRTdGVwID0gMTtcblxuICBASW5wdXQoKVxuICBmb290ZXJUZW1wbGF0ZTogVGVtcGxhdGVSZWY8dm9pZD47XG5cbiAgQE91dHB1dCgpXG4gIGNvbmZpcm0gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgQElucHV0KClcbiAgZGlzYWJsZUhvdXJzOiAoKSA9PiBudW1iZXJbXTtcblxuICBASW5wdXQoKVxuICBkaXNhYmxlTWludXRlczogKGhvdXI/OiBudW1iZXIpID0+IG51bWJlcltdO1xuXG4gIEBJbnB1dCgpXG4gIGRpc2FibGVTZWNvbmRzOiAoaG91cj86IG51bWJlciwgbWludXRlPzogbnVtYmVyKSA9PiBudW1iZXJbXTtcblxuICBob3VyRW5hYmxlZDogYm9vbGVhbjtcbiAgbWludXRlRW5hYmxlZDogYm9vbGVhbjtcbiAgc2Vjb25kRW5hYmxlZDogYm9vbGVhbjtcblxuICBUaW1lUGlja2VyQ29udHJvbFR5cGUgPSBUaW1lUGlja2VyQ29udHJvbFR5cGU7XG4gIEhPVVJfSVRFTV9DT05GSUcgPSBIT1VSX0lURU1TO1xuICBNSU5VVEVfSVRFTV9DT05GSUcgPSBNSU5VVEVfSVRFTVM7XG4gIFNFQ09ORF9JVEVNX0NPTkZJRyA9IFNFQ09ORF9JVEVNUztcblxuICBDT05UUk9MX0lURU1fSEVJR0hUID0gQ09OVFJPTF9JVEVNX0hFSUdIVDtcbiAgQ29tcG9uZW50U2l6ZSA9IENvbXBvbmVudFNpemU7XG4gIGJlbSA9IGJlbTtcblxuICBAVmlld0NoaWxkKCdob3VyUmVmJywgeyBzdGF0aWM6IGZhbHNlIH0pXG4gIGhvdXJSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gIEBWaWV3Q2hpbGQoJ21pbnV0ZVJlZicsIHsgc3RhdGljOiBmYWxzZSB9KVxuICBtaW51dGVSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gIEBWaWV3Q2hpbGQoJ3NlY29uZFJlZicsIHsgc3RhdGljOiBmYWxzZSB9KVxuICBzZWNvbmRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gIGVuYWJsZWRDb2x1bW5zID0gMDtcblxuICAvLyDnlKjkuo7mjqfliLbliJ3mrKHmu5rliqjvvIzmmK/lkKblsZXnpLrmu5rliqjliqjnlLvmlYjmnpxcbiAgZmlyc3RTY3JvbGxlZCA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBvdmVycmlkZSBjZHI6IENoYW5nZURldGVjdG9yUmVmKSB7XG4gICAgc3VwZXIoY2RyKTtcbiAgICB0aGlzLm1vZGVsJC5zdWJzY3JpYmUoXyA9PiB7XG4gICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICB9KTtcbiAgfVxuXG4gIGlzRGlzYWJsZWQodmFsdWU6IG51bWJlciwgdHlwZTogVGltZVBpY2tlckNvbnRyb2xUeXBlKSB7XG4gICAgY29uc3QgY3VycmVudFZhbHVlID0gdGhpcy5tb2RlbDtcbiAgICBpZiAodGhpcy5kaXNhYmxlZCkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIGlmICh0eXBlID09PSBUaW1lUGlja2VyQ29udHJvbFR5cGUuSG91cikge1xuICAgICAgcmV0dXJuICh0aGlzLmRpc2FibGVIb3VycyA/IHRoaXMuZGlzYWJsZUhvdXJzKCkgOiBbXSkuaW5jbHVkZXModmFsdWUpO1xuICAgIH1cbiAgICBpZiAodHlwZSA9PT0gVGltZVBpY2tlckNvbnRyb2xUeXBlLk1pbnV0ZSkge1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgdGhpcy5kaXNhYmxlTWludXRlcyA/IHRoaXMuZGlzYWJsZU1pbnV0ZXMoY3VycmVudFZhbHVlPy5ob3VyKCkpIDogW11cbiAgICAgICkuaW5jbHVkZXModmFsdWUpO1xuICAgIH1cbiAgICBpZiAodHlwZSA9PT0gVGltZVBpY2tlckNvbnRyb2xUeXBlLlNlY29uZCkge1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgdGhpcy5kaXNhYmxlU2Vjb25kc1xuICAgICAgICAgID8gdGhpcy5kaXNhYmxlU2Vjb25kcyhjdXJyZW50VmFsdWU/LmhvdXIoKSwgY3VycmVudFZhbHVlPy5taW51dGUoKSlcbiAgICAgICAgICA6IFtdXG4gICAgICApLmluY2x1ZGVzKHZhbHVlKTtcbiAgICB9XG4gIH1cblxuICBuZ09uQ2hhbmdlcyh7IGhvdXJTdGVwLCBtaW51dGVTdGVwLCBzZWNvbmRTdGVwIH06IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoaG91clN0ZXA/LmN1cnJlbnRWYWx1ZSA+IDApIHtcbiAgICAgIHRoaXMuSE9VUl9JVEVNX0NPTkZJRyA9IEhPVVJfSVRFTVMuZmlsdGVyKFxuICAgICAgICBpID0+IGkgJSBob3VyU3RlcC5jdXJyZW50VmFsdWUgPT09IDAsXG4gICAgICApO1xuICAgIH1cbiAgICBpZiAobWludXRlU3RlcD8uY3VycmVudFZhbHVlID4gMCkge1xuICAgICAgdGhpcy5NSU5VVEVfSVRFTV9DT05GSUcgPSBNSU5VVEVfSVRFTVMuZmlsdGVyKFxuICAgICAgICBpID0+IGkgJSBtaW51dGVTdGVwLmN1cnJlbnRWYWx1ZSA9PT0gMCxcbiAgICAgICk7XG4gICAgfVxuICAgIGlmIChzZWNvbmRTdGVwPy5jdXJyZW50VmFsdWUgPiAwKSB7XG4gICAgICB0aGlzLlNFQ09ORF9JVEVNX0NPTkZJRyA9IFNFQ09ORF9JVEVNUy5maWx0ZXIoXG4gICAgICAgIGkgPT4gaSAlIHNlY29uZFN0ZXAuY3VycmVudFZhbHVlID09PSAwLFxuICAgICAgKTtcbiAgICB9XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBvdmVycmlkZSB3cml0ZVZhbHVlKHZhbHVlOiBEYXlqcykge1xuICAgIHN1cGVyLndyaXRlVmFsdWUodmFsdWUpO1xuICAgIHRoaXMuc3luY1Njcm9sbE9mZnNldCh0aGlzLmZpcnN0U2Nyb2xsZWQgPyAxMjAgOiAwLCB2YWx1ZSk7XG4gIH1cblxuICBzZWxlY3RWYWx1ZSh2YWx1ZTogbnVtYmVyLCB0eXBlOiBUaW1lUGlja2VyQ29udHJvbFR5cGUpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5pc0Rpc2FibGVkKHZhbHVlLCB0eXBlKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmZpcnN0U2Nyb2xsZWQgPSB0cnVlO1xuICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMuc3luY1ZhbHVlKHZhbHVlLCB0eXBlLCB0aGlzLm1vZGVsKTtcbiAgICB0aGlzLnN5bmNTY3JvbGxPZmZzZXQoMTIwLCByZXN1bHQpO1xuICB9XG5cbiAgc3luY1ZhbHVlKHZhbHVlOiBudW1iZXIsIHR5cGU6IFRpbWVQaWNrZXJDb250cm9sVHlwZSwgY3VycmVudFZhbHVlOiBEYXlqcykge1xuICAgIGlmICghdHlwZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCByZXN1bHQgPSAoXG4gICAgICBjdXJyZW50VmFsdWUgfHxcbiAgICAgIHVwZGF0ZURhdGVCeVRpbWVNb2RlbChkYXlqcygpLCB7IGhvdXI6IDAsIG1pbnV0ZTogMCwgc2Vjb25kOiAwIH0pXG4gICAgKS5zZXQodHlwZSwgdmFsdWUpO1xuICAgIHRoaXMuZW1pdE1vZGVsKHJlc3VsdCk7XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIHN5bmNTY3JvbGxPZmZzZXQoZHVyYXRpb246IG51bWJlciwgdmFsdWU6IERheWpzKSB7XG4gICAgY29uc3QgZW1wdHkgPSAhdmFsdWU7XG4gICAgY29uc3QgY29uZmlnID0gW1xuICAgICAge1xuICAgICAgICByZWY6IHRoaXMuaG91clJlZixcbiAgICAgICAgZW5hYmxlZDogdGhpcy5ob3VyRW5hYmxlZCxcbiAgICAgICAgc3RlcDogdGhpcy5ob3VyU3RlcCxcbiAgICAgICAgdHlwZTogJ2hvdXInLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgcmVmOiB0aGlzLm1pbnV0ZVJlZixcbiAgICAgICAgZW5hYmxlZDogdGhpcy5taW51dGVFbmFibGVkLFxuICAgICAgICBzdGVwOiB0aGlzLm1pbnV0ZVN0ZXAsXG4gICAgICAgIHR5cGU6ICdtaW51dGUnLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgcmVmOiB0aGlzLnNlY29uZFJlZixcbiAgICAgICAgZW5hYmxlZDogdGhpcy5zZWNvbmRFbmFibGVkLFxuICAgICAgICBzdGVwOiB0aGlzLnNlY29uZFN0ZXAsXG4gICAgICAgIHR5cGU6ICdzZWNvbmQnLFxuICAgICAgfSxcbiAgICBdIGFzIGNvbnN0O1xuXG4gICAgY29uZmlnLmZvckVhY2goY2YgPT4ge1xuICAgICAgaWYgKGNmLmVuYWJsZWQgJiYgY2YucmVmKSB7XG4gICAgICAgIHRoaXMuc2Nyb2xsQnlWYWx1ZShcbiAgICAgICAgICBjZi5yZWYubmF0aXZlRWxlbWVudCxcbiAgICAgICAgICBlbXB0eSA/IDAgOiB2YWx1ZS5nZXQoY2YudHlwZSksXG4gICAgICAgICAgY2Yuc3RlcCxcbiAgICAgICAgICBlbXB0eSA/IDAgOiBkdXJhdGlvbixcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICBpZiAoIWVtcHR5KSB7XG4gICAgICB0aGlzLmZpcnN0U2Nyb2xsZWQgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc2Nyb2xsQnlWYWx1ZShcbiAgICBlbGVtZW50OiBIVE1MRWxlbWVudCxcbiAgICB2YWx1ZTogbnVtYmVyLFxuICAgIGRpdmlkZUJ5OiBudW1iZXIsXG4gICAgZHVyYXRpb246IG51bWJlcixcbiAgKSB7XG4gICAgY29uc3QgdGFyZ2V0T2Zmc2V0ID0gKHZhbHVlICogQ09OVFJPTF9JVEVNX0hFSUdIVCkgLyBkaXZpZGVCeTtcbiAgICBjb25zdCBjdXJyZW50VG9wID0gZWxlbWVudC5zY3JvbGxUb3A7XG4gICAgaWYgKGN1cnJlbnRUb3AgPT09IHRhcmdldE9mZnNldCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBpZiAoZHVyYXRpb24pIHtcbiAgICAgIGNvbnN0IGRpZmZlcmVuY2UgPSB0YXJnZXRPZmZzZXQgLSBjdXJyZW50VG9wO1xuICAgICAgLy8g5q+P5LiqdGlja+a7muWKqOi3neemu1xuICAgICAgY29uc3QgcGVyVGljayA9IChkaWZmZXJlbmNlIC8gZHVyYXRpb24pICogMTA7XG5cbiAgICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiB7XG4gICAgICAgIGVsZW1lbnQuc2Nyb2xsVG9wID0gY3VycmVudFRvcCArIHBlclRpY2s7XG4gICAgICAgIGlmIChlbGVtZW50LnNjcm9sbFRvcCA9PT0gdGFyZ2V0T2Zmc2V0KSB7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuc2Nyb2xsQnlWYWx1ZShlbGVtZW50LCB2YWx1ZSwgZGl2aWRlQnksIGR1cmF0aW9uIC0gMTApO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGVsZW1lbnQuc2Nyb2xsVG9wID0gdGFyZ2V0T2Zmc2V0O1xuICAgIH1cbiAgfVxuXG4gIG1hdGNoVmFsdWUoXG4gICAgdmFsdWU6IG51bWJlcixcbiAgICB0eXBlOiBUaW1lUGlja2VyQ29udHJvbFR5cGUsXG4gICAgY3VyckRhdGU6IERheWpzLFxuICApOiBib29sZWFuIHtcbiAgICByZXR1cm4gY3VyckRhdGU/LmdldCh0eXBlKSA9PT0gdmFsdWU7XG4gIH1cblxuICBnZXRDb250cm9sVHlwZUNvbmZpZyh0eXBlOiBUaW1lUGlja2VyQ29udHJvbFR5cGUpOiBudW1iZXJbXSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIFtUaW1lUGlja2VyQ29udHJvbFR5cGUuSG91cl06IHRoaXMuSE9VUl9JVEVNX0NPTkZJRyxcbiAgICAgIFtUaW1lUGlja2VyQ29udHJvbFR5cGUuTWludXRlXTogdGhpcy5NSU5VVEVfSVRFTV9DT05GSUcsXG4gICAgICBbVGltZVBpY2tlckNvbnRyb2xUeXBlLlNlY29uZF06IHRoaXMuU0VDT05EX0lURU1fQ09ORklHLFxuICAgIH1bdHlwZV07XG4gIH1cblxuICBzZWxlY3ROb3coKSB7XG4gICAgdGhpcy5maXJzdFNjcm9sbGVkID0gdHJ1ZTtcbiAgICB0aGlzLmVtaXRNb2RlbChkYXlqcygpKTtcbiAgfVxuXG4gIHRyYWNrQnkoX2luZGV4OiBudW1iZXIsIGNvbnRlbnQ6IG51bWJlcikge1xuICAgIHJldHVybiBjb250ZW50O1xuICB9XG59XG4iLCI8ZGl2XG4gICpuZ0lmPVwiZW5hYmxlZENvbHVtbnNcIlxuICBbY2xhc3NdPVwiYmVtLmJsb2NrKClcIlxuICBbc3R5bGUud2lkdGgucHhdPVwidG90YWxXaWR0aFwiXG4+XG4gIDxkaXYgW2NsYXNzXT1cImJlbS5lbGVtZW50KCdjb250ZW50JylcIj5cbiAgICA8ZGl2XG4gICAgICBbY2xhc3NdPVwiYmVtLmVsZW1lbnQoJ2NvbHVtbicpXCJcbiAgICAgICNob3VyUmVmXG4gICAgICAqbmdJZj1cImhvdXJFbmFibGVkXCJcbiAgICA+XG4gICAgICA8dWw+XG4gICAgICAgIDxsaVxuICAgICAgICAgICpuZ0Zvcj1cImxldCBpdGVtIG9mIGdldENvbnRyb2xUeXBlQ29uZmlnKFRpbWVQaWNrZXJDb250cm9sVHlwZS5Ib3VyKVwiXG4gICAgICAgICAgW2NsYXNzXT1cImJlbS5lbGVtZW50KCdjZWxsJylcIlxuICAgICAgICAgIFtzdHlsZS5oZWlnaHQucHhdPVwiQ09OVFJPTF9JVEVNX0hFSUdIVFwiXG4gICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgZGlzYWJsZWQ6IGlzRGlzYWJsZWQoaXRlbSwgVGltZVBpY2tlckNvbnRyb2xUeXBlLkhvdXIpLFxuICAgICAgICAgICAgc2VsZWN0ZWQ6IG1hdGNoVmFsdWUoaXRlbSwgVGltZVBpY2tlckNvbnRyb2xUeXBlLkhvdXIsIG1vZGVsKVxuICAgICAgICAgIH1cIlxuICAgICAgICAgIChjbGljayk9XCJzZWxlY3RWYWx1ZShpdGVtLCBUaW1lUGlja2VyQ29udHJvbFR5cGUuSG91cilcIlxuICAgICAgICA+XG4gICAgICAgICAge3sgaXRlbSB8IG51bWJlciA6ICcyLjAtMCcgfX1cbiAgICAgICAgPC9saT5cbiAgICAgIDwvdWw+XG4gICAgICA8ZGl2IFtjbGFzc109XCJiZW0uZWxlbWVudCgnY29sdW1uLXN0cnV0JylcIj48L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2XG4gICAgICBbY2xhc3NdPVwiYmVtLmVsZW1lbnQoJ2NvbHVtbicpXCJcbiAgICAgICNtaW51dGVSZWZcbiAgICAgICpuZ0lmPVwibWludXRlRW5hYmxlZFwiXG4gICAgPlxuICAgICAgPHVsPlxuICAgICAgICA8bGlcbiAgICAgICAgICAqbmdGb3I9XCJcbiAgICAgICAgICAgIGxldCBpdGVtIG9mIGdldENvbnRyb2xUeXBlQ29uZmlnKFRpbWVQaWNrZXJDb250cm9sVHlwZS5NaW51dGUpO1xuICAgICAgICAgICAgdHJhY2tCeTogdHJhY2tCeVxuICAgICAgICAgIFwiXG4gICAgICAgICAgW2NsYXNzXT1cImJlbS5lbGVtZW50KCdjZWxsJylcIlxuICAgICAgICAgIFtzdHlsZS5oZWlnaHQucHhdPVwiQ09OVFJPTF9JVEVNX0hFSUdIVFwiXG4gICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgZGlzYWJsZWQ6IGlzRGlzYWJsZWQoaXRlbSwgVGltZVBpY2tlckNvbnRyb2xUeXBlLk1pbnV0ZSksXG4gICAgICAgICAgICBzZWxlY3RlZDogbWF0Y2hWYWx1ZShpdGVtLCBUaW1lUGlja2VyQ29udHJvbFR5cGUuTWludXRlLCBtb2RlbClcbiAgICAgICAgICB9XCJcbiAgICAgICAgICAoY2xpY2spPVwic2VsZWN0VmFsdWUoaXRlbSwgVGltZVBpY2tlckNvbnRyb2xUeXBlLk1pbnV0ZSlcIlxuICAgICAgICA+XG4gICAgICAgICAge3sgaXRlbSB8IG51bWJlciA6ICcyLjAtMCcgfX1cbiAgICAgICAgPC9saT5cbiAgICAgIDwvdWw+XG4gICAgICA8ZGl2IFtjbGFzc109XCJiZW0uZWxlbWVudCgnY29sdW1uLXN0cnV0JylcIj48L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2XG4gICAgICBbY2xhc3NdPVwiYmVtLmVsZW1lbnQoJ2NvbHVtbicpXCJcbiAgICAgICNzZWNvbmRSZWZcbiAgICAgICpuZ0lmPVwic2Vjb25kRW5hYmxlZFwiXG4gICAgPlxuICAgICAgPHVsPlxuICAgICAgICA8bGlcbiAgICAgICAgICAqbmdGb3I9XCJcbiAgICAgICAgICAgIGxldCBpdGVtIG9mIGdldENvbnRyb2xUeXBlQ29uZmlnKFRpbWVQaWNrZXJDb250cm9sVHlwZS5TZWNvbmQpXG4gICAgICAgICAgXCJcbiAgICAgICAgICBbY2xhc3NdPVwiYmVtLmVsZW1lbnQoJ2NlbGwnKVwiXG4gICAgICAgICAgW3N0eWxlLmhlaWdodC5weF09XCJDT05UUk9MX0lURU1fSEVJR0hUXCJcbiAgICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICBkaXNhYmxlZDogaXNEaXNhYmxlZChpdGVtLCBUaW1lUGlja2VyQ29udHJvbFR5cGUuU2Vjb25kKSxcbiAgICAgICAgICAgIHNlbGVjdGVkOiBtYXRjaFZhbHVlKGl0ZW0sIFRpbWVQaWNrZXJDb250cm9sVHlwZS5TZWNvbmQsIG1vZGVsKVxuICAgICAgICAgIH1cIlxuICAgICAgICAgIChjbGljayk9XCJzZWxlY3RWYWx1ZShpdGVtLCBUaW1lUGlja2VyQ29udHJvbFR5cGUuU2Vjb25kKVwiXG4gICAgICAgID5cbiAgICAgICAgICB7eyBpdGVtIHwgbnVtYmVyIDogJzIuMC0wJyB9fVxuICAgICAgICA8L2xpPlxuICAgICAgPC91bD5cbiAgICAgIDxkaXYgW2NsYXNzXT1cImJlbS5lbGVtZW50KCdjb2x1bW4tc3RydXQnKVwiPjwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cblxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWZvb3RlclRlbXBsYXRlOyBlbHNlIGN1c3RvbUZvb3RlclwiPlxuICAgIDxkaXYgW2NsYXNzXT1cImJlbS5lbGVtZW50KCdmb290ZXInKVwiPlxuICAgICAgPGJ1dHRvblxuICAgICAgICBhdWktYnV0dG9uPVwiaW5saW5lXCJcbiAgICAgICAgKGNsaWNrKT1cInNlbGVjdE5vdygpXCJcbiAgICAgICAgW3NpemVdPVwiQ29tcG9uZW50U2l6ZS5TbWFsbFwiXG4gICAgICA+XG4gICAgICAgIHt7ICdub3cnIHwgYXVpSTE4biB9fVxuICAgICAgPC9idXR0b24+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIGF1aS1idXR0b249XCJwcmltYXJ5XCJcbiAgICAgICAgW3NpemVdPVwiQ29tcG9uZW50U2l6ZS5TbWFsbFwiXG4gICAgICAgIChjbGljayk9XCIkZXZlbnQuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCk7IGNvbmZpcm0ubmV4dCgpXCJcbiAgICAgID5cbiAgICAgICAge3sgJ2NvbmZpcm0nIHwgYXVpSTE4biB9fVxuICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvbmctY29udGFpbmVyPlxuICA8bmctdGVtcGxhdGUgI2N1c3RvbUZvb3Rlcj5cbiAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImZvb3RlclRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gIDwvbmctdGVtcGxhdGU+XG48L2Rpdj5cbiJdfQ==
|
|
248
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFuZWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3RpbWUtcGlja2VyL3BhbmVsL3BhbmVsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3NyYy90aW1lLXBpY2tlci9wYW5lbC9wYW5lbC50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxJQUFJLEVBQ0osS0FBSyxFQUNMLE9BQU8sRUFDUCxnQkFBZ0IsRUFDaEIsV0FBVyxHQUNaLE1BQU0saUJBQWlCLENBQUM7QUFDekIsT0FBTyxFQUNMLHVCQUF1QixFQUV2QixTQUFTLEVBRVQsWUFBWSxFQUNaLFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUdOLFNBQVMsRUFDVCxpQkFBaUIsRUFDakIsVUFBVSxHQUNYLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ25ELE9BQU8sS0FBZ0IsTUFBTSxPQUFPLENBQUM7QUFFckMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzNELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDckQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2hELE9BQU8sRUFDTCxtQkFBbUIsRUFDbkIsVUFBVSxFQUNWLFlBQVksRUFDWixZQUFZLEdBQ2IsTUFBTSxhQUFhLENBQUM7QUFDckIsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scUJBQXFCLENBQUM7O0FBRTVELE1BQU0sd0JBQXdCLEdBQUcsRUFB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VCxLQUFLO2dCQUlOLFVBQVU7c0JBRFQsS0FBSztnQkFJTixjQUFjO3NCQURiLEtBQUs7Z0JBSU4sT0FBTztzQkFETixNQUFNO2dCQUlQLFlBQVk7c0JBRFgsS0FBSztnQkFJTixjQUFjO3NCQURiLEtBQUs7Z0JBSU4sY0FBYztzQkFEYixLQUFLO2dCQWlCTixPQUFPO3NCQUROLFNBQVM7dUJBQUMsU0FBUyxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkFJdkMsU0FBUztzQkFEUixTQUFTO3VCQUFDLFdBQVcsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBSXpDLFNBQVM7c0JBRFIsU0FBUzt1QkFBQyxXQUFXLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgTmdJZixcbiAgTmdGb3IsXG4gIE5nQ2xhc3MsXG4gIE5nVGVtcGxhdGVPdXRsZXQsXG4gIERlY2ltYWxQaXBlLFxufSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdExpc3RlbmVyLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPdXRwdXQsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxuICBmb3J3YXJkUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IGRheWpzLCB7IERheWpzIH0gZnJvbSAnZGF5anMnO1xuXG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICcuLi8uLi9idXR0b24vYnV0dG9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyB1cGRhdGVEYXRlQnlUaW1lTW9kZWwgfSBmcm9tICcuLi8uLi9kYXRlLXBpY2tlci9jYWxlbmRhci91dGlsJztcbmltcG9ydCB7IENvbW1vbkZvcm1Db250cm9sIH0gZnJvbSAnLi4vLi4vZm9ybS9jb21tb24tZm9ybSc7XG5pbXBvcnQgeyBJMThuUGlwZSB9IGZyb20gJy4uLy4uL2kxOG4vaTE4bi5waXBlJztcbmltcG9ydCB7IENvbXBvbmVudFNpemUgfSBmcm9tICcuLi8uLi9pbnRlcm5hbC90eXBlcyc7XG5pbXBvcnQgeyBidWlsZEJlbSB9IGZyb20gJy4uLy4uL2ludGVybmFsL3V0aWxzJztcbmltcG9ydCB7XG4gIENPTlRST0xfSVRFTV9IRUlHSFQsXG4gIEhPVVJfSVRFTVMsXG4gIE1JTlVURV9JVEVNUyxcbiAgU0VDT05EX0lURU1TLFxufSBmcm9tICcuLi9jb25zdGFudCc7XG5pbXBvcnQgeyBUaW1lUGlja2VyQ29udHJvbFR5cGUgfSBmcm9tICcuLi90aW1lLXBpY2tlci50eXBlJztcblxuY29uc3QgVElNRV9QSUNLRVJfQ09MVU1OX1dJRFRIID0gODA7XG5jb25zdCBiZW0gPSBidWlsZEJlbSgnYXVpLXRpbWUtcGlja2VyLXBhbmVsJyk7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F1aS10aW1lLXBpY2tlci1wYW5lbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9wYW5lbC50ZW1wbGF0ZS5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcGFuZWwuc3R5bGUuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUaW1lUGlja2VyUGFuZWxDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIE5nSWYsXG4gICAgTmdGb3IsXG4gICAgTmdDbGFzcyxcbiAgICBCdXR0b25Db21wb25lbnQsXG4gICAgTmdUZW1wbGF0ZU91dGxldCxcbiAgICBEZWNpbWFsUGlwZSxcbiAgICBJMThuUGlwZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVGltZVBpY2tlclBhbmVsQ29tcG9uZW50XG4gIGV4dGVuZHMgQ29tbW9uRm9ybUNvbnRyb2w8RGF5anM+XG4gIGltcGxlbWVudHMgT25DaGFuZ2VzXG57XG4gIEBJbnB1dCgpXG4gIHNldCBmb3JtYXQodmFsdWU6IHN0cmluZykge1xuICAgIGlmICh2YWx1ZSAhPSBudWxsKSB7XG4gICAgICB0aGlzLl9mb3JtYXQgPSB2YWx1ZTtcbiAgICAgIGNvbnN0IGNoYXJTZXQgPSBuZXcgU2V0KHZhbHVlKTtcbiAgICAgIHRoaXMuaG91ckVuYWJsZWQgPSBjaGFyU2V0LmhhcygnSCcpIHx8IGNoYXJTZXQuaGFzKCdoJyk7XG4gICAgICB0aGlzLm1pbnV0ZUVuYWJsZWQgPSBjaGFyU2V0LmhhcygnbScpO1xuICAgICAgdGhpcy5zZWNvbmRFbmFibGVkID0gY2hhclNldC5oYXMoJ3MnKTtcbiAgICAgIHRoaXMuZW5hYmxlZENvbHVtbnMgPSBbXG4gICAgICAgIHRoaXMuaG91ckVuYWJsZWQsXG4gICAgICAgIHRoaXMubWludXRlRW5hYmxlZCxcbiAgICAgICAgdGhpcy5zZWNvbmRFbmFibGVkLFxuICAgICAgXS5maWx0ZXIoQm9vbGVhbikubGVuZ3RoO1xuICAgIH1cbiAgfVxuXG4gIGdldCBmb3JtYXQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fZm9ybWF0O1xuICB9XG5cbiAgcHJpdmF0ZSBfZm9ybWF0OiBzdHJpbmc7XG5cbiAgZ2V0IHRvdGFsV2lkdGgoKSB7XG4gICAgcmV0dXJuIHRoaXMuZW5hYmxlZENvbHVtbnMgKiBUSU1FX1BJQ0tFUl9DT0xVTU5fV0lEVEg7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdtb3VzZWRvd24nKSBvbk1vdXNlZG93bigpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBASW5wdXQoKVxuICBob3VyU3RlcCA9IDE7XG5cbiAgQElucHV0KClcbiAgbWludXRlU3RlcCA9IDE7XG5cbiAgQElucHV0KClcbiAgc2Vjb25kU3RlcCA9IDE7XG5cbiAgQElucHV0KClcbiAgZm9vdGVyVGVtcGxhdGU6IFRlbXBsYXRlUmVmPHZvaWQ+O1xuXG4gIEBPdXRwdXQoKVxuICBjb25maXJtID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIEBJbnB1dCgpXG4gIGRpc2FibGVIb3VyczogKCkgPT4gbnVtYmVyW107XG5cbiAgQElucHV0KClcbiAgZGlzYWJsZU1pbnV0ZXM6IChob3VyPzogbnVtYmVyKSA9PiBudW1iZXJbXTtcblxuICBASW5wdXQoKVxuICBkaXNhYmxlU2Vjb25kczogKGhvdXI/OiBudW1iZXIsIG1pbnV0ZT86IG51bWJlcikgPT4gbnVtYmVyW107XG5cbiAgaG91ckVuYWJsZWQ6IGJvb2xlYW47XG4gIG1pbnV0ZUVuYWJsZWQ6IGJvb2xlYW47XG4gIHNlY29uZEVuYWJsZWQ6IGJvb2xlYW47XG5cbiAgVGltZVBpY2tlckNvbnRyb2xUeXBlID0gVGltZVBpY2tlckNvbnRyb2xUeXBlO1xuICBIT1VSX0lURU1fQ09ORklHID0gSE9VUl9JVEVNUztcbiAgTUlOVVRFX0lURU1fQ09ORklHID0gTUlOVVRFX0lURU1TO1xuICBTRUNPTkRfSVRFTV9DT05GSUcgPSBTRUNPTkRfSVRFTVM7XG5cbiAgQ09OVFJPTF9JVEVNX0hFSUdIVCA9IENPTlRST0xfSVRFTV9IRUlHSFQ7XG4gIENvbXBvbmVudFNpemUgPSBDb21wb25lbnRTaXplO1xuICBiZW0gPSBiZW07XG5cbiAgQFZpZXdDaGlsZCgnaG91clJlZicsIHsgc3RhdGljOiBmYWxzZSB9KVxuICBob3VyUmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICBAVmlld0NoaWxkKCdtaW51dGVSZWYnLCB7IHN0YXRpYzogZmFsc2UgfSlcbiAgbWludXRlUmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICBAVmlld0NoaWxkKCdzZWNvbmRSZWYnLCB7IHN0YXRpYzogZmFsc2UgfSlcbiAgc2Vjb25kUmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICBlbmFibGVkQ29sdW1ucyA9IDA7XG5cbiAgLy8g55So5LqO5o6n5Yi25Yid5qyh5rua5Yqo77yM5piv5ZCm5bGV56S65rua5Yqo5Yqo55S75pWI5p6cXG4gIGZpcnN0U2Nyb2xsZWQgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgb3ZlcnJpZGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZikge1xuICAgIHN1cGVyKGNkcik7XG4gICAgdGhpcy5tb2RlbCQuc3Vic2NyaWJlKF8gPT4ge1xuICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgfSk7XG4gIH1cblxuICBpc0Rpc2FibGVkKHZhbHVlOiBudW1iZXIsIHR5cGU6IFRpbWVQaWNrZXJDb250cm9sVHlwZSkge1xuICAgIGNvbnN0IGN1cnJlbnRWYWx1ZSA9IHRoaXMubW9kZWw7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICBpZiAodHlwZSA9PT0gVGltZVBpY2tlckNvbnRyb2xUeXBlLkhvdXIpIHtcbiAgICAgIHJldHVybiAodGhpcy5kaXNhYmxlSG91cnMgPyB0aGlzLmRpc2FibGVIb3VycygpIDogW10pLmluY2x1ZGVzKHZhbHVlKTtcbiAgICB9XG4gICAgaWYgKHR5cGUgPT09IFRpbWVQaWNrZXJDb250cm9sVHlwZS5NaW51dGUpIHtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIHRoaXMuZGlzYWJsZU1pbnV0ZXMgPyB0aGlzLmRpc2FibGVNaW51dGVzKGN1cnJlbnRWYWx1ZT8uaG91cigpKSA6IFtdXG4gICAgICApLmluY2x1ZGVzKHZhbHVlKTtcbiAgICB9XG4gICAgaWYgKHR5cGUgPT09IFRpbWVQaWNrZXJDb250cm9sVHlwZS5TZWNvbmQpIHtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIHRoaXMuZGlzYWJsZVNlY29uZHNcbiAgICAgICAgICA/IHRoaXMuZGlzYWJsZVNlY29uZHMoY3VycmVudFZhbHVlPy5ob3VyKCksIGN1cnJlbnRWYWx1ZT8ubWludXRlKCkpXG4gICAgICAgICAgOiBbXVxuICAgICAgKS5pbmNsdWRlcyh2YWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkNoYW5nZXMoeyBob3VyU3RlcCwgbWludXRlU3RlcCwgc2Vjb25kU3RlcCB9OiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKGhvdXJTdGVwPy5jdXJyZW50VmFsdWUgPiAwKSB7XG4gICAgICB0aGlzLkhPVVJfSVRFTV9DT05GSUcgPSBIT1VSX0lURU1TLmZpbHRlcihcbiAgICAgICAgaSA9PiBpICUgaG91clN0ZXAuY3VycmVudFZhbHVlID09PSAwLFxuICAgICAgKTtcbiAgICB9XG4gICAgaWYgKG1pbnV0ZVN0ZXA/LmN1cnJlbnRWYWx1ZSA+IDApIHtcbiAgICAgIHRoaXMuTUlOVVRFX0lURU1fQ09ORklHID0gTUlOVVRFX0lURU1TLmZpbHRlcihcbiAgICAgICAgaSA9PiBpICUgbWludXRlU3RlcC5jdXJyZW50VmFsdWUgPT09IDAsXG4gICAgICApO1xuICAgIH1cbiAgICBpZiAoc2Vjb25kU3RlcD8uY3VycmVudFZhbHVlID4gMCkge1xuICAgICAgdGhpcy5TRUNPTkRfSVRFTV9DT05GSUcgPSBTRUNPTkRfSVRFTVMuZmlsdGVyKFxuICAgICAgICBpID0+IGkgJSBzZWNvbmRTdGVwLmN1cnJlbnRWYWx1ZSA9PT0gMCxcbiAgICAgICk7XG4gICAgfVxuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgb3ZlcnJpZGUgd3JpdGVWYWx1ZSh2YWx1ZTogRGF5anMpIHtcbiAgICBzdXBlci53cml0ZVZhbHVlKHZhbHVlKTtcbiAgICB0aGlzLnN5bmNTY3JvbGxPZmZzZXQodGhpcy5maXJzdFNjcm9sbGVkID8gMTIwIDogMCwgdmFsdWUpO1xuICB9XG5cbiAgc2VsZWN0VmFsdWUodmFsdWU6IG51bWJlciwgdHlwZTogVGltZVBpY2tlckNvbnRyb2xUeXBlKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuaXNEaXNhYmxlZCh2YWx1ZSwgdHlwZSkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5maXJzdFNjcm9sbGVkID0gdHJ1ZTtcbiAgICBjb25zdCByZXN1bHQgPSB0aGlzLnN5bmNWYWx1ZSh2YWx1ZSwgdHlwZSwgdGhpcy5tb2RlbCk7XG4gICAgdGhpcy5zeW5jU2Nyb2xsT2Zmc2V0KDEyMCwgcmVzdWx0KTtcbiAgfVxuXG4gIHN5bmNWYWx1ZSh2YWx1ZTogbnVtYmVyLCB0eXBlOiBUaW1lUGlja2VyQ29udHJvbFR5cGUsIGN1cnJlbnRWYWx1ZTogRGF5anMpIHtcbiAgICBpZiAoIXR5cGUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgcmVzdWx0ID0gKFxuICAgICAgY3VycmVudFZhbHVlIHx8XG4gICAgICB1cGRhdGVEYXRlQnlUaW1lTW9kZWwoZGF5anMoKSwgeyBob3VyOiAwLCBtaW51dGU6IDAsIHNlY29uZDogMCB9KVxuICAgICkuc2V0KHR5cGUsIHZhbHVlKTtcbiAgICB0aGlzLmVtaXRNb2RlbChyZXN1bHQpO1xuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICBzeW5jU2Nyb2xsT2Zmc2V0KGR1cmF0aW9uOiBudW1iZXIsIHZhbHVlOiBEYXlqcykge1xuICAgIGNvbnN0IGVtcHR5ID0gIXZhbHVlO1xuICAgIGNvbnN0IGNvbmZpZyA9IFtcbiAgICAgIHtcbiAgICAgICAgcmVmOiB0aGlzLmhvdXJSZWYsXG4gICAgICAgIGVuYWJsZWQ6IHRoaXMuaG91ckVuYWJsZWQsXG4gICAgICAgIHN0ZXA6IHRoaXMuaG91clN0ZXAsXG4gICAgICAgIHR5cGU6ICdob3VyJyxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIHJlZjogdGhpcy5taW51dGVSZWYsXG4gICAgICAgIGVuYWJsZWQ6IHRoaXMubWludXRlRW5hYmxlZCxcbiAgICAgICAgc3RlcDogdGhpcy5taW51dGVTdGVwLFxuICAgICAgICB0eXBlOiAnbWludXRlJyxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIHJlZjogdGhpcy5zZWNvbmRSZWYsXG4gICAgICAgIGVuYWJsZWQ6IHRoaXMuc2Vjb25kRW5hYmxlZCxcbiAgICAgICAgc3RlcDogdGhpcy5zZWNvbmRTdGVwLFxuICAgICAgICB0eXBlOiAnc2Vjb25kJyxcbiAgICAgIH0sXG4gICAgXSBhcyBjb25zdDtcblxuICAgIGNvbmZpZy5mb3JFYWNoKGNmID0+IHtcbiAgICAgIGlmIChjZi5lbmFibGVkICYmIGNmLnJlZikge1xuICAgICAgICB0aGlzLnNjcm9sbEJ5VmFsdWUoXG4gICAgICAgICAgY2YucmVmLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICAgZW1wdHkgPyAwIDogdmFsdWUuZ2V0KGNmLnR5cGUpLFxuICAgICAgICAgIGNmLnN0ZXAsXG4gICAgICAgICAgZW1wdHkgPyAwIDogZHVyYXRpb24sXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgaWYgKCFlbXB0eSkge1xuICAgICAgdGhpcy5maXJzdFNjcm9sbGVkID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHNjcm9sbEJ5VmFsdWUoXG4gICAgZWxlbWVudDogSFRNTEVsZW1lbnQsXG4gICAgdmFsdWU6IG51bWJlcixcbiAgICBkaXZpZGVCeTogbnVtYmVyLFxuICAgIGR1cmF0aW9uOiBudW1iZXIsXG4gICkge1xuICAgIGNvbnN0IHRhcmdldE9mZnNldCA9ICh2YWx1ZSAqIENPTlRST0xfSVRFTV9IRUlHSFQpIC8gZGl2aWRlQnk7XG4gICAgY29uc3QgY3VycmVudFRvcCA9IGVsZW1lbnQuc2Nyb2xsVG9wO1xuICAgIGlmIChjdXJyZW50VG9wID09PSB0YXJnZXRPZmZzZXQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKGR1cmF0aW9uKSB7XG4gICAgICBjb25zdCBkaWZmZXJlbmNlID0gdGFyZ2V0T2Zmc2V0IC0gY3VycmVudFRvcDtcbiAgICAgIC8vIOavj+S4qnRpY2vmu5rliqjot53nprtcbiAgICAgIGNvbnN0IHBlclRpY2sgPSAoZGlmZmVyZW5jZSAvIGR1cmF0aW9uKSAqIDEwO1xuXG4gICAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgICBlbGVtZW50LnNjcm9sbFRvcCA9IGN1cnJlbnRUb3AgKyBwZXJUaWNrO1xuICAgICAgICBpZiAoZWxlbWVudC5zY3JvbGxUb3AgPT09IHRhcmdldE9mZnNldCkge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnNjcm9sbEJ5VmFsdWUoZWxlbWVudCwgdmFsdWUsIGRpdmlkZUJ5LCBkdXJhdGlvbiAtIDEwKTtcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICBlbGVtZW50LnNjcm9sbFRvcCA9IHRhcmdldE9mZnNldDtcbiAgICB9XG4gIH1cblxuICBtYXRjaFZhbHVlKFxuICAgIHZhbHVlOiBudW1iZXIsXG4gICAgdHlwZTogVGltZVBpY2tlckNvbnRyb2xUeXBlLFxuICAgIGN1cnJEYXRlOiBEYXlqcyxcbiAgKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGN1cnJEYXRlPy5nZXQodHlwZSkgPT09IHZhbHVlO1xuICB9XG5cbiAgZ2V0Q29udHJvbFR5cGVDb25maWcodHlwZTogVGltZVBpY2tlckNvbnRyb2xUeXBlKTogbnVtYmVyW10ge1xuICAgIHJldHVybiB7XG4gICAgICBbVGltZVBpY2tlckNvbnRyb2xUeXBlLkhvdXJdOiB0aGlzLkhPVVJfSVRFTV9DT05GSUcsXG4gICAgICBbVGltZVBpY2tlckNvbnRyb2xUeXBlLk1pbnV0ZV06IHRoaXMuTUlOVVRFX0lURU1fQ09ORklHLFxuICAgICAgW1RpbWVQaWNrZXJDb250cm9sVHlwZS5TZWNvbmRdOiB0aGlzLlNFQ09ORF9JVEVNX0NPTkZJRyxcbiAgICB9W3R5cGVdO1xuICB9XG5cbiAgc2VsZWN0Tm93KCkge1xuICAgIHRoaXMuZmlyc3RTY3JvbGxlZCA9IHRydWU7XG4gICAgdGhpcy5lbWl0TW9kZWwoZGF5anMoKSk7XG4gIH1cblxuICB0cmFja0J5KF9pbmRleDogbnVtYmVyLCBjb250ZW50OiBudW1iZXIpIHtcbiAgICByZXR1cm4gY29udGVudDtcbiAgfVxufVxuIiwiPGRpdlxuICAqbmdJZj1cImVuYWJsZWRDb2x1bW5zXCJcbiAgW2NsYXNzXT1cImJlbS5ibG9jaygpXCJcbiAgW3N0eWxlLndpZHRoLnB4XT1cInRvdGFsV2lkdGhcIlxuPlxuICA8ZGl2IFtjbGFzc109XCJiZW0uZWxlbWVudCgnY29udGVudCcpXCI+XG4gICAgPGRpdlxuICAgICAgW2NsYXNzXT1cImJlbS5lbGVtZW50KCdjb2x1bW4nKVwiXG4gICAgICAjaG91clJlZlxuICAgICAgKm5nSWY9XCJob3VyRW5hYmxlZFwiXG4gICAgPlxuICAgICAgPHVsPlxuICAgICAgICA8bGlcbiAgICAgICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBnZXRDb250cm9sVHlwZUNvbmZpZyhUaW1lUGlja2VyQ29udHJvbFR5cGUuSG91cilcIlxuICAgICAgICAgIFtjbGFzc109XCJiZW0uZWxlbWVudCgnY2VsbCcpXCJcbiAgICAgICAgICBbc3R5bGUuaGVpZ2h0LnB4XT1cIkNPTlRST0xfSVRFTV9IRUlHSFRcIlxuICAgICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAgIGRpc2FibGVkOiBpc0Rpc2FibGVkKGl0ZW0sIFRpbWVQaWNrZXJDb250cm9sVHlwZS5Ib3VyKSxcbiAgICAgICAgICAgIHNlbGVjdGVkOiBtYXRjaFZhbHVlKGl0ZW0sIFRpbWVQaWNrZXJDb250cm9sVHlwZS5Ib3VyLCBtb2RlbClcbiAgICAgICAgICB9XCJcbiAgICAgICAgICAoY2xpY2spPVwic2VsZWN0VmFsdWUoaXRlbSwgVGltZVBpY2tlckNvbnRyb2xUeXBlLkhvdXIpXCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7IGl0ZW0gfCBudW1iZXIgOiAnMi4wLTAnIH19XG4gICAgICAgIDwvbGk+XG4gICAgICA8L3VsPlxuICAgICAgPGRpdiBbY2xhc3NdPVwiYmVtLmVsZW1lbnQoJ2NvbHVtbi1zdHJ1dCcpXCI+PC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdlxuICAgICAgW2NsYXNzXT1cImJlbS5lbGVtZW50KCdjb2x1bW4nKVwiXG4gICAgICAjbWludXRlUmVmXG4gICAgICAqbmdJZj1cIm1pbnV0ZUVuYWJsZWRcIlxuICAgID5cbiAgICAgIDx1bD5cbiAgICAgICAgPGxpXG4gICAgICAgICAgKm5nRm9yPVwiXG4gICAgICAgICAgICBsZXQgaXRlbSBvZiBnZXRDb250cm9sVHlwZUNvbmZpZyhUaW1lUGlja2VyQ29udHJvbFR5cGUuTWludXRlKTtcbiAgICAgICAgICAgIHRyYWNrQnk6IHRyYWNrQnlcbiAgICAgICAgICBcIlxuICAgICAgICAgIFtjbGFzc109XCJiZW0uZWxlbWVudCgnY2VsbCcpXCJcbiAgICAgICAgICBbc3R5bGUuaGVpZ2h0LnB4XT1cIkNPTlRST0xfSVRFTV9IRUlHSFRcIlxuICAgICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAgIGRpc2FibGVkOiBpc0Rpc2FibGVkKGl0ZW0sIFRpbWVQaWNrZXJDb250cm9sVHlwZS5NaW51dGUpLFxuICAgICAgICAgICAgc2VsZWN0ZWQ6IG1hdGNoVmFsdWUoaXRlbSwgVGltZVBpY2tlckNvbnRyb2xUeXBlLk1pbnV0ZSwgbW9kZWwpXG4gICAgICAgICAgfVwiXG4gICAgICAgICAgKGNsaWNrKT1cInNlbGVjdFZhbHVlKGl0ZW0sIFRpbWVQaWNrZXJDb250cm9sVHlwZS5NaW51dGUpXCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7IGl0ZW0gfCBudW1iZXIgOiAnMi4wLTAnIH19XG4gICAgICAgIDwvbGk+XG4gICAgICA8L3VsPlxuICAgICAgPGRpdiBbY2xhc3NdPVwiYmVtLmVsZW1lbnQoJ2NvbHVtbi1zdHJ1dCcpXCI+PC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdlxuICAgICAgW2NsYXNzXT1cImJlbS5lbGVtZW50KCdjb2x1bW4nKVwiXG4gICAgICAjc2Vjb25kUmVmXG4gICAgICAqbmdJZj1cInNlY29uZEVuYWJsZWRcIlxuICAgID5cbiAgICAgIDx1bD5cbiAgICAgICAgPGxpXG4gICAgICAgICAgKm5nRm9yPVwiXG4gICAgICAgICAgICBsZXQgaXRlbSBvZiBnZXRDb250cm9sVHlwZUNvbmZpZyhUaW1lUGlja2VyQ29udHJvbFR5cGUuU2Vjb25kKVxuICAgICAgICAgIFwiXG4gICAgICAgICAgW2NsYXNzXT1cImJlbS5lbGVtZW50KCdjZWxsJylcIlxuICAgICAgICAgIFtzdHlsZS5oZWlnaHQucHhdPVwiQ09OVFJPTF9JVEVNX0hFSUdIVFwiXG4gICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgZGlzYWJsZWQ6IGlzRGlzYWJsZWQoaXRlbSwgVGltZVBpY2tlckNvbnRyb2xUeXBlLlNlY29uZCksXG4gICAgICAgICAgICBzZWxlY3RlZDogbWF0Y2hWYWx1ZShpdGVtLCBUaW1lUGlja2VyQ29udHJvbFR5cGUuU2Vjb25kLCBtb2RlbClcbiAgICAgICAgICB9XCJcbiAgICAgICAgICAoY2xpY2spPVwic2VsZWN0VmFsdWUoaXRlbSwgVGltZVBpY2tlckNvbnRyb2xUeXBlLlNlY29uZClcIlxuICAgICAgICA+XG4gICAgICAgICAge3sgaXRlbSB8IG51bWJlciA6ICcyLjAtMCcgfX1cbiAgICAgICAgPC9saT5cbiAgICAgIDwvdWw+XG4gICAgICA8ZGl2IFtjbGFzc109XCJiZW0uZWxlbWVudCgnY29sdW1uLXN0cnV0JylcIj48L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFmb290ZXJUZW1wbGF0ZTsgZWxzZSBjdXN0b21Gb290ZXJcIj5cbiAgICA8ZGl2IFtjbGFzc109XCJiZW0uZWxlbWVudCgnZm9vdGVyJylcIj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgYXVpLWJ1dHRvbj1cImlubGluZVwiXG4gICAgICAgIChjbGljayk9XCJzZWxlY3ROb3coKVwiXG4gICAgICAgIFtzaXplXT1cIkNvbXBvbmVudFNpemUuU21hbGxcIlxuICAgICAgPlxuICAgICAgICB7eyAnbm93JyB8IGF1aUkxOG4gfX1cbiAgICAgIDwvYnV0dG9uPlxuICAgICAgPGJ1dHRvblxuICAgICAgICBhdWktYnV0dG9uPVwicHJpbWFyeVwiXG4gICAgICAgIFtzaXplXT1cIkNvbXBvbmVudFNpemUuU21hbGxcIlxuICAgICAgICAoY2xpY2spPVwiJGV2ZW50LnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbigpOyBjb25maXJtLm5leHQoKVwiXG4gICAgICA+XG4gICAgICAgIHt7ICdjb25maXJtJyB8IGF1aUkxOG4gfX1cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L25nLWNvbnRhaW5lcj5cbiAgPG5nLXRlbXBsYXRlICNjdXN0b21Gb290ZXI+XG4gICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJmb290ZXJUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuICA8L25nLXRlbXBsYXRlPlxuPC9kaXY+XG4iXX0=
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { isNumberValue } from '../utils';
|
|
1
|
+
import { isNumberValue } from '../internal/utils';
|
|
2
2
|
export var TimePickerControlType;
|
|
3
3
|
(function (TimePickerControlType) {
|
|
4
4
|
TimePickerControlType["Hour"] = "hour";
|
|
@@ -10,4 +10,4 @@ export function isTimePickerModel(item) {
|
|
|
10
10
|
isNumberValue(item?.minute) ||
|
|
11
11
|
isNumberValue(item?.hour));
|
|
12
12
|
}
|
|
13
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS1waWNrZXIudHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90aW1lLXBpY2tlci90aW1lLXBpY2tlci50eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUVsRCxNQUFNLENBQU4sSUFBWSxxQkFJWDtBQUpELFdBQVkscUJBQXFCO0lBQy9CLHNDQUFhLENBQUE7SUFDYiwwQ0FBaUIsQ0FBQTtJQUNqQiwwQ0FBaUIsQ0FBQTtBQUNuQixDQUFDLEVBSlcscUJBQXFCLEtBQXJCLHFCQUFxQixRQUloQztBQVVELE1BQU0sVUFBVSxpQkFBaUIsQ0FBQyxJQUFTO0lBQ3pDLE9BQU8sQ0FDTCxhQUFhLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQztRQUMzQixhQUFhLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQztRQUMzQixhQUFhLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUMxQixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbmZpZ1R5cGUgfSBmcm9tICdkYXlqcyc7XG5cbmltcG9ydCB7IGlzTnVtYmVyVmFsdWUgfSBmcm9tICcuLi9pbnRlcm5hbC91dGlscyc7XG5cbmV4cG9ydCBlbnVtIFRpbWVQaWNrZXJDb250cm9sVHlwZSB7XG4gIEhvdXIgPSAnaG91cicsXG4gIE1pbnV0ZSA9ICdtaW51dGUnLFxuICBTZWNvbmQgPSAnc2Vjb25kJyxcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUaW1lUGlja2VyTW9kZWwge1xuICBob3VyPzogbnVtYmVyO1xuICBtaW51dGU/OiBudW1iZXI7XG4gIHNlY29uZD86IG51bWJlcjtcbn1cblxuZXhwb3J0IHR5cGUgVGltZVBpY2tlckRhdGFMaWtlID0gQ29uZmlnVHlwZSB8IFRpbWVQaWNrZXJNb2RlbDtcblxuZXhwb3J0IGZ1bmN0aW9uIGlzVGltZVBpY2tlck1vZGVsKGl0ZW06IGFueSk6IGl0ZW0gaXMgVGltZVBpY2tlck1vZGVsIHtcbiAgcmV0dXJuIChcbiAgICBpc051bWJlclZhbHVlKGl0ZW0/LnNlY29uZCkgfHxcbiAgICBpc051bWJlclZhbHVlKGl0ZW0/Lm1pbnV0ZSkgfHxcbiAgICBpc051bWJlclZhbHVlKGl0ZW0/LmhvdXIpXG4gICk7XG59XG4iXX0=
|
|
@@ -2,7 +2,7 @@ import { OverlayConfig, } from '@angular/cdk/overlay';
|
|
|
2
2
|
import { ComponentPortal } from '@angular/cdk/portal';
|
|
3
3
|
import { Directive, EventEmitter, } from '@angular/core';
|
|
4
4
|
import { ReplaySubject, merge, debounceTime, takeUntil, first, filter, Subject, delay, } from 'rxjs';
|
|
5
|
-
import { sleep } from '../utils';
|
|
5
|
+
import { sleep } from '../internal/utils';
|
|
6
6
|
import { TooltipComponent } from './tooltip.component';
|
|
7
7
|
import { TooltipTrigger } from './tooltip.types';
|
|
8
8
|
import { getOriginPosition, getOverlayPosition } from './utils';
|
|
@@ -333,4 +333,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.3", ngImpor
|
|
|
333
333
|
standalone: true,
|
|
334
334
|
}]
|
|
335
335
|
}], ctorParameters: function () { return [{ type: i1.Overlay }, { type: i0.ViewContainerRef }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }]; } });
|
|
336
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS10b29sdGlwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Rvb2x0aXAvYmFzZS10b29sdGlwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFHTCxhQUFhLEdBRWQsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQUUsZUFBZSxFQUFpQixNQUFNLHFCQUFxQixDQUFDO0FBQ3JFLE9BQU8sRUFHTCxTQUFTLEVBRVQsWUFBWSxHQU1iLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDTCxhQUFhLEVBQ2IsS0FBSyxFQUNMLFlBQVksRUFDWixTQUFTLEVBQ1QsS0FBSyxFQUNMLE1BQU0sRUFDTixPQUFPLEVBQ1AsS0FBSyxHQUNOLE1BQU0sTUFBTSxDQUFDO0FBRWQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUdqQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsY0FBYyxFQUFlLE1BQU0saUJBQWlCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGtCQUFrQixFQUFFLE1BQU0sU0FBUyxDQUFDOzs7QUFjaEUsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLEVBQUUsQ0FBQztBQUNoQyxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsR0FBRyxDQUFDO0FBZ0JoQyxNQUFNLE9BQU8sV0FBVztJQTZHVjtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUEvR1osSUFBSSxPQUFPLENBQUMsS0FBZ0M7UUFDMUMsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7UUFDdEIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVELElBQUksT0FBTztRQUNULE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBRUQsSUFBSSxPQUFPLENBQUMsS0FB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RVMsT0FBTztRQUNmLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRVMsTUFBTTtRQUNkLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNkLENBQUM7dUdBamFVLFdBQVc7MkZBQVgsV0FBVzs7MkZBQVgsV0FBVztrQkFIdkIsU0FBUzttQkFBQztvQkFDVCxVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb25uZWN0ZWRQb3NpdGlvbixcbiAgT3ZlcmxheSxcbiAgT3ZlcmxheUNvbmZpZyxcbiAgT3ZlcmxheVJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgQ29tcG9uZW50UG9ydGFsLCBDb21wb25lbnRUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XG5pbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgRGlyZWN0aXZlLFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIE5nWm9uZSxcbiAgT25EZXN0cm95LFxuICBSZW5kZXJlcjIsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3Q29udGFpbmVyUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIFJlcGxheVN1YmplY3QsXG4gIG1lcmdlLFxuICBkZWJvdW5jZVRpbWUsXG4gIHRha2VVbnRpbCxcbiAgZmlyc3QsXG4gIGZpbHRlcixcbiAgU3ViamVjdCxcbiAgZGVsYXksXG59IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBzbGVlcCB9IGZyb20gJy4uL3V0aWxzJztcblxuaW1wb3J0IHsgQW5pbWF0aW9uVHlwZSB9IGZyb20gJy4vYW5pbWF0aW9ucyc7XG5pbXBvcnQgeyBUb29sdGlwQ29tcG9uZW50IH0gZnJvbSAnLi90b29sdGlwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUb29sdGlwVHJpZ2dlciwgVG9vbHRpcFR5cGUgfSBmcm9tICcuL3Rvb2x0aXAudHlwZXMnO1xuaW1wb3J0IHsgZ2V0T3JpZ2luUG9zaXRpb24sIGdldE92ZXJsYXlQb3NpdGlvbiB9IGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFRvb2x0aXBJbnRlcmZhY2Uge1xuICBjb250ZW50OiBzdHJpbmcgfCBUZW1wbGF0ZVJlZjxhbnk+O1xuICBjb250ZXh0OiBhbnk7XG4gIGNsYXNzOiBzdHJpbmc7XG4gIHR5cGU6IFRvb2x0aXBUeXBlO1xuICBwb3NpdGlvbjogc3RyaW5nO1xuICB0cmlnZ2VyOiBUb29sdGlwVHJpZ2dlcjtcbiAgZGlzYWJsZWQ6IGJvb2xlYW47XG4gIGhpZGVPbkNsaWNrOiBib29sZWFuO1xuICB2aXNpYmxlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj47XG59XG5cbmV4cG9ydCBjb25zdCBESVNQTEFZX0RFTEFZID0gNTA7XG5leHBvcnQgY29uc3QgSElEREVOX0RFTEFZID0gMTUwO1xuXG4vLyBAdHMtaWdub3JlXG5pbnRlcmZhY2UgSGFja092ZXJsYXlSZWYgZXh0ZW5kcyBPdmVybGF5UmVmIHtcbiAgX3Bvc2l0aW9uU3RyYXRlZ3k6IHtcbiAgICBfaGFzRXhhY3RQb3NpdGlvbjogKCkgPT4gYm9vbGVhbjtcbiAgICBfcGFuZTogSFRNTEVsZW1lbnQ7XG4gICAgX2xhc3RQb3NpdGlvbjogQ29ubmVjdGVkUG9zaXRpb24gfCBudWxsO1xuICAgIF9ib3VuZGluZ0JveDogSFRNTEVsZW1lbnQ7XG4gICAgX3RyYW5zZm9ybU9yaWdpblNlbGVjdG9yOiBzdHJpbmc7XG4gIH07XG59XG5cbkBEaXJlY3RpdmUoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBCYXNlVG9vbHRpcDxUID0gYW55PlxuICBpbXBsZW1lbnRzIFRvb2x0aXBJbnRlcmZhY2UsIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveVxue1xuICBzZXQgY29udGVudCh2YWx1ZTogc3RyaW5nIHwgVGVtcGxhdGVSZWY8YW55Pikge1xuICAgIHRoaXMuX2NvbnRlbnQgPSB2YWx1ZTtcbiAgICB0aGlzLmlucHV0Q29udGVudCQkLm5leHQodmFsdWUpO1xuICB9XG5cbiAgZ2V0IGNvbnRlbnQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbnRlbnQ7XG4gIH1cblxuICBzZXQgY29udGV4dCh2YWx1ZTogVCkge1xuICAgIHRoaXMuX2NvbnRleHQgPSB2YWx1ZTtcbiAgICB0aGlzLmlucHV0Q29udGV4dCQkLm5leHQodmFsdWUpO1xuICB9XG5cbiAgZ2V0IGNvbnRleHQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbnRleHQ7XG4gIH1cblxuICBzZXQgY2xhc3ModmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMuaW5wdXRDbGFzcyQkLm5leHQodmFsdWUpO1xuICB9XG5cbiAgc2V0IHR5cGUodmFsdWU6IFRvb2x0aXBUeXBlKSB7XG4gICAgaWYgKCF2YWx1ZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmlucHV0VHlwZSQkLm5leHQodmFsdWUpO1xuICB9XG5cbiAgc2V0IHBvc2l0aW9uKHZhbHVlOiBzdHJpbmcpIHtcbiAgICBpZiAoIXZhbHVlIHx8IHZhbHVlID09PSB0aGlzLl9wb3NpdGlvbikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLl9wb3NpdGlvbiA9IHZhbHVlO1xuICAgIHRoaXMuaW5wdXRQb3NpdGlvbiQkLm5leHQodmFsdWUpO1xuICAgIHRoaXMuX2Rpc3Bvc2VUb29sdGlwKCk7XG4gIH1cblxuICBnZXQgcG9zaXRpb24oKSB7XG4gICAgcmV0dXJuIHRoaXMuX3Bvc2l0aW9uO1xuICB9XG5cbiAgc2V0IHRyaWdnZXIodmFsdWUpIHtcbiAgICBpZiAoIXZhbHVlIHx8IHZhbHVlID09PSB0aGlzLl90cmlnZ2VyKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuX3RyaWdnZXIgPSB2YWx1ZTtcbiAgICB0aGlzLl9kaXNwb3NlVG9vbHRpcCgpO1xuICAgIHRoaXMubmdab25lLnJ1bih0aGlzLnVwZGF0ZUxpc3RlbmVycywgdGhpcyk7XG4gIH1cblxuICBnZXQgdHJpZ2dlcigpIHtcbiAgICByZXR1cm4gdGhpcy5fdHJpZ2dlcjtcbiAgfVxuXG4gIHNldCBkaXNhYmxlZCh2YWx1ZSkge1xuICAgIHRoaXMuX2Rpc2FibGVkID0gdmFsdWU7XG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICB0aGlzLl9kaXNwb3NlVG9vbHRpcCgpO1xuICAgIH1cbiAgfVxuXG4gIGdldCBkaXNhYmxlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5fZGlzYWJsZWQ7XG4gIH1cblxuICBoaWRlT25DbGljayA9IGZhbHNlO1xuICBhbmltYXRpb25UeXBlOiBBbmltYXRpb25UeXBlID0gJ25vbmUnO1xuXG4gIHZpc2libGVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgb3ZlcmxheVJlZjogT3ZlcmxheVJlZjtcbiAgcHJvdGVjdGVkIGNvbXBvbmVudENsYXNzOiBDb21wb25lbnRUeXBlPGFueT4gPSBUb29sdGlwQ29tcG9uZW50O1xuICBwcm90ZWN0ZWQgY29tcG9uZW50SW5zOiBUb29sdGlwQ29tcG9uZW50O1xuICBwcm90ZWN0ZWQgaG9zdEhvdmVyZWQgPSBmYWxzZTtcbiAgcHJvdGVjdGVkIHRvb2x0aXBIb3ZlcmVkID0gZmFsc2U7XG4gIHByb3RlY3RlZCBsaXN0ZW5lcnM6IEFycmF5PCgpID0+IHZvaWQ+ID0gW107XG4gIHByb3RlY3RlZCB1bmxpc3RlbkJvZHk6ICgpID0+IHZvaWQ7XG5cbiAgcHJvdGVjdGVkIGlucHV0Q29udGVudCQkID0gbmV3IFJlcGxheVN1YmplY3Q8c3RyaW5nIHwgVGVtcGxhdGVSZWY8YW55Pj4oMSk7XG4gIHByb3RlY3RlZCBpbnB1dFR5cGUkJCA9IG5ldyBSZXBsYXlTdWJqZWN0PFRvb2x0aXBUeXBlPigxKTtcbiAgcHJvdGVjdGVkIGlucHV0UG9zaXRpb24kJCA9IG5ldyBSZXBsYXlTdWJqZWN0PHN0cmluZz4oMSk7XG4gIHByb3RlY3RlZCBpbnB1dENsYXNzJCQgPSBuZXcgUmVwbGF5U3ViamVjdDxzdHJpbmc+KDEpO1xuICBwcm90ZWN0ZWQgaW5wdXRDb250ZXh0JCQgPSBuZXcgUmVwbGF5U3ViamVjdDxhbnk+KDEpO1xuXG4gIHByb3RlY3RlZCB0b29sdGlwQ2hhbmdlZCQgPSBtZXJnZShcbiAgICB0aGlzLmlucHV0Q29udGVudCQkLFxuICAgIHRoaXMuaW5wdXRUeXBlJCQsXG4gICAgdGhpcy5pbnB1dFBvc2l0aW9uJCQsXG4gICAgdGhpcy5pbnB1dENsYXNzJCQsXG4gICAgdGhpcy5pbnB1dENvbnRleHQkJCxcbiAgKTtcblxuICBwcm90ZWN0ZWQgZGVzdHJveSQgPSBuZXcgU3ViamVjdCgpO1xuXG4gIHByb3RlY3RlZCBfcG9zaXRpb24gPSAndG9wJztcbiAgcHJvdGVjdGVkIF90cmlnZ2VyID0gVG9vbHRpcFRyaWdnZXIuSG92ZXI7XG4gIHByb3RlY3RlZCBfZGlzYWJsZWQgPSBmYWxzZTtcbiAgcHJvdGVjdGVkIF9jb250ZXh0OiBUO1xuICBwcm90ZWN0ZWQgX2NvbnRlbnQ6IHN0cmluZyB8IFRlbXBsYXRlUmVmPHVua25vd24+O1xuXG4gIGdldCBpc0NyZWF0ZWQoKSB7XG4gICAgcmV0dXJuICEhdGhpcy5vdmVybGF5UmVmO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIG92ZXJsYXk6IE92ZXJsYXksXG4gICAgcHJvdGVjdGVkIHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsXG4gICAgcHJvdGVjdGVkIGVsUmVmOiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+LFxuICAgIHByb3RlY3RlZCByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIHByb3RlY3RlZCBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByb3RlY3RlZCBuZ1pvbmU6IE5nWm9uZSxcbiAgKSB7XG4gICAgdGhpcy50b29sdGlwQ2hhbmdlZCQucGlwZShkZWJvdW5jZVRpbWUoMCkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLnVwZGF0ZVBvc2l0aW9uKCk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVUcmFuc2Zvcm1PcmlnaW4oKSB7XG4gICAgLy8gQHRzLWlnbm9yZVxuICAgIGNvbnN0IG92ZXJsYXlSZWYgPSB0aGlzLm92ZXJsYXlSZWYgYXMgSGFja092ZXJsYXlSZWY7XG4gICAgY29uc3QgcG9zaXRpb25TdHJhdGVneSA9IG92ZXJsYXlSZWYuX3Bvc2l0aW9uU3RyYXRlZ3k7XG4gICAgY29uc3QgaGFzRXhhY3RQb3NpdGlvbiA9IHBvc2l0aW9uU3RyYXRlZ3kuX2hhc0V4YWN0UG9zaXRpb24oKTsgLy8g5piv5LiN5piv5bqU55So5LqG57K+56Gu5a6a5L2NXG4gICAgaWYgKCFoYXNFeGFjdFBvc2l0aW9uKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIC8vIOWmguaenOaYr+eyvuehruWumuS9je+8jOS5n+WwseaYr+mihOiuvuS9jee9ruepuumXtOS4jei2s+S7peaJv+i9veW8ueWHuuWFg+e0oO+8jOiiq+mHjeaWsOaMh+WumuaWsOeahOW8ueWHuuS9jee9rlxuICAgIGNvbnN0IHBhbmVSZWN0ID0gcG9zaXRpb25TdHJhdGVneS5fcGFuZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTsgLy8g5by55Ye6cGFuZeWFg+e0oFJlY3RcbiAgICBjb25zdCB0cmlnZ2VyRWxSZWFjdCA9IHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTsgLy8g6Kem5Y+R54K5UmVjdFxuXG4gICAgY29uc3QgcG9zaXRpb24gPSBwb3NpdGlvblN0cmF0ZWd5Ll9sYXN0UG9zaXRpb247IC8vIOW9k+WJjeetlueVpeS9jee9ru+8iOiwg+aVtOWQjueahOacgOS9s+eahO+8iVxuICAgIGxldCB4T3JpZ2luOiAnbGVmdCcgfCAncmlnaHQnIHwgJ2NlbnRlcic7XG4gICAgY29uc3QgeU9yaWdpbjogJ3RvcCcgfCAnYm90dG9tJyB8ICdjZW50ZXInID0gcG9zaXRpb24ub3ZlcmxheVk7XG4gICAgaWYgKHBvc2l0aW9uLm92ZXJsYXlYID09PSAnY2VudGVyJykge1xuICAgICAgeE9yaWdpbiA9ICdjZW50ZXInO1xuICAgIH0gZWxzZSB7XG4gICAgICB4T3JpZ2luID0gcG9zaXRpb24ub3ZlcmxheVggPT09ICdzdGFydCcgPyAnbGVmdCcgOiAncmlnaHQnO1xuICAgIH1cblxuICAgIGNvbnN0IG9yaWdpbnM6IHN0cmluZ1tdID0gW3hPcmlnaW4sIHlPcmlnaW5dO1xuICAgIGlmIChcbiAgICAgIHhPcmlnaW4gPT09ICdjZW50ZXInIHx8XG4gICAgICAoeE9yaWdpbiA9PT0gJ2xlZnQnICYmXG4gICAgICAgICFbdHJpZ2dlckVsUmVhY3QucmlnaHQsIHRyaWdnZXJFbFJlYWN0LmxlZnRdLmluY2x1ZGVzKHBhbmVSZWN0LmxlZnQpKSB8fFxuICAgICAgKHhPcmlnaW4gPT09ICdyaWdodCcgJiZcbiAgICAgICAgIVt0cmlnZ2VyRWxSZWFjdC5yaWdodCwgdHJpZ2dlckVsUmVhY3QubGVmdF0uaW5jbHVkZXMocGFuZVJlY3QucmlnaHQpKVxuICAgICkge1xuICAgICAgY29uc3Qgb3JpZ2luTGVmdCA9XG4gICAgICAgIHRyaWdnZXJFbFJlYWN0LmxlZnQgLSBwYW5lUmVjdC5sZWZ0ICsgdHJpZ2dlckVsUmVhY3Qud2lkdGggLyAyO1xuICAgICAgb3JpZ2luc1swXSA9IE1hdGgubWluKG9yaWdpbkxlZnQsIHBhbmVSZWN0LndpZHRoKSArICdweCc7XG4gICAgfVxuICAgIGlmIChcbiAgICAgIHlPcmlnaW4gPT09ICdjZW50ZXInIHx8XG4gICAgICAoeU9yaWdpbiA9PT0gJ3RvcCcgJiZcbiAgICAgICAgIVt0cmlnZ2VyRWxSZWFjdC5ib3R0b20sIHRyaWdnZXJFbFJlYWN0LnRvcF0uaW5jbHVkZXMocGFuZVJlY3QudG9wKSkgfHwgLy8g5L2N572u5rKh5pyJ6KKr5a6M5YWo6KKr6aKg5YCS55qEXG4gICAgICAoeU9yaWdpbiA9PT0gJ2JvdHRvbScgJiZcbiAgICAgICAgIVt0cmlnZ2VyRWxSZWFjdC5ib3R0b20sIHRyaWdnZXJFbFJlYWN0LnRvcF0uaW5jbHVkZXMocGFuZVJlY3QuYm90dG9tKSkgLy8g5L2N572u5rKh5pyJ6KKr5a6M5YWo6KKr6aKg5YCS55qEXG4gICAgKSB7XG4gICAgICBjb25zdCBvcmlnaW5Ub3AgPVxuICAgICAgICB0cmlnZ2VyRWxSZWFjdC50b3AgLSBwYW5lUmVjdC50b3AgKyB0cmlnZ2VyRWxSZWFjdC5oZWlnaHQgLyAyO1xuICAgICAgb3JpZ2luc1sxXSA9IE1hdGgubWluKG9yaWdpblRvcCwgcGFuZVJlY3QuaGVpZ2h0KSArICdweCc7XG4gICAgfVxuICAgIGNvbnN0IGFuaUVscyA9IHBvc2l0aW9uU3RyYXRlZ3kuX2JvdW5kaW5nQm94LnF1ZXJ5U2VsZWN0b3JBbGw8SFRNTEVsZW1lbnQ+KFxuICAgICAgcG9zaXRpb25TdHJhdGVneS5fdHJhbnNmb3JtT3JpZ2luU2VsZWN0b3IsXG4gICAgKTtcbiAgICBBcnJheS5mcm9tKGFuaUVscykuZm9yRWFjaChlbCA9PiB7XG4gICAgICBlbC5zdHlsZS50cmFuc2Zvcm1PcmlnaW4gPSBvcmlnaW5zLmpvaW4oJyAnKTtcbiAgICB9KTtcbiAgfVxuXG4gIF9jcmVhdGVUb29sdGlwKCkge1xuICAgIGlmICh0aGlzLmRpc2FibGVkIHx8IHRoaXMuaXNDcmVhdGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuX2Rpc3Bvc2VUb29sdGlwKCk7XG4gICAgdGhpcy5vdmVybGF5UmVmID0gdGhpcy5jcmVhdGVPdmVybGF5KCk7XG4gICAgY29uc3QgcG9ydGFsID0gbmV3IENvbXBvbmVudFBvcnRhbChcbiAgICAgIHRoaXMuY29tcG9uZW50Q2xhc3MsXG4gICAgICB0aGlzLnZpZXdDb250YWluZXJSZWYsXG4gICAgKTtcbiAgICB0aGlzLmNvbXBvbmVudElucyA9IHRoaXMub3ZlcmxheVJlZi5hdHRhY2gocG9ydGFsKS5pbnN0YW5jZTtcbiAgICB0aGlzLmNvbXBvbmVudElucy5zZXR1cElucHV0cyh7XG4gICAgICBpbnB1dENsYXNzJDogdGhpcy5pbnB1dENsYXNzJCQuYXNPYnNlcnZhYmxlKCksXG4gICAgICBpbnB1dENvbnRlbnQkOiB0aGlzLmlucHV0Q29udGVudCQkLmFzT2JzZXJ2YWJsZSgpLFxuICAgICAgaW5wdXRDb250ZXh0JDogdGhpcy5pbnB1dENvbnRleHQkJC5hc09ic2VydmFibGUoKSxcbiAgICAgIGlucHV0UG9zaXRpb24kOiB0aGlzLmlucHV0UG9zaXRpb24kJC5hc09ic2VydmFibGUoKSxcbiAgICAgIGlucHV0VHlwZSQ6IHRoaXMuaW5wdXRUeXBlJCQuYXNPYnNlcnZhYmxlKCksXG4gICAgICBhbmltYXRpb25UeXBlOiB0aGlzLmFuaW1hdGlvblR5cGUsXG4gICAgfSk7XG4gICAgdGhpcy5jb21wb25lbnRJbnMuaGlkZSQucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLl9kaXNwb3NlVG9vbHRpcCgpO1xuICAgIH0pO1xuXG4gICAgaWYgKHRoaXMuYW5pbWF0aW9uVHlwZSAhPT0gJ25vbmUnKSB7XG4gICAgICBtZXJnZShcbiAgICAgICAgdGhpcy5jb21wb25lbnRJbnMuYmVmb3JlSGlkZSQsXG4gICAgICAgIHRoaXMuY29tcG9uZW50SW5zLmJlZm9yZVNob3ckLnBpcGUoZGVsYXkoMCkpLFxuICAgICAgKVxuICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXG4gICAgICAgIC5zdWJzY3JpYmUodGhpcy5fdXBkYXRlVHJhbnNmb3JtT3JpZ2luLmJpbmQodGhpcykpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnRyaWdnZXIgPT09IFRvb2x0aXBUcmlnZ2VyLkhvdmVyKSB7XG4gICAgICB0aGlzLmNvbXBvbmVudElucy5ob3ZlciRcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuY29tcG9uZW50SW5zLmRlc3Ryb3kkKSlcbiAgICAgICAgLnN1YnNjcmliZShob3ZlcmVkID0+IHtcbiAgICAgICAgICB0aGlzLm9uVG9vbHRpcEhvdmVyZWQoaG92ZXJlZCk7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBpZiAoXG4gICAgICB0aGlzLnRyaWdnZXIgPT09IFRvb2x0aXBUcmlnZ2VyLkhvdmVyIHx8XG4gICAgICB0aGlzLnRyaWdnZXIgPT09IFRvb2x0aXBUcmlnZ2VyLkNsaWNrXG4gICAgKSB7XG4gICAgICB0aGlzLnVubGlzdGVuQm9keSA9IHRoaXMucmVuZGVyZXIubGlzdGVuKFxuICAgICAgICAnYm9keScsXG4gICAgICAgICdjbGljaycsXG4gICAgICAgIHRoaXMub25Cb2R5Q2xpY2suYmluZCh0aGlzKSxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgdGhpcy5jb21wb25lbnRJbnM/LnNob3coKTtcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcblxuICAgIHRoaXMudmlzaWJsZUNoYW5nZS5lbWl0KHRydWUpO1xuICB9XG5cbiAgX2Rpc3Bvc2VUb29sdGlwKCkge1xuICAgIHRoaXMuY29tcG9uZW50SW5zPy5hbmltYXRpbmckJFxuICAgICAgLnBpcGUoXG4gICAgICAgIGZpbHRlcihhbmltYXRpbmcgPT4gIWFuaW1hdGluZyksXG4gICAgICAgIGZpcnN0KCksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgaWYgKHRoaXMub3ZlcmxheVJlZikge1xuICAgICAgICAgIHRoaXMub3ZlcmxheVJlZi5kaXNwb3NlKCk7XG4gICAgICAgICAgdGhpcy5vdmVybGF5UmVmID0gbnVsbDtcbiAgICAgICAgICB0aGlzLmNvbXBvbmVudElucyA9IG51bGw7XG4gICAgICAgICAgdGhpcy50b29sdGlwSG92ZXJlZCA9IGZhbHNlO1xuICAgICAgICAgIGlmICh0aGlzLnVubGlzdGVuQm9keSkge1xuICAgICAgICAgICAgdGhpcy51bmxpc3RlbkJvZHkoKTtcbiAgICAgICAgICAgIHRoaXMudW5saXN0ZW5Cb2R5ID0gbnVsbDtcbiAgICAgICAgICB9XG4gICAgICAgICAgdGhpcy52aXNpYmxlQ2hhbmdlLmVtaXQoZmFsc2UpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgfVxuXG4gIHRvZ2dsZVRvb2x0aXAoKSB7XG4gICAgaWYgKHRoaXMuaXNDcmVhdGVkKSB7XG4gICAgICB0aGlzLmhpZGUoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zaG93KCk7XG4gICAgfVxuICB9XG5cbiAgc2hvdygpIHtcbiAgICB0aGlzLl9jcmVhdGVUb29sdGlwKCk7XG4gIH1cblxuICBoaWRlKCkge1xuICAgIGlmICh0aGlzLmFuaW1hdGlvblR5cGUgPT09ICdub25lJykge1xuICAgICAgLy8g5aaC5p6c56aB55So5LqG5Yqo55S75bCx56uL5Y2z6ZSA5q+B77yM6ICM5LiN5piv562J5Yqo55S75a6M5oiQ5LqL5Lu25ZCO5omN6ZSA5q+BXG4gICAgICB0aGlzLl9kaXNwb3NlVG9vbHRpcCgpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmNvbXBvbmVudElucz8uaGlkZSgpO1xuICAgIH1cbiAgfVxuXG4gIHVwZGF0ZVBvc2l0aW9uKCkge1xuICAgIGlmICh0aGlzLm92ZXJsYXlSZWYpIHtcbiAgICAgIHRoaXMub3ZlcmxheVJlZi51cGRhdGVQb3NpdGlvbigpO1xuICAgIH1cbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBpZiAodGhpcy50cmlnZ2VyID09PSBUb29sdGlwVHJpZ2dlci5Ib3Zlcikge1xuICAgICAgdGhpcy51cGRhdGVMaXN0ZW5lcnMoKTtcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQobnVsbCk7XG4gICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xuICAgIHRoaXMuX2Rpc3Bvc2VUb29sdGlwKCk7XG4gICAgdGhpcy5jbGVhckxpc3RlbmVycygpO1xuICB9XG5cbiAgcHJvdGVjdGVkIHVwZGF0ZUxpc3RlbmVycygpIHtcbiAgICB0aGlzLmNsZWFyTGlzdGVuZXJzKCk7XG4gICAgc3dpdGNoICh0aGlzLnRyaWdnZXIpIHtcbiAgICAgIGNhc2UgVG9vbHRpcFRyaWdnZXIuQ2xpY2s6IHtcbiAgICAgICAgdGhpcy5saXN0ZW5lcnMucHVzaChcbiAgICAgICAgICB0aGlzLnJlbmRlcmVyLmxpc3RlbihcbiAgICAgICAgICAgIHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudCxcbiAgICAgICAgICAgICdjbGljaycsXG4gICAgICAgICAgICB0aGlzLm9uQ2xpY2suYmluZCh0aGlzKSxcbiAgICAgICAgICApLFxuICAgICAgICApO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICAgIGNhc2UgVG9vbHRpcFRyaWdnZXIuSG92ZXI6IHtcbiAgICAgICAgdGhpcy5saXN0ZW5lcnMucHVzaChcbiAgICAgICAgICB0aGlzLnJlbmRlcmVyLmxpc3RlbihcbiAgICAgICAgICAgIHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudCxcbiAgICAgICAgICAgICdtb3VzZWVudGVyJyxcbiAgICAgICAgICAgIHRoaXMub25Nb3VzZUVudGVyLmJpbmQodGhpcykgYXMgKCkgPT4gdm9pZCxcbiAgICAgICAgICApLFxuICAgICAgICAgIHRoaXMucmVuZGVyZXIubGlzdGVuKFxuICAgICAgICAgICAgdGhpcy5lbFJlZi5uYXRpdmVFbGVtZW50LFxuICAgICAgICAgICAgJ21vdXNlbGVhdmUnLFxuICAgICAgICAgICAgdGhpcy5vbk1vdXNlTGVhdmUuYmluZCh0aGlzKSBhcyAoKSA9PiB2b2lkLFxuICAgICAgICAgICksXG4gICAgICAgICk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgY2FzZSBUb29sdGlwVHJpZ2dlci5Gb2N1czoge1xuICAgICAgICB0aGlzLmxpc3RlbmVycy5wdXNoKFxuICAgICAgICAgIHRoaXMucmVuZGVyZXIubGlzdGVuKFxuICAgICAgICAgICAgdGhpcy5lbFJlZi5uYXRpdmVFbGVtZW50LFxuICAgICAgICAgICAgJ2ZvY3VzJyxcbiAgICAgICAgICAgIHRoaXMub25Gb2N1cy5iaW5kKHRoaXMpLFxuICAgICAgICAgICksXG4gICAgICAgICAgdGhpcy5yZW5kZXJlci5saXN0ZW4oXG4gICAgICAgICAgICB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICAgICAnYmx1cicsXG4gICAgICAgICAgICB0aGlzLm9uQmx1ci5iaW5kKHRoaXMpLFxuICAgICAgICAgICksXG4gICAgICAgICk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgY2FzZSBUb29sdGlwVHJpZ2dlci5NYW51YWw6IHtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGNsZWFyTGlzdGVuZXJzKCkge1xuICAgIHRoaXMubGlzdGVuZXJzLmZvckVhY2godW5MaXN0ZW4gPT4ge1xuICAgICAgdW5MaXN0ZW4oKTtcbiAgICB9KTtcbiAgICB0aGlzLmxpc3RlbmVycyA9IFtdO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNyZWF0ZU92ZXJsYXkoKTogT3ZlcmxheVJlZiB7XG4gICAgY29uc3Qgb3JpZ2luUG9zaXRpb24gPSBnZXRPcmlnaW5Qb3NpdGlvbih0aGlzLnBvc2l0aW9uKTtcbiAgICBjb25zdCBvdmVybGF5UG9zaXRpb24gPSBnZXRPdmVybGF5UG9zaXRpb24odGhpcy5wb3NpdGlvbik7XG5cbiAgICBjb25zdCBwb3NpdGlvblN0cmF0ZWd5ID0gdGhpcy5vdmVybGF5XG4gICAgICAucG9zaXRpb24oKVxuICAgICAgLmZsZXhpYmxlQ29ubmVjdGVkVG8odGhpcy5lbFJlZilcbiAgICAgIC53aXRoR3Jvd0FmdGVyT3Blbih0cnVlKVxuICAgICAgLndpdGhUcmFuc2Zvcm1PcmlnaW5PbignLmF1aS10b29sdGlwX190cmFuc2Zvcm0tb3JpZ2luJylcbiAgICAgIC53aXRoUG9zaXRpb25zKFtcbiAgICAgICAgeyAuLi5vcmlnaW5Qb3NpdGlvbi5tYWluLCAuLi5vdmVybGF5UG9zaXRpb24ubWFpbiB9LFxuICAgICAgICB7IC4uLm9yaWdpblBvc2l0aW9uLmZhbGxiYWNrLCAuLi5vdmVybGF5UG9zaXRpb24uZmFsbGJhY2sgfSxcbiAgICAgIF0pO1xuXG4gICAgY29uc3Qgc2Nyb2xsU3RyYXRlZ3kgPSB0aGlzLm92ZXJsYXkuc2Nyb2xsU3RyYXRlZ2llcy5yZXBvc2l0aW9uKCk7XG5cbiAgICBjb25zdCBjb25maWcgPSBuZXcgT3ZlcmxheUNvbmZpZyh7XG4gICAgICBwb3NpdGlvblN0cmF0ZWd5LFxuICAgICAgc2Nyb2xsU3RyYXRlZ3ksXG4gICAgfSk7XG4gICAgcmV0dXJuIHRoaXMub3ZlcmxheS5jcmVhdGUoY29uZmlnKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBhc3luYyBvbk1vdXNlRW50ZXIoKSB7XG4gICAgdGhpcy5ob3N0SG92ZXJlZCA9IHRydWU7XG4gICAgaWYgKCF0aGlzLmlzQ3JlYXRlZCkge1xuICAgICAgYXdhaXQgc2xlZXAoRElTUExBWV9ERUxBWSk7XG4gICAgICBpZiAodGhpcy5ob3N0SG92ZXJlZCkge1xuICAgICAgICB0aGlzLl9jcmVhdGVUb29sdGlwKCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGFzeW5jIG9uTW91c2VMZWF2ZSgpIHtcbiAgICB0aGlzLmhvc3RIb3ZlcmVkID0gZmFsc2U7XG4gICAgYXdhaXQgc2xlZXAoSElEREVOX0RFTEFZKTtcbiAgICBpZiAoIXRoaXMudG9vbHRpcEhvdmVyZWQgJiYgIXRoaXMuaG9zdEhvdmVyZWQpIHtcbiAgICAgIHRoaXMuaGlkZSgpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBhc3luYyBvblRvb2x0aXBIb3ZlcmVkKGhvdmVyZWQ6IGJvb2xlYW4pIHtcbiAgICB0aGlzLnRvb2x0aXBIb3ZlcmVkID0gaG92ZXJlZDtcbiAgICBpZiAoIWhvdmVyZWQpIHtcbiAgICAgIGF3YWl0IHNsZWVwKEhJRERFTl9ERUxBWSk7XG4gICAgICBpZiAoIXRoaXMudG9vbHRpcEhvdmVyZWQgJiYgIXRoaXMuaG9zdEhvdmVyZWQpIHtcbiAgICAgICAgdGhpcy5oaWRlKCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIG9uQ2xpY2soKSB7XG4gICAgdGhpcy50b2dnbGVUb29sdGlwKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb25Cb2R5Q2xpY2soZXZlbnQ6IEV2ZW50KSB7XG4gICAgaWYgKFxuICAgICAgIXRoaXMuZWxSZWYubmF0aXZlRWxlbWVudC5jb250YWlucyhldmVudC50YXJnZXQgYXMgTm9kZSkgJiZcbiAgICAgICh0aGlzLmhpZGVPbkNsaWNrIHx8XG4gICAgICAgICF0aGlzLmNvbXBvbmVudElucy5lbFJlZi5uYXRpdmVFbGVtZW50LmNvbnRhaW5zKGV2ZW50LnRhcmdldCBhcyBOb2RlKSlcbiAgICApIHtcbiAgICAgIHRoaXMuaGlkZSgpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBvbkZvY3VzKCkge1xuICAgIHRoaXMuX2NyZWF0ZVRvb2x0aXAoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvbkJsdXIoKSB7XG4gICAgdGhpcy5oaWRlKCk7XG4gIH1cbn1cbiJdfQ==
|
|
336
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS10b29sdGlwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Rvb2x0aXAvYmFzZS10b29sdGlwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFHTCxhQUFhLEdBRWQsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQUUsZUFBZSxFQUFpQixNQUFNLHFCQUFxQixDQUFDO0FBQ3JFLE9BQU8sRUFHTCxTQUFTLEVBRVQsWUFBWSxHQU1iLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDTCxhQUFhLEVBQ2IsS0FBSyxFQUNMLFlBQVksRUFDWixTQUFTLEVBQ1QsS0FBSyxFQUNMLE1BQU0sRUFDTixPQUFPLEVBQ1AsS0FBSyxHQUNOLE1BQU0sTUFBTSxDQUFDO0FBRWQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRzFDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxjQUFjLEVBQWUsTUFBTSxpQkFBaUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxTQUFTLENBQUM7OztBQWNoRSxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsRUFBRSxDQUFDO0FBQ2hDLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxHQUFHLENBQUM7QUFnQmhDLE1BQU0sT0FBTyxXQUFXO0lBNkdWO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQS9HWixJQUFJLE9BQU8sQ0FBQyxLQUFnQztRQUMxQyxJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztRQUN0QixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRUQsSUFBSSxPQUFPO1FBQ1QsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxJQUFJLE9BQU8sQ0FBQyxL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SUFFUyxPQUFPO1FBQ2YsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFFUyxNQUFNO1FBQ2QsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2QsQ0FBQzt1R0FqYVUsV0FBVzsyRkFBWCxXQUFXOzsyRkFBWCxXQUFXO2tCQUh2QixTQUFTO21CQUFDO29CQUNULFVBQVUsRUFBRSxJQUFJO2lCQUNqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbm5lY3RlZFBvc2l0aW9uLFxuICBPdmVybGF5LFxuICBPdmVybGF5Q29uZmlnLFxuICBPdmVybGF5UmVmLFxufSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBDb21wb25lbnRQb3J0YWwsIENvbXBvbmVudFR5cGUgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgTmdab25lLFxuICBPbkRlc3Ryb3ksXG4gIFJlbmRlcmVyMixcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdDb250YWluZXJSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgUmVwbGF5U3ViamVjdCxcbiAgbWVyZ2UsXG4gIGRlYm91bmNlVGltZSxcbiAgdGFrZVVudGlsLFxuICBmaXJzdCxcbiAgZmlsdGVyLFxuICBTdWJqZWN0LFxuICBkZWxheSxcbn0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IHNsZWVwIH0gZnJvbSAnLi4vaW50ZXJuYWwvdXRpbHMnO1xuXG5pbXBvcnQgeyBBbmltYXRpb25UeXBlIH0gZnJvbSAnLi9hbmltYXRpb25zJztcbmltcG9ydCB7IFRvb2x0aXBDb21wb25lbnQgfSBmcm9tICcuL3Rvb2x0aXAuY29tcG9uZW50JztcbmltcG9ydCB7IFRvb2x0aXBUcmlnZ2VyLCBUb29sdGlwVHlwZSB9IGZyb20gJy4vdG9vbHRpcC50eXBlcyc7XG5pbXBvcnQgeyBnZXRPcmlnaW5Qb3NpdGlvbiwgZ2V0T3ZlcmxheVBvc2l0aW9uIH0gZnJvbSAnLi91dGlscyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVG9vbHRpcEludGVyZmFjZSB7XG4gIGNvbnRlbnQ6IHN0cmluZyB8IFRlbXBsYXRlUmVmPGFueT47XG4gIGNvbnRleHQ6IGFueTtcbiAgY2xhc3M6IHN0cmluZztcbiAgdHlwZTogVG9vbHRpcFR5cGU7XG4gIHBvc2l0aW9uOiBzdHJpbmc7XG4gIHRyaWdnZXI6IFRvb2x0aXBUcmlnZ2VyO1xuICBkaXNhYmxlZDogYm9vbGVhbjtcbiAgaGlkZU9uQ2xpY2s6IGJvb2xlYW47XG4gIHZpc2libGVDaGFuZ2U6IEV2ZW50RW1pdHRlcjxib29sZWFuPjtcbn1cblxuZXhwb3J0IGNvbnN0IERJU1BMQVlfREVMQVkgPSA1MDtcbmV4cG9ydCBjb25zdCBISURERU5fREVMQVkgPSAxNTA7XG5cbi8vIEB0cy1pZ25vcmVcbmludGVyZmFjZSBIYWNrT3ZlcmxheVJlZiBleHRlbmRzIE92ZXJsYXlSZWYge1xuICBfcG9zaXRpb25TdHJhdGVneToge1xuICAgIF9oYXNFeGFjdFBvc2l0aW9uOiAoKSA9PiBib29sZWFuO1xuICAgIF9wYW5lOiBIVE1MRWxlbWVudDtcbiAgICBfbGFzdFBvc2l0aW9uOiBDb25uZWN0ZWRQb3NpdGlvbiB8IG51bGw7XG4gICAgX2JvdW5kaW5nQm94OiBIVE1MRWxlbWVudDtcbiAgICBfdHJhbnNmb3JtT3JpZ2luU2VsZWN0b3I6IHN0cmluZztcbiAgfTtcbn1cblxuQERpcmVjdGl2ZSh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIEJhc2VUb29sdGlwPFQgPSBhbnk+XG4gIGltcGxlbWVudHMgVG9vbHRpcEludGVyZmFjZSwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95XG57XG4gIHNldCBjb250ZW50KHZhbHVlOiBzdHJpbmcgfCBUZW1wbGF0ZVJlZjxhbnk+KSB7XG4gICAgdGhpcy5fY29udGVudCA9IHZhbHVlO1xuICAgIHRoaXMuaW5wdXRDb250ZW50JCQubmV4dCh2YWx1ZSk7XG4gIH1cblxuICBnZXQgY29udGVudCgpIHtcbiAgICByZXR1cm4gdGhpcy5fY29udGVudDtcbiAgfVxuXG4gIHNldCBjb250ZXh0KHZhbHVlOiBUKSB7XG4gICAgdGhpcy5fY29udGV4dCA9IHZhbHVlO1xuICAgIHRoaXMuaW5wdXRDb250ZXh0JCQubmV4dCh2YWx1ZSk7XG4gIH1cblxuICBnZXQgY29udGV4dCgpIHtcbiAgICByZXR1cm4gdGhpcy5fY29udGV4dDtcbiAgfVxuXG4gIHNldCBjbGFzcyh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5pbnB1dENsYXNzJCQubmV4dCh2YWx1ZSk7XG4gIH1cblxuICBzZXQgdHlwZSh2YWx1ZTogVG9vbHRpcFR5cGUpIHtcbiAgICBpZiAoIXZhbHVlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuaW5wdXRUeXBlJCQubmV4dCh2YWx1ZSk7XG4gIH1cblxuICBzZXQgcG9zaXRpb24odmFsdWU6IHN0cmluZykge1xuICAgIGlmICghdmFsdWUgfHwgdmFsdWUgPT09IHRoaXMuX3Bvc2l0aW9uKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuX3Bvc2l0aW9uID0gdmFsdWU7XG4gICAgdGhpcy5pbnB1dFBvc2l0aW9uJCQubmV4dCh2YWx1ZSk7XG4gICAgdGhpcy5fZGlzcG9zZVRvb2x0aXAoKTtcbiAgfVxuXG4gIGdldCBwb3NpdGlvbigpIHtcbiAgICByZXR1cm4gdGhpcy5fcG9zaXRpb247XG4gIH1cblxuICBzZXQgdHJpZ2dlcih2YWx1ZSkge1xuICAgIGlmICghdmFsdWUgfHwgdmFsdWUgPT09IHRoaXMuX3RyaWdnZXIpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5fdHJpZ2dlciA9IHZhbHVlO1xuICAgIHRoaXMuX2Rpc3Bvc2VUb29sdGlwKCk7XG4gICAgdGhpcy5uZ1pvbmUucnVuKHRoaXMudXBkYXRlTGlzdGVuZXJzLCB0aGlzKTtcbiAgfVxuXG4gIGdldCB0cmlnZ2VyKCkge1xuICAgIHJldHVybiB0aGlzLl90cmlnZ2VyO1xuICB9XG5cbiAgc2V0IGRpc2FibGVkKHZhbHVlKSB7XG4gICAgdGhpcy5fZGlzYWJsZWQgPSB2YWx1ZTtcbiAgICBpZiAodmFsdWUpIHtcbiAgICAgIHRoaXMuX2Rpc3Bvc2VUb29sdGlwKCk7XG4gICAgfVxuICB9XG5cbiAgZ2V0IGRpc2FibGVkKCkge1xuICAgIHJldHVybiB0aGlzLl9kaXNhYmxlZDtcbiAgfVxuXG4gIGhpZGVPbkNsaWNrID0gZmFsc2U7XG4gIGFuaW1hdGlvblR5cGU6IEFuaW1hdGlvblR5cGUgPSAnbm9uZSc7XG5cbiAgdmlzaWJsZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICBvdmVybGF5UmVmOiBPdmVybGF5UmVmO1xuICBwcm90ZWN0ZWQgY29tcG9uZW50Q2xhc3M6IENvbXBvbmVudFR5cGU8YW55PiA9IFRvb2x0aXBDb21wb25lbnQ7XG4gIHByb3RlY3RlZCBjb21wb25lbnRJbnM6IFRvb2x0aXBDb21wb25lbnQ7XG4gIHByb3RlY3RlZCBob3N0SG92ZXJlZCA9IGZhbHNlO1xuICBwcm90ZWN0ZWQgdG9vbHRpcEhvdmVyZWQgPSBmYWxzZTtcbiAgcHJvdGVjdGVkIGxpc3RlbmVyczogQXJyYXk8KCkgPT4gdm9pZD4gPSBbXTtcbiAgcHJvdGVjdGVkIHVubGlzdGVuQm9keTogKCkgPT4gdm9pZDtcblxuICBwcm90ZWN0ZWQgaW5wdXRDb250ZW50JCQgPSBuZXcgUmVwbGF5U3ViamVjdDxzdHJpbmcgfCBUZW1wbGF0ZVJlZjxhbnk+PigxKTtcbiAgcHJvdGVjdGVkIGlucHV0VHlwZSQkID0gbmV3IFJlcGxheVN1YmplY3Q8VG9vbHRpcFR5cGU+KDEpO1xuICBwcm90ZWN0ZWQgaW5wdXRQb3NpdGlvbiQkID0gbmV3IFJlcGxheVN1YmplY3Q8c3RyaW5nPigxKTtcbiAgcHJvdGVjdGVkIGlucHV0Q2xhc3MkJCA9IG5ldyBSZXBsYXlTdWJqZWN0PHN0cmluZz4oMSk7XG4gIHByb3RlY3RlZCBpbnB1dENvbnRleHQkJCA9IG5ldyBSZXBsYXlTdWJqZWN0PGFueT4oMSk7XG5cbiAgcHJvdGVjdGVkIHRvb2x0aXBDaGFuZ2VkJCA9IG1lcmdlKFxuICAgIHRoaXMuaW5wdXRDb250ZW50JCQsXG4gICAgdGhpcy5pbnB1dFR5cGUkJCxcbiAgICB0aGlzLmlucHV0UG9zaXRpb24kJCxcbiAgICB0aGlzLmlucHV0Q2xhc3MkJCxcbiAgICB0aGlzLmlucHV0Q29udGV4dCQkLFxuICApO1xuXG4gIHByb3RlY3RlZCBkZXN0cm95JCA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgcHJvdGVjdGVkIF9wb3NpdGlvbiA9ICd0b3AnO1xuICBwcm90ZWN0ZWQgX3RyaWdnZXIgPSBUb29sdGlwVHJpZ2dlci5Ib3ZlcjtcbiAgcHJvdGVjdGVkIF9kaXNhYmxlZCA9IGZhbHNlO1xuICBwcm90ZWN0ZWQgX2NvbnRleHQ6IFQ7XG4gIHByb3RlY3RlZCBfY29udGVudDogc3RyaW5nIHwgVGVtcGxhdGVSZWY8dW5rbm93bj47XG5cbiAgZ2V0IGlzQ3JlYXRlZCgpIHtcbiAgICByZXR1cm4gISF0aGlzLm92ZXJsYXlSZWY7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgb3ZlcmxheTogT3ZlcmxheSxcbiAgICBwcm90ZWN0ZWQgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZixcbiAgICBwcm90ZWN0ZWQgZWxSZWY6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD4sXG4gICAgcHJvdGVjdGVkIHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgcHJvdGVjdGVkIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJvdGVjdGVkIG5nWm9uZTogTmdab25lLFxuICApIHtcbiAgICB0aGlzLnRvb2x0aXBDaGFuZ2VkJC5waXBlKGRlYm91bmNlVGltZSgwKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMudXBkYXRlUG9zaXRpb24oKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX3VwZGF0ZVRyYW5zZm9ybU9yaWdpbigpIHtcbiAgICAvLyBAdHMtaWdub3JlXG4gICAgY29uc3Qgb3ZlcmxheVJlZiA9IHRoaXMub3ZlcmxheVJlZiBhcyBIYWNrT3ZlcmxheVJlZjtcbiAgICBjb25zdCBwb3NpdGlvblN0cmF0ZWd5ID0gb3ZlcmxheVJlZi5fcG9zaXRpb25TdHJhdGVneTtcbiAgICBjb25zdCBoYXNFeGFjdFBvc2l0aW9uID0gcG9zaXRpb25TdHJhdGVneS5faGFzRXhhY3RQb3NpdGlvbigpOyAvLyDmmK/kuI3mmK/lupTnlKjkuobnsr7noa7lrprkvY1cbiAgICBpZiAoIWhhc0V4YWN0UG9zaXRpb24pIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgLy8g5aaC5p6c5piv57K+56Gu5a6a5L2N77yM5Lmf5bCx5piv6aKE6K6+5L2N572u56m66Ze05LiN6Laz5Lul5om/6L295by55Ye65YWD57Sg77yM6KKr6YeN5paw5oyH5a6a5paw55qE5by55Ye65L2N572uXG4gICAgY29uc3QgcGFuZVJlY3QgPSBwb3NpdGlvblN0cmF0ZWd5Ll9wYW5lLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpOyAvLyDlvLnlh7pwYW5l5YWD57SgUmVjdFxuICAgIGNvbnN0IHRyaWdnZXJFbFJlYWN0ID0gdGhpcy5lbFJlZi5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpOyAvLyDop6blj5HngrlSZWN0XG5cbiAgICBjb25zdCBwb3NpdGlvbiA9IHBvc2l0aW9uU3RyYXRlZ3kuX2xhc3RQb3NpdGlvbjsgLy8g5b2T5YmN562W55Wl5L2N572u77yI6LCD5pW05ZCO55qE5pyA5L2z55qE77yJXG4gICAgbGV0IHhPcmlnaW46ICdsZWZ0JyB8ICdyaWdodCcgfCAnY2VudGVyJztcbiAgICBjb25zdCB5T3JpZ2luOiAndG9wJyB8ICdib3R0b20nIHwgJ2NlbnRlcicgPSBwb3NpdGlvbi5vdmVybGF5WTtcbiAgICBpZiAocG9zaXRpb24ub3ZlcmxheVggPT09ICdjZW50ZXInKSB7XG4gICAgICB4T3JpZ2luID0gJ2NlbnRlcic7XG4gICAgfSBlbHNlIHtcbiAgICAgIHhPcmlnaW4gPSBwb3NpdGlvbi5vdmVybGF5WCA9PT0gJ3N0YXJ0JyA/ICdsZWZ0JyA6ICdyaWdodCc7XG4gICAgfVxuXG4gICAgY29uc3Qgb3JpZ2luczogc3RyaW5nW10gPSBbeE9yaWdpbiwgeU9yaWdpbl07XG4gICAgaWYgKFxuICAgICAgeE9yaWdpbiA9PT0gJ2NlbnRlcicgfHxcbiAgICAgICh4T3JpZ2luID09PSAnbGVmdCcgJiZcbiAgICAgICAgIVt0cmlnZ2VyRWxSZWFjdC5yaWdodCwgdHJpZ2dlckVsUmVhY3QubGVmdF0uaW5jbHVkZXMocGFuZVJlY3QubGVmdCkpIHx8XG4gICAgICAoeE9yaWdpbiA9PT0gJ3JpZ2h0JyAmJlxuICAgICAgICAhW3RyaWdnZXJFbFJlYWN0LnJpZ2h0LCB0cmlnZ2VyRWxSZWFjdC5sZWZ0XS5pbmNsdWRlcyhwYW5lUmVjdC5yaWdodCkpXG4gICAgKSB7XG4gICAgICBjb25zdCBvcmlnaW5MZWZ0ID1cbiAgICAgICAgdHJpZ2dlckVsUmVhY3QubGVmdCAtIHBhbmVSZWN0LmxlZnQgKyB0cmlnZ2VyRWxSZWFjdC53aWR0aCAvIDI7XG4gICAgICBvcmlnaW5zWzBdID0gTWF0aC5taW4ob3JpZ2luTGVmdCwgcGFuZVJlY3Qud2lkdGgpICsgJ3B4JztcbiAgICB9XG4gICAgaWYgKFxuICAgICAgeU9yaWdpbiA9PT0gJ2NlbnRlcicgfHxcbiAgICAgICh5T3JpZ2luID09PSAndG9wJyAmJlxuICAgICAgICAhW3RyaWdnZXJFbFJlYWN0LmJvdHRvbSwgdHJpZ2dlckVsUmVhY3QudG9wXS5pbmNsdWRlcyhwYW5lUmVjdC50b3ApKSB8fCAvLyDkvY3nva7msqHmnInooqvlrozlhajooqvpoqDlgJLnmoRcbiAgICAgICh5T3JpZ2luID09PSAnYm90dG9tJyAmJlxuICAgICAgICAhW3RyaWdnZXJFbFJlYWN0LmJvdHRvbSwgdHJpZ2dlckVsUmVhY3QudG9wXS5pbmNsdWRlcyhwYW5lUmVjdC5ib3R0b20pKSAvLyDkvY3nva7msqHmnInooqvlrozlhajooqvpoqDlgJLnmoRcbiAgICApIHtcbiAgICAgIGNvbnN0IG9yaWdpblRvcCA9XG4gICAgICAgIHRyaWdnZXJFbFJlYWN0LnRvcCAtIHBhbmVSZWN0LnRvcCArIHRyaWdnZXJFbFJlYWN0LmhlaWdodCAvIDI7XG4gICAgICBvcmlnaW5zWzFdID0gTWF0aC5taW4ob3JpZ2luVG9wLCBwYW5lUmVjdC5oZWlnaHQpICsgJ3B4JztcbiAgICB9XG4gICAgY29uc3QgYW5pRWxzID0gcG9zaXRpb25TdHJhdGVneS5fYm91bmRpbmdCb3gucXVlcnlTZWxlY3RvckFsbDxIVE1MRWxlbWVudD4oXG4gICAgICBwb3NpdGlvblN0cmF0ZWd5Ll90cmFuc2Zvcm1PcmlnaW5TZWxlY3RvcixcbiAgICApO1xuICAgIEFycmF5LmZyb20oYW5pRWxzKS5mb3JFYWNoKGVsID0+IHtcbiAgICAgIGVsLnN0eWxlLnRyYW5zZm9ybU9yaWdpbiA9IG9yaWdpbnMuam9pbignICcpO1xuICAgIH0pO1xuICB9XG5cbiAgX2NyZWF0ZVRvb2x0aXAoKSB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQgfHwgdGhpcy5pc0NyZWF0ZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5fZGlzcG9zZVRvb2x0aXAoKTtcbiAgICB0aGlzLm92ZXJsYXlSZWYgPSB0aGlzLmNyZWF0ZU92ZXJsYXkoKTtcbiAgICBjb25zdCBwb3J0YWwgPSBuZXcgQ29tcG9uZW50UG9ydGFsKFxuICAgICAgdGhpcy5jb21wb25lbnRDbGFzcyxcbiAgICAgIHRoaXMudmlld0NvbnRhaW5lclJlZixcbiAgICApO1xuICAgIHRoaXMuY29tcG9uZW50SW5zID0gdGhpcy5vdmVybGF5UmVmLmF0dGFjaChwb3J0YWwpLmluc3RhbmNlO1xuICAgIHRoaXMuY29tcG9uZW50SW5zLnNldHVwSW5wdXRzKHtcbiAgICAgIGlucHV0Q2xhc3MkOiB0aGlzLmlucHV0Q2xhc3MkJC5hc09ic2VydmFibGUoKSxcbiAgICAgIGlucHV0Q29udGVudCQ6IHRoaXMuaW5wdXRDb250ZW50JCQuYXNPYnNlcnZhYmxlKCksXG4gICAgICBpbnB1dENvbnRleHQkOiB0aGlzLmlucHV0Q29udGV4dCQkLmFzT2JzZXJ2YWJsZSgpLFxuICAgICAgaW5wdXRQb3NpdGlvbiQ6IHRoaXMuaW5wdXRQb3NpdGlvbiQkLmFzT2JzZXJ2YWJsZSgpLFxuICAgICAgaW5wdXRUeXBlJDogdGhpcy5pbnB1dFR5cGUkJC5hc09ic2VydmFibGUoKSxcbiAgICAgIGFuaW1hdGlvblR5cGU6IHRoaXMuYW5pbWF0aW9uVHlwZSxcbiAgICB9KTtcbiAgICB0aGlzLmNvbXBvbmVudElucy5oaWRlJC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMuX2Rpc3Bvc2VUb29sdGlwKCk7XG4gICAgfSk7XG5cbiAgICBpZiAodGhpcy5hbmltYXRpb25UeXBlICE9PSAnbm9uZScpIHtcbiAgICAgIG1lcmdlKFxuICAgICAgICB0aGlzLmNvbXBvbmVudElucy5iZWZvcmVIaWRlJCxcbiAgICAgICAgdGhpcy5jb21wb25lbnRJbnMuYmVmb3JlU2hvdyQucGlwZShkZWxheSgwKSksXG4gICAgICApXG4gICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcbiAgICAgICAgLnN1YnNjcmliZSh0aGlzLl91cGRhdGVUcmFuc2Zvcm1PcmlnaW4uYmluZCh0aGlzKSk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMudHJpZ2dlciA9PT0gVG9vbHRpcFRyaWdnZXIuSG92ZXIpIHtcbiAgICAgIHRoaXMuY29tcG9uZW50SW5zLmhvdmVyJFxuICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5jb21wb25lbnRJbnMuZGVzdHJveSQpKVxuICAgICAgICAuc3Vic2NyaWJlKGhvdmVyZWQgPT4ge1xuICAgICAgICAgIHRoaXMub25Ub29sdGlwSG92ZXJlZChob3ZlcmVkKTtcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIGlmIChcbiAgICAgIHRoaXMudHJpZ2dlciA9PT0gVG9vbHRpcFRyaWdnZXIuSG92ZXIgfHxcbiAgICAgIHRoaXMudHJpZ2dlciA9PT0gVG9vbHRpcFRyaWdnZXIuQ2xpY2tcbiAgICApIHtcbiAgICAgIHRoaXMudW5saXN0ZW5Cb2R5ID0gdGhpcy5yZW5kZXJlci5saXN0ZW4oXG4gICAgICAgICdib2R5JyxcbiAgICAgICAgJ2NsaWNrJyxcbiAgICAgICAgdGhpcy5vbkJvZHlDbGljay5iaW5kKHRoaXMpLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICB0aGlzLmNvbXBvbmVudElucz8uc2hvdygpO1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuXG4gICAgdGhpcy52aXNpYmxlQ2hhbmdlLmVtaXQodHJ1ZSk7XG4gIH1cblxuICBfZGlzcG9zZVRvb2x0aXAoKSB7XG4gICAgdGhpcy5jb21wb25lbnRJbnM/LmFuaW1hdGluZyQkXG4gICAgICAucGlwZShcbiAgICAgICAgZmlsdGVyKGFuaW1hdGluZyA9PiAhYW5pbWF0aW5nKSxcbiAgICAgICAgZmlyc3QoKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICBpZiAodGhpcy5vdmVybGF5UmVmKSB7XG4gICAgICAgICAgdGhpcy5vdmVybGF5UmVmLmRpc3Bvc2UoKTtcbiAgICAgICAgICB0aGlzLm92ZXJsYXlSZWYgPSBudWxsO1xuICAgICAgICAgIHRoaXMuY29tcG9uZW50SW5zID0gbnVsbDtcbiAgICAgICAgICB0aGlzLnRvb2x0aXBIb3ZlcmVkID0gZmFsc2U7XG4gICAgICAgICAgaWYgKHRoaXMudW5saXN0ZW5Cb2R5KSB7XG4gICAgICAgICAgICB0aGlzLnVubGlzdGVuQm9keSgpO1xuICAgICAgICAgICAgdGhpcy51bmxpc3RlbkJvZHkgPSBudWxsO1xuICAgICAgICAgIH1cbiAgICAgICAgICB0aGlzLnZpc2libGVDaGFuZ2UuZW1pdChmYWxzZSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICB9XG5cbiAgdG9nZ2xlVG9vbHRpcCgpIHtcbiAgICBpZiAodGhpcy5pc0NyZWF0ZWQpIHtcbiAgICAgIHRoaXMuaGlkZSgpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNob3coKTtcbiAgICB9XG4gIH1cblxuICBzaG93KCkge1xuICAgIHRoaXMuX2NyZWF0ZVRvb2x0aXAoKTtcbiAgfVxuXG4gIGhpZGUoKSB7XG4gICAgaWYgKHRoaXMuYW5pbWF0aW9uVHlwZSA9PT0gJ25vbmUnKSB7XG4gICAgICAvLyDlpoLmnpznpoHnlKjkuobliqjnlLvlsLHnq4vljbPplIDmr4HvvIzogIzkuI3mmK/nrYnliqjnlLvlrozmiJDkuovku7blkI7miY3plIDmr4FcbiAgICAgIHRoaXMuX2Rpc3Bvc2VUb29sdGlwKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY29tcG9uZW50SW5zPy5oaWRlKCk7XG4gICAgfVxuICB9XG5cbiAgdXBkYXRlUG9zaXRpb24oKSB7XG4gICAgaWYgKHRoaXMub3ZlcmxheVJlZikge1xuICAgICAgdGhpcy5vdmVybGF5UmVmLnVwZGF0ZVBvc2l0aW9uKCk7XG4gICAgfVxuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIGlmICh0aGlzLnRyaWdnZXIgPT09IFRvb2x0aXBUcmlnZ2VyLkhvdmVyKSB7XG4gICAgICB0aGlzLnVwZGF0ZUxpc3RlbmVycygpO1xuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuZGVzdHJveSQubmV4dChudWxsKTtcbiAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gICAgdGhpcy5fZGlzcG9zZVRvb2x0aXAoKTtcbiAgICB0aGlzLmNsZWFyTGlzdGVuZXJzKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgdXBkYXRlTGlzdGVuZXJzKCkge1xuICAgIHRoaXMuY2xlYXJMaXN0ZW5lcnMoKTtcbiAgICBzd2l0Y2ggKHRoaXMudHJpZ2dlcikge1xuICAgICAgY2FzZSBUb29sdGlwVHJpZ2dlci5DbGljazoge1xuICAgICAgICB0aGlzLmxpc3RlbmVycy5wdXNoKFxuICAgICAgICAgIHRoaXMucmVuZGVyZXIubGlzdGVuKFxuICAgICAgICAgICAgdGhpcy5lbFJlZi5uYXRpdmVFbGVtZW50LFxuICAgICAgICAgICAgJ2NsaWNrJyxcbiAgICAgICAgICAgIHRoaXMub25DbGljay5iaW5kKHRoaXMpLFxuICAgICAgICAgICksXG4gICAgICAgICk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgY2FzZSBUb29sdGlwVHJpZ2dlci5Ib3Zlcjoge1xuICAgICAgICB0aGlzLmxpc3RlbmVycy5wdXNoKFxuICAgICAgICAgIHRoaXMucmVuZGVyZXIubGlzdGVuKFxuICAgICAgICAgICAgdGhpcy5lbFJlZi5uYXRpdmVFbGVtZW50LFxuICAgICAgICAgICAgJ21vdXNlZW50ZXInLFxuICAgICAgICAgICAgdGhpcy5vbk1vdXNlRW50ZXIuYmluZCh0aGlzKSBhcyAoKSA9PiB2b2lkLFxuICAgICAgICAgICksXG4gICAgICAgICAgdGhpcy5yZW5kZXJlci5saXN0ZW4oXG4gICAgICAgICAgICB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICAgICAnbW91c2VsZWF2ZScsXG4gICAgICAgICAgICB0aGlzLm9uTW91c2VMZWF2ZS5iaW5kKHRoaXMpIGFzICgpID0+IHZvaWQsXG4gICAgICAgICAgKSxcbiAgICAgICAgKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBjYXNlIFRvb2x0aXBUcmlnZ2VyLkZvY3VzOiB7XG4gICAgICAgIHRoaXMubGlzdGVuZXJzLnB1c2goXG4gICAgICAgICAgdGhpcy5yZW5kZXJlci5saXN0ZW4oXG4gICAgICAgICAgICB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICAgICAnZm9jdXMnLFxuICAgICAgICAgICAgdGhpcy5vbkZvY3VzLmJpbmQodGhpcyksXG4gICAgICAgICAgKSxcbiAgICAgICAgICB0aGlzLnJlbmRlcmVyLmxpc3RlbihcbiAgICAgICAgICAgIHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudCxcbiAgICAgICAgICAgICdibHVyJyxcbiAgICAgICAgICAgIHRoaXMub25CbHVyLmJpbmQodGhpcyksXG4gICAgICAgICAgKSxcbiAgICAgICAgKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBjYXNlIFRvb2x0aXBUcmlnZ2VyLk1hbnVhbDoge1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgY2xlYXJMaXN0ZW5lcnMoKSB7XG4gICAgdGhpcy5saXN0ZW5lcnMuZm9yRWFjaCh1bkxpc3RlbiA9PiB7XG4gICAgICB1bkxpc3RlbigpO1xuICAgIH0pO1xuICAgIHRoaXMubGlzdGVuZXJzID0gW107XG4gIH1cblxuICBwcm90ZWN0ZWQgY3JlYXRlT3ZlcmxheSgpOiBPdmVybGF5UmVmIHtcbiAgICBjb25zdCBvcmlnaW5Qb3NpdGlvbiA9IGdldE9yaWdpblBvc2l0aW9uKHRoaXMucG9zaXRpb24pO1xuICAgIGNvbnN0IG92ZXJsYXlQb3NpdGlvbiA9IGdldE92ZXJsYXlQb3NpdGlvbih0aGlzLnBvc2l0aW9uKTtcblxuICAgIGNvbnN0IHBvc2l0aW9uU3RyYXRlZ3kgPSB0aGlzLm92ZXJsYXlcbiAgICAgIC5wb3NpdGlvbigpXG4gICAgICAuZmxleGlibGVDb25uZWN0ZWRUbyh0aGlzLmVsUmVmKVxuICAgICAgLndpdGhHcm93QWZ0ZXJPcGVuKHRydWUpXG4gICAgICAud2l0aFRyYW5zZm9ybU9yaWdpbk9uKCcuYXVpLXRvb2x0aXBfX3RyYW5zZm9ybS1vcmlnaW4nKVxuICAgICAgLndpdGhQb3NpdGlvbnMoW1xuICAgICAgICB7IC4uLm9yaWdpblBvc2l0aW9uLm1haW4sIC4uLm92ZXJsYXlQb3NpdGlvbi5tYWluIH0sXG4gICAgICAgIHsgLi4ub3JpZ2luUG9zaXRpb24uZmFsbGJhY2ssIC4uLm92ZXJsYXlQb3NpdGlvbi5mYWxsYmFjayB9LFxuICAgICAgXSk7XG5cbiAgICBjb25zdCBzY3JvbGxTdHJhdGVneSA9IHRoaXMub3ZlcmxheS5zY3JvbGxTdHJhdGVnaWVzLnJlcG9zaXRpb24oKTtcblxuICAgIGNvbnN0IGNvbmZpZyA9IG5ldyBPdmVybGF5Q29uZmlnKHtcbiAgICAgIHBvc2l0aW9uU3RyYXRlZ3ksXG4gICAgICBzY3JvbGxTdHJhdGVneSxcbiAgICB9KTtcbiAgICByZXR1cm4gdGhpcy5vdmVybGF5LmNyZWF0ZShjb25maWcpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFzeW5jIG9uTW91c2VFbnRlcigpIHtcbiAgICB0aGlzLmhvc3RIb3ZlcmVkID0gdHJ1ZTtcbiAgICBpZiAoIXRoaXMuaXNDcmVhdGVkKSB7XG4gICAgICBhd2FpdCBzbGVlcChESVNQTEFZX0RFTEFZKTtcbiAgICAgIGlmICh0aGlzLmhvc3RIb3ZlcmVkKSB7XG4gICAgICAgIHRoaXMuX2NyZWF0ZVRvb2x0aXAoKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgYXN5bmMgb25Nb3VzZUxlYXZlKCkge1xuICAgIHRoaXMuaG9zdEhvdmVyZWQgPSBmYWxzZTtcbiAgICBhd2FpdCBzbGVlcChISURERU5fREVMQVkpO1xuICAgIGlmICghdGhpcy50b29sdGlwSG92ZXJlZCAmJiAhdGhpcy5ob3N0SG92ZXJlZCkge1xuICAgICAgdGhpcy5oaWRlKCk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGFzeW5jIG9uVG9vbHRpcEhvdmVyZWQoaG92ZXJlZDogYm9vbGVhbikge1xuICAgIHRoaXMudG9vbHRpcEhvdmVyZWQgPSBob3ZlcmVkO1xuICAgIGlmICghaG92ZXJlZCkge1xuICAgICAgYXdhaXQgc2xlZXAoSElEREVOX0RFTEFZKTtcbiAgICAgIGlmICghdGhpcy50b29sdGlwSG92ZXJlZCAmJiAhdGhpcy5ob3N0SG92ZXJlZCkge1xuICAgICAgICB0aGlzLmhpZGUoKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgb25DbGljaygpIHtcbiAgICB0aGlzLnRvZ2dsZVRvb2x0aXAoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvbkJvZHlDbGljayhldmVudDogRXZlbnQpIHtcbiAgICBpZiAoXG4gICAgICAhdGhpcy5lbFJlZi5uYXRpdmVFbGVtZW50LmNvbnRhaW5zKGV2ZW50LnRhcmdldCBhcyBOb2RlKSAmJlxuICAgICAgKHRoaXMuaGlkZU9uQ2xpY2sgfHxcbiAgICAgICAgIXRoaXMuY29tcG9uZW50SW5zLmVsUmVmLm5hdGl2ZUVsZW1lbnQuY29udGFpbnMoZXZlbnQudGFyZ2V0IGFzIE5vZGUpKVxuICAgICkge1xuICAgICAgdGhpcy5oaWRlKCk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIG9uRm9jdXMoKSB7XG4gICAgdGhpcy5fY3JlYXRlVG9vbHRpcCgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG9uQmx1cigpIHtcbiAgICB0aGlzLmhpZGUoKTtcbiAgfVxufVxuIl19
|
|
@@ -2,7 +2,7 @@ import { trigger } from '@angular/animations';
|
|
|
2
2
|
import { NgIf, NgTemplateOutlet, AsyncPipe } from '@angular/common';
|
|
3
3
|
import { ChangeDetectionStrategy, Component, ViewEncapsulation, } from '@angular/core';
|
|
4
4
|
import { Subject, combineLatest, map, startWith, BehaviorSubject, } from 'rxjs';
|
|
5
|
-
import { buildBem, publishRef } from '../utils';
|
|
5
|
+
import { buildBem, publishRef } from '../internal/utils';
|
|
6
6
|
import { animations } from './animations';
|
|
7
7
|
import { TooltipType } from './tooltip.types';
|
|
8
8
|
import * as i0 from "@angular/core";
|
|
@@ -87,4 +87,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.3", ngImpor
|
|
|
87
87
|
type: Component,
|
|
88
88
|
args: [{ selector: 'aui-tooltip', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, preserveWhitespaces: false, animations: [trigger('showHide', animations)], standalone: true, imports: [NgIf, NgTemplateOutlet, AsyncPipe], template: "<div\n *ngIf=\"inputContent$ | async\"\n [class]=\"class$ | async\"\n (mouseenter)=\"hover$.next(true)\"\n (mouseleave)=\"hover$.next(false)\"\n [@.disabled]=\"animationType === 'none'\"\n [@showHide]=\"showHide\"\n (@showHide.start)=\"onAnimation($event)\"\n (@showHide.done)=\"onAnimation($event)\"\n>\n {{ text$ | async }}\n <ng-container\n *ngIf=\"template$ | async\"\n [ngTemplateOutlet]=\"template$ | async\"\n [ngTemplateOutletContext]=\"context$ | async\"\n ></ng-container>\n</div>\n", styles: [".cdk-overlay-container,.cdk-global-overlay-wrapper{pointer-events:none;top:0;left:0;height:100%;width:100%}.cdk-overlay-container{position:fixed;z-index:1000}.cdk-overlay-container:empty{display:none}.cdk-global-overlay-wrapper{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;z-index:1000;display:flex;max-width:100%;max-height:100%}.cdk-overlay-backdrop{position:absolute;inset:0;z-index:1000;pointer-events:auto;-webkit-tap-highlight-color:rgba(0,0,0,0);transition:opacity .4s cubic-bezier(.25,.8,.25,1);opacity:0}.cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:1}.cdk-high-contrast-active .cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:.6}.cdk-overlay-dark-backdrop{background:rgba(0,0,0,.32)}.cdk-overlay-transparent-backdrop{transition:visibility 1ms linear,opacity 1ms linear;visibility:hidden;opacity:1}.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing{opacity:0;visibility:visible}.cdk-overlay-backdrop-noop-animation{transition:none}.cdk-overlay-connected-position-bounding-box{position:absolute;z-index:1000;display:flex;flex-direction:column;min-width:1px;min-height:1px}.cdk-global-scrollblock{position:fixed;width:100%;overflow-y:scroll}.aui-tooltip{position:relative;padding:var(--aui-spacing-xl);border-radius:var(--aui-border-radius-m);font-size:var(--aui-font-size-s);line-height:var(--aui-line-height-s);font-weight:var(--aui-font-weight-normal);max-width:400px;word-wrap:break-word}:root .aui-tooltip{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}html[aui-theme-mode=light] .aui-tooltip{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-tooltip{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}}html[aui-theme-mode=dark] .aui-tooltip{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}.aui-tooltip--default{padding:var(--aui-spacing-m) var(--aui-spacing-xl)}:root .aui-tooltip--default{color:rgb(var(--aui-color-n-10));background-color:rgb(var(--aui-color-n-1))}html[aui-theme-mode=light] .aui-tooltip--default{color:rgb(var(--aui-color-n-10));background-color:rgb(var(--aui-color-n-1))}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-tooltip--default{color:rgb(var(--aui-color-n-1));background-color:rgb(var(--aui-color-popper-bg))}}html[aui-theme-mode=dark] .aui-tooltip--default{color:rgb(var(--aui-color-n-1));background-color:rgb(var(--aui-color-popper-bg))}.aui-tooltip--primary{color:rgb(var(--aui-color-primary));background-color:rgb(var(--aui-color-popper-bg))}.aui-tooltip--success{color:rgb(var(--aui-color-green));background-color:rgb(var(--aui-color-popper-bg))}.aui-tooltip--warning{color:rgb(var(--aui-color-yellow));background-color:rgb(var(--aui-color-popper-bg))}.aui-tooltip--error{color:rgb(var(--aui-color-red));background-color:rgb(var(--aui-color-popper-bg))}.aui-tooltip--info{color:rgb(var(--aui-color-n-1));background-color:rgb(var(--aui-color-popper-bg))}.aui-tooltip--top,.aui-tooltip--bottom{margin:var(--aui-spacing-s) 0}.aui-tooltip--start,.aui-tooltip--end{margin:0 var(--aui-spacing-s)}\n"] }]
|
|
89
89
|
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; } });
|
|
90
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdG9vbHRpcC90b29sdGlwLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uL3NyYy90b29sdGlwL3Rvb2x0aXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFrQixPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFLFNBQVMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3BFLE9BQU8sRUFDTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUlULGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBRUwsT0FBTyxFQUNQLGFBQWEsRUFDYixHQUFHLEVBQ0gsU0FBUyxFQUNULGVBQWUsR0FDaEIsTUFBTSxNQUFNLENBQUM7QUFFZCxPQUFPLEVBQU8sUUFBUSxFQUFFLFVBQVUsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUVyRCxPQUFPLEVBQUUsVUFBVSxFQUFpQixNQUFNLGNBQWMsQ0FBQztBQUN6RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUM7O0FBYTlDLE1BQU0sT0FBTyxnQkFBZ0I7SUEwQmxCO0lBQ0E7SUExQlQsSUFBSSxDQUFTO0lBQ2IsUUFBUSxDQUFtQjtJQUMzQixHQUFHLEdBQVEsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ25DLFFBQVEsR0FBRyxZQUFZLENBQUM7SUFDeEIsYUFBYSxDQUFnQjtJQUU3QixhQUFhLENBQXdDO0lBQ3JELFVBQVUsQ0FBMEI7SUFDcEMsY0FBYyxDQUFxQjtJQUNuQyxXQUFXLENBQXFCO0lBQ2hDLGFBQWEsQ0FBa0I7SUFFL0IsS0FBSyxDQUFxQjtJQUMxQixTQUFTLENBQStCO0lBQ3hDLE1BQU0sQ0FBcUI7SUFDM0IsUUFBUSxDQUFrQjtJQUUxQixNQUFNLEdBQUcsSUFB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TyxDQUFDLENBQUM7UUFDN0MsSUFBSSxPQUFPLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLFNBQVMsS0FBSyxNQUFNLEVBQUU7WUFDckQsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDdkI7SUFDSCxDQUFDO0lBRUQsSUFBSTtRQUNGLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzVCLElBQUksQ0FBQyxRQUFRLEdBQUcsR0FBRyxJQUFJLENBQUMsYUFBYSxPQUFPLENBQUM7UUFDN0MsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsSUFBSTtRQUNGLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzVCLElBQUksQ0FBQyxRQUFRLEdBQUcsR0FBRyxJQUFJLENBQUMsYUFBYSxPQUFPLENBQUM7UUFDN0MsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMxQixDQUFDO3VHQXBHVSxnQkFBZ0I7MkZBQWhCLGdCQUFnQix1RUNwQzdCLGtnQkFpQkEsd3JHRGlCWSxJQUFJLDZGQUFFLGdCQUFnQiwrSUFBRSxTQUFTLGdDQUYvQixDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsVUFBVSxDQUFDLENBQUM7OzJGQUlsQyxnQkFBZ0I7a0JBWDVCLFNBQVM7K0JBQ0UsYUFBYSxpQkFHUixpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLHVCQUMxQixLQUFLLGNBQ2QsQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLFVBQVUsQ0FBQyxDQUFDLGNBQ2pDLElBQUksV0FDUCxDQUFDLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBbmltYXRpb25FdmVudCwgdHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHsgTmdJZiwgTmdUZW1wbGF0ZU91dGxldCwgQXN5bmNQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBPbkRlc3Ryb3ksXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBPYnNlcnZhYmxlLFxuICBTdWJqZWN0LFxuICBjb21iaW5lTGF0ZXN0LFxuICBtYXAsXG4gIHN0YXJ0V2l0aCxcbiAgQmVoYXZpb3JTdWJqZWN0LFxufSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgQmVtLCBidWlsZEJlbSwgcHVibGlzaFJlZiB9IGZyb20gJy4uL3V0aWxzJztcblxuaW1wb3J0IHsgYW5pbWF0aW9ucywgQW5pbWF0aW9uVHlwZSB9IGZyb20gJy4vYW5pbWF0aW9ucyc7XG5pbXBvcnQgeyBUb29sdGlwVHlwZSB9IGZyb20gJy4vdG9vbHRpcC50eXBlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F1aS10b29sdGlwJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Rvb2x0aXAuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90b29sdGlwLmNvbXBvbmVudC5zY3NzJ10sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBwcmVzZXJ2ZVdoaXRlc3BhY2VzOiBmYWxzZSxcbiAgYW5pbWF0aW9uczogW3RyaWdnZXIoJ3Nob3dIaWRlJywgYW5pbWF0aW9ucyldLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbTmdJZiwgTmdUZW1wbGF0ZU91dGxldCwgQXN5bmNQaXBlXSxcbn0pXG5leHBvcnQgY2xhc3MgVG9vbHRpcENvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHRleHQ6IHN0cmluZztcbiAgdGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG4gIGJlbTogQmVtID0gYnVpbGRCZW0oJ2F1aS10b29sdGlwJyk7XG4gIHNob3dIaWRlID0gJ3NjYWxlLWhpZGUnO1xuICBhbmltYXRpb25UeXBlOiBBbmltYXRpb25UeXBlO1xuXG4gIGlucHV0Q29udGVudCQ6IE9ic2VydmFibGU8c3RyaW5nIHwgVGVtcGxhdGVSZWY8YW55Pj47XG4gIGlucHV0VHlwZSQ6IE9ic2VydmFibGU8VG9vbHRpcFR5cGU+O1xuICBpbnB1dFBvc2l0aW9uJDogT2JzZXJ2YWJsZTxzdHJpbmc+O1xuICBpbnB1dENsYXNzJDogT2JzZXJ2YWJsZTxzdHJpbmc+O1xuICBpbnB1dENvbnRleHQkOiBPYnNlcnZhYmxlPGFueT47XG5cbiAgdGV4dCQ6IE9ic2VydmFibGU8c3RyaW5nPjtcbiAgdGVtcGxhdGUkOiBPYnNlcnZhYmxlPFRlbXBsYXRlUmVmPGFueT4+O1xuICBjbGFzcyQ6IE9ic2VydmFibGU8c3RyaW5nPjtcbiAgY29udGV4dCQ6IE9ic2VydmFibGU8YW55PjtcblxuICBob3ZlciQgPSBuZXcgU3ViamVjdDxib29sZWFuPigpO1xuICBkZXN0cm95JCA9IG5ldyBTdWJqZWN0KCk7XG4gIGFuaW1hdGluZyQkID0gbmV3IEJlaGF2aW9yU3ViamVjdChmYWxzZSk7XG4gIGhpZGUkID0gbmV3IFN1YmplY3QoKTtcbiAgYmVmb3JlSGlkZSQgPSBuZXcgU3ViamVjdCgpO1xuICBiZWZvcmVTaG93JCA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGVsUmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICBwdWJsaWMgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgKSB7fVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuZGVzdHJveSQubmV4dChudWxsKTtcbiAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gIH1cblxuICBzZXR1cElucHV0cyhpbnB1dHM6IHtcbiAgICBpbnB1dENvbnRlbnQkOiBPYnNlcnZhYmxlPHN0cmluZyB8IFRlbXBsYXRlUmVmPGFueT4+O1xuICAgIGlucHV0VHlwZSQ6IE9ic2VydmFibGU8VG9vbHRpcFR5cGU+O1xuICAgIGlucHV0UG9zaXRpb24kOiBPYnNlcnZhYmxlPHN0cmluZz47XG4gICAgaW5wdXRDbGFzcyQ6IE9ic2VydmFibGU8c3RyaW5nPjtcbiAgICBpbnB1dENvbnRleHQkOiBPYnNlcnZhYmxlPGFueT47XG4gICAgYW5pbWF0aW9uVHlwZT86IHN0cmluZztcbiAgfSkge1xuICAgIE9iamVjdC5hc3NpZ24odGhpcywgaW5wdXRzKTtcbiAgICB0aGlzLnRleHQkID0gdGhpcy5pbnB1dENvbnRlbnQkLnBpcGUoXG4gICAgICBtYXAodmFsID0+IHtcbiAgICAgICAgaWYgKHR5cGVvZiB2YWwgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgcmV0dXJuIHZhbDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gJyc7XG4gICAgICB9KSxcbiAgICAgIHB1Ymxpc2hSZWYoKSxcbiAgICApO1xuICAgIHRoaXMudGVtcGxhdGUkID0gdGhpcy5pbnB1dENvbnRlbnQkLnBpcGUoXG4gICAgICBtYXAodmFsID0+IHtcbiAgICAgICAgaWYgKHR5cGVvZiB2YWwgIT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgcmV0dXJuIHZhbDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH0pLFxuICAgICAgcHVibGlzaFJlZigpLFxuICAgICk7XG4gICAgdGhpcy5jbGFzcyQgPSBjb21iaW5lTGF0ZXN0KFtcbiAgICAgIHRoaXMuaW5wdXRQb3NpdGlvbiQucGlwZShzdGFydFdpdGgoJ3RvcCcpKSxcbiAgICAgIHRoaXMuaW5wdXRUeXBlJC5waXBlKHN0YXJ0V2l0aChUb29sdGlwVHlwZS5EZWZhdWx0KSksXG4gICAgICB0aGlzLmlucHV0Q2xhc3MkLnBpcGUoc3RhcnRXaXRoKCcnKSksXG4gICAgXSkucGlwZShcbiAgICAgIG1hcCgoW2lucHV0UG9zaXRpb24sIGlucHV0VHlwZSwgaW5wdXRDbGFzc10pID0+IHtcbiAgICAgICAgY29uc3QgYiA9IHRoaXMuYmVtLmJsb2NrKCk7XG4gICAgICAgIGNvbnN0IGRpciA9IGlucHV0UG9zaXRpb24uc3BsaXQoJyAnKVswXTtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICBgJHtifS0tJHtkaXJ9ICR7aW5wdXRDbGFzc30gJHt0aGlzLmJlbS5lbGVtZW50KFxuICAgICAgICAgICAgJ3RyYW5zZm9ybS1vcmlnaW4nLFxuICAgICAgICAgICl9IGAgK1xuICAgICAgICAgIChpbnB1dFR5cGUgPT09IFRvb2x0aXBUeXBlLlBsYWluID8gJycgOiBgJHtifSAke2J9LS0ke2lucHV0VHlwZX1gKVxuICAgICAgICApO1xuICAgICAgfSksXG4gICAgICBwdWJsaXNoUmVmKCksXG4gICAgKTtcbiAgICB0aGlzLmNvbnRleHQkID0gdGhpcy5pbnB1dENvbnRleHQkLnBpcGUocHVibGlzaFJlZigpKTtcbiAgfVxuXG4gIG9uQW5pbWF0aW9uKGV2ZW50OiBBbmltYXRpb25FdmVudCkge1xuICAgIGNvbnN0IHsgcGhhc2VOYW1lLCB0b1N0YXRlIH0gPSBldmVudDtcbiAgICB0aGlzLmFuaW1hdGluZyQkLm5leHQocGhhc2VOYW1lID09PSAnc3RhcnQnKTtcbiAgICBpZiAodG9TdGF0ZS5lbmRzV2l0aCgnLWhpZGUnKSAmJiBwaGFzZU5hbWUgPT09ICdkb25lJykge1xuICAgICAgdGhpcy5oaWRlJC5uZXh0KHRydWUpO1xuICAgIH1cbiAgfVxuXG4gIHNob3coKSB7XG4gICAgdGhpcy5iZWZvcmVTaG93JC5uZXh0KG51bGwpO1xuICAgIHRoaXMuc2hvd0hpZGUgPSBgJHt0aGlzLmFuaW1hdGlvblR5cGV9LXNob3dgO1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgaGlkZSgpIHtcbiAgICB0aGlzLmJlZm9yZUhpZGUkLm5leHQobnVsbCk7XG4gICAgdGhpcy5zaG93SGlkZSA9IGAke3RoaXMuYW5pbWF0aW9uVHlwZX0taGlkZWA7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cbn1cbiIsIjxkaXZcbiAgKm5nSWY9XCJpbnB1dENvbnRlbnQkIHwgYXN5bmNcIlxuICBbY2xhc3NdPVwiY2xhc3MkIHwgYXN5bmNcIlxuICAobW91c2VlbnRlcik9XCJob3ZlciQubmV4dCh0cnVlKVwiXG4gIChtb3VzZWxlYXZlKT1cImhvdmVyJC5uZXh0KGZhbHNlKVwiXG4gIFtALmRpc2FibGVkXT1cImFuaW1hdGlvblR5cGUgPT09ICdub25lJ1wiXG4gIFtAc2hvd0hpZGVdPVwic2hvd0hpZGVcIlxuICAoQHNob3dIaWRlLnN0YXJ0KT1cIm9uQW5pbWF0aW9uKCRldmVudClcIlxuICAoQHNob3dIaWRlLmRvbmUpPVwib25BbmltYXRpb24oJGV2ZW50KVwiXG4+XG4gIHt7IHRleHQkIHwgYXN5bmMgfX1cbiAgPG5nLWNvbnRhaW5lclxuICAgICpuZ0lmPVwidGVtcGxhdGUkIHwgYXN5bmNcIlxuICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInRlbXBsYXRlJCB8IGFzeW5jXCJcbiAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwiY29udGV4dCQgfCBhc3luY1wiXG4gID48L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuIl19
|
|
90
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdG9vbHRpcC90b29sdGlwLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uL3NyYy90b29sdGlwL3Rvb2x0aXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFrQixPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFLFNBQVMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3BFLE9BQU8sRUFDTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUlULGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBRUwsT0FBTyxFQUNQLGFBQWEsRUFDYixHQUFHLEVBQ0gsU0FBUyxFQUNULGVBQWUsR0FDaEIsTUFBTSxNQUFNLENBQUM7QUFFZCxPQUFPLEVBQU8sUUFBUSxFQUFFLFVBQVUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRTlELE9BQU8sRUFBRSxVQUFVLEVBQWlCLE1BQU0sY0FBYyxDQUFDO0FBQ3pELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFhOUMsTUFBTSxPQUFPLGdCQUFnQjtJQTBCbEI7SUFDQTtJQTFCVCxJQUFJLENBQVM7SUFDYixRQUFRLENBQW1CO0lBQzNCLEdBQUcsR0FBUSxRQUFRLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDbkMsUUFBUSxHQUFHLFlBQVksQ0FBQztJQUN4QixhQUFhLENBQWdCO0lBRTdCLGFBQWEsQ0FBd0M7SUFDckQsVUFBVSxDQUEwQjtJQUNwQyxjQUFjLENBQXFCO0lBQ25DLFdBQVcsQ0FBcUI7SUFDaEMsYUFBYSxDQUFrQjtJQUUvQixLQUFLLENBQXFCO0lBQzFCLFNBQVMsQ0FBK0I7SUFDeEMsTUFBTSxDQUFxQjtJQUMzQixRQUFRLENBQWtCO0lBRTFCLE1BQU0sR0FBRyxJ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QUFPLENBQUMsQ0FBQztRQUM3QyxJQUFJLE9BQU8sQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksU0FBUyxLQUFLLE1BQU0sRUFBRTtZQUNyRCxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUN2QjtJQUNILENBQUM7SUFFRCxJQUFJO1FBQ0YsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDNUIsSUFBSSxDQUFDLFFBQVEsR0FBRyxHQUFHLElBQUksQ0FBQyxhQUFhLE9BQU8sQ0FBQztRQUM3QyxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxJQUFJO1FBQ0YsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDNUIsSUFBSSxDQUFDLFFBQVEsR0FBRyxHQUFHLElBQUksQ0FBQyxhQUFhLE9BQU8sQ0FBQztRQUM3QyxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzFCLENBQUM7dUdBcEdVLGdCQUFnQjsyRkFBaEIsZ0JBQWdCLHVFQ3BDN0Isa2dCQWlCQSx3ckdEaUJZLElBQUksNkZBQUUsZ0JBQWdCLCtJQUFFLFNBQVMsZ0NBRi9CLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxVQUFVLENBQUMsQ0FBQzs7MkZBSWxDLGdCQUFnQjtrQkFYNUIsU0FBUzsrQkFDRSxhQUFhLGlCQUdSLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0sdUJBQzFCLEtBQUssY0FDZCxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsVUFBVSxDQUFDLENBQUMsY0FDakMsSUFBSSxXQUNQLENBQUMsSUFBSSxFQUFFLGdCQUFnQixFQUFFLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFuaW1hdGlvbkV2ZW50LCB0cmlnZ2VyIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQgeyBOZ0lmLCBOZ1RlbXBsYXRlT3V0bGV0LCBBc3luY1BpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIE9uRGVzdHJveSxcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIE9ic2VydmFibGUsXG4gIFN1YmplY3QsXG4gIGNvbWJpbmVMYXRlc3QsXG4gIG1hcCxcbiAgc3RhcnRXaXRoLFxuICBCZWhhdmlvclN1YmplY3QsXG59IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBCZW0sIGJ1aWxkQmVtLCBwdWJsaXNoUmVmIH0gZnJvbSAnLi4vaW50ZXJuYWwvdXRpbHMnO1xuXG5pbXBvcnQgeyBhbmltYXRpb25zLCBBbmltYXRpb25UeXBlIH0gZnJvbSAnLi9hbmltYXRpb25zJztcbmltcG9ydCB7IFRvb2x0aXBUeXBlIH0gZnJvbSAnLi90b29sdGlwLnR5cGVzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXVpLXRvb2x0aXAnLFxuICB0ZW1wbGF0ZVVybDogJy4vdG9vbHRpcC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3Rvb2x0aXAuY29tcG9uZW50LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByZXNlcnZlV2hpdGVzcGFjZXM6IGZhbHNlLFxuICBhbmltYXRpb25zOiBbdHJpZ2dlcignc2hvd0hpZGUnLCBhbmltYXRpb25zKV0sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtOZ0lmLCBOZ1RlbXBsYXRlT3V0bGV0LCBBc3luY1BpcGVdLFxufSlcbmV4cG9ydCBjbGFzcyBUb29sdGlwQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgdGV4dDogc3RyaW5nO1xuICB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcbiAgYmVtOiBCZW0gPSBidWlsZEJlbSgnYXVpLXRvb2x0aXAnKTtcbiAgc2hvd0hpZGUgPSAnc2NhbGUtaGlkZSc7XG4gIGFuaW1hdGlvblR5cGU6IEFuaW1hdGlvblR5cGU7XG5cbiAgaW5wdXRDb250ZW50JDogT2JzZXJ2YWJsZTxzdHJpbmcgfCBUZW1wbGF0ZVJlZjxhbnk+PjtcbiAgaW5wdXRUeXBlJDogT2JzZXJ2YWJsZTxUb29sdGlwVHlwZT47XG4gIGlucHV0UG9zaXRpb24kOiBPYnNlcnZhYmxlPHN0cmluZz47XG4gIGlucHV0Q2xhc3MkOiBPYnNlcnZhYmxlPHN0cmluZz47XG4gIGlucHV0Q29udGV4dCQ6IE9ic2VydmFibGU8YW55PjtcblxuICB0ZXh0JDogT2JzZXJ2YWJsZTxzdHJpbmc+O1xuICB0ZW1wbGF0ZSQ6IE9ic2VydmFibGU8VGVtcGxhdGVSZWY8YW55Pj47XG4gIGNsYXNzJDogT2JzZXJ2YWJsZTxzdHJpbmc+O1xuICBjb250ZXh0JDogT2JzZXJ2YWJsZTxhbnk+O1xuXG4gIGhvdmVyJCA9IG5ldyBTdWJqZWN0PGJvb2xlYW4+KCk7XG4gIGRlc3Ryb3kkID0gbmV3IFN1YmplY3QoKTtcbiAgYW5pbWF0aW5nJCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGZhbHNlKTtcbiAgaGlkZSQgPSBuZXcgU3ViamVjdCgpO1xuICBiZWZvcmVIaWRlJCA9IG5ldyBTdWJqZWN0KCk7XG4gIGJlZm9yZVNob3ckID0gbmV3IFN1YmplY3QoKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgZWxSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgIHB1YmxpYyBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICApIHt9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KG51bGwpO1xuICAgIHRoaXMuZGVzdHJveSQuY29tcGxldGUoKTtcbiAgfVxuXG4gIHNldHVwSW5wdXRzKGlucHV0czoge1xuICAgIGlucHV0Q29udGVudCQ6IE9ic2VydmFibGU8c3RyaW5nIHwgVGVtcGxhdGVSZWY8YW55Pj47XG4gICAgaW5wdXRUeXBlJDogT2JzZXJ2YWJsZTxUb29sdGlwVHlwZT47XG4gICAgaW5wdXRQb3NpdGlvbiQ6IE9ic2VydmFibGU8c3RyaW5nPjtcbiAgICBpbnB1dENsYXNzJDogT2JzZXJ2YWJsZTxzdHJpbmc+O1xuICAgIGlucHV0Q29udGV4dCQ6IE9ic2VydmFibGU8YW55PjtcbiAgICBhbmltYXRpb25UeXBlPzogc3RyaW5nO1xuICB9KSB7XG4gICAgT2JqZWN0LmFzc2lnbih0aGlzLCBpbnB1dHMpO1xuICAgIHRoaXMudGV4dCQgPSB0aGlzLmlucHV0Q29udGVudCQucGlwZShcbiAgICAgIG1hcCh2YWwgPT4ge1xuICAgICAgICBpZiAodHlwZW9mIHZhbCA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICByZXR1cm4gdmFsO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiAnJztcbiAgICAgIH0pLFxuICAgICAgcHVibGlzaFJlZigpLFxuICAgICk7XG4gICAgdGhpcy50ZW1wbGF0ZSQgPSB0aGlzLmlucHV0Q29udGVudCQucGlwZShcbiAgICAgIG1hcCh2YWwgPT4ge1xuICAgICAgICBpZiAodHlwZW9mIHZhbCAhPT0gJ3N0cmluZycpIHtcbiAgICAgICAgICByZXR1cm4gdmFsO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfSksXG4gICAgICBwdWJsaXNoUmVmKCksXG4gICAgKTtcbiAgICB0aGlzLmNsYXNzJCA9IGNvbWJpbmVMYXRlc3QoW1xuICAgICAgdGhpcy5pbnB1dFBvc2l0aW9uJC5waXBlKHN0YXJ0V2l0aCgndG9wJykpLFxuICAgICAgdGhpcy5pbnB1dFR5cGUkLnBpcGUoc3RhcnRXaXRoKFRvb2x0aXBUeXBlLkRlZmF1bHQpKSxcbiAgICAgIHRoaXMuaW5wdXRDbGFzcyQucGlwZShzdGFydFdpdGgoJycpKSxcbiAgICBdKS5waXBlKFxuICAgICAgbWFwKChbaW5wdXRQb3NpdGlvbiwgaW5wdXRUeXBlLCBpbnB1dENsYXNzXSkgPT4ge1xuICAgICAgICBjb25zdCBiID0gdGhpcy5iZW0uYmxvY2soKTtcbiAgICAgICAgY29uc3QgZGlyID0gaW5wdXRQb3NpdGlvbi5zcGxpdCgnICcpWzBdO1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIGAke2J9LS0ke2Rpcn0gJHtpbnB1dENsYXNzfSAke3RoaXMuYmVtLmVsZW1lbnQoXG4gICAgICAgICAgICAndHJhbnNmb3JtLW9yaWdpbicsXG4gICAgICAgICAgKX0gYCArXG4gICAgICAgICAgKGlucHV0VHlwZSA9PT0gVG9vbHRpcFR5cGUuUGxhaW4gPyAnJyA6IGAke2J9ICR7Yn0tLSR7aW5wdXRUeXBlfWApXG4gICAgICAgICk7XG4gICAgICB9KSxcbiAgICAgIHB1Ymxpc2hSZWYoKSxcbiAgICApO1xuICAgIHRoaXMuY29udGV4dCQgPSB0aGlzLmlucHV0Q29udGV4dCQucGlwZShwdWJsaXNoUmVmKCkpO1xuICB9XG5cbiAgb25BbmltYXRpb24oZXZlbnQ6IEFuaW1hdGlvbkV2ZW50KSB7XG4gICAgY29uc3QgeyBwaGFzZU5hbWUsIHRvU3RhdGUgfSA9IGV2ZW50O1xuICAgIHRoaXMuYW5pbWF0aW5nJCQubmV4dChwaGFzZU5hbWUgPT09ICdzdGFydCcpO1xuICAgIGlmICh0b1N0YXRlLmVuZHNXaXRoKCctaGlkZScpICYmIHBoYXNlTmFtZSA9PT0gJ2RvbmUnKSB7XG4gICAgICB0aGlzLmhpZGUkLm5leHQodHJ1ZSk7XG4gICAgfVxuICB9XG5cbiAgc2hvdygpIHtcbiAgICB0aGlzLmJlZm9yZVNob3ckLm5leHQobnVsbCk7XG4gICAgdGhpcy5zaG93SGlkZSA9IGAke3RoaXMuYW5pbWF0aW9uVHlwZX0tc2hvd2A7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBoaWRlKCkge1xuICAgIHRoaXMuYmVmb3JlSGlkZSQubmV4dChudWxsKTtcbiAgICB0aGlzLnNob3dIaWRlID0gYCR7dGhpcy5hbmltYXRpb25UeXBlfS1oaWRlYDtcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxufVxuIiwiPGRpdlxuICAqbmdJZj1cImlucHV0Q29udGVudCQgfCBhc3luY1wiXG4gIFtjbGFzc109XCJjbGFzcyQgfCBhc3luY1wiXG4gIChtb3VzZWVudGVyKT1cImhvdmVyJC5uZXh0KHRydWUpXCJcbiAgKG1vdXNlbGVhdmUpPVwiaG92ZXIkLm5leHQoZmFsc2UpXCJcbiAgW0AuZGlzYWJsZWRdPVwiYW5pbWF0aW9uVHlwZSA9PT0gJ25vbmUnXCJcbiAgW0BzaG93SGlkZV09XCJzaG93SGlkZVwiXG4gIChAc2hvd0hpZGUuc3RhcnQpPVwib25BbmltYXRpb24oJGV2ZW50KVwiXG4gIChAc2hvd0hpZGUuZG9uZSk9XCJvbkFuaW1hdGlvbigkZXZlbnQpXCJcbj5cbiAge3sgdGV4dCQgfCBhc3luYyB9fVxuICA8bmctY29udGFpbmVyXG4gICAgKm5nSWY9XCJ0ZW1wbGF0ZSQgfCBhc3luY1wiXG4gICAgW25nVGVtcGxhdGVPdXRsZXRdPVwidGVtcGxhdGUkIHwgYXN5bmNcIlxuICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJjb250ZXh0JCB8IGFzeW5jXCJcbiAgPjwvbmctY29udGFpbmVyPlxuPC9kaXY+XG4iXX0=
|