@ts-core/angular 11.0.80 → 11.0.81
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/bottomSheet/{component/BottomSheetImpl.d.ts → BottomSheetImpl.d.ts} +12 -4
- package/bottomSheet/component/BottomSheetBaseComponent.d.ts +19 -0
- package/bottomSheet/component/bottom-sheet-close-element/bottom-sheet-close-element.component.d.ts +10 -0
- package/bundles/ts-core-angular.umd.js +302 -104
- package/bundles/ts-core-angular.umd.js.map +1 -1
- package/bundles/ts-core-angular.umd.min.js +1 -1
- package/bundles/ts-core-angular.umd.min.js.map +1 -1
- package/esm2015/bottomSheet/BottomSheetImpl.js +231 -0
- package/esm2015/bottomSheet/BottomSheetModule.js +3 -3
- package/esm2015/bottomSheet/BottomSheetService.js +3 -3
- package/esm2015/bottomSheet/component/BottomSheetBaseComponent.js +86 -0
- package/esm2015/bottomSheet/component/bottom-sheet-close-element/bottom-sheet-close-element.component.js +63 -0
- package/esm2015/component/cdk-table/cdk-table-filterable/cdk-table-filterable.component.js +2 -2
- package/esm2015/ts-core-angular.js +11 -10
- package/esm2015/window/component/WindowBaseComponent.js +2 -2
- package/fesm2015/ts-core-angular.js +254 -85
- package/fesm2015/ts-core-angular.js.map +1 -1
- package/package.json +1 -1
- package/style/mat/vi-mat.scss +6 -1
- package/ts-core-angular.d.ts +11 -10
- package/ts-core-angular.metadata.json +1 -1
- package/esm2015/bottomSheet/component/BottomSheetImpl.js +0 -201
|
@@ -0,0 +1,231 @@
|
|
|
1
|
+
import { Subject } from 'rxjs';
|
|
2
|
+
import { takeUntil } from 'rxjs/internal/operators';
|
|
3
|
+
import * as _ from 'lodash';
|
|
4
|
+
import { DestroyableContainer } from '@ts-core/common';
|
|
5
|
+
import { WindowEvent } from '../window/IWindow';
|
|
6
|
+
import { ViewUtil } from '../util/ViewUtil';
|
|
7
|
+
import { WindowImpl } from '../window/WindowImpl';
|
|
8
|
+
export class BottomSheetImpl extends DestroyableContainer {
|
|
9
|
+
// --------------------------------------------------------------------------
|
|
10
|
+
//
|
|
11
|
+
// Constructor
|
|
12
|
+
//
|
|
13
|
+
// --------------------------------------------------------------------------
|
|
14
|
+
constructor(properties) {
|
|
15
|
+
super();
|
|
16
|
+
// --------------------------------------------------------------------------
|
|
17
|
+
//
|
|
18
|
+
// Properties
|
|
19
|
+
//
|
|
20
|
+
// --------------------------------------------------------------------------
|
|
21
|
+
this._isBlink = false;
|
|
22
|
+
this._isDisabled = false;
|
|
23
|
+
// --------------------------------------------------------------------------
|
|
24
|
+
//
|
|
25
|
+
// Protected Methods
|
|
26
|
+
//
|
|
27
|
+
// --------------------------------------------------------------------------
|
|
28
|
+
this.setClosed = () => {
|
|
29
|
+
this.emit(WindowEvent.CLOSED);
|
|
30
|
+
this.destroy();
|
|
31
|
+
};
|
|
32
|
+
this.setOpened = () => {
|
|
33
|
+
this.emit(WindowEvent.OPENED);
|
|
34
|
+
};
|
|
35
|
+
this.blinkToggle = () => {
|
|
36
|
+
this.isBlink = !this.isBlink;
|
|
37
|
+
};
|
|
38
|
+
this.mouseDownHandlerProxy = (event) => {
|
|
39
|
+
this.mouseDownHandler(event);
|
|
40
|
+
};
|
|
41
|
+
this.mouseClickHandlerProxy = (event) => {
|
|
42
|
+
this.mouseClickHandler(event);
|
|
43
|
+
};
|
|
44
|
+
this.observer = new Subject();
|
|
45
|
+
this.properties = properties;
|
|
46
|
+
this.content.window = this;
|
|
47
|
+
// Have to save for unsubscribe on destroy
|
|
48
|
+
this._wrapper = this.properties.overlay.hostElement;
|
|
49
|
+
this._backdrop = this.properties.overlay.backdropElement;
|
|
50
|
+
this._container = this.properties.overlay.overlayElement;
|
|
51
|
+
this.setProperties();
|
|
52
|
+
this.getReference().afterOpened().pipe(takeUntil(this.destroyed)).subscribe(this.setOpened);
|
|
53
|
+
this.getReference().afterDismissed().pipe(takeUntil(this.destroyed)).subscribe(this.setClosed);
|
|
54
|
+
}
|
|
55
|
+
setProperties() {
|
|
56
|
+
ViewUtil.addClass(this.container, 'vi-bottom-sheet');
|
|
57
|
+
ViewUtil.toggleClass(this.container, 'vi-modal', this.config.isModal);
|
|
58
|
+
if (!this.config.isModal) {
|
|
59
|
+
this.container.addEventListener('click', this.mouseClickHandlerProxy, true);
|
|
60
|
+
this.container.addEventListener('mousedown', this.mouseDownHandlerProxy);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
commitIsBlinkProperties() { }
|
|
64
|
+
commitIsDisabledProperties() { }
|
|
65
|
+
getConfig() {
|
|
66
|
+
return this.properties.config;
|
|
67
|
+
}
|
|
68
|
+
getContainer() {
|
|
69
|
+
return this.container;
|
|
70
|
+
}
|
|
71
|
+
getReference() {
|
|
72
|
+
return this.properties.reference;
|
|
73
|
+
}
|
|
74
|
+
isNeedClickStopPropagation(event) {
|
|
75
|
+
return false;
|
|
76
|
+
}
|
|
77
|
+
stopBlinkIfNeed() {
|
|
78
|
+
this.isBlink = false;
|
|
79
|
+
if (!this.blinkTimer) {
|
|
80
|
+
return;
|
|
81
|
+
}
|
|
82
|
+
clearInterval(this.blinkTimer);
|
|
83
|
+
this.blinkTimer = null;
|
|
84
|
+
}
|
|
85
|
+
mouseDownHandler(event) {
|
|
86
|
+
this.setOnTop();
|
|
87
|
+
}
|
|
88
|
+
mouseClickHandler(event) {
|
|
89
|
+
if (this.isNeedClickStopPropagation(event)) {
|
|
90
|
+
event.stopPropagation();
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
// --------------------------------------------------------------------------
|
|
94
|
+
//
|
|
95
|
+
// Public Methods
|
|
96
|
+
//
|
|
97
|
+
// --------------------------------------------------------------------------
|
|
98
|
+
emit(event) {
|
|
99
|
+
this.observer.next(event);
|
|
100
|
+
}
|
|
101
|
+
close() {
|
|
102
|
+
this.getReference().dismiss();
|
|
103
|
+
}
|
|
104
|
+
destroy() {
|
|
105
|
+
if (this.isDestroyed) {
|
|
106
|
+
return;
|
|
107
|
+
}
|
|
108
|
+
super.destroy();
|
|
109
|
+
this._container.removeEventListener('click', this.mouseClickHandlerProxy, true);
|
|
110
|
+
this._container.removeEventListener('mousedown', this.mouseDownHandlerProxy);
|
|
111
|
+
if (!_.isNil(this.content)) {
|
|
112
|
+
this.content.destroy();
|
|
113
|
+
}
|
|
114
|
+
if (!_.isNil(this.observer)) {
|
|
115
|
+
this.observer.complete();
|
|
116
|
+
this.observer = null;
|
|
117
|
+
}
|
|
118
|
+
this.properties = null;
|
|
119
|
+
this._wrapper = null;
|
|
120
|
+
this._backdrop = null;
|
|
121
|
+
this._container = null;
|
|
122
|
+
clearInterval(this.blinkTimer);
|
|
123
|
+
this.blinkTimer = null;
|
|
124
|
+
}
|
|
125
|
+
blink() {
|
|
126
|
+
clearInterval(this.blinkTimer);
|
|
127
|
+
this.blinkTimer = setInterval(this.blinkToggle, WindowImpl.BLINK_DELAY);
|
|
128
|
+
}
|
|
129
|
+
shake() { }
|
|
130
|
+
setOnTop() { }
|
|
131
|
+
// --------------------------------------------------------------------------
|
|
132
|
+
//
|
|
133
|
+
// Size Methods
|
|
134
|
+
//
|
|
135
|
+
// --------------------------------------------------------------------------
|
|
136
|
+
getWidth() {
|
|
137
|
+
return NaN;
|
|
138
|
+
}
|
|
139
|
+
getHeight() {
|
|
140
|
+
return NaN;
|
|
141
|
+
}
|
|
142
|
+
setWidth(value, isNeedNotify = true) { }
|
|
143
|
+
setHeight(value, isNeedNotify = true) { }
|
|
144
|
+
setSize(width, height) { }
|
|
145
|
+
// --------------------------------------------------------------------------
|
|
146
|
+
//
|
|
147
|
+
// Move Methods
|
|
148
|
+
//
|
|
149
|
+
// --------------------------------------------------------------------------
|
|
150
|
+
getX() {
|
|
151
|
+
return NaN;
|
|
152
|
+
}
|
|
153
|
+
setX(value, isNeedNotify = true) { }
|
|
154
|
+
getY() {
|
|
155
|
+
return NaN;
|
|
156
|
+
}
|
|
157
|
+
setY(value, isNeedNotify = true) { }
|
|
158
|
+
move(x, y) { }
|
|
159
|
+
// --------------------------------------------------------------------------
|
|
160
|
+
//
|
|
161
|
+
// Private Properties
|
|
162
|
+
//
|
|
163
|
+
// --------------------------------------------------------------------------
|
|
164
|
+
get reference() {
|
|
165
|
+
return this.properties.reference;
|
|
166
|
+
}
|
|
167
|
+
get isBlink() {
|
|
168
|
+
return this._isBlink;
|
|
169
|
+
}
|
|
170
|
+
set isBlink(value) {
|
|
171
|
+
if (value === this._isBlink) {
|
|
172
|
+
return;
|
|
173
|
+
}
|
|
174
|
+
this._isBlink = value;
|
|
175
|
+
this.commitIsBlinkProperties();
|
|
176
|
+
}
|
|
177
|
+
get isShaking() {
|
|
178
|
+
return false;
|
|
179
|
+
}
|
|
180
|
+
set isShaking(value) { }
|
|
181
|
+
// --------------------------------------------------------------------------
|
|
182
|
+
//
|
|
183
|
+
// Public Properties
|
|
184
|
+
//
|
|
185
|
+
// --------------------------------------------------------------------------
|
|
186
|
+
get events() {
|
|
187
|
+
return this.observer.asObservable();
|
|
188
|
+
}
|
|
189
|
+
get config() {
|
|
190
|
+
return this.properties.config;
|
|
191
|
+
}
|
|
192
|
+
get content() {
|
|
193
|
+
return !_.isNil(this.reference) ? this.reference.instance : null;
|
|
194
|
+
}
|
|
195
|
+
get container() {
|
|
196
|
+
return this._container;
|
|
197
|
+
}
|
|
198
|
+
get wrapper() {
|
|
199
|
+
return this._wrapper;
|
|
200
|
+
}
|
|
201
|
+
get backdrop() {
|
|
202
|
+
return this._backdrop;
|
|
203
|
+
}
|
|
204
|
+
get isOnTop() {
|
|
205
|
+
return false;
|
|
206
|
+
}
|
|
207
|
+
set isOnTop(value) { }
|
|
208
|
+
get isMinimized() {
|
|
209
|
+
return false;
|
|
210
|
+
}
|
|
211
|
+
set isMinimized(value) { }
|
|
212
|
+
get isDisabled() {
|
|
213
|
+
return this._isDisabled;
|
|
214
|
+
}
|
|
215
|
+
set isDisabled(value) {
|
|
216
|
+
if (value === this._isDisabled) {
|
|
217
|
+
return;
|
|
218
|
+
}
|
|
219
|
+
this._isDisabled = value;
|
|
220
|
+
this.commitIsDisabledProperties();
|
|
221
|
+
this.emit(WindowEvent.DISABLED_CHANGED);
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
// --------------------------------------------------------------------------
|
|
225
|
+
//
|
|
226
|
+
// Constants
|
|
227
|
+
//
|
|
228
|
+
// --------------------------------------------------------------------------
|
|
229
|
+
BottomSheetImpl.BLINK_DELAY = 500;
|
|
230
|
+
BottomSheetImpl.SHAKE_DELAY = 500;
|
|
231
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQm90dG9tU2hlZXRJbXBsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2JvdHRvbVNoZWV0L0JvdHRvbVNoZWV0SW1wbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWMsT0FBTyxFQUFnQixNQUFNLE1BQU0sQ0FBQztBQUN6RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDcEQsT0FBTyxLQUFLLENBQUMsTUFBTSxRQUFRLENBQUM7QUFDNUIsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFHdkQsT0FBTyxFQUFXLFdBQVcsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBR3pELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUM1QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFbEQsTUFBTSxPQUFPLGVBQXlCLFNBQVEsb0JBQW9CO0lBNkI5RCw2RUFBNkU7SUFDN0UsRUFBRTtJQUNGLGVBQWU7SUFDZixFQUFFO0lBQ0YsNkVBQTZFO0lBRTdFLFlBQVksVUFBNEI7UUFDcEMsS0FBSyxFQUFFLENBQUM7UUExQlosNkVBQTZFO1FBQzdFLEVBQUU7UUFDRixjQUFjO1FBQ2QsRUFBRTtRQUNGLDZFQUE2RTtRQUVyRSxhQUFRLEdBQVksS0FBSyxDQUFDO1FBRzFCLGdCQUFXLEdBQVksS0FBSyxDQUFDO1FBaUNyQyw2RUFBNkU7UUFDN0UsRUFBRTtRQUNGLHFCQUFxQjtRQUNyQixFQUFFO1FBQ0YsNkVBQTZFO1FBRW5FLGNBQVMsR0FBRyxHQUFTLEVBQUU7WUFDN0IsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDOUIsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ25CLENBQUMsQ0FBQztRQUVRLGNBQVMsR0FBRyxHQUFTLEVBQUU7WUFDN0IsSUFBSSxDQUFDLElBQUks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QUM7SUFFRCxJQUFXLE9BQU87UUFDZCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDekIsQ0FBQztJQUVELElBQVcsUUFBUTtRQUNmLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUMxQixDQUFDO0lBRUQsSUFBVyxPQUFPO1FBQ2QsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztJQUNELElBQVcsT0FBTyxDQUFDLEtBQWMsSUFBRyxDQUFDO0lBRXJDLElBQVcsV0FBVztRQUNsQixPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDO0lBQ0QsSUFBVyxXQUFXLENBQUMsS0FBYyxJQUFHLENBQUM7SUFFekMsSUFBVyxVQUFVO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUM1QixDQUFDO0lBQ0QsSUFBVyxVQUFVLENBQUMsS0FBYztRQUNoQyxJQUFJLEtBQUssS0FBSyxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQzVCLE9BQU87U0FDVjtRQUNELElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLElBQUksQ0FBQywwQkFBMEIsRUFBRSxDQUFDO1FBQ2xDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFDNUMsQ0FBQzs7QUFsU0QsNkVBQTZFO0FBQzdFLEVBQUU7QUFDRixhQUFhO0FBQ2IsRUFBRTtBQUNGLDZFQUE2RTtBQUUvRCwyQkFBVyxHQUFHLEdBQUcsQ0FBQztBQUNsQiwyQkFBVyxHQUFHLEdBQUcsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9pbnRlcm5hbC9vcGVyYXRvcnMnO1xuaW1wb3J0ICogYXMgXyBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHsgRGVzdHJveWFibGVDb250YWluZXIgfSBmcm9tICdAdHMtY29yZS9jb21tb24nO1xuaW1wb3J0IHsgTWF0Qm90dG9tU2hlZXRSZWYgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9ib3R0b20tc2hlZXQnO1xuaW1wb3J0IHsgV2luZG93Q29uZmlnIH0gZnJvbSAnLi4vd2luZG93L1dpbmRvd0NvbmZpZyc7XG5pbXBvcnQgeyBJV2luZG93LCBXaW5kb3dFdmVudCB9IGZyb20gJy4uL3dpbmRvdy9JV2luZG93JztcbmltcG9ydCB7IElXaW5kb3dDb250ZW50IH0gZnJvbSAnLi4vd2luZG93L0lXaW5kb3dDb250ZW50JztcbmltcG9ydCB7IFdpbmRvd1Byb3BlcnRpZXMgfSBmcm9tICcuLi93aW5kb3cvV2luZG93UHJvcGVydGllcyc7XG5pbXBvcnQgeyBWaWV3VXRpbCB9IGZyb20gJy4uL3V0aWwvVmlld1V0aWwnO1xuaW1wb3J0IHsgV2luZG93SW1wbCB9IGZyb20gJy4uL3dpbmRvdy9XaW5kb3dJbXBsJztcblxuZXhwb3J0IGNsYXNzIEJvdHRvbVNoZWV0SW1wbDxUID0gYW55PiBleHRlbmRzIERlc3Ryb3lhYmxlQ29udGFpbmVyIGltcGxlbWVudHMgSVdpbmRvdyB7XG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvL1xuICAgIC8vICBDb25zdGFudHNcbiAgICAvL1xuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICBwdWJsaWMgc3RhdGljIEJMSU5LX0RFTEFZID0gNTAwO1xuICAgIHB1YmxpYyBzdGF0aWMgU0hBS0VfREVMQVkgPSA1MDA7XG5cbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIC8vXG4gICAgLy8gIFByb3BlcnRpZXNcbiAgICAvL1xuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICBwcml2YXRlIF9pc0JsaW5rOiBib29sZWFuID0gZmFsc2U7XG4gICAgcHJpdmF0ZSBibGlua1RpbWVyOiBhbnk7XG5cbiAgICBwcml2YXRlIF9pc0Rpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG4gICAgcHJpdmF0ZSBfd3JhcHBlcjogSFRNTEVsZW1lbnQ7XG4gICAgcHJpdmF0ZSBfYmFja2Ryb3A6IEhUTUxFbGVtZW50O1xuICAgIHByaXZhdGUgX2NvbnRhaW5lcjogSFRNTEVsZW1lbnQ7XG5cbiAgICBwcm90ZWN0ZWQgcHJvcGVydGllczogV2luZG93UHJvcGVydGllcztcblxuICAgIHByb3RlY3RlZCBzdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgICBwcm90ZWN0ZWQgb2JzZXJ2ZXI6IFN1YmplY3Q8c3RyaW5nPjtcblxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLy9cbiAgICAvLyAgQ29uc3RydWN0b3JcbiAgICAvL1xuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICBjb25zdHJ1Y3Rvcihwcm9wZXJ0aWVzOiBXaW5kb3dQcm9wZXJ0aWVzKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgICAgIHRoaXMub2JzZXJ2ZXIgPSBuZXcgU3ViamVjdCgpO1xuXG4gICAgICAgIHRoaXMucHJvcGVydGllcyA9IHByb3BlcnRpZXM7XG4gICAgICAgIHRoaXMuY29udGVudC53aW5kb3cgPSB0aGlzO1xuXG4gICAgICAgIC8vIEhhdmUgdG8gc2F2ZSBmb3IgdW5zdWJzY3JpYmUgb24gZGVzdHJveVxuICAgICAgICB0aGlzLl93cmFwcGVyID0gdGhpcy5wcm9wZXJ0aWVzLm92ZXJsYXkuaG9zdEVsZW1lbnQ7XG4gICAgICAgIHRoaXMuX2JhY2tkcm9wID0gdGhpcy5wcm9wZXJ0aWVzLm92ZXJsYXkuYmFja2Ryb3BFbGVtZW50O1xuICAgICAgICB0aGlzLl9jb250YWluZXIgPSB0aGlzLnByb3BlcnRpZXMub3ZlcmxheS5vdmVybGF5RWxlbWVudDtcblxuICAgICAgICB0aGlzLnNldFByb3BlcnRpZXMoKTtcbiAgICAgICAgdGhpcy5nZXRSZWZlcmVuY2UoKS5hZnRlck9wZW5lZCgpLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveWVkKSkuc3Vic2NyaWJlKHRoaXMuc2V0T3BlbmVkKTtcbiAgICAgICAgdGhpcy5nZXRSZWZlcmVuY2UoKS5hZnRlckRpc21pc3NlZCgpLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveWVkKSkuc3Vic2NyaWJlKHRoaXMuc2V0Q2xvc2VkKTtcbiAgICB9XG5cbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIC8vXG4gICAgLy8gIFByb3RlY3RlZCBNZXRob2RzXG4gICAgLy9cbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgcHJvdGVjdGVkIHNldENsb3NlZCA9ICgpOiB2b2lkID0+IHtcbiAgICAgICAgdGhpcy5lbWl0KFdpbmRvd0V2ZW50LkNMT1NFRCk7XG4gICAgICAgIHRoaXMuZGVzdHJveSgpO1xuICAgIH07XG5cbiAgICBwcm90ZWN0ZWQgc2V0T3BlbmVkID0gKCk6IHZvaWQgPT4ge1xuICAgICAgICB0aGlzLmVtaXQoV2luZG93RXZlbnQuT1BFTkVEKTtcbiAgICB9O1xuXG4gICAgcHJvdGVjdGVkIGJsaW5rVG9nZ2xlID0gKCk6IHZvaWQgPT4ge1xuICAgICAgICB0aGlzLmlzQmxpbmsgPSAhdGhpcy5pc0JsaW5rO1xuICAgIH07XG5cbiAgICBwcm90ZWN0ZWQgc2V0UHJvcGVydGllcygpOiB2b2lkIHtcbiAgICAgICAgVmlld1V0aWwuYWRkQ2xhc3ModGhpcy5jb250YWluZXIsICd2aS1ib3R0b20tc2hlZXQnKTtcbiAgICAgICAgVmlld1V0aWwudG9nZ2xlQ2xhc3ModGhpcy5jb250YWluZXIsICd2aS1tb2RhbCcsIHRoaXMuY29uZmlnLmlzTW9kYWwpO1xuXG4gICAgICAgIGlmICghdGhpcy5jb25maWcuaXNNb2RhbCkge1xuICAgICAgICAgICAgdGhpcy5jb250YWluZXIuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCB0aGlzLm1vdXNlQ2xpY2tIYW5kbGVyUHJveHksIHRydWUpO1xuICAgICAgICAgICAgdGhpcy5jb250YWluZXIuYWRkRXZlbnRMaXN0ZW5lcignbW91c2Vkb3duJywgdGhpcy5tb3VzZURvd25IYW5kbGVyUHJveHkpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGNvbW1pdElzQmxpbmtQcm9wZXJ0aWVzKCk6IHZvaWQge31cbiAgICBwcm90ZWN0ZWQgY29tbWl0SXNEaXNhYmxlZFByb3BlcnRpZXMoKTogdm9pZCB7fVxuXG4gICAgcHJvdGVjdGVkIGdldENvbmZpZygpOiBXaW5kb3dDb25maWcge1xuICAgICAgICByZXR1cm4gdGhpcy5wcm9wZXJ0aWVzLmNvbmZpZztcbiAgICB9XG4gICAgcHJvdGVjdGVkIGdldENvbnRhaW5lcigpOiBIVE1MRWxlbWVudCB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbnRhaW5lcjtcbiAgICB9XG4gICAgcHJvdGVjdGVkIGdldFJlZmVyZW5jZSgpOiBNYXRCb3R0b21TaGVldFJlZjxJV2luZG93Q29udGVudDxUPj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5wcm9wZXJ0aWVzLnJlZmVyZW5jZSBhcyBhbnk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGlzTmVlZENsaWNrU3RvcFByb3BhZ2F0aW9uKGV2ZW50OiBNb3VzZUV2ZW50KTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHN0b3BCbGlua0lmTmVlZCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pc0JsaW5rID0gZmFsc2U7XG4gICAgICAgIGlmICghdGhpcy5ibGlua1RpbWVyKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgY2xlYXJJbnRlcnZhbCh0aGlzLmJsaW5rVGltZXIpO1xuICAgICAgICB0aGlzLmJsaW5rVGltZXIgPSBudWxsO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBtb3VzZURvd25IYW5kbGVyKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2V0T25Ub3AoKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgbW91c2VDbGlja0hhbmRsZXIoZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuaXNOZWVkQ2xpY2tTdG9wUHJvcGFnYXRpb24oZXZlbnQpKSB7XG4gICAgICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgbW91c2VEb3duSGFuZGxlclByb3h5ID0gKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCA9PiB7XG4gICAgICAgIHRoaXMubW91c2VEb3duSGFuZGxlcihldmVudCk7XG4gICAgfTtcblxuICAgIHByaXZhdGUgbW91c2VDbGlja0hhbmRsZXJQcm94eSA9IChldmVudDogTW91c2VFdmVudCk6IHZvaWQgPT4ge1xuICAgICAgICB0aGlzLm1vdXNlQ2xpY2tIYW5kbGVyKGV2ZW50KTtcbiAgICB9O1xuXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvL1xuICAgIC8vICBQdWJsaWMgTWV0aG9kc1xuICAgIC8vXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIHB1YmxpYyBlbWl0KGV2ZW50OiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vYnNlcnZlci5uZXh0KGV2ZW50KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgY2xvc2UoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZ2V0UmVmZXJlbmNlKCkuZGlzbWlzcygpO1xuICAgIH1cblxuICAgIHB1YmxpYyBkZXN0cm95KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5pc0Rlc3Ryb3llZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHN1cGVyLmRlc3Ryb3koKTtcblxuICAgICAgICB0aGlzLl9jb250YWluZXIucmVtb3ZlRXZlbnRMaXN0ZW5lcignY2xpY2snLCB0aGlzLm1vdXNlQ2xpY2tIYW5kbGVyUHJveHksIHRydWUpO1xuICAgICAgICB0aGlzLl9jb250YWluZXIucmVtb3ZlRXZlbnRMaXN0ZW5lcignbW91c2Vkb3duJywgdGhpcy5tb3VzZURvd25IYW5kbGVyUHJveHkpO1xuXG4gICAgICAgIGlmICghXy5pc05pbCh0aGlzLmNvbnRlbnQpKSB7XG4gICAgICAgICAgICB0aGlzLmNvbnRlbnQuZGVzdHJveSgpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCFfLmlzTmlsKHRoaXMub2JzZXJ2ZXIpKSB7XG4gICAgICAgICAgICB0aGlzLm9ic2VydmVyLmNvbXBsZXRlKCk7XG4gICAgICAgICAgICB0aGlzLm9ic2VydmVyID0gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMucHJvcGVydGllcyA9IG51bGw7XG5cbiAgICAgICAgdGhpcy5fd3JhcHBlciA9IG51bGw7XG4gICAgICAgIHRoaXMuX2JhY2tkcm9wID0gbnVsbDtcbiAgICAgICAgdGhpcy5fY29udGFpbmVyID0gbnVsbDtcblxuICAgICAgICBjbGVhckludGVydmFsKHRoaXMuYmxpbmtUaW1lcik7XG4gICAgICAgIHRoaXMuYmxpbmtUaW1lciA9IG51bGw7XG4gICAgfVxuXG4gICAgcHVibGljIGJsaW5rKCk6IHZvaWQge1xuICAgICAgICBjbGVhckludGVydmFsKHRoaXMuYmxpbmtUaW1lcik7XG4gICAgICAgIHRoaXMuYmxpbmtUaW1lciA9IHNldEludGVydmFsKHRoaXMuYmxpbmtUb2dnbGUsIFdpbmRvd0ltcGwuQkxJTktfREVMQVkpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzaGFrZSgpOiB2b2lkIHt9XG5cbiAgICBwdWJsaWMgc2V0T25Ub3AoKTogdm9pZCB7fVxuXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvL1xuICAgIC8vICBTaXplIE1ldGhvZHNcbiAgICAvL1xuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICBwdWJsaWMgZ2V0V2lkdGgoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIE5hTjtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0SGVpZ2h0KCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiBOYU47XG4gICAgfVxuXG4gICAgcHVibGljIHNldFdpZHRoKHZhbHVlOiBudW1iZXIsIGlzTmVlZE5vdGlmeTogYm9vbGVhbiA9IHRydWUpOiB2b2lkIHt9XG5cbiAgICBwdWJsaWMgc2V0SGVpZ2h0KHZhbHVlOiBudW1iZXIsIGlzTmVlZE5vdGlmeTogYm9vbGVhbiA9IHRydWUpOiB2b2lkIHt9XG5cbiAgICBwdWJsaWMgc2V0U2l6ZSh3aWR0aDogbnVtYmVyLCBoZWlnaHQ6IG51bWJlcik6IHZvaWQge31cblxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLy9cbiAgICAvLyAgTW92ZSBNZXRob2RzXG4gICAgLy9cbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgcHVibGljIGdldFgoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIE5hTjtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2V0WCh2YWx1ZTogbnVtYmVyLCBpc05lZWROb3RpZnk6IGJvb2xlYW4gPSB0cnVlKTogdm9pZCB7fVxuXG4gICAgcHVibGljIGdldFkoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIE5hTjtcbiAgICB9XG4gICAgcHVibGljIHNldFkodmFsdWU6IG51bWJlciwgaXNOZWVkTm90aWZ5OiBib29sZWFuID0gdHJ1ZSk6IHZvaWQge31cblxuICAgIHB1YmxpYyBtb3ZlKHg6IG51bWJlciwgeTogbnVtYmVyKTogdm9pZCB7fVxuXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvL1xuICAgIC8vICBQcml2YXRlIFByb3BlcnRpZXNcbiAgICAvL1xuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICBwcm90ZWN0ZWQgZ2V0IHJlZmVyZW5jZSgpOiBNYXRCb3R0b21TaGVldFJlZjxJV2luZG93Q29udGVudDxUPj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5wcm9wZXJ0aWVzLnJlZmVyZW5jZSBhcyBhbnk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldCBpc0JsaW5rKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5faXNCbGluaztcbiAgICB9XG4gICAgcHJvdGVjdGVkIHNldCBpc0JsaW5rKHZhbHVlOiBib29sZWFuKSB7XG4gICAgICAgIGlmICh2YWx1ZSA9PT0gdGhpcy5faXNCbGluaykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX2lzQmxpbmsgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy5jb21taXRJc0JsaW5rUHJvcGVydGllcygpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXQgaXNTaGFraW5nKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIHByb3RlY3RlZCBzZXQgaXNTaGFraW5nKHZhbHVlOiBib29sZWFuKSB7fVxuXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvL1xuICAgIC8vICBQdWJsaWMgUHJvcGVydGllc1xuICAgIC8vXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIHB1YmxpYyBnZXQgZXZlbnRzKCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgICAgIHJldHVybiB0aGlzLm9ic2VydmVyLmFzT2JzZXJ2YWJsZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgY29uZmlnKCk6IFdpbmRvd0NvbmZpZyB7XG4gICAgICAgIHJldHVybiB0aGlzLnByb3BlcnRpZXMuY29uZmlnO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgY29udGVudCgpOiBJV2luZG93Q29udGVudCB7XG4gICAgICAgIHJldHVybiAhXy5pc05pbCh0aGlzLnJlZmVyZW5jZSkgPyB0aGlzLnJlZmVyZW5jZS5pbnN0YW5jZSA6IG51bGw7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBjb250YWluZXIoKTogSFRNTEVsZW1lbnQge1xuICAgICAgICByZXR1cm4gdGhpcy5fY29udGFpbmVyO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgd3JhcHBlcigpOiBIVE1MRWxlbWVudCB7XG4gICAgICAgIHJldHVybiB0aGlzLl93cmFwcGVyO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgYmFja2Ryb3AoKTogSFRNTEVsZW1lbnQge1xuICAgICAgICByZXR1cm4gdGhpcy5fYmFja2Ryb3A7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBpc09uVG9wKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIHB1YmxpYyBzZXQgaXNPblRvcCh2YWx1ZTogYm9vbGVhbikge31cblxuICAgIHB1YmxpYyBnZXQgaXNNaW5pbWl6ZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgcHVibGljIHNldCBpc01pbmltaXplZCh2YWx1ZTogYm9vbGVhbikge31cblxuICAgIHB1YmxpYyBnZXQgaXNEaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2lzRGlzYWJsZWQ7XG4gICAgfVxuICAgIHB1YmxpYyBzZXQgaXNEaXNhYmxlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgICAgICBpZiAodmFsdWUgPT09IHRoaXMuX2lzRGlzYWJsZWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLl9pc0Rpc2FibGVkID0gdmFsdWU7XG4gICAgICAgIHRoaXMuY29tbWl0SXNEaXNhYmxlZFByb3BlcnRpZXMoKTtcbiAgICAgICAgdGhpcy5lbWl0KFdpbmRvd0V2ZW50LkRJU0FCTEVEX0NIQU5HRUQpO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -6,9 +6,9 @@ import { LanguageService } from '@ts-core/frontend/language';
|
|
|
6
6
|
import { LanguageModule } from '../language/LanguageModule';
|
|
7
7
|
import { BottomSheetService } from './BottomSheetService';
|
|
8
8
|
import { MatBottomSheet, MatBottomSheetModule } from '@angular/material/bottom-sheet';
|
|
9
|
-
|
|
9
|
+
import { BottomSheetCloseElementComponent } from './component/bottom-sheet-close-element/bottom-sheet-close-element.component';
|
|
10
10
|
const IMPORTS = [CommonModule, FormsModule, MatBottomSheetModule, MatButtonModule, LanguageModule];
|
|
11
|
-
const ENTRY_COMPONENTS = [];
|
|
11
|
+
const ENTRY_COMPONENTS = [BottomSheetCloseElementComponent];
|
|
12
12
|
const DECLARATIONS = [...ENTRY_COMPONENTS];
|
|
13
13
|
const EXPORTS = [...DECLARATIONS];
|
|
14
14
|
export class BottomSheetModule {
|
|
@@ -37,4 +37,4 @@ BottomSheetModule.decorators = [
|
|
|
37
37
|
exports: EXPORTS
|
|
38
38
|
},] }
|
|
39
39
|
];
|
|
40
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQm90dG9tU2hlZXRNb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYm90dG9tU2hlZXQvQm90dG9tU2hlZXRNb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBdUIsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzdELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMxRCxPQUFPLEVBQUUsY0FBYyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDdEYsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sNkVBQTZFLENBQUM7QUFFL0gsTUFBTSxPQUFPLEdBQUcsQ0FBQyxZQUFZLEVBQUUsV0FBVyxFQUFFLG9CQUFvQixFQUFFLGVBQWUsRUFBRSxjQUFjLENBQUMsQ0FBQztBQUNuRyxNQUFNLGdCQUFnQixHQUFHLENBQUMsZ0NBQWdDLENBQUMsQ0FBQztBQUM1RCxNQUFNLFlBQVksR0FBRyxDQUFDLEdBQUcsZ0JBQWdCLENBQUMsQ0FBQztBQUUzQyxNQUFNLE9BQU8sR0FBRyxDQUFDLEdBQUcsWUFBWSxDQUFDLENBQUM7QUFNbEMsTUFBTSxPQUFPLGlCQUFpQjtJQUMxQiw2RUFBNkU7SUFDN0UsRUFBRTtJQUNGLGtCQUFrQjtJQUNsQixFQUFFO0lBQ0YsNkVBQTZFO0lBRXRFLE1BQU0sQ0FBQyxPQUFPO1FBQ2pCLE9BQU87WUFDSCxRQUFRLEVBQUUsa0JBQWtCO1lBQzVCLFNBQVMsRUFBRTtnQkFDUDtvQkFDSSxPQUFPLEVBQUUsa0JBQWtCO29CQUMzQixJQUFJLEVBQUUsQ0FBQyxjQUFjLEVBQUUsZUFBZSxDQUFDO29CQUN2QyxRQUFRLEVBQUUsa0JBQWtCO2lCQUMvQjthQUNKO1NBQ0osQ0FBQztJQUNOLENBQUM7OztZQXZCSixRQUFRLFNBQUM7Z0JBQ04sT0FBTyxFQUFFLE9BQU87Z0JBQ2hCLFlBQVksRUFBRSxZQUFZO2dCQUMxQixPQUFPLEVBQUUsT0FBTzthQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTGFuZ3VhZ2VTZXJ2aWNlIH0gZnJvbSAnQHRzLWNvcmUvZnJvbnRlbmQvbGFuZ3VhZ2UnO1xuaW1wb3J0IHsgTGFuZ3VhZ2VNb2R1bGUgfSBmcm9tICcuLi9sYW5ndWFnZS9MYW5ndWFnZU1vZHVsZSc7XG5pbXBvcnQgeyBCb3R0b21TaGVldFNlcnZpY2UgfSBmcm9tICcuL0JvdHRvbVNoZWV0U2VydmljZSc7XG5pbXBvcnQgeyBNYXRCb3R0b21TaGVldCwgTWF0Qm90dG9tU2hlZXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9ib3R0b20tc2hlZXQnO1xuaW1wb3J0IHsgQm90dG9tU2hlZXRDbG9zZUVsZW1lbnRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudC9ib3R0b20tc2hlZXQtY2xvc2UtZWxlbWVudC9ib3R0b20tc2hlZXQtY2xvc2UtZWxlbWVudC5jb21wb25lbnQnO1xuXG5jb25zdCBJTVBPUlRTID0gW0NvbW1vbk1vZHVsZSwgRm9ybXNNb2R1bGUsIE1hdEJvdHRvbVNoZWV0TW9kdWxlLCBNYXRCdXR0b25Nb2R1bGUsIExhbmd1YWdlTW9kdWxlXTtcbmNvbnN0IEVOVFJZX0NPTVBPTkVOVFMgPSBbQm90dG9tU2hlZXRDbG9zZUVsZW1lbnRDb21wb25lbnRdO1xuY29uc3QgREVDTEFSQVRJT05TID0gWy4uLkVOVFJZX0NPTVBPTkVOVFNdO1xuXG5jb25zdCBFWFBPUlRTID0gWy4uLkRFQ0xBUkFUSU9OU107XG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IElNUE9SVFMsXG4gICAgZGVjbGFyYXRpb25zOiBERUNMQVJBVElPTlMsXG4gICAgZXhwb3J0czogRVhQT1JUU1xufSlcbmV4cG9ydCBjbGFzcyBCb3R0b21TaGVldE1vZHVsZSB7XG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvL1xuICAgIC8vIFx0U3RhdGljIE1ldGhvZHNcbiAgICAvL1xuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICBwdWJsaWMgc3RhdGljIGZvclJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVyczxCb3R0b21TaGVldE1vZHVsZT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgbmdNb2R1bGU6IEJvdHRvbVNoZWV0U2VydmljZSxcbiAgICAgICAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgcHJvdmlkZTogQm90dG9tU2hlZXRTZXJ2aWNlLFxuICAgICAgICAgICAgICAgICAgICBkZXBzOiBbTWF0Qm90dG9tU2hlZXQsIExhbmd1YWdlU2VydmljZV0sXG4gICAgICAgICAgICAgICAgICAgIHVzZUNsYXNzOiBCb3R0b21TaGVldFNlcnZpY2VcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdXG4gICAgICAgIH07XG4gICAgfVxufVxuIl19
|
|
@@ -6,7 +6,7 @@ import { LanguageService } from '@ts-core/frontend/language';
|
|
|
6
6
|
import * as _ from 'lodash';
|
|
7
7
|
import { Subject } from 'rxjs';
|
|
8
8
|
import { WindowFactory } from '../window/WindowFactory';
|
|
9
|
-
import {
|
|
9
|
+
import { BottomSheetBaseComponent } from './component/BottomSheetBaseComponent';
|
|
10
10
|
import { WindowConfig } from '../window/WindowConfig';
|
|
11
11
|
import { WindowServiceEvent } from '../window/WindowService';
|
|
12
12
|
import { QuestionManager } from '../question/QuestionManager';
|
|
@@ -26,7 +26,7 @@ export class BottomSheetService extends Destroyable {
|
|
|
26
26
|
this.dialog = dialog;
|
|
27
27
|
this.language = language;
|
|
28
28
|
this.observer = new Subject();
|
|
29
|
-
this.factory = new WindowFactory(
|
|
29
|
+
this.factory = new WindowFactory(BottomSheetBaseComponent);
|
|
30
30
|
this.questionComponent = WindowQuestionComponent;
|
|
31
31
|
}
|
|
32
32
|
// --------------------------------------------------------------------------
|
|
@@ -100,4 +100,4 @@ BottomSheetService.ctorParameters = () => [
|
|
|
100
100
|
{ type: MatBottomSheet },
|
|
101
101
|
{ type: LanguageService }
|
|
102
102
|
];
|
|
103
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQm90dG9tU2hlZXRTZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2JvdHRvbVNoZWV0L0JvdHRvbVNoZWV0U2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxjQUFjLEVBQTJDLE1BQU0sZ0NBQWdDLENBQUM7QUFDekcsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDN0QsT0FBTyxLQUFLLENBQUMsTUFBTSxRQUFRLENBQUM7QUFDNUIsT0FBTyxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMzQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFeEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzlELE9BQU8sRUFBRSxZQUFZLEVBQXVCLE1BQU0sd0JBQXdCLENBQUM7QUFFM0UsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzlELE9BQU8sRUFBK0IsWUFBWSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbEYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sK0RBQStELENBQUM7Ozs7QUFHeEcsTUFBTSxPQUFPLGtCQUFtQixTQUFRLFdBQVc7SUFlL0MsNkVBQTZFO0lBQzdFLEVBQUU7SUFDRixlQUFlO0lBQ2YsRUFBRTtJQUNGLDZFQUE2RTtJQUU3RSxZQUFZLE1BQXNCLEVBQUUsUUFBeUI7UUFDekQsS0FBSyxFQUFFLENBQUM7UUFDUixJQUFJLENBQUMsTUFB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SSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ2hHLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztJQUNqRSxDQUFDO0lBRU0sUUFBUSxDQUFDLGFBQXNCLEVBQUUsV0FBaUIsRUFBRSxlQUFrQyxFQUFFLGFBQW1DO1FBQzlILElBQUksSUFBSSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLGFBQWEsRUFBRSxXQUFXLENBQUMsQ0FBQztRQUMvRCxJQUFJLE1BQU0sR0FBa0MsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLFlBQVksQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLEdBQUcsQ0FBQyxFQUFFLGFBQWEsQ0FBQyxDQUFDO1FBQ3hHLE1BQU0sQ0FBQyxJQUFJLEdBQUcsSUFBSSxlQUFlLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxlQUFlLEVBQUUsRUFBRSxJQUFJLEVBQUUsWUFBWSxDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDcEcsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO0lBQ2pFLENBQUM7SUFFRCw2RUFBNkU7SUFDN0UsRUFBRTtJQUNGLHFCQUFxQjtJQUNyQixFQUFFO0lBQ0YsNkVBQTZFO0lBRTdFLElBQVcsTUFBTTtRQUNiLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN4QyxDQUFDOzs7O1lBMUdKLFVBQVUsU0FBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUU7OztZQWhCekIsY0FBYztZQUdkLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnRUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRCb3R0b21TaGVldCwgTWF0Qm90dG9tU2hlZXRDb25maWcsIE1hdEJvdHRvbVNoZWV0UmVmIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYm90dG9tLXNoZWV0JztcbmltcG9ydCB7IERlc3Ryb3lhYmxlIH0gZnJvbSAnQHRzLWNvcmUvY29tbW9uJztcbmltcG9ydCB7IE9ic2VydmFibGVEYXRhIH0gZnJvbSAnQHRzLWNvcmUvY29tbW9uL29ic2VydmVyJztcbmltcG9ydCB7IExhbmd1YWdlU2VydmljZSB9IGZyb20gJ0B0cy1jb3JlL2Zyb250ZW5kL2xhbmd1YWdlJztcbmltcG9ydCAqIGFzIF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFdpbmRvd0ZhY3RvcnkgfSBmcm9tICcuLi93aW5kb3cvV2luZG93RmFjdG9yeSc7XG5pbXBvcnQgeyBJV2luZG93IH0gZnJvbSAnLi4vd2luZG93L0lXaW5kb3cnO1xuaW1wb3J0IHsgQm90dG9tU2hlZXRJbXBsIH0gZnJvbSAnLi9jb21wb25lbnQvQm90dG9tU2hlZXRJbXBsJztcbmltcG9ydCB7IFdpbmRvd0NvbmZpZywgV2luZG93Q29uZmlnT3B0aW9ucyB9IGZyb20gJy4uL3dpbmRvdy9XaW5kb3dDb25maWcnO1xuaW1wb3J0IHsgSVdpbmRvd0NvbnRlbnQgfSBmcm9tICcuLi93aW5kb3cvSVdpbmRvd0NvbnRlbnQnO1xuaW1wb3J0IHsgV2luZG93U2VydmljZUV2ZW50IH0gZnJvbSAnLi4vd2luZG93L1dpbmRvd1NlcnZpY2UnO1xuaW1wb3J0IHsgUXVlc3Rpb25NYW5hZ2VyIH0gZnJvbSAnLi4vcXVlc3Rpb24vUXVlc3Rpb25NYW5hZ2VyJztcbmltcG9ydCB7IElRdWVzdGlvbiwgSVF1ZXN0aW9uT3B0aW9ucywgUXVlc3Rpb25Nb2RlIH0gZnJvbSAnLi4vcXVlc3Rpb24vSVF1ZXN0aW9uJztcbmltcG9ydCB7IFdpbmRvd1F1ZXN0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi4vd2luZG93L2NvbXBvbmVudC93aW5kb3ctcXVlc3Rpb24vd2luZG93LXF1ZXN0aW9uLmNvbXBvbmVudCc7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgQm90dG9tU2hlZXRTZXJ2aWNlIGV4dGVuZHMgRGVzdHJveWFibGUge1xuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLy9cbiAgICAvLyBcdFByb3BlcnRpZXNcbiAgICAvL1xuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICBwdWJsaWMgZmFjdG9yeTogV2luZG93RmFjdG9yeTxJV2luZG93PjtcbiAgICBwdWJsaWMgcXVlc3Rpb25Db21wb25lbnQ6IENvbXBvbmVudFR5cGU8SVdpbmRvd0NvbnRlbnQ+O1xuXG4gICAgcHJvdGVjdGVkIGRpYWxvZzogTWF0Qm90dG9tU2hlZXQ7XG4gICAgcHJvdGVjdGVkIGxhbmd1YWdlOiBMYW5ndWFnZVNlcnZpY2U7XG5cbiAgICBwcml2YXRlIG9ic2VydmVyOiBTdWJqZWN0PE9ic2VydmFibGVEYXRhPFdpbmRvd1NlcnZpY2VFdmVudCwgSVdpbmRvdz4+O1xuXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvL1xuICAgIC8vIFx0Q29uc3RydWN0b3JcbiAgICAvL1xuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICBjb25zdHJ1Y3RvcihkaWFsb2c6IE1hdEJvdHRvbVNoZWV0LCBsYW5ndWFnZTogTGFuZ3VhZ2VTZXJ2aWNlKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgICAgIHRoaXMuZGlhbG9nID0gZGlhbG9nO1xuICAgICAgICB0aGlzLmxhbmd1YWdlID0gbGFuZ3VhZ2U7XG4gICAgICAgIHRoaXMub2JzZXJ2ZXIgPSBuZXcgU3ViamVjdCgpO1xuXG4gICAgICAgIHRoaXMuZmFjdG9yeSA9IG5ldyBXaW5kb3dGYWN0b3J5KEJvdHRvbVNoZWV0SW1wbCk7XG4gICAgICAgIHRoaXMucXVlc3Rpb25Db21wb25lbnQgPSBXaW5kb3dRdWVzdGlvbkNvbXBvbmVudDtcbiAgICB9XG5cbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIC8vXG4gICAgLy8gXHRQdWJsaWMgTWV0aG9kc1xuICAgIC8vXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIHB1YmxpYyBvcGVuPFQgZXh0ZW5kcyBJV2luZG93Q29udGVudD4oY29tcG9uZW50OiBDb21wb25lbnRUeXBlPFQ+LCBjb25maWc6IFdpbmRvd0NvbmZpZyk6IFQge1xuICAgICAgICBsZXQgcmVmZXJlbmNlOiBNYXRCb3R0b21TaGVldFJlZjxUPiA9IHRoaXMuZGlhbG9nLm9wZW4oY29tcG9uZW50LCBjb25maWcgYXMgTWF0Qm90dG9tU2hlZXRDb25maWc8VD4pO1xuXG4gICAgICAgIGxldCB3aW5kb3cgPSB0aGlzLmZhY3RvcnkuY3JlYXRlKHsgY29uZmlnLCByZWZlcmVuY2U6IHJlZmVyZW5jZSBhcyBhbnksIG92ZXJsYXk6IChyZWZlcmVuY2UgYXMgYW55KS5fb3ZlcmxheVJlZiB9KTtcbiAgICAgICAgbGV0IHN1YnNjcmlwdGlvbiA9IHdpbmRvdy5ldmVudHMuc3Vic2NyaWJlKGV2ZW50ID0+IHtcbiAgICAgICAgICAgIHN3aXRjaCAoZXZlbnQpIHtcbiAgICAgICAgICAgICAgICBjYXNlIFdpbmRvd1NlcnZpY2VFdmVudC5PUEVORUQ6XG4gICAgICAgICAgICAgICAgICAgIHRoaXMub2JzZXJ2ZXIubmV4dChuZXcgT2JzZXJ2YWJsZURhdGEoV2luZG93U2VydmljZUV2ZW50Lk9QRU5FRCwgd2luZG93KSk7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICAgICAgY2FzZSBXaW5kb3dTZXJ2aWNlRXZlbnQuQ0xPU0VEOlxuICAgICAgICAgICAgICAgICAgICBzdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5vYnNlcnZlci5uZXh0KG5ldyBPYnNlcnZhYmxlRGF0YShXaW5kb3dTZXJ2aWNlRXZlbnQuQ0xPU0VELCB3aW5kb3cpKTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gd2luZG93LmNvbnRlbnQgYXMgVDtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVtb3ZlQWxsKCk6IHZvaWQge31cblxuICAgIHB1YmxpYyBkZXN0cm95KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5pc0Rlc3Ryb3llZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHN1cGVyLmRlc3Ryb3koKTtcbiAgICAgICAgdGhpcy5yZW1vdmVBbGwoKTtcblxuICAgICAgICBpZiAoIV8uaXNOaWwodGhpcy5vYnNlcnZlcikpIHtcbiAgICAgICAgICAgIHRoaXMub2JzZXJ2ZXIuY29tcGxldGUoKTtcbiAgICAgICAgICAgIHRoaXMub2JzZXJ2ZXIgPSBudWxsO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5mYWN0b3J5ID0gbnVsbDtcbiAgICAgICAgdGhpcy5xdWVzdGlvbkNvbXBvbmVudCA9IG51bGw7XG5cbiAgICAgICAgdGhpcy5kaWFsb2cgPSBudWxsO1xuICAgICAgICB0aGlzLmxhbmd1YWdlID0gbnVsbDtcbiAgICB9XG5cbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIC8vXG4gICAgLy8gXHRBZGRpdGlvbmFsIE1ldGhvZHNcbiAgICAvL1xuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICBwdWJsaWMgaW5mbyh0cmFuc2xhdGlvbklkPzogc3RyaW5nLCB0cmFuc2xhdGlvbj86IGFueSwgcXVlc3Rpb25PcHRpb25zPzogSVF1ZXN0aW9uT3B0aW9ucywgY29uZmlnT3B0aW9ucz86IFdpbmRvd0NvbmZpZ09wdGlvbnMpOiBJUXVlc3Rpb24ge1xuICAgICAgICBsZXQgdGV4dCA9IHRoaXMubGFuZ3VhZ2UudHJhbnNsYXRlKHRyYW5zbGF0aW9uSWQsIHRyYW5zbGF0aW9uKTtcbiAgICAgICAgbGV0IGNvbmZpZzogV2luZG93Q29uZmlnPFF1ZXN0aW9uTWFuYWdlcj4gPSBfLmFzc2lnbihuZXcgV2luZG93Q29uZmlnKHRydWUsIGZhbHNlLCA0NTApLCBjb25maWdPcHRpb25zKTtcbiAgICAgICAgY29uZmlnLmRhdGEgPSBuZXcgUXVlc3Rpb25NYW5hZ2VyKF8uYXNzaWduKHF1ZXN0aW9uT3B0aW9ucywgeyBtb2RlOiBRdWVzdGlvbk1vZGUuSU5GTywgdGV4dCB9KSk7XG4gICAgICAgIHJldHVybiB0aGlzLm9wZW4odGhpcy5xdWVzdGlvbkNvbXBvbmVudCwgY29uZmlnKS5jb25maWcuZGF0YTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcXVlc3Rpb24odHJhbnNsYXRpb25JZD86IHN0cmluZywgdHJhbnNsYXRpb24/OiBhbnksIHF1ZXN0aW9uT3B0aW9ucz86IElRdWVzdGlvbk9wdGlvbnMsIGNvbmZpZ09wdGlvbnM/OiBXaW5kb3dDb25maWdPcHRpb25zKTogSVF1ZXN0aW9uIHtcbiAgICAgICAgbGV0IHRleHQgPSB0aGlzLmxhbmd1YWdlLnRyYW5zbGF0ZSh0cmFuc2xhdGlvbklkLCB0cmFuc2xhdGlvbik7XG4gICAgICAgIGxldCBjb25maWc6IFdpbmRvd0NvbmZpZzxRdWVzdGlvbk1hbmFnZXI+ID0gXy5hc3NpZ24obmV3IFdpbmRvd0NvbmZpZyh0cnVlLCBmYWxzZSwgNDUwKSwgY29uZmlnT3B0aW9ucyk7XG4gICAgICAgIGNvbmZpZy5kYXRhID0gbmV3IFF1ZXN0aW9uTWFuYWdlcihfLmFzc2lnbihxdWVzdGlvbk9wdGlvbnMsIHsgbW9kZTogUXVlc3Rpb25Nb2RlLlFVRVNUSU9OLCB0ZXh0IH0pKTtcbiAgICAgICAgcmV0dXJuIHRoaXMub3Blbih0aGlzLnF1ZXN0aW9uQ29tcG9uZW50LCBjb25maWcpLmNvbmZpZy5kYXRhO1xuICAgIH1cblxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLy9cbiAgICAvLyBcdFB1YmxpYyBQcm9wZXJ0aWVzXG4gICAgLy9cbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgcHVibGljIGdldCBldmVudHMoKTogT2JzZXJ2YWJsZTxPYnNlcnZhYmxlRGF0YTxXaW5kb3dTZXJ2aWNlRXZlbnQsIElXaW5kb3c+PiB7XG4gICAgICAgIHJldHVybiB0aGlzLm9ic2VydmVyLmFzT2JzZXJ2YWJsZSgpO1xuICAgIH1cbn1cbiJdfQ==
|
|
103
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQm90dG9tU2hlZXRTZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2JvdHRvbVNoZWV0L0JvdHRvbVNoZWV0U2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxjQUFjLEVBQTJDLE1BQU0sZ0NBQWdDLENBQUM7QUFDekcsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDN0QsT0FBTyxLQUFLLENBQUMsTUFBTSxRQUFRLENBQUM7QUFDNUIsT0FBTyxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMzQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFeEQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDaEYsT0FBTyxFQUFFLFlBQVksRUFBdUIsTUFBTSx3QkFBd0IsQ0FBQztBQUUzRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDOUQsT0FBTyxFQUErQixZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNsRixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwrREFBK0QsQ0FBQzs7OztBQUd4RyxNQUFNLE9BQU8sa0JBQW1CLFNBQVEsV0FBVztJQWUvQyw2RUFBNkU7SUFDN0UsRUFBRTtJQUNGLGVBQWU7SUFDZixFQUFFO0lBQ0YsNkVBQTZFO0lBRTdFLFlBQVksTUFBc0IsRUFBRSxRQUF5QjtRQUN6RCxLQUFLLEVBQUUsQ0FBQztRQUNSLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUU5QixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksYUFBYSxDQUFDLHdCQUF3QixDQUFDLENBQUM7UUFDM0QsSUFBSSxDQUFDLGlCQUFpQixHQUFHLHVCQUF1QixDQUFDO0lBQ3JELENBQUM7SUFFRCw2RUFBNkU7SUFDN0UsRUFBRTtJQUNGLGtCQUFrQjtJQUNsQixFQUFFO0lBQ0YsNkVBQTZFO0lBRXRFLElBQUksQ0FBMkIsU0FBMkIsRUFBRSxNQUFvQjtRQUNuRixJQUFJLFNBQVMsR0FBeUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLE1BQWlDLENBQUMsQ0FBQztRQUVyRyxJQUFJLE1BQU0sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsU0FBZ0IsRUFBRSxPQUFPLEVBQUcsU0FBaUIsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO1FBQ25ILElBQUksWUFBWSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQy9DLFFBQVEsS0FBSyxFQUFFO2dCQUNYLEtBQUssa0JBQWtCLENBQUMsTUFBTTtvQkFDMUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxjQUFjLENBQUMsa0JBQWtCLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUM7b0JBQzFFLE1BQU07Z0JBRVYsS0FBSyxrQkFBa0IsQ0FBQyxNQUFNO29CQUMxQixZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7b0JBQzNCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksY0FBYyxDQUFDLGtCQUFrQixDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDO29CQUMxRSxNQUFNO2FBQ2I7UUFDTCxDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sTUFBTSxDQUFDLE9BQVksQ0FBQztJQUMvQixDQUFDO0lBRU0sU0FBUyxLQUFVLENBQUM7SUFFcEIsT0FBTztRQUNWLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNsQixPQUFPO1NBQ1Y7UUFDRCxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDaEIsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBRWpCLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRTtZQUN6QixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1NBQ3hCO1FBRUQsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFDcEIsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQztRQUU5QixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztRQUNuQixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztJQUN6QixDQUFDO0lBRUQsNkVBQTZFO0lBQzdFLEVBQUU7SUFDRixzQkFBc0I7SUFDdEIsRUFBRTtJQUNGLDZFQUE2RTtJQUV0RSxJQUFJLENBQUMsYUFBc0IsRUFBRSxXQUFpQixFQUFFLGVBQWtDLEVBQUUsYUFBbUM7UUFDMUgsSUFBSSxJQUFJLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsYUFBYSxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBQy9ELElBQUksTUFBTSxHQUFrQyxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksWUFBWSxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsR0FBRyxDQUFDLEVBQUUsYUFBYSxDQUFDLENBQUM7UUFDeEcsTUFBTSxDQUFDLElBQUksR0FBRyxJQUFJLGVBQWUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLGVBQWUsRUFBRSxFQUFFLElBQUksRUFBRSxZQUFZLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNoRyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7SUFDakUsQ0FBQztJQUVNLFFBQVEsQ0FBQyxhQUFzQixFQUFFLFdBQWlCLEVBQUUsZUFBa0MsRUFBRSxhQUFtQztRQUM5SCxJQUFJLElBQUksR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxhQUFhLEVBQUUsV0FBVyxDQUFDLENBQUM7UUFDL0QsSUFBSSxNQUFNLEdBQWtDLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxZQUFZLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxHQUFHLENBQUMsRUFBRSxhQUFhLENBQUMsQ0FBQztRQUN4RyxNQUFNLENBQUMsSUFBSSxHQUFHLElBQUksZUFBZSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsZUFBZSxFQUFFLEVBQUUsSUFBSSxFQUFFLFlBQVksQ0FBQyxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3BHLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztJQUNqRSxDQUFDO0lBRUQsNkVBQTZFO0lBQzdFLEVBQUU7SUFDRixxQkFBcUI7SUFDckIsRUFBRTtJQUNGLDZFQUE2RTtJQUU3RSxJQUFXLE1BQU07UUFDYixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDeEMsQ0FBQzs7OztZQTFHSixVQUFVLFNBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFOzs7WUFoQnpCLGNBQWM7WUFHZCxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50VHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0Qm90dG9tU2hlZXQsIE1hdEJvdHRvbVNoZWV0Q29uZmlnLCBNYXRCb3R0b21TaGVldFJlZiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2JvdHRvbS1zaGVldCc7XG5pbXBvcnQgeyBEZXN0cm95YWJsZSB9IGZyb20gJ0B0cy1jb3JlL2NvbW1vbic7XG5pbXBvcnQgeyBPYnNlcnZhYmxlRGF0YSB9IGZyb20gJ0B0cy1jb3JlL2NvbW1vbi9vYnNlcnZlcic7XG5pbXBvcnQgeyBMYW5ndWFnZVNlcnZpY2UgfSBmcm9tICdAdHMtY29yZS9mcm9udGVuZC9sYW5ndWFnZSc7XG5pbXBvcnQgKiBhcyBfIGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBXaW5kb3dGYWN0b3J5IH0gZnJvbSAnLi4vd2luZG93L1dpbmRvd0ZhY3RvcnknO1xuaW1wb3J0IHsgSVdpbmRvdyB9IGZyb20gJy4uL3dpbmRvdy9JV2luZG93JztcbmltcG9ydCB7IEJvdHRvbVNoZWV0QmFzZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50L0JvdHRvbVNoZWV0QmFzZUNvbXBvbmVudCc7XG5pbXBvcnQgeyBXaW5kb3dDb25maWcsIFdpbmRvd0NvbmZpZ09wdGlvbnMgfSBmcm9tICcuLi93aW5kb3cvV2luZG93Q29uZmlnJztcbmltcG9ydCB7IElXaW5kb3dDb250ZW50IH0gZnJvbSAnLi4vd2luZG93L0lXaW5kb3dDb250ZW50JztcbmltcG9ydCB7IFdpbmRvd1NlcnZpY2VFdmVudCB9IGZyb20gJy4uL3dpbmRvdy9XaW5kb3dTZXJ2aWNlJztcbmltcG9ydCB7IFF1ZXN0aW9uTWFuYWdlciB9IGZyb20gJy4uL3F1ZXN0aW9uL1F1ZXN0aW9uTWFuYWdlcic7XG5pbXBvcnQgeyBJUXVlc3Rpb24sIElRdWVzdGlvbk9wdGlvbnMsIFF1ZXN0aW9uTW9kZSB9IGZyb20gJy4uL3F1ZXN0aW9uL0lRdWVzdGlvbic7XG5pbXBvcnQgeyBXaW5kb3dRdWVzdGlvbkNvbXBvbmVudCB9IGZyb20gJy4uL3dpbmRvdy9jb21wb25lbnQvd2luZG93LXF1ZXN0aW9uL3dpbmRvdy1xdWVzdGlvbi5jb21wb25lbnQnO1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIEJvdHRvbVNoZWV0U2VydmljZSBleHRlbmRzIERlc3Ryb3lhYmxlIHtcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIC8vXG4gICAgLy8gXHRQcm9wZXJ0aWVzXG4gICAgLy9cbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgcHVibGljIGZhY3Rvcnk6IFdpbmRvd0ZhY3Rvcnk8SVdpbmRvdz47XG4gICAgcHVibGljIHF1ZXN0aW9uQ29tcG9uZW50OiBDb21wb25lbnRUeXBlPElXaW5kb3dDb250ZW50PjtcblxuICAgIHByb3RlY3RlZCBkaWFsb2c6IE1hdEJvdHRvbVNoZWV0O1xuICAgIHByb3RlY3RlZCBsYW5ndWFnZTogTGFuZ3VhZ2VTZXJ2aWNlO1xuXG4gICAgcHJpdmF0ZSBvYnNlcnZlcjogU3ViamVjdDxPYnNlcnZhYmxlRGF0YTxXaW5kb3dTZXJ2aWNlRXZlbnQsIElXaW5kb3c+PjtcblxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLy9cbiAgICAvLyBcdENvbnN0cnVjdG9yXG4gICAgLy9cbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgY29uc3RydWN0b3IoZGlhbG9nOiBNYXRCb3R0b21TaGVldCwgbGFuZ3VhZ2U6IExhbmd1YWdlU2VydmljZSkge1xuICAgICAgICBzdXBlcigpO1xuICAgICAgICB0aGlzLmRpYWxvZyA9IGRpYWxvZztcbiAgICAgICAgdGhpcy5sYW5ndWFnZSA9IGxhbmd1YWdlO1xuICAgICAgICB0aGlzLm9ic2VydmVyID0gbmV3IFN1YmplY3QoKTtcblxuICAgICAgICB0aGlzLmZhY3RvcnkgPSBuZXcgV2luZG93RmFjdG9yeShCb3R0b21TaGVldEJhc2VDb21wb25lbnQpO1xuICAgICAgICB0aGlzLnF1ZXN0aW9uQ29tcG9uZW50ID0gV2luZG93UXVlc3Rpb25Db21wb25lbnQ7XG4gICAgfVxuXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvL1xuICAgIC8vIFx0UHVibGljIE1ldGhvZHNcbiAgICAvL1xuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICBwdWJsaWMgb3BlbjxUIGV4dGVuZHMgSVdpbmRvd0NvbnRlbnQ+KGNvbXBvbmVudDogQ29tcG9uZW50VHlwZTxUPiwgY29uZmlnOiBXaW5kb3dDb25maWcpOiBUIHtcbiAgICAgICAgbGV0IHJlZmVyZW5jZTogTWF0Qm90dG9tU2hlZXRSZWY8VD4gPSB0aGlzLmRpYWxvZy5vcGVuKGNvbXBvbmVudCwgY29uZmlnIGFzIE1hdEJvdHRvbVNoZWV0Q29uZmlnPFQ+KTtcblxuICAgICAgICBsZXQgd2luZG93ID0gdGhpcy5mYWN0b3J5LmNyZWF0ZSh7IGNvbmZpZywgcmVmZXJlbmNlOiByZWZlcmVuY2UgYXMgYW55LCBvdmVybGF5OiAocmVmZXJlbmNlIGFzIGFueSkuX292ZXJsYXlSZWYgfSk7XG4gICAgICAgIGxldCBzdWJzY3JpcHRpb24gPSB3aW5kb3cuZXZlbnRzLnN1YnNjcmliZShldmVudCA9PiB7XG4gICAgICAgICAgICBzd2l0Y2ggKGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgY2FzZSBXaW5kb3dTZXJ2aWNlRXZlbnQuT1BFTkVEOlxuICAgICAgICAgICAgICAgICAgICB0aGlzLm9ic2VydmVyLm5leHQobmV3IE9ic2VydmFibGVEYXRhKFdpbmRvd1NlcnZpY2VFdmVudC5PUEVORUQsIHdpbmRvdykpO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgICAgIGNhc2UgV2luZG93U2VydmljZUV2ZW50LkNMT1NFRDpcbiAgICAgICAgICAgICAgICAgICAgc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMub2JzZXJ2ZXIubmV4dChuZXcgT2JzZXJ2YWJsZURhdGEoV2luZG93U2VydmljZUV2ZW50LkNMT1NFRCwgd2luZG93KSk7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHdpbmRvdy5jb250ZW50IGFzIFQ7XG4gICAgfVxuXG4gICAgcHVibGljIHJlbW92ZUFsbCgpOiB2b2lkIHt9XG5cbiAgICBwdWJsaWMgZGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuaXNEZXN0cm95ZWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBzdXBlci5kZXN0cm95KCk7XG4gICAgICAgIHRoaXMucmVtb3ZlQWxsKCk7XG5cbiAgICAgICAgaWYgKCFfLmlzTmlsKHRoaXMub2JzZXJ2ZXIpKSB7XG4gICAgICAgICAgICB0aGlzLm9ic2VydmVyLmNvbXBsZXRlKCk7XG4gICAgICAgICAgICB0aGlzLm9ic2VydmVyID0gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuZmFjdG9yeSA9IG51bGw7XG4gICAgICAgIHRoaXMucXVlc3Rpb25Db21wb25lbnQgPSBudWxsO1xuXG4gICAgICAgIHRoaXMuZGlhbG9nID0gbnVsbDtcbiAgICAgICAgdGhpcy5sYW5ndWFnZSA9IG51bGw7XG4gICAgfVxuXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvL1xuICAgIC8vIFx0QWRkaXRpb25hbCBNZXRob2RzXG4gICAgLy9cbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgcHVibGljIGluZm8odHJhbnNsYXRpb25JZD86IHN0cmluZywgdHJhbnNsYXRpb24/OiBhbnksIHF1ZXN0aW9uT3B0aW9ucz86IElRdWVzdGlvbk9wdGlvbnMsIGNvbmZpZ09wdGlvbnM/OiBXaW5kb3dDb25maWdPcHRpb25zKTogSVF1ZXN0aW9uIHtcbiAgICAgICAgbGV0IHRleHQgPSB0aGlzLmxhbmd1YWdlLnRyYW5zbGF0ZSh0cmFuc2xhdGlvbklkLCB0cmFuc2xhdGlvbik7XG4gICAgICAgIGxldCBjb25maWc6IFdpbmRvd0NvbmZpZzxRdWVzdGlvbk1hbmFnZXI+ID0gXy5hc3NpZ24obmV3IFdpbmRvd0NvbmZpZyh0cnVlLCBmYWxzZSwgNDUwKSwgY29uZmlnT3B0aW9ucyk7XG4gICAgICAgIGNvbmZpZy5kYXRhID0gbmV3IFF1ZXN0aW9uTWFuYWdlcihfLmFzc2lnbihxdWVzdGlvbk9wdGlvbnMsIHsgbW9kZTogUXVlc3Rpb25Nb2RlLklORk8sIHRleHQgfSkpO1xuICAgICAgICByZXR1cm4gdGhpcy5vcGVuKHRoaXMucXVlc3Rpb25Db21wb25lbnQsIGNvbmZpZykuY29uZmlnLmRhdGE7XG4gICAgfVxuXG4gICAgcHVibGljIHF1ZXN0aW9uKHRyYW5zbGF0aW9uSWQ/OiBzdHJpbmcsIHRyYW5zbGF0aW9uPzogYW55LCBxdWVzdGlvbk9wdGlvbnM/OiBJUXVlc3Rpb25PcHRpb25zLCBjb25maWdPcHRpb25zPzogV2luZG93Q29uZmlnT3B0aW9ucyk6IElRdWVzdGlvbiB7XG4gICAgICAgIGxldCB0ZXh0ID0gdGhpcy5sYW5ndWFnZS50cmFuc2xhdGUodHJhbnNsYXRpb25JZCwgdHJhbnNsYXRpb24pO1xuICAgICAgICBsZXQgY29uZmlnOiBXaW5kb3dDb25maWc8UXVlc3Rpb25NYW5hZ2VyPiA9IF8uYXNzaWduKG5ldyBXaW5kb3dDb25maWcodHJ1ZSwgZmFsc2UsIDQ1MCksIGNvbmZpZ09wdGlvbnMpO1xuICAgICAgICBjb25maWcuZGF0YSA9IG5ldyBRdWVzdGlvbk1hbmFnZXIoXy5hc3NpZ24ocXVlc3Rpb25PcHRpb25zLCB7IG1vZGU6IFF1ZXN0aW9uTW9kZS5RVUVTVElPTiwgdGV4dCB9KSk7XG4gICAgICAgIHJldHVybiB0aGlzLm9wZW4odGhpcy5xdWVzdGlvbkNvbXBvbmVudCwgY29uZmlnKS5jb25maWcuZGF0YTtcbiAgICB9XG5cbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIC8vXG4gICAgLy8gXHRQdWJsaWMgUHJvcGVydGllc1xuICAgIC8vXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIHB1YmxpYyBnZXQgZXZlbnRzKCk6IE9ic2VydmFibGU8T2JzZXJ2YWJsZURhdGE8V2luZG93U2VydmljZUV2ZW50LCBJV2luZG93Pj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5vYnNlcnZlci5hc09ic2VydmFibGUoKTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { ComponentFactoryResolver, ViewContainerRef } from '@angular/core';
|
|
2
|
+
import { APPLICATION_INJECTOR } from '../../ApplicationInjector';
|
|
3
|
+
import { ViewUtil } from '../../util/ViewUtil';
|
|
4
|
+
import { BottomSheetImpl } from '../BottomSheetImpl';
|
|
5
|
+
import { BottomSheetCloseElementComponent } from './bottom-sheet-close-element/bottom-sheet-close-element.component';
|
|
6
|
+
export class BottomSheetBaseComponent extends BottomSheetImpl {
|
|
7
|
+
// --------------------------------------------------------------------------
|
|
8
|
+
//
|
|
9
|
+
// Protected Methods
|
|
10
|
+
//
|
|
11
|
+
// --------------------------------------------------------------------------
|
|
12
|
+
setProperties() {
|
|
13
|
+
super.setProperties();
|
|
14
|
+
this.createWindowComponents();
|
|
15
|
+
}
|
|
16
|
+
createWindowComponents() {
|
|
17
|
+
if (!(this.content.container instanceof ViewContainerRef)) {
|
|
18
|
+
return;
|
|
19
|
+
}
|
|
20
|
+
if (!this.config.disableClose && !this.closeWindow) {
|
|
21
|
+
let factory = this.resolver.resolveComponentFactory(BottomSheetBaseComponent.CLOSE_COMPONENT);
|
|
22
|
+
this.closeWindow = this.content.container.createComponent(factory);
|
|
23
|
+
this.closeWindow.instance.window = this;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
commitIsBlinkProperties() {
|
|
27
|
+
ViewUtil.toggleClass(this.container, this.blinkClass, this.isBlink);
|
|
28
|
+
}
|
|
29
|
+
commitIsDisabledProperties() {
|
|
30
|
+
ViewUtil.toggleClass(this.container, this.disabledClass, this.isDisabled);
|
|
31
|
+
ViewUtil.toggleClass(this.content.element, this.disabledClass, this.isDisabled);
|
|
32
|
+
ViewUtil.toggleClass(this.content.element.nativeElement.parentElement, this.disabledClass, this.isDisabled);
|
|
33
|
+
}
|
|
34
|
+
commitIsShakingProperties() {
|
|
35
|
+
ViewUtil.toggleClass(this.container, this.shakingClass, this.isShaking);
|
|
36
|
+
}
|
|
37
|
+
isNeedClickStopPropagation(event) {
|
|
38
|
+
if (!super.isNeedClickStopPropagation(event)) {
|
|
39
|
+
return false;
|
|
40
|
+
}
|
|
41
|
+
if (this.closeWindow && this.closeWindow.location.nativeElement === event.target) {
|
|
42
|
+
return false;
|
|
43
|
+
}
|
|
44
|
+
return true;
|
|
45
|
+
}
|
|
46
|
+
// --------------------------------------------------------------------------
|
|
47
|
+
//
|
|
48
|
+
// Protected Properties
|
|
49
|
+
//
|
|
50
|
+
// --------------------------------------------------------------------------
|
|
51
|
+
get resolver() {
|
|
52
|
+
return APPLICATION_INJECTOR().get(ComponentFactoryResolver);
|
|
53
|
+
}
|
|
54
|
+
get blinkClass() {
|
|
55
|
+
return 'vi-blink';
|
|
56
|
+
}
|
|
57
|
+
get disabledClass() {
|
|
58
|
+
return 'vi-disabled';
|
|
59
|
+
}
|
|
60
|
+
get minimizedClass() {
|
|
61
|
+
return 'vi-minimized';
|
|
62
|
+
}
|
|
63
|
+
get shakingClass() {
|
|
64
|
+
return 'shake-constant shake-horizontal';
|
|
65
|
+
}
|
|
66
|
+
// --------------------------------------------------------------------------
|
|
67
|
+
//
|
|
68
|
+
// Public Methods
|
|
69
|
+
//
|
|
70
|
+
// --------------------------------------------------------------------------
|
|
71
|
+
destroy() {
|
|
72
|
+
if (this.isDestroyed) {
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
75
|
+
super.destroy();
|
|
76
|
+
// Components will destroy automatically
|
|
77
|
+
this.closeWindow = null;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
// --------------------------------------------------------------------------
|
|
81
|
+
//
|
|
82
|
+
// Static Properties
|
|
83
|
+
//
|
|
84
|
+
// --------------------------------------------------------------------------
|
|
85
|
+
BottomSheetBaseComponent.CLOSE_COMPONENT = BottomSheetCloseElementComponent;
|
|
86
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQm90dG9tU2hlZXRCYXNlQ29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2JvdHRvbVNoZWV0L2NvbXBvbmVudC9Cb3R0b21TaGVldEJhc2VDb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHdCQUF3QixFQUFnQixnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLG1FQUFtRSxDQUFDO0FBRXJILE1BQU0sT0FBTyx3QkFBeUIsU0FBUSxlQUFlO0lBaUJ6RCw2RUFBNkU7SUFDN0UsRUFBRTtJQUNGLHFCQUFxQjtJQUNyQixFQUFFO0lBQ0YsNkVBQTZFO0lBRW5FLGFBQWE7UUFDbkIsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO0lBQ2xDLENBQUM7SUFFUyxzQkFBc0I7UUFDNUIsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLFlBQVksZ0JBQWdCLENBQUMsRUFBRTtZQUN2RCxPQUFPO1NBQ1Y7UUFDRCxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ2hELElBQUksT0FBTyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsdUJBQXVCLENBQUMsd0JBQXdCLENBQUMsZUFBZSxDQUFDLENBQUM7WUFDOUYsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDbkUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztTQUMzQztJQUNMLENBQUM7SUFFUyx1QkFBdUI7UUFDN0IsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3hFLENBQUM7SUFFUywwQkFBMEI7UUFDaEMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzFFLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDaEYsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ2hILENBQUM7SUFFUyx5QkFBeUI7UUFDL0IsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzVFLENBQUM7SUFFUywwQkFBMEIsQ0FBQyxLQUFpQjtRQUNsRCxJQUFJLENBQUMsS0FBSyxDQUFDLDBCQUEwQixDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQzFDLE9BQU8sS0FBSyxDQUFDO1NBQ2hCO1FBQ0QsSUFBSSxJQUFJLENBQUMsV0FBVyxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLGFBQWEsS0FBSyxLQUFLLENBQUMsTUFBTSxFQUFFO1lBQzlFLE9BQU8sS0FBSyxDQUFDO1NBQ2hCO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQUVELDZFQUE2RTtJQUM3RSxFQUFFO0lBQ0Ysd0JBQXdCO0lBQ3hCLEVBQUU7SUFDRiw2RUFBNkU7SUFFN0UsSUFBYyxRQUFRO1FBQ2xCLE9BQU8sb0JBQW9CLEVBQUUsQ0FBQyxHQUFHLENBQUMsd0JBQXdCLENBQUMsQ0FBQztJQUNoRSxDQUFDO0lBRUQsSUFBYyxVQUFVO1FBQ3BCLE9BQU8sVUFBVSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxJQUFjLGFBQWE7UUFDdkIsT0FBTyxhQUFhLENBQUM7SUFDekIsQ0FBQztJQUVELElBQWMsY0FBYztRQUN4QixPQUFPLGNBQWMsQ0FBQztJQUMxQixDQUFDO0lBRUQsSUFBYyxZQUFZO1FBQ3RCLE9BQU8saUNBQWlDLENBQUM7SUFDN0MsQ0FBQztJQUVELDZFQUE2RTtJQUM3RSxFQUFFO0lBQ0Ysa0JBQWtCO0lBQ2xCLEVBQUU7SUFDRiw2RUFBNkU7SUFFdEUsT0FBTztRQUNWLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNsQixPQUFPO1NBQ1Y7UUFDRCxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDaEIsd0NBQXdDO1FBQ3hDLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO0lBQzVCLENBQUM7O0FBckdELDZFQUE2RTtBQUM3RSxFQUFFO0FBQ0YscUJBQXFCO0FBQ3JCLEVBQUU7QUFDRiw2RUFBNkU7QUFFL0Qsd0NBQWUsR0FBRyxnQ0FBZ0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlciwgQ29tcG9uZW50UmVmLCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBUFBMSUNBVElPTl9JTkpFQ1RPUiB9IGZyb20gJy4uLy4uL0FwcGxpY2F0aW9uSW5qZWN0b3InO1xuaW1wb3J0IHsgVmlld1V0aWwgfSBmcm9tICcuLi8uLi91dGlsL1ZpZXdVdGlsJztcbmltcG9ydCB7IEJvdHRvbVNoZWV0SW1wbCB9IGZyb20gJy4uL0JvdHRvbVNoZWV0SW1wbCc7XG5pbXBvcnQgeyBCb3R0b21TaGVldENsb3NlRWxlbWVudENvbXBvbmVudCB9IGZyb20gJy4vYm90dG9tLXNoZWV0LWNsb3NlLWVsZW1lbnQvYm90dG9tLXNoZWV0LWNsb3NlLWVsZW1lbnQuY29tcG9uZW50JztcblxuZXhwb3J0IGNsYXNzIEJvdHRvbVNoZWV0QmFzZUNvbXBvbmVudCBleHRlbmRzIEJvdHRvbVNoZWV0SW1wbCB7XG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvL1xuICAgIC8vICBTdGF0aWMgUHJvcGVydGllc1xuICAgIC8vXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIHB1YmxpYyBzdGF0aWMgQ0xPU0VfQ09NUE9ORU5UID0gQm90dG9tU2hlZXRDbG9zZUVsZW1lbnRDb21wb25lbnQ7XG5cbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIC8vXG4gICAgLy8gIFByb3BlcnRpZXMgTWV0aG9kc1xuICAgIC8vXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIHByb3RlY3RlZCBjbG9zZVdpbmRvdzogQ29tcG9uZW50UmVmPGFueT47XG5cbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIC8vXG4gICAgLy8gIFByb3RlY3RlZCBNZXRob2RzXG4gICAgLy9cbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgcHJvdGVjdGVkIHNldFByb3BlcnRpZXMoKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLnNldFByb3BlcnRpZXMoKTtcbiAgICAgICAgdGhpcy5jcmVhdGVXaW5kb3dDb21wb25lbnRzKCk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGNyZWF0ZVdpbmRvd0NvbXBvbmVudHMoKTogdm9pZCB7XG4gICAgICAgIGlmICghKHRoaXMuY29udGVudC5jb250YWluZXIgaW5zdGFuY2VvZiBWaWV3Q29udGFpbmVyUmVmKSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGlmICghdGhpcy5jb25maWcuZGlzYWJsZUNsb3NlICYmICF0aGlzLmNsb3NlV2luZG93KSB7XG4gICAgICAgICAgICBsZXQgZmFjdG9yeSA9IHRoaXMucmVzb2x2ZXIucmVzb2x2ZUNvbXBvbmVudEZhY3RvcnkoQm90dG9tU2hlZXRCYXNlQ29tcG9uZW50LkNMT1NFX0NPTVBPTkVOVCk7XG4gICAgICAgICAgICB0aGlzLmNsb3NlV2luZG93ID0gdGhpcy5jb250ZW50LmNvbnRhaW5lci5jcmVhdGVDb21wb25lbnQoZmFjdG9yeSk7XG4gICAgICAgICAgICB0aGlzLmNsb3NlV2luZG93Lmluc3RhbmNlLndpbmRvdyA9IHRoaXM7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgY29tbWl0SXNCbGlua1Byb3BlcnRpZXMoKTogdm9pZCB7XG4gICAgICAgIFZpZXdVdGlsLnRvZ2dsZUNsYXNzKHRoaXMuY29udGFpbmVyLCB0aGlzLmJsaW5rQ2xhc3MsIHRoaXMuaXNCbGluayk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGNvbW1pdElzRGlzYWJsZWRQcm9wZXJ0aWVzKCk6IHZvaWQge1xuICAgICAgICBWaWV3VXRpbC50b2dnbGVDbGFzcyh0aGlzLmNvbnRhaW5lciwgdGhpcy5kaXNhYmxlZENsYXNzLCB0aGlzLmlzRGlzYWJsZWQpO1xuICAgICAgICBWaWV3VXRpbC50b2dnbGVDbGFzcyh0aGlzLmNvbnRlbnQuZWxlbWVudCwgdGhpcy5kaXNhYmxlZENsYXNzLCB0aGlzLmlzRGlzYWJsZWQpO1xuICAgICAgICBWaWV3VXRpbC50b2dnbGVDbGFzcyh0aGlzLmNvbnRlbnQuZWxlbWVudC5uYXRpdmVFbGVtZW50LnBhcmVudEVsZW1lbnQsIHRoaXMuZGlzYWJsZWRDbGFzcywgdGhpcy5pc0Rpc2FibGVkKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgY29tbWl0SXNTaGFraW5nUHJvcGVydGllcygpOiB2b2lkIHtcbiAgICAgICAgVmlld1V0aWwudG9nZ2xlQ2xhc3ModGhpcy5jb250YWluZXIsIHRoaXMuc2hha2luZ0NsYXNzLCB0aGlzLmlzU2hha2luZyk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGlzTmVlZENsaWNrU3RvcFByb3BhZ2F0aW9uKGV2ZW50OiBNb3VzZUV2ZW50KTogYm9vbGVhbiB7XG4gICAgICAgIGlmICghc3VwZXIuaXNOZWVkQ2xpY2tTdG9wUHJvcGFnYXRpb24oZXZlbnQpKSB7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuY2xvc2VXaW5kb3cgJiYgdGhpcy5jbG9zZVdpbmRvdy5sb2NhdGlvbi5uYXRpdmVFbGVtZW50ID09PSBldmVudC50YXJnZXQpIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIC8vXG4gICAgLy8gIFByb3RlY3RlZCBQcm9wZXJ0aWVzXG4gICAgLy9cbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgcHJvdGVjdGVkIGdldCByZXNvbHZlcigpOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIge1xuICAgICAgICByZXR1cm4gQVBQTElDQVRJT05fSU5KRUNUT1IoKS5nZXQoQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0IGJsaW5rQ2xhc3MoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuICd2aS1ibGluayc7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldCBkaXNhYmxlZENsYXNzKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiAndmktZGlzYWJsZWQnO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXQgbWluaW1pemVkQ2xhc3MoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuICd2aS1taW5pbWl6ZWQnO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXQgc2hha2luZ0NsYXNzKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiAnc2hha2UtY29uc3RhbnQgc2hha2UtaG9yaXpvbnRhbCc7XG4gICAgfVxuXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvL1xuICAgIC8vICBQdWJsaWMgTWV0aG9kc1xuICAgIC8vXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIHB1YmxpYyBkZXN0cm95KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5pc0Rlc3Ryb3llZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHN1cGVyLmRlc3Ryb3koKTtcbiAgICAgICAgLy8gQ29tcG9uZW50cyB3aWxsIGRlc3Ryb3kgYXV0b21hdGljYWxseVxuICAgICAgICB0aGlzLmNsb3NlV2luZG93ID0gbnVsbDtcbiAgICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { Component, ElementRef } from '@angular/core';
|
|
2
|
+
import { ViewUtil } from '../../../util/ViewUtil';
|
|
3
|
+
import { WindowElement } from '../../../window/component/WindowElement';
|
|
4
|
+
import * as _ from 'lodash';
|
|
5
|
+
export class BottomSheetCloseElementComponent extends WindowElement {
|
|
6
|
+
// --------------------------------------------------------------------------
|
|
7
|
+
//
|
|
8
|
+
// Constructor
|
|
9
|
+
//
|
|
10
|
+
// --------------------------------------------------------------------------
|
|
11
|
+
constructor(element) {
|
|
12
|
+
super(element);
|
|
13
|
+
// --------------------------------------------------------------------------
|
|
14
|
+
//
|
|
15
|
+
// Event Handlers
|
|
16
|
+
//
|
|
17
|
+
// --------------------------------------------------------------------------
|
|
18
|
+
this.mouseClickHandler = (event) => {
|
|
19
|
+
event.stopPropagation();
|
|
20
|
+
if (!_.isNil(this.window)) {
|
|
21
|
+
this.window.close();
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
// --------------------------------------------------------------------------
|
|
26
|
+
//
|
|
27
|
+
// Private Methods
|
|
28
|
+
//
|
|
29
|
+
// --------------------------------------------------------------------------
|
|
30
|
+
createChildren() {
|
|
31
|
+
super.createChildren();
|
|
32
|
+
if (!_.isNil(BottomSheetCloseElementComponent.ICON_VALUE)) {
|
|
33
|
+
ViewUtil.setProperty(this.nativeElement, 'innerHTML', BottomSheetCloseElementComponent.ICON_VALUE);
|
|
34
|
+
}
|
|
35
|
+
if (!_.isNil(BottomSheetCloseElementComponent.ICON_CLASS)) {
|
|
36
|
+
ViewUtil.addClasses(this.nativeElement, BottomSheetCloseElementComponent.ICON_CLASS);
|
|
37
|
+
}
|
|
38
|
+
ViewUtil.addClass(this.nativeElement, 'mouse-active');
|
|
39
|
+
this.nativeElement.addEventListener('click', this.mouseClickHandler, true);
|
|
40
|
+
}
|
|
41
|
+
destroyChildren() {
|
|
42
|
+
super.destroyChildren();
|
|
43
|
+
this.nativeElement.removeEventListener('click', this.mouseClickHandler, true);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
// --------------------------------------------------------------------------
|
|
47
|
+
//
|
|
48
|
+
// Constants
|
|
49
|
+
//
|
|
50
|
+
// --------------------------------------------------------------------------
|
|
51
|
+
BottomSheetCloseElementComponent.ICON_CLASS = 'fas fa-times';
|
|
52
|
+
BottomSheetCloseElementComponent.ICON_VALUE = null;
|
|
53
|
+
BottomSheetCloseElementComponent.decorators = [
|
|
54
|
+
{ type: Component, args: [{
|
|
55
|
+
selector: 'vi-bottom-sheet-close-element',
|
|
56
|
+
template: '',
|
|
57
|
+
styles: [":host{display:block;position:absolute;color:#fff;background-color:rgba(0,0,0,.4);border-radius:50%;padding:8px;font-size:14px;font-weight:700}:host:hover{background-color:rgba(0,0,0,.6)}:host.small{font-size:10px;padding:4px}"]
|
|
58
|
+
},] }
|
|
59
|
+
];
|
|
60
|
+
BottomSheetCloseElementComponent.ctorParameters = () => [
|
|
61
|
+
{ type: ElementRef }
|
|
62
|
+
];
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm90dG9tLXNoZWV0LWNsb3NlLWVsZW1lbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2JvdHRvbVNoZWV0L2NvbXBvbmVudC9ib3R0b20tc2hlZXQtY2xvc2UtZWxlbWVudC9ib3R0b20tc2hlZXQtY2xvc2UtZWxlbWVudC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ2xELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUN4RSxPQUFPLEtBQUssQ0FBQyxNQUFNLFFBQVEsQ0FBQztBQU81QixNQUFNLE9BQU8sZ0NBQWlDLFNBQVEsYUFBYTtJQVUvRCw2RUFBNkU7SUFDN0UsRUFBRTtJQUNGLGVBQWU7SUFDZixFQUFFO0lBQ0YsNkVBQTZFO0lBRTdFLFlBQVksT0FBbUI7UUFDM0IsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBMkJuQiw2RUFBNkU7UUFDN0UsRUFBRTtRQUNGLGtCQUFrQjtRQUNsQixFQUFFO1FBQ0YsNkVBQTZFO1FBRXJFLHNCQUFpQixHQUFHLENBQUMsS0FBaUIsRUFBUSxFQUFFO1lBQ3BELEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUN4QixJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUU7Z0JBQ3ZCLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUM7YUFDdkI7UUFDTCxDQUFDLENBQUM7SUFyQ0YsQ0FBQztJQUVELDZFQUE2RTtJQUM3RSxFQUFFO0lBQ0YsbUJBQW1CO0lBQ25CLEVBQUU7SUFDRiw2RUFBNkU7SUFFbkUsY0FBYztRQUNwQixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFFdkIsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsZ0NBQWdDLENBQUMsVUFBVSxDQUFDLEVBQUU7WUFDdkQsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLFdBQVcsRUFBRSxnQ0FBZ0MsQ0FBQyxVQUFVLENBQUMsQ0FBQztTQUN0RztRQUNELElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLGdDQUFnQyxDQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQ3ZELFFBQVEsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxnQ0FBZ0MsQ0FBQyxVQUFVLENBQUMsQ0FBQztTQUN4RjtRQUNELFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxjQUFjLENBQUMsQ0FBQztRQUN0RCxJQUFJLENBQUMsYUFBYSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDL0UsQ0FBQztJQUVTLGVBQWU7UUFDckIsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxhQUFhLENBQUMsbUJBQW1CLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNsRixDQUFDOztBQXpDRCw2RUFBNkU7QUFDN0UsRUFBRTtBQUNGLGFBQWE7QUFDYixFQUFFO0FBQ0YsNkVBQTZFO0FBRS9ELDJDQUFVLEdBQVcsY0FBYyxDQUFDO0FBQ3BDLDJDQUFVLEdBQVcsSUFBSSxDQUFDOztZQWIzQyxTQUFTLFNBQUM7Z0JBQ1AsUUFBUSxFQUFFLCtCQUErQjtnQkFFekMsUUFBUSxFQUFFLEVBQUU7O2FBQ2Y7OztZQVRtQixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBWaWV3VXRpbCB9IGZyb20gJy4uLy4uLy4uL3V0aWwvVmlld1V0aWwnO1xuaW1wb3J0IHsgV2luZG93RWxlbWVudCB9IGZyb20gJy4uLy4uLy4uL3dpbmRvdy9jb21wb25lbnQvV2luZG93RWxlbWVudCc7XG5pbXBvcnQgKiBhcyBfIGZyb20gJ2xvZGFzaCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndmktYm90dG9tLXNoZWV0LWNsb3NlLWVsZW1lbnQnLFxuICAgIHN0eWxlVXJsczogWydib3R0b20tc2hlZXQtY2xvc2UtZWxlbWVudC5jb21wb25lbnQuc2NzcyddLFxuICAgIHRlbXBsYXRlOiAnJ1xufSlcbmV4cG9ydCBjbGFzcyBCb3R0b21TaGVldENsb3NlRWxlbWVudENvbXBvbmVudCBleHRlbmRzIFdpbmRvd0VsZW1lbnQge1xuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLy9cbiAgICAvLyBcdENvbnN0YW50c1xuICAgIC8vXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIHB1YmxpYyBzdGF0aWMgSUNPTl9DTEFTUzogc3RyaW5nID0gJ2ZhcyBmYS10aW1lcyc7XG4gICAgcHVibGljIHN0YXRpYyBJQ09OX1ZBTFVFOiBzdHJpbmcgPSBudWxsO1xuXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvL1xuICAgIC8vIFx0Q29uc3RydWN0b3JcbiAgICAvL1xuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICBjb25zdHJ1Y3RvcihlbGVtZW50OiBFbGVtZW50UmVmKSB7XG4gICAgICAgIHN1cGVyKGVsZW1lbnQpO1xuICAgIH1cblxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLy9cbiAgICAvLyBcdFByaXZhdGUgTWV0aG9kc1xuICAgIC8vXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIHByb3RlY3RlZCBjcmVhdGVDaGlsZHJlbigpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIuY3JlYXRlQ2hpbGRyZW4oKTtcblxuICAgICAgICBpZiAoIV8uaXNOaWwoQm90dG9tU2hlZXRDbG9zZUVsZW1lbnRDb21wb25lbnQuSUNPTl9WQUxVRSkpIHtcbiAgICAgICAgICAgIFZpZXdVdGlsLnNldFByb3BlcnR5KHRoaXMubmF0aXZlRWxlbWVudCwgJ2lubmVySFRNTCcsIEJvdHRvbVNoZWV0Q2xvc2VFbGVtZW50Q29tcG9uZW50LklDT05fVkFMVUUpO1xuICAgICAgICB9XG4gICAgICAgIGlmICghXy5pc05pbChCb3R0b21TaGVldENsb3NlRWxlbWVudENvbXBvbmVudC5JQ09OX0NMQVNTKSkge1xuICAgICAgICAgICAgVmlld1V0aWwuYWRkQ2xhc3Nlcyh0aGlzLm5hdGl2ZUVsZW1lbnQsIEJvdHRvbVNoZWV0Q2xvc2VFbGVtZW50Q29tcG9uZW50LklDT05fQ0xBU1MpO1xuICAgICAgICB9XG4gICAgICAgIFZpZXdVdGlsLmFkZENsYXNzKHRoaXMubmF0aXZlRWxlbWVudCwgJ21vdXNlLWFjdGl2ZScpO1xuICAgICAgICB0aGlzLm5hdGl2ZUVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCB0aGlzLm1vdXNlQ2xpY2tIYW5kbGVyLCB0cnVlKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZGVzdHJveUNoaWxkcmVuKCk6IHZvaWQge1xuICAgICAgICBzdXBlci5kZXN0cm95Q2hpbGRyZW4oKTtcbiAgICAgICAgdGhpcy5uYXRpdmVFbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgdGhpcy5tb3VzZUNsaWNrSGFuZGxlciwgdHJ1ZSk7XG4gICAgfVxuXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvL1xuICAgIC8vIFx0RXZlbnQgSGFuZGxlcnNcbiAgICAvL1xuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICBwcml2YXRlIG1vdXNlQ2xpY2tIYW5kbGVyID0gKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCA9PiB7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICBpZiAoIV8uaXNOaWwodGhpcy53aW5kb3cpKSB7XG4gICAgICAgICAgICB0aGlzLndpbmRvdy5jbG9zZSgpO1xuICAgICAgICB9XG4gICAgfTtcbn1cbiJdfQ==
|
|
@@ -15,10 +15,10 @@ export class CdkTableFilterableComponent extends CdkTableBaseComponent {
|
|
|
15
15
|
CdkTableFilterableComponent.decorators = [
|
|
16
16
|
{ type: Component, args: [{
|
|
17
17
|
selector: 'vi-cdk-table-filterable',
|
|
18
|
-
template: "<mat-table
|
|
18
|
+
template: "<mat-table\n class=\"flex-grow-1 vertical-scroll-only\"\n matSort\n [dataSource]=\"table?.table?.dataSource\"\n [matSortActive]=\"sortActive\"\n [matSortDirection]=\"sortDirection\"\n [class.mat-nav-list]=\"settings?.isInteractive\"\n (matSortChange)=\"table.sortEventHandler($event)\"\n>\n <ng-container *ngFor=\"let column of columns; trackBy: columnTrackBy\">\n <ng-container [matColumnDef]=\"column.name\">\n <mat-header-cell\n class=\"px-2\"\n mat-sort-header\n [disableClear]=\"true\"\n [disabled]=\"column.isDisableSort\"\n [ngClass]=\"column.headerClassName\"\n *matHeaderCellDef\n >\n <span [innerHTML]=\"column.headerId | viTranslate\"></span>\n </mat-header-cell>\n <mat-cell\n class=\"px-2\"\n (click)=\"cellClickHandler(row, column)\"\n *matCellDef=\"let row\"\n [ngClass]=\"row | viCdkTableColumnClassName: column\"\n [ngStyle]=\"row | viCdkTableColumnStyleName: column\"\n >\n <span [ngClass]=\"column | viCdkTableCellClassName\" [vi-html-content-title]=\"row | viCdkTableColumnValue: column\"></span>\n </mat-cell>\n </ng-container>\n </ng-container>\n\n <mat-header-row *matHeaderRowDef=\"columnNames\"></mat-header-row>\n\n <mat-row\n class=\"mat-list-item\"\n *matRowDef=\"let row; columns: columnNames\"\n [ngClass]=\"row | viCdkTableRowClassName: rows:selectedRows\"\n [ngStyle]=\"row | viCdkTableRowStyleName: rows:selectedRows\"\n (click)=\"rowClicked.emit(row)\"\n ></mat-row>\n\n <p class=\"p-3 flex-shrink-0 text-center mouse-inactive\" [vi-translate]=\"settings?.noDataId\" *matNoDataRow></p>\n</mat-table>\n\n<mat-progress-bar class=\"flex-shrink-0 border transparent\" [mode]=\"table?.isLoading ? 'indeterminate' : 'determinate'\"></mat-progress-bar>\n"
|
|
19
19
|
},] }
|
|
20
20
|
];
|
|
21
21
|
CdkTableFilterableComponent.ctorParameters = () => [
|
|
22
22
|
{ type: ViewContainerRef }
|
|
23
23
|
];
|
|
24
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RrLXRhYmxlLWZpbHRlcmFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudC9jZGstdGFibGUvY2RrLXRhYmxlLWZpbHRlcmFibGUvY2RrLXRhYmxlLWZpbHRlcmFibGUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRWpFLE9BQU8sRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBTWxELE1BQU0sT0FBTywyQkFBOEMsU0FBUSxxQkFBa0U7SUFDakksNkVBQTZFO0lBQzdFLEVBQUU7SUFDRixlQUFlO0lBQ2YsRUFBRTtJQUNGLDZFQUE2RTtJQUU3RSxZQUFZLFNBQTJCO1FBQ25DLEtBQUssRUFBRSxDQUFDO1FBQ1IsUUFBUSxDQUFDLFVBQVUsQ0FBQyxTQUFTLEVBQUUsOEJBQThCLENBQUMsQ0FBQztJQUNuRSxDQUFDOzs7WUFkSixTQUFTLFNBQUM7Z0JBQ1AsUUFBUSxFQUFFLHlCQUF5QjtnQkFDbkMsMC9EQUFrRDthQUNyRDs7O1lBTm1CLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IENka1RhYmxlQmFzZUNvbXBvbmVudCB9IGZyb20gJy4uL0Nka1RhYmxlQmFzZUNvbXBvbmVudCc7XG5pbXBvcnQgeyBDZGtUYWJsZUZpbHRlcmFibGVNYXBDb2xsZWN0aW9uIH0gZnJvbSAnLi4vQ2RrVGFibGVGaWx0ZXJhYmxlTWFwQ29sbGVjdGlvbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIFZpZXdDb250YWluZXJSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFZpZXdVdGlsIH0gZnJvbSAnLi4vLi4vLi4vdXRpbC9WaWV3VXRpbCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndmktY2RrLXRhYmxlLWZpbHRlcmFibGUnLFxuICAgIHRlbXBsYXRlVXJsOiAnY2RrLXRhYmxlLWZpbHRlcmFibGUuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIENka1RhYmxlRmlsdGVyYWJsZUNvbXBvbmVudDxVID0gYW55LCBWID0gYW55PiBleHRlbmRzIENka1RhYmxlQmFzZUNvbXBvbmVudDxDZGtUYWJsZUZpbHRlcmFibGVNYXBDb2xsZWN0aW9uPFUsIFY+LCBVLCBWPiB7XG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvL1xuICAgIC8vIFx0Q29uc3RydWN0b3JcbiAgICAvL1xuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICBjb25zdHJ1Y3Rvcihjb250YWluZXI6IFZpZXdDb250YWluZXJSZWYpIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICAgICAgVmlld1V0aWwuYWRkQ2xhc3Nlcyhjb250YWluZXIsICdkLWZsZXggZmxleC1jb2x1bW4gc2Nyb2xsLW5vJyk7XG4gICAgfVxufVxuIl19
|