ngx-dropdown-list 1.2.0 → 21.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/{fesm2020 → fesm2022}/ngx-dropdown-list.mjs +783 -721
- package/fesm2022/ngx-dropdown-list.mjs.map +1 -0
- package/ngx-dropdown-list-21.0.1.tgz +0 -0
- package/package.json +10 -18
- package/{src/ngx-dropdown-list/dropdown-list.component.d.ts → types/ngx-dropdown-list.d.ts} +109 -106
- package/esm2020/ngx-dropdown-list.mjs +0 -5
- package/esm2020/public_api.mjs +0 -2
- package/esm2020/src/ngx-dropdown-list/anchor/anchor.component.mjs +0 -149
- package/esm2020/src/ngx-dropdown-list/dropdown/dropdown.component.mjs +0 -252
- package/esm2020/src/ngx-dropdown-list/dropdown-list.component.mjs +0 -233
- package/esm2020/src/ngx-dropdown-list/dropdown-list.module.mjs +0 -38
- package/esm2020/src/ngx-dropdown-list/filter/input-filter.component.mjs +0 -44
- package/esm2020/src/ngx-dropdown-list/group-item/group-item.component.mjs +0 -25
- package/esm2020/src/ngx-dropdown-list/index.mjs +0 -3
- package/esm2020/src/ngx-dropdown-list/item/item.component.mjs +0 -77
- package/esm2020/src/ngx-dropdown-list/types/index.mjs +0 -3
- package/esm2020/src/ngx-dropdown-list/types/selection-group-items.types.mjs +0 -2
- package/esm2020/src/ngx-dropdown-list/types/selection-item.types.mjs +0 -2
- package/esm2020/src/ngx-dropdown-list/utils/util.mjs +0 -59
- package/fesm2015/ngx-dropdown-list.mjs +0 -854
- package/fesm2015/ngx-dropdown-list.mjs.map +0 -1
- package/fesm2020/ngx-dropdown-list.mjs.map +0 -1
- package/ngx-dropdown-list.d.ts +0 -5
- package/public_api.d.ts +0 -1
- package/src/ngx-dropdown-list/anchor/anchor.component.d.ts +0 -85
- package/src/ngx-dropdown-list/dropdown/dropdown.component.d.ts +0 -120
- package/src/ngx-dropdown-list/dropdown-list.module.d.ts +0 -14
- package/src/ngx-dropdown-list/filter/input-filter.component.d.ts +0 -26
- package/src/ngx-dropdown-list/group-item/group-item.component.d.ts +0 -14
- package/src/ngx-dropdown-list/index.d.ts +0 -2
- package/src/ngx-dropdown-list/item/item.component.d.ts +0 -43
- package/src/ngx-dropdown-list/types/index.d.ts +0 -2
- package/src/ngx-dropdown-list/types/selection-group-items.types.d.ts +0 -8
- package/src/ngx-dropdown-list/types/selection-item.types.d.ts +0 -9
- package/src/ngx-dropdown-list/utils/util.d.ts +0 -21
|
@@ -1,252 +0,0 @@
|
|
|
1
|
-
import { Component, ElementRef, EventEmitter, Input, Output, ViewChild } from '@angular/core';
|
|
2
|
-
import { clearAllSelection, getFirstSelectedItem, hasGroup, stopPropagationAndDefault } from '../utils/util';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "../filter/input-filter.component";
|
|
5
|
-
import * as i2 from "../group-item/group-item.component";
|
|
6
|
-
import * as i3 from "../item/item.component";
|
|
7
|
-
import * as i4 from "@angular/common";
|
|
8
|
-
export class DropdownComponent {
|
|
9
|
-
constructor() {
|
|
10
|
-
/**
|
|
11
|
-
* bind to [checkbox], the flag for multi-select (checkbox) mode.
|
|
12
|
-
*/
|
|
13
|
-
this.checkbox = false;
|
|
14
|
-
/**
|
|
15
|
-
* bind to [filterBox] for displaying the filter input text box
|
|
16
|
-
*/
|
|
17
|
-
this.filterBox = false;
|
|
18
|
-
/**
|
|
19
|
-
* bind to [allowClear] for enabling the clearance (clearance is not avaiable when checkbox is enabled)
|
|
20
|
-
*/
|
|
21
|
-
this.allowClear = true;
|
|
22
|
-
/**
|
|
23
|
-
* bind to [formatNumber] for show formatted number text
|
|
24
|
-
*/
|
|
25
|
-
this.formatNumber = false;
|
|
26
|
-
/**
|
|
27
|
-
* for 2-way binding of [selectedValue]
|
|
28
|
-
*/
|
|
29
|
-
this.selectedValueChange = new EventEmitter(true);
|
|
30
|
-
/**
|
|
31
|
-
* [selectionChange] event that will be triggered when changing of the selection
|
|
32
|
-
*/
|
|
33
|
-
this.selectionChange = new EventEmitter(true);
|
|
34
|
-
/**
|
|
35
|
-
* [dropdownBlur] event that will be triggered with (blur) of dropdown
|
|
36
|
-
*/
|
|
37
|
-
this.dropdownBlur = new EventEmitter();
|
|
38
|
-
/**
|
|
39
|
-
* [itemClick] event that will be triggered when clicking the option of dropdown
|
|
40
|
-
*/
|
|
41
|
-
this.itemClick = new EventEmitter();
|
|
42
|
-
/**
|
|
43
|
-
* flag of clicking dropdown. It's to prevent (blur) of dropdown from happening in checkbox mode.
|
|
44
|
-
*/
|
|
45
|
-
this._clickedItems = false;
|
|
46
|
-
}
|
|
47
|
-
ngOnChanges(changes) {
|
|
48
|
-
if (changes.items) {
|
|
49
|
-
this._checkSelectionChange(changes.items.previousValue, changes.items.currentValue);
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
/**
|
|
53
|
-
* triggered when clicking the dropdown
|
|
54
|
-
*/
|
|
55
|
-
onItemsClick(event) {
|
|
56
|
-
if (event.offsetX > (event.target.clientWidth + event.target.clientLeft)) {
|
|
57
|
-
stopPropagationAndDefault(event);
|
|
58
|
-
return;
|
|
59
|
-
}
|
|
60
|
-
// should ignore clicking on filter
|
|
61
|
-
if (this.checkbox && event.target.type !== 'text') {
|
|
62
|
-
this._clickedItems = true;
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
/**
|
|
66
|
-
* triggered when clicking the item
|
|
67
|
-
*/
|
|
68
|
-
onItemClick(currentItem) {
|
|
69
|
-
if (!this.checkbox) {
|
|
70
|
-
this.selectedValue = this._getItemValue(currentItem); // currentItem.value != null ? currentItem.value : currentItem.text;
|
|
71
|
-
clearAllSelection(this.items);
|
|
72
|
-
// set the selection of current one
|
|
73
|
-
currentItem.selected = true;
|
|
74
|
-
this.itemClick.emit(currentItem);
|
|
75
|
-
this._onSelectionChange(this.selectedValue);
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
/**
|
|
79
|
-
* triggers with (blur) event of filter input box
|
|
80
|
-
*/
|
|
81
|
-
onFilterTextBlur(event) {
|
|
82
|
-
this.dropdownBlur.emit(event);
|
|
83
|
-
}
|
|
84
|
-
/**
|
|
85
|
-
* triggers with (blur) event of dropdown
|
|
86
|
-
*/
|
|
87
|
-
onItemsBlur(event) {
|
|
88
|
-
if (this.checkbox) {
|
|
89
|
-
if (this._clickedItems) {
|
|
90
|
-
// in checkbox mode, this blur event will be ignored when clicking the dropdown (check the checkbox)
|
|
91
|
-
event.target.focus();
|
|
92
|
-
this._clickedItems = false;
|
|
93
|
-
return;
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
this.dropdownBlur.emit(event);
|
|
97
|
-
}
|
|
98
|
-
/**
|
|
99
|
-
* toggle the selection when checking status changed (in checkbox mode)
|
|
100
|
-
*/
|
|
101
|
-
toggleSelection(item) {
|
|
102
|
-
item.selected = !item.selected;
|
|
103
|
-
this.selectionChange.emit(this._getItemValue(item)); // item.value != null ? item.value : item.text);
|
|
104
|
-
}
|
|
105
|
-
/**
|
|
106
|
-
* items values list after applying the filter
|
|
107
|
-
*/
|
|
108
|
-
get itemsValues() {
|
|
109
|
-
let filter;
|
|
110
|
-
if (this.filterValue) {
|
|
111
|
-
filter = this.filterValue.toUpperCase();
|
|
112
|
-
}
|
|
113
|
-
if (filter == null) {
|
|
114
|
-
return this.items;
|
|
115
|
-
}
|
|
116
|
-
if (!this.items || this.items.length === 0) {
|
|
117
|
-
return [];
|
|
118
|
-
}
|
|
119
|
-
if (hasGroup(this.items)) {
|
|
120
|
-
const items = [];
|
|
121
|
-
this.items.forEach(groupItem => {
|
|
122
|
-
if (groupItem.group != null && groupItem.group.toString().toUpperCase().includes(filter)) {
|
|
123
|
-
// if groupItem contains the filters, the groupItem needs to be displayed as well
|
|
124
|
-
items.push(groupItem);
|
|
125
|
-
}
|
|
126
|
-
else {
|
|
127
|
-
const filteredItems = groupItem.items.filter(item => item.text != null && item.text.toString().toUpperCase().includes(filter));
|
|
128
|
-
if (filteredItems && filteredItems.length > 0) {
|
|
129
|
-
items.push({ group: groupItem.group, items: filteredItems });
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
});
|
|
133
|
-
return items;
|
|
134
|
-
}
|
|
135
|
-
else {
|
|
136
|
-
return this.items.filter(item => (item.text != null && item.text.toString().toUpperCase().includes(filter)));
|
|
137
|
-
}
|
|
138
|
-
}
|
|
139
|
-
/**
|
|
140
|
-
* options CSS class
|
|
141
|
-
*/
|
|
142
|
-
get optionsClass() {
|
|
143
|
-
if (this.filterBox && !this.checkbox) {
|
|
144
|
-
return 'options with-filter';
|
|
145
|
-
}
|
|
146
|
-
else {
|
|
147
|
-
return 'options no-filter';
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
/**
|
|
151
|
-
* get item value. Return text if value is not available
|
|
152
|
-
*/
|
|
153
|
-
_getItemValue(item) {
|
|
154
|
-
return item ? item.value != null ? item.value : item.text : undefined;
|
|
155
|
-
}
|
|
156
|
-
/**
|
|
157
|
-
* selection changed, emits events: (selectedValueChange) and (selectionChange);
|
|
158
|
-
*/
|
|
159
|
-
_onSelectionChange(value) {
|
|
160
|
-
this.selectedValueChange.emit(value);
|
|
161
|
-
this.selectionChange.emit(value);
|
|
162
|
-
}
|
|
163
|
-
/**
|
|
164
|
-
* check whether the selection is changed. Emits relative events when if changed.
|
|
165
|
-
*/
|
|
166
|
-
_checkSelectionChange(previousValue, currentValue) {
|
|
167
|
-
const curSelectedItem = getFirstSelectedItem(currentValue);
|
|
168
|
-
const lastSelectedItem = getFirstSelectedItem(previousValue);
|
|
169
|
-
const curSelectedItemId = curSelectedItem ? curSelectedItem.id : undefined;
|
|
170
|
-
const lastSelectedItemId = lastSelectedItem ? lastSelectedItem.id : undefined;
|
|
171
|
-
if (curSelectedItemId !== lastSelectedItemId && !this.checkbox) {
|
|
172
|
-
this._onSelectionChange(this._getItemValue(curSelectedItem));
|
|
173
|
-
}
|
|
174
|
-
}
|
|
175
|
-
}
|
|
176
|
-
DropdownComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DropdownComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
177
|
-
DropdownComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DropdownComponent, selector: "dropdown", inputs: { placeHolder: "placeHolder", items: "items", checkbox: "checkbox", selectedValue: "selectedValue", filterBox: "filterBox", suffixText: "suffixText", disabled: "disabled", allowClear: "allowClear", formatNumber: "formatNumber" }, outputs: { selectedValueChange: "selectedValueChange", selectionChange: "selectionChange", dropdownBlur: "dropdownBlur", itemClick: "itemClick" }, viewQueries: [{ propertyName: "dropdownRef", first: true, predicate: ["dropdown"], descendants: true, read: ElementRef }, { propertyName: "filterInputRef", first: true, predicate: ["filterInput"], descendants: true, read: ElementRef }], usesOnChanges: true, ngImport: i0, template: `
|
|
178
|
-
<span #dropdown class="dropdown" tabindex="3" (mousedown)="onItemsClick($event)" (blur)="onItemsBlur($event)" *ngIf="!disabled" >
|
|
179
|
-
<input-filter #filterInput tabindex="4" *ngIf="filterBox && !checkbox" [(filterValue)]="filterValue" (inputFilterBlur)="onFilterTextBlur($event)"></input-filter>
|
|
180
|
-
<span #selectionOptions [ngClass]="optionsClass">
|
|
181
|
-
<ng-container *ngFor="let item of itemsValues" >
|
|
182
|
-
<ng-container *ngIf="item && item.group">
|
|
183
|
-
<group-item [item]="item"></group-item>
|
|
184
|
-
<item *ngFor="let subItem of item.items" (itemClick)="onItemClick(subItem)" (checkStatusChange)="toggleSelection(subItem)"
|
|
185
|
-
[item]="subItem" [checkbox]="checkbox" [formatNumber]="formatNumber" [suffixText]="suffixText">
|
|
186
|
-
</item>
|
|
187
|
-
</ng-container>
|
|
188
|
-
<ng-container *ngIf="item && !item.group">
|
|
189
|
-
<item (itemClick)="onItemClick(item)" (checkStatusChange)="toggleSelection(item)"
|
|
190
|
-
[item]="item" [checkbox]="checkbox" [formatNumber]="formatNumber" [suffixText]="suffixText">
|
|
191
|
-
</item>
|
|
192
|
-
</ng-container>
|
|
193
|
-
</ng-container>
|
|
194
|
-
</span>
|
|
195
|
-
</span>
|
|
196
|
-
`, isInline: true, styles: ["*,*:before,*:after{font-size:inherit;font-weight:inherit;font-family:inherit;box-sizing:inherit;background:inherit}.dropdown{width:100%;padding:0;display:none;margin:0;border:1px solid #66afe9;border-top:none;border-bottom:none;border-top-right-radius:0;border-top-left-radius:0;box-sizing:border-box;position:relative;z-index:999}.dropdown:focus{outline:0}.dropdown .options{width:calc(100% + 2px);left:0;box-sizing:border-box;background:white;position:absolute;max-height:228px;overflow-y:auto;overflow-x:hidden;border:1px solid #66afe9;border-top:none;border-bottom-right-radius:4px;border-bottom-left-radius:4px;margin-left:-1px;margin-right:-1px}.dropdown .with-filter{top:32px}.dropdown .no-filter{top:0}\n"], components: [{ type: i1.InputFilterComponent, selector: "input-filter", inputs: ["filterValue"], outputs: ["inputFilterBlur", "filterValueChange"] }, { type: i2.GroupItemComponent, selector: "group-item", inputs: ["item"] }, { type: i3.ItemComponent, selector: "item", inputs: ["checkbox", "item", "formatNumber", "suffixText"], outputs: ["itemClick", "checkStatusChange"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
|
|
197
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DropdownComponent, decorators: [{
|
|
198
|
-
type: Component,
|
|
199
|
-
args: [{ selector: 'dropdown', template: `
|
|
200
|
-
<span #dropdown class="dropdown" tabindex="3" (mousedown)="onItemsClick($event)" (blur)="onItemsBlur($event)" *ngIf="!disabled" >
|
|
201
|
-
<input-filter #filterInput tabindex="4" *ngIf="filterBox && !checkbox" [(filterValue)]="filterValue" (inputFilterBlur)="onFilterTextBlur($event)"></input-filter>
|
|
202
|
-
<span #selectionOptions [ngClass]="optionsClass">
|
|
203
|
-
<ng-container *ngFor="let item of itemsValues" >
|
|
204
|
-
<ng-container *ngIf="item && item.group">
|
|
205
|
-
<group-item [item]="item"></group-item>
|
|
206
|
-
<item *ngFor="let subItem of item.items" (itemClick)="onItemClick(subItem)" (checkStatusChange)="toggleSelection(subItem)"
|
|
207
|
-
[item]="subItem" [checkbox]="checkbox" [formatNumber]="formatNumber" [suffixText]="suffixText">
|
|
208
|
-
</item>
|
|
209
|
-
</ng-container>
|
|
210
|
-
<ng-container *ngIf="item && !item.group">
|
|
211
|
-
<item (itemClick)="onItemClick(item)" (checkStatusChange)="toggleSelection(item)"
|
|
212
|
-
[item]="item" [checkbox]="checkbox" [formatNumber]="formatNumber" [suffixText]="suffixText">
|
|
213
|
-
</item>
|
|
214
|
-
</ng-container>
|
|
215
|
-
</ng-container>
|
|
216
|
-
</span>
|
|
217
|
-
</span>
|
|
218
|
-
`, styles: ["*,*:before,*:after{font-size:inherit;font-weight:inherit;font-family:inherit;box-sizing:inherit;background:inherit}.dropdown{width:100%;padding:0;display:none;margin:0;border:1px solid #66afe9;border-top:none;border-bottom:none;border-top-right-radius:0;border-top-left-radius:0;box-sizing:border-box;position:relative;z-index:999}.dropdown:focus{outline:0}.dropdown .options{width:calc(100% + 2px);left:0;box-sizing:border-box;background:white;position:absolute;max-height:228px;overflow-y:auto;overflow-x:hidden;border:1px solid #66afe9;border-top:none;border-bottom-right-radius:4px;border-bottom-left-radius:4px;margin-left:-1px;margin-right:-1px}.dropdown .with-filter{top:32px}.dropdown .no-filter{top:0}\n"] }]
|
|
219
|
-
}], propDecorators: { dropdownRef: [{
|
|
220
|
-
type: ViewChild,
|
|
221
|
-
args: ['dropdown', { read: ElementRef }]
|
|
222
|
-
}], filterInputRef: [{
|
|
223
|
-
type: ViewChild,
|
|
224
|
-
args: ['filterInput', { read: ElementRef }]
|
|
225
|
-
}], placeHolder: [{
|
|
226
|
-
type: Input
|
|
227
|
-
}], items: [{
|
|
228
|
-
type: Input
|
|
229
|
-
}], checkbox: [{
|
|
230
|
-
type: Input
|
|
231
|
-
}], selectedValue: [{
|
|
232
|
-
type: Input
|
|
233
|
-
}], filterBox: [{
|
|
234
|
-
type: Input
|
|
235
|
-
}], suffixText: [{
|
|
236
|
-
type: Input
|
|
237
|
-
}], disabled: [{
|
|
238
|
-
type: Input
|
|
239
|
-
}], allowClear: [{
|
|
240
|
-
type: Input
|
|
241
|
-
}], formatNumber: [{
|
|
242
|
-
type: Input
|
|
243
|
-
}], selectedValueChange: [{
|
|
244
|
-
type: Output
|
|
245
|
-
}], selectionChange: [{
|
|
246
|
-
type: Output
|
|
247
|
-
}], dropdownBlur: [{
|
|
248
|
-
type: Output
|
|
249
|
-
}], itemClick: [{
|
|
250
|
-
type: Output
|
|
251
|
-
}] } });
|
|
252
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL25neC1kcm9wZG93bi1saXN0L2Ryb3Bkb3duL2Ryb3Bkb3duLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFhLE1BQU0sRUFBaUIsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3RILE9BQU8sRUFBQyxpQkFBaUIsRUFBRSxvQkFBb0IsRUFBRSxRQUFRLEVBQUUseUJBQXlCLEVBQUMsTUFBTSxlQUFlLENBQUM7Ozs7OztBQTJCM0csTUFBTSxPQUFPLGlCQUFpQjtJQXpCOUI7UUEwQ0U7O1dBRUc7UUFDTSxhQUFRLEdBQUcsS0FBSyxDQUFDO1FBSzFCOztXQUVHO1FBQ00sY0FBUyxHQUFHLEtBQUssQ0FBQztRQVMzQjs7V0FFRztRQUNNLGVBQVUsR0FBRyxJQUFJLENBQUM7UUFDM0I7O1dBRUc7UUFDTSxpQkFBWSxHQUFHLEtBQUssQ0FBQztRQUM5Qjs7V0FFRztRQUNPLHdCQUFtQixHQUFHLElBQUksWUFBWSxDQUFTLElBQUksQ0FBQyxDQUFDO1FBQy9EOztXQUVHO1FBQ08sb0JBQWUsR0FBRyxJQUFJLFlBQVksQ0FBTSxJQUFJLENBQUMsQ0FBQztRQUN4RDs7V0FFRztRQUNPLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUNqRDs7V0FFRztRQUNPLGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBSzlDOztXQUVHO1FBQ0ssa0JBQWEsR0FBRyxLQUFLLENBQUM7S0F5SS9CO0lBdklDLFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLE9BQU8sQ0FBQyxLQUFLLEVBQUU7WUFDakIsSUFBSSxDQUFDLHFCQUFxQixDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLE9BQU8sQ0FBQyxLQUFL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RTtnQkFJSyxjQUFjO3NCQUE3RCxTQUFTO3VCQUFDLGFBQWEsRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUU7Z0JBSXJDLFdBQVc7c0JBQW5CLEtBQUs7Z0JBSUcsS0FBSztzQkFBYixLQUFLO2dCQUlHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBSUcsYUFBYTtzQkFBckIsS0FBSztnQkFJRyxTQUFTO3NCQUFqQixLQUFLO2dCQUlHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBSUcsUUFBUTtzQkFBaEIsS0FBSztnQkFJRyxVQUFVO3NCQUFsQixLQUFLO2dCQUlHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBSUksbUJBQW1CO3NCQUE1QixNQUFNO2dCQUlHLGVBQWU7c0JBQXhCLE1BQU07Z0JBSUcsWUFBWTtzQkFBckIsTUFBTTtnQkFJRyxTQUFTO3NCQUFsQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uQ2hhbmdlcywgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzLCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge2NsZWFyQWxsU2VsZWN0aW9uLCBnZXRGaXJzdFNlbGVjdGVkSXRlbSwgaGFzR3JvdXAsIHN0b3BQcm9wYWdhdGlvbkFuZERlZmF1bHR9IGZyb20gJy4uL3V0aWxzL3V0aWwnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdkcm9wZG93bicsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxzcGFuICNkcm9wZG93biBjbGFzcz1cImRyb3Bkb3duXCIgdGFiaW5kZXg9XCIzXCIgKG1vdXNlZG93bik9XCJvbkl0ZW1zQ2xpY2soJGV2ZW50KVwiIChibHVyKT1cIm9uSXRlbXNCbHVyKCRldmVudClcIiAqbmdJZj1cIiFkaXNhYmxlZFwiID5cclxuICAgICAgPGlucHV0LWZpbHRlciAjZmlsdGVySW5wdXQgdGFiaW5kZXg9XCI0XCIgKm5nSWY9XCJmaWx0ZXJCb3ggJiYgIWNoZWNrYm94XCIgWyhmaWx0ZXJWYWx1ZSldPVwiZmlsdGVyVmFsdWVcIiAoaW5wdXRGaWx0ZXJCbHVyKT1cIm9uRmlsdGVyVGV4dEJsdXIoJGV2ZW50KVwiPjwvaW5wdXQtZmlsdGVyPlxyXG4gICAgICA8c3BhbiAjc2VsZWN0aW9uT3B0aW9ucyBbbmdDbGFzc109XCJvcHRpb25zQ2xhc3NcIj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIGl0ZW1zVmFsdWVzXCIgPlxyXG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIml0ZW0gJiYgaXRlbS5ncm91cFwiPlxyXG4gICAgICAgICAgICA8Z3JvdXAtaXRlbSBbaXRlbV09XCJpdGVtXCI+PC9ncm91cC1pdGVtPlxyXG4gICAgICAgICAgICA8aXRlbSAqbmdGb3I9XCJsZXQgc3ViSXRlbSBvZiBpdGVtLml0ZW1zXCIgKGl0ZW1DbGljayk9XCJvbkl0ZW1DbGljayhzdWJJdGVtKVwiIChjaGVja1N0YXR1c0NoYW5nZSk9XCJ0b2dnbGVTZWxlY3Rpb24oc3ViSXRlbSlcIlxyXG4gICAgICAgICAgICAgICAgICBbaXRlbV09XCJzdWJJdGVtXCIgW2NoZWNrYm94XT1cImNoZWNrYm94XCIgW2Zvcm1hdE51bWJlcl09XCJmb3JtYXROdW1iZXJcIiBbc3VmZml4VGV4dF09XCJzdWZmaXhUZXh0XCI+XHJcbiAgICAgICAgICAgIDwvaXRlbT5cclxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIml0ZW0gJiYgIWl0ZW0uZ3JvdXBcIj5cclxuICAgICAgICAgICAgPGl0ZW0gKGl0ZW1DbGljayk9XCJvbkl0ZW1DbGljayhpdGVtKVwiIChjaGVja1N0YXR1c0NoYW5nZSk9XCJ0b2dnbGVTZWxlY3Rpb24oaXRlbSlcIlxyXG4gICAgICAgICAgICAgICAgICBbaXRlbV09XCJpdGVtXCIgW2NoZWNrYm94XT1cImNoZWNrYm94XCIgW2Zvcm1hdE51bWJlcl09XCJmb3JtYXROdW1iZXJcIiBbc3VmZml4VGV4dF09XCJzdWZmaXhUZXh0XCI+XHJcbiAgICAgICAgICAgIDwvaXRlbT5cclxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8L3NwYW4+XHJcbiAgICA8L3NwYW4+XHJcbiAgYCxcclxuICBzdHlsZVVybHM6IFsnLi9kcm9wZG93bi5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcblxyXG5leHBvcnQgY2xhc3MgRHJvcGRvd25Db21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xyXG4gIC8qKlxyXG4gICAqIENoaWxkIGVsZW1lbnQgcmVmZXJlbmNlIG9mIGRyb3Bkb3duXHJcbiAgICovXHJcbiAgQFZpZXdDaGlsZCgnZHJvcGRvd24nLCB7IHJlYWQ6IEVsZW1lbnRSZWYgfSkgZHJvcGRvd25SZWY6IEVsZW1lbnRSZWY7XHJcbiAgLyoqXHJcbiAgICogQ2hpbGQgZWxlbWVudCByZWZlcmVuY2Ugb2YgZmlsdGVyIGlucHV0IHRleHRcclxuICAgKi9cclxuICBAVmlld0NoaWxkKCdmaWx0ZXJJbnB1dCcsIHsgcmVhZDogRWxlbWVudFJlZiB9KSBmaWx0ZXJJbnB1dFJlZjogRWxlbWVudFJlZjtcclxuICAvKipcclxuICAgKiBiaW5kIHRvIFtwbGFjZUhvbGRlcl0gZm9yIGRpc3BsYXlpbmcgdGhlIHBsYWNlIGhvbGRlciBzdHJpbmcgb2YgdGhlIGFuY2hvci5cclxuICAgKi9cclxuICBASW5wdXQoKSBwbGFjZUhvbGRlcjogc3RyaW5nO1xyXG4gIC8qKlxyXG4gICAqIGJpbmQgdG8gW2l0ZW1zXSBmb3IgdGhlIG9wdGlvbnMvZ3JvdXBzIGluIHRoZSBkcm9wZG93blxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGl0ZW1zOiBhbnlbXTtcclxuICAvKipcclxuICAgKiBiaW5kIHRvIFtjaGVja2JveF0sIHRoZSBmbGFnIGZvciBtdWx0aS1zZWxlY3QgKGNoZWNrYm94KSBtb2RlLlxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGNoZWNrYm94ID0gZmFsc2U7XHJcbiAgLyoqXHJcbiAgICogYmluZCB0byBbc2VsZWN0ZWRWYWx1ZV0gZm9yIHRoZSB2YWx1ZSBvZiB0aGUgc2VsZWN0ZWQgb3B0aW9uIGZyb20gZHJvcGRvd25cclxuICAgKi9cclxuICBASW5wdXQoKSBzZWxlY3RlZFZhbHVlOiBhbnk7XHJcbiAgLyoqXHJcbiAgICogYmluZCB0byBbZmlsdGVyQm94XSBmb3IgZGlzcGxheWluZyB0aGUgZmlsdGVyIGlucHV0IHRleHQgYm94XHJcbiAgICovXHJcbiAgQElucHV0KCkgZmlsdGVyQm94ID0gZmFsc2U7XHJcbiAgLyoqXHJcbiAgICogYmluZCB0byBbc3VmZml4VGV4dF0gZm9yIGRpc3BsYXlpbmcgdGhlIHN1ZmZpeCBvZiB0aGUgc2VsZWN0ZWQgdGV4dCBvZiBhbmNob3JcclxuICAgKi9cclxuICBASW5wdXQoKSBzdWZmaXhUZXh0OiBzdHJpbmc7XHJcbiAgLyoqXHJcbiAgICogYmluZCB0byBbZGlzYWJsZWRdIGZvciBkaXNhYmxpbmcgdGhlIGRyb3Bkb3duXHJcbiAgICovXHJcbiAgQElucHV0KCkgZGlzYWJsZWQ6IGJvb2xlYW47XHJcbiAgLyoqXHJcbiAgICogYmluZCB0byBbYWxsb3dDbGVhcl0gZm9yIGVuYWJsaW5nIHRoZSBjbGVhcmFuY2UgKGNsZWFyYW5jZSBpcyBub3QgYXZhaWFibGUgd2hlbiBjaGVja2JveCBpcyBlbmFibGVkKVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGFsbG93Q2xlYXIgPSB0cnVlO1xyXG4gIC8qKlxyXG4gICAqIGJpbmQgdG8gW2Zvcm1hdE51bWJlcl0gZm9yIHNob3cgZm9ybWF0dGVkIG51bWJlciB0ZXh0XHJcbiAgICovXHJcbiAgQElucHV0KCkgZm9ybWF0TnVtYmVyID0gZmFsc2U7XHJcbiAgLyoqXHJcbiAgICogZm9yIDItd2F5IGJpbmRpbmcgb2YgW3NlbGVjdGVkVmFsdWVdXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHNlbGVjdGVkVmFsdWVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4odHJ1ZSk7XHJcbiAgLyoqXHJcbiAgICogW3NlbGVjdGlvbkNoYW5nZV0gZXZlbnQgdGhhdCB3aWxsIGJlIHRyaWdnZXJlZCB3aGVuIGNoYW5naW5nIG9mIHRoZSBzZWxlY3Rpb25cclxuICAgKi9cclxuICBAT3V0cHV0KCkgc2VsZWN0aW9uQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KHRydWUpO1xyXG4gIC8qKlxyXG4gICAqIFtkcm9wZG93bkJsdXJdIGV2ZW50IHRoYXQgd2lsbCBiZSB0cmlnZ2VyZWQgd2l0aCAoYmx1cikgb2YgZHJvcGRvd25cclxuICAgKi9cclxuICBAT3V0cHV0KCkgZHJvcGRvd25CbHVyID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgLyoqXHJcbiAgICogW2l0ZW1DbGlja10gZXZlbnQgdGhhdCB3aWxsIGJlIHRyaWdnZXJlZCB3aGVuIGNsaWNraW5nIHRoZSBvcHRpb24gb2YgZHJvcGRvd25cclxuICAgKi9cclxuICBAT3V0cHV0KCkgaXRlbUNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgLyoqXHJcbiAgICogZmlsdGVyIHZhbHVlXHJcbiAgICovXHJcbiAgZmlsdGVyVmFsdWU6IHN0cmluZztcclxuICAvKipcclxuICAgKiBmbGFnIG9mIGNsaWNraW5nIGRyb3Bkb3duLiBJdCdzIHRvIHByZXZlbnQgKGJsdXIpIG9mIGRyb3Bkb3duIGZyb20gaGFwcGVuaW5nIGluIGNoZWNrYm94IG1vZGUuXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBfY2xpY2tlZEl0ZW1zID0gZmFsc2U7XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcclxuICAgIGlmIChjaGFuZ2VzLml0ZW1zKSB7XHJcbiAgICAgIHRoaXMuX2NoZWNrU2VsZWN0aW9uQ2hhbmdlKGNoYW5nZXMuaXRlbXMucHJldmlvdXNWYWx1ZSwgY2hhbmdlcy5pdGVtcy5jdXJyZW50VmFsdWUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogdHJpZ2dlcmVkIHdoZW4gY2xpY2tpbmcgdGhlIGRyb3Bkb3duXHJcbiAgICovXHJcbiAgb25JdGVtc0NsaWNrKGV2ZW50OiBhbnkpOiB2b2lkIHtcclxuICAgIGlmIChldmVudC5vZmZzZXRYID4gKGV2ZW50LnRhcmdldC5jbGllbnRXaWR0aCArIGV2ZW50LnRhcmdldC5jbGllbnRMZWZ0KSkge1xyXG4gICAgICBzdG9wUHJvcGFnYXRpb25BbmREZWZhdWx0KGV2ZW50KTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgLy8gc2hvdWxkIGlnbm9yZSBjbGlja2luZyBvbiBmaWx0ZXJcclxuICAgIGlmICh0aGlzLmNoZWNrYm94ICYmIGV2ZW50LnRhcmdldC50eXBlICE9PSAndGV4dCcpIHtcclxuICAgICAgdGhpcy5fY2xpY2tlZEl0ZW1zID0gdHJ1ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIHRyaWdnZXJlZCB3aGVuIGNsaWNraW5nIHRoZSBpdGVtXHJcbiAgICovXHJcbiAgb25JdGVtQ2xpY2soY3VycmVudEl0ZW0pOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5jaGVja2JveCkge1xyXG4gICAgICB0aGlzLnNlbGVjdGVkVmFsdWUgPSB0aGlzLl9nZXRJdGVtVmFsdWUoY3VycmVudEl0ZW0pOyAvLyBjdXJyZW50SXRlbS52YWx1ZSAhPSBudWxsID8gY3VycmVudEl0ZW0udmFsdWUgOiBjdXJyZW50SXRlbS50ZXh0O1xyXG4gICAgICBjbGVhckFsbFNlbGVjdGlvbih0aGlzLml0ZW1zKTtcclxuICAgICAgLy8gc2V0IHRoZSBzZWxlY3Rpb24gb2YgY3VycmVudCBvbmVcclxuICAgICAgY3VycmVudEl0ZW0uc2VsZWN0ZWQgPSB0cnVlO1xyXG4gICAgICB0aGlzLml0ZW1DbGljay5lbWl0KGN1cnJlbnRJdGVtKTtcclxuICAgICAgdGhpcy5fb25TZWxlY3Rpb25DaGFuZ2UodGhpcy5zZWxlY3RlZFZhbHVlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIHRyaWdnZXJzIHdpdGggKGJsdXIpIGV2ZW50IG9mIGZpbHRlciBpbnB1dCBib3hcclxuICAgKi9cclxuICBvbkZpbHRlclRleHRCbHVyKGV2ZW50KTogdm9pZCB7XHJcbiAgICB0aGlzLmRyb3Bkb3duQmx1ci5lbWl0KGV2ZW50KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIHRyaWdnZXJzIHdpdGggKGJsdXIpIGV2ZW50IG9mIGRyb3Bkb3duXHJcbiAgICovXHJcbiAgb25JdGVtc0JsdXIoZXZlbnQpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmNoZWNrYm94KSB7XHJcbiAgICAgIGlmICh0aGlzLl9jbGlja2VkSXRlbXMpIHtcclxuICAgICAgICAvLyBpbiBjaGVja2JveCBtb2RlLCB0aGlzIGJsdXIgZXZlbnQgd2lsbCBiZSBpZ25vcmVkIHdoZW4gY2xpY2tpbmcgdGhlIGRyb3Bkb3duIChjaGVjayB0aGUgY2hlY2tib3gpXHJcbiAgICAgICAgZXZlbnQudGFyZ2V0LmZvY3VzKCk7XHJcbiAgICAgICAgdGhpcy5fY2xpY2tlZEl0ZW1zID0gZmFsc2U7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICB0aGlzLmRyb3Bkb3duQmx1ci5lbWl0KGV2ZW50KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIHRvZ2dsZSB0aGUgc2VsZWN0aW9uIHdoZW4gY2hlY2tpbmcgc3RhdHVzIGNoYW5nZWQgKGluIGNoZWNrYm94IG1vZGUpXHJcbiAgICovXHJcbiAgdG9nZ2xlU2VsZWN0aW9uKGl0ZW06IHtpZDogc3RyaW5nLCB2YWx1ZT86IGFueSwgdGV4dDogYW55LCBzZWxlY3RlZD86IGJvb2xlYW59KTogdm9pZCB7XHJcbiAgICBpdGVtLnNlbGVjdGVkID0gIWl0ZW0uc2VsZWN0ZWQ7XHJcbiAgICB0aGlzLnNlbGVjdGlvbkNoYW5nZS5lbWl0KHRoaXMuX2dldEl0ZW1WYWx1ZShpdGVtKSk7IC8vIGl0ZW0udmFsdWUgIT0gbnVsbCA/IGl0ZW0udmFsdWUgOiBpdGVtLnRleHQpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogaXRlbXMgdmFsdWVzIGxpc3QgYWZ0ZXIgYXBwbHlpbmcgdGhlIGZpbHRlclxyXG4gICAqL1xyXG4gIGdldCBpdGVtc1ZhbHVlcygpOiBhbnlbXSB7XHJcbiAgICBsZXQgZmlsdGVyO1xyXG4gICAgaWYgKHRoaXMuZmlsdGVyVmFsdWUpIHtcclxuICAgICAgZmlsdGVyID0gdGhpcy5maWx0ZXJWYWx1ZS50b1VwcGVyQ2FzZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChmaWx0ZXIgPT0gbnVsbCkge1xyXG4gICAgICByZXR1cm4gdGhpcy5pdGVtcztcclxuICAgIH1cclxuICAgIGlmICghdGhpcy5pdGVtcyB8fCB0aGlzLml0ZW1zLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICByZXR1cm4gW107XHJcbiAgICB9XHJcbiAgICBpZiAoaGFzR3JvdXAodGhpcy5pdGVtcykpIHtcclxuICAgICAgY29uc3QgaXRlbXMgPSBbXTtcclxuICAgICAgdGhpcy5pdGVtcy5mb3JFYWNoKGdyb3VwSXRlbSA9PiB7XHJcbiAgICAgICAgaWYgKGdyb3VwSXRlbS5ncm91cCAhPSBudWxsICYmIGdyb3VwSXRlbS5ncm91cC50b1N0cmluZygpLnRvVXBwZXJDYXNlKCkuaW5jbHVkZXMoZmlsdGVyKSkge1xyXG4gICAgICAgICAgLy8gaWYgZ3JvdXBJdGVtIGNvbnRhaW5zIHRoZSBmaWx0ZXJzLCB0aGUgZ3JvdXBJdGVtIG5lZWRzIHRvIGJlIGRpc3BsYXllZCBhcyB3ZWxsXHJcbiAgICAgICAgICBpdGVtcy5wdXNoKGdyb3VwSXRlbSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGNvbnN0IGZpbHRlcmVkSXRlbXMgPSBncm91cEl0ZW0uaXRlbXMuZmlsdGVyKGl0ZW0gPT4gaXRlbS50ZXh0ICE9IG51bGwgJiYgaXRlbS50ZXh0LnRvU3RyaW5nKCkudG9VcHBlckNhc2UoKS5pbmNsdWRlcyhmaWx0ZXIpKTtcclxuICAgICAgICAgIGlmIChmaWx0ZXJlZEl0ZW1zICYmIGZpbHRlcmVkSXRlbXMubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICBpdGVtcy5wdXNoKHtncm91cDogZ3JvdXBJdGVtLmdyb3VwLCBpdGVtczogZmlsdGVyZWRJdGVtc30pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICAgIHJldHVybiBpdGVtcztcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiB0aGlzLml0ZW1zLmZpbHRlcihpdGVtID0+IChpdGVtLnRleHQgIT0gbnVsbCAmJiBpdGVtLnRleHQudG9TdHJpbmcoKS50b1VwcGVyQ2FzZSgpLmluY2x1ZGVzKGZpbHRlcikpKTtcclxuICAgIH1cclxuICB9XHJcbiAgLyoqXHJcbiAgICogb3B0aW9ucyBDU1MgY2xhc3NcclxuICAgKi9cclxuICBnZXQgb3B0aW9uc0NsYXNzKCk6IHN0cmluZyB7XHJcbiAgICBpZiAodGhpcy5maWx0ZXJCb3ggJiYgIXRoaXMuY2hlY2tib3gpIHtcclxuICAgICAgcmV0dXJuICdvcHRpb25zIHdpdGgtZmlsdGVyJztcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiAnb3B0aW9ucyBuby1maWx0ZXInO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogZ2V0IGl0ZW0gdmFsdWUuIFJldHVybiB0ZXh0IGlmIHZhbHVlIGlzIG5vdCBhdmFpbGFibGVcclxuICAgKi9cclxuICBwcml2YXRlIF9nZXRJdGVtVmFsdWUoaXRlbSk6IGFueSB7XHJcbiAgICByZXR1cm4gaXRlbSA/IGl0ZW0udmFsdWUgIT0gbnVsbCA/IGl0ZW0udmFsdWUgOiBpdGVtLnRleHQgOiB1bmRlZmluZWQ7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBzZWxlY3Rpb24gY2hhbmdlZCwgZW1pdHMgZXZlbnRzOiAoc2VsZWN0ZWRWYWx1ZUNoYW5nZSkgYW5kIChzZWxlY3Rpb25DaGFuZ2UpO1xyXG4gICAqL1xyXG4gIHByaXZhdGUgX29uU2VsZWN0aW9uQ2hhbmdlKHZhbHVlKSB7XHJcbiAgICB0aGlzLnNlbGVjdGVkVmFsdWVDaGFuZ2UuZW1pdCh2YWx1ZSk7XHJcbiAgICB0aGlzLnNlbGVjdGlvbkNoYW5nZS5lbWl0KHZhbHVlKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIGNoZWNrIHdoZXRoZXIgdGhlIHNlbGVjdGlvbiBpcyBjaGFuZ2VkLiBFbWl0cyByZWxhdGl2ZSBldmVudHMgd2hlbiBpZiBjaGFuZ2VkLlxyXG4gICAqL1xyXG4gIHByaXZhdGUgX2NoZWNrU2VsZWN0aW9uQ2hhbmdlKHByZXZpb3VzVmFsdWUsIGN1cnJlbnRWYWx1ZSkge1xyXG4gICAgY29uc3QgY3VyU2VsZWN0ZWRJdGVtID0gZ2V0Rmlyc3RTZWxlY3RlZEl0ZW0oY3VycmVudFZhbHVlKTtcclxuICAgIGNvbnN0IGxhc3RTZWxlY3RlZEl0ZW0gPSBnZXRGaXJzdFNlbGVjdGVkSXRlbShwcmV2aW91c1ZhbHVlKTtcclxuICAgIGNvbnN0IGN1clNlbGVjdGVkSXRlbUlkID0gY3VyU2VsZWN0ZWRJdGVtID8gY3VyU2VsZWN0ZWRJdGVtLmlkIDogdW5kZWZpbmVkO1xyXG4gICAgY29uc3QgbGFzdFNlbGVjdGVkSXRlbUlkID0gbGFzdFNlbGVjdGVkSXRlbSA/IGxhc3RTZWxlY3RlZEl0ZW0uaWQgOiB1bmRlZmluZWQ7XHJcbiAgICBpZiAoY3VyU2VsZWN0ZWRJdGVtSWQgIT09IGxhc3RTZWxlY3RlZEl0ZW1JZCAmJiAhdGhpcy5jaGVja2JveCkge1xyXG4gICAgICB0aGlzLl9vblNlbGVjdGlvbkNoYW5nZSh0aGlzLl9nZXRJdGVtVmFsdWUoY3VyU2VsZWN0ZWRJdGVtKSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -1,233 +0,0 @@
|
|
|
1
|
-
import { Component, ElementRef, EventEmitter, Input, Output, ViewChild } from '@angular/core';
|
|
2
|
-
import { clearAllSelection, getFirstSelectedItem, stopPropagationAndDefault } from './utils/util';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "./anchor/anchor.component";
|
|
5
|
-
import * as i2 from "./dropdown/dropdown.component";
|
|
6
|
-
export class DropdownListComponent {
|
|
7
|
-
constructor() {
|
|
8
|
-
/**
|
|
9
|
-
* bind to [multiSelection], the flag for multi-select (checkbox) mode.
|
|
10
|
-
*/
|
|
11
|
-
this.multiSelection = false;
|
|
12
|
-
/**
|
|
13
|
-
* bind to [filterBox] for displaying the filter input text box
|
|
14
|
-
*/
|
|
15
|
-
this.filterBox = false;
|
|
16
|
-
/**
|
|
17
|
-
* bind to [allowClear] for enabling the clearance (clearance is not avaiable when checkbox is enabled)
|
|
18
|
-
*/
|
|
19
|
-
this.allowClear = true;
|
|
20
|
-
/**
|
|
21
|
-
* bind to [formatNumber] for show formatted number text
|
|
22
|
-
*/
|
|
23
|
-
this.formatNumber = false;
|
|
24
|
-
/**
|
|
25
|
-
* for 2-way binding of [selectedValue], using async event to
|
|
26
|
-
* prevent "ExpressionChangedAfterItHasBeenCheckedError".
|
|
27
|
-
*/
|
|
28
|
-
this.selectedValueChange = new EventEmitter(true);
|
|
29
|
-
/**
|
|
30
|
-
* [selectionChange] event that will be triggered when changing of the selection.
|
|
31
|
-
* Using async event to prevent "ExpressionChangedAfterItHasBeenCheckedError".
|
|
32
|
-
*/
|
|
33
|
-
this.selectionChange = new EventEmitter(true);
|
|
34
|
-
/**
|
|
35
|
-
* visibility flag of drop down
|
|
36
|
-
*/
|
|
37
|
-
this.dropdownVisibility = false;
|
|
38
|
-
}
|
|
39
|
-
/**
|
|
40
|
-
* current selected text
|
|
41
|
-
*/
|
|
42
|
-
get selectedText() {
|
|
43
|
-
if (!this.multiSelection) {
|
|
44
|
-
const selectedItem = getFirstSelectedItem(this.items);
|
|
45
|
-
return selectedItem ? selectedItem.text : undefined;
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
/**
|
|
49
|
-
* triggered with (selectionChange) event, emits (selectedValueChange) and (selectionChange)
|
|
50
|
-
*/
|
|
51
|
-
onSelectionChange(event) {
|
|
52
|
-
this.selectedValueChange.emit(event);
|
|
53
|
-
this.selectionChange.emit(event);
|
|
54
|
-
}
|
|
55
|
-
/**
|
|
56
|
-
* triggered with (anchorClick) event, controlling the "open" and "close" of the dropdown
|
|
57
|
-
*/
|
|
58
|
-
onAnchorClick(event) {
|
|
59
|
-
if (this.disabled) {
|
|
60
|
-
stopPropagationAndDefault(event);
|
|
61
|
-
return;
|
|
62
|
-
}
|
|
63
|
-
if (this._isSelectionOpen()) {
|
|
64
|
-
this._hideItemList();
|
|
65
|
-
}
|
|
66
|
-
else {
|
|
67
|
-
this._showItemsList();
|
|
68
|
-
}
|
|
69
|
-
stopPropagationAndDefault(event);
|
|
70
|
-
}
|
|
71
|
-
/**
|
|
72
|
-
* triggered with (itemClick) event, closes the dropdown in non-checkbox mode
|
|
73
|
-
*/
|
|
74
|
-
onItemClick() {
|
|
75
|
-
if (!this.multiSelection) {
|
|
76
|
-
this._hideItemList();
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
/**
|
|
80
|
-
* triggered with (clearanceClick) event, clearing all selections
|
|
81
|
-
* and emits (selectedValueChange) and (selectionChange) event for empty value
|
|
82
|
-
*/
|
|
83
|
-
onClearanceClick(event) {
|
|
84
|
-
if (!this.multiSelection) {
|
|
85
|
-
this.selectedValue = void 0;
|
|
86
|
-
this.selectedValueChange.emit(undefined);
|
|
87
|
-
this.selectionChange.emit(undefined);
|
|
88
|
-
clearAllSelection(this.items);
|
|
89
|
-
}
|
|
90
|
-
stopPropagationAndDefault(event);
|
|
91
|
-
}
|
|
92
|
-
/**
|
|
93
|
-
* triggered with (dropdownBlur) event, closes the dropdown
|
|
94
|
-
*/
|
|
95
|
-
onItemsBlur() {
|
|
96
|
-
if (this._isSelectionOpen()) {
|
|
97
|
-
this._hideItemList();
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
/**
|
|
101
|
-
* close the dropdown
|
|
102
|
-
*/
|
|
103
|
-
_hideItemList() {
|
|
104
|
-
// hide the dropdown element (has some problem for using CSS directly, using this as a workaround)
|
|
105
|
-
this._dropdownElement.classList.remove('visible');
|
|
106
|
-
this._dropdownElement.style.display = 'none';
|
|
107
|
-
this.dropdownVisibility = false;
|
|
108
|
-
}
|
|
109
|
-
/**
|
|
110
|
-
* open the dropdown
|
|
111
|
-
*/
|
|
112
|
-
_showItemsList() {
|
|
113
|
-
// display the dropdown element (has some problem for using CSS directly, using this as a workaround)
|
|
114
|
-
this._dropdownElement.classList.add('visible');
|
|
115
|
-
this._dropdownElement.style.display = 'block';
|
|
116
|
-
this.dropdownVisibility = true;
|
|
117
|
-
// scrolling to the selected item
|
|
118
|
-
if (this._selectedElement) {
|
|
119
|
-
this._selectedElement.scrollIntoView({ behavior: 'auto', block: 'center' });
|
|
120
|
-
}
|
|
121
|
-
// setting the focus
|
|
122
|
-
if (this.filterBox && !this.multiSelection) {
|
|
123
|
-
this._filterInputElement.focus();
|
|
124
|
-
}
|
|
125
|
-
else {
|
|
126
|
-
this._dropdownElement.focus();
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
/**
|
|
130
|
-
* visibility status of dropdown
|
|
131
|
-
*/
|
|
132
|
-
_isSelectionOpen() {
|
|
133
|
-
return this.dropdownVisibility;
|
|
134
|
-
}
|
|
135
|
-
/**
|
|
136
|
-
* get the real dropdown element (for focusing and visibility controlling), the <span> not the <dropdown>
|
|
137
|
-
*/
|
|
138
|
-
get _dropdownElement() {
|
|
139
|
-
return this.dropdownRef ? this.dropdownRef.nativeElement ? this.dropdownRef.nativeElement.firstElementChild : null : null;
|
|
140
|
-
}
|
|
141
|
-
/**
|
|
142
|
-
* get the real filter element (for focusing), the <input> not the <input-filter>
|
|
143
|
-
*/
|
|
144
|
-
get _filterInputElement() {
|
|
145
|
-
return this._dropdownElement ?
|
|
146
|
-
this._dropdownElement.firstElementChild ? this._dropdownElement.firstElementChild.firstElementChild : null : null;
|
|
147
|
-
}
|
|
148
|
-
/**
|
|
149
|
-
* get the HTMLElement of selected item, for doing (scrollIntoView) scrolling to the selected item
|
|
150
|
-
*/
|
|
151
|
-
get _selectedElement() {
|
|
152
|
-
const selectedItem = getFirstSelectedItem(this.items);
|
|
153
|
-
return selectedItem ? document.getElementById(selectedItem.id) : undefined;
|
|
154
|
-
}
|
|
155
|
-
}
|
|
156
|
-
DropdownListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DropdownListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
157
|
-
DropdownListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DropdownListComponent, selector: "ngx-dropdown-list", inputs: { placeHolder: "placeHolder", items: "items", multiSelection: "multiSelection", selectedValue: "selectedValue", filterBox: "filterBox", suffixText: "suffixText", disabled: "disabled", allowClear: "allowClear", formatNumber: "formatNumber" }, outputs: { selectedValueChange: "selectedValueChange", selectionChange: "selectionChange" }, viewQueries: [{ propertyName: "dropdownRef", first: true, predicate: ["dropdown"], descendants: true, read: ElementRef }], ngImport: i0, template: `
|
|
158
|
-
<span class="ngx-select">
|
|
159
|
-
<anchor (anchorClick)="onAnchorClick($event)" (clearanceClick)="onClearanceClick($event)"
|
|
160
|
-
[checkbox]="multiSelection"
|
|
161
|
-
[formatNumber]="formatNumber"
|
|
162
|
-
[suffixText]="suffixText"
|
|
163
|
-
[placeHolder]="placeHolder"
|
|
164
|
-
[allowClear]="allowClear"
|
|
165
|
-
[openStatus]="dropdownVisibility"
|
|
166
|
-
[selectedText]="selectedText"
|
|
167
|
-
[disabled]="disabled">
|
|
168
|
-
</anchor>
|
|
169
|
-
<dropdown #dropdown (dropdownBlur) = "onItemsBlur()" (selectionChange)="onSelectionChange($event)"
|
|
170
|
-
[items]="items"
|
|
171
|
-
[checkbox]="multiSelection"
|
|
172
|
-
[filterBox]="filterBox"
|
|
173
|
-
[formatNumber]="formatNumber"
|
|
174
|
-
[suffixText]="suffixText"
|
|
175
|
-
[(selectedValue)]="selectedValue"
|
|
176
|
-
(itemClick) = "onItemClick()"
|
|
177
|
-
[disabled]="disabled">
|
|
178
|
-
</dropdown>
|
|
179
|
-
</span>
|
|
180
|
-
`, isInline: true, styles: [":host *,:host *:before,:host *:after{font-size:inherit;font-weight:inherit;font-family:inherit;box-sizing:inherit;background:inherit}:host .ngx-select{border-radius:4px;font-size:14px;position:relative;display:inline-block;width:100%;height:34px;background:white;-webkit-user-select:none;user-select:none}\n"], components: [{ type: i1.AnchorComponent, selector: "anchor", inputs: ["placeHolder", "checkbox", "suffixText", "allowClear", "formatNumber", "selectedText", "openStatus", "disabled"], outputs: ["anchorClick", "clearanceClick"] }, { type: i2.DropdownComponent, selector: "dropdown", inputs: ["placeHolder", "items", "checkbox", "selectedValue", "filterBox", "suffixText", "disabled", "allowClear", "formatNumber"], outputs: ["selectedValueChange", "selectionChange", "dropdownBlur", "itemClick"] }] });
|
|
181
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DropdownListComponent, decorators: [{
|
|
182
|
-
type: Component,
|
|
183
|
-
args: [{ selector: 'ngx-dropdown-list', template: `
|
|
184
|
-
<span class="ngx-select">
|
|
185
|
-
<anchor (anchorClick)="onAnchorClick($event)" (clearanceClick)="onClearanceClick($event)"
|
|
186
|
-
[checkbox]="multiSelection"
|
|
187
|
-
[formatNumber]="formatNumber"
|
|
188
|
-
[suffixText]="suffixText"
|
|
189
|
-
[placeHolder]="placeHolder"
|
|
190
|
-
[allowClear]="allowClear"
|
|
191
|
-
[openStatus]="dropdownVisibility"
|
|
192
|
-
[selectedText]="selectedText"
|
|
193
|
-
[disabled]="disabled">
|
|
194
|
-
</anchor>
|
|
195
|
-
<dropdown #dropdown (dropdownBlur) = "onItemsBlur()" (selectionChange)="onSelectionChange($event)"
|
|
196
|
-
[items]="items"
|
|
197
|
-
[checkbox]="multiSelection"
|
|
198
|
-
[filterBox]="filterBox"
|
|
199
|
-
[formatNumber]="formatNumber"
|
|
200
|
-
[suffixText]="suffixText"
|
|
201
|
-
[(selectedValue)]="selectedValue"
|
|
202
|
-
(itemClick) = "onItemClick()"
|
|
203
|
-
[disabled]="disabled">
|
|
204
|
-
</dropdown>
|
|
205
|
-
</span>
|
|
206
|
-
`, styles: [":host *,:host *:before,:host *:after{font-size:inherit;font-weight:inherit;font-family:inherit;box-sizing:inherit;background:inherit}:host .ngx-select{border-radius:4px;font-size:14px;position:relative;display:inline-block;width:100%;height:34px;background:white;-webkit-user-select:none;user-select:none}\n"] }]
|
|
207
|
-
}], propDecorators: { dropdownRef: [{
|
|
208
|
-
type: ViewChild,
|
|
209
|
-
args: ['dropdown', { read: ElementRef }]
|
|
210
|
-
}], placeHolder: [{
|
|
211
|
-
type: Input
|
|
212
|
-
}], items: [{
|
|
213
|
-
type: Input
|
|
214
|
-
}], multiSelection: [{
|
|
215
|
-
type: Input
|
|
216
|
-
}], selectedValue: [{
|
|
217
|
-
type: Input
|
|
218
|
-
}], filterBox: [{
|
|
219
|
-
type: Input
|
|
220
|
-
}], suffixText: [{
|
|
221
|
-
type: Input
|
|
222
|
-
}], disabled: [{
|
|
223
|
-
type: Input
|
|
224
|
-
}], allowClear: [{
|
|
225
|
-
type: Input
|
|
226
|
-
}], formatNumber: [{
|
|
227
|
-
type: Input
|
|
228
|
-
}], selectedValueChange: [{
|
|
229
|
-
type: Output
|
|
230
|
-
}], selectionChange: [{
|
|
231
|
-
type: Output
|
|
232
|
-
}] } });
|
|
233
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tbGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbmd4LWRyb3Bkb3duLWxpc3QvZHJvcGRvd24tbGlzdC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzVGLE9BQU8sRUFBQyxpQkFBaUIsRUFBRSxvQkFBb0IsRUFBRSx5QkFBeUIsRUFBQyxNQUFNLGNBQWMsQ0FBQzs7OztBQStCaEcsTUFBTSxPQUFPLHFCQUFxQjtJQTdCbEM7UUF3Q0U7O1dBRUc7UUFDTSxtQkFBYyxHQUFHLEtBQUssQ0FBQztRQUtoQzs7V0FFRztRQUNNLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFTM0I7O1dBRUc7UUFDTSxlQUFVLEdBQUcsSUFBSSxDQUFDO1FBQzNCOztXQUVHO1FBQ00saUJBQVksR0FBRyxLQUFLLENBQUM7UUFDOUI7OztXQUdHO1FBQ08sd0JBQW1CLEdBQUcsSUFBSSxZQUFZLENBQVMsSUFBSSxDQUFDLENBQUM7UUFDL0Q7OztXQUdHO1FBQ08sb0JBQWUsR0FBRyxJQUFJLFlBQVksQ0FBTSxJQUFJLENBQUMsQ0FBQztRQUV4RDs7V0FFRztRQUNILHVCQUFrQixHQUFHLEtBQUssQ0FBQztLQWtJNUI7SUFoSUM7O09BRUc7SUFDSCxJQUFJLFlBQVk7UUFDZCxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRTtZQUN4QixNQUFNLFlBQVksR0FBRyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDdEQsT0FBTyxZQUFZLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztTQUNyRDtJQUNILENBQUM7SUFFRDs7T0FFRztJQUNILGlCQUFpQixD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QUFLO2dCQUlHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBS0ksbUJBQW1CO3NCQUE1QixNQUFNO2dCQUtHLGVBQWU7c0JBQXhCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0LCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge2NsZWFyQWxsU2VsZWN0aW9uLCBnZXRGaXJzdFNlbGVjdGVkSXRlbSwgc3RvcFByb3BhZ2F0aW9uQW5kRGVmYXVsdH0gZnJvbSAnLi91dGlscy91dGlsJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbmd4LWRyb3Bkb3duLWxpc3QnLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8c3BhbiBjbGFzcz1cIm5neC1zZWxlY3RcIj5cclxuICAgICAgICA8YW5jaG9yIChhbmNob3JDbGljayk9XCJvbkFuY2hvckNsaWNrKCRldmVudClcIiAoY2xlYXJhbmNlQ2xpY2spPVwib25DbGVhcmFuY2VDbGljaygkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgIFtjaGVja2JveF09XCJtdWx0aVNlbGVjdGlvblwiXHJcbiAgICAgICAgICAgICAgICBbZm9ybWF0TnVtYmVyXT1cImZvcm1hdE51bWJlclwiXHJcbiAgICAgICAgICAgICAgICBbc3VmZml4VGV4dF09XCJzdWZmaXhUZXh0XCJcclxuICAgICAgICAgICAgICAgIFtwbGFjZUhvbGRlcl09XCJwbGFjZUhvbGRlclwiXHJcbiAgICAgICAgICAgICAgICBbYWxsb3dDbGVhcl09XCJhbGxvd0NsZWFyXCJcclxuICAgICAgICAgICAgICAgIFtvcGVuU3RhdHVzXT1cImRyb3Bkb3duVmlzaWJpbGl0eVwiXHJcbiAgICAgICAgICAgICAgICBbc2VsZWN0ZWRUZXh0XT1cInNlbGVjdGVkVGV4dFwiXHJcbiAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIj5cclxuICAgICAgICA8L2FuY2hvcj5cclxuICAgICAgICA8ZHJvcGRvd24gI2Ryb3Bkb3duIChkcm9wZG93bkJsdXIpID0gXCJvbkl0ZW1zQmx1cigpXCIgKHNlbGVjdGlvbkNoYW5nZSk9XCJvblNlbGVjdGlvbkNoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgIFtpdGVtc109XCJpdGVtc1wiXHJcbiAgICAgICAgICAgICAgICBbY2hlY2tib3hdPVwibXVsdGlTZWxlY3Rpb25cIlxyXG4gICAgICAgICAgICAgICAgW2ZpbHRlckJveF09XCJmaWx0ZXJCb3hcIlxyXG4gICAgICAgICAgICAgICAgW2Zvcm1hdE51bWJlcl09XCJmb3JtYXROdW1iZXJcIlxyXG4gICAgICAgICAgICAgICAgW3N1ZmZpeFRleHRdPVwic3VmZml4VGV4dFwiXHJcbiAgICAgICAgICAgICAgICBbKHNlbGVjdGVkVmFsdWUpXT1cInNlbGVjdGVkVmFsdWVcIlxyXG4gICAgICAgICAgICAgICAgKGl0ZW1DbGljaykgPSBcIm9uSXRlbUNsaWNrKClcIlxyXG4gICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCI+XHJcbiAgICAgICAgPC9kcm9wZG93bj5cclxuICAgIDwvc3Bhbj5cclxuICBgLFxyXG4gIHN0eWxlVXJsczogWycuL2Ryb3Bkb3duLWxpc3QuY29tcG9uZW50LnNjc3MnXSxcclxufSlcclxuXHJcbmV4cG9ydCBjbGFzcyBEcm9wZG93bkxpc3RDb21wb25lbnQge1xyXG4gIEBWaWV3Q2hpbGQoJ2Ryb3Bkb3duJywgeyByZWFkOiBFbGVtZW50UmVmIH0pIGRyb3Bkb3duUmVmOiBFbGVtZW50UmVmO1xyXG5cclxuICAvKipcclxuICAgKiBiaW5kIHRvIFtwbGFjZUhvbGRlcl0gZm9yIGRpc3BsYXlpbmcgdGhlIHBsYWNlIGhvbGRlciBzdHJpbmcgb2YgdGhlIGFuY2hvci5cclxuICAgKi9cclxuICBASW5wdXQoKSBwbGFjZUhvbGRlcjogc3RyaW5nO1xyXG4gIC8qKlxyXG4gICAqIGJpbmQgdG8gW2l0ZW1zXSBmb3IgdGhlIG9wdGlvbnMvZ3JvdXBzIGluIHRoZSBkcm9wZG93blxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGl0ZW1zOiBhbnlbXTtcclxuICAvKipcclxuICAgKiBiaW5kIHRvIFttdWx0aVNlbGVjdGlvbl0sIHRoZSBmbGFnIGZvciBtdWx0aS1zZWxlY3QgKGNoZWNrYm94KSBtb2RlLlxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIG11bHRpU2VsZWN0aW9uID0gZmFsc2U7XHJcbiAgLyoqXHJcbiAgICogYmluZCB0byBbc2VsZWN0ZWRWYWx1ZV0gZm9yIHRoZSB2YWx1ZSBvZiB0aGUgc2VsZWN0ZWQgb3B0aW9uIGZyb20gZHJvcGRvd25cclxuICAgKi9cclxuICBASW5wdXQoKSBzZWxlY3RlZFZhbHVlOiBhbnk7XHJcbiAgLyoqXHJcbiAgICogYmluZCB0byBbZmlsdGVyQm94XSBmb3IgZGlzcGxheWluZyB0aGUgZmlsdGVyIGlucHV0IHRleHQgYm94XHJcbiAgICovXHJcbiAgQElucHV0KCkgZmlsdGVyQm94ID0gZmFsc2U7XHJcbiAgLyoqXHJcbiAgICogYmluZCB0byBbc3VmZml4VGV4dF0gZm9yIGRpc3BsYXlpbmcgdGhlIHN1ZmZpeCBvZiB0aGUgc2VsZWN0ZWQgdGV4dCBvZiBhbmNob3JcclxuICAgKi9cclxuICBASW5wdXQoKSBzdWZmaXhUZXh0OiBzdHJpbmc7XHJcbiAgLyoqXHJcbiAgICogYmluZCB0byBbZGlzYWJsZWRdIGZvciBkaXNhYmxpbmcgdGhlIGRyb3Bkb3duXHJcbiAgICovXHJcbiAgQElucHV0KCkgZGlzYWJsZWQ6IGJvb2xlYW47XHJcbiAgLyoqXHJcbiAgICogYmluZCB0byBbYWxsb3dDbGVhcl0gZm9yIGVuYWJsaW5nIHRoZSBjbGVhcmFuY2UgKGNsZWFyYW5jZSBpcyBub3QgYXZhaWFibGUgd2hlbiBjaGVja2JveCBpcyBlbmFibGVkKVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGFsbG93Q2xlYXIgPSB0cnVlO1xyXG4gIC8qKlxyXG4gICAqIGJpbmQgdG8gW2Zvcm1hdE51bWJlcl0gZm9yIHNob3cgZm9ybWF0dGVkIG51bWJlciB0ZXh0XHJcbiAgICovXHJcbiAgQElucHV0KCkgZm9ybWF0TnVtYmVyID0gZmFsc2U7XHJcbiAgLyoqXHJcbiAgICogZm9yIDItd2F5IGJpbmRpbmcgb2YgW3NlbGVjdGVkVmFsdWVdLCB1c2luZyBhc3luYyBldmVudCB0b1xyXG4gICAqIHByZXZlbnQgXCJFeHByZXNzaW9uQ2hhbmdlZEFmdGVySXRIYXNCZWVuQ2hlY2tlZEVycm9yXCIuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHNlbGVjdGVkVmFsdWVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4odHJ1ZSk7XHJcbiAgLyoqXHJcbiAgICogW3NlbGVjdGlvbkNoYW5nZV0gZXZlbnQgdGhhdCB3aWxsIGJlIHRyaWdnZXJlZCB3aGVuIGNoYW5naW5nIG9mIHRoZSBzZWxlY3Rpb24uXHJcbiAgICogVXNpbmcgYXN5bmMgZXZlbnQgdG8gcHJldmVudCBcIkV4cHJlc3Npb25DaGFuZ2VkQWZ0ZXJJdEhhc0JlZW5DaGVja2VkRXJyb3JcIi5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgc2VsZWN0aW9uQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KHRydWUpO1xyXG5cclxuICAvKipcclxuICAgKiB2aXNpYmlsaXR5IGZsYWcgb2YgZHJvcCBkb3duXHJcbiAgICovXHJcbiAgZHJvcGRvd25WaXNpYmlsaXR5ID0gZmFsc2U7XHJcblxyXG4gIC8qKlxyXG4gICAqIGN1cnJlbnQgc2VsZWN0ZWQgdGV4dFxyXG4gICAqL1xyXG4gIGdldCBzZWxlY3RlZFRleHQoKTogYW55IHtcclxuICAgIGlmICghdGhpcy5tdWx0aVNlbGVjdGlvbikge1xyXG4gICAgICBjb25zdCBzZWxlY3RlZEl0ZW0gPSBnZXRGaXJzdFNlbGVjdGVkSXRlbSh0aGlzLml0ZW1zKTtcclxuICAgICAgcmV0dXJuIHNlbGVjdGVkSXRlbSA/IHNlbGVjdGVkSXRlbS50ZXh0IDogdW5kZWZpbmVkO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogdHJpZ2dlcmVkIHdpdGggKHNlbGVjdGlvbkNoYW5nZSkgZXZlbnQsIGVtaXRzIChzZWxlY3RlZFZhbHVlQ2hhbmdlKSBhbmQgKHNlbGVjdGlvbkNoYW5nZSlcclxuICAgKi9cclxuICBvblNlbGVjdGlvbkNoYW5nZShldmVudCkge1xyXG4gICAgdGhpcy5zZWxlY3RlZFZhbHVlQ2hhbmdlLmVtaXQoZXZlbnQpO1xyXG4gICAgdGhpcy5zZWxlY3Rpb25DaGFuZ2UuZW1pdChldmVudCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiB0cmlnZ2VyZWQgd2l0aCAoYW5jaG9yQ2xpY2spIGV2ZW50LCBjb250cm9sbGluZyB0aGUgXCJvcGVuXCIgYW5kIFwiY2xvc2VcIiBvZiB0aGUgZHJvcGRvd25cclxuICAgKi9cclxuICBvbkFuY2hvckNsaWNrKGV2ZW50OiBFdmVudCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcclxuICAgICAgc3RvcFByb3BhZ2F0aW9uQW5kRGVmYXVsdChldmVudCk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLl9pc1NlbGVjdGlvbk9wZW4oKSkge1xyXG4gICAgICB0aGlzLl9oaWRlSXRlbUxpc3QoKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuX3Nob3dJdGVtc0xpc3QoKTtcclxuICAgIH1cclxuICAgIHN0b3BQcm9wYWdhdGlvbkFuZERlZmF1bHQoZXZlbnQpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogdHJpZ2dlcmVkIHdpdGggKGl0ZW1DbGljaykgZXZlbnQsIGNsb3NlcyB0aGUgZHJvcGRvd24gaW4gbm9uLWNoZWNrYm94IG1vZGVcclxuICAgKi9cclxuICBvbkl0ZW1DbGljaygpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5tdWx0aVNlbGVjdGlvbikge1xyXG4gICAgICB0aGlzLl9oaWRlSXRlbUxpc3QoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIHRyaWdnZXJlZCB3aXRoIChjbGVhcmFuY2VDbGljaykgZXZlbnQsIGNsZWFyaW5nIGFsbCBzZWxlY3Rpb25zXHJcbiAgICogYW5kIGVtaXRzIChzZWxlY3RlZFZhbHVlQ2hhbmdlKSBhbmQgKHNlbGVjdGlvbkNoYW5nZSkgZXZlbnQgZm9yIGVtcHR5IHZhbHVlXHJcbiAgICovXHJcbiAgb25DbGVhcmFuY2VDbGljayhldmVudDogRXZlbnQpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5tdWx0aVNlbGVjdGlvbikge1xyXG4gICAgICB0aGlzLnNlbGVjdGVkVmFsdWUgPSB2b2lkIDA7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZUNoYW5nZS5lbWl0KHVuZGVmaW5lZCk7XHJcbiAgICAgIHRoaXMuc2VsZWN0aW9uQ2hhbmdlLmVtaXQodW5kZWZpbmVkKTtcclxuICAgICAgY2xlYXJBbGxTZWxlY3Rpb24odGhpcy5pdGVtcyk7XHJcbiAgICB9XHJcbiAgICBzdG9wUHJvcGFnYXRpb25BbmREZWZhdWx0KGV2ZW50KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIHRyaWdnZXJlZCB3aXRoIChkcm9wZG93bkJsdXIpIGV2ZW50LCBjbG9zZXMgdGhlIGRyb3Bkb3duXHJcbiAgICovXHJcbiAgb25JdGVtc0JsdXIoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5faXNTZWxlY3Rpb25PcGVuKCkpIHtcclxuICAgICAgdGhpcy5faGlkZUl0ZW1MaXN0KCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBjbG9zZSB0aGUgZHJvcGRvd25cclxuICAgKi9cclxuICBwcml2YXRlIF9oaWRlSXRlbUxpc3QoKTogdm9pZCB7XHJcbiAgICAvLyBoaWRlIHRoZSBkcm9wZG93biBlbGVtZW50IChoYXMgc29tZSBwcm9ibGVtIGZvciB1c2luZyBDU1MgZGlyZWN0bHksIHVzaW5nIHRoaXMgYXMgYSB3b3JrYXJvdW5kKVxyXG4gICAgdGhpcy5fZHJvcGRvd25FbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoJ3Zpc2libGUnKTtcclxuICAgIHRoaXMuX2Ryb3Bkb3duRWxlbWVudC5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnO1xyXG4gICAgdGhpcy5kcm9wZG93blZpc2liaWxpdHkgPSBmYWxzZTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIG9wZW4gdGhlIGRyb3Bkb3duXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBfc2hvd0l0ZW1zTGlzdCgpOiB2b2lkIHtcclxuICAgIC8vIGRpc3BsYXkgdGhlIGRyb3Bkb3duIGVsZW1lbnQgKGhhcyBzb21lIHByb2JsZW0gZm9yIHVzaW5nIENTUyBkaXJlY3RseSwgdXNpbmcgdGhpcyBhcyBhIHdvcmthcm91bmQpXHJcbiAgICB0aGlzLl9kcm9wZG93bkVsZW1lbnQuY2xhc3NMaXN0LmFkZCgndmlzaWJsZScpO1xyXG4gICAgdGhpcy5fZHJvcGRvd25FbGVtZW50LnN0eWxlLmRpc3BsYXkgPSAnYmxvY2snO1xyXG5cclxuICAgIHRoaXMuZHJvcGRvd25WaXNpYmlsaXR5ID0gdHJ1ZTtcclxuXHJcbiAgICAvLyBzY3JvbGxpbmcgdG8gdGhlIHNlbGVjdGVkIGl0ZW1cclxuICAgIGlmICh0aGlzLl9zZWxlY3RlZEVsZW1lbnQpIHtcclxuICAgICAgdGhpcy5fc2VsZWN0ZWRFbGVtZW50LnNjcm9sbEludG9WaWV3KHsgYmVoYXZpb3I6ICdhdXRvJywgYmxvY2s6ICdjZW50ZXInIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIHNldHRpbmcgdGhlIGZvY3VzXHJcbiAgICBpZiAodGhpcy5maWx0ZXJCb3ggJiYgIXRoaXMubXVsdGlTZWxlY3Rpb24pIHtcclxuICAgICAgdGhpcy5fZmlsdGVySW5wdXRFbGVtZW50LmZvY3VzKCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLl9kcm9wZG93bkVsZW1lbnQuZm9jdXMoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIHZpc2liaWxpdHkgc3RhdHVzIG9mIGRyb3Bkb3duXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBfaXNTZWxlY3Rpb25PcGVuKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuZHJvcGRvd25WaXNpYmlsaXR5O1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogZ2V0IHRoZSByZWFsIGRyb3Bkb3duIGVsZW1lbnQgKGZvciBmb2N1c2luZyBhbmQgdmlzaWJpbGl0eSBjb250cm9sbGluZyksIHRoZSA8c3Bhbj4gbm90IHRoZSA8ZHJvcGRvd24+XHJcbiAgICovXHJcbiAgcHJpdmF0ZSBnZXQgX2Ryb3Bkb3duRWxlbWVudCgpOiBhbnkge1xyXG4gICAgcmV0dXJuIHRoaXMuZHJvcGRvd25SZWYgPyB0aGlzLmRyb3Bkb3duUmVmLm5hdGl2ZUVsZW1lbnQgPyB0aGlzLmRyb3Bkb3duUmVmLm5hdGl2ZUVsZW1lbnQuZmlyc3RFbGVtZW50Q2hpbGQgOiBudWxsIDogbnVsbDtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIGdldCB0aGUgcmVhbCBmaWx0ZXIgZWxlbWVudCAoZm9yIGZvY3VzaW5nKSwgdGhlIDxpbnB1dD4gbm90IHRoZSA8aW5wdXQtZmlsdGVyPlxyXG4gICAqL1xyXG4gIHByaXZhdGUgZ2V0IF9maWx0ZXJJbnB1dEVsZW1lbnQoKTogYW55IHtcclxuICAgIHJldHVybiB0aGlzLl9kcm9wZG93bkVsZW1lbnQgP1xyXG4gICAgICB0aGlzLl9kcm9wZG93bkVsZW1lbnQuZmlyc3RFbGVtZW50Q2hpbGQgPyB0aGlzLl9kcm9wZG93bkVsZW1lbnQuZmlyc3RFbGVtZW50Q2hpbGQuZmlyc3RFbGVtZW50Q2hpbGQgOiBudWxsIDogbnVsbDtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIGdldCB0aGUgSFRNTEVsZW1lbnQgb2Ygc2VsZWN0ZWQgaXRlbSwgZm9yIGRvaW5nIChzY3JvbGxJbnRvVmlldykgc2Nyb2xsaW5nIHRvIHRoZSBzZWxlY3RlZCBpdGVtXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBnZXQgX3NlbGVjdGVkRWxlbWVudCgpOiBIVE1MRWxlbWVudCB7XHJcbiAgICBjb25zdCBzZWxlY3RlZEl0ZW0gPSBnZXRGaXJzdFNlbGVjdGVkSXRlbSh0aGlzLml0ZW1zKTtcclxuICAgIHJldHVybiBzZWxlY3RlZEl0ZW0gPyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChzZWxlY3RlZEl0ZW0uaWQpIGFzIEhUTUxFbGVtZW50IDogdW5kZWZpbmVkO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { CommonModule } from '@angular/common';
|
|
3
|
-
import { FormsModule } from '@angular/forms';
|
|
4
|
-
import { ItemComponent } from './item/item.component';
|
|
5
|
-
import { GroupItemComponent } from './group-item/group-item.component';
|
|
6
|
-
import { InputFilterComponent } from './filter/input-filter.component';
|
|
7
|
-
import { AnchorComponent } from './anchor/anchor.component';
|
|
8
|
-
import { DropdownComponent } from './dropdown/dropdown.component';
|
|
9
|
-
import { DropdownListComponent } from './dropdown-list.component';
|
|
10
|
-
import * as i0 from "@angular/core";
|
|
11
|
-
export class DropdownListModule {
|
|
12
|
-
}
|
|
13
|
-
DropdownListModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DropdownListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
14
|
-
DropdownListModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DropdownListModule, declarations: [DropdownListComponent,
|
|
15
|
-
ItemComponent,
|
|
16
|
-
GroupItemComponent,
|
|
17
|
-
InputFilterComponent,
|
|
18
|
-
AnchorComponent,
|
|
19
|
-
DropdownComponent], imports: [CommonModule, FormsModule], exports: [DropdownListComponent] });
|
|
20
|
-
DropdownListModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DropdownListModule, providers: [], imports: [[CommonModule, FormsModule]] });
|
|
21
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DropdownListModule, decorators: [{
|
|
22
|
-
type: NgModule,
|
|
23
|
-
args: [{
|
|
24
|
-
declarations: [
|
|
25
|
-
DropdownListComponent,
|
|
26
|
-
ItemComponent,
|
|
27
|
-
GroupItemComponent,
|
|
28
|
-
InputFilterComponent,
|
|
29
|
-
AnchorComponent,
|
|
30
|
-
DropdownComponent
|
|
31
|
-
],
|
|
32
|
-
exports: [DropdownListComponent],
|
|
33
|
-
imports: [CommonModule, FormsModule],
|
|
34
|
-
providers: [],
|
|
35
|
-
bootstrap: [],
|
|
36
|
-
}]
|
|
37
|
-
}] });
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tbGlzdC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbmd4LWRyb3Bkb3duLWxpc3QvZHJvcGRvd24tbGlzdC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7O0FBZ0JsRSxNQUFNLE9BQU8sa0JBQWtCOztnSEFBbEIsa0JBQWtCO2lIQUFsQixrQkFBa0IsaUJBWjNCLHFCQUFxQjtRQUNyQixhQUFhO1FBQ2Isa0JBQWtCO1FBQ2xCLG9CQUFvQjtRQUNwQixlQUFlO1FBQ2YsaUJBQWlCLGFBR1IsWUFBWSxFQUFFLFdBQVcsYUFEekIscUJBQXFCO2lIQUtyQixrQkFBa0IsYUFIbEIsRUFBRSxZQURKLENBQUUsWUFBWSxFQUFFLFdBQVcsQ0FBRTs0RkFJM0Isa0JBQWtCO2tCQWQ5QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWixxQkFBcUI7d0JBQ3JCLGFBQWE7d0JBQ2Isa0JBQWtCO3dCQUNsQixvQkFBb0I7d0JBQ3BCLGVBQWU7d0JBQ2YsaUJBQWlCO3FCQUNsQjtvQkFDRCxPQUFPLEVBQUUsQ0FBRSxxQkFBcUIsQ0FBQztvQkFDakMsT0FBTyxFQUFFLENBQUUsWUFBWSxFQUFFLFdBQVcsQ0FBRTtvQkFDdEMsU0FBUyxFQUFFLEVBQUU7b0JBQ2IsU0FBUyxFQUFFLEVBQUU7aUJBQ2QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgSXRlbUNvbXBvbmVudCB9IGZyb20gJy4vaXRlbS9pdGVtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEdyb3VwSXRlbUNvbXBvbmVudCB9IGZyb20gJy4vZ3JvdXAtaXRlbS9ncm91cC1pdGVtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IElucHV0RmlsdGVyQ29tcG9uZW50IH0gZnJvbSAnLi9maWx0ZXIvaW5wdXQtZmlsdGVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFuY2hvckNvbXBvbmVudCB9IGZyb20gJy4vYW5jaG9yL2FuY2hvci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBEcm9wZG93bkNvbXBvbmVudCB9IGZyb20gJy4vZHJvcGRvd24vZHJvcGRvd24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgRHJvcGRvd25MaXN0Q29tcG9uZW50IH0gZnJvbSAnLi9kcm9wZG93bi1saXN0LmNvbXBvbmVudCc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW1xyXG4gICAgRHJvcGRvd25MaXN0Q29tcG9uZW50LFxyXG4gICAgSXRlbUNvbXBvbmVudCxcclxuICAgIEdyb3VwSXRlbUNvbXBvbmVudCxcclxuICAgIElucHV0RmlsdGVyQ29tcG9uZW50LFxyXG4gICAgQW5jaG9yQ29tcG9uZW50LFxyXG4gICAgRHJvcGRvd25Db21wb25lbnRcclxuICBdLFxyXG4gIGV4cG9ydHM6IFsgRHJvcGRvd25MaXN0Q29tcG9uZW50XSxcclxuICBpbXBvcnRzOiBbIENvbW1vbk1vZHVsZSwgRm9ybXNNb2R1bGUgXSxcclxuICBwcm92aWRlcnM6IFtdLFxyXG4gIGJvb3RzdHJhcDogW10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEcm9wZG93bkxpc3RNb2R1bGUge31cclxuIl19
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "@angular/forms";
|
|
4
|
-
export class InputFilterComponent {
|
|
5
|
-
constructor() {
|
|
6
|
-
/**
|
|
7
|
-
* bind to [inputFilterBlur], emits with (blur) of filter input box
|
|
8
|
-
*/
|
|
9
|
-
this.inputFilterBlur = new EventEmitter();
|
|
10
|
-
/**
|
|
11
|
-
* bind to [filterValueChange], for 2-way binding of filterValue
|
|
12
|
-
*/
|
|
13
|
-
this.filterValueChange = new EventEmitter();
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* triggers with (blur) event, emits the (inputFilterBlur) event
|
|
17
|
-
*/
|
|
18
|
-
onFilterTextBlur(event) {
|
|
19
|
-
this.inputFilterBlur.emit(event);
|
|
20
|
-
}
|
|
21
|
-
/**
|
|
22
|
-
* triggers with (input) event, emits the (filterValueChange) event for 2-way binding of filterValue
|
|
23
|
-
*/
|
|
24
|
-
onChange() {
|
|
25
|
-
this.filterValueChange.emit(this.filterValue);
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
InputFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: InputFilterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
29
|
-
InputFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: InputFilterComponent, selector: "input-filter", inputs: { filterValue: "filterValue" }, outputs: { inputFilterBlur: "inputFilterBlur", filterValueChange: "filterValueChange" }, ngImport: i0, template: `
|
|
30
|
-
<input type="text" class="filter-box" [(ngModel)]="filterValue" (input)="onChange()" (blur)="onFilterTextBlur($event)">
|
|
31
|
-
`, isInline: true, styles: ["*,*:before,*:after{font-size:inherit;font-weight:inherit;font-family:inherit;box-sizing:inherit;background:inherit}.filter-box{width:calc(100% - 10px);height:28px;border-radius:4px;border:1px solid #ccc;margin:1px 5px 5px;padding-left:5px;font-size:12px;box-sizing:border-box;color:#495057}.filter-box:focus{outline:0;border-color:#ccc}\n"], directives: [{ type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
|
|
32
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: InputFilterComponent, decorators: [{
|
|
33
|
-
type: Component,
|
|
34
|
-
args: [{ selector: 'input-filter', template: `
|
|
35
|
-
<input type="text" class="filter-box" [(ngModel)]="filterValue" (input)="onChange()" (blur)="onFilterTextBlur($event)">
|
|
36
|
-
`, styles: ["*,*:before,*:after{font-size:inherit;font-weight:inherit;font-family:inherit;box-sizing:inherit;background:inherit}.filter-box{width:calc(100% - 10px);height:28px;border-radius:4px;border:1px solid #ccc;margin:1px 5px 5px;padding-left:5px;font-size:12px;box-sizing:border-box;color:#495057}.filter-box:focus{outline:0;border-color:#ccc}\n"] }]
|
|
37
|
-
}], propDecorators: { filterValue: [{
|
|
38
|
-
type: Input
|
|
39
|
-
}], inputFilterBlur: [{
|
|
40
|
-
type: Output
|
|
41
|
-
}], filterValueChange: [{
|
|
42
|
-
type: Output
|
|
43
|
-
}] } });
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZmlsdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9uZ3gtZHJvcGRvd24tbGlzdC9maWx0ZXIvaW5wdXQtZmlsdGVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDOzs7QUFVckUsTUFBTSxPQUFPLG9CQUFvQjtJQVJqQztRQWFFOztXQUVHO1FBQ08sb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBQ3ZEOztXQUVHO1FBQ08sc0JBQWlCLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztLQWUxRDtJQWJDOztPQUVHO0lBQ0gsZ0JBQWdCLENBQUMsS0FBSztRQUNwQixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxRQUFRO1FBQ04sSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDaEQsQ0FBQzs7a0hBMUJVLG9CQUFvQjtzR0FBcEIsb0JBQW9CLHFMQU5yQjs7R0FFVDs0RkFJVSxvQkFBb0I7a0JBUmhDLFNBQVM7K0JBQ0UsY0FBYyxZQUNkOztHQUVUOzhCQVFRLFdBQVc7c0JBQW5CLEtBQUs7Z0JBSUksZUFBZTtzQkFBeEIsTUFBTTtnQkFJRyxpQkFBaUI7c0JBQTFCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnaW5wdXQtZmlsdGVyJyxcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgY2xhc3M9XCJmaWx0ZXItYm94XCIgWyhuZ01vZGVsKV09XCJmaWx0ZXJWYWx1ZVwiIChpbnB1dCk9XCJvbkNoYW5nZSgpXCIgKGJsdXIpPVwib25GaWx0ZXJUZXh0Qmx1cigkZXZlbnQpXCI+XHJcbiAgYCxcclxuICBzdHlsZVVybHM6IFsnLi9pbnB1dC1maWx0ZXIuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5cclxuZXhwb3J0IGNsYXNzIElucHV0RmlsdGVyQ29tcG9uZW50IHtcclxuICAvKipcclxuICAgKiBiaW5kIHRvIFtmaWx0ZXJWYWx1ZV0sIHRoZSB2YWx1ZSBvZiB0aGUgZmlsdGVyXHJcbiAgICovXHJcbiAgQElucHV0KCkgZmlsdGVyVmFsdWU6IHN0cmluZztcclxuICAvKipcclxuICAgKiBiaW5kIHRvIFtpbnB1dEZpbHRlckJsdXJdLCBlbWl0cyB3aXRoIChibHVyKSBvZiBmaWx0ZXIgaW5wdXQgYm94XHJcbiAgICovXHJcbiAgQE91dHB1dCgpIGlucHV0RmlsdGVyQmx1ciA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xyXG4gIC8qKlxyXG4gICAqIGJpbmQgdG8gW2ZpbHRlclZhbHVlQ2hhbmdlXSwgZm9yIDItd2F5IGJpbmRpbmcgb2YgZmlsdGVyVmFsdWVcclxuICAgKi9cclxuICBAT3V0cHV0KCkgZmlsdGVyVmFsdWVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcclxuXHJcbiAgLyoqXHJcbiAgICogdHJpZ2dlcnMgd2l0aCAoYmx1cikgZXZlbnQsIGVtaXRzIHRoZSAoaW5wdXRGaWx0ZXJCbHVyKSBldmVudFxyXG4gICAqL1xyXG4gIG9uRmlsdGVyVGV4dEJsdXIoZXZlbnQpIHtcclxuICAgIHRoaXMuaW5wdXRGaWx0ZXJCbHVyLmVtaXQoZXZlbnQpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogdHJpZ2dlcnMgd2l0aCAoaW5wdXQpIGV2ZW50LCBlbWl0cyB0aGUgKGZpbHRlclZhbHVlQ2hhbmdlKSBldmVudCBmb3IgMi13YXkgYmluZGluZyBvZiBmaWx0ZXJWYWx1ZVxyXG4gICAqL1xyXG4gIG9uQ2hhbmdlKCkge1xyXG4gICAgdGhpcy5maWx0ZXJWYWx1ZUNoYW5nZS5lbWl0KHRoaXMuZmlsdGVyVmFsdWUpO1xyXG4gIH1cclxufVxyXG4iXX0=
|