ca-components 1.0.74 → 1.0.75
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/ca-comment/ca-comment.component.mjs +16 -5
- package/esm2022/lib/components/ca-custom-scrollbar/ca-custom-scrollbar.component.mjs +123 -120
- package/esm2022/lib/components/ca-custom-scrollbar/enums/event-type.enum.mjs +8 -0
- package/esm2022/lib/components/ca-custom-scrollbar/enums/index.mjs +3 -0
- package/esm2022/lib/components/ca-custom-scrollbar/enums/scroll-event-action.enum.mjs +6 -0
- package/esm2022/lib/components/ca-custom-scrollbar/models/index.mjs +3 -0
- package/esm2022/lib/components/ca-custom-scrollbar/models/scroll-bar-options.model.mjs +2 -0
- package/esm2022/lib/components/ca-custom-scrollbar/models/scroll-event.model.mjs +2 -0
- package/esm2022/lib/components/ca-filters/components/ca-dispatcher-filter/ca-dispatcher-filter.component.mjs +2 -6
- package/esm2022/lib/components/ca-filters/components/ca-location-filter/ca-location-filter.component.mjs +2 -6
- package/esm2022/lib/components/ca-filters/components/ca-user-filter/ca-user-filter.component.mjs +7 -9
- package/esm2022/lib/components/ca-filters/components/ca-violation-filter/ca-violation-filter.component.mjs +5 -5
- package/esm2022/lib/components/ca-input/ca-input.component.mjs +3 -4
- package/esm2022/lib/components/ca-input/pipes/input-class.pipe.mjs +2 -2
- package/esm2022/lib/components/ca-input/pipes/label-class.pipe.mjs +2 -1
- package/esm2022/lib/components/ca-input/pipes/show-placeholder-text.pipe.mjs +3 -3
- package/esm2022/lib/components/ca-input/pipes/show-valid-check.pipe.mjs +2 -2
- package/esm2022/lib/components/ca-input-address-dropdown/ca-input-address-dropdown.component.mjs +91 -82
- package/esm2022/lib/components/ca-input-address-dropdown/enums/input-address-type-string.enum.mjs +2 -1
- package/esm2022/lib/components/ca-input-dropdown/ca-input-dropdown.component.mjs +6 -21
- package/esm2022/lib/components/ca-input-dropdown/components/ca-input-dropdown-dispatch/ca-input-dropdown-dispatch.component.mjs +2 -6
- package/esm2022/lib/components/ca-input-dropdown/components/ca-input-dropdown-labels/ca-input-dropdown-labels.component.mjs +2 -6
- package/esm2022/lib/components/ca-input-dropdown/components/ca-input-dropdown-text-counter/ca-input-dropdown-text-counter.component.mjs +2 -6
- package/esm2022/lib/components/ca-logo-change/ca-logo-change.component.mjs +2 -5
- package/esm2022/lib/components/ca-main-table/ca-main-table.component.mjs +4 -5
- package/esm2022/lib/components/ca-map-dropdown/ca-map-dropdown.component.mjs +6 -6
- package/esm2022/lib/components/ca-modal-button/ca-modal-button.component.mjs +2 -4
- package/esm2022/lib/components/ca-modal-button/enums/index.mjs +2 -2
- package/esm2022/lib/components/ca-modal-button/enums/modal-button-class-type.enum.mjs +10 -0
- package/esm2022/lib/components/ca-modal-button/enums/modal-button-size.enum.mjs +3 -3
- package/esm2022/lib/components/ca-modal-button/pipes/modal-button-class.pipe.mjs +4 -12
- package/esm2022/lib/components/ca-progress-expiration/ca-progress-expiration.component.mjs +9 -6
- package/esm2022/lib/components/ca-rating-review/components/ca-ratings-reviews-popup/ca-ratings-reviews-popup.component.mjs +8 -10
- package/esm2022/lib/components/ca-right-side-panel/components/ca-right-side-panel-menu/ca-right-side-panel-menu.component.mjs +3 -3
- package/esm2022/lib/components/ca-upload-files/ca-upload-files.component.mjs +9 -15
- package/esm2022/lib/components/ca-upload-files/components/ca-upload-file/ca-upload-file.component.mjs +7 -11
- package/fesm2022/ca-components.mjs +470 -477
- package/fesm2022/ca-components.mjs.map +1 -1
- package/lib/components/ca-custom-scrollbar/ca-custom-scrollbar.component.d.ts +38 -29
- package/lib/components/ca-custom-scrollbar/enums/event-type.enum.d.ts +6 -0
- package/lib/components/ca-custom-scrollbar/enums/index.d.ts +2 -0
- package/lib/components/ca-custom-scrollbar/enums/scroll-event-action.enum.d.ts +4 -0
- package/lib/components/ca-custom-scrollbar/models/index.d.ts +2 -0
- package/lib/components/ca-custom-scrollbar/models/scroll-bar-options.model.d.ts +6 -0
- package/lib/components/ca-custom-scrollbar/models/scroll-event.model.d.ts +6 -0
- package/lib/components/ca-input/pipes/input-class.pipe.d.ts +1 -1
- package/lib/components/ca-input/pipes/label-class.pipe.d.ts +1 -1
- package/lib/components/ca-input-address-dropdown/ca-input-address-dropdown.component.d.ts +9 -7
- package/lib/components/ca-input-address-dropdown/enums/input-address-type-string.enum.d.ts +2 -1
- package/lib/components/ca-modal-button/ca-modal-button.component.d.ts +2 -4
- package/lib/components/ca-modal-button/enums/index.d.ts +1 -1
- package/lib/components/ca-modal-button/enums/modal-button-class-type.enum.d.ts +8 -0
- package/lib/components/ca-modal-button/enums/modal-button-size.enum.d.ts +2 -2
- package/lib/components/ca-modal-button/pipes/modal-button-class.pipe.d.ts +2 -2
- package/package.json +1 -1
- package/esm2022/lib/components/ca-logo-change/pipes/logo-slider.pipe.mjs +0 -17
- package/esm2022/lib/components/ca-modal-button/enums/modal-button-type.enum.mjs +0 -10
- package/lib/components/ca-logo-change/pipes/logo-slider.pipe.d.ts +0 -7
- package/lib/components/ca-modal-button/enums/modal-button-type.enum.d.ts +0 -8
|
@@ -1,16 +1,25 @@
|
|
|
1
1
|
import { Component, EventEmitter, Input, Output, ViewChild, } from '@angular/core';
|
|
2
|
+
import { Subject } from 'rxjs';
|
|
3
|
+
// modules
|
|
2
4
|
import { FormsModule } from '@angular/forms';
|
|
3
5
|
import { CommonModule } from '@angular/common';
|
|
4
6
|
import { ObserversModule } from '@angular/cdk/observers';
|
|
5
|
-
|
|
7
|
+
// enums
|
|
8
|
+
import { EventType, ScrollEventAction } from './enums';
|
|
6
9
|
import * as i0 from "@angular/core";
|
|
7
10
|
import * as i1 from "@angular/common";
|
|
8
11
|
import * as i2 from "@angular/cdk/observers";
|
|
9
12
|
export class CaCustomScrollbarComponent {
|
|
10
|
-
|
|
13
|
+
set scrollBarOptions(value) {
|
|
14
|
+
this._scrollBarOptions = value;
|
|
15
|
+
}
|
|
16
|
+
set horizontalScrollHeight(value) {
|
|
17
|
+
this._horizontalScrollHeight = value;
|
|
18
|
+
}
|
|
19
|
+
constructor(ngZone, elRef, cdr) {
|
|
11
20
|
this.ngZone = ngZone;
|
|
12
21
|
this.elRef = elRef;
|
|
13
|
-
this.
|
|
22
|
+
this.cdr = cdr;
|
|
14
23
|
this.scrollEvent = new EventEmitter();
|
|
15
24
|
this.scrollTop = 5;
|
|
16
25
|
this.showScrollbar = false;
|
|
@@ -21,177 +30,171 @@ export class CaCustomScrollbarComponent {
|
|
|
21
30
|
this.barClickPosition = 0;
|
|
22
31
|
this.barClickRestHeight = 0;
|
|
23
32
|
this.destroy$ = new Subject();
|
|
33
|
+
// Table Horizontal Scroll
|
|
34
|
+
this.tableNotPinedContainer = null;
|
|
35
|
+
this.tableNotPinedBoundingRect = null;
|
|
24
36
|
this.tableBarClickPosition = 0;
|
|
25
37
|
this.tableBarClickRestWidth = 0;
|
|
26
38
|
this.tableScrollRatio = 0;
|
|
27
39
|
this.tableScrollRatioFull = 0;
|
|
28
40
|
this.tableScrollWidth = 0;
|
|
29
|
-
this.
|
|
41
|
+
this.resizeHandlerCount = null;
|
|
42
|
+
this.setScrollEvent = () => {
|
|
30
43
|
if (!this.isMouseDown) {
|
|
31
44
|
this.calculateBarSizeAndPosition(this.elRef.nativeElement.children[0]);
|
|
32
45
|
}
|
|
33
46
|
};
|
|
34
|
-
this.onMouseUpHandler = () =>
|
|
35
|
-
this.isMouseDown = false;
|
|
36
|
-
};
|
|
47
|
+
this.onMouseUpHandler = () => (this.isMouseDown = false);
|
|
37
48
|
this.onResizeHandler = () => {
|
|
38
49
|
if (!this.isMouseDown) {
|
|
39
|
-
|
|
40
|
-
|
|
50
|
+
if (this.resizeHandlerCount !== null) {
|
|
51
|
+
clearTimeout(this.resizeHandlerCount);
|
|
52
|
+
}
|
|
53
|
+
this.resizeHandlerCount = window.setTimeout(() => {
|
|
41
54
|
this.calculateBarSizeAndPosition(this.elRef.nativeElement.children[0]);
|
|
42
55
|
}, 150);
|
|
43
56
|
}
|
|
44
57
|
};
|
|
45
|
-
this.onMouseMoveHandler = (
|
|
58
|
+
this.onMouseMoveHandler = (event) => {
|
|
46
59
|
if (this.isMouseDown) {
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
const offsetBar = e.clientY - this.barClickPosition;
|
|
50
|
-
if (offsetBar > -1 &&
|
|
51
|
-
e.clientY + this.barClickRestHeight < window.innerHeight) {
|
|
52
|
-
this.bar.nativeElement.style.transform = `translateY(${offsetBar}px)`;
|
|
53
|
-
}
|
|
54
|
-
this.elRef.nativeElement.children[0].scrollTop =
|
|
55
|
-
(e.clientY - this.barClickPosition) * this.scrollRatioFull;
|
|
60
|
+
if (this._scrollBarOptions.showVerticalScrollBar) {
|
|
61
|
+
this.handleRegularScroll(event);
|
|
56
62
|
}
|
|
57
|
-
// Table Scroll
|
|
58
63
|
else {
|
|
59
|
-
|
|
60
|
-
const maxWidth = this.tableNotPinedBoundingRect.width;
|
|
61
|
-
offsetBar = offsetBar < 0 ? 0 : offsetBar;
|
|
62
|
-
offsetBar =
|
|
63
|
-
e.clientX + this.tableBarClickRestWidth > maxWidth
|
|
64
|
-
? maxWidth - this.tableScrollWidth
|
|
65
|
-
: offsetBar;
|
|
66
|
-
this.bar.nativeElement.style.transform = `translateX(${offsetBar}px)`;
|
|
67
|
-
this.scrollEvent.emit({
|
|
68
|
-
eventAction: 'scrolling',
|
|
69
|
-
scrollPosition: offsetBar * this.tableScrollRatioFull,
|
|
70
|
-
});
|
|
64
|
+
this.handleTableScroll(event);
|
|
71
65
|
}
|
|
72
66
|
}
|
|
73
67
|
};
|
|
74
68
|
}
|
|
75
69
|
ngOnInit() {
|
|
76
70
|
this.ngZone.runOutsideAngular(() => {
|
|
77
|
-
|
|
78
|
-
document.addEventListener('mousemove', this.onMouseMoveHandler);
|
|
79
|
-
this.elRef.nativeElement.children[0].addEventListener('scroll', this.setScrollEvent);
|
|
80
|
-
window.addEventListener('resize', this.onResizeHandler);
|
|
71
|
+
this.initializeEventListeners();
|
|
81
72
|
this.calculateBarSizeAndPosition(this.elRef.nativeElement.children[0]);
|
|
82
73
|
});
|
|
83
74
|
}
|
|
84
|
-
ngOnChanges(changes) {
|
|
85
|
-
if (!changes?.['horizontalScrollHeight']?.firstChange &&
|
|
86
|
-
changes?.['horizontalScrollHeight']) {
|
|
87
|
-
this.horizontalScrollHeight =
|
|
88
|
-
changes['horizontalScrollHeight'].currentValue;
|
|
89
|
-
}
|
|
90
|
-
if (!changes?.['scrollBarOptions']?.firstChange &&
|
|
91
|
-
changes?.['scrollBarOptions']) {
|
|
92
|
-
this.scrollBarOptions = changes['scrollBarOptions'].currentValue;
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
75
|
ngAfterViewInit() {
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
this.tableNotPinedContainer =
|
|
100
|
-
document.querySelector('.not-pined-columns');
|
|
101
|
-
this.tableNotPinedBoundingRect =
|
|
102
|
-
this.tableNotPinedContainer?.getBoundingClientRect()
|
|
103
|
-
? this.tableNotPinedContainer.getBoundingClientRect()
|
|
104
|
-
: null;
|
|
105
|
-
}, 100);
|
|
76
|
+
if (this._scrollBarOptions.showHorizontalScrollBar) {
|
|
77
|
+
this.initializeTableScroll();
|
|
78
|
+
this.cdr.detectChanges();
|
|
106
79
|
}
|
|
107
80
|
}
|
|
108
|
-
|
|
81
|
+
initializeEventListeners() {
|
|
82
|
+
document.addEventListener(EventType.MOUSE_UP, this.onMouseUpHandler);
|
|
83
|
+
document.addEventListener(EventType.MOUSE_MOVE, this.onMouseMoveHandler);
|
|
84
|
+
this.elRef.nativeElement.children[0].addEventListener(EventType.SCROLL, this.setScrollEvent);
|
|
85
|
+
window.addEventListener(EventType.RESIZE, this.onResizeHandler);
|
|
86
|
+
}
|
|
87
|
+
initializeTableScroll() {
|
|
88
|
+
this.tableNotPinedContainer = document.querySelector('.not-pined-columns');
|
|
89
|
+
this.tableNotPinedBoundingRect =
|
|
90
|
+
this.tableNotPinedContainer?.getBoundingClientRect() || null;
|
|
91
|
+
}
|
|
92
|
+
setDraggingStart(event) {
|
|
109
93
|
const style = window.getComputedStyle(this.bar.nativeElement);
|
|
110
94
|
const matrix = new DOMMatrixReadOnly(style.transform);
|
|
111
|
-
this.barClickPosition =
|
|
95
|
+
this.barClickPosition = event.clientY - matrix.m42;
|
|
112
96
|
this.barClickRestHeight = this.scrollHeight - this.barClickPosition;
|
|
113
97
|
this.isMouseDown = true;
|
|
114
98
|
// Table Scroll
|
|
115
|
-
this.tableBarClickPosition =
|
|
99
|
+
this.tableBarClickPosition = event.clientX - matrix.m41;
|
|
116
100
|
this.tableBarClickRestWidth =
|
|
117
101
|
this.tableScrollWidth - this.tableBarClickPosition;
|
|
118
102
|
}
|
|
119
|
-
calculateBarSizeAndPosition(elem
|
|
103
|
+
calculateBarSizeAndPosition(elem) {
|
|
120
104
|
setTimeout(() => {
|
|
121
|
-
|
|
122
|
-
if (this.scrollBarOptions.showHorizontalScrollBar) {
|
|
105
|
+
if (this._scrollBarOptions.showHorizontalScrollBar) {
|
|
123
106
|
const scrollWrapper = document.querySelector('.not-pined-columns');
|
|
124
|
-
this.
|
|
125
|
-
scrollWrapper?.getBoundingClientRect()
|
|
126
|
-
? scrollWrapper.getBoundingClientRect()
|
|
127
|
-
: null;
|
|
128
|
-
const tableFullWidth = scrollWrapper?.scrollWidth
|
|
129
|
-
? scrollWrapper.scrollWidth
|
|
130
|
-
: 0;
|
|
131
|
-
const tableVisibleWidth = scrollWrapper?.getBoundingClientRect()
|
|
132
|
-
.width
|
|
133
|
-
? Math.ceil(scrollWrapper.getBoundingClientRect().width)
|
|
134
|
-
: 0;
|
|
135
|
-
this.tableScrollRatio = tableVisibleWidth / tableFullWidth;
|
|
136
|
-
this.tableScrollRatioFull = tableFullWidth / tableVisibleWidth;
|
|
137
|
-
this.tableScrollWidth =
|
|
138
|
-
this.tableScrollRatio * tableVisibleWidth;
|
|
139
|
-
if (tableFullWidth <= tableVisibleWidth) {
|
|
140
|
-
this.showScrollbar = false;
|
|
141
|
-
this.chng.detectChanges();
|
|
142
|
-
}
|
|
143
|
-
else {
|
|
144
|
-
this.showScrollbar = true;
|
|
145
|
-
this.chng.detectChanges();
|
|
146
|
-
}
|
|
147
|
-
this.scrollEvent.emit({
|
|
148
|
-
eventAction: 'isScrollShowing',
|
|
149
|
-
isScrollBarShowing: this.showScrollbar,
|
|
150
|
-
});
|
|
107
|
+
this.calculateTableScroll(scrollWrapper);
|
|
151
108
|
}
|
|
152
|
-
// Regular Scroll
|
|
153
109
|
else {
|
|
154
|
-
|
|
155
|
-
const visible_height = window.innerHeight;
|
|
156
|
-
if (content_height <= visible_height) {
|
|
157
|
-
this.showScrollbar = false;
|
|
158
|
-
this.chng.detectChanges();
|
|
159
|
-
return;
|
|
160
|
-
}
|
|
161
|
-
else {
|
|
162
|
-
this.showScrollbar = true;
|
|
163
|
-
this.chng.detectChanges();
|
|
164
|
-
}
|
|
165
|
-
this.scrollRatio = visible_height / content_height;
|
|
166
|
-
this.scrollRatioFull = content_height / visible_height;
|
|
167
|
-
this.scrollTop = elem.scrollTop * this.scrollRatio;
|
|
168
|
-
if (this.bar) {
|
|
169
|
-
this.bar.nativeElement.style.transform = `translateY(${this.scrollTop}px)`;
|
|
170
|
-
}
|
|
171
|
-
this.scrollHeight = this.scrollRatio * visible_height;
|
|
110
|
+
this.calculateRegularScroll(elem);
|
|
172
111
|
}
|
|
173
|
-
this.chng.detectChanges();
|
|
174
112
|
}, 100);
|
|
175
113
|
}
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
114
|
+
calculateTableScroll(scrollWrapper) {
|
|
115
|
+
if (!scrollWrapper) {
|
|
116
|
+
this.tableNotPinedBoundingRect = null;
|
|
117
|
+
this.showScrollbar = false;
|
|
118
|
+
this.scrollEvent.emit({
|
|
119
|
+
eventAction: ScrollEventAction.IS_SCROLL_SHOWING,
|
|
120
|
+
isScrollBarShowing: this.showScrollbar,
|
|
121
|
+
});
|
|
122
|
+
return;
|
|
123
|
+
}
|
|
124
|
+
const boundingRect = scrollWrapper.getBoundingClientRect();
|
|
125
|
+
const tableFullWidth = scrollWrapper.scrollWidth || 0;
|
|
126
|
+
const tableVisibleWidth = Math.ceil(boundingRect.width || 0);
|
|
127
|
+
this.tableNotPinedBoundingRect = boundingRect;
|
|
128
|
+
this.tableScrollRatio = tableVisibleWidth / tableFullWidth;
|
|
129
|
+
this.tableScrollRatioFull = tableFullWidth / tableVisibleWidth;
|
|
130
|
+
this.tableScrollWidth = this.tableScrollRatio * tableVisibleWidth;
|
|
131
|
+
this.showScrollbar = tableFullWidth > tableVisibleWidth;
|
|
132
|
+
this.cdr.detectChanges();
|
|
133
|
+
this.scrollEvent.emit({
|
|
134
|
+
eventAction: ScrollEventAction.IS_SCROLL_SHOWING,
|
|
135
|
+
isScrollBarShowing: this.showScrollbar,
|
|
136
|
+
});
|
|
137
|
+
}
|
|
138
|
+
calculateRegularScroll(elem) {
|
|
139
|
+
const contentHeight = elem.scrollHeight - 1;
|
|
140
|
+
const visibleHeight = window.innerHeight;
|
|
141
|
+
this.showScrollbar = contentHeight > visibleHeight;
|
|
142
|
+
this.cdr.detectChanges();
|
|
143
|
+
if (!this.showScrollbar)
|
|
144
|
+
return;
|
|
145
|
+
this.scrollRatio = visibleHeight / contentHeight;
|
|
146
|
+
this.scrollRatioFull = contentHeight / visibleHeight;
|
|
147
|
+
this.scrollTop = elem.scrollTop * this.scrollRatio;
|
|
148
|
+
if (this.bar) {
|
|
149
|
+
this.bar.nativeElement.style.transform = `translateY(${this.scrollTop}px)`;
|
|
150
|
+
}
|
|
151
|
+
this.scrollHeight = this.scrollRatio * visibleHeight;
|
|
182
152
|
}
|
|
183
|
-
|
|
153
|
+
handleRegularScroll(event) {
|
|
154
|
+
const offsetBar = event.clientY - this.barClickPosition;
|
|
155
|
+
if (offsetBar > -1 &&
|
|
156
|
+
event.clientY + this.barClickRestHeight < window.innerHeight) {
|
|
157
|
+
this.bar.nativeElement.style.transform = `translateY(${offsetBar}px)`;
|
|
158
|
+
}
|
|
159
|
+
this.elRef.nativeElement.children[0].scrollTop =
|
|
160
|
+
(event.clientY - this.barClickPosition) * this.scrollRatioFull;
|
|
161
|
+
}
|
|
162
|
+
handleTableScroll(event) {
|
|
163
|
+
let offsetBar = event.clientX - this.tableBarClickPosition;
|
|
164
|
+
const maxWidth = this.tableNotPinedBoundingRect?.width || 0;
|
|
165
|
+
offsetBar = offsetBar < 0 ? 0 : offsetBar;
|
|
166
|
+
offsetBar =
|
|
167
|
+
event.clientX + this.tableBarClickRestWidth > maxWidth
|
|
168
|
+
? maxWidth - this.tableScrollWidth
|
|
169
|
+
: offsetBar;
|
|
170
|
+
this.bar.nativeElement.style.transform = `translateX(${offsetBar}px)`;
|
|
171
|
+
this.scrollEvent.emit({
|
|
172
|
+
eventAction: ScrollEventAction.SCROLLING,
|
|
173
|
+
scrollPosition: offsetBar * this.tableScrollRatioFull,
|
|
174
|
+
});
|
|
175
|
+
}
|
|
176
|
+
projectContentChanged() {
|
|
184
177
|
clearTimeout(this.calculateSizeHeightTimer);
|
|
185
178
|
this.calculateSizeHeightTimer = setTimeout(() => {
|
|
186
179
|
this.calculateBarSizeAndPosition(this.elRef.nativeElement.children[0]);
|
|
187
180
|
}, 100);
|
|
188
181
|
}
|
|
182
|
+
removeEventListeners() {
|
|
183
|
+
document.removeEventListener(EventType.MOUSE_UP, this.onMouseUpHandler);
|
|
184
|
+
document.removeEventListener(EventType.MOUSE_MOVE, this.onMouseMoveHandler);
|
|
185
|
+
window.removeEventListener(EventType.RESIZE, this.onResizeHandler);
|
|
186
|
+
}
|
|
187
|
+
ngOnDestroy() {
|
|
188
|
+
this.removeEventListeners();
|
|
189
|
+
this.destroy$.next();
|
|
190
|
+
this.destroy$.complete();
|
|
191
|
+
}
|
|
189
192
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CaCustomScrollbarComponent, deps: [{ token: i0.NgZone }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
190
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: CaCustomScrollbarComponent, isStandalone: true, selector: "app-ca-custom-scrollbar", inputs: { scrollBarOptions: "scrollBarOptions", horizontalScrollHeight: "horizontalScrollHeight" }, outputs: { scrollEvent: "scrollEvent" }, viewQueries: [{ propertyName: "bar", first: true, predicate: ["bar"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div\n class=\"custom-scrollbar-holder\"\n #contentHolder\n (cdkObserveContent)=\"projectContentChanged($event)\"\n [class.activeToolbar]=\"showScrollbar\"\n [ngStyle]=\"{\n height: scrollBarOptions.showHorizontalScrollBar\n ? horizontalScrollHeight + 'px'\n : 100 + 'vh',\n 'overflow-y': scrollBarOptions.showHorizontalScrollBar\n ? 'visible'\n : 'auto',\n }\"\n>\n <ng-content></ng-content>\n <!-- Vertical Scroll Bar -->\n <div\n class=\"right-bar-scroll\"\n *ngIf=\"showScrollbar && scrollBarOptions.showVerticalScrollBar\"\n >\n <div\n class=\"right-bar\"\n #bar\n [ngStyle]=\"{ height: scrollHeight + 'px' }\"\n (mousedown)=\"setDraggingStart($event)\"\n (mouseup)=\"isMouseDown = false\"\n ></div>\n </div>\n\n <!-- Horizontal Scroll Bar -->\n <div\n class=\"horizontal-scroll-bar\"\n [ngStyle]=\"{\n 'left.px':\n scrollBarOptions?.modalStyle?.horizontalScrollBarLeft === 0 ||\n scrollBarOptions?.modalStyle?.horizontalScrollBarLeft\n ? scrollBarOptions.modalStyle.horizontalScrollBarLeft\n : tableNotPinedBoundingRect?.left - 74,\n 'width.px': scrollBarOptions?.modalStyle?.horizontalScrollBarWidth\n ? scrollBarOptions.modalStyle.horizontalScrollBarWidth\n : tableNotPinedBoundingRect?.width,\n 'margin-top.px': scrollBarOptions?.modalStyle\n ?.horizontalScrollBarMarginTop\n ? scrollBarOptions.modalStyle.horizontalScrollBarMarginTop\n : -15,\n }\"\n [ngClass]=\"{\n 'modal-horizontal-scroll-bar':\n scrollBarOptions?.modalStyle?.modalScrollClassActive,\n }\"\n *ngIf=\"showScrollbar && scrollBarOptions.showHorizontalScrollBar\"\n >\n <div\n class=\"horizontal-bar\"\n #bar\n [ngStyle]=\"{\n 'width.px': scrollBarOptions?.modalStyle?.additionalWidth\n ? tableScrollWidth +\n scrollBarOptions.modalStyle.additionalWidth\n : tableScrollWidth,\n }\"\n [ngClass]=\"{\n 'horizontal-bar-sticky': scrollBarOptions.dataLength >= 23,\n }\"\n (mousedown)=\"setDraggingStart($event)\"\n (mouseup)=\"isMouseDown = false\"\n ></div>\n </div>\n</div>\n", styles: [".custom-scrollbar-holder{position:relative;transition:height .25s ease-in-out;scrollbar-width:none!important;-ms-overflow-style:none!important}.custom-scrollbar-holder::-webkit-scrollbar{display:none!important}.custom-scrollbar-holder ::-webkit-scrollbar-thumb,.custom-scrollbar-holder ::-webkit-scrollbar{width:1px!important;display:none!important}.custom-scrollbar-holder .overflow-unset{overflow-y:unset!important;overflow-x:unset!important}.custom-scrollbar-holder .right-bar-scroll{height:100%;position:fixed;right:0;top:0;-webkit-user-select:none;user-select:none}.custom-scrollbar-holder .right-bar-scroll .right-bar{position:absolute;right:3px;width:6px;min-height:30px;border-radius:1px;background-color:#aaa}.custom-scrollbar-holder .right-bar-scroll .right-bar:hover{background:#0000008c}.custom-scrollbar-holder .modal-horizontal-scroll-bar{height:6px;background:#eee;border-radius:2px}.custom-scrollbar-holder .horizontal-scroll-bar{width:100%;position:absolute;left:0;-webkit-user-select:none;user-select:none}.custom-scrollbar-holder .horizontal-scroll-bar .horizontal-bar{width:6px;position:relative!important;height:6px;min-width:30px;border-radius:1px;background-color:#aaa}.custom-scrollbar-holder .horizontal-scroll-bar .horizontal-bar:hover{background:#0000008c}.custom-scrollbar-holder .horizontal-scroll-bar .horizontal-bar-sticky{position:fixed;bottom:calc(0% + 14px)}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: ObserversModule }, { kind: "directive", type: i2.CdkObserveContent, selector: "[cdkObserveContent]", inputs: ["cdkObserveContentDisabled", "debounce"], outputs: ["cdkObserveContent"], exportAs: ["cdkObserveContent"] }] }); }
|
|
193
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: CaCustomScrollbarComponent, isStandalone: true, selector: "app-ca-custom-scrollbar", inputs: { scrollBarOptions: "scrollBarOptions", horizontalScrollHeight: "horizontalScrollHeight" }, outputs: { scrollEvent: "scrollEvent" }, viewQueries: [{ propertyName: "bar", first: true, predicate: ["bar"], descendants: true }], ngImport: i0, template: "<div\n class=\"custom-scrollbar-holder\"\n #contentHolder\n (cdkObserveContent)=\"projectContentChanged()\"\n [class.activeToolbar]=\"showScrollbar\"\n [ngStyle]=\"{\n height: _scrollBarOptions.showHorizontalScrollBar\n ? _horizontalScrollHeight + 'px'\n : 100 + 'vh',\n 'overflow-y': _scrollBarOptions.showHorizontalScrollBar\n ? 'visible'\n : 'auto',\n }\"\n>\n <ng-content></ng-content>\n <!-- Vertical Scroll Bar -->\n @if (showScrollbar && _scrollBarOptions.showVerticalScrollBar) {\n <div class=\"right-bar-scroll\">\n <div\n class=\"right-bar\"\n #bar\n [ngStyle]=\"{ height: scrollHeight + 'px' }\"\n (mousedown)=\"setDraggingStart($event)\"\n (mouseup)=\"isMouseDown = false\"\n ></div>\n </div>\n }\n\n <!-- Horizontal Scroll Bar -->\n @if (showScrollbar && _scrollBarOptions.showHorizontalScrollBar) {\n <div\n class=\"horizontal-scroll-bar\"\n [ngStyle]=\"{\n 'left.px':\n _scrollBarOptions?.modalStyle?.horizontalScrollBarLeft ===\n 0 ||\n _scrollBarOptions?.modalStyle?.horizontalScrollBarLeft\n ? _scrollBarOptions.modalStyle.horizontalScrollBarLeft\n : (tableNotPinedBoundingRect?.left || 0) - 74,\n 'width.px': _scrollBarOptions?.modalStyle\n ?.horizontalScrollBarWidth\n ? _scrollBarOptions.modalStyle.horizontalScrollBarWidth\n : tableNotPinedBoundingRect?.width,\n 'margin-top.px': _scrollBarOptions?.modalStyle\n ?.horizontalScrollBarMarginTop\n ? _scrollBarOptions.modalStyle.horizontalScrollBarMarginTop\n : -15,\n }\"\n [ngClass]=\"{\n 'modal-horizontal-scroll-bar':\n _scrollBarOptions?.modalStyle?.modalScrollClassActive,\n }\"\n >\n <div\n class=\"horizontal-bar\"\n #bar\n [ngStyle]=\"{\n 'width.px': _scrollBarOptions?.modalStyle?.additionalWidth\n ? tableScrollWidth +\n _scrollBarOptions.modalStyle.additionalWidth\n : tableScrollWidth,\n }\"\n [ngClass]=\"{\n 'horizontal-bar-sticky':\n (_scrollBarOptions?.dataLength || 0) >= 23,\n }\"\n (mousedown)=\"setDraggingStart($event)\"\n (mouseup)=\"isMouseDown = false\"\n ></div>\n </div>\n }\n</div>\n", styles: ["@import\"https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap\";@import\"https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/css/bootstrap.min.css\";.ca-font-thin{font-weight:100!important}.ca-font-extra-light{font-weight:200!important}.ca-font-light{font-weight:300!important}.ca-font-regular{font-weight:400!important}.ca-font-medium{font-weight:500!important}.ca-font-semi-bold{font-weight:600!important}.ca-font-bold{font-weight:700!important}.ca-font-extra-bold{font-weight:800!important}.ca-font-black{font-weight:900!important}.pickup-delivery-popover{top:-38px!important;max-width:340px!important}.pickup-delivery-popover.bs-popover-top{top:auto!important;bottom:-38px!important}.pickup-delivery-popover.bs-popover-top .load-component .assigned-load-holder{order:3;margin-top:4px;margin-bottom:0!important}.pickup-delivery-popover.bs-popover-top .load-component .statusBar{order:2;margin-top:4px}.pickup-delivery-popover.bs-popover-top .load-component .animation-three-tabs{order:1}.gps_dropdown_popover{top:-38px;max-width:494px}.gps_dropdown_popover .popover-body{padding:0}.table-progress-popover{background-color:unset!important;margin-left:-10px}.table-progress-popover .progress-dropdown{margin-top:-6px;width:260px;height:200px;background:#2f2f2f;border-radius:3px;padding:8px;box-shadow:0 0 4px #00000026;overflow:hidden;-webkit-animation:progressAnimation .25s ease-in-out;animation:progressAnimation .25s ease-in-out}.table-progress-popover .progress-dropdown .progress-header .progress-title{font-size:18px;font-weight:600;color:#dadada}.table-progress-popover .progress-dropdown .progress-header .progress-title span{font-weight:400}.table-progress-popover .progress-dropdown .progress-header .progress-total{font-size:14px;line-height:17px;color:#dadada}.table-progress-popover .progress-dropdown .table-progress-bar-container{width:100%;height:8px;margin-top:6px;border-radius:2px;overflow:hidden}.table-progress-popover .progress-dropdown .table-progress-bar-container .table-progress-bar{height:100%}.table-progress-popover .progress-dropdown .progress-dropdown-body .progress-dual-info-container .progress-info-container{width:50%}.table-progress-popover .progress-dropdown .progress-dropdown-body .progress-info-container{margin-top:10px}.table-progress-popover .progress-dropdown .progress-dropdown-body .progress-info-container .progress-info-title{margin-bottom:2px;font-size:11px;font-weight:700;line-height:14px;color:#ffffffb2}.table-progress-popover .progress-dropdown .progress-dropdown-body .progress-info-container .progress-info-text{font-size:14px;line-height:18px;color:#dadada}.table-progress-popover .progress-dropdown.credit-dropdown{height:100px}@-webkit-keyframes progressAnimation{0%{height:0px}to{height:220px}}@keyframes progressAnimation{0%{height:0px}to{height:220px}}ngb-popover-window{padding:unset!important;border:unset!important}ngb-popover-window .popover-arrow{display:none!important}ngb-popover-window .popover-body{padding:unset!important}.dispatch-note .popover-body{position:relative;top:-4px;left:-4px}.tooltip{font-size:12px;position:relative}.tooltip.show{opacity:.83}.tooltip.fade:after,.tooltip.fade:before{transform:translateY(-10px);transition:all .15s ease-in-out}.tooltip.fade:hover:after,.tooltip.fade:hover:before{opacity:1;transform:translate(0)}.tooltip-inner{padding:4px 10px;white-space:nowrap;max-width:none;border-radius:3px}.tooltip-inner:empty{padding:0}.placeholder-delete .tooltip-inner{background-color:#f66}.placeholder-delete .arrow:before{border-top-color:#f66}.custom-popup-owners-for-flag .tooltip-inner{color:#3b3b3b;background-color:#fff;transform:translateY(126%) translate(-50%)!important;width:130px;border-radius:3px;box-shadow:0 0 3px #0003}.custom-popup-owners-for-flag .arrow{bottom:-18%;transform:rotate(180deg);left:calc(50% + 2.7rem)}.custom-popup-owners-for-flag .tooltip{opacity:.93!important;width:0}.custom-popup-owners{z-index:999}.custom-popup-owners .tooltip-inner{color:#3b3b3b;background-color:#fff;transform:translateY(132%);z-index:999;box-shadow:0 0 3px #0003}.custom-popup-owners .arrow{bottom:-20%;transform:rotate(180deg)}.custom-popup-owners .tooltip{transform:translateY(-61px)!important}.custom-popup-owners-year{z-index:999}.custom-popup-owners-year .tooltip-inner{color:#3b3b3b;background-color:#fff;transform:translateY(132%);z-index:999;box-shadow:0 0 3px #0003}.custom-popup-owners-year .arrow{bottom:-20%;transform:rotate(180deg)}.custom-popup-owners-year .tooltip{transform:translate(70px,-61px)!important}.custom-popup-owners-info .tooltip-inner{color:#3b3b3b;background-color:#fff;transform:translateY(-100%) translate(-10%);width:200px;height:36px;display:flex;justify-content:center;align-items:center;border-radius:3px;margin-top:3px;box-shadow:0 0 3px #0003}.custom-popup-owners-info .tooltip{opacity:.93;width:0}.custom-popup-owners-info .arrow{display:none}.custom-popup-owners-info #phone-inside{position:relative;right:26px;bottom:0}.custom-popup-owners-info-at .tooltip-inner{color:#3b3b3b;background-color:#fff;transform:translateY(-108%) translate(-7%);width:270px;height:36px;display:flex;justify-content:center;align-items:center;border-radius:3px;box-shadow:0 0 3px #0003}.custom-popup-owners-info-at .tooltip{opacity:1;width:0}.custom-popup-owners-info-at .arrow{display:none}.custom-popup-owners-for-tag .tooltip-inner{color:#3b3b3b;background-color:#fff;width:100px;border-radius:3px;box-shadow:0 0 3px #0003!important}.custom-popup-owners-for-tag .tooltip{top:5px!important}.custom-popup-owners-for-tag .arrow{bottom:-24%}.align-items-flex-start{justify-content:center;align-items:center}.align-items-flex-end{display:flex;justify-content:center;flex-direction:column;align-self:flex-end;align-items:flex-start}.label-add{align-self:flex-start}.fadeInLoad{animation:fadeInLoad .25s}@keyframes fadeInLoad{0%{opacity:0}to{opacity:1}}.fadeIn{opacity:1;-webkit-transition:.25s;-moz-transition:.25s;-o-transition:.25s;transition:.25s}.thisText:hover .fadeIn{opacity:0}.fadeInLoad{animation-name:example;animation-duration:.25s}@keyframes example{0%{transform:scale(.5)}to{transform:scale(1)}}.tooltip.tooltip-table-icons{left:12px!important;opacity:1}.tooltip.tooltip-table-icons .arrow{display:none!important}.tooltip.tooltip-table-icons .tooltip-inner{border-radius:0 50px 50px;background:#28529f}.tooltip.show{opacity:1;animation:fadeIn ease .5s!important;-webkit-animation:fadeIn ease .5s!important;-moz-animation:fadeIn ease .5s!important;-o-animation:fadeIn ease .5s!important;-ms-animation:fadeIn ease .5s!important}.ta-tooltip{position:absolute;font-size:12px;text-align:center;color:#fff;line-height:22px;z-index:999999!important;opacity:0;white-space:nowrap;transform:scale(.7)}.ta-tooltip.ta-tooltip-show{opacity:.85;transform:scale(1);padding:0 12px}.ta-tooltip.ta-tooltip-bottom-right,.ta-tooltip.ta-tooltip-bottom-right-corner{transform-origin:top left;border-radius:0 15px 15px}.ta-tooltip.ta-tooltip-bottom-left{transform-origin:top right;border-radius:15px 0 15px 15px}@keyframes scaleItem{0%{transform:scale(.4)}to{transform:scale(1)}}.app-ca-main-tooltip{pointer-events:none}.app-ca-main-tooltip .tooltip-inner{padding:0;background-color:transparent;pointer-events:none}.app-ca-main-tooltip .tooltip-inner .tooltip-holder{display:flex;font-size:11px;font-weight:700;border-radius:2px;padding:2px 8px;animation:scaleItem .3s;white-space:normal}.app-ca-main-tooltip .tooltip-inner .tooltip-holder:empty{padding:0}.tooltip-arrow{display:none!important}.trucks.semitruck svg path,.trucks.semisleeper svg path,.trucks.flatbed svg path,.trucks.stepdeck svg path,.trucks.lowboyrgn svg path,.trucks.chassis svg path,.trucks.conestoga svg path,.trucks.sidekit svg path,.trucks.container svg path,.trailers.semitruck svg path,.trailers.semisleeper svg path,.trailers.flatbed svg path,.trailers.stepdeck svg path,.trailers.lowboyrgn svg path,.trailers.chassis svg path,.trailers.conestoga svg path,.trailers.sidekit svg path,.trailers.container svg path{fill:#92b1f5}.trucks.boxtruck svg path,.trucks.reefertruck svg path,.trucks.cargovan svg path,.trucks.dryvan svg path,.trucks.reefer svg path,.trailers.boxtruck svg path,.trailers.reefertruck svg path,.trailers.cargovan svg path,.trailers.dryvan svg path,.trailers.reefer svg path{fill:#fbc88b}.trucks.dumptruck svg path,.trucks.cementtruck svg path,.trucks.garbagetruck svg path,.trucks.enddump svg path,.trucks.bottomdump svg path,.trucks.hopper svg path,.trucks.tanker svg path,.trucks.pneumatictanker svg path,.trailers.dumptruck svg path,.trailers.cementtruck svg path,.trailers.garbagetruck svg path,.trailers.enddump svg path,.trailers.bottomdump svg path,.trailers.hopper svg path,.trailers.tanker svg path,.trailers.pneumatictanker svg path{fill:#ed9292}.trucks.towtruck svg path,.trucks.carhauler svg path,.trucks.spotter svg path,.trucks.carhaulerstigner svg path,.trailers.towtruck svg path,.trailers.carhauler svg path,.trailers.spotter svg path,.trailers.carhaulerstigner svg path{fill:#86c9c3}.trucks .svgtext-template-text,.trailers .svgtext-template-text{color:#fff;transition:color .3s ease-in-out}.colors .black svg #droplet{fill:#6c6c6c}.colors .brown svg #droplet{fill:#a1887f}.colors .darkgreen svg #droplet{fill:#4db6a2}.colors .lightgreen svg #droplet{fill:#81c784}.colors .darkblue svg #droplet{fill:#546fd2}.colors .lightblue svg #droplet{fill:#64b5f6}.colors .gray svg #droplet{fill:#aaa}.colors .purple svg #droplet{fill:#ba68c8}.colors .gold svg #droplet{fill:#bcad79}.colors .silver svg #droplet{fill:#dadada}.colors .red svg #droplet{fill:#f96b69}.colors .pink svg #droplet{fill:#f26ec2}.colors .white svg #droplet{fill:#f1f1f1}.colors .orange svg #droplet{fill:#ff8a65}.colors .yellow svg #droplet{fill:#ffd54f}.colors:hover{transition:all .3s ease-in-out}.colors:hover .black svg #droplet{fill:#3c3c3c}.colors:hover .brown svg #droplet{fill:#8d6e63}.colors:hover .darkgreen svg #droplet{fill:#26a690}.colors:hover .lightgreen svg #droplet{fill:#66bb6a}.colors:hover .darkblue svg #droplet{fill:#304fc1}.colors:hover .lightblue svg #droplet{fill:#42a5f5}.colors:hover .gray svg #droplet{fill:#919191}.colors:hover .purple svg #droplet{fill:#ab47bc}.colors:hover .gold svg #droplet{fill:#aa9c6e}.colors:hover .silver svg #droplet{fill:#b7b7b7}.colors:hover .red svg #droplet{fill:#ef5350}.colors:hover .pink svg #droplet{fill:#fa4daa}.colors:hover .white svg #droplet{fill:#fff}.colors:hover .orange svg #droplet{fill:#ff7043}.colors:hover .yellow svg #droplet{fill:#ffca28}.text-color-black{color:#424242!important}.text-color-black::-moz-selection{background:#42424233!important;color:#424242!important}.text-color-black::selection{background:#42424233!important;color:#424242!important}.text-color-black-2{color:#2f2f2f!important}.text-color-black-2::-moz-selection{background:#2f2f2f33!important;color:#2f2f2f!important}.text-color-black-2::selection{background:#2f2f2f33!important;color:#2f2f2f!important}.text-color-muted{color:#919191!important}.text-color-muted::-moz-selection{background:#91919133!important;color:#919191!important}.text-color-muted::selection{background:#91919133!important;color:#919191!important}.text-color-green{color:#56b4ac!important}.text-color-green::-moz-selection{background:#56b4ac33!important;color:#56b4ac!important}.text-color-green::selection{background:#56b4ac33!important;color:#56b4ac!important}.text-color-blue-13{color:#6692f1!important}.text-color-blue-13::-moz-selection{background:#66921833!important;color:#6692f1!important}.text-color-blue-13::selection{background:#66921833!important;color:#6692f1!important}.text-color-blue-18{color:#3b73ed!important}.text-color-blue-18::-moz-selection{background:#3b73ed33!important;color:#3b73ed!important}.text-color-blue-18::selection{background:#3b73ed33!important;color:#3b73ed!important}.text-color-red-10{color:#e66767!important}.text-color-red-10::-moz-selection{background:#e6676733!important;color:#e66767!important}.text-color-red-10::selection{background:#e6676733!important;color:#e66767!important}.text-color-light-grey{color:#e5e5e5!important}.text-color-light-grey::-moz-selection{background:#e5e5e533!important;color:#e5e5e5!important}.text-color-light-grey::selection{background:#e5e5e533!important;color:#e5e5e5!important}.text-color-light-grey-2{color:#aaa!important}.text-color-light-grey-2::-moz-selection{background:#aaa3!important;color:#aaa!important}.text-color-light-grey-2::selection{background:#aaa3!important;color:#aaa!important}.text-color-light-grey-6{color:#ccc!important}.text-color-light-grey-6::-moz-selection{color:#ccc!important;background:#aaa3!important}.text-color-light-grey-6::selection{color:#ccc!important;background:#aaa3!important}.text-color-white{color:#dadada!important}.text-color-white::-moz-selection{color:#dadada!important;background:#fff3!important}.text-color-white::selection{color:#dadada!important;background:#fff3!important}.text-color-white-4{color:#ffffffb2!important}.text-color-white-4::-moz-selection{color:#ffffffb2!important;background:#fff3!important}.text-color-white-4::selection{color:#ffffffb2!important;background:#fff3!important}.text-color-dark-grey{color:#6c6c6c!important}.text-color-dark-grey::-moz-selection{color:#6c6c6c!important;background:#6c6c6c33!important}.text-color-dark-grey::selection{color:#6c6c6c!important;background:#6c6c6c33!important}.text-color-bw6-2{color:#6c6c6c!important}.text-color-bw6-2::-moz-selection{color:#6c6c6c!important;background:#6c6c6c33!important}.text-color-bw6-2::selection{color:#6c6c6c!important;background:#6c6c6c33!important}.text-color-bw-9{color:#dadada!important}.text-color-bw-9::-moz-selection{color:#6c6c6c!important;background:#6c6c6c33!important}.text-color-bw-9::selection{color:#6c6c6c!important;background:#6c6c6c33!important}.text-color-grey{color:#919191!important}.text-color-grey::-moz-selection{color:#919191!important;background:#91919133!important}.text-color-grey::selection{color:#919191!important;background:#91919133!important}.text-color-grey .address-text::-moz-selection,.text-color-grey .marker-bold-text::-moz-selection{color:#919191!important;background:#91919133!important}.text-color-grey .address-text::selection,.text-color-grey .marker-bold-text::selection{color:#919191!important;background:#91919133!important}.text-size-11{font-size:11px!important;line-height:14px!important}.text-size-14{font-size:14px!important;line-height:18px!important}.text-size-16{font-size:16px!important;line-height:19px!important}.text-size-18{font-size:18px!important;line-height:22px!important}.text-size-26{font-size:26px!important;line-height:32px!important}.text-size-28{font-size:28px!important;line-height:34px!important}@keyframes dropdown{0%{margin-top:20px;visibility:hidden;opacity:0}to{opacity:1;margin-top:10px;visibility:visible!important}}@keyframes dropup{0%{margin-top:-19px;visibility:hidden;opacity:0}to{margin-top:inherit;visibility:visible!important}}.svg-fill-black svg path{fill:#424242!important}.svg-fill-muted svg path{fill:#919191!important}.svg-fill-bw-9 svg path{fill:#dadada!important}.svg-fill-light-grey-2 svg path{fill:#aaa!important}.svg-fill-light-grey-6 svg path{fill:#ccc!important}.svg-fill-blue-13 svg path{fill:#6692f1!important}.svg-fill-blue-19 svg path{fill:#92b1f5!important}.svg-fill-blue-26 svg path{fill:#4dc5eb!important}.svg-hover-muted svg path{transition:all .3s ease-in-out}.svg-hover-muted:hover svg path{fill:#919191!important}.svg-hover-black svg path{transition:all .3s ease-in-out}.svg-hover-black:hover svg path{fill:#424242!important}.svg-hover-blue-15 svg path{transition:all .3s ease-in-out}.svg-hover-blue-15:hover svg path{fill:#0b49d1!important}.svg-hover-bw6-2 svg path{transition:all .3s ease-in-out}.svg-hover-bw6-2:hover svg path{fill:#6c6c6c!important}.svg-hover-trash-red svg path{transition:all .3s ease-in-out}.svg-hover-trash-red:hover svg path{fill:#ff5050!important}.svg-hover-red-14 svg path{transition:all .3s ease-in-out}.svg-hover-red-14:hover svg path{fill:#c20c0c!important}.svg-size-12 svg{width:12px;height:12px}.svg-size-14 svg{width:14px;height:14px}.svg-size-16 svg{width:16px;height:16px}.svg-size-18 svg{width:18px;height:18px}.svg-size-44-16 svg{width:44px;height:16px}*{margin:0;font-family:Montserrat,sans-serif}html{scroll-behavior:auto!important}.gm-style-iw-chr,.gm-style-iw-tc{display:none}.gm-style .gm-style-iw-c{border-radius:0}.gm-style-iw{overflow-y:auto!important;overflow-x:hidden!important}.gm-style-iw>div{overflow:visible!important}.infoWindow{overflow:hidden!important}.gm-style-iw-d,.gm-style-iw.gm-style-iw-c{max-height:350px!important}::ng-deep .popover{--bs-popover-border-width: 0;--bs-popover-body-padding-y: 0;--bs-popover-body-padding-x: 0}::ng-deep .popover .popover-arrow{display:none}.custom-scrollbar-holder{position:relative;transition:height .25s ease-in-out;scrollbar-width:none!important;-ms-overflow-style:none!important}.custom-scrollbar-holder::-webkit-scrollbar{display:none!important}.custom-scrollbar-holder ::-webkit-scrollbar-thumb,.custom-scrollbar-holder ::-webkit-scrollbar{width:1px!important;display:none!important}.custom-scrollbar-holder .overflow-unset{overflow-y:unset!important;overflow-x:unset!important}.custom-scrollbar-holder .right-bar-scroll{height:100%;position:fixed;right:0;top:0;-webkit-user-select:none;user-select:none}.custom-scrollbar-holder .right-bar-scroll .right-bar{position:absolute;right:3px;width:6px;min-height:30px;border-radius:1px;background-color:#aaa}.custom-scrollbar-holder .right-bar-scroll .right-bar:hover{background:#0000008c}.custom-scrollbar-holder .modal-horizontal-scroll-bar{height:6px;background:#eee;border-radius:2px}.custom-scrollbar-holder .horizontal-scroll-bar{width:100%;position:absolute;left:0;-webkit-user-select:none;user-select:none}.custom-scrollbar-holder .horizontal-scroll-bar .horizontal-bar{width:6px;position:relative!important;height:6px;min-width:30px;border-radius:1px;background-color:#aaa}.custom-scrollbar-holder .horizontal-scroll-bar .horizontal-bar:hover{background:#0000008c}.custom-scrollbar-holder .horizontal-scroll-bar .horizontal-bar-sticky{position:fixed;bottom:calc(0% + 14px)}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: ObserversModule }, { kind: "directive", type: i2.CdkObserveContent, selector: "[cdkObserveContent]", inputs: ["cdkObserveContentDisabled", "debounce"], outputs: ["cdkObserveContent"], exportAs: ["cdkObserveContent"] }] }); }
|
|
191
194
|
}
|
|
192
195
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CaCustomScrollbarComponent, decorators: [{
|
|
193
196
|
type: Component,
|
|
194
|
-
args: [{ selector: 'app-ca-custom-scrollbar', standalone: true, imports: [FormsModule, CommonModule, ObserversModule], template: "<div\n class=\"custom-scrollbar-holder\"\n #contentHolder\n (cdkObserveContent)=\"projectContentChanged($event)\"\n [class.activeToolbar]=\"showScrollbar\"\n [ngStyle]=\"{\n height: scrollBarOptions.showHorizontalScrollBar\n ? horizontalScrollHeight + 'px'\n : 100 + 'vh',\n 'overflow-y': scrollBarOptions.showHorizontalScrollBar\n ? 'visible'\n : 'auto',\n }\"\n>\n <ng-content></ng-content>\n <!-- Vertical Scroll Bar -->\n <div\n class=\"right-bar-scroll\"\n *ngIf=\"showScrollbar && scrollBarOptions.showVerticalScrollBar\"\n >\n <div\n class=\"right-bar\"\n #bar\n [ngStyle]=\"{ height: scrollHeight + 'px' }\"\n (mousedown)=\"setDraggingStart($event)\"\n (mouseup)=\"isMouseDown = false\"\n ></div>\n </div>\n\n <!-- Horizontal Scroll Bar -->\n <div\n class=\"horizontal-scroll-bar\"\n [ngStyle]=\"{\n 'left.px':\n scrollBarOptions?.modalStyle?.horizontalScrollBarLeft === 0 ||\n scrollBarOptions?.modalStyle?.horizontalScrollBarLeft\n ? scrollBarOptions.modalStyle.horizontalScrollBarLeft\n : tableNotPinedBoundingRect?.left - 74,\n 'width.px': scrollBarOptions?.modalStyle?.horizontalScrollBarWidth\n ? scrollBarOptions.modalStyle.horizontalScrollBarWidth\n : tableNotPinedBoundingRect?.width,\n 'margin-top.px': scrollBarOptions?.modalStyle\n ?.horizontalScrollBarMarginTop\n ? scrollBarOptions.modalStyle.horizontalScrollBarMarginTop\n : -15,\n }\"\n [ngClass]=\"{\n 'modal-horizontal-scroll-bar':\n scrollBarOptions?.modalStyle?.modalScrollClassActive,\n }\"\n *ngIf=\"showScrollbar && scrollBarOptions.showHorizontalScrollBar\"\n >\n <div\n class=\"horizontal-bar\"\n #bar\n [ngStyle]=\"{\n 'width.px': scrollBarOptions?.modalStyle?.additionalWidth\n ? tableScrollWidth +\n scrollBarOptions.modalStyle.additionalWidth\n : tableScrollWidth,\n }\"\n [ngClass]=\"{\n 'horizontal-bar-sticky': scrollBarOptions.dataLength >= 23,\n }\"\n (mousedown)=\"setDraggingStart($event)\"\n (mouseup)=\"isMouseDown = false\"\n ></div>\n </div>\n</div>\n", styles: [".custom-scrollbar-holder{position:relative;transition:height .25s ease-in-out;scrollbar-width:none!important;-ms-overflow-style:none!important}.custom-scrollbar-holder::-webkit-scrollbar{display:none!important}.custom-scrollbar-holder ::-webkit-scrollbar-thumb,.custom-scrollbar-holder ::-webkit-scrollbar{width:1px!important;display:none!important}.custom-scrollbar-holder .overflow-unset{overflow-y:unset!important;overflow-x:unset!important}.custom-scrollbar-holder .right-bar-scroll{height:100%;position:fixed;right:0;top:0;-webkit-user-select:none;user-select:none}.custom-scrollbar-holder .right-bar-scroll .right-bar{position:absolute;right:3px;width:6px;min-height:30px;border-radius:1px;background-color:#aaa}.custom-scrollbar-holder .right-bar-scroll .right-bar:hover{background:#0000008c}.custom-scrollbar-holder .modal-horizontal-scroll-bar{height:6px;background:#eee;border-radius:2px}.custom-scrollbar-holder .horizontal-scroll-bar{width:100%;position:absolute;left:0;-webkit-user-select:none;user-select:none}.custom-scrollbar-holder .horizontal-scroll-bar .horizontal-bar{width:6px;position:relative!important;height:6px;min-width:30px;border-radius:1px;background-color:#aaa}.custom-scrollbar-holder .horizontal-scroll-bar .horizontal-bar:hover{background:#0000008c}.custom-scrollbar-holder .horizontal-scroll-bar .horizontal-bar-sticky{position:fixed;bottom:calc(0% + 14px)}\n"] }]
|
|
197
|
+
args: [{ selector: 'app-ca-custom-scrollbar', standalone: true, imports: [FormsModule, CommonModule, ObserversModule], template: "<div\n class=\"custom-scrollbar-holder\"\n #contentHolder\n (cdkObserveContent)=\"projectContentChanged()\"\n [class.activeToolbar]=\"showScrollbar\"\n [ngStyle]=\"{\n height: _scrollBarOptions.showHorizontalScrollBar\n ? _horizontalScrollHeight + 'px'\n : 100 + 'vh',\n 'overflow-y': _scrollBarOptions.showHorizontalScrollBar\n ? 'visible'\n : 'auto',\n }\"\n>\n <ng-content></ng-content>\n <!-- Vertical Scroll Bar -->\n @if (showScrollbar && _scrollBarOptions.showVerticalScrollBar) {\n <div class=\"right-bar-scroll\">\n <div\n class=\"right-bar\"\n #bar\n [ngStyle]=\"{ height: scrollHeight + 'px' }\"\n (mousedown)=\"setDraggingStart($event)\"\n (mouseup)=\"isMouseDown = false\"\n ></div>\n </div>\n }\n\n <!-- Horizontal Scroll Bar -->\n @if (showScrollbar && _scrollBarOptions.showHorizontalScrollBar) {\n <div\n class=\"horizontal-scroll-bar\"\n [ngStyle]=\"{\n 'left.px':\n _scrollBarOptions?.modalStyle?.horizontalScrollBarLeft ===\n 0 ||\n _scrollBarOptions?.modalStyle?.horizontalScrollBarLeft\n ? _scrollBarOptions.modalStyle.horizontalScrollBarLeft\n : (tableNotPinedBoundingRect?.left || 0) - 74,\n 'width.px': _scrollBarOptions?.modalStyle\n ?.horizontalScrollBarWidth\n ? _scrollBarOptions.modalStyle.horizontalScrollBarWidth\n : tableNotPinedBoundingRect?.width,\n 'margin-top.px': _scrollBarOptions?.modalStyle\n ?.horizontalScrollBarMarginTop\n ? _scrollBarOptions.modalStyle.horizontalScrollBarMarginTop\n : -15,\n }\"\n [ngClass]=\"{\n 'modal-horizontal-scroll-bar':\n _scrollBarOptions?.modalStyle?.modalScrollClassActive,\n }\"\n >\n <div\n class=\"horizontal-bar\"\n #bar\n [ngStyle]=\"{\n 'width.px': _scrollBarOptions?.modalStyle?.additionalWidth\n ? tableScrollWidth +\n _scrollBarOptions.modalStyle.additionalWidth\n : tableScrollWidth,\n }\"\n [ngClass]=\"{\n 'horizontal-bar-sticky':\n (_scrollBarOptions?.dataLength || 0) >= 23,\n }\"\n (mousedown)=\"setDraggingStart($event)\"\n (mouseup)=\"isMouseDown = false\"\n ></div>\n </div>\n }\n</div>\n", styles: ["@import\"https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap\";@import\"https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/css/bootstrap.min.css\";.ca-font-thin{font-weight:100!important}.ca-font-extra-light{font-weight:200!important}.ca-font-light{font-weight:300!important}.ca-font-regular{font-weight:400!important}.ca-font-medium{font-weight:500!important}.ca-font-semi-bold{font-weight:600!important}.ca-font-bold{font-weight:700!important}.ca-font-extra-bold{font-weight:800!important}.ca-font-black{font-weight:900!important}.pickup-delivery-popover{top:-38px!important;max-width:340px!important}.pickup-delivery-popover.bs-popover-top{top:auto!important;bottom:-38px!important}.pickup-delivery-popover.bs-popover-top .load-component .assigned-load-holder{order:3;margin-top:4px;margin-bottom:0!important}.pickup-delivery-popover.bs-popover-top .load-component .statusBar{order:2;margin-top:4px}.pickup-delivery-popover.bs-popover-top .load-component .animation-three-tabs{order:1}.gps_dropdown_popover{top:-38px;max-width:494px}.gps_dropdown_popover .popover-body{padding:0}.table-progress-popover{background-color:unset!important;margin-left:-10px}.table-progress-popover .progress-dropdown{margin-top:-6px;width:260px;height:200px;background:#2f2f2f;border-radius:3px;padding:8px;box-shadow:0 0 4px #00000026;overflow:hidden;-webkit-animation:progressAnimation .25s ease-in-out;animation:progressAnimation .25s ease-in-out}.table-progress-popover .progress-dropdown .progress-header .progress-title{font-size:18px;font-weight:600;color:#dadada}.table-progress-popover .progress-dropdown .progress-header .progress-title span{font-weight:400}.table-progress-popover .progress-dropdown .progress-header .progress-total{font-size:14px;line-height:17px;color:#dadada}.table-progress-popover .progress-dropdown .table-progress-bar-container{width:100%;height:8px;margin-top:6px;border-radius:2px;overflow:hidden}.table-progress-popover .progress-dropdown .table-progress-bar-container .table-progress-bar{height:100%}.table-progress-popover .progress-dropdown .progress-dropdown-body .progress-dual-info-container .progress-info-container{width:50%}.table-progress-popover .progress-dropdown .progress-dropdown-body .progress-info-container{margin-top:10px}.table-progress-popover .progress-dropdown .progress-dropdown-body .progress-info-container .progress-info-title{margin-bottom:2px;font-size:11px;font-weight:700;line-height:14px;color:#ffffffb2}.table-progress-popover .progress-dropdown .progress-dropdown-body .progress-info-container .progress-info-text{font-size:14px;line-height:18px;color:#dadada}.table-progress-popover .progress-dropdown.credit-dropdown{height:100px}@-webkit-keyframes progressAnimation{0%{height:0px}to{height:220px}}@keyframes progressAnimation{0%{height:0px}to{height:220px}}ngb-popover-window{padding:unset!important;border:unset!important}ngb-popover-window .popover-arrow{display:none!important}ngb-popover-window .popover-body{padding:unset!important}.dispatch-note .popover-body{position:relative;top:-4px;left:-4px}.tooltip{font-size:12px;position:relative}.tooltip.show{opacity:.83}.tooltip.fade:after,.tooltip.fade:before{transform:translateY(-10px);transition:all .15s ease-in-out}.tooltip.fade:hover:after,.tooltip.fade:hover:before{opacity:1;transform:translate(0)}.tooltip-inner{padding:4px 10px;white-space:nowrap;max-width:none;border-radius:3px}.tooltip-inner:empty{padding:0}.placeholder-delete .tooltip-inner{background-color:#f66}.placeholder-delete .arrow:before{border-top-color:#f66}.custom-popup-owners-for-flag .tooltip-inner{color:#3b3b3b;background-color:#fff;transform:translateY(126%) translate(-50%)!important;width:130px;border-radius:3px;box-shadow:0 0 3px #0003}.custom-popup-owners-for-flag .arrow{bottom:-18%;transform:rotate(180deg);left:calc(50% + 2.7rem)}.custom-popup-owners-for-flag .tooltip{opacity:.93!important;width:0}.custom-popup-owners{z-index:999}.custom-popup-owners .tooltip-inner{color:#3b3b3b;background-color:#fff;transform:translateY(132%);z-index:999;box-shadow:0 0 3px #0003}.custom-popup-owners .arrow{bottom:-20%;transform:rotate(180deg)}.custom-popup-owners .tooltip{transform:translateY(-61px)!important}.custom-popup-owners-year{z-index:999}.custom-popup-owners-year .tooltip-inner{color:#3b3b3b;background-color:#fff;transform:translateY(132%);z-index:999;box-shadow:0 0 3px #0003}.custom-popup-owners-year .arrow{bottom:-20%;transform:rotate(180deg)}.custom-popup-owners-year .tooltip{transform:translate(70px,-61px)!important}.custom-popup-owners-info .tooltip-inner{color:#3b3b3b;background-color:#fff;transform:translateY(-100%) translate(-10%);width:200px;height:36px;display:flex;justify-content:center;align-items:center;border-radius:3px;margin-top:3px;box-shadow:0 0 3px #0003}.custom-popup-owners-info .tooltip{opacity:.93;width:0}.custom-popup-owners-info .arrow{display:none}.custom-popup-owners-info #phone-inside{position:relative;right:26px;bottom:0}.custom-popup-owners-info-at .tooltip-inner{color:#3b3b3b;background-color:#fff;transform:translateY(-108%) translate(-7%);width:270px;height:36px;display:flex;justify-content:center;align-items:center;border-radius:3px;box-shadow:0 0 3px #0003}.custom-popup-owners-info-at .tooltip{opacity:1;width:0}.custom-popup-owners-info-at .arrow{display:none}.custom-popup-owners-for-tag .tooltip-inner{color:#3b3b3b;background-color:#fff;width:100px;border-radius:3px;box-shadow:0 0 3px #0003!important}.custom-popup-owners-for-tag .tooltip{top:5px!important}.custom-popup-owners-for-tag .arrow{bottom:-24%}.align-items-flex-start{justify-content:center;align-items:center}.align-items-flex-end{display:flex;justify-content:center;flex-direction:column;align-self:flex-end;align-items:flex-start}.label-add{align-self:flex-start}.fadeInLoad{animation:fadeInLoad .25s}@keyframes fadeInLoad{0%{opacity:0}to{opacity:1}}.fadeIn{opacity:1;-webkit-transition:.25s;-moz-transition:.25s;-o-transition:.25s;transition:.25s}.thisText:hover .fadeIn{opacity:0}.fadeInLoad{animation-name:example;animation-duration:.25s}@keyframes example{0%{transform:scale(.5)}to{transform:scale(1)}}.tooltip.tooltip-table-icons{left:12px!important;opacity:1}.tooltip.tooltip-table-icons .arrow{display:none!important}.tooltip.tooltip-table-icons .tooltip-inner{border-radius:0 50px 50px;background:#28529f}.tooltip.show{opacity:1;animation:fadeIn ease .5s!important;-webkit-animation:fadeIn ease .5s!important;-moz-animation:fadeIn ease .5s!important;-o-animation:fadeIn ease .5s!important;-ms-animation:fadeIn ease .5s!important}.ta-tooltip{position:absolute;font-size:12px;text-align:center;color:#fff;line-height:22px;z-index:999999!important;opacity:0;white-space:nowrap;transform:scale(.7)}.ta-tooltip.ta-tooltip-show{opacity:.85;transform:scale(1);padding:0 12px}.ta-tooltip.ta-tooltip-bottom-right,.ta-tooltip.ta-tooltip-bottom-right-corner{transform-origin:top left;border-radius:0 15px 15px}.ta-tooltip.ta-tooltip-bottom-left{transform-origin:top right;border-radius:15px 0 15px 15px}@keyframes scaleItem{0%{transform:scale(.4)}to{transform:scale(1)}}.app-ca-main-tooltip{pointer-events:none}.app-ca-main-tooltip .tooltip-inner{padding:0;background-color:transparent;pointer-events:none}.app-ca-main-tooltip .tooltip-inner .tooltip-holder{display:flex;font-size:11px;font-weight:700;border-radius:2px;padding:2px 8px;animation:scaleItem .3s;white-space:normal}.app-ca-main-tooltip .tooltip-inner .tooltip-holder:empty{padding:0}.tooltip-arrow{display:none!important}.trucks.semitruck svg path,.trucks.semisleeper svg path,.trucks.flatbed svg path,.trucks.stepdeck svg path,.trucks.lowboyrgn svg path,.trucks.chassis svg path,.trucks.conestoga svg path,.trucks.sidekit svg path,.trucks.container svg path,.trailers.semitruck svg path,.trailers.semisleeper svg path,.trailers.flatbed svg path,.trailers.stepdeck svg path,.trailers.lowboyrgn svg path,.trailers.chassis svg path,.trailers.conestoga svg path,.trailers.sidekit svg path,.trailers.container svg path{fill:#92b1f5}.trucks.boxtruck svg path,.trucks.reefertruck svg path,.trucks.cargovan svg path,.trucks.dryvan svg path,.trucks.reefer svg path,.trailers.boxtruck svg path,.trailers.reefertruck svg path,.trailers.cargovan svg path,.trailers.dryvan svg path,.trailers.reefer svg path{fill:#fbc88b}.trucks.dumptruck svg path,.trucks.cementtruck svg path,.trucks.garbagetruck svg path,.trucks.enddump svg path,.trucks.bottomdump svg path,.trucks.hopper svg path,.trucks.tanker svg path,.trucks.pneumatictanker svg path,.trailers.dumptruck svg path,.trailers.cementtruck svg path,.trailers.garbagetruck svg path,.trailers.enddump svg path,.trailers.bottomdump svg path,.trailers.hopper svg path,.trailers.tanker svg path,.trailers.pneumatictanker svg path{fill:#ed9292}.trucks.towtruck svg path,.trucks.carhauler svg path,.trucks.spotter svg path,.trucks.carhaulerstigner svg path,.trailers.towtruck svg path,.trailers.carhauler svg path,.trailers.spotter svg path,.trailers.carhaulerstigner svg path{fill:#86c9c3}.trucks .svgtext-template-text,.trailers .svgtext-template-text{color:#fff;transition:color .3s ease-in-out}.colors .black svg #droplet{fill:#6c6c6c}.colors .brown svg #droplet{fill:#a1887f}.colors .darkgreen svg #droplet{fill:#4db6a2}.colors .lightgreen svg #droplet{fill:#81c784}.colors .darkblue svg #droplet{fill:#546fd2}.colors .lightblue svg #droplet{fill:#64b5f6}.colors .gray svg #droplet{fill:#aaa}.colors .purple svg #droplet{fill:#ba68c8}.colors .gold svg #droplet{fill:#bcad79}.colors .silver svg #droplet{fill:#dadada}.colors .red svg #droplet{fill:#f96b69}.colors .pink svg #droplet{fill:#f26ec2}.colors .white svg #droplet{fill:#f1f1f1}.colors .orange svg #droplet{fill:#ff8a65}.colors .yellow svg #droplet{fill:#ffd54f}.colors:hover{transition:all .3s ease-in-out}.colors:hover .black svg #droplet{fill:#3c3c3c}.colors:hover .brown svg #droplet{fill:#8d6e63}.colors:hover .darkgreen svg #droplet{fill:#26a690}.colors:hover .lightgreen svg #droplet{fill:#66bb6a}.colors:hover .darkblue svg #droplet{fill:#304fc1}.colors:hover .lightblue svg #droplet{fill:#42a5f5}.colors:hover .gray svg #droplet{fill:#919191}.colors:hover .purple svg #droplet{fill:#ab47bc}.colors:hover .gold svg #droplet{fill:#aa9c6e}.colors:hover .silver svg #droplet{fill:#b7b7b7}.colors:hover .red svg #droplet{fill:#ef5350}.colors:hover .pink svg #droplet{fill:#fa4daa}.colors:hover .white svg #droplet{fill:#fff}.colors:hover .orange svg #droplet{fill:#ff7043}.colors:hover .yellow svg #droplet{fill:#ffca28}.text-color-black{color:#424242!important}.text-color-black::-moz-selection{background:#42424233!important;color:#424242!important}.text-color-black::selection{background:#42424233!important;color:#424242!important}.text-color-black-2{color:#2f2f2f!important}.text-color-black-2::-moz-selection{background:#2f2f2f33!important;color:#2f2f2f!important}.text-color-black-2::selection{background:#2f2f2f33!important;color:#2f2f2f!important}.text-color-muted{color:#919191!important}.text-color-muted::-moz-selection{background:#91919133!important;color:#919191!important}.text-color-muted::selection{background:#91919133!important;color:#919191!important}.text-color-green{color:#56b4ac!important}.text-color-green::-moz-selection{background:#56b4ac33!important;color:#56b4ac!important}.text-color-green::selection{background:#56b4ac33!important;color:#56b4ac!important}.text-color-blue-13{color:#6692f1!important}.text-color-blue-13::-moz-selection{background:#66921833!important;color:#6692f1!important}.text-color-blue-13::selection{background:#66921833!important;color:#6692f1!important}.text-color-blue-18{color:#3b73ed!important}.text-color-blue-18::-moz-selection{background:#3b73ed33!important;color:#3b73ed!important}.text-color-blue-18::selection{background:#3b73ed33!important;color:#3b73ed!important}.text-color-red-10{color:#e66767!important}.text-color-red-10::-moz-selection{background:#e6676733!important;color:#e66767!important}.text-color-red-10::selection{background:#e6676733!important;color:#e66767!important}.text-color-light-grey{color:#e5e5e5!important}.text-color-light-grey::-moz-selection{background:#e5e5e533!important;color:#e5e5e5!important}.text-color-light-grey::selection{background:#e5e5e533!important;color:#e5e5e5!important}.text-color-light-grey-2{color:#aaa!important}.text-color-light-grey-2::-moz-selection{background:#aaa3!important;color:#aaa!important}.text-color-light-grey-2::selection{background:#aaa3!important;color:#aaa!important}.text-color-light-grey-6{color:#ccc!important}.text-color-light-grey-6::-moz-selection{color:#ccc!important;background:#aaa3!important}.text-color-light-grey-6::selection{color:#ccc!important;background:#aaa3!important}.text-color-white{color:#dadada!important}.text-color-white::-moz-selection{color:#dadada!important;background:#fff3!important}.text-color-white::selection{color:#dadada!important;background:#fff3!important}.text-color-white-4{color:#ffffffb2!important}.text-color-white-4::-moz-selection{color:#ffffffb2!important;background:#fff3!important}.text-color-white-4::selection{color:#ffffffb2!important;background:#fff3!important}.text-color-dark-grey{color:#6c6c6c!important}.text-color-dark-grey::-moz-selection{color:#6c6c6c!important;background:#6c6c6c33!important}.text-color-dark-grey::selection{color:#6c6c6c!important;background:#6c6c6c33!important}.text-color-bw6-2{color:#6c6c6c!important}.text-color-bw6-2::-moz-selection{color:#6c6c6c!important;background:#6c6c6c33!important}.text-color-bw6-2::selection{color:#6c6c6c!important;background:#6c6c6c33!important}.text-color-bw-9{color:#dadada!important}.text-color-bw-9::-moz-selection{color:#6c6c6c!important;background:#6c6c6c33!important}.text-color-bw-9::selection{color:#6c6c6c!important;background:#6c6c6c33!important}.text-color-grey{color:#919191!important}.text-color-grey::-moz-selection{color:#919191!important;background:#91919133!important}.text-color-grey::selection{color:#919191!important;background:#91919133!important}.text-color-grey .address-text::-moz-selection,.text-color-grey .marker-bold-text::-moz-selection{color:#919191!important;background:#91919133!important}.text-color-grey .address-text::selection,.text-color-grey .marker-bold-text::selection{color:#919191!important;background:#91919133!important}.text-size-11{font-size:11px!important;line-height:14px!important}.text-size-14{font-size:14px!important;line-height:18px!important}.text-size-16{font-size:16px!important;line-height:19px!important}.text-size-18{font-size:18px!important;line-height:22px!important}.text-size-26{font-size:26px!important;line-height:32px!important}.text-size-28{font-size:28px!important;line-height:34px!important}@keyframes dropdown{0%{margin-top:20px;visibility:hidden;opacity:0}to{opacity:1;margin-top:10px;visibility:visible!important}}@keyframes dropup{0%{margin-top:-19px;visibility:hidden;opacity:0}to{margin-top:inherit;visibility:visible!important}}.svg-fill-black svg path{fill:#424242!important}.svg-fill-muted svg path{fill:#919191!important}.svg-fill-bw-9 svg path{fill:#dadada!important}.svg-fill-light-grey-2 svg path{fill:#aaa!important}.svg-fill-light-grey-6 svg path{fill:#ccc!important}.svg-fill-blue-13 svg path{fill:#6692f1!important}.svg-fill-blue-19 svg path{fill:#92b1f5!important}.svg-fill-blue-26 svg path{fill:#4dc5eb!important}.svg-hover-muted svg path{transition:all .3s ease-in-out}.svg-hover-muted:hover svg path{fill:#919191!important}.svg-hover-black svg path{transition:all .3s ease-in-out}.svg-hover-black:hover svg path{fill:#424242!important}.svg-hover-blue-15 svg path{transition:all .3s ease-in-out}.svg-hover-blue-15:hover svg path{fill:#0b49d1!important}.svg-hover-bw6-2 svg path{transition:all .3s ease-in-out}.svg-hover-bw6-2:hover svg path{fill:#6c6c6c!important}.svg-hover-trash-red svg path{transition:all .3s ease-in-out}.svg-hover-trash-red:hover svg path{fill:#ff5050!important}.svg-hover-red-14 svg path{transition:all .3s ease-in-out}.svg-hover-red-14:hover svg path{fill:#c20c0c!important}.svg-size-12 svg{width:12px;height:12px}.svg-size-14 svg{width:14px;height:14px}.svg-size-16 svg{width:16px;height:16px}.svg-size-18 svg{width:18px;height:18px}.svg-size-44-16 svg{width:44px;height:16px}*{margin:0;font-family:Montserrat,sans-serif}html{scroll-behavior:auto!important}.gm-style-iw-chr,.gm-style-iw-tc{display:none}.gm-style .gm-style-iw-c{border-radius:0}.gm-style-iw{overflow-y:auto!important;overflow-x:hidden!important}.gm-style-iw>div{overflow:visible!important}.infoWindow{overflow:hidden!important}.gm-style-iw-d,.gm-style-iw.gm-style-iw-c{max-height:350px!important}::ng-deep .popover{--bs-popover-border-width: 0;--bs-popover-body-padding-y: 0;--bs-popover-body-padding-x: 0}::ng-deep .popover .popover-arrow{display:none}.custom-scrollbar-holder{position:relative;transition:height .25s ease-in-out;scrollbar-width:none!important;-ms-overflow-style:none!important}.custom-scrollbar-holder::-webkit-scrollbar{display:none!important}.custom-scrollbar-holder ::-webkit-scrollbar-thumb,.custom-scrollbar-holder ::-webkit-scrollbar{width:1px!important;display:none!important}.custom-scrollbar-holder .overflow-unset{overflow-y:unset!important;overflow-x:unset!important}.custom-scrollbar-holder .right-bar-scroll{height:100%;position:fixed;right:0;top:0;-webkit-user-select:none;user-select:none}.custom-scrollbar-holder .right-bar-scroll .right-bar{position:absolute;right:3px;width:6px;min-height:30px;border-radius:1px;background-color:#aaa}.custom-scrollbar-holder .right-bar-scroll .right-bar:hover{background:#0000008c}.custom-scrollbar-holder .modal-horizontal-scroll-bar{height:6px;background:#eee;border-radius:2px}.custom-scrollbar-holder .horizontal-scroll-bar{width:100%;position:absolute;left:0;-webkit-user-select:none;user-select:none}.custom-scrollbar-holder .horizontal-scroll-bar .horizontal-bar{width:6px;position:relative!important;height:6px;min-width:30px;border-radius:1px;background-color:#aaa}.custom-scrollbar-holder .horizontal-scroll-bar .horizontal-bar:hover{background:#0000008c}.custom-scrollbar-holder .horizontal-scroll-bar .horizontal-bar-sticky{position:fixed;bottom:calc(0% + 14px)}\n"] }]
|
|
195
198
|
}], ctorParameters: () => [{ type: i0.NgZone }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }], propDecorators: { bar: [{
|
|
196
199
|
type: ViewChild,
|
|
197
200
|
args: ['bar', { static: false }]
|
|
@@ -202,4 +205,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
202
205
|
}], horizontalScrollHeight: [{
|
|
203
206
|
type: Input
|
|
204
207
|
}] } });
|
|
205
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2EtY3VzdG9tLXNjcm9sbGJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jYS1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9jYS1jdXN0b20tc2Nyb2xsYmFyL2NhLWN1c3RvbS1zY3JvbGxiYXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2EtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvY2EtY3VzdG9tLXNjcm9sbGJhci9jYS1jdXN0b20tc2Nyb2xsYmFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFSCxTQUFTLEVBRVQsWUFBWSxFQUNaLEtBQUssRUFJTCxNQUFNLEVBRU4sU0FBUyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRXpELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7QUFTL0IsTUFBTSxPQUFPLDBCQUEwQjtJQTZCbkMsWUFDWSxNQUFjLEVBQ2QsS0FBaUIsRUFDakIsSUFBdUI7UUFGdkIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLFVBQUssR0FBTCxLQUFLLENBQVk7UUFDakIsU0FBSSxHQUFKLElBQUksQ0FBbUI7UUE1QnpCLGdCQUFXLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFJOUQsY0FBUyxHQUFXLENBQUMsQ0FBQztRQUN0QixrQkFBYSxHQUFZLEtBQUssQ0FBQztRQUMvQixpQkFBWSxHQUFXLENBQUMsQ0FBQztRQUN6QixnQkFBVyxHQUFXLENBQUMsQ0FBQztRQUN4QixvQkFBZSxHQUFXLENBQUMs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RUFBRSxZQUFZLEVBQUUsZUFBZSxDQUFDO29JQU9SLEdBQUc7c0JBQS9DLFNBQVM7dUJBQUMsS0FBSyxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkFDekIsV0FBVztzQkFBcEIsTUFBTTtnQkFDRSxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csc0JBQXNCO3NCQUE5QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSW5wdXQsXG4gICAgTmdab25lLFxuICAgIE9uRGVzdHJveSxcbiAgICBPbkluaXQsXG4gICAgT3V0cHV0LFxuICAgIFNpbXBsZUNoYW5nZXMsXG4gICAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFmdGVyVmlld0luaXQsIE9uQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgT2JzZXJ2ZXJzTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL29ic2VydmVycyc7XG5cbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdhcHAtY2EtY3VzdG9tLXNjcm9sbGJhcicsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbRm9ybXNNb2R1bGUsIENvbW1vbk1vZHVsZSwgT2JzZXJ2ZXJzTW9kdWxlXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vY2EtY3VzdG9tLXNjcm9sbGJhci5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmw6ICcuL2NhLWN1c3RvbS1zY3JvbGxiYXIuY29tcG9uZW50LnNjc3MnLFxufSlcbmV4cG9ydCBjbGFzcyBDYUN1c3RvbVNjcm9sbGJhckNvbXBvbmVudFxuICAgIGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveVxue1xuICAgIEBWaWV3Q2hpbGQoJ2JhcicsIHsgc3RhdGljOiBmYWxzZSB9KSBwcml2YXRlIGJhciE6IEVsZW1lbnRSZWY7XG4gICAgQE91dHB1dCgpIHNjcm9sbEV2ZW50OiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgICBASW5wdXQoKSBzY3JvbGxCYXJPcHRpb25zOiBhbnk7XG4gICAgQElucHV0KCkgaG9yaXpvbnRhbFNjcm9sbEhlaWdodCE6IG51bWJlcjtcblxuICAgIHNjcm9sbFRvcDogbnVtYmVyID0gNTtcbiAgICBzaG93U2Nyb2xsYmFyOiBib29sZWFuID0gZmFsc2U7XG4gICAgc2Nyb2xsSGVpZ2h0OiBudW1iZXIgPSAwO1xuICAgIHNjcm9sbFJhdGlvOiBudW1iZXIgPSAwO1xuICAgIHNjcm9sbFJhdGlvRnVsbDogbnVtYmVyID0gMDtcblxuICAgIGlzTW91c2VEb3duOiBib29sZWFuID0gZmFsc2U7XG4gICAgYmFyQ2xpY2tQb3NpdGlvbjogbnVtYmVyID0gMDtcbiAgICBiYXJDbGlja1Jlc3RIZWlnaHQ6IG51bWJlciA9IDA7XG4gICAgcHJpdmF0ZSBkZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gICAgY2FsY3VsYXRlU2l6ZUhlaWdodFRpbWVyOiBhbnk7XG5cbiAgICAvLyBUYWJsZSBIb3Jpem9udGFsIFNjcm9sbFxuICAgIHRhYmxlTm90UGluZWRDb250YWluZXI6IGFueTtcbiAgICB0YWJsZU5vdFBpbmVkQm91bmRpbmdSZWN0OiBhbnk7XG4gICAgdGFibGVCYXJDbGlja1Bvc2l0aW9uOiBudW1iZXIgPSAwO1xuICAgIHRhYmxlQmFyQ2xpY2tSZXN0V2lkdGg6IG51bWJlciA9IDA7XG4gICAgdGFibGVTY3JvbGxSYXRpbzogbnVtYmVyID0gMDtcbiAgICB0YWJsZVNjcm9sbFJhdGlvRnVsbDogbnVtYmVyID0gMDtcbiAgICB0YWJsZVNjcm9sbFdpZHRoOiBudW1iZXIgPSAwO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgbmdab25lOiBOZ1pvbmUsXG4gICAgICAgIHByaXZhdGUgZWxSZWY6IEVsZW1lbnRSZWYsXG4gICAgICAgIHByaXZhdGUgY2huZzogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgICApIHt9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignbW91c2V1cCcsIHRoaXMub25Nb3VzZVVwSGFuZGxlcik7XG5cbiAgICAgICAgICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlbW92ZScsIHRoaXMub25Nb3VzZU1vdmVIYW5kbGVyKTtcblxuICAgICAgICAgICAgdGhpcy5lbFJlZi5uYXRpdmVFbGVtZW50LmNoaWxkcmVuWzBdLmFkZEV2ZW50TGlzdGVuZXIoXG4gICAgICAgICAgICAgICAgJ3Njcm9sbCcsXG4gICAgICAgICAgICAgICAgdGhpcy5zZXRTY3JvbGxFdmVudFxuICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3Jlc2l6ZScsIHRoaXMub25SZXNpemVIYW5kbGVyKTtcblxuICAgICAgICAgICAgdGhpcy5jYWxjdWxhdGVCYXJTaXplQW5kUG9zaXRpb24oXG4gICAgICAgICAgICAgICAgdGhpcy5lbFJlZi5uYXRpdmVFbGVtZW50LmNoaWxkcmVuWzBdXG4gICAgICAgICAgICApO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICAgICFjaGFuZ2VzPy5bJ2hvcml6b250YWxTY3JvbGxIZWlnaHQnXT8uZmlyc3RDaGFuZ2UgJiZcbiAgICAgICAgICAgIGNoYW5nZXM/LlsnaG9yaXpvbnRhbFNjcm9sbEhlaWdodCddXG4gICAgICAgICkge1xuICAgICAgICAgICAgdGhpcy5ob3Jpem9udGFsU2Nyb2xsSGVpZ2h0ID1cbiAgICAgICAgICAgICAgICBjaGFuZ2VzWydob3Jpem9udGFsU2Nyb2xsSGVpZ2h0J10uY3VycmVudFZhbHVlO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgIWNoYW5nZXM/Llsnc2Nyb2xsQmFyT3B0aW9ucyddPy5maXJzdENoYW5nZSAmJlxuICAgICAgICAgICAgY2hhbmdlcz8uWydzY3JvbGxCYXJPcHRpb25zJ11cbiAgICAgICAgKSB7XG4gICAgICAgICAgICB0aGlzLnNjcm9sbEJhck9wdGlvbnMgPSBjaGFuZ2VzWydzY3JvbGxCYXJPcHRpb25zJ10uY3VycmVudFZhbHVlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICAvLyBUYWJsZSBTY3JvbGxcbiAgICAgICAgaWYgKHRoaXMuc2Nyb2xsQmFyT3B0aW9ucy5zaG93SG9yaXpvbnRhbFNjcm9sbEJhcikge1xuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy50YWJsZU5vdFBpbmVkQ29udGFpbmVyID1cbiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvcignLm5vdC1waW5lZC1jb2x1bW5zJyk7XG5cbiAgICAgICAgICAgICAgICB0aGlzLnRhYmxlTm90UGluZWRCb3VuZGluZ1JlY3QgPVxuICAgICAgICAgICAgICAgICAgICB0aGlzLnRhYmxlTm90UGluZWRDb250YWluZXI/LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpXG4gICAgICAgICAgICAgICAgICAgICAgICA/IHRoaXMudGFibGVOb3RQaW5lZENvbnRhaW5lci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKVxuICAgICAgICAgICAgICAgICAgICAgICAgOiBudWxsO1xuICAgICAgICAgICAgfSwgMTAwKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBzZXRTY3JvbGxFdmVudCA9IChlOiBhbnkpID0+IHtcbiAgICAgICAgaWYgKCF0aGlzLmlzTW91c2VEb3duKSB7XG4gICAgICAgICAgICB0aGlzLmNhbGN1bGF0ZUJhclNpemVBbmRQb3NpdGlvbihcbiAgICAgICAgICAgICAgICB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQuY2hpbGRyZW5bMF1cbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgc2V0RHJhZ2dpbmdTdGFydChlOiBNb3VzZUV2ZW50KSB7XG4gICAgICAgIGNvbnN0IHN0eWxlID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUodGhpcy5iYXIubmF0aXZlRWxlbWVudCk7XG4gICAgICAgIGNvbnN0IG1hdHJpeCA9IG5ldyBET01NYXRyaXhSZWFkT25seShzdHlsZS50cmFuc2Zvcm0pO1xuXG4gICAgICAgIHRoaXMuYmFyQ2xpY2tQb3NpdGlvbiA9IGUuY2xpZW50WSAtIG1hdHJpeC5tNDI7XG4gICAgICAgIHRoaXMuYmFyQ2xpY2tSZXN0SGVpZ2h0ID0gdGhpcy5zY3JvbGxIZWlnaHQgLSB0aGlzLmJhckNsaWNrUG9zaXRpb247XG4gICAgICAgIHRoaXMuaXNNb3VzZURvd24gPSB0cnVlO1xuXG4gICAgICAgIC8vIFRhYmxlIFNjcm9sbFxuICAgICAgICB0aGlzLnRhYmxlQmFyQ2xpY2tQb3NpdGlvbiA9IGUuY2xpZW50WCAtIG1hdHJpeC5tNDE7XG4gICAgICAgIHRoaXMudGFibGVCYXJDbGlja1Jlc3RXaWR0aCA9XG4gICAgICAgICAgICB0aGlzLnRhYmxlU2Nyb2xsV2lkdGggLSB0aGlzLnRhYmxlQmFyQ2xpY2tQb3NpdGlvbjtcbiAgICB9XG5cbiAgICBjYWxjdWxhdGVCYXJTaXplQW5kUG9zaXRpb24oZWxlbTogYW55LCBwYWdlSGVpZ2h0PzogbnVtYmVyKSB7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgLy8gVGFibGUgU2Nyb2xsXG4gICAgICAgICAgICBpZiAodGhpcy5zY3JvbGxCYXJPcHRpb25zLnNob3dIb3Jpem9udGFsU2Nyb2xsQmFyKSB7XG4gICAgICAgICAgICAgICAgY29uc3Qgc2Nyb2xsV3JhcHBlciA9XG4gICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy5ub3QtcGluZWQtY29sdW1ucycpO1xuXG4gICAgICAgICAgICAgICAgdGhpcy50YWJsZU5vdFBpbmVkQm91bmRpbmdSZWN0ID1cbiAgICAgICAgICAgICAgICAgICAgc2Nyb2xsV3JhcHBlcj8uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KClcbiAgICAgICAgICAgICAgICAgICAgICAgID8gc2Nyb2xsV3JhcHBlci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKVxuICAgICAgICAgICAgICAgICAgICAgICAgOiBudWxsO1xuXG4gICAgICAgICAgICAgICAgY29uc3QgdGFibGVGdWxsV2lkdGggPSBzY3JvbGxXcmFwcGVyPy5zY3JvbGxXaWR0aFxuICAgICAgICAgICAgICAgICAgICA/IHNjcm9sbFdyYXBwZXIuc2Nyb2xsV2lkdGhcbiAgICAgICAgICAgICAgICAgICAgOiAwO1xuXG4gICAgICAgICAgICAgICAgY29uc3QgdGFibGVWaXNpYmxlV2lkdGggPSBzY3JvbGxXcmFwcGVyPy5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKVxuICAgICAgICAgICAgICAgICAgICAud2lkdGhcbiAgICAgICAgICAgICAgICAgICAgPyBNYXRoLmNlaWwoc2Nyb2xsV3JhcHBlci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aClcbiAgICAgICAgICAgICAgICAgICAgOiAwO1xuXG4gICAgICAgICAgICAgICAgdGhpcy50YWJsZVNjcm9sbFJhdGlvID0gdGFibGVWaXNpYmxlV2lkdGggLyB0YWJsZUZ1bGxXaWR0aDtcblxuICAgICAgICAgICAgICAgIHRoaXMudGFibGVTY3JvbGxSYXRpb0Z1bGwgPSB0YWJsZUZ1bGxXaWR0aCAvIHRhYmxlVmlzaWJsZVdpZHRoO1xuXG4gICAgICAgICAgICAgICAgdGhpcy50YWJsZVNjcm9sbFdpZHRoID1cbiAgICAgICAgICAgICAgICAgICAgdGhpcy50YWJsZVNjcm9sbFJhdGlvICogdGFibGVWaXNpYmxlV2lkdGg7XG5cbiAgICAgICAgICAgICAgICBpZiAodGFibGVGdWxsV2lkdGggPD0gdGFibGVWaXNpYmxlV2lkdGgpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zaG93U2Nyb2xsYmFyID0gZmFsc2U7XG5cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jaG5nLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNob3dTY3JvbGxiYXIgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmNobmcuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHRoaXMuc2Nyb2xsRXZlbnQuZW1pdCh7XG4gICAgICAgICAgICAgICAgICAgIGV2ZW50QWN0aW9uOiAnaXNTY3JvbGxTaG93aW5nJyxcbiAgICAgICAgICAgICAgICAgICAgaXNTY3JvbGxCYXJTaG93aW5nOiB0aGlzLnNob3dTY3JvbGxiYXIsXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBSZWd1bGFyIFNjcm9sbFxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgY29uc3QgY29udGVudF9oZWlnaHQgPVxuICAgICAgICAgICAgICAgICAgICB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQuY2hpbGRyZW5bMF0uc2Nyb2xsSGVpZ2h0IC0gMTtcbiAgICAgICAgICAgICAgICBjb25zdCB2aXNpYmxlX2hlaWdodCA9IHdpbmRvdy5pbm5lckhlaWdodDtcblxuICAgICAgICAgICAgICAgIGlmIChjb250ZW50X2hlaWdodCA8PSB2aXNpYmxlX2hlaWdodCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNob3dTY3JvbGxiYXIgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jaG5nLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2hvd1Njcm9sbGJhciA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY2huZy5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgdGhpcy5zY3JvbGxSYXRpbyA9IHZpc2libGVfaGVpZ2h0IC8gY29udGVudF9oZWlnaHQ7XG4gICAgICAgICAgICAgICAgdGhpcy5zY3JvbGxSYXRpb0Z1bGwgPSBjb250ZW50X2hlaWdodCAvIHZpc2libGVfaGVpZ2h0O1xuICAgICAgICAgICAgICAgIHRoaXMuc2Nyb2xsVG9wID0gZWxlbS5zY3JvbGxUb3AgKiB0aGlzLnNjcm9sbFJhdGlvO1xuXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuYmFyKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYmFyLm5hdGl2ZUVsZW1lbnQuc3R5bGUudHJhbnNmb3JtID0gYHRyYW5zbGF0ZVkoJHt0aGlzLnNjcm9sbFRvcH1weClgO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHRoaXMuc2Nyb2xsSGVpZ2h0ID0gdGhpcy5zY3JvbGxSYXRpbyAqIHZpc2libGVfaGVpZ2h0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0aGlzLmNobmcuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICB9LCAxMDApO1xuICAgIH1cblxuICAgIG9uTW91c2VVcEhhbmRsZXIgPSAoKSA9PiB7XG4gICAgICAgIHRoaXMuaXNNb3VzZURvd24gPSBmYWxzZTtcbiAgICB9O1xuXG4gICAgcmVzaXplSGFuZGxlckNvdW50OiBhbnk7XG4gICAgb25SZXNpemVIYW5kbGVyID0gKCkgPT4ge1xuICAgICAgICBpZiAoIXRoaXMuaXNNb3VzZURvd24pIHtcbiAgICAgICAgICAgIGNsZWFyVGltZW91dCh0aGlzLnJlc2l6ZUhhbmRsZXJDb3VudCk7XG4gICAgICAgICAgICB0aGlzLnJlc2l6ZUhhbmRsZXJDb3VudCA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuY2FsY3VsYXRlQmFyU2l6ZUFuZFBvc2l0aW9uKFxuICAgICAgICAgICAgICAgICAgICB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQuY2hpbGRyZW5bMF1cbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfSwgMTUwKTtcbiAgICAgICAgfVxuICAgIH07XG5cbiAgICBvbk1vdXNlTW92ZUhhbmRsZXIgPSAoZTogYW55KSA9PiB7XG4gICAgICAgIGlmICh0aGlzLmlzTW91c2VEb3duKSB7XG4gICAgICAgICAgICAvLyBSZWd1bGFyIFNjcm9sbFxuICAgICAgICAgICAgaWYgKHRoaXMuc2Nyb2xsQmFyT3B0aW9ucy5zaG93VmVydGljYWxTY3JvbGxCYXIpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBvZmZzZXRCYXIgPSBlLmNsaWVudFkgLSB0aGlzLmJhckNsaWNrUG9zaXRpb247XG4gICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICBvZmZzZXRCYXIgPiAtMSAmJlxuICAgICAgICAgICAgICAgICAgICBlLmNsaWVudFkgKyB0aGlzLmJhckNsaWNrUmVzdEhlaWdodCA8IHdpbmRvdy5pbm5lckhlaWdodFxuICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmJhci5uYXRpdmVFbGVtZW50LnN0eWxlLnRyYW5zZm9ybSA9IGB0cmFuc2xhdGVZKCR7b2Zmc2V0QmFyfXB4KWA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudC5jaGlsZHJlblswXS5zY3JvbGxUb3AgPVxuICAgICAgICAgICAgICAgICAgICAoZS5jbGllbnRZIC0gdGhpcy5iYXJDbGlja1Bvc2l0aW9uKSAqIHRoaXMuc2Nyb2xsUmF0aW9GdWxsO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gVGFibGUgU2Nyb2xsXG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBsZXQgb2Zmc2V0QmFyID0gZS5jbGllbnRYIC0gdGhpcy50YWJsZUJhckNsaWNrUG9zaXRpb247XG4gICAgICAgICAgICAgICAgY29uc3QgbWF4V2lkdGggPSB0aGlzLnRhYmxlTm90UGluZWRCb3VuZGluZ1JlY3Qud2lkdGg7XG5cbiAgICAgICAgICAgICAgICBvZmZzZXRCYXIgPSBvZmZzZXRCYXIgPCAwID8gMCA6IG9mZnNldEJhcjtcbiAgICAgICAgICAgICAgICBvZmZzZXRCYXIgPVxuICAgICAgICAgICAgICAgICAgICBlLmNsaWVudFggKyB0aGlzLnRhYmxlQmFyQ2xpY2tSZXN0V2lkdGggPiBtYXhXaWR0aFxuICAgICAgICAgICAgICAgICAgICAgICAgPyBtYXhXaWR0aCAtIHRoaXMudGFibGVTY3JvbGxXaWR0aFxuICAgICAgICAgICAgICAgICAgICAgICAgOiBvZmZzZXRCYXI7XG5cbiAgICAgICAgICAgICAgICB0aGlzLmJhci5uYXRpdmVFbGVtZW50LnN0eWxlLnRyYW5zZm9ybSA9IGB0cmFuc2xhdGVYKCR7b2Zmc2V0QmFyfXB4KWA7XG5cbiAgICAgICAgICAgICAgICB0aGlzLnNjcm9sbEV2ZW50LmVtaXQoe1xuICAgICAgICAgICAgICAgICAgICBldmVudEFjdGlvbjogJ3Njcm9sbGluZycsXG4gICAgICAgICAgICAgICAgICAgIHNjcm9sbFBvc2l0aW9uOiBvZmZzZXRCYXIgKiB0aGlzLnRhYmxlU2Nyb2xsUmF0aW9GdWxsLFxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfTtcblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdtb3VzZXVwJywgdGhpcy5vbk1vdXNlVXBIYW5kbGVyKTtcbiAgICAgICAgZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignbW91c2Vtb3ZlJywgdGhpcy5vbk1vdXNlTW92ZUhhbmRsZXIpO1xuICAgICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigncmVzaXplJywgdGhpcy5vblJlc2l6ZUhhbmRsZXIpO1xuICAgICAgICB0aGlzLmRlc3Ryb3kkLm5leHQoKTtcbiAgICAgICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xuICAgIH1cblxuICAgIHByb2plY3RDb250ZW50Q2hhbmdlZChlOiBhbnkpIHtcbiAgICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuY2FsY3VsYXRlU2l6ZUhlaWdodFRpbWVyKTtcbiAgICAgICAgdGhpcy5jYWxjdWxhdGVTaXplSGVpZ2h0VGltZXIgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuY2FsY3VsYXRlQmFyU2l6ZUFuZFBvc2l0aW9uKFxuICAgICAgICAgICAgICAgIHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudC5jaGlsZHJlblswXVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfSwgMTAwKTtcbiAgICB9XG59XG4iLCI8ZGl2XG4gICAgY2xhc3M9XCJjdXN0b20tc2Nyb2xsYmFyLWhvbGRlclwiXG4gICAgI2NvbnRlbnRIb2xkZXJcbiAgICAoY2RrT2JzZXJ2ZUNvbnRlbnQpPVwicHJvamVjdENvbnRlbnRDaGFuZ2VkKCRldmVudClcIlxuICAgIFtjbGFzcy5hY3RpdmVUb29sYmFyXT1cInNob3dTY3JvbGxiYXJcIlxuICAgIFtuZ1N0eWxlXT1cIntcbiAgICAgICAgaGVpZ2h0OiBzY3JvbGxCYXJPcHRpb25zLnNob3dIb3Jpem9udGFsU2Nyb2xsQmFyXG4gICAgICAgICAgICA/IGhvcml6b250YWxTY3JvbGxIZWlnaHQgKyAncHgnXG4gICAgICAgICAgICA6IDEwMCArICd2aCcsXG4gICAgICAgICdvdmVyZmxvdy15Jzogc2Nyb2xsQmFyT3B0aW9ucy5zaG93SG9yaXpvbnRhbFNjcm9sbEJhclxuICAgICAgICAgICAgPyAndmlzaWJsZSdcbiAgICAgICAgICAgIDogJ2F1dG8nLFxuICAgIH1cIlxuPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICA8IS0tIFZlcnRpY2FsIFNjcm9sbCBCYXIgLS0+XG4gICAgPGRpdlxuICAgICAgICBjbGFzcz1cInJpZ2h0LWJhci1zY3JvbGxcIlxuICAgICAgICAqbmdJZj1cInNob3dTY3JvbGxiYXIgJiYgc2Nyb2xsQmFyT3B0aW9ucy5zaG93VmVydGljYWxTY3JvbGxCYXJcIlxuICAgID5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgY2xhc3M9XCJyaWdodC1iYXJcIlxuICAgICAgICAgICAgI2JhclxuICAgICAgICAgICAgW25nU3R5bGVdPVwieyBoZWlnaHQ6IHNjcm9sbEhlaWdodCArICdweCcgfVwiXG4gICAgICAgICAgICAobW91c2Vkb3duKT1cInNldERyYWdnaW5nU3RhcnQoJGV2ZW50KVwiXG4gICAgICAgICAgICAobW91c2V1cCk9XCJpc01vdXNlRG93biA9IGZhbHNlXCJcbiAgICAgICAgPjwvZGl2PlxuICAgIDwvZGl2PlxuXG4gICAgPCEtLSBIb3Jpem9udGFsIFNjcm9sbCBCYXIgLS0+XG4gICAgPGRpdlxuICAgICAgICBjbGFzcz1cImhvcml6b250YWwtc2Nyb2xsLWJhclwiXG4gICAgICAgIFtuZ1N0eWxlXT1cIntcbiAgICAgICAgICAgICdsZWZ0LnB4JzpcbiAgICAgICAgICAgICAgICBzY3JvbGxCYXJPcHRpb25zPy5tb2RhbFN0eWxlPy5ob3Jpem9udGFsU2Nyb2xsQmFyTGVmdCA9PT0gMCB8fFxuICAgICAgICAgICAgICAgIHNjcm9sbEJhck9wdGlvbnM/Lm1vZGFsU3R5bGU/Lmhvcml6b250YWxTY3JvbGxCYXJMZWZ0XG4gICAgICAgICAgICAgICAgICAgID8gc2Nyb2xsQmFyT3B0aW9ucy5tb2RhbFN0eWxlLmhvcml6b250YWxTY3JvbGxCYXJMZWZ0XG4gICAgICAgICAgICAgICAgICAgIDogdGFibGVOb3RQaW5lZEJvdW5kaW5nUmVjdD8ubGVmdCAtIDc0LFxuICAgICAgICAgICAgJ3dpZHRoLnB4Jzogc2Nyb2xsQmFyT3B0aW9ucz8ubW9kYWxTdHlsZT8uaG9yaXpvbnRhbFNjcm9sbEJhcldpZHRoXG4gICAgICAgICAgICAgICAgPyBzY3JvbGxCYXJPcHRpb25zLm1vZGFsU3R5bGUuaG9yaXpvbnRhbFNjcm9sbEJhcldpZHRoXG4gICAgICAgICAgICAgICAgOiB0YWJsZU5vdFBpbmVkQm91bmRpbmdSZWN0Py53aWR0aCxcbiAgICAgICAgICAgICdtYXJnaW4tdG9wLnB4Jzogc2Nyb2xsQmFyT3B0aW9ucz8ubW9kYWxTdHlsZVxuICAgICAgICAgICAgICAgID8uaG9yaXpvbnRhbFNjcm9sbEJhck1hcmdpblRvcFxuICAgICAgICAgICAgICAgID8gc2Nyb2xsQmFyT3B0aW9ucy5tb2RhbFN0eWxlLmhvcml6b250YWxTY3JvbGxCYXJNYXJnaW5Ub3BcbiAgICAgICAgICAgICAgICA6IC0xNSxcbiAgICAgICAgfVwiXG4gICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAgICdtb2RhbC1ob3Jpem9udGFsLXNjcm9sbC1iYXInOlxuICAgICAgICAgICAgICAgIHNjcm9sbEJhck9wdGlvbnM/Lm1vZGFsU3R5bGU/Lm1vZGFsU2Nyb2xsQ2xhc3NBY3RpdmUsXG4gICAgICAgIH1cIlxuICAgICAgICAqbmdJZj1cInNob3dTY3JvbGxiYXIgJiYgc2Nyb2xsQmFyT3B0aW9ucy5zaG93SG9yaXpvbnRhbFNjcm9sbEJhclwiXG4gICAgPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzcz1cImhvcml6b250YWwtYmFyXCJcbiAgICAgICAgICAgICNiYXJcbiAgICAgICAgICAgIFtuZ1N0eWxlXT1cIntcbiAgICAgICAgICAgICAgICAnd2lkdGgucHgnOiBzY3JvbGxCYXJPcHRpb25zPy5tb2RhbFN0eWxlPy5hZGRpdGlvbmFsV2lkdGhcbiAgICAgICAgICAgICAgICAgICAgPyB0YWJsZVNjcm9sbFdpZHRoICtcbiAgICAgICAgICAgICAgICAgICAgICBzY3JvbGxCYXJPcHRpb25zLm1vZGFsU3R5bGUuYWRkaXRpb25hbFdpZHRoXG4gICAgICAgICAgICAgICAgICAgIDogdGFibGVTY3JvbGxXaWR0aCxcbiAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgICAgICdob3Jpem9udGFsLWJhci1zdGlja3knOiBzY3JvbGxCYXJPcHRpb25zLmRhdGFMZW5ndGggPj0gMjMsXG4gICAgICAgICAgICB9XCJcbiAgICAgICAgICAgIChtb3VzZWRvd24pPVwic2V0RHJhZ2dpbmdTdGFydCgkZXZlbnQpXCJcbiAgICAgICAgICAgIChtb3VzZXVwKT1cImlzTW91c2VEb3duID0gZmFsc2VcIlxuICAgICAgICA+PC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
208
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2EtY3VzdG9tLXNjcm9sbGJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jYS1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9jYS1jdXN0b20tc2Nyb2xsYmFyL2NhLWN1c3RvbS1zY3JvbGxiYXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2EtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvY2EtY3VzdG9tLXNjcm9sbGJhci9jYS1jdXN0b20tc2Nyb2xsYmFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFSCxTQUFTLEVBRVQsWUFBWSxFQUNaLEtBQUssRUFJTCxNQUFNLEVBQ04sU0FBUyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFL0IsVUFBVTtBQUNWLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBS3pELFFBQVE7QUFDUixPQUFPLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sU0FBUyxDQUFDOzs7O0FBU3ZELE1BQU0sT0FBTywwQkFBMEI7SUFLbkMsSUFBYSxnQkFBZ0IsQ0FBQyxLQUF1QjtRQUNqRCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsS0FBSyxDQUFDO0lBQ25DLENBQUM7SUFDRCxJQUFhLHNCQUFzQixDQUFDLEtBQWE7UUFDN0MsSUFBSSxDQUFDLHVCQUF1QixHQUFHLEtBQUssQ0FBQztJQUN6QyxDQUFDO0lBNEJELFlBQ1ksTUFBYyxFQUNkLEtBQWlCLEVBQ2pCLEdBQXNCO1FBRnRCLFdBQU0sR0FBTixNQUFN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QzdCLENBQUM7K0dBcFBRLDBCQUEwQjttR0FBMUIsMEJBQTBCLDRUQ2pDdkMsd3hGQXdFQSwwNmpCRDNDYyxXQUFXLDhCQUFFLFlBQVksaU5BQUUsZUFBZTs7NEZBSTNDLDBCQUEwQjtrQkFQdEMsU0FBUzsrQkFDSSx5QkFBeUIsY0FDdkIsSUFBSSxXQUNQLENBQUMsV0FBVyxFQUFFLFlBQVksRUFBRSxlQUFlLENBQUM7b0lBT1IsR0FBRztzQkFBL0MsU0FBUzt1QkFBQyxLQUFLLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQUN6QixXQUFXO3NCQUFwQixNQUFNO2dCQUNNLGdCQUFnQjtzQkFBNUIsS0FBSztnQkFHTyxzQkFBc0I7c0JBQWxDLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBJbnB1dCxcbiAgICBOZ1pvbmUsXG4gICAgT25EZXN0cm95LFxuICAgIE9uSW5pdCxcbiAgICBPdXRwdXQsXG4gICAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFmdGVyVmlld0luaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcblxuLy8gbW9kdWxlc1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgT2JzZXJ2ZXJzTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL29ic2VydmVycyc7XG5cbi8vIG1vZGVsc1xuaW1wb3J0IHsgU2Nyb2xsQmFyT3B0aW9ucywgU2Nyb2xsRXZlbnQgfSBmcm9tICcuL21vZGVscyc7XG5cbi8vIGVudW1zXG5pbXBvcnQgeyBFdmVudFR5cGUsIFNjcm9sbEV2ZW50QWN0aW9uIH0gZnJvbSAnLi9lbnVtcyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYXBwLWNhLWN1c3RvbS1zY3JvbGxiYXInLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW0Zvcm1zTW9kdWxlLCBDb21tb25Nb2R1bGUsIE9ic2VydmVyc01vZHVsZV0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL2NhLWN1c3RvbS1zY3JvbGxiYXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsOiAnLi9jYS1jdXN0b20tc2Nyb2xsYmFyLmNvbXBvbmVudC5zY3NzJyxcbn0pXG5leHBvcnQgY2xhc3MgQ2FDdXN0b21TY3JvbGxiYXJDb21wb25lbnRcbiAgICBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95XG57XG4gICAgQFZpZXdDaGlsZCgnYmFyJywgeyBzdGF0aWM6IGZhbHNlIH0pIHByaXZhdGUgYmFyITogRWxlbWVudFJlZjtcbiAgICBAT3V0cHV0KCkgc2Nyb2xsRXZlbnQ6IEV2ZW50RW1pdHRlcjxTY3JvbGxFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gICAgQElucHV0KCkgc2V0IHNjcm9sbEJhck9wdGlvbnModmFsdWU6IFNjcm9sbEJhck9wdGlvbnMpIHtcbiAgICAgICAgdGhpcy5fc2Nyb2xsQmFyT3B0aW9ucyA9IHZhbHVlO1xuICAgIH1cbiAgICBASW5wdXQoKSBzZXQgaG9yaXpvbnRhbFNjcm9sbEhlaWdodCh2YWx1ZTogbnVtYmVyKSB7XG4gICAgICAgIHRoaXMuX2hvcml6b250YWxTY3JvbGxIZWlnaHQgPSB2YWx1ZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgX3Njcm9sbEJhck9wdGlvbnMhOiBTY3JvbGxCYXJPcHRpb25zO1xuICAgIHB1YmxpYyBfaG9yaXpvbnRhbFNjcm9sbEhlaWdodCE6IG51bWJlcjtcblxuICAgIHByaXZhdGUgc2Nyb2xsVG9wOiBudW1iZXIgPSA1O1xuICAgIHB1YmxpYyBzaG93U2Nyb2xsYmFyOiBib29sZWFuID0gZmFsc2U7XG4gICAgcHVibGljIHNjcm9sbEhlaWdodDogbnVtYmVyID0gMDtcbiAgICBwcml2YXRlIHNjcm9sbFJhdGlvOiBudW1iZXIgPSAwO1xuICAgIHByaXZhdGUgc2Nyb2xsUmF0aW9GdWxsOiBudW1iZXIgPSAwO1xuXG4gICAgcHVibGljIGlzTW91c2VEb3duOiBib29sZWFuID0gZmFsc2U7XG4gICAgcHJpdmF0ZSBiYXJDbGlja1Bvc2l0aW9uOiBudW1iZXIgPSAwO1xuICAgIHByaXZhdGUgYmFyQ2xpY2tSZXN0SGVpZ2h0OiBudW1iZXIgPSAwO1xuICAgIHByaXZhdGUgZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICAgIHByaXZhdGUgY2FsY3VsYXRlU2l6ZUhlaWdodFRpbWVyPzogUmV0dXJuVHlwZTx0eXBlb2Ygc2V0VGltZW91dD47XG5cbiAgICAvLyBUYWJsZSBIb3Jpem9udGFsIFNjcm9sbFxuICAgIHByaXZhdGUgdGFibGVOb3RQaW5lZENvbnRhaW5lcjogSFRNTERpdkVsZW1lbnQgfCBudWxsID0gbnVsbDtcbiAgICBwdWJsaWMgdGFibGVOb3RQaW5lZEJvdW5kaW5nUmVjdDogRE9NUmVjdCB8IG51bGwgPSBudWxsO1xuICAgIHByaXZhdGUgdGFibGVCYXJDbGlja1Bvc2l0aW9uOiBudW1iZXIgPSAwO1xuICAgIHByaXZhdGUgdGFibGVCYXJDbGlja1Jlc3RXaWR0aDogbnVtYmVyID0gMDtcbiAgICBwcml2YXRlIHRhYmxlU2Nyb2xsUmF0aW86IG51bWJlciA9IDA7XG4gICAgcHJpdmF0ZSB0YWJsZVNjcm9sbFJhdGlvRnVsbDogbnVtYmVyID0gMDtcbiAgICBwdWJsaWMgdGFibGVTY3JvbGxXaWR0aDogbnVtYmVyID0gMDtcblxuICAgIHByaXZhdGUgcmVzaXplSGFuZGxlckNvdW50OiBudW1iZXIgfCBudWxsID0gbnVsbDtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIG5nWm9uZTogTmdab25lLFxuICAgICAgICBwcml2YXRlIGVsUmVmOiBFbGVtZW50UmVmLFxuICAgICAgICBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgICApIHt9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5pbml0aWFsaXplRXZlbnRMaXN0ZW5lcnMoKTtcbiAgICAgICAgICAgIHRoaXMuY2FsY3VsYXRlQmFyU2l6ZUFuZFBvc2l0aW9uKFxuICAgICAgICAgICAgICAgIHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudC5jaGlsZHJlblswXVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5fc2Nyb2xsQmFyT3B0aW9ucy5zaG93SG9yaXpvbnRhbFNjcm9sbEJhcikge1xuICAgICAgICAgICAgdGhpcy5pbml0aWFsaXplVGFibGVTY3JvbGwoKTtcbiAgICAgICAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgaW5pdGlhbGl6ZUV2ZW50TGlzdGVuZXJzKCk6IHZvaWQge1xuICAgICAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKEV2ZW50VHlwZS5NT1VTRV9VUCwgdGhpcy5vbk1vdXNlVXBIYW5kbGVyKTtcbiAgICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcihcbiAgICAgICAgICAgIEV2ZW50VHlwZS5NT1VTRV9NT1ZFLFxuICAgICAgICAgICAgdGhpcy5vbk1vdXNlTW92ZUhhbmRsZXJcbiAgICAgICAgKTtcblxuICAgICAgICB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQuY2hpbGRyZW5bMF0uYWRkRXZlbnRMaXN0ZW5lcihcbiAgICAgICAgICAgIEV2ZW50VHlwZS5TQ1JPTEwsXG4gICAgICAgICAgICB0aGlzLnNldFNjcm9sbEV2ZW50XG4gICAgICAgICk7XG5cbiAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoRXZlbnRUeXBlLlJFU0laRSwgdGhpcy5vblJlc2l6ZUhhbmRsZXIpO1xuICAgIH1cblxuICAgIHByaXZhdGUgaW5pdGlhbGl6ZVRhYmxlU2Nyb2xsKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnRhYmxlTm90UGluZWRDb250YWluZXIgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKFxuICAgICAgICAgICAgJy5ub3QtcGluZWQtY29sdW1ucydcbiAgICAgICAgKSBhcyBIVE1MRGl2RWxlbWVudCB8IG51bGw7XG5cbiAgICAgICAgdGhpcy50YWJsZU5vdFBpbmVkQm91bmRpbmdSZWN0ID1cbiAgICAgICAgICAgIHRoaXMudGFibGVOb3RQaW5lZENvbnRhaW5lcj8uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkgfHwgbnVsbDtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldFNjcm9sbEV2ZW50ID0gKCkgPT4ge1xuICAgICAgICBpZiAoIXRoaXMuaXNNb3VzZURvd24pIHtcbiAgICAgICAgICAgIHRoaXMuY2FsY3VsYXRlQmFyU2l6ZUFuZFBvc2l0aW9uKFxuICAgICAgICAgICAgICAgIHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudC5jaGlsZHJlblswXVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgIH07XG5cbiAgICBwdWJsaWMgc2V0RHJhZ2dpbmdTdGFydChldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xuICAgICAgICBjb25zdCBzdHlsZSA9IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHRoaXMuYmFyLm5hdGl2ZUVsZW1lbnQpO1xuICAgICAgICBjb25zdCBtYXRyaXggPSBuZXcgRE9NTWF0cml4UmVhZE9ubHkoc3R5bGUudHJhbnNmb3JtKTtcblxuICAgICAgICB0aGlzLmJhckNsaWNrUG9zaXRpb24gPSBldmVudC5jbGllbnRZIC0gbWF0cml4Lm00MjtcbiAgICAgICAgdGhpcy5iYXJDbGlja1Jlc3RIZWlnaHQgPSB0aGlzLnNjcm9sbEhlaWdodCAtIHRoaXMuYmFyQ2xpY2tQb3NpdGlvbjtcbiAgICAgICAgdGhpcy5pc01vdXNlRG93biA9IHRydWU7XG5cbiAgICAgICAgLy8gVGFibGUgU2Nyb2xsXG4gICAgICAgIHRoaXMudGFibGVCYXJDbGlja1Bvc2l0aW9uID0gZXZlbnQuY2xpZW50WCAtIG1hdHJpeC5tNDE7XG4gICAgICAgIHRoaXMudGFibGVCYXJDbGlja1Jlc3RXaWR0aCA9XG4gICAgICAgICAgICB0aGlzLnRhYmxlU2Nyb2xsV2lkdGggLSB0aGlzLnRhYmxlQmFyQ2xpY2tQb3NpdGlvbjtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNhbGN1bGF0ZUJhclNpemVBbmRQb3NpdGlvbihlbGVtOiBIVE1MRWxlbWVudCk6IHZvaWQge1xuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIGlmICh0aGlzLl9zY3JvbGxCYXJPcHRpb25zLnNob3dIb3Jpem9udGFsU2Nyb2xsQmFyKSB7XG4gICAgICAgICAgICAgICAgY29uc3Qgc2Nyb2xsV3JhcHBlcjogSFRNTEVsZW1lbnQgfCBudWxsID1cbiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvcignLm5vdC1waW5lZC1jb2x1bW5zJyk7XG4gICAgICAgICAgICAgICAgdGhpcy5jYWxjdWxhdGVUYWJsZVNjcm9sbChzY3JvbGxXcmFwcGVyKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jYWxjdWxhdGVSZWd1bGFyU2Nyb2xsKGVsZW0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9LCAxMDApO1xuICAgIH1cblxuICAgIHByaXZhdGUgY2FsY3VsYXRlVGFibGVTY3JvbGwoc2Nyb2xsV3JhcHBlcjogSFRNTEVsZW1lbnQgfCBudWxsKTogdm9pZCB7XG4gICAgICAgIGlmICghc2Nyb2xsV3JhcHBlcikge1xuICAgICAgICAgICAgdGhpcy50YWJsZU5vdFBpbmVkQm91bmRpbmdSZWN0ID0gbnVsbDtcbiAgICAgICAgICAgIHRoaXMuc2hvd1Njcm9sbGJhciA9IGZhbHNlO1xuICAgICAgICAgICAgdGhpcy5zY3JvbGxFdmVudC5lbWl0KHtcbiAgICAgICAgICAgICAgICBldmVudEFjdGlvbjogU2Nyb2xsRXZlbnRBY3Rpb24uSVNfU0NST0xMX1NIT1dJTkcsXG4gICAgICAgICAgICAgICAgaXNTY3JvbGxCYXJTaG93aW5nOiB0aGlzLnNob3dTY3JvbGxiYXIsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGJvdW5kaW5nUmVjdCA9IHNjcm9sbFdyYXBwZXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICAgIGNvbnN0IHRhYmxlRnVsbFdpZHRoID0gc2Nyb2xsV3JhcHBlci5zY3JvbGxXaWR0aCB8fCAwO1xuICAgICAgICBjb25zdCB0YWJsZVZpc2libGVXaWR0aCA9IE1hdGguY2VpbChib3VuZGluZ1JlY3Qud2lkdGggfHwgMCk7XG5cbiAgICAgICAgdGhpcy50YWJsZU5vdFBpbmVkQm91bmRpbmdSZWN0ID0gYm91bmRpbmdSZWN0O1xuICAgICAgICB0aGlzLnRhYmxlU2Nyb2xsUmF0aW8gPSB0YWJsZVZpc2libGVXaWR0aCAvIHRhYmxlRnVsbFdpZHRoO1xuICAgICAgICB0aGlzLnRhYmxlU2Nyb2xsUmF0aW9GdWxsID0gdGFibGVGdWxsV2lkdGggLyB0YWJsZVZpc2libGVXaWR0aDtcbiAgICAgICAgdGhpcy50YWJsZVNjcm9sbFdpZHRoID0gdGhpcy50YWJsZVNjcm9sbFJhdGlvICogdGFibGVWaXNpYmxlV2lkdGg7XG5cbiAgICAgICAgdGhpcy5zaG93U2Nyb2xsYmFyID0gdGFibGVGdWxsV2lkdGggPiB0YWJsZVZpc2libGVXaWR0aDtcbiAgICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuXG4gICAgICAgIHRoaXMuc2Nyb2xsRXZlbnQuZW1pdCh7XG4gICAgICAgICAgICBldmVudEFjdGlvbjogU2Nyb2xsRXZlbnRBY3Rpb24uSVNfU0NST0xMX1NIT1dJTkcsXG4gICAgICAgICAgICBpc1Njcm9sbEJhclNob3dpbmc6IHRoaXMuc2hvd1Njcm9sbGJhcixcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjYWxjdWxhdGVSZWd1bGFyU2Nyb2xsKGVsZW06IEhUTUxFbGVtZW50KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGNvbnRlbnRIZWlnaHQgPSBlbGVtLnNjcm9sbEhlaWdodCAtIDE7XG4gICAgICAgIGNvbnN0IHZpc2libGVIZWlnaHQgPSB3aW5kb3cuaW5uZXJIZWlnaHQ7XG5cbiAgICAgICAgdGhpcy5zaG93U2Nyb2xsYmFyID0gY29udGVudEhlaWdodCA+IHZpc2libGVIZWlnaHQ7XG4gICAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcblxuICAgICAgICBpZiAoIXRoaXMuc2hvd1Njcm9sbGJhcikgcmV0dXJuO1xuXG4gICAgICAgIHRoaXMuc2Nyb2xsUmF0aW8gPSB2aXNpYmxlSGVpZ2h0IC8gY29udGVudEhlaWdodDtcbiAgICAgICAgdGhpcy5zY3JvbGxSYXRpb0Z1bGwgPSBjb250ZW50SGVpZ2h0IC8gdmlzaWJsZUhlaWdodDtcbiAgICAgICAgdGhpcy5zY3JvbGxUb3AgPSBlbGVtLnNjcm9sbFRvcCAqIHRoaXMuc2Nyb2xsUmF0aW87XG5cbiAgICAgICAgaWYgKHRoaXMuYmFyKSB7XG4gICAgICAgICAgICB0aGlzLmJhci5uYXRpdmVFbGVtZW50LnN0eWxlLnRyYW5zZm9ybSA9IGB0cmFuc2xhdGVZKCR7dGhpcy5zY3JvbGxUb3B9cHgpYDtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuc2Nyb2xsSGVpZ2h0ID0gdGhpcy5zY3JvbGxSYXRpbyAqIHZpc2libGVIZWlnaHQ7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBvbk1vdXNlVXBIYW5kbGVyID0gKCkgPT4gKHRoaXMuaXNNb3VzZURvd24gPSBmYWxzZSk7XG5cbiAgICBwcml2YXRlIG9uUmVzaXplSGFuZGxlciA9ICgpID0+IHtcbiAgICAgICAgaWYgKCF0aGlzLmlzTW91c2VEb3duKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5yZXNpemVIYW5kbGVyQ291bnQgIT09IG51bGwpIHtcbiAgICAgICAgICAgICAgICBjbGVhclRpbWVvdXQodGhpcy5yZXNpemVIYW5kbGVyQ291bnQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5yZXNpemVIYW5kbGVyQ291bnQgPSB3aW5kb3cuc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5jYWxjdWxhdGVCYXJTaXplQW5kUG9zaXRpb24oXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudC5jaGlsZHJlblswXVxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9LCAxNTApO1xuICAgICAgICB9XG4gICAgfTtcblxuICAgIHByaXZhdGUgb25Nb3VzZU1vdmVIYW5kbGVyID0gKGV2ZW50OiBNb3VzZUV2ZW50KSA9PiB7XG4gICAgICAgIGlmICh0aGlzLmlzTW91c2VEb3duKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5fc2Nyb2xsQmFyT3B0aW9ucy5zaG93VmVydGljYWxTY3JvbGxCYXIpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmhhbmRsZVJlZ3VsYXJTY3JvbGwoZXZlbnQpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLmhhbmRsZVRhYmxlU2Nyb2xsKGV2ZW50KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH07XG5cbiAgICBwcml2YXRlIGhhbmRsZVJlZ3VsYXJTY3JvbGwoZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgY29uc3Qgb2Zmc2V0QmFyID0gZXZlbnQuY2xpZW50WSAtIHRoaXMuYmFyQ2xpY2tQb3NpdGlvbjtcbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgb2Zmc2V0QmFyID4gLTEgJiZcbiAgICAgICAgICAgIGV2ZW50LmNsaWVudFkgKyB0aGlzLmJhckNsaWNrUmVzdEhlaWdodCA8IHdpbmRvdy5pbm5lckhlaWdodFxuICAgICAgICApIHtcbiAgICAgICAgICAgIHRoaXMuYmFyLm5hdGl2ZUVsZW1lbnQuc3R5bGUudHJhbnNmb3JtID0gYHRyYW5zbGF0ZVkoJHtvZmZzZXRCYXJ9cHgpYDtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQuY2hpbGRyZW5bMF0uc2Nyb2xsVG9wID1cbiAgICAgICAgICAgIChldmVudC5jbGllbnRZIC0gdGhpcy5iYXJDbGlja1Bvc2l0aW9uKSAqIHRoaXMuc2Nyb2xsUmF0aW9GdWxsO1xuICAgIH1cblxuICAgIHByaXZhdGUgaGFuZGxlVGFibGVTY3JvbGwoZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgbGV0IG9mZnNldEJhciA9IGV2ZW50LmNsaWVudFggLSB0aGlzLnRhYmxlQmFyQ2xpY2tQb3NpdGlvbjtcbiAgICAgICAgY29uc3QgbWF4V2lkdGggPSB0aGlzLnRhYmxlTm90UGluZWRCb3VuZGluZ1JlY3Q/LndpZHRoIHx8IDA7XG5cbiAgICAgICAgb2Zmc2V0QmFyID0gb2Zmc2V0QmFyIDwgMCA/IDAgOiBvZmZzZXRCYXI7XG4gICAgICAgIG9mZnNldEJhciA9XG4gICAgICAgICAgICBldmVudC5jbGllbnRYICsgdGhpcy50YWJsZUJhckNsaWNrUmVzdFdpZHRoID4gbWF4V2lkdGhcbiAgICAgICAgICAgICAgICA/IG1heFdpZHRoIC0gdGhpcy50YWJsZVNjcm9sbFdpZHRoXG4gICAgICAgICAgICAgICAgOiBvZmZzZXRCYXI7XG5cbiAgICAgICAgdGhpcy5iYXIubmF0aXZlRWxlbWVudC5zdHlsZS50cmFuc2Zvcm0gPSBgdHJhbnNsYXRlWCgke29mZnNldEJhcn1weClgO1xuXG4gICAgICAgIHRoaXMuc2Nyb2xsRXZlbnQuZW1pdCh7XG4gICAgICAgICAgICBldmVudEFjdGlvbjogU2Nyb2xsRXZlbnRBY3Rpb24uU0NST0xMSU5HLFxuICAgICAgICAgICAgc2Nyb2xsUG9zaXRpb246IG9mZnNldEJhciAqIHRoaXMudGFibGVTY3JvbGxSYXRpb0Z1bGwsXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBwcm9qZWN0Q29udGVudENoYW5nZWQoKTogdm9pZCB7XG4gICAgICAgIGNsZWFyVGltZW91dCh0aGlzLmNhbGN1bGF0ZVNpemVIZWlnaHRUaW1lcik7XG4gICAgICAgIHRoaXMuY2FsY3VsYXRlU2l6ZUhlaWdodFRpbWVyID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmNhbGN1bGF0ZUJhclNpemVBbmRQb3NpdGlvbihcbiAgICAgICAgICAgICAgICB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQuY2hpbGRyZW5bMF1cbiAgICAgICAgICAgICk7XG4gICAgICAgIH0sIDEwMCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSByZW1vdmVFdmVudExpc3RlbmVycygpOiB2b2lkIHtcbiAgICAgICAgZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcihFdmVudFR5cGUuTU9VU0VfVVAsIHRoaXMub25Nb3VzZVVwSGFuZGxlcik7XG4gICAgICAgIGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoXG4gICAgICAgICAgICBFdmVudFR5cGUuTU9VU0VfTU9WRSxcbiAgICAgICAgICAgIHRoaXMub25Nb3VzZU1vdmVIYW5kbGVyXG4gICAgICAgICk7XG4gICAgICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKEV2ZW50VHlwZS5SRVNJWkUsIHRoaXMub25SZXNpemVIYW5kbGVyKTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5yZW1vdmVFdmVudExpc3RlbmVycygpO1xuICAgICAgICB0aGlzLmRlc3Ryb3kkLm5leHQoKTtcbiAgICAgICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xuICAgIH1cbn1cbiIsIjxkaXZcbiAgICBjbGFzcz1cImN1c3RvbS1zY3JvbGxiYXItaG9sZGVyXCJcbiAgICAjY29udGVudEhvbGRlclxuICAgIChjZGtPYnNlcnZlQ29udGVudCk9XCJwcm9qZWN0Q29udGVudENoYW5nZWQoKVwiXG4gICAgW2NsYXNzLmFjdGl2ZVRvb2xiYXJdPVwic2hvd1Njcm9sbGJhclwiXG4gICAgW25nU3R5bGVdPVwie1xuICAgICAgICBoZWlnaHQ6IF9zY3JvbGxCYXJPcHRpb25zLnNob3dIb3Jpem9udGFsU2Nyb2xsQmFyXG4gICAgICAgICAgICA/IF9ob3Jpem9udGFsU2Nyb2xsSGVpZ2h0ICsgJ3B4J1xuICAgICAgICAgICAgOiAxMDAgKyAndmgnLFxuICAgICAgICAnb3ZlcmZsb3cteSc6IF9zY3JvbGxCYXJPcHRpb25zLnNob3dIb3Jpem9udGFsU2Nyb2xsQmFyXG4gICAgICAgICAgICA/ICd2aXNpYmxlJ1xuICAgICAgICAgICAgOiAnYXV0bycsXG4gICAgfVwiXG4+XG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgIDwhLS0gVmVydGljYWwgU2Nyb2xsIEJhciAtLT5cbiAgICBAaWYgKHNob3dTY3JvbGxiYXIgJiYgX3Njcm9sbEJhck9wdGlvbnMuc2hvd1ZlcnRpY2FsU2Nyb2xsQmFyKSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJyaWdodC1iYXItc2Nyb2xsXCI+XG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgY2xhc3M9XCJyaWdodC1iYXJcIlxuICAgICAgICAgICAgICAgICNiYXJcbiAgICAgICAgICAgICAgICBbbmdTdHlsZV09XCJ7IGhlaWdodDogc2Nyb2xsSGVpZ2h0ICsgJ3B4JyB9XCJcbiAgICAgICAgICAgICAgICAobW91c2Vkb3duKT1cInNldERyYWdnaW5nU3RhcnQoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgKG1vdXNldXApPVwiaXNNb3VzZURvd24gPSBmYWxzZVwiXG4gICAgICAgICAgICA+PC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIH1cblxuICAgIDwhLS0gSG9yaXpvbnRhbCBTY3JvbGwgQmFyIC0tPlxuICAgIEBpZiAoc2hvd1Njcm9sbGJhciAmJiBfc2Nyb2xsQmFyT3B0aW9ucy5zaG93SG9yaXpvbnRhbFNjcm9sbEJhcikge1xuICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzcz1cImhvcml6b250YWwtc2Nyb2xsLWJhclwiXG4gICAgICAgICAgICBbbmdTdHlsZV09XCJ7XG4gICAgICAgICAgICAgICAgJ2xlZnQucHgnOlxuICAgICAgICAgICAgICAgICAgICBfc2Nyb2xsQmFyT3B0aW9ucz8ubW9kYWxTdHlsZT8uaG9yaXpvbnRhbFNjcm9sbEJhckxlZnQgPT09XG4gICAgICAgICAgICAgICAgICAgICAgICAwIHx8XG4gICAgICAgICAgICAgICAgICAgIF9zY3JvbGxCYXJPcHRpb25zPy5tb2RhbFN0eWxlPy5ob3Jpem9udGFsU2Nyb2xsQmFyTGVmdFxuICAgICAgICAgICAgICAgICAgICAgICAgPyBfc2Nyb2xsQmFyT3B0aW9ucy5tb2RhbFN0eWxlLmhvcml6b250YWxTY3JvbGxCYXJMZWZ0XG4gICAgICAgICAgICAgICAgICAgICAgICA6ICh0YWJsZU5vdFBpbmVkQm91bmRpbmdSZWN0Py5sZWZ0IHx8IDApIC0gNzQsXG4gICAgICAgICAgICAgICAgJ3dpZHRoLnB4JzogX3Njcm9sbEJhck9wdGlvbnM/Lm1vZGFsU3R5bGVcbiAgICAgICAgICAgICAgICAgICAgPy5ob3Jpem9udGFsU2Nyb2xsQmFyV2lkdGhcbiAgICAgICAgICAgICAgICAgICAgPyBfc2Nyb2xsQmFyT3B0aW9ucy5tb2RhbFN0eWxlLmhvcml6b250YWxTY3JvbGxCYXJXaWR0aFxuICAgICAgICAgICAgICAgICAgICA6IHRhYmxlTm90UGluZWRCb3VuZGluZ1JlY3Q/LndpZHRoLFxuICAgICAgICAgICAgICAgICdtYXJnaW4tdG9wLnB4JzogX3Njcm9sbEJhck9wdGlvbnM/Lm1vZGFsU3R5bGVcbiAgICAgICAgICAgICAgICAgICAgPy5ob3Jpem9udGFsU2Nyb2xsQmFyTWFyZ2luVG9wXG4gICAgICAgICAgICAgICAgICAgID8gX3Njcm9sbEJhck9wdGlvbnMubW9kYWxTdHlsZS5ob3Jpem9udGFsU2Nyb2xsQmFyTWFyZ2luVG9wXG4gICAgICAgICAgICAgICAgICAgIDogLTE1LFxuICAgICAgICAgICAgfVwiXG4gICAgICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAgICAgJ21vZGFsLWhvcml6b250YWwtc2Nyb2xsLWJhcic6XG4gICAgICAgICAgICAgICAgICAgIF9zY3JvbGxCYXJPcHRpb25zPy5tb2RhbFN0eWxlPy5tb2RhbFNjcm9sbENsYXNzQWN0aXZlLFxuICAgICAgICAgICAgfVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICBjbGFzcz1cImhvcml6b250YWwtYmFyXCJcbiAgICAgICAgICAgICAgICAjYmFyXG4gICAgICAgICAgICAgICAgW25nU3R5bGVdPVwie1xuICAgICAgICAgICAgICAgICAgICAnd2lkdGgucHgnOiBfc2Nyb2xsQmFyT3B0aW9ucz8ubW9kYWxTdHlsZT8uYWRkaXRpb25hbFdpZHRoXG4gICAgICAgICAgICAgICAgICAgICAgICA/IHRhYmxlU2Nyb2xsV2lkdGggK1xuICAgICAgICAgICAgICAgICAgICAgICAgICBfc2Nyb2xsQmFyT3B0aW9ucy5tb2RhbFN0eWxlLmFkZGl0aW9uYWxXaWR0aFxuICAgICAgICAgICAgICAgICAgICAgICAgOiB0YWJsZVNjcm9sbFdpZHRoLFxuICAgICAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAgICAgICAgICAgJ2hvcml6b250YWwtYmFyLXN0aWNreSc6XG4gICAgICAgICAgICAgICAgICAgICAgICAoX3Njcm9sbEJhck9wdGlvbnM/LmRhdGFMZW5ndGggfHwgMCkgPj0gMjMsXG4gICAgICAgICAgICAgICAgfVwiXG4gICAgICAgICAgICAgICAgKG1vdXNlZG93bik9XCJzZXREcmFnZ2luZ1N0YXJ0KCRldmVudClcIlxuICAgICAgICAgICAgICAgIChtb3VzZXVwKT1cImlzTW91c2VEb3duID0gZmFsc2VcIlxuICAgICAgICAgICAgPjwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICB9XG48L2Rpdj5cbiJdfQ==
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export var EventType;
|
|
2
|
+
(function (EventType) {
|
|
3
|
+
EventType["MOUSE_UP"] = "mouseup";
|
|
4
|
+
EventType["MOUSE_MOVE"] = "mousemove";
|
|
5
|
+
EventType["SCROLL"] = "scroll";
|
|
6
|
+
EventType["RESIZE"] = "resize";
|
|
7
|
+
})(EventType || (EventType = {}));
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQtdHlwZS5lbnVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2EtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvY2EtY3VzdG9tLXNjcm9sbGJhci9lbnVtcy9ldmVudC10eXBlLmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksU0FLWDtBQUxELFdBQVksU0FBUztJQUNqQixpQ0FBb0IsQ0FBQTtJQUNwQixxQ0FBd0IsQ0FBQTtJQUN4Qiw4QkFBaUIsQ0FBQTtJQUNqQiw4QkFBaUIsQ0FBQTtBQUNyQixDQUFDLEVBTFcsU0FBUyxLQUFULFNBQVMsUUFLcEIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBFdmVudFR5cGUge1xuICAgIE1PVVNFX1VQID0gJ21vdXNldXAnLFxuICAgIE1PVVNFX01PVkUgPSAnbW91c2Vtb3ZlJyxcbiAgICBTQ1JPTEwgPSAnc2Nyb2xsJyxcbiAgICBSRVNJWkUgPSAncmVzaXplJyxcbn0iXX0=
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export * from './event-type.enum';
|
|
2
|
+
export * from './scroll-event-action.enum';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jYS1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9jYS1jdXN0b20tc2Nyb2xsYmFyL2VudW1zL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyw0QkFBNEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZXZlbnQtdHlwZS5lbnVtJztcbmV4cG9ydCAqIGZyb20gJy4vc2Nyb2xsLWV2ZW50LWFjdGlvbi5lbnVtJztcbiJdfQ==
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export var ScrollEventAction;
|
|
2
|
+
(function (ScrollEventAction) {
|
|
3
|
+
ScrollEventAction["IS_SCROLL_SHOWING"] = "isScrollShowing";
|
|
4
|
+
ScrollEventAction["SCROLLING"] = "scrolling";
|
|
5
|
+
})(ScrollEventAction || (ScrollEventAction = {}));
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nyb2xsLWV2ZW50LWFjdGlvbi5lbnVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2EtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvY2EtY3VzdG9tLXNjcm9sbGJhci9lbnVtcy9zY3JvbGwtZXZlbnQtYWN0aW9uLmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksaUJBR1g7QUFIRCxXQUFZLGlCQUFpQjtJQUN6QiwwREFBcUMsQ0FBQTtJQUNyQyw0Q0FBdUIsQ0FBQTtBQUMzQixDQUFDLEVBSFcsaUJBQWlCLEtBQWpCLGlCQUFpQixRQUc1QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIFNjcm9sbEV2ZW50QWN0aW9uIHtcbiAgICBJU19TQ1JPTExfU0hPV0lORyA9ICdpc1Njcm9sbFNob3dpbmcnLFxuICAgIFNDUk9MTElORyA9ICdzY3JvbGxpbmcnLFxufVxuIl19
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export * from './scroll-bar-options.model';
|
|
2
|
+
export * from './scroll-event.model';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jYS1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9jYS1jdXN0b20tc2Nyb2xsYmFyL21vZGVscy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsc0JBQXNCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3Njcm9sbC1iYXItb3B0aW9ucy5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL3Njcm9sbC1ldmVudC5tb2RlbCc7Il19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nyb2xsLWJhci1vcHRpb25zLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2EtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvY2EtY3VzdG9tLXNjcm9sbGJhci9tb2RlbHMvc2Nyb2xsLWJhci1vcHRpb25zLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIFNjcm9sbEJhck9wdGlvbnMge1xuICAgIHNob3dWZXJ0aWNhbFNjcm9sbEJhcjogYm9vbGVhbjtcbiAgICBzaG93SG9yaXpvbnRhbFNjcm9sbEJhcjogYm9vbGVhbjtcbiAgICBkYXRhTGVuZ3RoPzogbnVtYmVyO1xuICAgIG1vZGFsU3R5bGU/OiBhbnk7IC8vIHRoaXMgYW55IHdpbGwgYmUgY2hhbmdlZFxufVxuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nyb2xsLWV2ZW50Lm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2EtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvY2EtY3VzdG9tLXNjcm9sbGJhci9tb2RlbHMvc2Nyb2xsLWV2ZW50Lm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBlbnVtc1xuaW1wb3J0IHsgU2Nyb2xsRXZlbnRBY3Rpb24gfSBmcm9tICcuLi9lbnVtcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2Nyb2xsRXZlbnQge1xuICAgIGV2ZW50QWN0aW9uOiBTY3JvbGxFdmVudEFjdGlvbjtcbiAgICBpc1Njcm9sbEJhclNob3dpbmc/OiBib29sZWFuO1xuICAgIHNjcm9sbFBvc2l0aW9uPzogbnVtYmVyO1xufVxuIl19
|