@ethlete/core 1.10.0 → 1.10.1
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/esm2022/lib/components/structured-data/structured-data.component.mjs +38 -0
- package/esm2022/lib/directives/animatable/animatable.directive.mjs +116 -0
- package/esm2022/lib/directives/animated-lifecycle/animated-lifecycle.directive.mjs +116 -0
- package/esm2022/lib/directives/click-outside/click-outside.directive.mjs +38 -0
- package/esm2022/lib/directives/cursor-drag-scroll/cursor-drag-scroll.directive.mjs +148 -0
- package/esm2022/lib/directives/delayable/delayable.directive.mjs +56 -0
- package/esm2022/lib/directives/let/let.directive.mjs +41 -0
- package/esm2022/lib/directives/observe-content/observe-content.directive.mjs +69 -0
- package/esm2022/lib/directives/observe-resize/observe-resize.directive.mjs +69 -0
- package/esm2022/lib/directives/observe-scroll-state/observe-scroll-state.directive.mjs +177 -0
- package/esm2022/lib/directives/repeat/repeat.directive.mjs +37 -0
- package/esm2022/lib/directives/scroll-observer-first-element/scroll-observer-first-element.directive.mjs +32 -0
- package/esm2022/lib/directives/scroll-observer-ignore-target/scroll-observer-ignore-target.directive.mjs +19 -0
- package/esm2022/lib/directives/scroll-observer-last-element/scroll-observer-last-element.directive.mjs +35 -0
- package/esm2022/lib/directives/seo/seo.directive.mjs +167 -0
- package/esm2022/lib/pipes/normalize-game-result-type/normalize-game-result-type.pipe.mjs +16 -0
- package/esm2022/lib/pipes/normalize-match-participants/normalize-match-participants.pipe.mjs +16 -0
- package/esm2022/lib/pipes/normalize-match-score/normalize-match-score.pipe.mjs +16 -0
- package/esm2022/lib/pipes/normalize-match-state/normalize-match-state.pipe.mjs +16 -0
- package/esm2022/lib/pipes/normalize-match-type/normalize-match-type.pipe.mjs +16 -0
- package/esm2022/lib/pipes/to-array/to-array.pipe.mjs +16 -0
- package/esm2022/lib/services/click-observer.service.mjs +75 -0
- package/esm2022/lib/services/content-observer.service.mjs +81 -0
- package/esm2022/lib/services/destroy.service.mjs +24 -0
- package/esm2022/lib/services/focus-visible.service.mjs +35 -0
- package/esm2022/lib/services/resize-observer.service.mjs +77 -0
- package/esm2022/lib/services/router-state.service.mjs +116 -0
- package/esm2022/lib/services/viewport.service.mjs +169 -0
- package/esm2022/lib/types/angular.types.mjs +15 -0
- package/esm2022/lib/utils/scrollable.utils.mjs +85 -0
- package/{fesm2020 → fesm2022}/ethlete-core.mjs +119 -140
- package/{fesm2020 → fesm2022}/ethlete-core.mjs.map +1 -1
- package/lib/components/structured-data/structured-data.component.d.ts +1 -1
- package/lib/directives/animatable/animatable.directive.d.ts +1 -1
- package/lib/directives/cursor-drag-scroll/cursor-drag-scroll.directive.d.ts +1 -1
- package/lib/directives/let/let.directive.d.ts +1 -1
- package/lib/directives/observe-content/observe-content.directive.d.ts +1 -1
- package/lib/directives/observe-resize/observe-resize.directive.d.ts +1 -1
- package/lib/directives/observe-scroll-state/observe-scroll-state.directive.d.ts +1 -1
- package/lib/directives/repeat/repeat.directive.d.ts +1 -1
- package/lib/directives/scroll-observer-first-element/scroll-observer-first-element.directive.d.ts +1 -1
- package/lib/directives/scroll-observer-last-element/scroll-observer-last-element.directive.d.ts +1 -1
- package/lib/types/angular.types.d.ts +0 -7
- package/package.json +13 -19
- package/esm2020/lib/components/structured-data/structured-data.component.mjs +0 -37
- package/esm2020/lib/directives/animatable/animatable.directive.mjs +0 -115
- package/esm2020/lib/directives/animated-lifecycle/animated-lifecycle.directive.mjs +0 -115
- package/esm2020/lib/directives/click-outside/click-outside.directive.mjs +0 -37
- package/esm2020/lib/directives/cursor-drag-scroll/cursor-drag-scroll.directive.mjs +0 -147
- package/esm2020/lib/directives/delayable/delayable.directive.mjs +0 -55
- package/esm2020/lib/directives/let/let.directive.mjs +0 -40
- package/esm2020/lib/directives/observe-content/observe-content.directive.mjs +0 -68
- package/esm2020/lib/directives/observe-resize/observe-resize.directive.mjs +0 -68
- package/esm2020/lib/directives/observe-scroll-state/observe-scroll-state.directive.mjs +0 -176
- package/esm2020/lib/directives/repeat/repeat.directive.mjs +0 -36
- package/esm2020/lib/directives/scroll-observer-first-element/scroll-observer-first-element.directive.mjs +0 -31
- package/esm2020/lib/directives/scroll-observer-ignore-target/scroll-observer-ignore-target.directive.mjs +0 -18
- package/esm2020/lib/directives/scroll-observer-last-element/scroll-observer-last-element.directive.mjs +0 -34
- package/esm2020/lib/directives/seo/seo.directive.mjs +0 -166
- package/esm2020/lib/pipes/normalize-game-result-type/normalize-game-result-type.pipe.mjs +0 -15
- package/esm2020/lib/pipes/normalize-match-participants/normalize-match-participants.pipe.mjs +0 -15
- package/esm2020/lib/pipes/normalize-match-score/normalize-match-score.pipe.mjs +0 -15
- package/esm2020/lib/pipes/normalize-match-state/normalize-match-state.pipe.mjs +0 -15
- package/esm2020/lib/pipes/normalize-match-type/normalize-match-type.pipe.mjs +0 -15
- package/esm2020/lib/pipes/to-array/to-array.pipe.mjs +0 -15
- package/esm2020/lib/services/click-observer.service.mjs +0 -73
- package/esm2020/lib/services/content-observer.service.mjs +0 -79
- package/esm2020/lib/services/destroy.service.mjs +0 -23
- package/esm2020/lib/services/focus-visible.service.mjs +0 -34
- package/esm2020/lib/services/resize-observer.service.mjs +0 -75
- package/esm2020/lib/services/router-state.service.mjs +0 -115
- package/esm2020/lib/services/viewport.service.mjs +0 -168
- package/esm2020/lib/types/angular.types.mjs +0 -36
- package/esm2020/lib/utils/scrollable.utils.mjs +0 -85
- package/fesm2015/ethlete-core.mjs +0 -2787
- package/fesm2015/ethlete-core.mjs.map +0 -1
- /package/{esm2020 → esm2022}/ethlete-core.mjs +0 -0
- /package/{esm2020 → esm2022}/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/structured-data/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/constants/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/constants/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/constants/viewport.constants.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/decorators/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/decorators/memo/memo.decorator.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/decorators/memo/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/decorators/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/directives/animatable/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/directives/animatable/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/directives/animated-lifecycle/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/directives/click-outside/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/directives/cursor-drag-scroll/cursor-drag-scroll.constants.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/directives/cursor-drag-scroll/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/directives/delayable/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/directives/let/let.types.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/directives/let/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/directives/observe-content/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/directives/observe-resize/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/directives/observe-scroll-state/observe-scroll-state.constants.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/directives/observe-scroll-state/observe-scroll-state.types.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/directives/observe-scroll-state/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/directives/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/directives/repeat/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/directives/scroll-observer-first-element/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/directives/scroll-observer-first-element/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/directives/scroll-observer-ignore-target/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/directives/scroll-observer-ignore-target/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/directives/scroll-observer-last-element/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/directives/scroll-observer-last-element/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/directives/seo/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/directives/seo/seo.directive.constants.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/directives/seo/seo.directive.types.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/directives/seo/seo.directive.utils.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/pipes/normalize-game-result-type/normalize-game-result-type.types.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/pipes/normalize-game-result-type/normalize-game-result-type.util.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/pipes/normalize-game-result-type/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/pipes/normalize-match-participants/normalize-match-participants.types.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/pipes/normalize-match-participants/normalize-match-participants.util.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/pipes/normalize-match-participants/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/pipes/normalize-match-score/normalize-match-score.types.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/pipes/normalize-match-score/normalize-match-score.util.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/pipes/normalize-match-score/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/pipes/normalize-match-state/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/pipes/normalize-match-state/normalize-match-state.constants.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/pipes/normalize-match-state/normalize-match-state.util.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/pipes/normalize-match-state/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/pipes/normalize-match-type/normalize-match-type.util.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/pipes/normalize-match-type/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/pipes/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/pipes/to-array/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/pipes/to-array/to-array.util.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/services/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/services/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/services/viewport.types.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/types/i18n.types.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/types/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/types/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/types/viewport.types.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/utils/animation.utils.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/utils/clamp.util.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/utils/clone.util.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/utils/cookie.util.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/utils/equal.util.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/utils/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/utils/media-query-observable.util.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/utils/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/utils/reactive-binding.util.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/utils/rxjs.utils.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/utils/smart-block-scroll-strategy.utils.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/utils/viewport.util.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/validators/is-array-not-empty.validator.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/validators/is-email.validator.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/validators/must-match.validator.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/validators/public-api.mjs +0 -0
|
@@ -1,168 +0,0 @@
|
|
|
1
|
-
import { __decorate, __metadata } from "tslib";
|
|
2
|
-
import { BreakpointObserver } from '@angular/cdk/layout';
|
|
3
|
-
import { Inject, Injectable, Optional } from '@angular/core';
|
|
4
|
-
import { BehaviorSubject, combineLatest, map, shareReplay } from 'rxjs';
|
|
5
|
-
import { DEFAULT_VIEWPORT_CONFIG, VIEWPORT_CONFIG } from '../constants';
|
|
6
|
-
import { Memo } from '../decorators';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
import * as i1 from "@angular/cdk/layout";
|
|
9
|
-
export class ViewportService {
|
|
10
|
-
get isXs$() {
|
|
11
|
-
return this._isXs$.asObservable();
|
|
12
|
-
}
|
|
13
|
-
get isXs() {
|
|
14
|
-
return this._isXs$.value;
|
|
15
|
-
}
|
|
16
|
-
get isSm$() {
|
|
17
|
-
return this._isSm$.asObservable();
|
|
18
|
-
}
|
|
19
|
-
get isSm() {
|
|
20
|
-
return this._isSm$.value;
|
|
21
|
-
}
|
|
22
|
-
get isMd$() {
|
|
23
|
-
return this._isMd$.asObservable();
|
|
24
|
-
}
|
|
25
|
-
get isMd() {
|
|
26
|
-
return this._isMd$.value;
|
|
27
|
-
}
|
|
28
|
-
get isLg$() {
|
|
29
|
-
return this._isLg$.asObservable();
|
|
30
|
-
}
|
|
31
|
-
get isLg() {
|
|
32
|
-
return this._isLg$.value;
|
|
33
|
-
}
|
|
34
|
-
get isXl$() {
|
|
35
|
-
return this._isXl$.asObservable();
|
|
36
|
-
}
|
|
37
|
-
get isXl() {
|
|
38
|
-
return this._isXl$.value;
|
|
39
|
-
}
|
|
40
|
-
get is2Xl$() {
|
|
41
|
-
return this._is2Xl$.asObservable();
|
|
42
|
-
}
|
|
43
|
-
get is2Xl() {
|
|
44
|
-
return this._is2Xl$.value;
|
|
45
|
-
}
|
|
46
|
-
get currentViewport() {
|
|
47
|
-
return this.getCurrentViewport([this.isXs, this.isSm, this.isMd, this.isLg, this.isXl, this.is2Xl]);
|
|
48
|
-
}
|
|
49
|
-
constructor(_viewportConfig, _breakpointObserver) {
|
|
50
|
-
this._breakpointObserver = _breakpointObserver;
|
|
51
|
-
this._isXs$ = new BehaviorSubject(false);
|
|
52
|
-
this._isSm$ = new BehaviorSubject(false);
|
|
53
|
-
this._isMd$ = new BehaviorSubject(false);
|
|
54
|
-
this._isLg$ = new BehaviorSubject(false);
|
|
55
|
-
this._isXl$ = new BehaviorSubject(false);
|
|
56
|
-
this._is2Xl$ = new BehaviorSubject(false);
|
|
57
|
-
this.currentViewport$ = combineLatest([this.isXs$, this.isSm$, this.isMd$, this.isLg$, this.isXl$, this.is2Xl$]).pipe(map((val) => this.getCurrentViewport(val)), shareReplay(1));
|
|
58
|
-
this._viewportConfig = _viewportConfig || DEFAULT_VIEWPORT_CONFIG;
|
|
59
|
-
this._observeDefaultBreakpoints();
|
|
60
|
-
}
|
|
61
|
-
observe(options) {
|
|
62
|
-
const mediaQuery = this._buildMediaQuery(options);
|
|
63
|
-
return this._breakpointObserver.observe(mediaQuery).pipe(map((x) => x.matches), shareReplay(1));
|
|
64
|
-
}
|
|
65
|
-
isMatched(options) {
|
|
66
|
-
const mediaQuery = this._buildMediaQuery(options);
|
|
67
|
-
return this._breakpointObserver.isMatched(mediaQuery);
|
|
68
|
-
}
|
|
69
|
-
_observeDefaultBreakpoints() {
|
|
70
|
-
this.observe({ max: 'xs' }).subscribe(this._isXs$);
|
|
71
|
-
this.observe({ min: 'sm', max: 'sm' }).subscribe(this._isSm$);
|
|
72
|
-
this.observe({ min: 'md', max: 'md' }).subscribe(this._isMd$);
|
|
73
|
-
this.observe({ min: 'lg', max: 'lg' }).subscribe(this._isLg$);
|
|
74
|
-
this.observe({ min: 'xl', max: 'xl' }).subscribe(this._isXl$);
|
|
75
|
-
this.observe({ min: '2xl' }).subscribe(this._is2Xl$);
|
|
76
|
-
}
|
|
77
|
-
_getViewportSize(type, option) {
|
|
78
|
-
const index = option === 'min' ? 0 : 1;
|
|
79
|
-
const size = this._viewportConfig.breakpoints[type][index];
|
|
80
|
-
if (size === Infinity || size === 0) {
|
|
81
|
-
return size;
|
|
82
|
-
}
|
|
83
|
-
if (option === 'min') {
|
|
84
|
-
return size;
|
|
85
|
-
}
|
|
86
|
-
// Due to scaling, the actual size of the viewport may be a decimal number.
|
|
87
|
-
// Eg. on Windows 11 with 150% scaling, the viewport size may be 1535.33px
|
|
88
|
-
// and thus not matching any of the default breakpoints.
|
|
89
|
-
return size + 0.9;
|
|
90
|
-
}
|
|
91
|
-
_buildMediaQuery(options) {
|
|
92
|
-
if (!options.min && !options.max) {
|
|
93
|
-
throw new Error('At least one of min or max must be defined');
|
|
94
|
-
}
|
|
95
|
-
const mediaQueryParts = [];
|
|
96
|
-
if (options.min) {
|
|
97
|
-
if (typeof options.min === 'number') {
|
|
98
|
-
mediaQueryParts.push(`(min-width: ${options.min}px)`);
|
|
99
|
-
}
|
|
100
|
-
else {
|
|
101
|
-
mediaQueryParts.push(`(min-width: ${this._getViewportSize(options.min, 'min')}px)`);
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
if (options.min && options.max) {
|
|
105
|
-
mediaQueryParts.push('and');
|
|
106
|
-
}
|
|
107
|
-
if (options.max) {
|
|
108
|
-
if (typeof options.max === 'number') {
|
|
109
|
-
mediaQueryParts.push(`(max-width: ${options.max}px)`);
|
|
110
|
-
}
|
|
111
|
-
else {
|
|
112
|
-
mediaQueryParts.push(`(max-width: ${this._getViewportSize(options.max, 'max')}px)`);
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
return mediaQueryParts.join(' ');
|
|
116
|
-
}
|
|
117
|
-
getCurrentViewport([isXs, isSm, isMd, isLg, isXl, is2Xl]) {
|
|
118
|
-
if (isXs) {
|
|
119
|
-
return 'xs';
|
|
120
|
-
}
|
|
121
|
-
else if (isSm) {
|
|
122
|
-
return 'sm';
|
|
123
|
-
}
|
|
124
|
-
else if (isMd) {
|
|
125
|
-
return 'md';
|
|
126
|
-
}
|
|
127
|
-
else if (isLg) {
|
|
128
|
-
return 'lg';
|
|
129
|
-
}
|
|
130
|
-
else if (isXl) {
|
|
131
|
-
return 'xl';
|
|
132
|
-
}
|
|
133
|
-
else if (is2Xl) {
|
|
134
|
-
return '2xl';
|
|
135
|
-
}
|
|
136
|
-
return 'xs';
|
|
137
|
-
}
|
|
138
|
-
}
|
|
139
|
-
ViewportService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ViewportService, deps: [{ token: VIEWPORT_CONFIG, optional: true }, { token: i1.BreakpointObserver }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
140
|
-
ViewportService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ViewportService, providedIn: 'root' });
|
|
141
|
-
__decorate([
|
|
142
|
-
Memo(),
|
|
143
|
-
__metadata("design:type", Function),
|
|
144
|
-
__metadata("design:paramtypes", [String, String]),
|
|
145
|
-
__metadata("design:returntype", void 0)
|
|
146
|
-
], ViewportService.prototype, "_getViewportSize", null);
|
|
147
|
-
__decorate([
|
|
148
|
-
Memo({
|
|
149
|
-
resolver: (v) => {
|
|
150
|
-
return `${v.min ?? ''}-${v.max ?? ''}`;
|
|
151
|
-
},
|
|
152
|
-
}),
|
|
153
|
-
__metadata("design:type", Function),
|
|
154
|
-
__metadata("design:paramtypes", [Object]),
|
|
155
|
-
__metadata("design:returntype", void 0)
|
|
156
|
-
], ViewportService.prototype, "_buildMediaQuery", null);
|
|
157
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ViewportService, decorators: [{
|
|
158
|
-
type: Injectable,
|
|
159
|
-
args: [{
|
|
160
|
-
providedIn: 'root',
|
|
161
|
-
}]
|
|
162
|
-
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
163
|
-
type: Inject,
|
|
164
|
-
args: [VIEWPORT_CONFIG]
|
|
165
|
-
}, {
|
|
166
|
-
type: Optional
|
|
167
|
-
}] }, { type: i1.BreakpointObserver }]; }, propDecorators: { _getViewportSize: [], _buildMediaQuery: [] } });
|
|
168
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld3BvcnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL3NlcnZpY2VzL3ZpZXdwb3J0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxHQUFHLEVBQWMsV0FBVyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3BGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxlQUFlLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDeEUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBT3JDLE1BQU0sT0FBTyxlQUFlO0lBVTFCLElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztJQUMzQixDQUFDO0lBRUQsSUFBSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3BDLENBQUM7SUFFRCxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDO0lBQzNCLENBQUM7SUFFRCxJQUFJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDcEMsQ0FBQztJQUVELElBQUksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUM7SUFDM0IsQ0FBQztJQUVELElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFD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QztJQUVPLGtCQUFrQixDQUFDLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxLQUFLLENBTzlEO1FBQ0MsSUFBSSxJQUFJLEVBQUU7WUFDUixPQUFPLElBQUksQ0FBQztTQUNiO2FBQU0sSUFBSSxJQUFJLEVBQUU7WUFDZixPQUFPLElBQUksQ0FBQztTQUNiO2FBQU0sSUFBSSxJQUFJLEVBQUU7WUFDZixPQUFPLElBQUksQ0FBQztTQUNiO2FBQU0sSUFBSSxJQUFJLEVBQUU7WUFDZixPQUFPLElBQUksQ0FBQztTQUNiO2FBQU0sSUFBSSxJQUFJLEVBQUU7WUFDZixPQUFPLElBQUksQ0FBQztTQUNiO2FBQU0sSUFBSSxLQUFLLEVBQUU7WUFDaEIsT0FBTyxLQUFLLENBQUM7U0FDZDtRQUVELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQzs7NEdBaExVLGVBQWUsa0JBb0VoQixlQUFlO2dIQXBFZCxlQUFlLGNBRmQsTUFBTTtBQXFHbEI7SUFBQyxJQUFJLEVBQUU7Ozs7dURBaUJOO0FBRUQ7SUFBQyxJQUFJLENBQUM7UUFDSixRQUFRLEVBQUUsQ0FBQyxDQUF5QixFQUFFLEVBQUU7WUFDdEMsT0FBTyxHQUFHLENBQUMsQ0FBQyxHQUFHLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxHQUFHLElBQUksRUFBRSxFQUFFLENBQUM7UUFDekMsQ0FBQztLQUNGLENBQUM7Ozs7dURBNkJEOzJGQXZKVSxlQUFlO2tCQUgzQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBcUVJLE1BQU07MkJBQUMsZUFBZTs7MEJBQUcsUUFBUTs2RUFnQzVCLGdCQUFnQixNQXVCaEIsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQnJlYWtwb2ludE9ic2VydmVyIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2xheW91dCc7XG5pbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIG1hcCwgT2JzZXJ2YWJsZSwgc2hhcmVSZXBsYXkgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IERFRkFVTFRfVklFV1BPUlRfQ09ORklHLCBWSUVXUE9SVF9DT05GSUcgfSBmcm9tICcuLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgTWVtbyB9IGZyb20gJy4uL2RlY29yYXRvcnMnO1xuaW1wb3J0IHsgQnJlYWtwb2ludCwgVmlld3BvcnRDb25maWcgfSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQgeyBCdWlsZE1lZGlhUXVlcnlPcHRpb25zIH0gZnJvbSAnLi92aWV3cG9ydC50eXBlcyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBWaWV3cG9ydFNlcnZpY2Uge1xuICBwcml2YXRlIF92aWV3cG9ydENvbmZpZzogVmlld3BvcnRDb25maWc7XG5cbiAgcHJpdmF0ZSBfaXNYcyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGZhbHNlKTtcbiAgcHJpdmF0ZSBfaXNTbSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGZhbHNlKTtcbiAgcHJpdmF0ZSBfaXNNZCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGZhbHNlKTtcbiAgcHJpdmF0ZSBfaXNMZyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGZhbHNlKTtcbiAgcHJpdmF0ZSBfaXNYbCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGZhbHNlKTtcbiAgcHJpdmF0ZSBfaXMyWGwkID0gbmV3IEJlaGF2aW9yU3ViamVjdChmYWxzZSk7XG5cbiAgZ2V0IGlzWHMkKCkge1xuICAgIHJldHVybiB0aGlzLl9pc1hzJC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIGdldCBpc1hzKCkge1xuICAgIHJldHVybiB0aGlzLl9pc1hzJC52YWx1ZTtcbiAgfVxuXG4gIGdldCBpc1NtJCgpIHtcbiAgICByZXR1cm4gdGhpcy5faXNTbSQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBnZXQgaXNTbSgpIHtcbiAgICByZXR1cm4gdGhpcy5faXNTbSQudmFsdWU7XG4gIH1cblxuICBnZXQgaXNNZCQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2lzTWQkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgZ2V0IGlzTWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2lzTWQkLnZhbHVlO1xuICB9XG5cbiAgZ2V0IGlzTGckKCkge1xuICAgIHJldHVybiB0aGlzLl9pc0xnJC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIGdldCBpc0xnKCkge1xuICAgIHJldHVybiB0aGlzLl9pc0xnJC52YWx1ZTtcbiAgfVxuXG4gIGdldCBpc1hsJCgpIHtcbiAgICByZXR1cm4gdGhpcy5faXNYbCQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBnZXQgaXNYbCgpIHtcbiAgICByZXR1cm4gdGhpcy5faXNYbCQudmFsdWU7XG4gIH1cblxuICBnZXQgaXMyWGwkKCkge1xuICAgIHJldHVybiB0aGlzLl9pczJYbCQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBnZXQgaXMyWGwoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2lzMlhsJC52YWx1ZTtcbiAgfVxuXG4gIGN1cnJlbnRWaWV3cG9ydCQgPSBjb21iaW5lTGF0ZXN0KFt0aGlzLmlzWHMkLCB0aGlzLmlzU20kLCB0aGlzLmlzTWQkLCB0aGlzLmlzTGckLCB0aGlzLmlzWGwkLCB0aGlzLmlzMlhsJF0pLnBpcGUoXG4gICAgbWFwKCh2YWwpID0+IHRoaXMuZ2V0Q3VycmVudFZpZXdwb3J0KHZhbCkpLFxuICAgIHNoYXJlUmVwbGF5KDEpLFxuICApO1xuXG4gIGdldCBjdXJyZW50Vmlld3BvcnQoKSB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0Q3VycmVudFZpZXdwb3J0KFt0aGlzLmlzWHMsIHRoaXMuaXNTbSwgdGhpcy5pc01kLCB0aGlzLmlzTGcsIHRoaXMuaXNYbCwgdGhpcy5pczJYbF0pO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQEluamVjdChWSUVXUE9SVF9DT05GSUcpIEBPcHRpb25hbCgpIF92aWV3cG9ydENvbmZpZzogVmlld3BvcnRDb25maWcgfCBudWxsLFxuICAgIHByaXZhdGUgX2JyZWFrcG9pbnRPYnNlcnZlcjogQnJlYWtwb2ludE9ic2VydmVyLFxuICApIHtcbiAgICB0aGlzLl92aWV3cG9ydENvbmZpZyA9IF92aWV3cG9ydENvbmZpZyB8fCBERUZBVUxUX1ZJRVdQT1JUX0NPTkZJRztcbiAgICB0aGlzLl9vYnNlcnZlRGVmYXVsdEJyZWFrcG9pbnRzKCk7XG4gIH1cblxuICBvYnNlcnZlKG9wdGlvbnM6IHsgbWluPzogbnVtYmVyIHwgQnJlYWtwb2ludDsgbWF4PzogbnVtYmVyIHwgQnJlYWtwb2ludCB9KTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgY29uc3QgbWVkaWFRdWVyeSA9IHRoaXMuX2J1aWxkTWVkaWFRdWVyeShvcHRpb25zKTtcblxuICAgIHJldHVybiB0aGlzLl9icmVha3BvaW50T2JzZXJ2ZXIub2JzZXJ2ZShtZWRpYVF1ZXJ5KS5waXBlKFxuICAgICAgbWFwKCh4KSA9PiB4Lm1hdGNoZXMpLFxuICAgICAgc2hhcmVSZXBsYXkoMSksXG4gICAgKTtcbiAgfVxuXG4gIGlzTWF0Y2hlZChvcHRpb25zOiB7IG1pbj86IG51bWJlciB8IEJyZWFrcG9pbnQ7IG1heD86IG51bWJlciB8IEJyZWFrcG9pbnQgfSk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IG1lZGlhUXVlcnkgPSB0aGlzLl9idWlsZE1lZGlhUXVlcnkob3B0aW9ucyk7XG5cbiAgICByZXR1cm4gdGhpcy5fYnJlYWtwb2ludE9ic2VydmVyLmlzTWF0Y2hlZChtZWRpYVF1ZXJ5KTtcbiAgfVxuXG4gIHByaXZhdGUgX29ic2VydmVEZWZhdWx0QnJlYWtwb2ludHMoKSB7XG4gICAgdGhpcy5vYnNlcnZlKHsgbWF4OiAneHMnIH0pLnN1YnNjcmliZSh0aGlzLl9pc1hzJCk7XG4gICAgdGhpcy5vYnNlcnZlKHsgbWluOiAnc20nLCBtYXg6ICdzbScgfSkuc3Vic2NyaWJlKHRoaXMuX2lzU20kKTtcbiAgICB0aGlzLm9ic2VydmUoeyBtaW46ICdtZCcsIG1heDogJ21kJyB9KS5zdWJzY3JpYmUodGhpcy5faXNNZCQpO1xuICAgIHRoaXMub2JzZXJ2ZSh7IG1pbjogJ2xnJywgbWF4OiAnbGcnIH0pLnN1YnNjcmliZSh0aGlzLl9pc0xnJCk7XG4gICAgdGhpcy5vYnNlcnZlKHsgbWluOiAneGwnLCBtYXg6ICd4bCcgfSkuc3Vic2NyaWJlKHRoaXMuX2lzWGwkKTtcbiAgICB0aGlzLm9ic2VydmUoeyBtaW46ICcyeGwnIH0pLnN1YnNjcmliZSh0aGlzLl9pczJYbCQpO1xuICB9XG5cbiAgQE1lbW8oKVxuICBwcml2YXRlIF9nZXRWaWV3cG9ydFNpemUodHlwZTogQnJlYWtwb2ludCwgb3B0aW9uOiAnbWluJyB8ICdtYXgnKSB7XG4gICAgY29uc3QgaW5kZXggPSBvcHRpb24gPT09ICdtaW4nID8gMCA6IDE7XG4gICAgY29uc3Qgc2l6ZSA9IHRoaXMuX3ZpZXdwb3J0Q29uZmlnLmJyZWFrcG9pbnRzW3R5cGVdW2luZGV4XTtcblxuICAgIGlmIChzaXplID09PSBJbmZpbml0eSB8fCBzaXplID09PSAwKSB7XG4gICAgICByZXR1cm4gc2l6ZTtcbiAgICB9XG5cbiAgICBpZiAob3B0aW9uID09PSAnbWluJykge1xuICAgICAgcmV0dXJuIHNpemU7XG4gICAgfVxuXG4gICAgLy8gRHVlIHRvIHNjYWxpbmcsIHRoZSBhY3R1YWwgc2l6ZSBvZiB0aGUgdmlld3BvcnQgbWF5IGJlIGEgZGVjaW1hbCBudW1iZXIuXG4gICAgLy8gRWcuIG9uIFdpbmRvd3MgMTEgd2l0aCAxNTAlIHNjYWxpbmcsIHRoZSB2aWV3cG9ydCBzaXplIG1heSBiZSAxNTM1LjMzcHhcbiAgICAvLyBhbmQgdGh1cyBub3QgbWF0Y2hpbmcgYW55IG9mIHRoZSBkZWZhdWx0IGJyZWFrcG9pbnRzLlxuICAgIHJldHVybiBzaXplICsgMC45O1xuICB9XG5cbiAgQE1lbW8oe1xuICAgIHJlc29sdmVyOiAodjogQnVpbGRNZWRpYVF1ZXJ5T3B0aW9ucykgPT4ge1xuICAgICAgcmV0dXJuIGAke3YubWluID8/ICcnfS0ke3YubWF4ID8/ICcnfWA7XG4gICAgfSxcbiAgfSlcbiAgcHJpdmF0ZSBfYnVpbGRNZWRpYVF1ZXJ5KG9wdGlvbnM6IEJ1aWxkTWVkaWFRdWVyeU9wdGlvbnMpIHtcbiAgICBpZiAoIW9wdGlvbnMubWluICYmICFvcHRpb25zLm1heCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdBdCBsZWFzdCBvbmUgb2YgbWluIG9yIG1heCBtdXN0IGJlIGRlZmluZWQnKTtcbiAgICB9XG5cbiAgICBjb25zdCBtZWRpYVF1ZXJ5UGFydHM6IHN0cmluZ1tdID0gW107XG5cbiAgICBpZiAob3B0aW9ucy5taW4pIHtcbiAgICAgIGlmICh0eXBlb2Ygb3B0aW9ucy5taW4gPT09ICdudW1iZXInKSB7XG4gICAgICAgIG1lZGlhUXVlcnlQYXJ0cy5wdXNoKGAobWluLXdpZHRoOiAke29wdGlvbnMubWlufXB4KWApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbWVkaWFRdWVyeVBhcnRzLnB1c2goYChtaW4td2lkdGg6ICR7dGhpcy5fZ2V0Vmlld3BvcnRTaXplKG9wdGlvbnMubWluLCAnbWluJyl9cHgpYCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKG9wdGlvbnMubWluICYmIG9wdGlvbnMubWF4KSB7XG4gICAgICBtZWRpYVF1ZXJ5UGFydHMucHVzaCgnYW5kJyk7XG4gICAgfVxuXG4gICAgaWYgKG9wdGlvbnMubWF4KSB7XG4gICAgICBpZiAodHlwZW9mIG9wdGlvbnMubWF4ID09PSAnbnVtYmVyJykge1xuICAgICAgICBtZWRpYVF1ZXJ5UGFydHMucHVzaChgKG1heC13aWR0aDogJHtvcHRpb25zLm1heH1weClgKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIG1lZGlhUXVlcnlQYXJ0cy5wdXNoKGAobWF4LXdpZHRoOiAke3RoaXMuX2dldFZpZXdwb3J0U2l6ZShvcHRpb25zLm1heCwgJ21heCcpfXB4KWApO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBtZWRpYVF1ZXJ5UGFydHMuam9pbignICcpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRDdXJyZW50Vmlld3BvcnQoW2lzWHMsIGlzU20sIGlzTWQsIGlzTGcsIGlzWGwsIGlzMlhsXTogW1xuICAgIGJvb2xlYW4sXG4gICAgYm9vbGVhbixcbiAgICBib29sZWFuLFxuICAgIGJvb2xlYW4sXG4gICAgYm9vbGVhbixcbiAgICBib29sZWFuLFxuICBdKTogQnJlYWtwb2ludCB7XG4gICAgaWYgKGlzWHMpIHtcbiAgICAgIHJldHVybiAneHMnO1xuICAgIH0gZWxzZSBpZiAoaXNTbSkge1xuICAgICAgcmV0dXJuICdzbSc7XG4gICAgfSBlbHNlIGlmIChpc01kKSB7XG4gICAgICByZXR1cm4gJ21kJztcbiAgICB9IGVsc2UgaWYgKGlzTGcpIHtcbiAgICAgIHJldHVybiAnbGcnO1xuICAgIH0gZWxzZSBpZiAoaXNYbCkge1xuICAgICAgcmV0dXJuICd4bCc7XG4gICAgfSBlbHNlIGlmIChpczJYbCkge1xuICAgICAgcmV0dXJuICcyeGwnO1xuICAgIH1cblxuICAgIHJldHVybiAneHMnO1xuICB9XG59XG4iXX0=
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
var _a;
|
|
2
|
-
import { QueryList } from '@angular/core';
|
|
3
|
-
export class TypedQueryList extends QueryList {
|
|
4
|
-
constructor() {
|
|
5
|
-
super(...arguments);
|
|
6
|
-
this[_a] = () => {
|
|
7
|
-
return super[Symbol.iterator]();
|
|
8
|
-
};
|
|
9
|
-
}
|
|
10
|
-
get changes() {
|
|
11
|
-
return super.changes;
|
|
12
|
-
}
|
|
13
|
-
toArray() {
|
|
14
|
-
return super.toArray();
|
|
15
|
-
}
|
|
16
|
-
forEach(fn) {
|
|
17
|
-
super.forEach(fn);
|
|
18
|
-
}
|
|
19
|
-
filter(fn) {
|
|
20
|
-
return super.filter(fn);
|
|
21
|
-
}
|
|
22
|
-
map(fn) {
|
|
23
|
-
return super.map(fn);
|
|
24
|
-
}
|
|
25
|
-
reduce(fn, initialValue) {
|
|
26
|
-
return super.reduce(fn, initialValue);
|
|
27
|
-
}
|
|
28
|
-
some(fn) {
|
|
29
|
-
return super.some(fn);
|
|
30
|
-
}
|
|
31
|
-
find(fn) {
|
|
32
|
-
return super.find(fn);
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
_a = Symbol.iterator;
|
|
36
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci50eXBlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL3R5cGVzL2FuZ3VsYXIudHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVEsTUFBTSxlQUFlLENBQUM7QUFzQmhELE1BQU0sT0FBTyxjQUFrQixTQUFRLFNBQXdCO0lBQS9EOztRQUNXLFFBQWlCLEdBQXNCLEdBQUcsRUFBRTtZQUNuRCxPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEVBQWlCLENBQUM7UUFDakQsQ0FBQyxDQUFDO0lBdUNKLENBQUM7SUFyQ0MsSUFBYSxPQUFPO1FBQ2xCLE9BQU8sS0FBSyxDQUFDLE9BQXdDLENBQUM7SUFDeEQsQ0FBQztJQUVRLE9BQU87UUFDZCxPQUFPLEtBQUssQ0FBQyxPQUFPLEVBQVMsQ0FBQztJQUNoQyxDQUFDO0lBRVEsT0FBTyxDQUFDLEVBQWdEO1FBQy9ELEtBQUssQ0FBQyxPQUFPLENBQUMsRUFBNEUsQ0FBQyxDQUFDO0lBQzlGLENBQUM7SUFFUSxNQUFNLENBQUMsRUFBbUQ7UUFDakUsT0FBTyxLQUFLLENBQUMsTUFBTSxDQUFDLEVBQStFLENBQVEsQ0FBQztJQUM5RyxDQUFDO0lBRVEsR0FBRyxDQUFJLEVBQTZDO1FBQzNELE9BQU8sS0FBSyxDQUFDLEdBQUcsQ0FBQyxFQUF5RSxDQUFDLENBQUM7SUFDOUYsQ0FBQztJQUVRLE1BQU0sQ0FDYixFQUE4RSxFQUM5RSxZQUFlO1FBRWYsT0FBTyxLQUFLLENBQUMsTUFBTSxDQUNqQixFQUEwRyxFQUMxRyxZQUFZLENBQ2IsQ0FBQztJQUNKLENBQUM7SUFFUSxJQUFJLENBQUMsRUFBb0Q7UUFDaEUsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQWdGLENBQUMsQ0FBQztJQUN0RyxDQUFDO0lBRVEsSUFBSSxDQUFDLEVBQW9EO1FBQ2hFLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFnRixDQUFDLENBQUM7SUFDdEcsQ0FBQztDQUNGO0tBekNXLE1BQU0sQ0FBQyxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUXVlcnlMaXN0LCBUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCB0eXBlIE5nQ2xhc3NUeXBlID1cbiAgfCBzdHJpbmdcbiAgfCBzdHJpbmdbXVxuICB8IFNldDxzdHJpbmc+XG4gIHwge1xuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICAgIFtrbGFzczogc3RyaW5nXTogYW55O1xuICAgIH1cbiAgfCBudWxsXG4gIHwgdW5kZWZpbmVkO1xuXG5leHBvcnQgdHlwZSBIb3N0RGlyZWN0aXZlID1cbiAgfCBUeXBlPHVua25vd24+XG4gIHwge1xuICAgICAgZGlyZWN0aXZlOiBUeXBlPHVua25vd24+O1xuICAgICAgaW5wdXRzPzogc3RyaW5nW107XG4gICAgICBvdXRwdXRzPzogc3RyaW5nW107XG4gICAgfTtcblxuZXhwb3J0IGNsYXNzIFR5cGVkUXVlcnlMaXN0PFQ+IGV4dGVuZHMgUXVlcnlMaXN0PFQgfCB1bmRlZmluZWQ+IHtcbiAgb3ZlcnJpZGUgW1N5bWJvbC5pdGVyYXRvcl06ICgpID0+IEl0ZXJhdG9yPFQ+ID0gKCkgPT4ge1xuICAgIHJldHVybiBzdXBlcltTeW1ib2wuaXRlcmF0b3JdKCkgYXMgSXRlcmF0b3I8VD47XG4gIH07XG5cbiAgb3ZlcnJpZGUgZ2V0IGNoYW5nZXMoKTogT2JzZXJ2YWJsZTxUeXBlZFF1ZXJ5TGlzdDxUPj4ge1xuICAgIHJldHVybiBzdXBlci5jaGFuZ2VzIGFzIE9ic2VydmFibGU8VHlwZWRRdWVyeUxpc3Q8VD4+O1xuICB9XG5cbiAgb3ZlcnJpZGUgdG9BcnJheSgpOiBUW10ge1xuICAgIHJldHVybiBzdXBlci50b0FycmF5KCkgYXMgVFtdO1xuICB9XG5cbiAgb3ZlcnJpZGUgZm9yRWFjaChmbjogKGl0ZW06IFQsIGluZGV4OiBudW1iZXIsIGFycmF5OiBUW10pID0+IHZvaWQpOiB2b2lkIHtcbiAgICBzdXBlci5mb3JFYWNoKGZuIGFzIChpdGVtOiBUIHwgdW5kZWZpbmVkLCBpbmRleDogbnVtYmVyLCBhcnJheTogKFQgfCB1bmRlZmluZWQpW10pID0+IHZvaWQpO1xuICB9XG5cbiAgb3ZlcnJpZGUgZmlsdGVyKGZuOiAoaXRlbTogVCwgaW5kZXg6IG51bWJlciwgYXJyYXk6IFRbXSkgPT4gYm9vbGVhbik6IFRbXSB7XG4gICAgcmV0dXJuIHN1cGVyLmZpbHRlcihmbiBhcyAoaXRlbTogVCB8IHVuZGVmaW5lZCwgaW5kZXg6IG51bWJlciwgYXJyYXk6IChUIHwgdW5kZWZpbmVkKVtdKSA9PiBib29sZWFuKSBhcyBUW107XG4gIH1cblxuICBvdmVycmlkZSBtYXA8VT4oZm46IChpdGVtOiBULCBpbmRleDogbnVtYmVyLCBhcnJheTogVFtdKSA9PiBVKTogVVtdIHtcbiAgICByZXR1cm4gc3VwZXIubWFwKGZuIGFzIChpdGVtOiBUIHwgdW5kZWZpbmVkLCBpbmRleDogbnVtYmVyLCBhcnJheTogKFQgfCB1bmRlZmluZWQpW10pID0+IFUpO1xuICB9XG5cbiAgb3ZlcnJpZGUgcmVkdWNlPFU+KFxuICAgIGZuOiAocHJldmlvdXNWYWx1ZTogVSwgY3VycmVudFZhbHVlOiBULCBjdXJyZW50SW5kZXg6IG51bWJlciwgYXJyYXk6IFRbXSkgPT4gVSxcbiAgICBpbml0aWFsVmFsdWU6IFUsXG4gICk6IFUge1xuICAgIHJldHVybiBzdXBlci5yZWR1Y2UoXG4gICAgICBmbiBhcyAocHJldmlvdXNWYWx1ZTogVSwgY3VycmVudFZhbHVlOiBUIHwgdW5kZWZpbmVkLCBjdXJyZW50SW5kZXg6IG51bWJlciwgYXJyYXk6IChUIHwgdW5kZWZpbmVkKVtdKSA9PiBVLFxuICAgICAgaW5pdGlhbFZhbHVlLFxuICAgICk7XG4gIH1cblxuICBvdmVycmlkZSBzb21lKGZuOiAodmFsdWU6IFQsIGluZGV4OiBudW1iZXIsIGFycmF5OiBUW10pID0+IGJvb2xlYW4pOiBib29sZWFuIHtcbiAgICByZXR1cm4gc3VwZXIuc29tZShmbiBhcyAodmFsdWU6IFQgfCB1bmRlZmluZWQsIGluZGV4OiBudW1iZXIsIGFycmF5OiAoVCB8IHVuZGVmaW5lZClbXSkgPT4gYm9vbGVhbik7XG4gIH1cblxuICBvdmVycmlkZSBmaW5kKGZuOiAodmFsdWU6IFQsIGluZGV4OiBudW1iZXIsIGFycmF5OiBUW10pID0+IGJvb2xlYW4pOiBUIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gc3VwZXIuZmluZChmbiBhcyAodmFsdWU6IFQgfCB1bmRlZmluZWQsIGluZGV4OiBudW1iZXIsIGFycmF5OiAoVCB8IHVuZGVmaW5lZClbXSkgPT4gYm9vbGVhbik7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,85 +0,0 @@
|
|
|
1
|
-
export const elementCanScroll = (element) => {
|
|
2
|
-
const { scrollHeight, clientHeight, scrollWidth, clientWidth } = element;
|
|
3
|
-
return scrollHeight > clientHeight || scrollWidth > clientWidth;
|
|
4
|
-
};
|
|
5
|
-
export const isElementVisible = (options) => {
|
|
6
|
-
let { container } = options;
|
|
7
|
-
const { element } = options;
|
|
8
|
-
if (!element || container === null) {
|
|
9
|
-
return null;
|
|
10
|
-
}
|
|
11
|
-
container || (container = document.documentElement);
|
|
12
|
-
const canScroll = elementCanScroll(container);
|
|
13
|
-
if (!canScroll) {
|
|
14
|
-
return { inline: true, block: true };
|
|
15
|
-
}
|
|
16
|
-
const elementRect = element.getBoundingClientRect();
|
|
17
|
-
const containerRect = container.getBoundingClientRect();
|
|
18
|
-
const elementInlineStart = elementRect.left;
|
|
19
|
-
const elementBlockStart = elementRect.top;
|
|
20
|
-
const containerInlineStart = containerRect.left;
|
|
21
|
-
const containerBlockStart = containerRect.top;
|
|
22
|
-
const elementInlineEnd = elementInlineStart + elementRect.width;
|
|
23
|
-
const elementBlockEnd = elementBlockStart + elementRect.height;
|
|
24
|
-
const containerInlineEnd = containerInlineStart + containerRect.width;
|
|
25
|
-
const containerBlockEnd = containerBlockStart + containerRect.height;
|
|
26
|
-
const isElementInlineVisible = elementInlineStart >= containerInlineStart && elementInlineEnd <= containerInlineEnd;
|
|
27
|
-
const isElementBlockVisible = elementBlockStart >= containerBlockStart && elementBlockEnd <= containerBlockEnd;
|
|
28
|
-
return { inline: isElementInlineVisible, block: isElementBlockVisible };
|
|
29
|
-
};
|
|
30
|
-
export const scrollToElement = (options) => {
|
|
31
|
-
let { container } = options;
|
|
32
|
-
const { element, direction, behavior = 'smooth', origin = 'nearest', scrollBlockMargin = 0, scrollInlineMargin = 0, } = options;
|
|
33
|
-
if (!element || container === null) {
|
|
34
|
-
return;
|
|
35
|
-
}
|
|
36
|
-
container || (container = document.documentElement);
|
|
37
|
-
const canScroll = elementCanScroll(container);
|
|
38
|
-
if (!canScroll) {
|
|
39
|
-
return;
|
|
40
|
-
}
|
|
41
|
-
const elementRect = element.getBoundingClientRect();
|
|
42
|
-
const containerRect = container.getBoundingClientRect();
|
|
43
|
-
const elementInlineSize = elementRect.width;
|
|
44
|
-
const elementBlockSize = elementRect.height;
|
|
45
|
-
const containerInlineSize = containerRect.width;
|
|
46
|
-
const containerBlockSize = containerRect.height;
|
|
47
|
-
const elementInlineStart = elementRect.left;
|
|
48
|
-
const elementBlockStart = elementRect.top;
|
|
49
|
-
const containerInlineStart = containerRect.left;
|
|
50
|
-
const containerBlockStart = containerRect.top;
|
|
51
|
-
const elementInlineEnd = elementInlineStart + elementInlineSize;
|
|
52
|
-
const elementBlockEnd = elementBlockStart + elementBlockSize;
|
|
53
|
-
const containerInlineEnd = containerInlineStart + containerInlineSize;
|
|
54
|
-
const containerBlockEnd = containerBlockStart + containerBlockSize;
|
|
55
|
-
const elementInlineCenter = elementInlineStart + elementInlineSize / 2;
|
|
56
|
-
const elementBlockCenter = elementBlockStart + elementBlockSize / 2;
|
|
57
|
-
const containerInlineCenter = containerInlineStart + containerInlineSize / 2;
|
|
58
|
-
const containerBlockCenter = containerBlockStart + containerBlockSize / 2;
|
|
59
|
-
const elementInlineOrigin = origin === 'center' ? elementInlineCenter : origin === 'end' ? elementInlineEnd : elementInlineStart;
|
|
60
|
-
const elementBlockOrigin = origin === 'center' ? elementBlockCenter : origin === 'end' ? elementBlockEnd : elementBlockStart;
|
|
61
|
-
const containerInlineOrigin = origin === 'center' ? containerInlineCenter : origin === 'end' ? containerInlineEnd : containerInlineStart;
|
|
62
|
-
const containerBlockOrigin = origin === 'center' ? containerBlockCenter : origin === 'end' ? containerBlockEnd : containerBlockStart;
|
|
63
|
-
const inlineOffset = elementInlineOrigin - containerInlineOrigin - scrollInlineMargin;
|
|
64
|
-
const blockOffset = elementBlockOrigin - containerBlockOrigin - scrollBlockMargin;
|
|
65
|
-
let inlineScroll = direction === 'block' ? undefined : inlineOffset;
|
|
66
|
-
let blockScroll = direction === 'inline' ? undefined : blockOffset;
|
|
67
|
-
if (origin === 'nearest') {
|
|
68
|
-
const elVisible = isElementVisible({ element, container });
|
|
69
|
-
if (elVisible?.inline && elVisible?.block) {
|
|
70
|
-
return;
|
|
71
|
-
}
|
|
72
|
-
if (elVisible?.inline) {
|
|
73
|
-
inlineScroll = undefined;
|
|
74
|
-
}
|
|
75
|
-
if (elVisible?.block) {
|
|
76
|
-
blockScroll = undefined;
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
container.scrollTo({
|
|
80
|
-
left: inlineScroll,
|
|
81
|
-
top: blockScroll,
|
|
82
|
-
behavior,
|
|
83
|
-
});
|
|
84
|
-
};
|
|
85
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nyb2xsYWJsZS51dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL3V0aWxzL3Njcm9sbGFibGUudXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxPQUFvQixFQUFFLEVBQUU7SUFDdkQsTUFBTSxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxHQUFHLE9BQU8sQ0FBQztJQUV6RSxPQUFPLFlBQVksR0FBRyxZQUFZLElBQUksV0FBVyxHQUFHLFdBQVcsQ0FBQztBQUNsRSxDQUFDLENBQUM7QUEyQkYsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxPQUFnQyxFQUFtQyxFQUFFO0lBQ3BHLElBQUksRUFBRSxTQUFTLEVBQUUsR0FBRyxPQUFPLENBQUM7SUFDNUIsTUFBTSxFQUFFLE9BQU8sRUFBRSxHQUFHLE9BQU8sQ0FBQztJQUU1QixJQUFJLENBQUMsT0FBTyxJQUFJLFNBQVMsS0FBSyxJQUFJLEVBQUU7UUFDbEMsT0FBTyxJQUFJLENBQUM7S0FDYjtJQUVELFNBQVMsS0FBVCxTQUFTLEdBQUssUUFBUSxDQUFDLGVBQWUsRUFBQztJQUV2QyxNQUFNLFNBQVMsR0FBRyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUU5QyxJQUFJLENBQUMsU0FBUyxFQUFFO1FBQ2QsT0FBTyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDO0tBQ3RDO0lBRUQsTUFBTSxXQUFXLEdBQUcsT0FBTyxDQUFDLHFCQUFxQixFQUFFLENBQUM7SUFDcEQsTUFBTSxhQUFhLEdBQUcsU0FBUyxDQUFDLHFCQUFxQixFQUFFLENBQUM7SUFFeEQsTUFBTSxrQkFBa0IsR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDO0lBQzVDLE1BQU0saUJBQWlCLEdB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LE1BQU0sU0FBUyxHQUFHLGdCQUFnQixDQUFDLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUM7UUFFM0QsSUFBSSxTQUFTLEVBQUUsTUFBTSxJQUFJLFNBQVMsRUFBRSxLQUFLLEVBQUU7WUFDekMsT0FBTztTQUNSO1FBRUQsSUFBSSxTQUFTLEVBQUUsTUFBTSxFQUFFO1lBQ3JCLFlBQVksR0FBRyxTQUFTLENBQUM7U0FDMUI7UUFFRCxJQUFJLFNBQVMsRUFBRSxLQUFLLEVBQUU7WUFDcEIsV0FBVyxHQUFHLFNBQVMsQ0FBQztTQUN6QjtLQUNGO0lBRUQsU0FBUyxDQUFDLFFBQVEsQ0FBQztRQUNqQixJQUFJLEVBQUUsWUFBWTtRQUNsQixHQUFHLEVBQUUsV0FBVztRQUNoQixRQUFRO0tBQ1QsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IGVsZW1lbnRDYW5TY3JvbGwgPSAoZWxlbWVudDogSFRNTEVsZW1lbnQpID0+IHtcbiAgY29uc3QgeyBzY3JvbGxIZWlnaHQsIGNsaWVudEhlaWdodCwgc2Nyb2xsV2lkdGgsIGNsaWVudFdpZHRoIH0gPSBlbGVtZW50O1xuXG4gIHJldHVybiBzY3JvbGxIZWlnaHQgPiBjbGllbnRIZWlnaHQgfHwgc2Nyb2xsV2lkdGggPiBjbGllbnRXaWR0aDtcbn07XG5cbmV4cG9ydCBpbnRlcmZhY2UgSXNFbGVtZW50VmlzaWJsZU9wdGlvbnMge1xuICAvKipcbiAgICogVGhlIGVsZW1lbnQgdG8gY2hlY2sgaWYgaXQgaXMgdmlzaWJsZSBpbnNpZGUgYSBjb250YWluZXIuXG4gICAqL1xuICBlbGVtZW50PzogSFRNTEVsZW1lbnQgfCBudWxsO1xuXG4gIC8qKlxuICAgKiBUaGUgY29udGFpbmVyIHRvIGNoZWNrIGlmIHRoZSBlbGVtZW50IGlzIHZpc2libGUgaW5zaWRlLlxuICAgKiBAZGVmYXVsdCBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnRcbiAgICovXG4gIGNvbnRhaW5lcj86IEhUTUxFbGVtZW50IHwgbnVsbDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDdXJyZW50RWxlbWVudFZpc2liaWxpdHkge1xuICAvKipcbiAgICogV2hldGhlciB0aGUgZWxlbWVudCBpcyB2aXNpYmxlIGluIHRoZSBpbmxpbmUgZGlyZWN0aW9uLlxuICAgKi9cbiAgaW5saW5lOiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBlbGVtZW50IGlzIHZpc2libGUgaW4gdGhlIGJsb2NrIGRpcmVjdGlvbi5cbiAgICovXG4gIGJsb2NrOiBib29sZWFuO1xufVxuXG5leHBvcnQgY29uc3QgaXNFbGVtZW50VmlzaWJsZSA9IChvcHRpb25zOiBJc0VsZW1lbnRWaXNpYmxlT3B0aW9ucyk6IEN1cnJlbnRFbGVtZW50VmlzaWJpbGl0eSB8IG51bGwgPT4ge1xuICBsZXQgeyBjb250YWluZXIgfSA9IG9wdGlvbnM7XG4gIGNvbnN0IHsgZWxlbWVudCB9ID0gb3B0aW9ucztcblxuICBpZiAoIWVsZW1lbnQgfHwgY29udGFpbmVyID09PSBudWxsKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBjb250YWluZXIgfHw9IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudDtcblxuICBjb25zdCBjYW5TY3JvbGwgPSBlbGVtZW50Q2FuU2Nyb2xsKGNvbnRhaW5lcik7XG5cbiAgaWYgKCFjYW5TY3JvbGwpIHtcbiAgICByZXR1cm4geyBpbmxpbmU6IHRydWUsIGJsb2NrOiB0cnVlIH07XG4gIH1cblxuICBjb25zdCBlbGVtZW50UmVjdCA9IGVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gIGNvbnN0IGNvbnRhaW5lclJlY3QgPSBjb250YWluZXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG5cbiAgY29uc3QgZWxlbWVudElubGluZVN0YXJ0ID0gZWxlbWVudFJlY3QubGVmdDtcbiAgY29uc3QgZWxlbWVudEJsb2NrU3RhcnQgPSBlbGVtZW50UmVjdC50b3A7XG5cbiAgY29uc3QgY29udGFpbmVySW5saW5lU3RhcnQgPSBjb250YWluZXJSZWN0LmxlZnQ7XG4gIGNvbnN0IGNvbnRhaW5lckJsb2NrU3RhcnQgPSBjb250YWluZXJSZWN0LnRvcDtcblxuICBjb25zdCBlbGVtZW50SW5saW5lRW5kID0gZWxlbWVudElubGluZVN0YXJ0ICsgZWxlbWVudFJlY3Qud2lkdGg7XG4gIGNvbnN0IGVsZW1lbnRCbG9ja0VuZCA9IGVsZW1lbnRCbG9ja1N0YXJ0ICsgZWxlbWVudFJlY3QuaGVpZ2h0O1xuXG4gIGNvbnN0IGNvbnRhaW5lcklubGluZUVuZCA9IGNvbnRhaW5lcklubGluZVN0YXJ0ICsgY29udGFpbmVyUmVjdC53aWR0aDtcbiAgY29uc3QgY29udGFpbmVyQmxvY2tFbmQgPSBjb250YWluZXJCbG9ja1N0YXJ0ICsgY29udGFpbmVyUmVjdC5oZWlnaHQ7XG5cbiAgY29uc3QgaXNFbGVtZW50SW5saW5lVmlzaWJsZSA9IGVsZW1lbnRJbmxpbmVTdGFydCA+PSBjb250YWluZXJJbmxpbmVTdGFydCAmJiBlbGVtZW50SW5saW5lRW5kIDw9IGNvbnRhaW5lcklubGluZUVuZDtcbiAgY29uc3QgaXNFbGVtZW50QmxvY2tWaXNpYmxlID0gZWxlbWVudEJsb2NrU3RhcnQgPj0gY29udGFpbmVyQmxvY2tTdGFydCAmJiBlbGVtZW50QmxvY2tFbmQgPD0gY29udGFpbmVyQmxvY2tFbmQ7XG5cbiAgcmV0dXJuIHsgaW5saW5lOiBpc0VsZW1lbnRJbmxpbmVWaXNpYmxlLCBibG9jazogaXNFbGVtZW50QmxvY2tWaXNpYmxlIH07XG59O1xuXG5leHBvcnQgaW50ZXJmYWNlIFNjcm9sbFRvRWxlbWVudE9wdGlvbnMge1xuICAvKipcbiAgICogVGhlIGVsZW1lbnQgdG8gc2Nyb2xsIHRvLlxuICAgKi9cbiAgZWxlbWVudD86IEhUTUxFbGVtZW50IHwgbnVsbDtcblxuICAvKipcbiAgICogVGhlIHNjcm9sbCBjb250YWluZXIgdG8gc2Nyb2xsIHRvIHRoZSBlbGVtZW50IGluLlxuICAgKiBAZGVmYXVsdCBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnRcbiAgICovXG4gIGNvbnRhaW5lcj86IEhUTUxFbGVtZW50IHwgbnVsbDtcblxuICAvKipcbiAgICogVGhlIGRpcmVjdGlvbiB0byBzY3JvbGwgaW4uXG4gICAqIEBkZWZhdWx0ICdib3RoJ1xuICAgKi9cbiAgZGlyZWN0aW9uPzogJ2lubGluZScgfCAnYmxvY2snIHwgJ2JvdGgnO1xuXG4gIC8qKlxuICAgKiBUaGUgb3JpZ2luIG9mIHRoZSBlbGVtZW50IHRvIHNjcm9sbCB0by5cbiAgICogQGRlZmF1bHQgJ25lYXJlc3QnXG4gICAqL1xuICBvcmlnaW4/OiAnc3RhcnQnIHwgJ2VuZCcgfCAnY2VudGVyJyB8ICduZWFyZXN0JztcblxuICAvKipcbiAgICogVGhlIHNjcm9sbCBiZWhhdmlvci5cbiAgICogQGRlZmF1bHQgJ3Ntb290aCdcbiAgICovXG4gIGJlaGF2aW9yPzogU2Nyb2xsQmVoYXZpb3I7XG5cbiAgLyoqXG4gICAqIFRoZSBzY3JvbGwgaW5saW5lLW1hcmdpblxuICAgKiBAZGVmYXVsdCAwXG4gICAqL1xuICBzY3JvbGxJbmxpbmVNYXJnaW4/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRoZSBzY3JvbGwgYmxvY2stbWFyZ2luXG4gICAqIEBkZWZhdWx0IDBcbiAgICovXG4gIHNjcm9sbEJsb2NrTWFyZ2luPzogbnVtYmVyO1xufVxuXG5leHBvcnQgY29uc3Qgc2Nyb2xsVG9FbGVtZW50ID0gKG9wdGlvbnM6IFNjcm9sbFRvRWxlbWVudE9wdGlvbnMpID0+IHtcbiAgbGV0IHsgY29udGFpbmVyIH0gPSBvcHRpb25zO1xuICBjb25zdCB7XG4gICAgZWxlbWVudCxcbiAgICBkaXJlY3Rpb24sXG4gICAgYmVoYXZpb3IgPSAnc21vb3RoJyxcbiAgICBvcmlnaW4gPSAnbmVhcmVzdCcsXG4gICAgc2Nyb2xsQmxvY2tNYXJnaW4gPSAwLFxuICAgIHNjcm9sbElubGluZU1hcmdpbiA9IDAsXG4gIH0gPSBvcHRpb25zO1xuXG4gIGlmICghZWxlbWVudCB8fCBjb250YWluZXIgPT09IG51bGwpIHtcbiAgICByZXR1cm47XG4gIH1cblxuICBjb250YWluZXIgfHw9IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudDtcblxuICBjb25zdCBjYW5TY3JvbGwgPSBlbGVtZW50Q2FuU2Nyb2xsKGNvbnRhaW5lcik7XG5cbiAgaWYgKCFjYW5TY3JvbGwpIHtcbiAgICByZXR1cm47XG4gIH1cblxuICBjb25zdCBlbGVtZW50UmVjdCA9IGVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gIGNvbnN0IGNvbnRhaW5lclJlY3QgPSBjb250YWluZXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG5cbiAgY29uc3QgZWxlbWVudElubGluZVNpemUgPSBlbGVtZW50UmVjdC53aWR0aDtcbiAgY29uc3QgZWxlbWVudEJsb2NrU2l6ZSA9IGVsZW1lbnRSZWN0LmhlaWdodDtcblxuICBjb25zdCBjb250YWluZXJJbmxpbmVTaXplID0gY29udGFpbmVyUmVjdC53aWR0aDtcbiAgY29uc3QgY29udGFpbmVyQmxvY2tTaXplID0gY29udGFpbmVyUmVjdC5oZWlnaHQ7XG5cbiAgY29uc3QgZWxlbWVudElubGluZVN0YXJ0ID0gZWxlbWVudFJlY3QubGVmdDtcbiAgY29uc3QgZWxlbWVudEJsb2NrU3RhcnQgPSBlbGVtZW50UmVjdC50b3A7XG5cbiAgY29uc3QgY29udGFpbmVySW5saW5lU3RhcnQgPSBjb250YWluZXJSZWN0LmxlZnQ7XG4gIGNvbnN0IGNvbnRhaW5lckJsb2NrU3RhcnQgPSBjb250YWluZXJSZWN0LnRvcDtcblxuICBjb25zdCBlbGVtZW50SW5saW5lRW5kID0gZWxlbWVudElubGluZVN0YXJ0ICsgZWxlbWVudElubGluZVNpemU7XG4gIGNvbnN0IGVsZW1lbnRCbG9ja0VuZCA9IGVsZW1lbnRCbG9ja1N0YXJ0ICsgZWxlbWVudEJsb2NrU2l6ZTtcblxuICBjb25zdCBjb250YWluZXJJbmxpbmVFbmQgPSBjb250YWluZXJJbmxpbmVTdGFydCArIGNvbnRhaW5lcklubGluZVNpemU7XG4gIGNvbnN0IGNvbnRhaW5lckJsb2NrRW5kID0gY29udGFpbmVyQmxvY2tTdGFydCArIGNvbnRhaW5lckJsb2NrU2l6ZTtcblxuICBjb25zdCBlbGVtZW50SW5saW5lQ2VudGVyID0gZWxlbWVudElubGluZVN0YXJ0ICsgZWxlbWVudElubGluZVNpemUgLyAyO1xuICBjb25zdCBlbGVtZW50QmxvY2tDZW50ZXIgPSBlbGVtZW50QmxvY2tTdGFydCArIGVsZW1lbnRCbG9ja1NpemUgLyAyO1xuXG4gIGNvbnN0IGNvbnRhaW5lcklubGluZUNlbnRlciA9IGNvbnRhaW5lcklubGluZVN0YXJ0ICsgY29udGFpbmVySW5saW5lU2l6ZSAvIDI7XG4gIGNvbnN0IGNvbnRhaW5lckJsb2NrQ2VudGVyID0gY29udGFpbmVyQmxvY2tTdGFydCArIGNvbnRhaW5lckJsb2NrU2l6ZSAvIDI7XG5cbiAgY29uc3QgZWxlbWVudElubGluZU9yaWdpbiA9XG4gICAgb3JpZ2luID09PSAnY2VudGVyJyA/IGVsZW1lbnRJbmxpbmVDZW50ZXIgOiBvcmlnaW4gPT09ICdlbmQnID8gZWxlbWVudElubGluZUVuZCA6IGVsZW1lbnRJbmxpbmVTdGFydDtcbiAgY29uc3QgZWxlbWVudEJsb2NrT3JpZ2luID1cbiAgICBvcmlnaW4gPT09ICdjZW50ZXInID8gZWxlbWVudEJsb2NrQ2VudGVyIDogb3JpZ2luID09PSAnZW5kJyA/IGVsZW1lbnRCbG9ja0VuZCA6IGVsZW1lbnRCbG9ja1N0YXJ0O1xuXG4gIGNvbnN0IGNvbnRhaW5lcklubGluZU9yaWdpbiA9XG4gICAgb3JpZ2luID09PSAnY2VudGVyJyA/IGNvbnRhaW5lcklubGluZUNlbnRlciA6IG9yaWdpbiA9PT0gJ2VuZCcgPyBjb250YWluZXJJbmxpbmVFbmQgOiBjb250YWluZXJJbmxpbmVTdGFydDtcbiAgY29uc3QgY29udGFpbmVyQmxvY2tPcmlnaW4gPVxuICAgIG9yaWdpbiA9PT0gJ2NlbnRlcicgPyBjb250YWluZXJCbG9ja0NlbnRlciA6IG9yaWdpbiA9PT0gJ2VuZCcgPyBjb250YWluZXJCbG9ja0VuZCA6IGNvbnRhaW5lckJsb2NrU3RhcnQ7XG5cbiAgY29uc3QgaW5saW5lT2Zmc2V0ID0gZWxlbWVudElubGluZU9yaWdpbiAtIGNvbnRhaW5lcklubGluZU9yaWdpbiAtIHNjcm9sbElubGluZU1hcmdpbjtcbiAgY29uc3QgYmxvY2tPZmZzZXQgPSBlbGVtZW50QmxvY2tPcmlnaW4gLSBjb250YWluZXJCbG9ja09yaWdpbiAtIHNjcm9sbEJsb2NrTWFyZ2luO1xuXG4gIGxldCBpbmxpbmVTY3JvbGw6IG51bWJlciB8IHVuZGVmaW5lZCA9IGRpcmVjdGlvbiA9PT0gJ2Jsb2NrJyA/IHVuZGVmaW5lZCA6IGlubGluZU9mZnNldDtcbiAgbGV0IGJsb2NrU2Nyb2xsOiBudW1iZXIgfCB1bmRlZmluZWQgPSBkaXJlY3Rpb24gPT09ICdpbmxpbmUnID8gdW5kZWZpbmVkIDogYmxvY2tPZmZzZXQ7XG5cbiAgaWYgKG9yaWdpbiA9PT0gJ25lYXJlc3QnKSB7XG4gICAgY29uc3QgZWxWaXNpYmxlID0gaXNFbGVtZW50VmlzaWJsZSh7IGVsZW1lbnQsIGNvbnRhaW5lciB9KTtcblxuICAgIGlmIChlbFZpc2libGU/LmlubGluZSAmJiBlbFZpc2libGU/LmJsb2NrKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKGVsVmlzaWJsZT8uaW5saW5lKSB7XG4gICAgICBpbmxpbmVTY3JvbGwgPSB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgaWYgKGVsVmlzaWJsZT8uYmxvY2spIHtcbiAgICAgIGJsb2NrU2Nyb2xsID0gdW5kZWZpbmVkO1xuICAgIH1cbiAgfVxuXG4gIGNvbnRhaW5lci5zY3JvbGxUbyh7XG4gICAgbGVmdDogaW5saW5lU2Nyb2xsLFxuICAgIHRvcDogYmxvY2tTY3JvbGwsXG4gICAgYmVoYXZpb3IsXG4gIH0pO1xufTtcbiJdfQ==
|