ng-virtual-list 18.11.3 → 18.12.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/README.md +115 -111
- package/esm2022/lib/components/ng-list-item/base/base-virtual-list-item-component.mjs +170 -61
- package/esm2022/lib/components/ng-list-item/const/index.mjs +41 -2
- package/esm2022/lib/components/ng-list-item/interfaces/template-context.mjs +1 -1
- package/esm2022/lib/components/ng-list-item/ng-virtual-list-item.component.mjs +55 -51
- package/esm2022/lib/components/ng-list-item/ng-virtual-list-item.module.mjs +5 -5
- package/esm2022/lib/components/ng-list-item/utils/create-display-id.mjs +7 -1
- package/esm2022/lib/components/ng-list-item/utils/get-element-by-index.mjs +17 -3
- package/esm2022/lib/components/ng-list-item/utils/index.mjs +3 -2
- package/esm2022/lib/components/ng-list-item/utils/matrix-3d.mjs +18 -0
- package/esm2022/lib/components/ng-prerender-container/components/ng-prerender-list/ng-prerender-list.component.mjs +172 -47
- package/esm2022/lib/components/ng-prerender-container/components/ng-prerender-list-item/ng-prerender-list-item.component.mjs +32 -16
- package/esm2022/lib/components/ng-prerender-container/components/ng-prerender-list-item/ng-prerender-list-item.module.mjs +5 -5
- package/esm2022/lib/components/ng-prerender-container/components/ng-prerender-scroller/ng-prerender-scroller.component.mjs +58 -34
- package/esm2022/lib/components/ng-prerender-container/core/prerender-track-box.mjs +37 -7
- package/esm2022/lib/components/ng-prerender-container/interfaces/refresh-params.mjs +1 -1
- package/esm2022/lib/components/ng-prerender-container/ng-prerender-container.component.mjs +58 -28
- package/esm2022/lib/components/ng-scroll-bar/const/index.mjs +8 -1
- package/esm2022/lib/components/ng-scroll-bar/interfaces/scroll-bar-template-context.mjs +1 -1
- package/esm2022/lib/components/ng-scroll-bar/ng-scroll-bar.component.mjs +236 -88
- package/esm2022/lib/components/ng-scroll-view/base/base-scroll-view.component.mjs +170 -44
- package/esm2022/lib/components/ng-scroll-view/const/index.mjs +4 -2
- package/esm2022/lib/components/ng-scroll-view/interfaces/scroll-to-params.mjs +1 -1
- package/esm2022/lib/components/ng-scroll-view/ng-scroll-view.component.mjs +610 -99
- package/esm2022/lib/components/ng-scroll-view/utils/calculate-direction.mjs +7 -1
- package/esm2022/lib/components/ng-scroll-view/utils/calculate-velocity.mjs +12 -0
- package/esm2022/lib/components/ng-scroll-view/utils/get-dir.mjs +10 -0
- package/esm2022/lib/components/ng-scroll-view/utils/index.mjs +4 -2
- package/esm2022/lib/components/ng-scroll-view/utils/matrix-3d.mjs +15 -0
- package/esm2022/lib/components/ng-scroller/enums/scroller-directions.mjs +1 -1
- package/esm2022/lib/components/ng-scroller/ng-scroller.component.mjs +342 -160
- package/esm2022/lib/const/index.mjs +50 -10
- package/esm2022/lib/core/cache-map.mjs +1 -54
- package/esm2022/lib/core/const/index.mjs +3 -0
- package/esm2022/lib/core/enums/index.mjs +3 -0
- package/esm2022/lib/core/enums/item-display-methods.mjs +14 -0
- package/esm2022/lib/core/events/index.mjs +3 -0
- package/esm2022/lib/core/events/track-box-events.mjs +12 -0
- package/esm2022/lib/core/interfaces/get-item-position-options.mjs +2 -0
- package/esm2022/lib/core/interfaces/get-metrics-returns.mjs +2 -0
- package/esm2022/lib/core/interfaces/index.mjs +2 -0
- package/esm2022/lib/core/interfaces/item.mjs +2 -0
- package/esm2022/lib/core/interfaces/metrics.mjs +2 -0
- package/esm2022/lib/core/interfaces/recalculate-metrics-options.mjs +2 -0
- package/esm2022/lib/core/interfaces/update-collection-options.mjs +2 -0
- package/esm2022/lib/core/interfaces/update-collection-returns.mjs +2 -0
- package/esm2022/lib/core/track-box.mjs +601 -191
- package/esm2022/lib/core/tracker.mjs +14 -8
- package/esm2022/lib/core/types/cache-map-events.mjs +2 -0
- package/esm2022/lib/core/types/cache-map-listeners.mjs +2 -0
- package/esm2022/lib/core/types/cache.mjs +2 -0
- package/esm2022/lib/core/types/index.mjs +2 -0
- package/esm2022/lib/core/types/on-change-event-listener.mjs +2 -0
- package/esm2022/lib/core/types/on-tick-event-listener.mjs +2 -0
- package/esm2022/lib/core/utils/get-service-id-prop.mjs +10 -0
- package/esm2022/lib/core/utils/index.mjs +3 -0
- package/esm2022/lib/directives/index.mjs +3 -3
- package/esm2022/lib/directives/locale-sensitive/locale-sensitive.directive.mjs +34 -13
- package/esm2022/lib/directives/virtual-click/virtual-click.directive.mjs +67 -0
- package/esm2022/lib/directives/virtual-click/virtual-click.module.mjs +19 -0
- package/esm2022/lib/enums/alignments.mjs +12 -0
- package/esm2022/lib/enums/collapsing-modes.mjs +22 -0
- package/esm2022/lib/enums/index.mjs +8 -4
- package/esm2022/lib/enums/selecting-modes-types.mjs +22 -0
- package/esm2022/lib/enums/selecting-modes.mjs +22 -0
- package/esm2022/lib/enums/snap-to-item-aligns.mjs +22 -0
- package/esm2022/lib/enums/spreading-modes.mjs +18 -0
- package/esm2022/lib/interfaces/animation-params.mjs +1 -1
- package/esm2022/lib/interfaces/base-virtual-list-item-component.mjs +2 -9
- package/esm2022/lib/interfaces/index.mjs +1 -1
- package/esm2022/lib/interfaces/item-transformation.mjs +2 -0
- package/esm2022/lib/interfaces/point.mjs +2 -0
- package/esm2022/lib/interfaces/scroll-options.mjs +1 -1
- package/esm2022/lib/interfaces/scroll-params.mjs +1 -1
- package/esm2022/lib/models/item-config-map.model.mjs +1 -1
- package/esm2022/lib/models/item.model.mjs +1 -1
- package/esm2022/lib/models/render-item-config.model.mjs +1 -1
- package/esm2022/lib/models/render-item-measures.model.mjs +1 -1
- package/esm2022/lib/ng-virtual-list-public.service.mjs +6 -7
- package/esm2022/lib/ng-virtual-list.component.mjs +2032 -902
- package/esm2022/lib/ng-virtual-list.service.mjs +91 -30
- package/esm2022/lib/transformations/deck-of-cards-3d.mjs +57 -0
- package/esm2022/lib/transformations/deck-of-cards.mjs +54 -0
- package/esm2022/lib/transformations/event-horizon.mjs +47 -0
- package/esm2022/lib/transformations/index.mjs +13 -0
- package/esm2022/lib/transformations/linear.mjs +47 -0
- package/esm2022/lib/transformations/swipe-3d.mjs +51 -0
- package/esm2022/lib/types/alignment.mjs +2 -0
- package/esm2022/lib/types/arithmetic-expression.mjs +2 -0
- package/esm2022/lib/types/collapsing-mode.mjs +2 -0
- package/esm2022/lib/types/collection-mode.mjs +2 -0
- package/esm2022/lib/types/color.mjs +2 -0
- package/esm2022/lib/types/direction.mjs +2 -0
- package/esm2022/lib/types/float-or-persentage-value.mjs +2 -0
- package/esm2022/lib/types/focus-item-params.mjs +1 -1
- package/esm2022/lib/types/gradient-color-position.mjs +1 -1
- package/esm2022/lib/types/index.mjs +1 -1
- package/esm2022/lib/types/item-transform.mjs +2 -0
- package/esm2022/lib/types/scroll-direction.mjs +1 -1
- package/esm2022/lib/types/selecting-mode.mjs +2 -0
- package/esm2022/lib/types/snap-to-item-align.mjs +2 -0
- package/esm2022/lib/types/snapping-distance.mjs +2 -0
- package/esm2022/lib/types/snapping-method.mjs +2 -0
- package/esm2022/lib/types/spreading-mode.mjs +2 -0
- package/esm2022/lib/types/text-direction.mjs +2 -0
- package/esm2022/lib/utils/animator/animator.mjs +28 -8
- package/esm2022/lib/utils/animator/const/index.mjs +2 -0
- package/esm2022/lib/utils/animator/index.mjs +3 -2
- package/esm2022/lib/utils/animator/interfaces/animator-params.mjs +2 -0
- package/esm2022/lib/utils/animator/interfaces/animator-update-data.mjs +2 -0
- package/esm2022/lib/utils/animator/interfaces/index.mjs +2 -0
- package/esm2022/lib/utils/animator/types/easing.mjs +1 -1
- package/esm2022/lib/utils/disposable-component.mjs +27 -0
- package/esm2022/lib/utils/event-emitter/event-emitter.mjs +1 -1
- package/esm2022/lib/utils/get-scroll-state-version.mjs +12 -0
- package/esm2022/lib/utils/is-collapse-mode.mjs +18 -0
- package/esm2022/lib/utils/is-collection-mode.mjs +1 -1
- package/esm2022/lib/utils/is-direction.mjs +1 -1
- package/esm2022/lib/utils/is-persentage-value.mjs +14 -0
- package/esm2022/lib/utils/is-select-mode.mjs +18 -0
- package/esm2022/lib/utils/is-spreading-mode.mjs +15 -0
- package/esm2022/lib/utils/list-validators.mjs +1 -1
- package/esm2022/lib/utils/normalize-collection.mjs +42 -0
- package/esm2022/lib/utils/object.mjs +1 -1
- package/esm2022/lib/utils/parse-arithmetic-expression.mjs +53 -0
- package/esm2022/lib/utils/parse-float-or-persentage-value.mjs +17 -0
- package/esm2022/lib/utils/scrolling-direction.mjs +29 -0
- package/esm2022/lib/utils/snapping-method.mjs +1 -1
- package/esm2022/public-api.mjs +4 -1
- package/fesm2022/ng-virtual-list.mjs +7539 -3898
- package/fesm2022/ng-virtual-list.mjs.map +1 -1
- package/lib/components/ng-list-item/base/base-virtual-list-item-component.d.ts +40 -16
- package/lib/components/ng-list-item/const/index.d.ts +3 -1
- package/lib/components/ng-list-item/interfaces/template-context.d.ts +1 -1
- package/lib/components/ng-list-item/ng-virtual-list-item.component.d.ts +5 -2
- package/lib/components/ng-list-item/ng-virtual-list-item.module.d.ts +2 -2
- package/lib/components/ng-list-item/utils/create-display-id.d.ts +6 -0
- package/lib/components/ng-list-item/utils/get-element-by-index.d.ts +15 -1
- package/lib/components/ng-list-item/utils/index.d.ts +2 -1
- package/lib/components/ng-list-item/utils/matrix-3d.d.ts +7 -0
- package/lib/components/ng-prerender-container/components/ng-prerender-list/ng-prerender-list.component.d.ts +69 -26
- package/lib/components/ng-prerender-container/components/ng-prerender-list-item/ng-prerender-list-item.component.d.ts +2 -2
- package/lib/components/ng-prerender-container/components/ng-prerender-list-item/ng-prerender-list-item.module.d.ts +2 -2
- package/lib/components/ng-prerender-container/components/ng-prerender-scroller/ng-prerender-scroller.component.d.ts +33 -12
- package/lib/components/ng-prerender-container/interfaces/refresh-params.d.ts +1 -0
- package/lib/components/ng-prerender-container/ng-prerender-container.component.d.ts +20 -17
- package/lib/components/ng-scroll-bar/const/index.d.ts +2 -0
- package/lib/components/ng-scroll-bar/interfaces/scroll-bar-template-context.d.ts +2 -2
- package/lib/components/ng-scroll-bar/ng-scroll-bar.component.d.ts +75 -24
- package/lib/components/ng-scroll-view/base/base-scroll-view.component.d.ts +49 -16
- package/lib/components/ng-scroll-view/const/index.d.ts +3 -1
- package/lib/components/ng-scroll-view/interfaces/scroll-to-params.d.ts +4 -1
- package/lib/components/ng-scroll-view/ng-scroll-view.component.d.ts +79 -11
- package/lib/components/ng-scroll-view/utils/calculate-direction.d.ts +6 -0
- package/lib/components/ng-scroll-view/utils/calculate-velocity.d.ts +7 -0
- package/lib/components/ng-scroll-view/utils/get-dir.d.ts +7 -0
- package/lib/components/ng-scroll-view/utils/index.d.ts +3 -1
- package/lib/components/ng-scroll-view/utils/matrix-3d.d.ts +7 -0
- package/lib/components/ng-scroller/enums/scroller-directions.d.ts +2 -1
- package/lib/components/ng-scroller/ng-scroller.component.d.ts +111 -47
- package/lib/const/index.d.ts +46 -5
- package/lib/core/cache-map.d.ts +0 -10
- package/lib/core/const/index.d.ts +1 -0
- package/lib/core/enums/index.d.ts +2 -0
- package/lib/core/enums/item-display-methods.d.ts +12 -0
- package/lib/core/events/index.d.ts +2 -0
- package/lib/core/events/track-box-events.d.ts +10 -0
- package/lib/core/interfaces/get-item-position-options.d.ts +10 -0
- package/lib/core/interfaces/get-metrics-returns.d.ts +11 -0
- package/lib/core/interfaces/index.d.ts +8 -0
- package/lib/core/interfaces/item.d.ts +9 -0
- package/lib/core/interfaces/metrics.d.ts +51 -0
- package/lib/core/interfaces/recalculate-metrics-options.d.ts +32 -0
- package/lib/core/interfaces/update-collection-options.d.ts +10 -0
- package/lib/core/interfaces/update-collection-returns.d.ts +14 -0
- package/lib/core/track-box.d.ts +25 -95
- package/lib/core/tracker.d.ts +1 -1
- package/lib/core/types/cache-map-events.d.ts +8 -0
- package/lib/core/types/cache-map-listeners.d.ts +9 -0
- package/lib/core/types/cache.d.ts +12 -0
- package/lib/core/types/index.d.ts +6 -0
- package/lib/core/types/on-change-event-listener.d.ts +7 -0
- package/lib/core/types/on-tick-event-listener.d.ts +7 -0
- package/lib/core/utils/get-service-id-prop.d.ts +7 -0
- package/lib/core/utils/index.d.ts +2 -0
- package/lib/directives/index.d.ts +2 -2
- package/lib/directives/locale-sensitive/locale-sensitive.directive.d.ts +16 -6
- package/lib/directives/virtual-click/virtual-click.directive.d.ts +22 -0
- package/lib/directives/virtual-click/virtual-click.module.d.ts +8 -0
- package/lib/enums/alignments.d.ts +10 -0
- package/lib/enums/collapsing-modes.d.ts +20 -0
- package/lib/enums/index.d.ts +7 -9
- package/lib/enums/{method-for-selecting-types.d.ts → selecting-modes-types.d.ts} +3 -3
- package/lib/enums/{methods-for-selecting.d.ts → selecting-modes.d.ts} +3 -3
- package/lib/enums/snap-to-item-aligns.d.ts +20 -0
- package/lib/enums/spreading-modes.d.ts +16 -0
- package/lib/interfaces/animation-params.d.ts +1 -0
- package/lib/interfaces/base-virtual-list-item-component.d.ts +13 -13
- package/lib/interfaces/index.d.ts +3 -2
- package/lib/interfaces/item-transformation.d.ts +22 -0
- package/lib/interfaces/point.d.ts +16 -0
- package/lib/interfaces/scroll-options.d.ts +4 -0
- package/lib/interfaces/scroll-params.d.ts +3 -2
- package/lib/models/item-config-map.model.d.ts +5 -0
- package/lib/models/item.model.d.ts +7 -0
- package/lib/models/render-item-config.model.d.ts +50 -0
- package/lib/models/render-item-measures.model.d.ts +71 -0
- package/lib/ng-virtual-list-public.service.d.ts +4 -5
- package/lib/ng-virtual-list.component.d.ts +462 -135
- package/lib/ng-virtual-list.service.d.ts +33 -12
- package/lib/transformations/deck-of-cards-3d.d.ts +54 -0
- package/lib/transformations/deck-of-cards.d.ts +50 -0
- package/lib/transformations/event-horizon.d.ts +26 -0
- package/lib/transformations/index.d.ts +7 -0
- package/lib/transformations/linear.d.ts +26 -0
- package/lib/transformations/swipe-3d.d.ts +38 -0
- package/lib/types/alignment.d.ts +8 -0
- package/lib/types/arithmetic-expression.d.ts +10 -0
- package/lib/types/collapsing-mode.d.ts +8 -0
- package/lib/{enums → types}/collection-mode.d.ts +1 -1
- package/lib/types/color.d.ts +4 -0
- package/lib/{enums → types}/direction.d.ts +1 -1
- package/lib/types/float-or-persentage-value.d.ts +7 -0
- package/lib/types/focus-item-params.d.ts +6 -0
- package/lib/types/gradient-color-position.d.ts +1 -1
- package/lib/types/index.d.ts +15 -1
- package/lib/types/item-transform.d.ts +9 -0
- package/lib/types/scroll-direction.d.ts +2 -0
- package/lib/types/selecting-mode.d.ts +8 -0
- package/lib/types/snap-to-item-align.d.ts +8 -0
- package/lib/types/snapping-distance.d.ts +8 -0
- package/lib/{enums → types}/snapping-method.d.ts +1 -1
- package/lib/types/spreading-mode.d.ts +8 -0
- package/lib/{enums → types}/text-direction.d.ts +1 -1
- package/lib/utils/animator/animator.d.ts +10 -17
- package/lib/utils/animator/const/index.d.ts +1 -0
- package/lib/utils/animator/index.d.ts +2 -1
- package/lib/utils/animator/interfaces/animator-params.d.ts +18 -0
- package/lib/utils/animator/interfaces/animator-update-data.d.ts +13 -0
- package/lib/utils/animator/interfaces/index.d.ts +3 -0
- package/lib/utils/animator/types/easing.d.ts +6 -0
- package/lib/utils/disposable-component.d.ts +15 -0
- package/lib/utils/get-scroll-state-version.d.ts +1 -0
- package/lib/utils/is-collapse-mode.d.ts +8 -0
- package/lib/utils/is-collection-mode.d.ts +1 -1
- package/lib/utils/is-direction.d.ts +1 -1
- package/lib/utils/is-persentage-value.d.ts +7 -0
- package/lib/utils/is-select-mode.d.ts +8 -0
- package/lib/utils/is-spreading-mode.d.ts +8 -0
- package/lib/utils/list-validators.d.ts +1 -1
- package/lib/utils/normalize-collection.d.ts +8 -0
- package/lib/utils/object.d.ts +1 -1
- package/lib/utils/parse-arithmetic-expression.d.ts +8 -0
- package/lib/utils/parse-float-or-persentage-value.d.ts +7 -0
- package/lib/utils/scrolling-direction.d.ts +17 -0
- package/lib/utils/snapping-method.d.ts +1 -1
- package/package.json +1 -1
- package/public-api.d.ts +3 -0
- package/esm2022/lib/components/ng-scroller/const/index.mjs +0 -2
- package/esm2022/lib/directives/item-click/item-click.directive.mjs +0 -59
- package/esm2022/lib/directives/item-click/item-click.module.mjs +0 -19
- package/esm2022/lib/enums/collection-mode.mjs +0 -2
- package/esm2022/lib/enums/direction.mjs +0 -2
- package/esm2022/lib/enums/method-for-selecting-types.mjs +0 -22
- package/esm2022/lib/enums/method-for-selecting.mjs +0 -2
- package/esm2022/lib/enums/methods-for-selecting.mjs +0 -22
- package/esm2022/lib/enums/snapping-method.mjs +0 -2
- package/esm2022/lib/enums/text-direction.mjs +0 -2
- package/esm2022/lib/utils/is-method-for-selecting.mjs +0 -18
- package/lib/components/ng-scroller/const/index.d.ts +0 -1
- package/lib/directives/item-click/item-click.directive.d.ts +0 -19
- package/lib/directives/item-click/item-click.module.d.ts +0 -8
- package/lib/enums/method-for-selecting.d.ts +0 -8
- package/lib/utils/is-method-for-selecting.d.ts +0 -8
|
@@ -1,33 +1,51 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component,
|
|
2
|
-
import {
|
|
3
|
-
import { combineLatest, from, tap } from 'rxjs';
|
|
1
|
+
import { ChangeDetectionStrategy, Component, Input, ViewChild } from '@angular/core';
|
|
2
|
+
import { BehaviorSubject, combineLatest, from, takeUntil, tap } from 'rxjs';
|
|
4
3
|
import { TextDirections } from '../../../../enums';
|
|
5
4
|
import { BaseScrollView } from '../../../ng-scroll-view/base/base-scroll-view.component';
|
|
6
5
|
import { SCROLL_VIEW_INVERSION } from '../../../ng-scroll-view';
|
|
7
6
|
import { BEHAVIOR_INSTANT, DEFAULT_SCROLLBAR_ENABLED, LEFT_PROP_NAME, TOP_PROP_NAME } from '../../../../const';
|
|
8
7
|
import { NgScrollBarComponent } from '../../../ng-scroll-bar/ng-scroll-bar.component';
|
|
9
8
|
import { ScrollBox } from '../../../ng-scroller/utils';
|
|
10
|
-
import { SCROLL_VIEW_NORMALIZE_VALUE_FROM_ZERO } from '../../../ng-scroll-view/const';
|
|
9
|
+
import { SCROLL_VIEW_NORMALIZE_VALUE_FROM_ZERO, SCROLL_VIEW_OVERSCROLL_ENABLED } from '../../../ng-scroll-view/const';
|
|
11
10
|
import * as i0 from "@angular/core";
|
|
12
11
|
import * as i1 from "@angular/common";
|
|
13
12
|
import * as i2 from "../../../../directives/locale-sensitive/locale-sensitive.directive";
|
|
14
13
|
/**
|
|
15
|
-
*
|
|
14
|
+
* NgPrerenderScrollerComponent
|
|
16
15
|
* Maximum performance for extremely large lists.
|
|
17
16
|
* It is based on algorithms for virtualization of screen objects.
|
|
18
|
-
* @link https://github.com/DjonnyX/ng-virtual-list/blob/18.x/projects/ng-virtual-list/src/lib/components/prerender-container/prerender-scroller/prerender-scroller.component.ts
|
|
17
|
+
* @link https://github.com/DjonnyX/ng-virtual-list/blob/18.x/projects/ng-virtual-list/src/lib/components/ng-prerender-container/components/ng-prerender-scroller/ng-prerender-scroller.component.ts
|
|
19
18
|
* @author Evgenii Alexandrovich Grebennikov
|
|
20
19
|
* @email djonnyx@gmail.com
|
|
21
20
|
*/
|
|
22
21
|
export class NgPrerenderScrollerComponent extends BaseScrollView {
|
|
23
22
|
scrollBar;
|
|
24
|
-
langTextDir =
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
23
|
+
_$langTextDir = new BehaviorSubject(TextDirections.LTR);
|
|
24
|
+
$langTextDir = this._$langTextDir.asObservable();
|
|
25
|
+
_$scrollbarEnabled = new BehaviorSubject(DEFAULT_SCROLLBAR_ENABLED);
|
|
26
|
+
$scrollbarEnabled = this._$scrollbarEnabled.asObservable();
|
|
27
|
+
set scrollbarEnabled(v) {
|
|
28
|
+
if (this._$scrollbarEnabled.getValue() !== v) {
|
|
29
|
+
this._$scrollbarEnabled.next(v);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
get scrollbarEnabled() { return this._$scrollbarEnabled.getValue(); }
|
|
33
|
+
_$classes = new BehaviorSubject({});
|
|
34
|
+
$classes = this._$classes.asObservable();
|
|
35
|
+
set classes(v) {
|
|
36
|
+
if (this._$classes.getValue() !== v) {
|
|
37
|
+
this._$classes.next(v);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
get classes() { return this._$classes.getValue(); }
|
|
41
|
+
_$actualClasses = new BehaviorSubject({});
|
|
42
|
+
$actualClasses = this._$actualClasses.asObservable();
|
|
43
|
+
_$containerClasses = new BehaviorSubject({});
|
|
44
|
+
$containerClasses = this._$containerClasses.asObservable();
|
|
45
|
+
_$thumbSize = new BehaviorSubject(0);
|
|
46
|
+
$thumbSize = this._$thumbSize.asObservable();
|
|
47
|
+
_$scrollbarShow = new BehaviorSubject(false);
|
|
48
|
+
$scrollbarShow = this._$scrollbarShow.asObservable();
|
|
31
49
|
set x(v) {
|
|
32
50
|
if (v !== undefined && !Number.isNaN(v)) {
|
|
33
51
|
this._x = this._actualX = v;
|
|
@@ -43,41 +61,41 @@ export class NgPrerenderScrollerComponent extends BaseScrollView {
|
|
|
43
61
|
}
|
|
44
62
|
get y() { return this._y; }
|
|
45
63
|
onResizeViewport() {
|
|
46
|
-
const viewport = this.scrollViewport
|
|
64
|
+
const viewport = this.scrollViewport?.nativeElement;
|
|
47
65
|
if (viewport) {
|
|
48
|
-
this.viewportBounds.
|
|
66
|
+
this._$viewportBounds.next({ width: viewport.offsetWidth, height: viewport.offsetHeight });
|
|
49
67
|
this.updateScrollBar();
|
|
50
68
|
}
|
|
51
69
|
}
|
|
52
70
|
onResizeContent() {
|
|
53
|
-
const content = this.scrollContent
|
|
71
|
+
const content = this.scrollContent?.nativeElement;
|
|
54
72
|
if (content) {
|
|
55
|
-
this.contentBounds.
|
|
73
|
+
this._$contentBounds.next({ width: content.offsetWidth, height: content.offsetHeight });
|
|
56
74
|
this.updateScrollBar();
|
|
57
75
|
}
|
|
58
76
|
}
|
|
59
77
|
_scrollBox = new ScrollBox();
|
|
60
78
|
constructor() {
|
|
61
79
|
super();
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
});
|
|
66
|
-
const $contentBounds =
|
|
67
|
-
combineLatest([$direction, $scrollbarEnabled, $isVertical, $contentBounds, $viewportBounds]).pipe(
|
|
68
|
-
this.containerClasses.
|
|
80
|
+
const $classes = this.$classes, $direction = this.$direction;
|
|
81
|
+
combineLatest(([$classes, $direction])).pipe(takeUntil(this._$unsubscribe), tap(([classes, direction]) => {
|
|
82
|
+
this._$actualClasses.next({ ...classes, [direction]: true });
|
|
83
|
+
})).subscribe();
|
|
84
|
+
const $contentBounds = this.$contentBounds, $viewportBounds = this.$viewportBounds, $isVertical = this.$isVertical, $scrollbarEnabled = this.$scrollbarEnabled;
|
|
85
|
+
combineLatest([$direction, $scrollbarEnabled, $isVertical, $contentBounds, $viewportBounds]).pipe(takeUntil(this._$unsubscribe), tap(([direction, scrollbarEnabled]) => {
|
|
86
|
+
this._$containerClasses.next({ [direction]: true, enabled: scrollbarEnabled, scrollable: scrollbarEnabled });
|
|
69
87
|
})).subscribe();
|
|
70
|
-
const $startOffset =
|
|
71
|
-
from([$endOffset, $startOffset, $thumbSize, $isVertical]).pipe(
|
|
88
|
+
const $startOffset = this.$startOffset, $endOffset = this.$endOffset, $thumbSize = this.$thumbSize;
|
|
89
|
+
from([$endOffset, $startOffset, $thumbSize, $isVertical]).pipe(takeUntil(this._$unsubscribe), tap(() => {
|
|
72
90
|
this.updateScrollBar();
|
|
73
91
|
})).subscribe();
|
|
74
92
|
const $updateScrollBar = this.$updateScrollBar;
|
|
75
|
-
$updateScrollBar.pipe(
|
|
93
|
+
$updateScrollBar.pipe(takeUntil(this._$unsubscribe), tap(() => {
|
|
76
94
|
this.updateScrollBarHandler(true);
|
|
77
95
|
})).subscribe();
|
|
78
96
|
}
|
|
79
97
|
updateScrollBarHandler(update = false) {
|
|
80
|
-
const direction = this.direction(), isVertical = this.isVertical(), startOffset = this.startOffset(), endOffset = this.endOffset(), scrollContent = this.scrollContent
|
|
98
|
+
const direction = this._$direction.getValue(), isVertical = this._$isVertical.getValue(), startOffset = this._$startOffset.getValue(), endOffset = this._$endOffset.getValue(), scrollContent = this.scrollContent?.nativeElement, scrollViewport = this.scrollViewport?.nativeElement, { thumbSize, thumbPosition, } = this._scrollBox.calculateScroll({
|
|
81
99
|
direction,
|
|
82
100
|
viewportWidth: scrollViewport.offsetWidth, viewportHeight: scrollViewport.offsetHeight,
|
|
83
101
|
contentWidth: scrollContent.offsetWidth, contentHeight: scrollContent.offsetHeight,
|
|
@@ -87,32 +105,38 @@ export class NgPrerenderScrollerComponent extends BaseScrollView {
|
|
|
87
105
|
positionY: this._y,
|
|
88
106
|
minSize: 1,
|
|
89
107
|
});
|
|
90
|
-
this.thumbSize.
|
|
108
|
+
this._$thumbSize.next(thumbSize);
|
|
91
109
|
if (update) {
|
|
92
110
|
this.scrollBar?.scroll({
|
|
93
111
|
[isVertical ? TOP_PROP_NAME : LEFT_PROP_NAME]: thumbPosition, fireUpdate: false, behavior: BEHAVIOR_INSTANT,
|
|
94
112
|
userAction: false, blending: true,
|
|
95
113
|
});
|
|
96
114
|
}
|
|
97
|
-
this.scrollbarShow.
|
|
115
|
+
this._$scrollbarShow.next(this.scrollable);
|
|
98
116
|
}
|
|
99
117
|
updateScrollBar() {
|
|
100
118
|
this._$updateScrollBar.next();
|
|
101
119
|
}
|
|
102
120
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NgPrerenderScrollerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
103
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
121
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: NgPrerenderScrollerComponent, selector: "ng-prerender-scroller", inputs: { scrollbarEnabled: "scrollbarEnabled", classes: "classes" }, providers: [
|
|
104
122
|
{ provide: SCROLL_VIEW_INVERSION, useValue: false },
|
|
105
123
|
{ provide: SCROLL_VIEW_NORMALIZE_VALUE_FROM_ZERO, useValue: true },
|
|
106
|
-
|
|
124
|
+
{ provide: SCROLL_VIEW_OVERSCROLL_ENABLED, useValue: false },
|
|
125
|
+
], viewQueries: [{ propertyName: "scrollBar", first: true, predicate: ["scrollBar"], descendants: true, read: NgScrollBarComponent }], usesInheritance: true, ngImport: i0, template: "<div localeSensitive [langTextDir]=\"($langTextDir | async)!\" [listDir]=\"($direction | async)\" class=\"ngvl__container\"\r\n [ngClass]=\"($containerClasses | async)!\">\r\n <div #scrollViewport part=\"scroller\" class=\"ngvl__scroller\">\r\n <div #scrollContent part=\"list\" class=\"ngvl__list\" [ngClass]=\"($actualClasses | async)\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n</div>", styles: [":host{position:relative;overflow:hidden;-webkit-user-select:none;user-select:none}.ngvl__container{position:relative;overflow:hidden;display:grid;width:100%;height:100%;cursor:grab}.ngvl__container.overlapping{position:relative;display:block}.ngvl__container.grabbing{cursor:grabbing}.ngvl__container.horizontal{transition:grid-template-rows .1s ease-out}.ngvl__container.horizontal:not(.overlapping){grid-template-rows:1fr 0}.ngvl__container.horizontal.scrollable.enabled:not(.overlapping){grid-template-rows:1fr auto}.ngvl__container.horizontal .ngvl__list{display:inline-flex}.ngvl__container.horizontal .ngvl__scroller-wrapper.filtered,.ngvl__container.horizontal .ngvl__scroller{overflow:unset}.ngvl__container.vertical{transition:grid-template-columns .1s ease-out}.ngvl__container.vertical:not(.overlapping){grid-template-columns:1fr 0}.ngvl__container.vertical.scrollable.enabled:not(.overlapping){grid-template-columns:1fr auto}.ngvl__container.vertical .ngvl__scroller-wrapper.filtered,.ngvl__container.vertical .ngvl__scroller{overflow:unset}.ngvl__container .ngvl__scroller-wrapper,.ngvl__container .ngvl__scroller{display:block;position:relative;overflow:hidden;width:100%;height:100%}.ngvl__container .ngvl__list{position:absolute;list-style:none;padding:0;margin:0;width:100%;height:100%;opacity:0}.ngvl__container .ngvl__list.prepared{opacity:1}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.LocaleSensitiveDirective, selector: "[localeSensitive]", inputs: ["langTextDir", "listDir"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
107
126
|
}
|
|
108
127
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NgPrerenderScrollerComponent, decorators: [{
|
|
109
128
|
type: Component,
|
|
110
129
|
args: [{ selector: 'ng-prerender-scroller', providers: [
|
|
111
130
|
{ provide: SCROLL_VIEW_INVERSION, useValue: false },
|
|
112
131
|
{ provide: SCROLL_VIEW_NORMALIZE_VALUE_FROM_ZERO, useValue: true },
|
|
113
|
-
|
|
132
|
+
{ provide: SCROLL_VIEW_OVERSCROLL_ENABLED, useValue: false },
|
|
133
|
+
], standalone: false, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div localeSensitive [langTextDir]=\"($langTextDir | async)!\" [listDir]=\"($direction | async)\" class=\"ngvl__container\"\r\n [ngClass]=\"($containerClasses | async)!\">\r\n <div #scrollViewport part=\"scroller\" class=\"ngvl__scroller\">\r\n <div #scrollContent part=\"list\" class=\"ngvl__list\" [ngClass]=\"($actualClasses | async)\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n</div>", styles: [":host{position:relative;overflow:hidden;-webkit-user-select:none;user-select:none}.ngvl__container{position:relative;overflow:hidden;display:grid;width:100%;height:100%;cursor:grab}.ngvl__container.overlapping{position:relative;display:block}.ngvl__container.grabbing{cursor:grabbing}.ngvl__container.horizontal{transition:grid-template-rows .1s ease-out}.ngvl__container.horizontal:not(.overlapping){grid-template-rows:1fr 0}.ngvl__container.horizontal.scrollable.enabled:not(.overlapping){grid-template-rows:1fr auto}.ngvl__container.horizontal .ngvl__list{display:inline-flex}.ngvl__container.horizontal .ngvl__scroller-wrapper.filtered,.ngvl__container.horizontal .ngvl__scroller{overflow:unset}.ngvl__container.vertical{transition:grid-template-columns .1s ease-out}.ngvl__container.vertical:not(.overlapping){grid-template-columns:1fr 0}.ngvl__container.vertical.scrollable.enabled:not(.overlapping){grid-template-columns:1fr auto}.ngvl__container.vertical .ngvl__scroller-wrapper.filtered,.ngvl__container.vertical .ngvl__scroller{overflow:unset}.ngvl__container .ngvl__scroller-wrapper,.ngvl__container .ngvl__scroller{display:block;position:relative;overflow:hidden;width:100%;height:100%}.ngvl__container .ngvl__list{position:absolute;list-style:none;padding:0;margin:0;width:100%;height:100%;opacity:0}.ngvl__container .ngvl__list.prepared{opacity:1}\n"] }]
|
|
114
134
|
}], ctorParameters: () => [], propDecorators: { scrollBar: [{
|
|
115
135
|
type: ViewChild,
|
|
116
136
|
args: ['scrollBar', { read: NgScrollBarComponent }]
|
|
137
|
+
}], scrollbarEnabled: [{
|
|
138
|
+
type: Input
|
|
139
|
+
}], classes: [{
|
|
140
|
+
type: Input
|
|
117
141
|
}] } });
|
|
118
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctcHJlcmVuZGVyLXNjcm9sbGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXZpcnR1YWwtbGlzdC9zcmMvbGliL2NvbXBvbmVudHMvbmctcHJlcmVuZGVyLWNvbnRhaW5lci9jb21wb25lbnRzL25nLXByZXJlbmRlci1zY3JvbGxlci9uZy1wcmVyZW5kZXItc2Nyb2xsZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctdmlydHVhbC1saXN0L3NyYy9saWIvY29tcG9uZW50cy9uZy1wcmVyZW5kZXItY29udGFpbmVyL2NvbXBvbmVudHMvbmctcHJlcmVuZGVyLXNjcm9sbGVyL25nLXByZXJlbmRlci1zY3JvbGxlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvRyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsWUFBWSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDOUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2hELE9BQU8sRUFBaUIsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlEQUF5RCxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSx5QkFBeUIsRUFBRSxjQUFjLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDL0csT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDdEYs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QVUsQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsRUFBRSxhQUFhLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsZ0JBQWdCO2dCQUMzRyxVQUFVLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxJQUFJO2FBQ3BDLENBQUMsQ0FBQztRQUNQLENBQUM7UUFDRCxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVTLGVBQWU7UUFDckIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2xDLENBQUM7d0dBaklRLDRCQUE0Qjs0RkFBNUIsNEJBQTRCLG1WQVAxQjtZQUNQLEVBQUUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUU7WUFDbkQsRUFBRSxPQUFPLEVBQUUscUNBQXFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtTQUNyRSw2R0FLK0Isb0JBQW9CLG9EQy9CeEQsK1lBT007OzRGRHVCTyw0QkFBNEI7a0JBWHhDLFNBQVM7K0JBQ0ksdUJBQXVCLGFBR3RCO3dCQUNQLEVBQUUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUU7d0JBQ25ELEVBQUUsT0FBTyxFQUFFLHFDQUFxQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7cUJBQ3JFLGNBQ1csS0FBSyxtQkFDQSx1QkFBdUIsQ0FBQyxNQUFNO3dEQUkvQyxTQUFTO3NCQURSLFNBQVM7dUJBQUMsV0FBVyxFQUFFLEVBQUUsSUFBSSxFQUFFLG9CQUFvQixFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgY29tcHV0ZWQsIGlucHV0LCBTaWduYWwsIHNpZ25hbCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCwgdG9PYnNlcnZhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xyXG5pbXBvcnQgeyBjb21iaW5lTGF0ZXN0LCBmcm9tLCB0YXAgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgVGV4dERpcmVjdGlvbiwgVGV4dERpcmVjdGlvbnMgfSBmcm9tICcuLi8uLi8uLi8uLi9lbnVtcyc7XHJcbmltcG9ydCB7IEJhc2VTY3JvbGxWaWV3IH0gZnJvbSAnLi4vLi4vLi4vbmctc2Nyb2xsLXZpZXcvYmFzZS9iYXNlLXNjcm9sbC12aWV3LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFNDUk9MTF9WSUVXX0lOVkVSU0lPTiB9IGZyb20gJy4uLy4uLy4uL25nLXNjcm9sbC12aWV3JztcclxuaW1wb3J0IHsgQkVIQVZJT1JfSU5TVEFOVCwgREVGQVVMVF9TQ1JPTExCQVJfRU5BQkxFRCwgTEVGVF9QUk9QX05BTUUsIFRPUF9QUk9QX05BTUUgfSBmcm9tICcuLi8uLi8uLi8uLi9jb25zdCc7XHJcbmltcG9ydCB7IE5nU2Nyb2xsQmFyQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vbmctc2Nyb2xsLWJhci9uZy1zY3JvbGwtYmFyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFNjcm9sbEJveCB9IGZyb20gJy4uLy4uLy4uL25nLXNjcm9sbGVyL3V0aWxzJztcclxuaW1wb3J0IHsgU0NST0xMX1ZJRVdfTk9STUFMSVpFX1ZBTFVFX0ZST01fWkVSTyB9IGZyb20gJy4uLy4uLy4uL25nLXNjcm9sbC12aWV3L2NvbnN0JztcclxuXHJcbi8qKlxyXG4gKiBQcmVyZW5kZXJTY3JvbGxlckNvbXBvbmVudC5cclxuICogTWF4aW11bSBwZXJmb3JtYW5jZSBmb3IgZXh0cmVtZWx5IGxhcmdlIGxpc3RzLlxyXG4gKiBJdCBpcyBiYXNlZCBvbiBhbGdvcml0aG1zIGZvciB2aXJ0dWFsaXphdGlvbiBvZiBzY3JlZW4gb2JqZWN0cy5cclxuICogQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL0Rqb25ueVgvbmctdmlydHVhbC1saXN0L2Jsb2IvMTgueC9wcm9qZWN0cy9uZy12aXJ0dWFsLWxpc3Qvc3JjL2xpYi9jb21wb25lbnRzL3ByZXJlbmRlci1jb250YWluZXIvcHJlcmVuZGVyLXNjcm9sbGVyL3ByZXJlbmRlci1zY3JvbGxlci5jb21wb25lbnQudHNcclxuICogQGF1dGhvciBFdmdlbmlpIEFsZXhhbmRyb3ZpY2ggR3JlYmVubmlrb3ZcclxuICogQGVtYWlsIGRqb25ueXhAZ21haWwuY29tXHJcbiAqL1xyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnbmctcHJlcmVuZGVyLXNjcm9sbGVyJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9uZy1wcmVyZW5kZXItc2Nyb2xsZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmw6ICcuLi8uLi8uLi9uZy1zY3JvbGxlci9uZy1zY3JvbGxlci5jb21wb25lbnQuc2NzcycsXHJcbiAgICBwcm92aWRlcnM6IFtcclxuICAgICAgICB7IHByb3ZpZGU6IFNDUk9MTF9WSUVXX0lOVkVSU0lPTiwgdXNlVmFsdWU6IGZhbHNlIH0sXHJcbiAgICAgICAgeyBwcm92aWRlOiBTQ1JPTExfVklFV19OT1JNQUxJWkVfVkFMVUVfRlJPTV9aRVJPLCB1c2VWYWx1ZTogdHJ1ZSB9LFxyXG4gICAgXSxcclxuICAgIHN0YW5kYWxvbmU6IGZhbHNlLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBOZ1ByZXJlbmRlclNjcm9sbGVyQ29tcG9uZW50IGV4dGVuZHMgQmFzZVNjcm9sbFZpZXcge1xyXG4gICAgQFZpZXdDaGlsZCgnc2Nyb2xsQmFyJywgeyByZWFkOiBOZ1Njcm9sbEJhckNvbXBvbmVudCB9KVxyXG4gICAgc2Nyb2xsQmFyOiBOZ1Njcm9sbEJhckNvbXBvbmVudCB8IHVuZGVmaW5lZDtcclxuXHJcbiAgICBsYW5nVGV4dERpciA9IHNpZ25hbDxUZXh0RGlyZWN0aW9uPihUZXh0RGlyZWN0aW9ucy5MVFIpO1xyXG5cclxuICAgIHNjcm9sbGJhckVuYWJsZWQgPSBpbnB1dDxib29sZWFuPihERUZBVUxUX1NDUk9MTEJBUl9FTkFCTEVEKTtcclxuXHJcbiAgICBjbGFzc2VzID0gaW5wdXQ8eyBbY05hbWU6IHN0cmluZ106IGJvb2xlYW4gfT4oe30pO1xyXG5cclxuICAgIGFjdHVhbENsYXNzZXM6IFNpZ25hbDx7IFtjTmFtZTogc3RyaW5nXTogYm9vbGVhbiB9PjtcclxuXHJcbiAgICBjb250YWluZXJDbGFzc2VzID0gc2lnbmFsPHsgW2NOYW1lOiBzdHJpbmddOiBib29sZWFuIH0+KHt9KTtcclxuXHJcbiAgICB0aHVtYlNpemUgPSBzaWduYWw8bnVtYmVyPigwKTtcclxuXHJcbiAgICBzY3JvbGxiYXJTaG93ID0gc2lnbmFsPGJvb2xlYW4+KGZhbHNlKTtcclxuXHJcbiAgICBvdmVycmlkZSBzZXQgeCh2OiBudW1iZXIpIHtcclxuICAgICAgICBpZiAodiAhPT0gdW5kZWZpbmVkICYmICFOdW1iZXIuaXNOYU4odikpIHtcclxuICAgICAgICAgICAgdGhpcy5feCA9IHRoaXMuX2FjdHVhbFggPSB2O1xyXG5cclxuICAgICAgICAgICAgdGhpcy51cGRhdGVTY3JvbGxCYXIoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBvdmVycmlkZSBnZXQgeCgpIHsgcmV0dXJuIHRoaXMuX3g7IH1cclxuXHJcbiAgICBvdmVycmlkZSBzZXQgeSh2OiBudW1iZXIpIHtcclxuICAgICAgICBpZiAodiAhPT0gdW5kZWZpbmVkICYmICFOdW1iZXIuaXNOYU4odikpIHtcclxuICAgICAgICAgICAgdGhpcy5feSA9IHRoaXMuX2FjdHVhbFkgPSB2O1xyXG5cclxuICAgICAgICAgICAgdGhpcy51cGRhdGVTY3JvbGxCYXIoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBvdmVycmlkZSBnZXQgeSgpIHsgcmV0dXJuIHRoaXMuX3k7IH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgb3ZlcnJpZGUgb25SZXNpemVWaWV3cG9ydCgpIHtcclxuICAgICAgICBjb25zdCB2aWV3cG9ydCA9IHRoaXMuc2Nyb2xsVmlld3BvcnQoKT8ubmF0aXZlRWxlbWVudDtcclxuICAgICAgICBpZiAodmlld3BvcnQpIHtcclxuICAgICAgICAgICAgdGhpcy52aWV3cG9ydEJvdW5kcy5zZXQoeyB3aWR0aDogdmlld3BvcnQub2Zmc2V0V2lkdGgsIGhlaWdodDogdmlld3BvcnQub2Zmc2V0SGVpZ2h0IH0pO1xyXG4gICAgICAgICAgICB0aGlzLnVwZGF0ZVNjcm9sbEJhcigpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgb3ZlcnJpZGUgb25SZXNpemVDb250ZW50KCkge1xyXG4gICAgICAgIGNvbnN0IGNvbnRlbnQgPSB0aGlzLnNjcm9sbENvbnRlbnQoKT8ubmF0aXZlRWxlbWVudDtcclxuICAgICAgICBpZiAoY29udGVudCkge1xyXG4gICAgICAgICAgICB0aGlzLmNvbnRlbnRCb3VuZHMuc2V0KHsgd2lkdGg6IGNvbnRlbnQub2Zmc2V0V2lkdGgsIGhlaWdodDogY29udGVudC5vZmZzZXRIZWlnaHQgfSk7XHJcbiAgICAgICAgICAgIHRoaXMudXBkYXRlU2Nyb2xsQmFyKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX3Njcm9sbEJveCA9IG5ldyBTY3JvbGxCb3goKTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcigpIHtcclxuICAgICAgICBzdXBlcigpO1xyXG5cclxuICAgICAgICB0aGlzLmFjdHVhbENsYXNzZXMgPSBjb21wdXRlZCgoKSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IGNsYXNzZXMgPSB0aGlzLmNsYXNzZXMoKSwgZGlyZWN0aW9uID0gdGhpcy5kaXJlY3Rpb24oKTtcclxuICAgICAgICAgICAgcmV0dXJuIHsgLi4uY2xhc3NlcywgW2RpcmVjdGlvbl06IHRydWUgfTtcclxuICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgY29uc3QgJGNvbnRlbnRCb3VuZHMgPSB0b09ic2VydmFibGUodGhpcy5jb250ZW50Qm91bmRzKSxcclxuICAgICAgICAgICAgJHZpZXdwb3J0Qm91bmRzID0gdG9PYnNlcnZhYmxlKHRoaXMudmlld3BvcnRCb3VuZHMpLFxyXG4gICAgICAgICAgICAkaXNWZXJ0aWNhbCA9IHRvT2JzZXJ2YWJsZSh0aGlzLmlzVmVydGljYWwpLFxyXG4gICAgICAgICAgICAkZGlyZWN0aW9uID0gdG9PYnNlcnZhYmxlKHRoaXMuZGlyZWN0aW9uKSxcclxuICAgICAgICAgICAgJHNjcm9sbGJhckVuYWJsZWQgPSB0b09ic2VydmFibGUodGhpcy5zY3JvbGxiYXJFbmFibGVkKTtcclxuXHJcbiAgICAgICAgY29tYmluZUxhdGVzdChbJGRpcmVjdGlvbiwgJHNjcm9sbGJhckVuYWJsZWQsICRpc1ZlcnRpY2FsLCAkY29udGVudEJvdW5kcywgJHZpZXdwb3J0Qm91bmRzXSkucGlwZShcclxuICAgICAgICAgICAgdGFrZVVudGlsRGVzdHJveWVkKCksXHJcbiAgICAgICAgICAgIHRhcCgoW2RpcmVjdGlvbiwgc2Nyb2xsYmFyRW5hYmxlZF0pID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMuY29udGFpbmVyQ2xhc3Nlcy5zZXQoeyBbZGlyZWN0aW9uXTogdHJ1ZSwgZW5hYmxlZDogc2Nyb2xsYmFyRW5hYmxlZCwgc2Nyb2xsYWJsZTogc2Nyb2xsYmFyRW5hYmxlZCB9KTtcclxuICAgICAgICAgICAgfSksXHJcbiAgICAgICAgKS5zdWJzY3JpYmUoKTtcclxuXHJcbiAgICAgICAgY29uc3QgJHN0YXJ0T2Zmc2V0ID0gdG9PYnNlcnZhYmxlKHRoaXMuc3RhcnRPZmZzZXQpLFxyXG4gICAgICAgICAgICAkZW5kT2Zmc2V0ID0gdG9PYnNlcnZhYmxlKHRoaXMuZW5kT2Zmc2V0KSxcclxuICAgICAgICAgICAgJHRodW1iU2l6ZSA9IHRvT2JzZXJ2YWJsZSh0aGlzLnRodW1iU2l6ZSk7XHJcblxyXG4gICAgICAgIGZyb20oWyRlbmRPZmZzZXQsICRzdGFydE9mZnNldCwgJHRodW1iU2l6ZSwgJGlzVmVydGljYWxdKS5waXBlKFxyXG4gICAgICAgICAgICB0YWtlVW50aWxEZXN0cm95ZWQoKSxcclxuICAgICAgICAgICAgdGFwKCgpID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlU2Nyb2xsQmFyKCk7XHJcbiAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICkuc3Vic2NyaWJlKCk7XHJcblxyXG4gICAgICAgIGNvbnN0ICR1cGRhdGVTY3JvbGxCYXIgPSB0aGlzLiR1cGRhdGVTY3JvbGxCYXI7XHJcblxyXG4gICAgICAgICR1cGRhdGVTY3JvbGxCYXIucGlwZShcclxuICAgICAgICAgICAgdGFrZVVudGlsRGVzdHJveWVkKHRoaXMuX2Rlc3Ryb3lSZWYpLFxyXG4gICAgICAgICAgICB0YXAoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy51cGRhdGVTY3JvbGxCYXJIYW5kbGVyKHRydWUpO1xyXG4gICAgICAgICAgICB9KSxcclxuICAgICAgICApLnN1YnNjcmliZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgdXBkYXRlU2Nyb2xsQmFySGFuZGxlcih1cGRhdGU6IGJvb2xlYW4gPSBmYWxzZSkge1xyXG4gICAgICAgIGNvbnN0IGRpcmVjdGlvbiA9IHRoaXMuZGlyZWN0aW9uKCksXHJcbiAgICAgICAgICAgIGlzVmVydGljYWwgPSB0aGlzLmlzVmVydGljYWwoKSxcclxuICAgICAgICAgICAgc3RhcnRPZmZzZXQgPSB0aGlzLnN0YXJ0T2Zmc2V0KCksXHJcbiAgICAgICAgICAgIGVuZE9mZnNldCA9IHRoaXMuZW5kT2Zmc2V0KCksXHJcbiAgICAgICAgICAgIHNjcm9sbENvbnRlbnQgPSB0aGlzLnNjcm9sbENvbnRlbnQoKT8ubmF0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudCxcclxuICAgICAgICAgICAgc2Nyb2xsVmlld3BvcnQgPSB0aGlzLnNjcm9sbFZpZXdwb3J0KCk/Lm5hdGl2ZUVsZW1lbnQgYXMgSFRNTERpdkVsZW1lbnQsXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIHRodW1iU2l6ZSxcclxuICAgICAgICAgICAgICAgIHRodW1iUG9zaXRpb24sXHJcbiAgICAgICAgICAgIH0gPSB0aGlzLl9zY3JvbGxCb3guY2FsY3VsYXRlU2Nyb2xsKHtcclxuICAgICAgICAgICAgICAgIGRpcmVjdGlvbixcclxuICAgICAgICAgICAgICAgIHZpZXdwb3J0V2lkdGg6IHNjcm9sbFZpZXdwb3J0Lm9mZnNldFdpZHRoLCB2aWV3cG9ydEhlaWdodDogc2Nyb2xsVmlld3BvcnQub2Zmc2V0SGVpZ2h0LFxyXG4gICAgICAgICAgICAgICAgY29udGVudFdpZHRoOiBzY3JvbGxDb250ZW50Lm9mZnNldFdpZHRoLCBjb250ZW50SGVpZ2h0OiBzY3JvbGxDb250ZW50Lm9mZnNldEhlaWdodCxcclxuICAgICAgICAgICAgICAgIHN0YXJ0T2Zmc2V0LFxyXG4gICAgICAgICAgICAgICAgZW5kT2Zmc2V0LFxyXG4gICAgICAgICAgICAgICAgcG9zaXRpb25YOiB0aGlzLl94LFxyXG4gICAgICAgICAgICAgICAgcG9zaXRpb25ZOiB0aGlzLl95LFxyXG4gICAgICAgICAgICAgICAgbWluU2l6ZTogMSxcclxuICAgICAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIHRoaXMudGh1bWJTaXplLnNldCh0aHVtYlNpemUpO1xyXG4gICAgICAgIGlmICh1cGRhdGUpIHtcclxuICAgICAgICAgICAgdGhpcy5zY3JvbGxCYXI/LnNjcm9sbCh7XHJcbiAgICAgICAgICAgICAgICBbaXNWZXJ0aWNhbCA/IFRPUF9QUk9QX05BTUUgOiBMRUZUX1BST1BfTkFNRV06IHRodW1iUG9zaXRpb24sIGZpcmVVcGRhdGU6IGZhbHNlLCBiZWhhdmlvcjogQkVIQVZJT1JfSU5TVEFOVCxcclxuICAgICAgICAgICAgICAgIHVzZXJBY3Rpb246IGZhbHNlLCBibGVuZGluZzogdHJ1ZSxcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuc2Nyb2xsYmFyU2hvdy5zZXQodGhpcy5zY3JvbGxhYmxlKTtcclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgdXBkYXRlU2Nyb2xsQmFyKCkge1xyXG4gICAgICAgIHRoaXMuXyR1cGRhdGVTY3JvbGxCYXIubmV4dCgpO1xyXG4gICAgfVxyXG59IiwiPGRpdiBsb2NhbGVTZW5zaXRpdmUgW2xhbmdUZXh0RGlyXT1cImxhbmdUZXh0RGlyKClcIiBbbGlzdERpcl09XCJkaXJlY3Rpb24oKVwiIGNsYXNzPVwibmd2bF9fY29udGFpbmVyXCJcclxuICAgIFtuZ0NsYXNzXT1cImNvbnRhaW5lckNsYXNzZXMoKVwiPlxyXG4gICAgPGRpdiAjc2Nyb2xsVmlld3BvcnQgcGFydD1cInNjcm9sbGVyXCIgY2xhc3M9XCJuZ3ZsX19zY3JvbGxlclwiPlxyXG4gICAgICAgIDxkaXYgI3Njcm9sbENvbnRlbnQgcGFydD1cImxpc3RcIiBjbGFzcz1cIm5ndmxfX2xpc3RcIiBbbmdDbGFzc109XCJhY3R1YWxDbGFzc2VzKClcIj5cclxuICAgICAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PiJdfQ==
|
|
142
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctcHJlcmVuZGVyLXNjcm9sbGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXZpcnR1YWwtbGlzdC9zcmMvbGliL2NvbXBvbmVudHMvbmctcHJlcmVuZGVyLWNvbnRhaW5lci9jb21wb25lbnRzL25nLXByZXJlbmRlci1zY3JvbGxlci9uZy1wcmVyZW5kZXItc2Nyb2xsZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctdmlydHVhbC1saXN0L3NyYy9saWIvY29tcG9uZW50cy9uZy1wcmVyZW5kZXItY29udGFpbmVyL2NvbXBvbmVudHMvbmctcHJlcmVuZGVyLXNjcm9sbGVyL25nLXByZXJlbmRlci1zY3JvbGxlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckYsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDNUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRW5ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5REFBeUQsQ0FBQztBQUN6RixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUseUJBQXlCLEVBQUUsY0FBYyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQy9HLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN2RCxPQUFPLEVBQUUscUNBQXFDLEVBQUUsOEJBQThCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7OztBQUV0SDs7Ozs7OztHQU9HO0FBYUgsTUFBTSxPQUFPLDRCQUE2QixTQUFRLGNBQWM7SUFFNUQsU0FBUyxDQUFtQztJQUVsQyxhQUFhLEdBQUcsSUFBSSxlQUFlLENBQWdCLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN4RSxZQUFZLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUVoRCxrQkFBa0IsR0FBRyxJQUFJLGVBQWUsQ0FBVSx5QkFBeUIsQ0FBQyxDQUFDO0lBQzlFLGlCQUFpQixHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUNwRSxJQUNJLGdCQUFnQixDQUFDLENBQVU7UUFDM0IsSUFBSSxJQUFJLENBQUMsa0JBQWtCLENBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDM0MsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNwQyxDQUFDO0lBQ0wsQ0FBQztJQUNELElBQUksZ0JBQWdCLEtBQUssT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBRTNELFNBQVMsR0FBRyxJQUFJLGVBQWUsQ0FBK0IsRUFBRSxDQUFDLENBQUM7SUFDbkUsUUFBUSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDbEQsSUFDSSxPQUFPLENBQUMsQ0FBK0I7UUFDdkMsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ2xDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzNCLENBQUM7SUFDTCxDQUFDO0lBQ0QsSUFBSSxPQUFPLEtBQUssT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUV6QyxlQUFlLEdBQUcsSUFBSSxlQUFlLENBQStCLEVBQUUsQ0FBQyxDQUFDO0lBQ3pFLGNBQWMsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBRXBELGtCQUFrQixHQUFHLElBQUksZUFBZSxDQUErQixFQUFFLENBQUMsQ0FBQztJQUM1RSxpQkFBaUIsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsWUFBWSxFQUFFLENBQUM7SUFFMUQsV0FBVyxHQUFHLElBQUksZUFBZSxDQUFTLENBQUMsQ0FBQyxDQUFDO0lBQzlDLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBRTVDLGVBQWUsR0FBRyxJQUFJLGVBQWUsQ0FBVSxLQUFLLENBQUMsQ0FBQztJQUN2RCxjQUFjLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUU5RCxJQUFhLENBQUMsQ0FBQyxDQUFTO1FBQ3BCLElBQUksQ0FBQyxLQUFLLFNBQVMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUN0QyxJQUFJLENBQUMsRUFBRSxHQUFHLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDO1lBRTVCLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUMzQixDQUFDO0lBQ0wsQ0FBQztJQUNELElBQWEsQ0FBQyxLQUFLLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFFcEMsSUFBYSxDQUFDLENBQUMsQ0FBUztRQUNwQixJQUFJLENBQUMsS0FBSyxTQUFTLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDdEMsSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQztZQUU1QixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDM0IsQ0FBQztJQUNMLENBQUM7SUFDRCxJQUFhLENBQUMsS0FBSyxPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBRWpCLGdCQUFnQjtRQUMvQixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsY0FBYyxFQUFFLGFBQWEsQ0FBQztRQUNwRCxJQUFJLFFBQVEsRUFBRSxDQUFDO1lBQ1gsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxFQUFFLEtBQUssRUFBRSxRQUFRLENBQUMsV0FBVyxFQUFFLE1BQU0sRUFBRSxRQUFRLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQztZQUMzRixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDM0IsQ0FBQztJQUNMLENBQUM7SUFFa0IsZUFBZTtRQUM5QixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLGFBQWEsQ0FBQztRQUNsRCxJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQ1YsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLEVBQUUsT0FBTyxDQUFDLFdBQVcsRUFBRSxNQUFNLEVBQUUsT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUM7WUFDeEYsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQzNCLENBQUM7SUFDTCxDQUFDO0lBRU8sVUFBVSxHQUFHLElBQUksU0FBUyxFQUFFLENBQUM7SUFFckM7UUFDSSxLQUFLLEVBQUUsQ0FBQztRQUVSLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQzFCLFVBQVUsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDO1FBRWpDLGFBQWEsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQ3hDLFNBQVMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLEVBQzdCLEdBQUcsQ0FBQyxDQUFDLENBQUMsT0FBTyxFQUFFLFNBQVMsQ0FBQyxFQUFFLEVBQUU7WUFDekIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLE9BQU8sRUFBRSxDQUFDLFNBQVMsQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFDakUsQ0FBQyxDQUFDLENBQ0wsQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUVkLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxjQUFjLEVBQ3RDLGVBQWUsR0FBRyxJQUFJLENBQUMsZUFBZSxFQUN0QyxXQUFXLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFDOUIsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDO1FBRS9DLGFBQWEsQ0FBQyxDQUFDLFVBQVUsRUFBRSxpQkFBaUIsRUFBRSxXQUFXLEVBQUUsY0FBYyxFQUFFLGVBQWUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUM3RixTQUFTLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxFQUM3QixHQUFHLENBQUMsQ0FBQyxDQUFDLFNBQVMsRUFBRSxnQkFBZ0IsQ0FBQyxFQUFFLEVBQUU7WUFDbEMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsU0FBUyxDQUFDLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxVQUFVLEVBQUUsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDO1FBQ2pILENBQUMsQ0FBQyxDQUNMLENBQUMsU0FBUyxFQUFFLENBQUM7UUFFZCxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsWUFBWSxFQUNsQyxVQUFVLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFDNUIsVUFBVSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUM7UUFFakMsSUFBSSxDQUFDLENBQUMsVUFBVSxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQzFELFNBQVMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLEVBQzdCLEdBQUcsQ0FBQyxHQUFHLEVBQUU7WUFDTCxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDM0IsQ0FBQyxDQUFDLENBQ0wsQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUVkLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDO1FBRS9DLGdCQUFnQixDQUFDLElBQUksQ0FDakIsU0FBUyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsRUFDN0IsR0FBRyxDQUFDLEdBQUcsRUFBRTtZQUNMLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN0QyxDQUFDLENBQUMsQ0FDTCxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ2xCLENBQUM7SUFFTyxzQkFBc0IsQ0FBQyxTQUFrQixLQUFLO1FBQ2xELE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLEVBQ3pDLFVBQVUsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxFQUN6QyxXQUFXLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLEVBQUUsRUFDM0MsU0FBUyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLEVBQ3ZDLGFBQWEsR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLGFBQTRCLEVBQ2hFLGNBQWMsR0FBRyxJQUFJLENBQUMsY0FBYyxFQUFFLGFBQStCLEVBQ3JFLEVBQ0ksU0FBUyxFQUNULGFBQWEsR0FDaEIsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGVBQWUsQ0FBQztZQUNoQyxTQUFTO1lBQ1QsYUFBYSxFQUFFLGNBQWMsQ0FBQyxXQUFXLEVBQUUsY0FBYyxFQUFFLGNBQWMsQ0FBQyxZQUFZO1lBQ3RGLFlBQVksRUFBRSxhQUFhLENBQUMsV0FBVyxFQUFFLGFBQWEsRUFBRSxhQUFhLENBQUMsWUFBWTtZQUNsRixXQUFXO1lBQ1gsU0FBUztZQUNULFNBQVMsRUFBRSxJQUFJLENBQUMsRUFBRTtZQUNsQixTQUFTLEVBQUUsSUFBSSxDQUFDLEVBQUU7WUFDbEIsT0FBTyxFQUFFLENBQUM7U0FDYixDQUFDLENBQUM7UUFFUCxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNqQyxJQUFJLE1BQU0sRUFBRSxDQUFDO1lBQ1QsSUFBSSxDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUM7Z0JBQ25CLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxFQUFFLGFBQWEsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxnQkFBZ0I7Z0JBQzNHLFVBQVUsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLElBQUk7YUFDcEMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQztRQUNELElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRVMsZUFBZTtRQUNyQixJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDbEMsQ0FBQzt3R0ExSlEsNEJBQTRCOzRGQUE1Qiw0QkFBNEIsc0hBUjFCO1lBQ1AsRUFBRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRTtZQUNuRCxFQUFFLE9BQU8sRUFBRSxxQ0FBcUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO1lBQ2xFLEVBQUUsT0FBTyxFQUFFLDhCQUE4QixFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUU7U0FDL0QsNkdBSytCLG9CQUFvQixvRENoQ3hELHFiQU9NOzs0RkR3Qk8sNEJBQTRCO2tCQVp4QyxTQUFTOytCQUNJLHVCQUF1QixhQUd0Qjt3QkFDUCxFQUFFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFO3dCQUNuRCxFQUFFLE9BQU8sRUFBRSxxQ0FBcUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO3dCQUNsRSxFQUFFLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFO3FCQUMvRCxjQUNXLEtBQUssbUJBQ0EsdUJBQXVCLENBQUMsTUFBTTt3REFJL0MsU0FBUztzQkFEUixTQUFTO3VCQUFDLFdBQVcsRUFBRSxFQUFFLElBQUksRUFBRSxvQkFBb0IsRUFBRTtnQkFTbEQsZ0JBQWdCO3NCQURuQixLQUFLO2dCQVdGLE9BQU87c0JBRFYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBmcm9tLCB0YWtlVW50aWwsIHRhcCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBUZXh0RGlyZWN0aW9ucyB9IGZyb20gJy4uLy4uLy4uLy4uL2VudW1zJztcclxuaW1wb3J0IHsgVGV4dERpcmVjdGlvbiB9IGZyb20gJy4uLy4uLy4uLy4uL3R5cGVzJztcclxuaW1wb3J0IHsgQmFzZVNjcm9sbFZpZXcgfSBmcm9tICcuLi8uLi8uLi9uZy1zY3JvbGwtdmlldy9iYXNlL2Jhc2Utc2Nyb2xsLXZpZXcuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU0NST0xMX1ZJRVdfSU5WRVJTSU9OIH0gZnJvbSAnLi4vLi4vLi4vbmctc2Nyb2xsLXZpZXcnO1xyXG5pbXBvcnQgeyBCRUhBVklPUl9JTlNUQU5ULCBERUZBVUxUX1NDUk9MTEJBUl9FTkFCTEVELCBMRUZUX1BST1BfTkFNRSwgVE9QX1BST1BfTkFNRSB9IGZyb20gJy4uLy4uLy4uLy4uL2NvbnN0JztcclxuaW1wb3J0IHsgTmdTY3JvbGxCYXJDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9uZy1zY3JvbGwtYmFyL25nLXNjcm9sbC1iYXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU2Nyb2xsQm94IH0gZnJvbSAnLi4vLi4vLi4vbmctc2Nyb2xsZXIvdXRpbHMnO1xyXG5pbXBvcnQgeyBTQ1JPTExfVklFV19OT1JNQUxJWkVfVkFMVUVfRlJPTV9aRVJPLCBTQ1JPTExfVklFV19PVkVSU0NST0xMX0VOQUJMRUQgfSBmcm9tICcuLi8uLi8uLi9uZy1zY3JvbGwtdmlldy9jb25zdCc7XHJcblxyXG4vKipcclxuICogTmdQcmVyZW5kZXJTY3JvbGxlckNvbXBvbmVudFxyXG4gKiBNYXhpbXVtIHBlcmZvcm1hbmNlIGZvciBleHRyZW1lbHkgbGFyZ2UgbGlzdHMuXHJcbiAqIEl0IGlzIGJhc2VkIG9uIGFsZ29yaXRobXMgZm9yIHZpcnR1YWxpemF0aW9uIG9mIHNjcmVlbiBvYmplY3RzLlxyXG4gKiBAbGluayBodHRwczovL2dpdGh1Yi5jb20vRGpvbm55WC9uZy12aXJ0dWFsLWxpc3QvYmxvYi8xOC54L3Byb2plY3RzL25nLXZpcnR1YWwtbGlzdC9zcmMvbGliL2NvbXBvbmVudHMvbmctcHJlcmVuZGVyLWNvbnRhaW5lci9jb21wb25lbnRzL25nLXByZXJlbmRlci1zY3JvbGxlci9uZy1wcmVyZW5kZXItc2Nyb2xsZXIuY29tcG9uZW50LnRzXHJcbiAqIEBhdXRob3IgRXZnZW5paSBBbGV4YW5kcm92aWNoIEdyZWJlbm5pa292XHJcbiAqIEBlbWFpbCBkam9ubnl4QGdtYWlsLmNvbVxyXG4gKi9cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ25nLXByZXJlbmRlci1zY3JvbGxlcicsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vbmctcHJlcmVuZGVyLXNjcm9sbGVyLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuLi8uLi8uLi9uZy1zY3JvbGxlci9uZy1zY3JvbGxlci5jb21wb25lbnQuc2NzcyddLFxyXG4gICAgcHJvdmlkZXJzOiBbXHJcbiAgICAgICAgeyBwcm92aWRlOiBTQ1JPTExfVklFV19JTlZFUlNJT04sIHVzZVZhbHVlOiBmYWxzZSB9LFxyXG4gICAgICAgIHsgcHJvdmlkZTogU0NST0xMX1ZJRVdfTk9STUFMSVpFX1ZBTFVFX0ZST01fWkVSTywgdXNlVmFsdWU6IHRydWUgfSxcclxuICAgICAgICB7IHByb3ZpZGU6IFNDUk9MTF9WSUVXX09WRVJTQ1JPTExfRU5BQkxFRCwgdXNlVmFsdWU6IGZhbHNlIH0sXHJcbiAgICBdLFxyXG4gICAgc3RhbmRhbG9uZTogZmFsc2UsXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxufSlcclxuZXhwb3J0IGNsYXNzIE5nUHJlcmVuZGVyU2Nyb2xsZXJDb21wb25lbnQgZXh0ZW5kcyBCYXNlU2Nyb2xsVmlldyB7XHJcbiAgICBAVmlld0NoaWxkKCdzY3JvbGxCYXInLCB7IHJlYWQ6IE5nU2Nyb2xsQmFyQ29tcG9uZW50IH0pXHJcbiAgICBzY3JvbGxCYXI6IE5nU2Nyb2xsQmFyQ29tcG9uZW50IHwgdW5kZWZpbmVkO1xyXG5cclxuICAgIHByb3RlY3RlZCBfJGxhbmdUZXh0RGlyID0gbmV3IEJlaGF2aW9yU3ViamVjdDxUZXh0RGlyZWN0aW9uPihUZXh0RGlyZWN0aW9ucy5MVFIpO1xyXG4gICAgcmVhZG9ubHkgJGxhbmdUZXh0RGlyID0gdGhpcy5fJGxhbmdUZXh0RGlyLmFzT2JzZXJ2YWJsZSgpO1xyXG5cclxuICAgIHByb3RlY3RlZCBfJHNjcm9sbGJhckVuYWJsZWQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KERFRkFVTFRfU0NST0xMQkFSX0VOQUJMRUQpO1xyXG4gICAgcmVhZG9ubHkgJHNjcm9sbGJhckVuYWJsZWQgPSB0aGlzLl8kc2Nyb2xsYmFyRW5hYmxlZC5hc09ic2VydmFibGUoKTtcclxuICAgIEBJbnB1dCgpXHJcbiAgICBzZXQgc2Nyb2xsYmFyRW5hYmxlZCh2OiBib29sZWFuKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuXyRzY3JvbGxiYXJFbmFibGVkLmdldFZhbHVlKCkgIT09IHYpIHtcclxuICAgICAgICAgICAgdGhpcy5fJHNjcm9sbGJhckVuYWJsZWQubmV4dCh2KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBnZXQgc2Nyb2xsYmFyRW5hYmxlZCgpIHsgcmV0dXJuIHRoaXMuXyRzY3JvbGxiYXJFbmFibGVkLmdldFZhbHVlKCk7IH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgXyRjbGFzc2VzID0gbmV3IEJlaGF2aW9yU3ViamVjdDx7IFtjTmFtZTogc3RyaW5nXTogYm9vbGVhbiB9Pih7fSk7XHJcbiAgICByZWFkb25seSAkY2xhc3NlcyA9IHRoaXMuXyRjbGFzc2VzLmFzT2JzZXJ2YWJsZSgpO1xyXG4gICAgQElucHV0KClcclxuICAgIHNldCBjbGFzc2VzKHY6IHsgW2NOYW1lOiBzdHJpbmddOiBib29sZWFuIH0pIHtcclxuICAgICAgICBpZiAodGhpcy5fJGNsYXNzZXMuZ2V0VmFsdWUoKSAhPT0gdikge1xyXG4gICAgICAgICAgICB0aGlzLl8kY2xhc3Nlcy5uZXh0KHYpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIGdldCBjbGFzc2VzKCkgeyByZXR1cm4gdGhpcy5fJGNsYXNzZXMuZ2V0VmFsdWUoKTsgfVxyXG5cclxuICAgIHByb3RlY3RlZCBfJGFjdHVhbENsYXNzZXMgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHsgW2NOYW1lOiBzdHJpbmddOiBib29sZWFuIH0+KHt9KTtcclxuICAgIHJlYWRvbmx5ICRhY3R1YWxDbGFzc2VzID0gdGhpcy5fJGFjdHVhbENsYXNzZXMuYXNPYnNlcnZhYmxlKCk7XHJcblxyXG4gICAgcHJvdGVjdGVkIF8kY29udGFpbmVyQ2xhc3NlcyA9IG5ldyBCZWhhdmlvclN1YmplY3Q8eyBbY05hbWU6IHN0cmluZ106IGJvb2xlYW4gfT4oe30pO1xyXG4gICAgcmVhZG9ubHkgJGNvbnRhaW5lckNsYXNzZXMgPSB0aGlzLl8kY29udGFpbmVyQ2xhc3Nlcy5hc09ic2VydmFibGUoKTtcclxuXHJcbiAgICBwcm90ZWN0ZWQgXyR0aHVtYlNpemUgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PG51bWJlcj4oMCk7XHJcbiAgICByZWFkb25seSAkdGh1bWJTaXplID0gdGhpcy5fJHRodW1iU2l6ZS5hc09ic2VydmFibGUoKTtcclxuXHJcbiAgICBwcm90ZWN0ZWQgXyRzY3JvbGxiYXJTaG93ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XHJcbiAgICByZWFkb25seSAkc2Nyb2xsYmFyU2hvdyA9IHRoaXMuXyRzY3JvbGxiYXJTaG93LmFzT2JzZXJ2YWJsZSgpO1xyXG5cclxuICAgIG92ZXJyaWRlIHNldCB4KHY6IG51bWJlcikge1xyXG4gICAgICAgIGlmICh2ICE9PSB1bmRlZmluZWQgJiYgIU51bWJlci5pc05hTih2KSkge1xyXG4gICAgICAgICAgICB0aGlzLl94ID0gdGhpcy5fYWN0dWFsWCA9IHY7XHJcblxyXG4gICAgICAgICAgICB0aGlzLnVwZGF0ZVNjcm9sbEJhcigpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIG92ZXJyaWRlIGdldCB4KCkgeyByZXR1cm4gdGhpcy5feDsgfVxyXG5cclxuICAgIG92ZXJyaWRlIHNldCB5KHY6IG51bWJlcikge1xyXG4gICAgICAgIGlmICh2ICE9PSB1bmRlZmluZWQgJiYgIU51bWJlci5pc05hTih2KSkge1xyXG4gICAgICAgICAgICB0aGlzLl95ID0gdGhpcy5fYWN0dWFsWSA9IHY7XHJcblxyXG4gICAgICAgICAgICB0aGlzLnVwZGF0ZVNjcm9sbEJhcigpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIG92ZXJyaWRlIGdldCB5KCkgeyByZXR1cm4gdGhpcy5feTsgfVxyXG5cclxuICAgIHByb3RlY3RlZCBvdmVycmlkZSBvblJlc2l6ZVZpZXdwb3J0KCkge1xyXG4gICAgICAgIGNvbnN0IHZpZXdwb3J0ID0gdGhpcy5zY3JvbGxWaWV3cG9ydD8ubmF0aXZlRWxlbWVudDtcclxuICAgICAgICBpZiAodmlld3BvcnQpIHtcclxuICAgICAgICAgICAgdGhpcy5fJHZpZXdwb3J0Qm91bmRzLm5leHQoeyB3aWR0aDogdmlld3BvcnQub2Zmc2V0V2lkdGgsIGhlaWdodDogdmlld3BvcnQub2Zmc2V0SGVpZ2h0IH0pO1xyXG4gICAgICAgICAgICB0aGlzLnVwZGF0ZVNjcm9sbEJhcigpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgb3ZlcnJpZGUgb25SZXNpemVDb250ZW50KCkge1xyXG4gICAgICAgIGNvbnN0IGNvbnRlbnQgPSB0aGlzLnNjcm9sbENvbnRlbnQ/Lm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICAgICAgaWYgKGNvbnRlbnQpIHtcclxuICAgICAgICAgICAgdGhpcy5fJGNvbnRlbnRCb3VuZHMubmV4dCh7IHdpZHRoOiBjb250ZW50Lm9mZnNldFdpZHRoLCBoZWlnaHQ6IGNvbnRlbnQub2Zmc2V0SGVpZ2h0IH0pO1xyXG4gICAgICAgICAgICB0aGlzLnVwZGF0ZVNjcm9sbEJhcigpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9zY3JvbGxCb3ggPSBuZXcgU2Nyb2xsQm94KCk7XHJcblxyXG4gICAgY29uc3RydWN0b3IoKSB7XHJcbiAgICAgICAgc3VwZXIoKTtcclxuXHJcbiAgICAgICAgY29uc3QgJGNsYXNzZXMgPSB0aGlzLiRjbGFzc2VzLFxyXG4gICAgICAgICAgICAkZGlyZWN0aW9uID0gdGhpcy4kZGlyZWN0aW9uO1xyXG5cclxuICAgICAgICBjb21iaW5lTGF0ZXN0KChbJGNsYXNzZXMsICRkaXJlY3Rpb25dKSkucGlwZShcclxuICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMuXyR1bnN1YnNjcmliZSksXHJcbiAgICAgICAgICAgIHRhcCgoW2NsYXNzZXMsIGRpcmVjdGlvbl0pID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMuXyRhY3R1YWxDbGFzc2VzLm5leHQoeyAuLi5jbGFzc2VzLCBbZGlyZWN0aW9uXTogdHJ1ZSB9KTtcclxuICAgICAgICAgICAgfSksXHJcbiAgICAgICAgKS5zdWJzY3JpYmUoKTtcclxuXHJcbiAgICAgICAgY29uc3QgJGNvbnRlbnRCb3VuZHMgPSB0aGlzLiRjb250ZW50Qm91bmRzLFxyXG4gICAgICAgICAgICAkdmlld3BvcnRCb3VuZHMgPSB0aGlzLiR2aWV3cG9ydEJvdW5kcyxcclxuICAgICAgICAgICAgJGlzVmVydGljYWwgPSB0aGlzLiRpc1ZlcnRpY2FsLFxyXG4gICAgICAgICAgICAkc2Nyb2xsYmFyRW5hYmxlZCA9IHRoaXMuJHNjcm9sbGJhckVuYWJsZWQ7XHJcblxyXG4gICAgICAgIGNvbWJpbmVMYXRlc3QoWyRkaXJlY3Rpb24sICRzY3JvbGxiYXJFbmFibGVkLCAkaXNWZXJ0aWNhbCwgJGNvbnRlbnRCb3VuZHMsICR2aWV3cG9ydEJvdW5kc10pLnBpcGUoXHJcbiAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl8kdW5zdWJzY3JpYmUpLFxyXG4gICAgICAgICAgICB0YXAoKFtkaXJlY3Rpb24sIHNjcm9sbGJhckVuYWJsZWRdKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLl8kY29udGFpbmVyQ2xhc3Nlcy5uZXh0KHsgW2RpcmVjdGlvbl06IHRydWUsIGVuYWJsZWQ6IHNjcm9sbGJhckVuYWJsZWQsIHNjcm9sbGFibGU6IHNjcm9sbGJhckVuYWJsZWQgfSk7XHJcbiAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICkuc3Vic2NyaWJlKCk7XHJcblxyXG4gICAgICAgIGNvbnN0ICRzdGFydE9mZnNldCA9IHRoaXMuJHN0YXJ0T2Zmc2V0LFxyXG4gICAgICAgICAgICAkZW5kT2Zmc2V0ID0gdGhpcy4kZW5kT2Zmc2V0LFxyXG4gICAgICAgICAgICAkdGh1bWJTaXplID0gdGhpcy4kdGh1bWJTaXplO1xyXG5cclxuICAgICAgICBmcm9tKFskZW5kT2Zmc2V0LCAkc3RhcnRPZmZzZXQsICR0aHVtYlNpemUsICRpc1ZlcnRpY2FsXSkucGlwZShcclxuICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMuXyR1bnN1YnNjcmliZSksXHJcbiAgICAgICAgICAgIHRhcCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnVwZGF0ZVNjcm9sbEJhcigpO1xyXG4gICAgICAgICAgICB9KSxcclxuICAgICAgICApLnN1YnNjcmliZSgpO1xyXG5cclxuICAgICAgICBjb25zdCAkdXBkYXRlU2Nyb2xsQmFyID0gdGhpcy4kdXBkYXRlU2Nyb2xsQmFyO1xyXG5cclxuICAgICAgICAkdXBkYXRlU2Nyb2xsQmFyLnBpcGUoXHJcbiAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl8kdW5zdWJzY3JpYmUpLFxyXG4gICAgICAgICAgICB0YXAoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy51cGRhdGVTY3JvbGxCYXJIYW5kbGVyKHRydWUpO1xyXG4gICAgICAgICAgICB9KSxcclxuICAgICAgICApLnN1YnNjcmliZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgdXBkYXRlU2Nyb2xsQmFySGFuZGxlcih1cGRhdGU6IGJvb2xlYW4gPSBmYWxzZSkge1xyXG4gICAgICAgIGNvbnN0IGRpcmVjdGlvbiA9IHRoaXMuXyRkaXJlY3Rpb24uZ2V0VmFsdWUoKSxcclxuICAgICAgICAgICAgaXNWZXJ0aWNhbCA9IHRoaXMuXyRpc1ZlcnRpY2FsLmdldFZhbHVlKCksXHJcbiAgICAgICAgICAgIHN0YXJ0T2Zmc2V0ID0gdGhpcy5fJHN0YXJ0T2Zmc2V0LmdldFZhbHVlKCksXHJcbiAgICAgICAgICAgIGVuZE9mZnNldCA9IHRoaXMuXyRlbmRPZmZzZXQuZ2V0VmFsdWUoKSxcclxuICAgICAgICAgICAgc2Nyb2xsQ29udGVudCA9IHRoaXMuc2Nyb2xsQ29udGVudD8ubmF0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudCxcclxuICAgICAgICAgICAgc2Nyb2xsVmlld3BvcnQgPSB0aGlzLnNjcm9sbFZpZXdwb3J0Py5uYXRpdmVFbGVtZW50IGFzIEhUTUxEaXZFbGVtZW50LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICB0aHVtYlNpemUsXHJcbiAgICAgICAgICAgICAgICB0aHVtYlBvc2l0aW9uLFxyXG4gICAgICAgICAgICB9ID0gdGhpcy5fc2Nyb2xsQm94LmNhbGN1bGF0ZVNjcm9sbCh7XHJcbiAgICAgICAgICAgICAgICBkaXJlY3Rpb24sXHJcbiAgICAgICAgICAgICAgICB2aWV3cG9ydFdpZHRoOiBzY3JvbGxWaWV3cG9ydC5vZmZzZXRXaWR0aCwgdmlld3BvcnRIZWlnaHQ6IHNjcm9sbFZpZXdwb3J0Lm9mZnNldEhlaWdodCxcclxuICAgICAgICAgICAgICAgIGNvbnRlbnRXaWR0aDogc2Nyb2xsQ29udGVudC5vZmZzZXRXaWR0aCwgY29udGVudEhlaWdodDogc2Nyb2xsQ29udGVudC5vZmZzZXRIZWlnaHQsXHJcbiAgICAgICAgICAgICAgICBzdGFydE9mZnNldCxcclxuICAgICAgICAgICAgICAgIGVuZE9mZnNldCxcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uWDogdGhpcy5feCxcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uWTogdGhpcy5feSxcclxuICAgICAgICAgICAgICAgIG1pblNpemU6IDEsXHJcbiAgICAgICAgICAgIH0pO1xyXG5cclxuICAgICAgICB0aGlzLl8kdGh1bWJTaXplLm5leHQodGh1bWJTaXplKTtcclxuICAgICAgICBpZiAodXBkYXRlKSB7XHJcbiAgICAgICAgICAgIHRoaXMuc2Nyb2xsQmFyPy5zY3JvbGwoe1xyXG4gICAgICAgICAgICAgICAgW2lzVmVydGljYWwgPyBUT1BfUFJPUF9OQU1FIDogTEVGVF9QUk9QX05BTUVdOiB0aHVtYlBvc2l0aW9uLCBmaXJlVXBkYXRlOiBmYWxzZSwgYmVoYXZpb3I6IEJFSEFWSU9SX0lOU1RBTlQsXHJcbiAgICAgICAgICAgICAgICB1c2VyQWN0aW9uOiBmYWxzZSwgYmxlbmRpbmc6IHRydWUsXHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLl8kc2Nyb2xsYmFyU2hvdy5uZXh0KHRoaXMuc2Nyb2xsYWJsZSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJvdGVjdGVkIHVwZGF0ZVNjcm9sbEJhcigpIHtcclxuICAgICAgICB0aGlzLl8kdXBkYXRlU2Nyb2xsQmFyLm5leHQoKTtcclxuICAgIH1cclxufVxyXG4iLCI8ZGl2IGxvY2FsZVNlbnNpdGl2ZSBbbGFuZ1RleHREaXJdPVwiKCRsYW5nVGV4dERpciB8IGFzeW5jKSFcIiBbbGlzdERpcl09XCIoJGRpcmVjdGlvbiB8IGFzeW5jKVwiIGNsYXNzPVwibmd2bF9fY29udGFpbmVyXCJcclxuICAgIFtuZ0NsYXNzXT1cIigkY29udGFpbmVyQ2xhc3NlcyB8IGFzeW5jKSFcIj5cclxuICAgIDxkaXYgI3Njcm9sbFZpZXdwb3J0IHBhcnQ9XCJzY3JvbGxlclwiIGNsYXNzPVwibmd2bF9fc2Nyb2xsZXJcIj5cclxuICAgICAgICA8ZGl2ICNzY3JvbGxDb250ZW50IHBhcnQ9XCJsaXN0XCIgY2xhc3M9XCJuZ3ZsX19saXN0XCIgW25nQ2xhc3NdPVwiKCRhY3R1YWxDbGFzc2VzIHwgYXN5bmMpXCI+XHJcbiAgICAgICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG48L2Rpdj4iXX0=
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { CMap } from "../../../utils/cmap";
|
|
2
|
-
import { DEFAULT_DYNAMIC_SIZE, DEFAULT_ITEM_SIZE, TRACK_BY_PROPERTY_NAME } from "../../../const";
|
|
2
|
+
import { DEFAULT_DIVIDES, DEFAULT_DYNAMIC_SIZE, DEFAULT_ITEM_SIZE, DEFAULT_SNAP_TO_ITEM_ALIGN, TRACK_BY_PROPERTY_NAME } from "../../../const";
|
|
3
3
|
import { EventEmitter } from "../../../utils/event-emitter/event-emitter";
|
|
4
4
|
import { PrerenderTrackBoxEvents } from "../events";
|
|
5
|
-
const createItemData = (data, isVertical, bounds, boundsSize, dynamic, itemSize, id, index) => {
|
|
5
|
+
const createItemData = (data, isVertical, bounds, boundsSize, dynamic, divides, itemSize, id, index) => {
|
|
6
|
+
const w = (isVertical ? (bounds.width / divides) : itemSize), h = (isVertical ? itemSize : (bounds.height / divides));
|
|
6
7
|
return {
|
|
7
8
|
index,
|
|
8
9
|
id,
|
|
@@ -10,6 +11,11 @@ const createItemData = (data, isVertical, bounds, boundsSize, dynamic, itemSize,
|
|
|
10
11
|
position: 0,
|
|
11
12
|
scrollSize: 0,
|
|
12
13
|
size: itemSize,
|
|
14
|
+
row: {
|
|
15
|
+
size: itemSize,
|
|
16
|
+
odd: false,
|
|
17
|
+
even: false
|
|
18
|
+
},
|
|
13
19
|
boundsSize,
|
|
14
20
|
absoluteStartPosition: 0,
|
|
15
21
|
absoluteStartPositionPercent: 0,
|
|
@@ -18,8 +24,22 @@ const createItemData = (data, isVertical, bounds, boundsSize, dynamic, itemSize,
|
|
|
18
24
|
delta: 0,
|
|
19
25
|
x: 0,
|
|
20
26
|
y: 0,
|
|
21
|
-
|
|
22
|
-
|
|
27
|
+
transformedX: 0,
|
|
28
|
+
transformedY: 0,
|
|
29
|
+
z: 0,
|
|
30
|
+
rotationX: 0,
|
|
31
|
+
rotationY: 0,
|
|
32
|
+
rotationZ: 0,
|
|
33
|
+
scaleX: 0,
|
|
34
|
+
scaleY: 0,
|
|
35
|
+
scaleZ: 0,
|
|
36
|
+
width: w,
|
|
37
|
+
height: h,
|
|
38
|
+
minWidth: 0,
|
|
39
|
+
minHeight: 0,
|
|
40
|
+
maxWidth: Number.MAX_SAFE_INTEGER,
|
|
41
|
+
maxHeight: Number.MAX_SAFE_INTEGER,
|
|
42
|
+
scrollDirection: 0,
|
|
23
43
|
},
|
|
24
44
|
data,
|
|
25
45
|
previouseData: data,
|
|
@@ -37,8 +57,18 @@ const createItemData = (data, isVertical, bounds, boundsSize, dynamic, itemSize,
|
|
|
37
57
|
isVertical,
|
|
38
58
|
dynamic,
|
|
39
59
|
isSnappingMethodAdvanced: false,
|
|
60
|
+
divides: 1,
|
|
40
61
|
tabIndex: 0,
|
|
62
|
+
opacity: 1,
|
|
41
63
|
zIndex: "0",
|
|
64
|
+
snapToItem: false,
|
|
65
|
+
snapToItemAlign: DEFAULT_SNAP_TO_ITEM_ALIGN,
|
|
66
|
+
layoutOffset: 0,
|
|
67
|
+
isFirst: false,
|
|
68
|
+
isLast: false,
|
|
69
|
+
fullSize: false,
|
|
70
|
+
layoutIndexOffset: 0,
|
|
71
|
+
totalItems: 0,
|
|
42
72
|
},
|
|
43
73
|
};
|
|
44
74
|
};
|
|
@@ -69,7 +99,7 @@ export class PrerenderTrackBox extends EventEmitter {
|
|
|
69
99
|
_active = true;
|
|
70
100
|
get active() { return this._active; }
|
|
71
101
|
refresh(componentClass, bounds, params) {
|
|
72
|
-
const isVertical = params.isVertical ?? true, dynamic = params.dynamic ?? DEFAULT_DYNAMIC_SIZE, itemsSize = params.itemSize ?? DEFAULT_ITEM_SIZE, trackBy = params.trackBy ?? TRACK_BY_PROPERTY_NAME, itemRenderer = params.itemRenderer, boundsSize = isVertical ? bounds.height : bounds.width, items = this._items, components = this._components, resizeObserver = this._componentsResizeObserver;
|
|
102
|
+
const isVertical = params.isVertical ?? true, dynamic = params.dynamic ?? DEFAULT_DYNAMIC_SIZE, divides = params.divides ?? DEFAULT_DIVIDES, itemsSize = params.itemSize ?? DEFAULT_ITEM_SIZE, trackBy = params.trackBy ?? TRACK_BY_PROPERTY_NAME, itemRenderer = params.itemRenderer, boundsSize = isVertical ? bounds.height : bounds.width, items = this._items, components = this._components, resizeObserver = this._componentsResizeObserver;
|
|
73
103
|
if (!items || !components || !this._container) {
|
|
74
104
|
return;
|
|
75
105
|
}
|
|
@@ -93,7 +123,7 @@ export class PrerenderTrackBox extends EventEmitter {
|
|
|
93
123
|
else {
|
|
94
124
|
comp = components[j];
|
|
95
125
|
}
|
|
96
|
-
comp.instance.item = createItemData(item, isVertical, bounds, boundsSize, dynamic, itemsSize, id, index);
|
|
126
|
+
comp.instance.item = createItemData(item, isVertical, bounds, boundsSize, dynamic, divides, itemsSize, id, index);
|
|
97
127
|
comp.instance.show();
|
|
98
128
|
const { width, height } = comp.instance.getBounds(), w = isVertical ? width : width < itemsSize ? itemsSize : width, h = isVertical ? height < itemsSize ? itemsSize : height : height;
|
|
99
129
|
totalSize += isVertical ? h : w;
|
|
@@ -165,4 +195,4 @@ export class PrerenderTrackBox extends EventEmitter {
|
|
|
165
195
|
}
|
|
166
196
|
}
|
|
167
197
|
}
|
|
168
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJlcmVuZGVyLXRyYWNrLWJveC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXZpcnR1YWwtbGlzdC9zcmMvbGliL2NvbXBvbmVudHMvbmctcHJlcmVuZGVyLWNvbnRhaW5lci9jb3JlL3ByZXJlbmRlci10cmFjay1ib3gudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBSTNDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxpQkFBaUIsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWpHLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsdUJBQXVCLEVBQTZCLE1BQU0sV0FBVyxDQUFDO0FBRS9FLE1BQU0sY0FBYyxHQUFHLENBQUMsSUFBc0IsRUFBRSxVQUFtQixFQUFFLE1BQWEsRUFBRSxVQUFrQixFQUNsRyxPQUFnQixFQUFFLFFBQWdCLEVBQUUsRUFBTSxFQUFFLEtBQWEsRUFBMEIsRUFBRTtJQUNyRixPQUFPO1FBQ0gsS0FBSztRQUNMLEVBQUU7UUFDRixRQUFRLEVBQUU7WUFDTixRQUFRLEVBQUUsQ0FBQztZQUNYLFVBQVUsRUFBRSxDQUFDO1lBQ2IsSUFBSSxFQUFFLFFBQVE7WUFDZCxVQUFVO1lBQ1YscUJBQXFCLEVBQUUsQ0FBQztZQUN4Qiw0QkFBNEIsRUFBRSxDQUFDO1lBQy9CLG1CQUFtQixFQUFFLENBQUM7WUFDdEIsMEJBQTBCLEVBQUUsQ0FBQztZQUM3QixLQUFLLEVBQUUsQ0FBQztZQUNSLENBQUMsRUFBRSxDQUFDO1lBQ0osQ0FBQyxFQUFFLENBQUM7WUFDSixLQUFLLEVBQUUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBUTtZQUNwRCxNQUFNLEVBQUUsQ0FBQyxV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Q2hCLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO1FBQ3ZCLENBQUM7UUFFRCxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDekIsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUM7UUFDaEMsQ0FBQztRQUVELElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUNwQixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztRQUMzQixDQUFDO1FBRUQsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3JCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1FBQzVCLENBQUM7UUFFRCxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMseUJBQXlCLEVBQUUsQ0FBQztZQUNuQyxJQUFJLENBQUMseUJBQXlCLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDNUMsSUFBSSxDQUFDLHlCQUF5QixHQUFHLElBQUksQ0FBQztRQUMxQyxDQUFDO0lBQ0wsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50UmVmLCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgSVJlbmRlclZpcnR1YWxMaXN0SXRlbSwgSVZpcnR1YWxMaXN0Q29sbGVjdGlvbiwgSVZpcnR1YWxMaXN0SXRlbSB9IGZyb20gXCIuLi8uLi8uLi9tb2RlbHNcIjtcclxuaW1wb3J0IHsgSWQgfSBmcm9tIFwiLi4vLi4vLi4vdHlwZXNcIjtcclxuaW1wb3J0IHsgSVNpemUgfSBmcm9tICcuLi8uLi8uLi9pbnRlcmZhY2VzJztcclxuaW1wb3J0IHsgQ01hcCB9IGZyb20gXCIuLi8uLi8uLi91dGlscy9jbWFwXCI7XHJcbmltcG9ydCB7IFByZXJlbmRlckNhY2hlIH0gZnJvbSBcIi4uL3R5cGVzL2NhY2hlXCI7XHJcbmltcG9ydCB7IEJhc2VWaXJ0dWFsTGlzdEl0ZW1Db21wb25lbnQgfSBmcm9tIFwiLi4vLi4vbmctbGlzdC1pdGVtL2Jhc2VcIjtcclxuaW1wb3J0IHsgSVByZXJlbmRlclRyYWNrQm94UmVmcmVzaFBhcmFtcyB9IGZyb20gXCIuLi9pbnRlcmZhY2VzXCI7XHJcbmltcG9ydCB7IERFRkFVTFRfRFlOQU1JQ19TSVpFLCBERUZBVUxUX0lURU1fU0laRSwgVFJBQ0tfQllfUFJPUEVSVFlfTkFNRSB9IGZyb20gXCIuLi8uLi8uLi9jb25zdFwiO1xyXG5pbXBvcnQgeyBDb21wb25lbnQkMSB9IGZyb20gXCIuLi8uLi8uLi9tb2RlbHMvY29tcG9uZW50Lm1vZGVsXCI7XHJcbmltcG9ydCB7IEV2ZW50RW1pdHRlciB9IGZyb20gXCIuLi8uLi8uLi91dGlscy9ldmVudC1lbWl0dGVyL2V2ZW50LWVtaXR0ZXJcIjtcclxuaW1wb3J0IHsgUHJlcmVuZGVyVHJhY2tCb3hFdmVudHMsIFByZXJlbmRlclRyYWNrQm94SGFuZGxlcnMgfSBmcm9tIFwiLi4vZXZlbnRzXCI7XHJcblxyXG5jb25zdCBjcmVhdGVJdGVtRGF0YSA9IChkYXRhOiBJVmlydHVhbExpc3RJdGVtLCBpc1ZlcnRpY2FsOiBib29sZWFuLCBib3VuZHM6IElTaXplLCBib3VuZHNTaXplOiBudW1iZXIsXHJcbiAgICBkeW5hbWljOiBib29sZWFuLCBpdGVtU2l6ZTogbnVtYmVyLCBpZDogSWQsIGluZGV4OiBudW1iZXIpOiBJUmVuZGVyVmlydHVhbExpc3RJdGVtID0+IHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgICAgaW5kZXgsXHJcbiAgICAgICAgaWQsXHJcbiAgICAgICAgbWVhc3VyZXM6IHtcclxuICAgICAgICAgICAgcG9zaXRpb246IDAsXHJcbiAgICAgICAgICAgIHNjcm9sbFNpemU6IDAsXHJcbiAgICAgICAgICAgIHNpemU6IGl0ZW1TaXplLFxyXG4gICAgICAgICAgICBib3VuZHNTaXplLFxyXG4gICAgICAgICAgICBhYnNvbHV0ZVN0YXJ0UG9zaXRpb246IDAsXHJcbiAgICAgICAgICAgIGFic29sdXRlU3RhcnRQb3NpdGlvblBlcmNlbnQ6IDAsXHJcbiAgICAgICAgICAgIGFic29sdXRlRW5kUG9zaXRpb246IDAsXHJcbiAgICAgICAgICAgIGFic29sdXRlRW5kUG9zaXRpb25QZXJjZW50OiAwLFxyXG4gICAgICAgICAgICBkZWx0YTogMCxcclxuICAgICAgICAgICAgeDogMCxcclxuICAgICAgICAgICAgeTogMCxcclxuICAgICAgICAgICAgd2lkdGg6IChpc1ZlcnRpY2FsID8gYm91bmRzLndpZHRoIDogaXRlbVNpemUpIGFzIGFueSxcclxuICAgICAgICAgICAgaGVpZ2h0OiAoaXNWZXJ0aWNhbCA/IGl0ZW1TaXplIDogYm91bmRzLmhlaWdodCkgYXMgYW55LFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZGF0YSxcclxuICAgICAgICBwcmV2aW91c2VEYXRhOiBkYXRhLFxyXG4gICAgICAgIG5leHREYXRhOiBkYXRhLFxyXG4gICAgICAgIGNvbmZpZzoge1xyXG4gICAgICAgICAgICBuZXc6IGZhbHNlLFxyXG4gICAgICAgICAgICBvZGQ6IGZhbHNlLFxyXG4gICAgICAgICAgICBldmVuOiBmYWxzZSxcclxuICAgICAgICAgICAgY29sbGFwc2FibGU6IGZhbHNlLFxyXG4gICAgICAgICAgICBzdGlja3k6IDAsXHJcbiAgICAgICAgICAgIHNlbGVjdGFibGU6IGZhbHNlLFxyXG4gICAgICAgICAgICBzbmFwOiBmYWxzZSxcclxuICAgICAgICAgICAgc25hcHBlZDogZmFsc2UsXHJcbiAgICAgICAgICAgIHNuYXBwZWRPdXQ6IGZhbHNlLFxyXG4gICAgICAgICAgICBpc1ZlcnRpY2FsLFxyXG4gICAgICAgICAgICBkeW5hbWljLFxyXG4gICAgICAgICAgICBpc1NuYXBwaW5nTWV0aG9kQWR2YW5jZWQ6IGZhbHNlLFxyXG4gICAgICAgICAgICB0YWJJbmRleDogMCxcclxuICAgICAgICAgICAgekluZGV4OiBcIjBcIixcclxuICAgICAgICB9LFxyXG4gICAgfVxyXG59XHJcblxyXG4vKipcclxuICogUHJlcmVuZGVyVHJhY2tCb3hcclxuICogTWF4aW11bSBwZXJmb3JtYW5jZSBmb3IgZXh0cmVtZWx5IGxhcmdlIGxpc3RzLlxyXG4gKiBJdCBpcyBiYXNlZCBvbiBhbGdvcml0aG1zIGZvciB2aXJ0dWFsaXphdGlvbiBvZiBzY3JlZW4gb2JqZWN0cy5cclxuICogQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL0Rqb25ueVgvbmctdmlydHVhbC1saXN0L2Jsb2IvMTgueC9wcm9qZWN0cy9uZy12aXJ0dWFsLWxpc3Qvc3JjL2xpYi9wcmVyZW5kZXItY29udGFpbmVyL2NvcmUvcHJlcmVuZGVyLXRyYWNrLWJveC50c1xyXG4gKiBAYXV0aG9yIEV2Z2VuaWkgQWxleGFuZHJvdmljaCBHcmViZW5uaWtvdlxyXG4gKiBAZW1haWwgZGpvbm55eEBnbWFpbC5jb21cclxuICovXHJcbmV4cG9ydCBjbGFzcyBQcmVyZW5kZXJUcmFja0JveCBleHRlbmRzIEV2ZW50RW1pdHRlcjxQcmVyZW5kZXJUcmFja0JveEV2ZW50cywgUHJlcmVuZGVyVHJhY2tCb3hIYW5kbGVycz4ge1xyXG4gICAgcHJpdmF0ZSBfbWFwOiBDTWFwPElkLCBJU2l6ZT4gfCBudWxsID0gbmV3IENNYXA8SWQsIElTaXplPigpO1xyXG5cclxuICAgIHByaXZhdGUgX2l0ZW1zOiBJVmlydHVhbExpc3RDb2xsZWN0aW9uIHwgbnVsbCA9IG5ldyBBcnJheTxJVmlydHVhbExpc3RJdGVtPigpO1xyXG5cclxuICAgIHByaXZhdGUgX2NvbnRhaW5lcjogVmlld0NvbnRhaW5lclJlZiB8IG51bGwgPSBudWxsO1xyXG5cclxuICAgIHByaXZhdGUgX2NvbXBvbmVudENsYXNzOiBDb21wb25lbnQkMTxCYXNlVmlydHVhbExpc3RJdGVtQ29tcG9uZW50PiB8IG51bGwgPSBudWxsO1xyXG5cclxuICAgIHByaXZhdGUgX2NvbXBvbmVudHM6IEFycmF5PENvbXBvbmVudFJlZjxCYXNlVmlydHVhbExpc3RJdGVtQ29tcG9uZW50Pj4gfCBudWxsID0gbmV3IEFycmF5PENvbXBvbmVudFJlZjxCYXNlVmlydHVhbExpc3RJdGVtQ29tcG9uZW50Pj4oKTtcclxuXHJcbiAgICBwcml2YXRlIF9jb21wb25lbnRzUmVzaXplT2JzZXJ2ZXI6IFJlc2l6ZU9ic2VydmVyIHwgbnVsbCA9IG5ldyBSZXNpemVPYnNlcnZlcigoKSA9PiB7XHJcbiAgICAgICAgY29uc3QgY29tcG9uZW50cyA9IHRoaXMuX2NvbXBvbmVudHM7XHJcbiAgICAgICAgaWYgKCEhY29tcG9uZW50cykge1xyXG4gICAgICAgICAgICBmb3IgKGNvbnN0IGNvbXAgb2YgY29tcG9uZW50cykge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgeyB3aWR0aCwgaGVpZ2h0IH0gPSBjb21wLmluc3RhbmNlLmdldEJvdW5kcygpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5fbWFwPy5zZXQoY29tcC5pbnN0YW5jZS5pdGVtSWQhLCB7IHdpZHRoLCBoZWlnaHQgfSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5kaXNwYXRjaChQcmVyZW5kZXJUcmFja0JveEV2ZW50cy5SRVNJWkUsICh0aGlzLl9tYXA/LnRvT2JqZWN0KCkgfHwge30pKTtcclxuICAgIH0pO1xyXG5cclxuICAgIHByaXZhdGUgX2FjdGl2ZTogYm9vbGVhbiA9IHRydWU7XHJcbiAgICBnZXQgYWN0aXZlKCkgeyByZXR1cm4gdGhpcy5fYWN0aXZlOyB9XHJcblxyXG4gICAgcHJpdmF0ZSByZWZyZXNoKGNvbXBvbmVudENsYXNzOiBDb21wb25lbnQkMTxCYXNlVmlydHVhbExpc3RJdGVtQ29tcG9uZW50PiwgYm91bmRzOiBJU2l6ZSwgcGFyYW1zOiBJUHJlcmVuZGVyVHJhY2tCb3hSZWZyZXNoUGFyYW1zKSB7XHJcbiAgICAgICAgY29uc3QgaXNWZXJ0aWNhbCA9IHBhcmFtcy5pc1ZlcnRpY2FsID8/IHRydWUsXHJcbiAgICAgICAgICAgIGR5bmFtaWMgPSBwYXJhbXMuZHluYW1pYyA/PyBERUZBVUxUX0RZTkFNSUNfU0laRSxcclxuICAgICAgICAgICAgaXRlbXNTaXplID0gcGFyYW1zLml0ZW1TaXplID8/IERFRkFVTFRfSVRFTV9TSVpFLFxyXG4gICAgICAgICAgICB0cmFja0J5ID0gcGFyYW1zLnRyYWNrQnkgPz8gVFJBQ0tfQllfUFJPUEVSVFlfTkFNRSxcclxuICAgICAgICAgICAgaXRlbVJlbmRlcmVyID0gcGFyYW1zLml0ZW1SZW5kZXJlcixcclxuICAgICAgICAgICAgYm91bmRzU2l6ZSA9IGlzVmVydGljYWwgPyBib3VuZHMuaGVpZ2h0IDogYm91bmRzLndpZHRoLFxyXG4gICAgICAgICAgICBpdGVtcyA9IHRoaXMuX2l0ZW1zLCBjb21wb25lbnRzID0gdGhpcy5fY29tcG9uZW50cyxcclxuICAgICAgICAgICAgcmVzaXplT2JzZXJ2ZXIgPSB0aGlzLl9jb21wb25lbnRzUmVzaXplT2JzZXJ2ZXI7XHJcblxyXG4gICAgICAgIGlmICghaXRlbXMgfHwgIWNvbXBvbmVudHMgfHwgIXRoaXMuX2NvbnRhaW5lcikge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxldCB0b3RhbFNpemUgPSAwLCBqID0gMDtcclxuICAgICAgICBmb3IgKGxldCBpID0gaXRlbXMubGVuZ3RoIC0gMSwgbCA9IDA7IGkgPj0gbDsgaS0tKSB7XHJcbiAgICAgICAgICAgIGlmICh0b3RhbFNpemUgPiBib3VuZHNTaXplKSB7XHJcbiAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBjb25zdCBpdGVtID0gaXRlbXNbaV07XHJcbiAgICAgICAgICAgIGlmICghIWl0ZW0pIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IGlkID0gaXRlbVt0cmFja0J5XSwgaW5kZXggPSBpdGVtcy5sZW5ndGggLSBpIC0gMTtcclxuICAgICAgICAgICAgICAgIGxldCBjb21wOiBDb21wb25lbnRSZWY8QmFzZVZpcnR1YWxMaXN0SXRlbUNvbXBvbmVudD47XHJcbiAgICAgICAgICAgICAgICBpZiAoY29tcG9uZW50cy5sZW5ndGggPD0gaikge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbXAgPSB0aGlzLl9jb250YWluZXIuY3JlYXRlQ29tcG9uZW50KGNvbXBvbmVudENsYXNzKTtcclxuICAgICAgICAgICAgICAgICAgICBjb21wLmluc3RhbmNlLnJlbmRlcmVyID0gaXRlbVJlbmRlcmVyO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmICghIXJlc2l6ZU9ic2VydmVyKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlc2l6ZU9ic2VydmVyLm9ic2VydmUoY29tcC5pbnN0YW5jZS5lbGVtZW50KTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgY29tcG9uZW50cy5wdXNoKGNvbXApO1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICBjb21wID0gY29tcG9uZW50c1tqXTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGNvbXAuaW5zdGFuY2UuaXRlbSA9IGNyZWF0ZUl0ZW1EYXRhKGl0ZW0sIGlzVmVydGljYWwsIGJvdW5kcywgYm91bmRzU2l6ZSwgZHluYW1pYywgaXRlbXNTaXplLCBpZCwgaW5kZXgpO1xyXG4gICAgICAgICAgICAgICAgY29tcC5pbnN0YW5jZS5zaG93KCk7XHJcbiAgICAgICAgICAgICAgICBjb25zdCB7IHdpZHRoLCBoZWlnaHQgfSA9IGNvbXAuaW5zdGFuY2UuZ2V0Qm91bmRzKCksXHJcbiAgICAgICAgICAgICAgICAgICAgdyA9IGlzVmVydGljYWwgPyB3aWR0aCA6IHdpZHRoIDwgaXRlbXNTaXplID8gaXRlbXNTaXplIDogd2lkdGgsXHJcbiAgICAgICAgICAgICAgICAgICAgaCA9IGlzVmVydGljYWwgPyBoZWlnaHQgPCBpdGVtc1NpemUgPyBpdGVtc1NpemUgOiBoZWlnaHQgOiBoZWlnaHQ7XHJcbiAgICAgICAgICAgICAgICB0b3RhbFNpemUgKz0gaXNWZXJ0aWNhbCA/IGggOiB3O1xyXG4gICAgICAgICAgICAgICAgaisrO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGNyZWF0ZShjb250YWluZXI6IFZpZXdDb250YWluZXJSZWYpIHtcclxuICAgICAgICB0aGlzLl9jb250YWluZXIgPSBjb250YWluZXI7XHJcbiAgICB9XHJcblxyXG4gICAgcmVzZXQoY29tcG9uZW50Q2xhc3M6IENvbXBvbmVudCQxPEJhc2VWaXJ0dWFsTGlzdEl0ZW1Db21wb25lbnQ+LCBpdGVtczogSVZpcnR1YWxMaXN0Q29sbGVjdGlvbixcclxuICAgICAgICBib3VuZHM6IElTaXplLCBwYXJhbXM6IElQcmVyZW5kZXJUcmFja0JveFJlZnJlc2hQYXJhbXMpIHtcclxuICAgICAgICB0aGlzLl9pdGVtcyA9IGl0ZW1zO1xyXG4gICAgICAgIHRoaXMuX2NvbXBvbmVudENsYXNzID0gY29tcG9uZW50Q2xhc3M7XHJcbiAgICAgICAgdGhpcy5yZWZyZXNoKGNvbXBvbmVudENsYXNzLCBib3VuZHMsIHBhcmFtcyk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0Q2FjaGUoKTogUHJlcmVuZGVyQ2FjaGUge1xyXG4gICAgICAgIHJldHVybiAhIXRoaXMuX21hcCA/IHRoaXMuX21hcC50b09iamVjdCgpIDoge307XHJcbiAgICB9XHJcblxyXG4gICAgY2xlYXIoKSB7XHJcbiAgICAgICAgaWYgKCEhdGhpcy5fbWFwKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX21hcC5jbGVhcigpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBvbigpIHtcclxuICAgICAgICBpZiAodGhpcy5fYWN0aXZlKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMuX2FjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgY29uc3QgY29tcG9uZW50cyA9IHRoaXMuX2NvbXBvbmVudHM7XHJcbiAgICAgICAgaWYgKCEhY29tcG9uZW50cykge1xyXG4gICAgICAgICAgICBjb25zdCBvYnNlcnZlciA9IHRoaXMuX2NvbXBvbmVudHNSZXNpemVPYnNlcnZlcjtcclxuICAgICAgICAgICAgZm9yIChjb25zdCBjb21wIG9mIGNvbXBvbmVudHMpIHtcclxuICAgICAgICAgICAgICAgIGlmICghIWNvbXAgJiYgISFvYnNlcnZlcikge1xyXG4gICAgICAgICAgICAgICAgICAgIG9ic2VydmVyLm9ic2VydmUoY29tcC5pbnN0YW5jZS5lbGVtZW50KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBvZmYoKSB7XHJcbiAgICAgICAgaWYgKCF0aGlzLl9hY3RpdmUpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5fYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgaWYgKCEhdGhpcy5fY29tcG9uZW50c1Jlc2l6ZU9ic2VydmVyKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX2NvbXBvbmVudHNSZXNpemVPYnNlcnZlcj8uZGlzY29ubmVjdCgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBvdmVycmlkZSBkaXNwb3NlKCkge1xyXG4gICAgICAgIHN1cGVyLmRpc3Bvc2UoKTtcclxuXHJcbiAgICAgICAgaWYgKCEhdGhpcy5fbWFwKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX21hcC5jbGVhcigpO1xyXG4gICAgICAgICAgICB0aGlzLl9tYXAgPSBudWxsO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKCEhdGhpcy5faXRlbXMpIHtcclxuICAgICAgICAgICAgdGhpcy5faXRlbXMgPSBudWxsO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKCEhdGhpcy5fY29tcG9uZW50Q2xhc3MpIHtcclxuICAgICAgICAgICAgdGhpcy5fY29tcG9uZW50Q2xhc3MgPSBudWxsO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKCEhdGhpcy5fY29udGFpbmVyKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX2NvbnRhaW5lciA9IG51bGw7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAoISF0aGlzLl9jb21wb25lbnRzKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX2NvbXBvbmVudHMgPSBudWxsO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKCEhdGhpcy5fY29tcG9uZW50c1Jlc2l6ZU9ic2VydmVyKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX2NvbXBvbmVudHNSZXNpemVPYnNlcnZlci5kaXNjb25uZWN0KCk7XHJcbiAgICAgICAgICAgIHRoaXMuX2NvbXBvbmVudHNSZXNpemVPYnNlcnZlciA9IG51bGw7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
198
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJlcmVuZGVyLXRyYWNrLWJveC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXZpcnR1YWwtbGlzdC9zcmMvbGliL2NvbXBvbmVudHMvbmctcHJlcmVuZGVyLWNvbnRhaW5lci9jb3JlL3ByZXJlbmRlci10cmFjay1ib3gudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBSTNDLE9BQU8sRUFBRSxlQUFlLEVBQUUsb0JBQW9CLEVBQUUsaUJBQWlCLEVBQUUsMEJBQTBCLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU5SSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDMUUsT0FBTyxFQUFFLHVCQUF1QixFQUE2QixNQUFNLFdBQVcsQ0FBQztBQUUvRSxNQUFNLGNBQWMsR0FBRyxDQUFDLElBQXNCLEVBQUUsVUFBbUIsRUFBRSxNQUFhLEVBQUUsVUFBa0IsRUFDbEcsT0FBZ0IsRUFBRSxPQUFlLEVBQUUsUUFBZ0IsRUFBRSxFQUFNLEVBQUUsS0FBYSxFQUEwQixFQUFFO0lBQ3RHLE1BQU0sQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEdBQUcsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBUSxFQUMvRCxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTSxHQUFHLE9BQU8sQ0FBQyxDQUFRLENBQUM7SUFDbkUsT0FBTztRQUNILEtBQUs7UUFDTCxFQUFFO1FBQ0YsUUFBUSxFQUFFO1lBQ04sUUFBUSxFQUFFLENBQUM7WUFDWCxVQUFVLEVBQUUsQ0FBQztZQUNiLElBQUksRUFBRSxRQUFRO1lBQ2QsR0FBRyxFQUFFO2dCQUNE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aEMsQ0FBQztRQUVELElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUNwQixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztRQUMzQixDQUFDO1FBRUQsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3JCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1FBQzVCLENBQUM7UUFFRCxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMseUJBQXlCLEVBQUUsQ0FBQztZQUNuQyxJQUFJLENBQUMseUJBQXlCLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDNUMsSUFBSSxDQUFDLHlCQUF5QixHQUFHLElBQUksQ0FBQztRQUMxQyxDQUFDO0lBQ0wsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50UmVmLCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgSVJlbmRlclZpcnR1YWxMaXN0SXRlbSwgSVZpcnR1YWxMaXN0Q29sbGVjdGlvbiwgSVZpcnR1YWxMaXN0SXRlbSB9IGZyb20gXCIuLi8uLi8uLi9tb2RlbHNcIjtcclxuaW1wb3J0IHsgSWQgfSBmcm9tIFwiLi4vLi4vLi4vdHlwZXNcIjtcclxuaW1wb3J0IHsgSVNpemUgfSBmcm9tICcuLi8uLi8uLi9pbnRlcmZhY2VzJztcclxuaW1wb3J0IHsgQ01hcCB9IGZyb20gXCIuLi8uLi8uLi91dGlscy9jbWFwXCI7XHJcbmltcG9ydCB7IFByZXJlbmRlckNhY2hlIH0gZnJvbSBcIi4uL3R5cGVzL2NhY2hlXCI7XHJcbmltcG9ydCB7IEJhc2VWaXJ0dWFsTGlzdEl0ZW1Db21wb25lbnQgfSBmcm9tIFwiLi4vLi4vbmctbGlzdC1pdGVtL2Jhc2VcIjtcclxuaW1wb3J0IHsgSVByZXJlbmRlclRyYWNrQm94UmVmcmVzaFBhcmFtcyB9IGZyb20gXCIuLi9pbnRlcmZhY2VzXCI7XHJcbmltcG9ydCB7IERFRkFVTFRfRElWSURFUywgREVGQVVMVF9EWU5BTUlDX1NJWkUsIERFRkFVTFRfSVRFTV9TSVpFLCBERUZBVUxUX1NOQVBfVE9fSVRFTV9BTElHTiwgVFJBQ0tfQllfUFJPUEVSVFlfTkFNRSB9IGZyb20gXCIuLi8uLi8uLi9jb25zdFwiO1xyXG5pbXBvcnQgeyBDb21wb25lbnQkMSB9IGZyb20gXCIuLi8uLi8uLi9tb2RlbHMvY29tcG9uZW50Lm1vZGVsXCI7XHJcbmltcG9ydCB7IEV2ZW50RW1pdHRlciB9IGZyb20gXCIuLi8uLi8uLi91dGlscy9ldmVudC1lbWl0dGVyL2V2ZW50LWVtaXR0ZXJcIjtcclxuaW1wb3J0IHsgUHJlcmVuZGVyVHJhY2tCb3hFdmVudHMsIFByZXJlbmRlclRyYWNrQm94SGFuZGxlcnMgfSBmcm9tIFwiLi4vZXZlbnRzXCI7XHJcblxyXG5jb25zdCBjcmVhdGVJdGVtRGF0YSA9IChkYXRhOiBJVmlydHVhbExpc3RJdGVtLCBpc1ZlcnRpY2FsOiBib29sZWFuLCBib3VuZHM6IElTaXplLCBib3VuZHNTaXplOiBudW1iZXIsXHJcbiAgICBkeW5hbWljOiBib29sZWFuLCBkaXZpZGVzOiBudW1iZXIsIGl0ZW1TaXplOiBudW1iZXIsIGlkOiBJZCwgaW5kZXg6IG51bWJlcik6IElSZW5kZXJWaXJ0dWFsTGlzdEl0ZW0gPT4ge1xyXG4gICAgY29uc3QgdyA9IChpc1ZlcnRpY2FsID8gKGJvdW5kcy53aWR0aCAvIGRpdmlkZXMpIDogaXRlbVNpemUpIGFzIGFueSxcclxuICAgICAgICBoID0gKGlzVmVydGljYWwgPyBpdGVtU2l6ZSA6IChib3VuZHMuaGVpZ2h0IC8gZGl2aWRlcykpIGFzIGFueTtcclxuICAgIHJldHVybiB7XHJcbiAgICAgICAgaW5kZXgsXHJcbiAgICAgICAgaWQsXHJcbiAgICAgICAgbWVhc3VyZXM6IHtcclxuICAgICAgICAgICAgcG9zaXRpb246IDAsXHJcbiAgICAgICAgICAgIHNjcm9sbFNpemU6IDAsXHJcbiAgICAgICAgICAgIHNpemU6IGl0ZW1TaXplLFxyXG4gICAgICAgICAgICByb3c6IHtcclxuICAgICAgICAgICAgICAgIHNpemU6IGl0ZW1TaXplLFxyXG4gICAgICAgICAgICAgICAgb2RkOiBmYWxzZSxcclxuICAgICAgICAgICAgICAgIGV2ZW46IGZhbHNlXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIGJvdW5kc1NpemUsXHJcbiAgICAgICAgICAgIGFic29sdXRlU3RhcnRQb3NpdGlvbjogMCxcclxuICAgICAgICAgICAgYWJzb2x1dGVTdGFydFBvc2l0aW9uUGVyY2VudDogMCxcclxuICAgICAgICAgICAgYWJzb2x1dGVFbmRQb3NpdGlvbjogMCxcclxuICAgICAgICAgICAgYWJzb2x1dGVFbmRQb3NpdGlvblBlcmNlbnQ6IDAsXHJcbiAgICAgICAgICAgIGRlbHRhOiAwLFxyXG4gICAgICAgICAgICB4OiAwLFxyXG4gICAgICAgICAgICB5OiAwLFxyXG4gICAgICAgICAgICB0cmFuc2Zvcm1lZFg6IDAsXHJcbiAgICAgICAgICAgIHRyYW5zZm9ybWVkWTogMCxcclxuICAgICAgICAgICAgejogMCxcclxuICAgICAgICAgICAgcm90YXRpb25YOiAwLFxyXG4gICAgICAgICAgICByb3RhdGlvblk6IDAsXHJcbiAgICAgICAgICAgIHJvdGF0aW9uWjogMCxcclxuICAgICAgICAgICAgc2NhbGVYOiAwLFxyXG4gICAgICAgICAgICBzY2FsZVk6IDAsXHJcbiAgICAgICAgICAgIHNjYWxlWjogMCxcclxuICAgICAgICAgICAgd2lkdGg6IHcsXHJcbiAgICAgICAgICAgIGhlaWdodDogaCxcclxuICAgICAgICAgICAgbWluV2lkdGg6IDAsXHJcbiAgICAgICAgICAgIG1pbkhlaWdodDogMCxcclxuICAgICAgICAgICAgbWF4V2lkdGg6IE51bWJlci5NQVhfU0FGRV9JTlRFR0VSLFxyXG4gICAgICAgICAgICBtYXhIZWlnaHQ6IE51bWJlci5NQVhfU0FGRV9JTlRFR0VSLFxyXG4gICAgICAgICAgICBzY3JvbGxEaXJlY3Rpb246IDAsXHJcbiAgICAgICAgfSxcclxuICAgICAgICBkYXRhLFxyXG4gICAgICAgIHByZXZpb3VzZURhdGE6IGRhdGEsXHJcbiAgICAgICAgbmV4dERhdGE6IGRhdGEsXHJcbiAgICAgICAgY29uZmlnOiB7XHJcbiAgICAgICAgICAgIG5ldzogZmFsc2UsXHJcbiAgICAgICAgICAgIG9kZDogZmFsc2UsXHJcbiAgICAgICAgICAgIGV2ZW46IGZhbHNlLFxyXG4gICAgICAgICAgICBjb2xsYXBzYWJsZTogZmFsc2UsXHJcbiAgICAgICAgICAgIHN0aWNreTogMCxcclxuICAgICAgICAgICAgc2VsZWN0YWJsZTogZmFsc2UsXHJcbiAgICAgICAgICAgIHNuYXA6IGZhbHNlLFxyXG4gICAgICAgICAgICBzbmFwcGVkOiBmYWxzZSxcclxuICAgICAgICAgICAgc25hcHBlZE91dDogZmFsc2UsXHJcbiAgICAgICAgICAgIGlzVmVydGljYWwsXHJcbiAgICAgICAgICAgIGR5bmFtaWMsXHJcbiAgICAgICAgICAgIGlzU25hcHBpbmdNZXRob2RBZHZhbmNlZDogZmFsc2UsXHJcbiAgICAgICAgICAgIGRpdmlkZXM6IDEsXHJcbiAgICAgICAgICAgIHRhYkluZGV4OiAwLFxyXG4gICAgICAgICAgICBvcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICB6SW5kZXg6IFwiMFwiLFxyXG4gICAgICAgICAgICBzbmFwVG9JdGVtOiBmYWxzZSxcclxuICAgICAgICAgICAgc25hcFRvSXRlbUFsaWduOiBERUZBVUxUX1NOQVBfVE9fSVRFTV9BTElHTixcclxuICAgICAgICAgICAgbGF5b3V0T2Zmc2V0OiAwLFxyXG4gICAgICAgICAgICBpc0ZpcnN0OiBmYWxzZSxcclxuICAgICAgICAgICAgaXNMYXN0OiBmYWxzZSxcclxuICAgICAgICAgICAgZnVsbFNpemU6IGZhbHNlLFxyXG4gICAgICAgICAgICBsYXlvdXRJbmRleE9mZnNldDogMCxcclxuICAgICAgICAgICAgdG90YWxJdGVtczogMCxcclxuICAgICAgICB9LFxyXG4gICAgfVxyXG59XHJcblxyXG4vKipcclxuICogUHJlcmVuZGVyVHJhY2tCb3hcclxuICogTWF4aW11bSBwZXJmb3JtYW5jZSBmb3IgZXh0cmVtZWx5IGxhcmdlIGxpc3RzLlxyXG4gKiBJdCBpcyBiYXNlZCBvbiBhbGdvcml0aG1zIGZvciB2aXJ0dWFsaXphdGlvbiBvZiBzY3JlZW4gb2JqZWN0cy5cclxuICogQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL0Rqb25ueVgvbmctdmlydHVhbC1saXN0L2Jsb2IvMTgueC9wcm9qZWN0cy9uZy12aXJ0dWFsLWxpc3Qvc3JjL2xpYi9wcmVyZW5kZXItY29udGFpbmVyL2NvcmUvcHJlcmVuZGVyLXRyYWNrLWJveC50c1xyXG4gKiBAYXV0aG9yIEV2Z2VuaWkgQWxleGFuZHJvdmljaCBHcmViZW5uaWtvdlxyXG4gKiBAZW1haWwgZGpvbm55eEBnbWFpbC5jb21cclxuICovXHJcbmV4cG9ydCBjbGFzcyBQcmVyZW5kZXJUcmFja0JveCBleHRlbmRzIEV2ZW50RW1pdHRlcjxQcmVyZW5kZXJUcmFja0JveEV2ZW50cywgUHJlcmVuZGVyVHJhY2tCb3hIYW5kbGVycz4ge1xyXG4gICAgcHJpdmF0ZSBfbWFwOiBDTWFwPElkLCBJU2l6ZT4gfCBudWxsID0gbmV3IENNYXA8SWQsIElTaXplPigpO1xyXG5cclxuICAgIHByaXZhdGUgX2l0ZW1zOiBJVmlydHVhbExpc3RDb2xsZWN0aW9uIHwgbnVsbCA9IG5ldyBBcnJheTxJVmlydHVhbExpc3RJdGVtPigpO1xyXG5cclxuICAgIHByaXZhdGUgX2NvbnRhaW5lcjogVmlld0NvbnRhaW5lclJlZiB8IG51bGwgPSBudWxsO1xyXG5cclxuICAgIHByaXZhdGUgX2NvbXBvbmVudENsYXNzOiBDb21wb25lbnQkMTxCYXNlVmlydHVhbExpc3RJdGVtQ29tcG9uZW50PiB8IG51bGwgPSBudWxsO1xyXG5cclxuICAgIHByaXZhdGUgX2NvbXBvbmVudHM6IEFycmF5PENvbXBvbmVudFJlZjxCYXNlVmlydHVhbExpc3RJdGVtQ29tcG9uZW50Pj4gfCBudWxsID0gbmV3IEFycmF5PENvbXBvbmVudFJlZjxCYXNlVmlydHVhbExpc3RJdGVtQ29tcG9uZW50Pj4oKTtcclxuXHJcbiAgICBwcml2YXRlIF9jb21wb25lbnRzUmVzaXplT2JzZXJ2ZXI6IFJlc2l6ZU9ic2VydmVyIHwgbnVsbCA9IG5ldyBSZXNpemVPYnNlcnZlcigoKSA9PiB7XHJcbiAgICAgICAgY29uc3QgY29tcG9uZW50cyA9IHRoaXMuX2NvbXBvbmVudHM7XHJcbiAgICAgICAgaWYgKCEhY29tcG9uZW50cykge1xyXG4gICAgICAgICAgICBmb3IgKGNvbnN0IGNvbXAgb2YgY29tcG9uZW50cykge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgeyB3aWR0aCwgaGVpZ2h0IH0gPSBjb21wLmluc3RhbmNlLmdldEJvdW5kcygpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5fbWFwPy5zZXQoY29tcC5pbnN0YW5jZS5pdGVtSWQhLCB7IHdpZHRoLCBoZWlnaHQgfSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5kaXNwYXRjaChQcmVyZW5kZXJUcmFja0JveEV2ZW50cy5SRVNJWkUsICh0aGlzLl9tYXA/LnRvT2JqZWN0KCkgfHwge30pKTtcclxuICAgIH0pO1xyXG5cclxuICAgIHByaXZhdGUgX2FjdGl2ZTogYm9vbGVhbiA9IHRydWU7XHJcbiAgICBnZXQgYWN0aXZlKCkgeyByZXR1cm4gdGhpcy5fYWN0aXZlOyB9XHJcblxyXG4gICAgcHJpdmF0ZSByZWZyZXNoKGNvbXBvbmVudENsYXNzOiBDb21wb25lbnQkMTxCYXNlVmlydHVhbExpc3RJdGVtQ29tcG9uZW50PiwgYm91bmRzOiBJU2l6ZSwgcGFyYW1zOiBJUHJlcmVuZGVyVHJhY2tCb3hSZWZyZXNoUGFyYW1zKSB7XHJcbiAgICAgICAgY29uc3QgaXNWZXJ0aWNhbCA9IHBhcmFtcy5pc1ZlcnRpY2FsID8/IHRydWUsXHJcbiAgICAgICAgICAgIGR5bmFtaWMgPSBwYXJhbXMuZHluYW1pYyA/PyBERUZBVUxUX0RZTkFNSUNfU0laRSxcclxuICAgICAgICAgICAgZGl2aWRlcyA9IHBhcmFtcy5kaXZpZGVzID8/IERFRkFVTFRfRElWSURFUyxcclxuICAgICAgICAgICAgaXRlbXNTaXplID0gcGFyYW1zLml0ZW1TaXplID8/IERFRkFVTFRfSVRFTV9TSVpFLFxyXG4gICAgICAgICAgICB0cmFja0J5ID0gcGFyYW1zLnRyYWNrQnkgPz8gVFJBQ0tfQllfUFJPUEVSVFlfTkFNRSxcclxuICAgICAgICAgICAgaXRlbVJlbmRlcmVyID0gcGFyYW1zLml0ZW1SZW5kZXJlcixcclxuICAgICAgICAgICAgYm91bmRzU2l6ZSA9IGlzVmVydGljYWwgPyBib3VuZHMuaGVpZ2h0IDogYm91bmRzLndpZHRoLFxyXG4gICAgICAgICAgICBpdGVtcyA9IHRoaXMuX2l0ZW1zLCBjb21wb25lbnRzID0gdGhpcy5fY29tcG9uZW50cyxcclxuICAgICAgICAgICAgcmVzaXplT2JzZXJ2ZXIgPSB0aGlzLl9jb21wb25lbnRzUmVzaXplT2JzZXJ2ZXI7XHJcblxyXG4gICAgICAgIGlmICghaXRlbXMgfHwgIWNvbXBvbmVudHMgfHwgIXRoaXMuX2NvbnRhaW5lcikge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxldCB0b3RhbFNpemUgPSAwLCBqID0gMDtcclxuICAgICAgICBmb3IgKGxldCBpID0gaXRlbXMubGVuZ3RoIC0gMSwgbCA9IDA7IGkgPj0gbDsgaS0tKSB7XHJcbiAgICAgICAgICAgIGlmICh0b3RhbFNpemUgPiBib3VuZHNTaXplKSB7XHJcbiAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBjb25zdCBpdGVtID0gaXRlbXNbaV07XHJcbiAgICAgICAgICAgIGlmICghIWl0ZW0pIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IGlkID0gaXRlbVt0cmFja0J5XSwgaW5kZXggPSBpdGVtcy5sZW5ndGggLSBpIC0gMTtcclxuICAgICAgICAgICAgICAgIGxldCBjb21wOiBDb21wb25lbnRSZWY8QmFzZVZpcnR1YWxMaXN0SXRlbUNvbXBvbmVudD47XHJcbiAgICAgICAgICAgICAgICBpZiAoY29tcG9uZW50cy5sZW5ndGggPD0gaikge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbXAgPSB0aGlzLl9jb250YWluZXIuY3JlYXRlQ29tcG9uZW50KGNvbXBvbmVudENsYXNzKTtcclxuICAgICAgICAgICAgICAgICAgICBjb21wLmluc3RhbmNlLnJlbmRlcmVyID0gaXRlbVJlbmRlcmVyO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmICghIXJlc2l6ZU9ic2VydmVyKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlc2l6ZU9ic2VydmVyLm9ic2VydmUoY29tcC5pbnN0YW5jZS5lbGVtZW50KTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgY29tcG9uZW50cy5wdXNoKGNvbXApO1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICBjb21wID0gY29tcG9uZW50c1tqXTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGNvbXAuaW5zdGFuY2UuaXRlbSA9IGNyZWF0ZUl0ZW1EYXRhKGl0ZW0sIGlzVmVydGljYWwsIGJvdW5kcywgYm91bmRzU2l6ZSwgZHluYW1pYywgZGl2aWRlcywgaXRlbXNTaXplLCBpZCwgaW5kZXgpO1xyXG4gICAgICAgICAgICAgICAgY29tcC5pbnN0YW5jZS5zaG93KCk7XHJcbiAgICAgICAgICAgICAgICBjb25zdCB7IHdpZHRoLCBoZWlnaHQgfSA9IGNvbXAuaW5zdGFuY2UuZ2V0Qm91bmRzKCksXHJcbiAgICAgICAgICAgICAgICAgICAgdyA9IGlzVmVydGljYWwgPyB3aWR0aCA6IHdpZHRoIDwgaXRlbXNTaXplID8gaXRlbXNTaXplIDogd2lkdGgsXHJcbiAgICAgICAgICAgICAgICAgICAgaCA9IGlzVmVydGljYWwgPyBoZWlnaHQgPCBpdGVtc1NpemUgPyBpdGVtc1NpemUgOiBoZWlnaHQgOiBoZWlnaHQ7XHJcbiAgICAgICAgICAgICAgICB0b3RhbFNpemUgKz0gaXNWZXJ0aWNhbCA/IGggOiB3O1xyXG4gICAgICAgICAgICAgICAgaisrO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGNyZWF0ZShjb250YWluZXI6IFZpZXdDb250YWluZXJSZWYpIHtcclxuICAgICAgICB0aGlzLl9jb250YWluZXIgPSBjb250YWluZXI7XHJcbiAgICB9XHJcblxyXG4gICAgcmVzZXQoY29tcG9uZW50Q2xhc3M6IENvbXBvbmVudCQxPEJhc2VWaXJ0dWFsTGlzdEl0ZW1Db21wb25lbnQ+LCBpdGVtczogSVZpcnR1YWxMaXN0Q29sbGVjdGlvbixcclxuICAgICAgICBib3VuZHM6IElTaXplLCBwYXJhbXM6IElQcmVyZW5kZXJUcmFja0JveFJlZnJlc2hQYXJhbXMpIHtcclxuICAgICAgICB0aGlzLl9pdGVtcyA9IGl0ZW1zO1xyXG4gICAgICAgIHRoaXMuX2NvbXBvbmVudENsYXNzID0gY29tcG9uZW50Q2xhc3M7XHJcbiAgICAgICAgdGhpcy5yZWZyZXNoKGNvbXBvbmVudENsYXNzLCBib3VuZHMsIHBhcmFtcyk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0Q2FjaGUoKTogUHJlcmVuZGVyQ2FjaGUge1xyXG4gICAgICAgIHJldHVybiAhIXRoaXMuX21hcCA/IHRoaXMuX21hcC50b09iamVjdCgpIDoge307XHJcbiAgICB9XHJcblxyXG4gICAgY2xlYXIoKSB7XHJcbiAgICAgICAgaWYgKCEhdGhpcy5fbWFwKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX21hcC5jbGVhcigpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBvbigpIHtcclxuICAgICAgICBpZiAodGhpcy5fYWN0aXZlKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMuX2FjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgY29uc3QgY29tcG9uZW50cyA9IHRoaXMuX2NvbXBvbmVudHM7XHJcbiAgICAgICAgaWYgKCEhY29tcG9uZW50cykge1xyXG4gICAgICAgICAgICBjb25zdCBvYnNlcnZlciA9IHRoaXMuX2NvbXBvbmVudHNSZXNpemVPYnNlcnZlcjtcclxuICAgICAgICAgICAgZm9yIChjb25zdCBjb21wIG9mIGNvbXBvbmVudHMpIHtcclxuICAgICAgICAgICAgICAgIGlmICghIWNvbXAgJiYgISFvYnNlcnZlcikge1xyXG4gICAgICAgICAgICAgICAgICAgIG9ic2VydmVyLm9ic2VydmUoY29tcC5pbnN0YW5jZS5lbGVtZW50KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBvZmYoKSB7XHJcbiAgICAgICAgaWYgKCF0aGlzLl9hY3RpdmUpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5fYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgaWYgKCEhdGhpcy5fY29tcG9uZW50c1Jlc2l6ZU9ic2VydmVyKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX2NvbXBvbmVudHNSZXNpemVPYnNlcnZlcj8uZGlzY29ubmVjdCgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBvdmVycmlkZSBkaXNwb3NlKCkge1xyXG4gICAgICAgIHN1cGVyLmRpc3Bvc2UoKTtcclxuXHJcbiAgICAgICAgaWYgKCEhdGhpcy5fbWFwKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX21hcC5jbGVhcigpO1xyXG4gICAgICAgICAgICB0aGlzLl9tYXAgPSBudWxsO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKCEhdGhpcy5faXRlbXMpIHtcclxuICAgICAgICAgICAgdGhpcy5faXRlbXMgPSBudWxsO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKCEhdGhpcy5fY29tcG9uZW50Q2xhc3MpIHtcclxuICAgICAgICAgICAgdGhpcy5fY29tcG9uZW50Q2xhc3MgPSBudWxsO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKCEhdGhpcy5fY29udGFpbmVyKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX2NvbnRhaW5lciA9IG51bGw7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAoISF0aGlzLl9jb21wb25lbnRzKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX2NvbXBvbmVudHMgPSBudWxsO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKCEhdGhpcy5fY29tcG9uZW50c1Jlc2l6ZU9ic2VydmVyKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX2NvbXBvbmVudHNSZXNpemVPYnNlcnZlci5kaXNjb25uZWN0KCk7XHJcbiAgICAgICAgICAgIHRoaXMuX2NvbXBvbmVudHNSZXNpemVPYnNlcnZlciA9IG51bGw7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVmcmVzaC1wYXJhbXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy12aXJ0dWFsLWxpc3Qvc3JjL2xpYi9jb21wb25lbnRzL25nLXByZXJlbmRlci1jb250YWluZXIvaW50ZXJmYWNlcy9yZWZyZXNoLXBhcmFtcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGVtcGxhdGVSZWYgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5cclxuLyoqXHJcbiAqIElQcmVyZW5kZXJUcmFja0JveFJlZnJlc2hQYXJhbXMuXHJcbiAqIE1heGltdW0gcGVyZm9ybWFuY2UgZm9yIGV4dHJlbWVseSBsYXJnZSBsaXN0cy5cclxuICogSXQgaXMgYmFzZWQgb24gYWxnb3JpdGhtcyBmb3IgdmlydHVhbGl6YXRpb24gb2Ygc2NyZWVuIG9iamVjdHMuXHJcbiAqIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9Eam9ubnlYL25nLXZpcnR1YWwtbGlzdC9ibG9iLzE4LngvcHJvamVjdHMvbmctdmlydHVhbC1saXN0L3NyYy9saWIvcHJlcmVuZGVyLWNvbnRhaW5lci9pbnRlcmZhY2VzL3JlZnJlc2gtcGFyYW1zLnRzXHJcbiAqIEBhdXRob3IgRXZnZW5paSBBbGV4YW5kcm92aWNoIEdyZWJlbm5pa292XHJcbiAqIEBlbWFpbCBkam9ubnl4QGdtYWlsLmNvbVxyXG4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBJUHJlcmVuZGVyVHJhY2tCb3hSZWZyZXNoUGFyYW1zIHtcclxuICAgIGl0ZW1SZW5kZXJlcjogVGVtcGxhdGVSZWY8YW55PiB8IHVuZGVmaW5lZDtcclxuICAgIGR5bmFtaWM6IGJvb2xlYW47XHJcbiAgICBkaXZpZGVzOiBudW1iZXI7XHJcbiAgICBpdGVtU2l6ZTogbnVtYmVyO1xyXG4gICAgaXNWZXJ0aWNhbDogYm9vbGVhbjtcclxuICAgIHRyYWNrQnk6IHN0cmluZztcclxufSJdfQ==
|