@unnilouis.org/vs-chipdropdown 0.0.26-V9 → 0.0.27-V17

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.
Files changed (37) hide show
  1. package/README.md +2 -2
  2. package/esm2022/lib/vs-chipdd-cmp/vs-chipdd-cmp.component.mjs +269 -0
  3. package/esm2022/lib/vs-chipdropdown.component.mjs +19 -0
  4. package/esm2022/lib/vs-chipdropdown.module.mjs +58 -0
  5. package/esm2022/lib/vs-chipdropdown.service.mjs +45 -0
  6. package/esm2022/public-api.mjs +8 -0
  7. package/esm2022/unnilouis.org-vs-chipdropdown.mjs +5 -0
  8. package/fesm2022/unnilouis.org-vs-chipdropdown.mjs +390 -0
  9. package/fesm2022/unnilouis.org-vs-chipdropdown.mjs.map +1 -0
  10. package/{unnilouis.org-vs-chipdropdown.d.ts → index.d.ts} +5 -4
  11. package/lib/vs-chipdd-cmp/vs-chipdd-cmp.component.d.ts +40 -37
  12. package/lib/vs-chipdropdown.component.d.ts +5 -5
  13. package/lib/vs-chipdropdown.module.d.ts +22 -5
  14. package/lib/vs-chipdropdown.service.d.ts +11 -8
  15. package/package.json +19 -15
  16. package/public-api.d.ts +4 -4
  17. package/bundles/unnilouis.org-vs-chipdropdown.umd.js +0 -600
  18. package/bundles/unnilouis.org-vs-chipdropdown.umd.js.map +0 -1
  19. package/bundles/unnilouis.org-vs-chipdropdown.umd.min.js +0 -16
  20. package/bundles/unnilouis.org-vs-chipdropdown.umd.min.js.map +0 -1
  21. package/esm2015/lib/vs-chipdd-cmp/vs-chipdd-cmp.component.js +0 -273
  22. package/esm2015/lib/vs-chipdropdown.component.js +0 -19
  23. package/esm2015/lib/vs-chipdropdown.module.js +0 -39
  24. package/esm2015/lib/vs-chipdropdown.service.js +0 -49
  25. package/esm2015/public-api.js +0 -8
  26. package/esm2015/unnilouis.org-vs-chipdropdown.js +0 -5
  27. package/esm5/lib/vs-chipdd-cmp/vs-chipdd-cmp.component.js +0 -289
  28. package/esm5/lib/vs-chipdropdown.component.js +0 -17
  29. package/esm5/lib/vs-chipdropdown.module.js +0 -42
  30. package/esm5/lib/vs-chipdropdown.service.js +0 -52
  31. package/esm5/public-api.js +0 -8
  32. package/esm5/unnilouis.org-vs-chipdropdown.js +0 -5
  33. package/fesm2015/unnilouis.org-vs-chipdropdown.js +0 -373
  34. package/fesm2015/unnilouis.org-vs-chipdropdown.js.map +0 -1
  35. package/fesm5/unnilouis.org-vs-chipdropdown.js +0 -393
  36. package/fesm5/unnilouis.org-vs-chipdropdown.js.map +0 -1
  37. package/unnilouis.org-vs-chipdropdown.metadata.json +0 -1
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # VsChipdropdown
2
2
 
3
- This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 9.1.13.
3
+ This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 17.2.0.
4
4
 
5
5
  ## Code scaffolding
6
6
 
@@ -21,4 +21,4 @@ Run `ng test vs-chipdropdown` to execute the unit tests via [Karma](https://karm
21
21
 
22
22
  ## Further help
23
23
 
24
- To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI README](https://github.com/angular/angular-cli/blob/master/README.md).
24
+ To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.io/cli) page.
@@ -0,0 +1,269 @@
1
+ import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';
2
+ import { MatAutocomplete, MatAutocompleteTrigger } from '@angular/material/autocomplete';
3
+ import { debounceTime, distinctUntilChanged, tap, switchMap, finalize, takeUntil, map, } from "rxjs/operators";
4
+ import { fromEvent } from 'rxjs';
5
+ import { FormGroup } from '@angular/forms';
6
+ import { COMMA, ENTER } from '@angular/cdk/keycodes';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "../vs-chipdropdown.service";
9
+ import * as i2 from "@angular/forms";
10
+ import * as i3 from "@angular/material/form-field";
11
+ import * as i4 from "@angular/material/core";
12
+ import * as i5 from "@angular/material/autocomplete";
13
+ import * as i6 from "@angular/material/chips";
14
+ import * as i7 from "@angular/material/icon";
15
+ import * as i8 from "@ngx-translate/core";
16
+ export class VsChipddCmpComponent {
17
+ constructor(service, fb) {
18
+ this.service = service;
19
+ this.fb = fb;
20
+ this.DrodownLoading = false;
21
+ this.Backendapi = true;
22
+ this.autocompleteTrigger = MatAutocompleteTrigger;
23
+ this.matAutocompleteApp = MatAutocomplete;
24
+ this.dataEvent = new EventEmitter();
25
+ this.separatorsKeysCodes = [ENTER, COMMA];
26
+ this.has_next = false;
27
+ this.currentpage = 1;
28
+ this.Dropdowndata = [];
29
+ this.has_previous = false;
30
+ this.DropdownForm = FormGroup;
31
+ this.chipSelectedId = [];
32
+ this.chipSelectedObj = [];
33
+ }
34
+ ngOnInit() {
35
+ // this.DropdownForm = this.fb.group({
36
+ // value: ''
37
+ // })
38
+ // if (this.InputFields?.defaultvalue) {
39
+ // this.DropdownForm.get("value").patchValue(this.InputFields?.defaultvalue)
40
+ // this.chipSelectedObj = this.InputFields?.defaultvalue
41
+ // if (this.chipSelectedObj.length > 0) {
42
+ // for (let foundemp of this.chipSelectedObj) {
43
+ // if (this.InputFields?.Outputkey) {
44
+ // this.chipSelectedId.push(foundemp[this.InputFields?.Outputkey])
45
+ // }
46
+ // else {
47
+ // this.chipSelectedId.push(foundemp.id)
48
+ // }
49
+ // }
50
+ // this.selected()
51
+ // }
52
+ // }
53
+ // if (this.InputFields?.fronentdata) {
54
+ // this.Dropdowndata = this.InputFields?.data
55
+ // }
56
+ // else {
57
+ // this.getdropdown('')
58
+ // }
59
+ }
60
+ dupngonit() {
61
+ this.DropdownForm = this.fb.group({
62
+ value: ''
63
+ });
64
+ if (this.InputFields?.defaultvalue) {
65
+ this.DropdownForm.get("value").patchValue(this.InputFields?.defaultvalue);
66
+ this.chipSelectedObj = this.InputFields?.defaultvalue;
67
+ if (this.chipSelectedObj.length > 0) {
68
+ for (let foundemp of this.chipSelectedObj) {
69
+ if (this.InputFields?.Outputkey) {
70
+ this.chipSelectedId.push(foundemp[this.InputFields?.Outputkey]);
71
+ }
72
+ else {
73
+ this.chipSelectedId.push(foundemp.id);
74
+ }
75
+ }
76
+ this.selected();
77
+ }
78
+ }
79
+ if (this.InputFields?.fronentdata) {
80
+ this.Dropdowndata = this.InputFields?.data;
81
+ }
82
+ else {
83
+ this.getdropdown('');
84
+ }
85
+ }
86
+ ngOnChanges(changes) {
87
+ console.log("changes.ResetForm", changes['ResetForm'], changes['ResetForm'].currentValue, changes['ResetForm'] && changes['ResetForm'].currentValue);
88
+ if (changes['InputFields'] && changes['InputFields'].currentValue) {
89
+ console.log("Summary Log Changes");
90
+ this.currentpage = 1;
91
+ this.ngOnInit();
92
+ }
93
+ if (changes['ResetForm'] && changes['ResetForm'].currentValue) {
94
+ console.log("hitted");
95
+ this.DropdownForm.reset();
96
+ this.currentpage = 1;
97
+ this.ngOnInit();
98
+ this.chipSelectedId = [];
99
+ this.chipSelectedObj = [];
100
+ this.dataEvent.emit([]);
101
+ }
102
+ }
103
+ // public displaydevelopclient(clt: any, key: string) {
104
+ // return key[clt];
105
+ // }
106
+ autocompleteAppScroll() {
107
+ if (!(this.InputFields?.fronentdata)) {
108
+ setTimeout(() => {
109
+ if (this.matAutocompleteApp &&
110
+ this.autocompleteTrigger &&
111
+ this.matAutocompleteApp.panel) {
112
+ fromEvent(this.matAutocompleteApp.panel.nativeElement, 'scroll')
113
+ .pipe(map(x => this.matAutocompleteApp.panel.nativeElement.scrollTop), takeUntil(this.autocompleteTrigger.panelClosingActions))
114
+ .subscribe(x => {
115
+ const scrollTop = this.matAutocompleteApp.panel.nativeElement.scrollTop;
116
+ const scrollHeight = this.matAutocompleteApp.panel.nativeElement.scrollHeight;
117
+ const elementHeight = this.matAutocompleteApp.panel.nativeElement.clientHeight;
118
+ const atBottom = scrollHeight - 1 <= scrollTop + elementHeight;
119
+ if (atBottom) {
120
+ if (this.has_next === true) {
121
+ let value = this.DropInput.nativeElement.value;
122
+ let params = this.searchparams(value);
123
+ this.currentpage = this.currentpage + 1;
124
+ if (this.currentpage > 1) {
125
+ this.service.GetApi(this.InputFields.url + "?page=" + this.currentpage, params)
126
+ .subscribe((results) => {
127
+ let datas = results["data"];
128
+ let datapagination = results["pagination"];
129
+ this.Dropdowndata = this.Dropdowndata.concat(datas);
130
+ console.log("this.Dropdowndata", this.Dropdowndata);
131
+ if (this.Dropdowndata.length >= 0) {
132
+ this.has_next = datapagination.has_next;
133
+ this.has_previous = datapagination.has_previous;
134
+ this.currentpage = datapagination.index;
135
+ }
136
+ });
137
+ }
138
+ }
139
+ }
140
+ });
141
+ }
142
+ });
143
+ }
144
+ }
145
+ dropdownsearch() {
146
+ if (!(this.InputFields?.fronentdata)) {
147
+ this.DropdownForm.get("value").valueChanges.pipe(debounceTime(100), distinctUntilChanged(), tap(() => {
148
+ this.DrodownLoading = true;
149
+ console.log("inside tap");
150
+ }), switchMap((value) => {
151
+ let params = this.searchparams(value);
152
+ this.currentpage = 1;
153
+ return this.service.GetApi(this.InputFields.url + "?page=" + this.currentpage, params).pipe(finalize(() => {
154
+ this.DrodownLoading = false;
155
+ }));
156
+ })).subscribe((results) => {
157
+ let datas = results["data"];
158
+ this.Dropdowndata = datas;
159
+ });
160
+ }
161
+ }
162
+ getdropdown(value) {
163
+ let params = this.searchparams(value);
164
+ this.service.GetApi(this.InputFields.url + "?page=" + this.currentpage, params)
165
+ .subscribe((results) => {
166
+ let datas = results["data"];
167
+ let datapagination = results["pagination"];
168
+ this.Dropdowndata = datas;
169
+ if (this.Dropdowndata.length >= 0) {
170
+ this.has_next = datapagination.has_next;
171
+ this.has_previous = datapagination.has_previous;
172
+ this.currentpage = datapagination.index;
173
+ }
174
+ });
175
+ }
176
+ selected() {
177
+ // let data = this.DropdownForm.value.value
178
+ if (this.InputFields?.wholedata) {
179
+ this.dataEvent.emit(this.chipSelectedObj);
180
+ }
181
+ else {
182
+ if (this.InputFields?.Outputkey) {
183
+ this.dataEvent.emit(this.chipSelectedId);
184
+ }
185
+ else {
186
+ this.dataEvent.emit(this.chipSelectedObj);
187
+ }
188
+ }
189
+ }
190
+ searchparams(value) {
191
+ let params = '';
192
+ if (this.InputFields.params) {
193
+ params = this.InputFields.params;
194
+ }
195
+ let inpValue = value;
196
+ inpValue ? params += '&' + this.InputFields.searchkey + '=' + inpValue : '';
197
+ return params;
198
+ }
199
+ removechip(obj) {
200
+ const index = this.chipSelectedObj.indexOf(obj);
201
+ if (index >= 0) {
202
+ this.chipSelectedObj.splice(index, 1);
203
+ console.log(this.chipSelectedObj);
204
+ this.chipSelectedId.splice(index, 1);
205
+ console.log(this.chipSelectedId);
206
+ this.DropInput.nativeElement.value = '';
207
+ this.selected();
208
+ }
209
+ }
210
+ venSelected(event) {
211
+ this.DropInput.nativeElement.value = '';
212
+ console.log('event.option.value', event.option.value);
213
+ this.selectvenByName(event.option.value[this.comparekey(event.option.value)]);
214
+ console.log('chipSelectedvenid', this.chipSelectedObj);
215
+ }
216
+ selectvenByName(ven) {
217
+ let foundemp1 = this.chipSelectedObj.filter((e) => e[this.comparekey(e)] == ven);
218
+ if (foundemp1.length) {
219
+ return;
220
+ }
221
+ let foundemp = this.Dropdowndata.filter((e) => e[this.comparekey(e)] == ven);
222
+ if (foundemp.length) {
223
+ this.chipSelectedObj.push(foundemp[0]);
224
+ if (this.InputFields?.Outputkey) {
225
+ this.chipSelectedId.push(foundemp[0][this.InputFields?.Outputkey]);
226
+ }
227
+ else {
228
+ this.chipSelectedId.push(foundemp[0].id);
229
+ }
230
+ }
231
+ }
232
+ comparekey(e) {
233
+ if (this.InputFields?.comparekey) {
234
+ return this.InputFields?.comparekey;
235
+ }
236
+ else {
237
+ if (e?.id) {
238
+ return "id";
239
+ }
240
+ else {
241
+ return this.InputFields.displaykey;
242
+ }
243
+ }
244
+ }
245
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: VsChipddCmpComponent, deps: [{ token: i1.VsChipdropdownService }, { token: i2.FormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
246
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.0", type: VsChipddCmpComponent, selector: "lib-vs-chipdd-cmp", inputs: { InputFields: "InputFields", ResetForm: "ResetForm", Backendapi: "Backendapi" }, outputs: { dataEvent: "dataEvent" }, viewQueries: [{ propertyName: "autocompleteTrigger", first: true, predicate: MatAutocompleteTrigger, descendants: true }, { propertyName: "matAutocompleteApp", first: true, predicate: ["scrolll"], descendants: true }, { propertyName: "DropInput", first: true, predicate: ["DropInput"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div>\r\n <form [formGroup]=\"DropdownForm\">\r\n <mat-form-field class=\"mat-chipScroll\" appearance=\"outline\">\r\n <mat-label>{{ InputFields.label | translate }}</mat-label>\r\n <mat-chip-grid multiple #chipListvendor class=\"chip-container\">\r\n @for(obj of chipSelectedObj; track obj ){\r\n <mat-chip-row\r\n [removable]=\"true\"\r\n (removed)=\"removechip(obj)\"\r\n class=\"mat-chipEx\"\r\n >\r\n {{ obj[InputFields.displaykey] }}\r\n <mat-icon matChipRemove>cancel</mat-icon>\r\n </mat-chip-row>\r\n }\r\n\r\n <input\r\n #DropInput\r\n [matAutocomplete]=\"scrolll\"\r\n class=\"matformfieldinputstyle\"\r\n (keydown)=\"dropdownsearch()\"\r\n [matChipInputFor]=\"chipListvendor\"\r\n [matChipInputSeparatorKeyCodes]=\"separatorsKeysCodes\"\r\n [matChipInputAddOnBlur]=\"true\"\r\n formControlName=\"value\"\r\n />\r\n </mat-chip-grid>\r\n <mat-autocomplete\r\n #scrolll=\"matAutocomplete\"\r\n (optionSelected)=\"venSelected($event)\"\r\n (opened)=\"autocompleteAppScroll()\"\r\n >\r\n <ng-container>\r\n @for(dropvalues of Dropdowndata; track dropvalues ){\r\n <mat-option [value]=\"dropvalues\" (click)=\"selected()\">\r\n {{ dropvalues[InputFields.displaykey] }}\r\n </mat-option>\r\n }\r\n </ng-container>\r\n </mat-autocomplete>\r\n </mat-form-field>\r\n </form>\r\n</div>\r\n", styles: [".mat-chipScroll{max-width:420px;width:100%}.mat-chipEx{text-align:left}.chip-container{overflow-y:scroll;max-height:80px}.chip-container::-webkit-scrollbar{width:6px;height:6px}.chip-container::-webkit-scrollbar-track{background:transparent}.chip-container::-webkit-scrollbar-thumb{border-radius:20px;background:#c3c3c3}.chip-container::-webkit-scrollbar-thumb:hover{background:#a6a6a6}\n"], dependencies: [{ kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "component", type: i4.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i5.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "directive", type: i5.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i6.MatChipGrid, selector: "mat-chip-grid", inputs: ["disabled", "placeholder", "required", "value", "errorStateMatcher"], outputs: ["change", "valueChange"] }, { kind: "directive", type: i6.MatChipInput, selector: "input[matChipInputFor]", inputs: ["matChipInputFor", "matChipInputAddOnBlur", "matChipInputSeparatorKeyCodes", "placeholder", "id", "disabled"], outputs: ["matChipInputTokenEnd"], exportAs: ["matChipInput", "matChipInputFor"] }, { kind: "directive", type: i6.MatChipRemove, selector: "[matChipRemove]" }, { kind: "component", type: i6.MatChipRow, selector: "mat-chip-row, [mat-chip-row], mat-basic-chip-row, [mat-basic-chip-row]", inputs: ["editable"], outputs: ["edited"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: i8.TranslatePipe, name: "translate" }] }); }
247
+ }
248
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: VsChipddCmpComponent, decorators: [{
249
+ type: Component,
250
+ args: [{ selector: 'lib-vs-chipdd-cmp', template: "<div>\r\n <form [formGroup]=\"DropdownForm\">\r\n <mat-form-field class=\"mat-chipScroll\" appearance=\"outline\">\r\n <mat-label>{{ InputFields.label | translate }}</mat-label>\r\n <mat-chip-grid multiple #chipListvendor class=\"chip-container\">\r\n @for(obj of chipSelectedObj; track obj ){\r\n <mat-chip-row\r\n [removable]=\"true\"\r\n (removed)=\"removechip(obj)\"\r\n class=\"mat-chipEx\"\r\n >\r\n {{ obj[InputFields.displaykey] }}\r\n <mat-icon matChipRemove>cancel</mat-icon>\r\n </mat-chip-row>\r\n }\r\n\r\n <input\r\n #DropInput\r\n [matAutocomplete]=\"scrolll\"\r\n class=\"matformfieldinputstyle\"\r\n (keydown)=\"dropdownsearch()\"\r\n [matChipInputFor]=\"chipListvendor\"\r\n [matChipInputSeparatorKeyCodes]=\"separatorsKeysCodes\"\r\n [matChipInputAddOnBlur]=\"true\"\r\n formControlName=\"value\"\r\n />\r\n </mat-chip-grid>\r\n <mat-autocomplete\r\n #scrolll=\"matAutocomplete\"\r\n (optionSelected)=\"venSelected($event)\"\r\n (opened)=\"autocompleteAppScroll()\"\r\n >\r\n <ng-container>\r\n @for(dropvalues of Dropdowndata; track dropvalues ){\r\n <mat-option [value]=\"dropvalues\" (click)=\"selected()\">\r\n {{ dropvalues[InputFields.displaykey] }}\r\n </mat-option>\r\n }\r\n </ng-container>\r\n </mat-autocomplete>\r\n </mat-form-field>\r\n </form>\r\n</div>\r\n", styles: [".mat-chipScroll{max-width:420px;width:100%}.mat-chipEx{text-align:left}.chip-container{overflow-y:scroll;max-height:80px}.chip-container::-webkit-scrollbar{width:6px;height:6px}.chip-container::-webkit-scrollbar-track{background:transparent}.chip-container::-webkit-scrollbar-thumb{border-radius:20px;background:#c3c3c3}.chip-container::-webkit-scrollbar-thumb:hover{background:#a6a6a6}\n"] }]
251
+ }], ctorParameters: () => [{ type: i1.VsChipdropdownService }, { type: i2.FormBuilder }], propDecorators: { InputFields: [{
252
+ type: Input
253
+ }], ResetForm: [{
254
+ type: Input
255
+ }], Backendapi: [{
256
+ type: Input
257
+ }], autocompleteTrigger: [{
258
+ type: ViewChild,
259
+ args: [MatAutocompleteTrigger]
260
+ }], matAutocompleteApp: [{
261
+ type: ViewChild,
262
+ args: ['scrolll']
263
+ }], dataEvent: [{
264
+ type: Output
265
+ }], DropInput: [{
266
+ type: ViewChild,
267
+ args: ['DropInput']
268
+ }] } });
269
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidnMtY2hpcGRkLWNtcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92cy1jaGlwZHJvcGRvd24vc3JjL2xpYi92cy1jaGlwZGQtY21wL3ZzLWNoaXBkZC1jbXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdnMtY2hpcGRyb3Bkb3duL3NyYy9saWIvdnMtY2hpcGRkLWNtcC92cy1jaGlwZGQtY21wLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQWlCLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRyxPQUFPLEVBQWdDLGVBQWUsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3ZILE9BQU8sRUFDTCxZQUFZLEVBQ1osb0JBQW9CLEVBQ3BCLEdBQUcsRUFFSCxTQUFTLEVBQ1QsUUFBUSxFQUNSLFNBQVMsRUFDVCxHQUFHLEdBQ0osTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQW9CLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVuRCxPQUFPLEVBQTRCLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7Ozs7Ozs7Ozs7QUFPckQsTUFBTSxPQUFPLG9CQUFvQjtJQUUvQixZQUFvQixPQUE4QixFQUFVLEVBQWU7UUFBdkQsWUFBTyxHQUFQLE9BQU8sQ0FBdUI7UUFBVSxPQUFFLEdBQUYsRUFBRSxDQUFhO1FBRDNFLG1CQUFjLEdBQVcsS0FBSyxDQUFDO1FBSXRCLGVBQVUsR0FBWSxJQUFJLENBQUE7UUFFQSx3QkFBbUIsR0FBTyxzQkFBc0IsQ0FBQztRQUM5RCx1QkFBa0IsR0FBTyxlQUFlLENBQUM7UUFDckQsY0FBUyxH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QXNCO2dCQUNYLGtCQUFrQjtzQkFBdkMsU0FBUzt1QkFBQyxTQUFTO2dCQUNWLFNBQVM7c0JBQWxCLE1BQU07Z0JBQ2lCLFNBQVM7c0JBQWhDLFNBQVM7dUJBQUMsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzLCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTWF0QXV0b2NvbXBsZXRlU2VsZWN0ZWRFdmVudCwgTWF0QXV0b2NvbXBsZXRlLCBNYXRBdXRvY29tcGxldGVUcmlnZ2VyIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYXV0b2NvbXBsZXRlJztcclxuaW1wb3J0IHtcclxuICBkZWJvdW5jZVRpbWUsXHJcbiAgZGlzdGluY3RVbnRpbENoYW5nZWQsXHJcbiAgdGFwLFxyXG4gIGZpbHRlcixcclxuICBzd2l0Y2hNYXAsXHJcbiAgZmluYWxpemUsXHJcbiAgdGFrZVVudGlsLFxyXG4gIG1hcCxcclxufSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcclxuaW1wb3J0IHsgZnJvbSwgT2JzZXJ2YWJsZSwgZnJvbUV2ZW50IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IFZzQ2hpcGRyb3Bkb3duU2VydmljZSB9IGZyb20gJy4uL3ZzLWNoaXBkcm9wZG93bi5zZXJ2aWNlJ1xyXG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgQ09NTUEsIEVOVEVSIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2tleWNvZGVzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLXZzLWNoaXBkZC1jbXAnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi92cy1jaGlwZGQtY21wLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vdnMtY2hpcGRkLWNtcC5jb21wb25lbnQuc2NzcydcclxufSlcclxuZXhwb3J0IGNsYXNzIFZzQ2hpcGRkQ21wQ29tcG9uZW50IHtcclxuICBEcm9kb3duTG9hZGluZzpib29sZWFuID0gZmFsc2U7XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzZXJ2aWNlOiBWc0NoaXBkcm9wZG93blNlcnZpY2UsIHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyKSB7IH1cclxuICBASW5wdXQoKSBJbnB1dEZpZWxkczogYW55XHJcbiAgQElucHV0KCkgUmVzZXRGb3JtOiBhbnlcclxuICBASW5wdXQoKSBCYWNrZW5kYXBpOiBib29sZWFuID0gdHJ1ZVxyXG5cclxuICBAVmlld0NoaWxkKE1hdEF1dG9jb21wbGV0ZVRyaWdnZXIpIGF1dG9jb21wbGV0ZVRyaWdnZXI6YW55ID0gTWF0QXV0b2NvbXBsZXRlVHJpZ2dlcjtcclxuICBAVmlld0NoaWxkKCdzY3JvbGxsJykgbWF0QXV0b2NvbXBsZXRlQXBwOmFueSA9IE1hdEF1dG9jb21wbGV0ZTtcclxuICBAT3V0cHV0KCkgZGF0YUV2ZW50OiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gIEBWaWV3Q2hpbGQoJ0Ryb3BJbnB1dCcpIERyb3BJbnB1dDogYW55O1xyXG4gIHJlYWRvbmx5IHNlcGFyYXRvcnNLZXlzQ29kZXM6IG51bWJlcltdID0gW0VOVEVSLCBDT01NQV07XHJcblxyXG4gIGhhc19uZXh0OiBib29sZWFuID0gZmFsc2U7XHJcbiAgY3VycmVudHBhZ2U6IG51bWJlciA9IDE7XHJcbiAgRHJvcGRvd25kYXRhOiBhbnkgPSBbXTtcclxuICBoYXNfcHJldmlvdXM6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBEcm9wZG93bkZvcm06IGFueSA9IEZvcm1Hcm91cFxyXG4gIGNoaXBTZWxlY3RlZElkOiBhbnkgPSBbXTtcclxuICBjaGlwU2VsZWN0ZWRPYmo6IGFueSA9IFtdXHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgLy8gdGhpcy5Ecm9wZG93bkZvcm0gPSB0aGlzLmZiLmdyb3VwKHtcclxuICAgIC8vICAgdmFsdWU6ICcnXHJcbiAgICAvLyB9KVxyXG4gICAgLy8gaWYgKHRoaXMuSW5wdXRGaWVsZHM/LmRlZmF1bHR2YWx1ZSkge1xyXG4gICAgLy8gICB0aGlzLkRyb3Bkb3duRm9ybS5nZXQoXCJ2YWx1ZVwiKS5wYXRjaFZhbHVlKHRoaXMuSW5wdXRGaWVsZHM/LmRlZmF1bHR2YWx1ZSlcclxuICAgIC8vICAgdGhpcy5jaGlwU2VsZWN0ZWRPYmogPSB0aGlzLklucHV0RmllbGRzPy5kZWZhdWx0dmFsdWVcclxuICAgIC8vICAgaWYgKHRoaXMuY2hpcFNlbGVjdGVkT2JqLmxlbmd0aCA+IDApIHtcclxuICAgIC8vICAgICBmb3IgKGxldCBmb3VuZGVtcCBvZiB0aGlzLmNoaXBTZWxlY3RlZE9iaikge1xyXG4gICAgLy8gICAgICAgaWYgKHRoaXMuSW5wdXRGaWVsZHM/Lk91dHB1dGtleSkge1xyXG4gICAgLy8gICAgICAgICB0aGlzLmNoaXBTZWxlY3RlZElkLnB1c2goZm91bmRlbXBbdGhpcy5JbnB1dEZpZWxkcz8uT3V0cHV0a2V5XSlcclxuXHJcbiAgICAvLyAgICAgICB9XHJcbiAgICAvLyAgICAgICBlbHNlIHtcclxuICAgIC8vICAgICAgICAgdGhpcy5jaGlwU2VsZWN0ZWRJZC5wdXNoKGZvdW5kZW1wLmlkKVxyXG5cclxuICAgIC8vICAgICAgIH1cclxuICAgIC8vICAgICB9XHJcbiAgICAvLyAgICAgdGhpcy5zZWxlY3RlZCgpXHJcbiAgICAvLyAgIH1cclxuXHJcblxyXG4gICAgLy8gfVxyXG4gICAgLy8gaWYgKHRoaXMuSW5wdXRGaWVsZHM/LmZyb25lbnRkYXRhKSB7XHJcbiAgICAvLyAgIHRoaXMuRHJvcGRvd25kYXRhID0gdGhpcy5JbnB1dEZpZWxkcz8uZGF0YVxyXG5cclxuICAgIC8vIH1cclxuICAgIC8vIGVsc2Uge1xyXG4gICAgLy8gICB0aGlzLmdldGRyb3Bkb3duKCcnKVxyXG4gICAgLy8gfVxyXG4gIH1cclxuICBkdXBuZ29uaXQoKXtcclxuICAgIHRoaXMuRHJvcGRvd25Gb3JtID0gdGhpcy5mYi5ncm91cCh7XHJcbiAgICAgIHZhbHVlOiAnJ1xyXG4gICAgfSlcclxuICAgIGlmICh0aGlzLklucHV0RmllbGRzPy5kZWZhdWx0dmFsdWUpIHtcclxuICAgICAgdGhpcy5Ecm9wZG93bkZvcm0uZ2V0KFwidmFsdWVcIikucGF0Y2hWYWx1ZSh0aGlzLklucHV0RmllbGRzPy5kZWZhdWx0dmFsdWUpXHJcbiAgICAgIHRoaXMuY2hpcFNlbGVjdGVkT2JqID0gdGhpcy5JbnB1dEZpZWxkcz8uZGVmYXVsdHZhbHVlXHJcbiAgICAgIGlmICh0aGlzLmNoaXBTZWxlY3RlZE9iai5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgZm9yIChsZXQgZm91bmRlbXAgb2YgdGhpcy5jaGlwU2VsZWN0ZWRPYmopIHtcclxuICAgICAgICAgIGlmICh0aGlzLklucHV0RmllbGRzPy5PdXRwdXRrZXkpIHtcclxuICAgICAgICAgICAgdGhpcy5jaGlwU2VsZWN0ZWRJZC5wdXNoKGZvdW5kZW1wW3RoaXMuSW5wdXRGaWVsZHM/Lk91dHB1dGtleV0pXHJcblxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMuY2hpcFNlbGVjdGVkSWQucHVzaChmb3VuZGVtcC5pZClcclxuXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWQoKVxyXG4gICAgICB9XHJcblxyXG5cclxuICAgIH1cclxuICAgIGlmICh0aGlzLklucHV0RmllbGRzPy5mcm9uZW50ZGF0YSkge1xyXG4gICAgICB0aGlzLkRyb3Bkb3duZGF0YSA9IHRoaXMuSW5wdXRGaWVsZHM/LmRhdGFcclxuXHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuICAgICAgdGhpcy5nZXRkcm9wZG93bignJylcclxuICAgIH1cclxuICB9XHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgY29uc29sZS5sb2coXCJjaGFuZ2VzLlJlc2V0Rm9ybVwiLCBjaGFuZ2VzWydSZXNldEZvcm0nXSwgY2hhbmdlc1snUmVzZXRGb3JtJ10uY3VycmVudFZhbHVlLCBjaGFuZ2VzWydSZXNldEZvcm0nXSAmJiBjaGFuZ2VzWydSZXNldEZvcm0nXS5jdXJyZW50VmFsdWUpXHJcbiAgICBpZiAoY2hhbmdlc1snSW5wdXRGaWVsZHMnXSAmJiBjaGFuZ2VzWydJbnB1dEZpZWxkcyddLmN1cnJlbnRWYWx1ZSkge1xyXG4gICAgICBjb25zb2xlLmxvZyhcIlN1bW1hcnkgTG9nIENoYW5nZXNcIilcclxuICAgICAgdGhpcy5jdXJyZW50cGFnZSA9IDFcclxuICAgICAgdGhpcy5uZ09uSW5pdCgpXHJcbiAgICB9XHJcbiAgICBpZiAoY2hhbmdlc1snUmVzZXRGb3JtJ10gJiYgY2hhbmdlc1snUmVzZXRGb3JtJ10uY3VycmVudFZhbHVlKSB7XHJcbiAgICAgIGNvbnNvbGUubG9nKFwiaGl0dGVkXCIpXHJcbiAgICAgIHRoaXMuRHJvcGRvd25Gb3JtLnJlc2V0KClcclxuICAgICAgdGhpcy5jdXJyZW50cGFnZSA9IDFcclxuICAgICAgdGhpcy5uZ09uSW5pdCgpXHJcbiAgICAgIHRoaXMuY2hpcFNlbGVjdGVkSWQgPSBbXTtcclxuICAgICAgdGhpcy5jaGlwU2VsZWN0ZWRPYmogPSBbXVxyXG4gICAgICB0aGlzLmRhdGFFdmVudC5lbWl0KFtdKTtcclxuXHJcblxyXG4gICAgfVxyXG4gIH1cclxuICAvLyBwdWJsaWMgZGlzcGxheWRldmVsb3BjbGllbnQoY2x0OiBhbnksIGtleTogc3RyaW5nKSB7XHJcbiAgLy8gICByZXR1cm4ga2V5W2NsdF07XHJcbiAgLy8gfVxyXG4gIGF1dG9jb21wbGV0ZUFwcFNjcm9sbCgpIHtcclxuICAgIGlmICghKHRoaXMuSW5wdXRGaWVsZHM/LmZyb25lbnRkYXRhKSkge1xyXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICBpZiAoXHJcbiAgICAgICAgICB0aGlzLm1hdEF1dG9jb21wbGV0ZUFwcCAmJlxyXG4gICAgICAgICAgdGhpcy5hdXRvY29tcGxldGVUcmlnZ2VyICYmXHJcbiAgICAgICAgICB0aGlzLm1hdEF1dG9jb21wbGV0ZUFwcC5wYW5lbFxyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgZnJvbUV2ZW50KHRoaXMubWF0QXV0b2NvbXBsZXRlQXBwLnBhbmVsLm5hdGl2ZUVsZW1lbnQsICdzY3JvbGwnKVxyXG4gICAgICAgICAgICAucGlwZShcclxuICAgICAgICAgICAgICBtYXAoeCA9PiB0aGlzLm1hdEF1dG9jb21wbGV0ZUFwcC5wYW5lbC5uYXRpdmVFbGVtZW50LnNjcm9sbFRvcCksXHJcbiAgICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMuYXV0b2NvbXBsZXRlVHJpZ2dlci5wYW5lbENsb3NpbmdBY3Rpb25zIGFzIE9ic2VydmFibGU8YW55PilcclxuICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICAuc3Vic2NyaWJlKHggPT4ge1xyXG4gICAgICAgICAgICAgIGNvbnN0IHNjcm9sbFRvcCA9IHRoaXMubWF0QXV0b2NvbXBsZXRlQXBwLnBhbmVsLm5hdGl2ZUVsZW1lbnQuc2Nyb2xsVG9wO1xyXG4gICAgICAgICAgICAgIGNvbnN0IHNjcm9sbEhlaWdodCA9IHRoaXMubWF0QXV0b2NvbXBsZXRlQXBwLnBhbmVsLm5hdGl2ZUVsZW1lbnQuc2Nyb2xsSGVpZ2h0O1xyXG4gICAgICAgICAgICAgIGNvbnN0IGVsZW1lbnRIZWlnaHQgPSB0aGlzLm1hdEF1dG9jb21wbGV0ZUFwcC5wYW5lbC5uYXRpdmVFbGVtZW50LmNsaWVudEhlaWdodDtcclxuICAgICAgICAgICAgICBjb25zdCBhdEJvdHRvbSA9IHNjcm9sbEhlaWdodCAtIDEgPD0gc2Nyb2xsVG9wICsgZWxlbWVudEhlaWdodDtcclxuICAgICAgICAgICAgICBpZiAoYXRCb3R0b20pIHtcclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLmhhc19uZXh0ID09PSB0cnVlKSB7XHJcbiAgICAgICAgICAgICAgICAgIGxldCB2YWx1ZSA9IHRoaXMuRHJvcElucHV0Lm5hdGl2ZUVsZW1lbnQudmFsdWVcclxuICAgICAgICAgICAgICAgICAgbGV0IHBhcmFtcyA9IHRoaXMuc2VhcmNocGFyYW1zKHZhbHVlKVxyXG4gICAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbnRwYWdlID0gdGhpcy5jdXJyZW50cGFnZSArIDFcclxuICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuY3VycmVudHBhZ2UgPiAxKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXJ2aWNlLkdldEFwaSh0aGlzLklucHV0RmllbGRzLnVybCArIFwiP3BhZ2U9XCIgKyB0aGlzLmN1cnJlbnRwYWdlLCBwYXJhbXMpXHJcbiAgICAgICAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKChyZXN1bHRzOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGRhdGFzID0gcmVzdWx0c1tcImRhdGFcIl07XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCBkYXRhcGFnaW5hdGlvbiA9IHJlc3VsdHNbXCJwYWdpbmF0aW9uXCJdO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLkRyb3Bkb3duZGF0YSA9IHRoaXMuRHJvcGRvd25kYXRhLmNvbmNhdChkYXRhcyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKFwidGhpcy5Ecm9wZG93bmRhdGFcIiwgdGhpcy5Ecm9wZG93bmRhdGEpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLkRyb3Bkb3duZGF0YS5sZW5ndGggPj0gMCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuaGFzX25leHQgPSBkYXRhcGFnaW5hdGlvbi5oYXNfbmV4dDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmhhc19wcmV2aW91cyA9IGRhdGFwYWdpbmF0aW9uLmhhc19wcmV2aW91cztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbnRwYWdlID0gZGF0YXBhZ2luYXRpb24uaW5kZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICB9XHJcbiAgZHJvcGRvd25zZWFyY2goKSB7XHJcbiAgICBpZiAoISh0aGlzLklucHV0RmllbGRzPy5mcm9uZW50ZGF0YSkpIHtcclxuICAgICAgdGhpcy5Ecm9wZG93bkZvcm0uZ2V0KFwidmFsdWVcIikudmFsdWVDaGFuZ2VzLnBpcGUoXHJcbiAgICAgICAgZGVib3VuY2VUaW1lKDEwMCksXHJcbiAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcclxuICAgICAgICB0YXAoKCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5Ecm9kb3duTG9hZGluZyA9IHRydWU7XHJcbiAgICAgICAgICBjb25zb2xlLmxvZyhcImluc2lkZSB0YXBcIik7XHJcbiAgICAgICAgfSksXHJcbiAgICAgICAgc3dpdGNoTWFwKCh2YWx1ZSkgPT4ge1xyXG4gICAgICAgICAgbGV0IHBhcmFtcyA9IHRoaXMuc2VhcmNocGFyYW1zKHZhbHVlKTtcclxuICAgICAgICAgIHRoaXMuY3VycmVudHBhZ2UgPSAxXHJcbiAgICAgICAgICByZXR1cm4gdGhpcy5zZXJ2aWNlLkdldEFwaSh0aGlzLklucHV0RmllbGRzLnVybCArIFwiP3BhZ2U9XCIgKyB0aGlzLmN1cnJlbnRwYWdlLCBwYXJhbXMpLnBpcGUoXHJcbiAgICAgICAgICAgIGZpbmFsaXplKCgpID0+IHtcclxuICAgICAgICAgICAgICB0aGlzLkRyb2Rvd25Mb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICApO1xyXG4gICAgICAgIH0pXHJcbiAgICAgICkuc3Vic2NyaWJlKChyZXN1bHRzOiBhbnkpID0+IHtcclxuICAgICAgICBsZXQgZGF0YXMgPSByZXN1bHRzW1wiZGF0YVwiXTtcclxuICAgICAgICB0aGlzLkRyb3Bkb3duZGF0YSA9IGRhdGFzO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgfVxyXG4gIGdldGRyb3Bkb3duKHZhbHVlOmFueSkge1xyXG4gICAgbGV0IHBhcmFtcyA9IHRoaXMuc2VhcmNocGFyYW1zKHZhbHVlKVxyXG4gICAgdGhpcy5zZXJ2aWNlLkdldEFwaSh0aGlzLklucHV0RmllbGRzLnVybCArIFwiP3BhZ2U9XCIgKyB0aGlzLmN1cnJlbnRwYWdlLCBwYXJhbXMpXHJcbiAgICAgIC5zdWJzY3JpYmUoKHJlc3VsdHM6IGFueSkgPT4ge1xyXG4gICAgICAgIGxldCBkYXRhcyA9IHJlc3VsdHNbXCJkYXRhXCJdO1xyXG4gICAgICAgIGxldCBkYXRhcGFnaW5hdGlvbiA9IHJlc3VsdHNbXCJwYWdpbmF0aW9uXCJdO1xyXG4gICAgICAgIHRoaXMuRHJvcGRvd25kYXRhID0gZGF0YXNcclxuICAgICAgICBpZiAodGhpcy5Ecm9wZG93bmRhdGEubGVuZ3RoID49IDApIHtcclxuICAgICAgICAgIHRoaXMuaGFzX25leHQgPSBkYXRhcGFnaW5hdGlvbi5oYXNfbmV4dDtcclxuICAgICAgICAgIHRoaXMuaGFzX3ByZXZpb3VzID0gZGF0YXBhZ2luYXRpb24uaGFzX3ByZXZpb3VzO1xyXG4gICAgICAgICAgdGhpcy5jdXJyZW50cGFnZSA9IGRhdGFwYWdpbmF0aW9uLmluZGV4O1xyXG4gICAgICAgIH1cclxuICAgICAgfSlcclxuICB9XHJcbiAgc2VsZWN0ZWQoKSB7XHJcbiAgICAvLyBsZXQgZGF0YSA9IHRoaXMuRHJvcGRvd25Gb3JtLnZhbHVlLnZhbHVlXHJcbiAgICBpZiAodGhpcy5JbnB1dEZpZWxkcz8ud2hvbGVkYXRhKSB7XHJcbiAgICAgIHRoaXMuZGF0YUV2ZW50LmVtaXQodGhpcy5jaGlwU2VsZWN0ZWRPYmopO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIGlmICh0aGlzLklucHV0RmllbGRzPy5PdXRwdXRrZXkpIHtcclxuICAgICAgICB0aGlzLmRhdGFFdmVudC5lbWl0KHRoaXMuY2hpcFNlbGVjdGVkSWQpO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2Uge1xyXG4gICAgICAgIHRoaXMuZGF0YUV2ZW50LmVtaXQodGhpcy5jaGlwU2VsZWN0ZWRPYmopO1xyXG4gICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxuICB9XHJcbiAgc2VhcmNocGFyYW1zKHZhbHVlOmFueSkge1xyXG4gICAgbGV0IHBhcmFtcyA9ICcnXHJcbiAgICBpZiAodGhpcy5JbnB1dEZpZWxkcy5wYXJhbXMpIHtcclxuICAgICAgcGFyYW1zID0gdGhpcy5JbnB1dEZpZWxkcy5wYXJhbXNcclxuICAgIH1cclxuICAgIGxldCBpbnBWYWx1ZSA9IHZhbHVlXHJcbiAgICBpbnBWYWx1ZSA/IHBhcmFtcyArPSAnJicgKyB0aGlzLklucHV0RmllbGRzLnNlYXJjaGtleSArICc9JyArIGlucFZhbHVlIDogJydcclxuICAgIHJldHVybiBwYXJhbXNcclxuICB9XHJcbiAgcmVtb3ZlY2hpcChvYmo6YW55KSB7XHJcbiAgICBjb25zdCBpbmRleCA9IHRoaXMuY2hpcFNlbGVjdGVkT2JqLmluZGV4T2Yob2JqKTtcclxuXHJcbiAgICBpZiAoaW5kZXggPj0gMCkge1xyXG5cclxuICAgICAgdGhpcy5jaGlwU2VsZWN0ZWRPYmouc3BsaWNlKGluZGV4LCAxKTtcclxuICAgICAgY29uc29sZS5sb2codGhpcy5jaGlwU2VsZWN0ZWRPYmopO1xyXG4gICAgICB0aGlzLmNoaXBTZWxlY3RlZElkLnNwbGljZShpbmRleCwgMSk7XHJcbiAgICAgIGNvbnNvbGUubG9nKHRoaXMuY2hpcFNlbGVjdGVkSWQpO1xyXG4gICAgICB0aGlzLkRyb3BJbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlID0gJyc7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWQoKVxyXG4gICAgfVxyXG5cclxuICB9XHJcbiAgcHVibGljIHZlblNlbGVjdGVkKGV2ZW50OiBNYXRBdXRvY29tcGxldGVTZWxlY3RlZEV2ZW50KTogdm9pZCB7XHJcbiAgICB0aGlzLkRyb3BJbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlID0gJyc7XHJcbiAgICBjb25zb2xlLmxvZygnZXZlbnQub3B0aW9uLnZhbHVlJywgZXZlbnQub3B0aW9uLnZhbHVlKVxyXG4gICAgdGhpcy5zZWxlY3R2ZW5CeU5hbWUoZXZlbnQub3B0aW9uLnZhbHVlW3RoaXMuY29tcGFyZWtleShldmVudC5vcHRpb24udmFsdWUpXSk7XHJcbiAgICBjb25zb2xlLmxvZygnY2hpcFNlbGVjdGVkdmVuaWQnLCB0aGlzLmNoaXBTZWxlY3RlZE9iailcclxuICB9XHJcbiAgcHJpdmF0ZSBzZWxlY3R2ZW5CeU5hbWUodmVuOmFueSkge1xyXG4gICAgbGV0IGZvdW5kZW1wMSA9IHRoaXMuY2hpcFNlbGVjdGVkT2JqLmZpbHRlcigoZTogeyBbeDogc3RyaW5nXTogYW55OyB9KSA9PiBlW3RoaXMuY29tcGFyZWtleShlKV0gPT0gdmVuKTtcclxuICAgIGlmIChmb3VuZGVtcDEubGVuZ3RoKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGxldCBmb3VuZGVtcCA9IHRoaXMuRHJvcGRvd25kYXRhLmZpbHRlcigoZTogeyBbeDogc3RyaW5nXTogYW55OyB9KSA9PiBlW3RoaXMuY29tcGFyZWtleShlKV0gPT0gdmVuKTtcclxuICAgIGlmIChmb3VuZGVtcC5sZW5ndGgpIHtcclxuICAgICAgdGhpcy5jaGlwU2VsZWN0ZWRPYmoucHVzaChmb3VuZGVtcFswXSk7XHJcbiAgICAgIGlmICh0aGlzLklucHV0RmllbGRzPy5PdXRwdXRrZXkpIHtcclxuICAgICAgICB0aGlzLmNoaXBTZWxlY3RlZElkLnB1c2goZm91bmRlbXBbMF1bdGhpcy5JbnB1dEZpZWxkcz8uT3V0cHV0a2V5XSlcclxuXHJcbiAgICAgIH1cclxuICAgICAgZWxzZSB7XHJcbiAgICAgICAgdGhpcy5jaGlwU2VsZWN0ZWRJZC5wdXNoKGZvdW5kZW1wWzBdLmlkKVxyXG5cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBjb21wYXJla2V5KGU6YW55KSB7XHJcbiAgICBpZiAodGhpcy5JbnB1dEZpZWxkcz8uY29tcGFyZWtleSkge1xyXG4gICAgICByZXR1cm4gdGhpcy5JbnB1dEZpZWxkcz8uY29tcGFyZWtleVxyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIGlmIChlPy5pZCkge1xyXG4gICAgICAgIHJldHVybiBcImlkXCJcclxuICAgICAgfVxyXG4gICAgICBlbHNlIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5JbnB1dEZpZWxkcy5kaXNwbGF5a2V5XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiPGRpdj5cclxuICA8Zm9ybSBbZm9ybUdyb3VwXT1cIkRyb3Bkb3duRm9ybVwiPlxyXG4gICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwibWF0LWNoaXBTY3JvbGxcIiBhcHBlYXJhbmNlPVwib3V0bGluZVwiPlxyXG4gICAgICA8bWF0LWxhYmVsPnt7IElucHV0RmllbGRzLmxhYmVsIHwgdHJhbnNsYXRlIH19PC9tYXQtbGFiZWw+XHJcbiAgICAgIDxtYXQtY2hpcC1ncmlkIG11bHRpcGxlICNjaGlwTGlzdHZlbmRvciBjbGFzcz1cImNoaXAtY29udGFpbmVyXCI+XHJcbiAgICAgICAgQGZvcihvYmogb2YgY2hpcFNlbGVjdGVkT2JqOyB0cmFjayBvYmogKXtcclxuICAgICAgICA8bWF0LWNoaXAtcm93XHJcbiAgICAgICAgICBbcmVtb3ZhYmxlXT1cInRydWVcIlxyXG4gICAgICAgICAgKHJlbW92ZWQpPVwicmVtb3ZlY2hpcChvYmopXCJcclxuICAgICAgICAgIGNsYXNzPVwibWF0LWNoaXBFeFwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAge3sgb2JqW0lucHV0RmllbGRzLmRpc3BsYXlrZXldIH19XHJcbiAgICAgICAgICA8bWF0LWljb24gbWF0Q2hpcFJlbW92ZT5jYW5jZWw8L21hdC1pY29uPlxyXG4gICAgICAgIDwvbWF0LWNoaXAtcm93PlxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgPGlucHV0XHJcbiAgICAgICAgICAjRHJvcElucHV0XHJcbiAgICAgICAgICBbbWF0QXV0b2NvbXBsZXRlXT1cInNjcm9sbGxcIlxyXG4gICAgICAgICAgY2xhc3M9XCJtYXRmb3JtZmllbGRpbnB1dHN0eWxlXCJcclxuICAgICAgICAgIChrZXlkb3duKT1cImRyb3Bkb3duc2VhcmNoKClcIlxyXG4gICAgICAgICAgW21hdENoaXBJbnB1dEZvcl09XCJjaGlwTGlzdHZlbmRvclwiXHJcbiAgICAgICAgICBbbWF0Q2hpcElucHV0U2VwYXJhdG9yS2V5Q29kZXNdPVwic2VwYXJhdG9yc0tleXNDb2Rlc1wiXHJcbiAgICAgICAgICBbbWF0Q2hpcElucHV0QWRkT25CbHVyXT1cInRydWVcIlxyXG4gICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwidmFsdWVcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvbWF0LWNoaXAtZ3JpZD5cclxuICAgICAgPG1hdC1hdXRvY29tcGxldGVcclxuICAgICAgICAjc2Nyb2xsbD1cIm1hdEF1dG9jb21wbGV0ZVwiXHJcbiAgICAgICAgKG9wdGlvblNlbGVjdGVkKT1cInZlblNlbGVjdGVkKCRldmVudClcIlxyXG4gICAgICAgIChvcGVuZWQpPVwiYXV0b2NvbXBsZXRlQXBwU2Nyb2xsKClcIlxyXG4gICAgICA+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lcj5cclxuICAgICAgICAgIEBmb3IoZHJvcHZhbHVlcyBvZiBEcm9wZG93bmRhdGE7IHRyYWNrIGRyb3B2YWx1ZXMgKXtcclxuICAgICAgICAgIDxtYXQtb3B0aW9uIFt2YWx1ZV09XCJkcm9wdmFsdWVzXCIgKGNsaWNrKT1cInNlbGVjdGVkKClcIj5cclxuICAgICAgICAgICAge3sgZHJvcHZhbHVlc1tJbnB1dEZpZWxkcy5kaXNwbGF5a2V5XSB9fVxyXG4gICAgICAgICAgPC9tYXQtb3B0aW9uPlxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8L21hdC1hdXRvY29tcGxldGU+XHJcbiAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gIDwvZm9ybT5cclxuPC9kaXY+XHJcbiJdfQ==
@@ -0,0 +1,19 @@
1
+ import { Component } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class VsChipdropdownComponent {
4
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: VsChipdropdownComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.0", type: VsChipdropdownComponent, selector: "lib-vs-chipdropdown", ngImport: i0, template: `
6
+ <p>
7
+ vs-chipdropdown works!
8
+ </p>
9
+ `, isInline: true, styles: [""] }); }
10
+ }
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: VsChipdropdownComponent, decorators: [{
12
+ type: Component,
13
+ args: [{ selector: 'lib-vs-chipdropdown', template: `
14
+ <p>
15
+ vs-chipdropdown works!
16
+ </p>
17
+ ` }]
18
+ }] });
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidnMtY2hpcGRyb3Bkb3duLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3ZzLWNoaXBkcm9wZG93bi9zcmMvbGliL3ZzLWNoaXBkcm9wZG93bi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFXMUMsTUFBTSxPQUFPLHVCQUF1Qjs4R0FBdkIsdUJBQXVCO2tHQUF2Qix1QkFBdUIsMkRBUHhCOzs7O0dBSVQ7OzJGQUdVLHVCQUF1QjtrQkFUbkMsU0FBUzsrQkFDRSxxQkFBcUIsWUFDckI7Ozs7R0FJVCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItdnMtY2hpcGRyb3Bkb3duJyxcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPHA+XHJcbiAgICAgIHZzLWNoaXBkcm9wZG93biB3b3JrcyFcclxuICAgIDwvcD5cclxuICBgLFxyXG4gIHN0eWxlczogYGBcclxufSlcclxuZXhwb3J0IGNsYXNzIFZzQ2hpcGRyb3Bkb3duQ29tcG9uZW50IHtcclxuXHJcbn1cclxuIl19
@@ -0,0 +1,58 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { VsChipdropdownComponent } from './vs-chipdropdown.component';
3
+ import { VsChipddCmpComponent } from './vs-chipdd-cmp/vs-chipdd-cmp.component';
4
+ import { MatFormFieldModule } from '@angular/material/form-field';
5
+ import { MatInputModule } from '@angular/material/input';
6
+ import { MatSelectModule } from '@angular/material/select';
7
+ import { MatAutocompleteModule } from '@angular/material/autocomplete';
8
+ import { FormsModule, ReactiveFormsModule } from '@angular/forms';
9
+ import { CommonModule } from '@angular/common';
10
+ import { MatGridListModule } from '@angular/material/grid-list';
11
+ import { MatChipsModule } from '@angular/material/chips';
12
+ import { MatIconModule } from '@angular/material/icon';
13
+ import { TranslateModule, TranslateLoader } from '@ngx-translate/core';
14
+ import { HttpClientModule, HttpClient } from '@angular/common/http';
15
+ import { TranslateHttpLoader } from '@ngx-translate/http-loader';
16
+ import * as i0 from "@angular/core";
17
+ import * as i1 from "@ngx-translate/core";
18
+ export class VsChipdropdownModule {
19
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: VsChipdropdownModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
20
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.0", ngImport: i0, type: VsChipdropdownModule, declarations: [VsChipdropdownComponent,
21
+ VsChipddCmpComponent], imports: [MatFormFieldModule, MatInputModule, MatSelectModule, MatAutocompleteModule, FormsModule, ReactiveFormsModule, CommonModule, MatGridListModule, MatChipsModule, MatIconModule,
22
+ HttpClientModule, i1.TranslateModule], exports: [VsChipddCmpComponent] }); }
23
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: VsChipdropdownModule, imports: [MatFormFieldModule, MatInputModule, MatSelectModule, MatAutocompleteModule, FormsModule, ReactiveFormsModule, CommonModule, MatGridListModule, MatChipsModule, MatIconModule,
24
+ HttpClientModule,
25
+ TranslateModule.forRoot({
26
+ loader: {
27
+ provide: TranslateLoader,
28
+ useFactory: httpTranslateLoader,
29
+ deps: [HttpClient],
30
+ },
31
+ })] }); }
32
+ }
33
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: VsChipdropdownModule, decorators: [{
34
+ type: NgModule,
35
+ args: [{
36
+ declarations: [
37
+ VsChipdropdownComponent,
38
+ VsChipddCmpComponent
39
+ ],
40
+ imports: [MatFormFieldModule, MatInputModule, MatSelectModule, MatAutocompleteModule, FormsModule, ReactiveFormsModule, CommonModule, MatGridListModule, MatChipsModule, MatIconModule,
41
+ HttpClientModule,
42
+ TranslateModule.forRoot({
43
+ loader: {
44
+ provide: TranslateLoader,
45
+ useFactory: httpTranslateLoader,
46
+ deps: [HttpClient],
47
+ },
48
+ }),
49
+ ],
50
+ exports: [
51
+ VsChipddCmpComponent
52
+ ]
53
+ }]
54
+ }] });
55
+ export function httpTranslateLoader(http) {
56
+ return new TranslateHttpLoader(http);
57
+ }
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidnMtY2hpcGRyb3Bkb3duLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3ZzLWNoaXBkcm9wZG93bi9zcmMvbGliL3ZzLWNoaXBkcm9wZG93bi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUMvRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZUFBZSxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7O0FBc0JqRSxNQUFNLE9BQU8sb0JBQW9COzhHQUFwQixvQkFBb0I7K0dBQXBCLG9CQUFvQixpQkFqQjdCLHVCQUF1QjtZQUN2QixvQkFBb0IsYUFFWixrQkFBa0IsRUFBQyxjQUFjLEVBQUMsZUFBZSxFQUFDLHFCQUFxQixFQUFDLFdBQVcsRUFBQyxtQkFBbUIsRUFBQyxZQUFZLEVBQUMsaUJBQWlCLEVBQUMsY0FBYyxFQUFDLGFBQWE7WUFDM0ssZ0JBQWdCLGlDQVVoQixvQkFBb0I7K0dBR1gsb0JBQW9CLFlBZHJCLGtCQUFrQixFQUFDLGNBQWMsRUFBQyxlQUFlLEVBQUMscUJBQXFCLEVBQUMsV0FBVyxFQUFDLG1CQUFtQixFQUFDLFlBQVksRUFBQyxpQkFBaUIsRUFBQyxjQUFjLEVBQUMsYUFBYTtZQUMzSyxnQkFBZ0I7WUFDaEIsZUFBZSxDQUFDLE9BQU8sQ0FBQztnQkFDdEIsTUFBTSxFQUFFO29CQUNOLE9BQU8sRUFBRSxlQUFlO29CQUN4QixVQUFVLEVBQUUsbUJBQW1CO29CQUMvQixJQUFJLEVBQUUsQ0FBQyxVQUFVLENBQUM7aUJBQ25CO2FBQ0YsQ0FBQzs7MkZBTU8sb0JBQW9CO2tCQW5CaEMsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osdUJBQXVCO3dCQUN2QixvQkFBb0I7cUJBQ3JCO29CQUNELE9BQU8sRUFBRSxDQUFDLGtCQUFrQixFQUFDLGNBQWMsRUFBQyxlQUFlLEVBQUMscUJBQXFCLEVBQUMsV0FBVyxFQUFDLG1CQUFtQixFQUFDLFlBQVksRUFBQyxpQkFBaUIsRUFBQyxjQUFjLEVBQUMsYUFBYTt3QkFDM0ssZ0JBQWdCO3dCQUNoQixlQUFlLENBQUMsT0FBTyxDQUFDOzRCQUN0QixNQUFNLEVBQUU7Z0NBQ04sT0FBTyxFQUFFLGVBQWU7Z0NBQ3hCLFVBQVUsRUFBRSxtQkFBbUI7Z0NBQy9CLElBQUksRUFBRSxDQUFDLFVBQVUsQ0FBQzs2QkFDbkI7eUJBQ0YsQ0FBQztxQkFDSDtvQkFDRCxPQUFPLEVBQUU7d0JBQ1Asb0JBQW9CO3FCQUNyQjtpQkFDRjs7QUFFRCxNQUFNLFVBQVUsbUJBQW1CLENBQUMsSUFBZ0I7SUFDbEQsT0FBTyxJQUFJLG1CQUFtQixDQUFDLElBQUksQ0FBQyxDQUFDO0FBQ3ZDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBWc0NoaXBkcm9wZG93bkNvbXBvbmVudCB9IGZyb20gJy4vdnMtY2hpcGRyb3Bkb3duLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFZzQ2hpcGRkQ21wQ29tcG9uZW50IH0gZnJvbSAnLi92cy1jaGlwZGQtY21wL3ZzLWNoaXBkZC1jbXAuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XHJcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xyXG5pbXBvcnQgeyBNYXRTZWxlY3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zZWxlY3QnO1xyXG5pbXBvcnQgeyBNYXRBdXRvY29tcGxldGVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9hdXRvY29tcGxldGUnO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgTWF0R3JpZExpc3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9ncmlkLWxpc3QnO1xyXG5pbXBvcnQgeyBNYXRDaGlwc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NoaXBzJztcclxuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUsIFRyYW5zbGF0ZUxvYWRlciB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50TW9kdWxlLCBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGVIdHRwTG9hZGVyIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvaHR0cC1sb2FkZXInO1xyXG5cclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICBWc0NoaXBkcm9wZG93bkNvbXBvbmVudCxcclxuICAgIFZzQ2hpcGRkQ21wQ29tcG9uZW50XHJcbiAgXSxcclxuICBpbXBvcnRzOiBbTWF0Rm9ybUZpZWxkTW9kdWxlLE1hdElucHV0TW9kdWxlLE1hdFNlbGVjdE1vZHVsZSxNYXRBdXRvY29tcGxldGVNb2R1bGUsRm9ybXNNb2R1bGUsUmVhY3RpdmVGb3Jtc01vZHVsZSxDb21tb25Nb2R1bGUsTWF0R3JpZExpc3RNb2R1bGUsTWF0Q2hpcHNNb2R1bGUsTWF0SWNvbk1vZHVsZSxcclxuICAgIEh0dHBDbGllbnRNb2R1bGUsXHJcbiAgICBUcmFuc2xhdGVNb2R1bGUuZm9yUm9vdCh7XHJcbiAgICAgIGxvYWRlcjoge1xyXG4gICAgICAgIHByb3ZpZGU6IFRyYW5zbGF0ZUxvYWRlcixcclxuICAgICAgICB1c2VGYWN0b3J5OiBodHRwVHJhbnNsYXRlTG9hZGVyLFxyXG4gICAgICAgIGRlcHM6IFtIdHRwQ2xpZW50XSxcclxuICAgICAgfSxcclxuICAgIH0pLFxyXG4gIF0sXHJcbiAgZXhwb3J0czogW1xyXG4gICAgVnNDaGlwZGRDbXBDb21wb25lbnRcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBWc0NoaXBkcm9wZG93bk1vZHVsZSB7IH1cclxuZXhwb3J0IGZ1bmN0aW9uIGh0dHBUcmFuc2xhdGVMb2FkZXIoaHR0cDogSHR0cENsaWVudCkge1xyXG4gIHJldHVybiBuZXcgVHJhbnNsYXRlSHR0cExvYWRlcihodHRwKTtcclxufVxyXG4iXX0=
@@ -0,0 +1,45 @@
1
+ import { Injectable } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/common/http";
4
+ export class VsChipdropdownService {
5
+ constructor(http) {
6
+ this.http = http;
7
+ }
8
+ postApi(Apiurl, json = {}, params) {
9
+ const getToken = localStorage.getItem("sessionData");
10
+ let tokenValue = JSON.parse(getToken);
11
+ let token = tokenValue.token;
12
+ console.log("params", params);
13
+ let paradata = '';
14
+ if (params !== undefined && params !== null && params !== '') {
15
+ paradata = params;
16
+ }
17
+ const headers = { Authorization: "Token " + token };
18
+ return this.http.post(Apiurl + paradata, json, {
19
+ headers: headers,
20
+ });
21
+ }
22
+ GetApi(Apiurl, params = '') {
23
+ const getToken = localStorage.getItem("sessionData");
24
+ let tokenValue = JSON.parse(getToken);
25
+ let token = tokenValue.token;
26
+ console.log("params", params);
27
+ let paradata = '';
28
+ if (params !== undefined && params !== null && params !== '') {
29
+ paradata = params;
30
+ }
31
+ const headers = { Authorization: "Token " + token };
32
+ return this.http.get(Apiurl + paradata, {
33
+ headers: headers,
34
+ });
35
+ }
36
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: VsChipdropdownService, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
37
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: VsChipdropdownService, providedIn: 'root' }); }
38
+ }
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: VsChipdropdownService, decorators: [{
40
+ type: Injectable,
41
+ args: [{
42
+ providedIn: 'root'
43
+ }]
44
+ }], ctorParameters: () => [{ type: i1.HttpClient }] });
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidnMtY2hpcGRyb3Bkb3duLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy92cy1jaGlwZHJvcGRvd24vc3JjL2xpYi92cy1jaGlwZHJvcGRvd24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFPM0MsTUFBTSxPQUFPLHFCQUFxQjtJQUNoQyxZQUFvQixJQUFnQjtRQUFoQixTQUFJLEdBQUosSUFBSSxDQUFZO0lBQUksQ0FBQztJQUN6QyxPQUFPLENBQUMsTUFBVSxFQUFDLElBQUksR0FBQyxFQUFFLEVBQUMsTUFBVTtRQUNuQyxNQUFNLFFBQVEsR0FBTyxZQUFZLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3pELElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDdEMsSUFBSSxLQUFLLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQztRQUM3QixPQUFPLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBQyxNQUFNLENBQUMsQ0FBQTtRQUM1QixJQUFJLFFBQVEsR0FBQyxFQUFFLENBQUE7UUFDZixJQUFHLE1BQU0sS0FBRyxTQUFTLElBQUksTUFBTSxLQUFHLElBQUksSUFBSSxNQUFNLEtBQUcsRUFBRSxFQUFDLENBQUM7WUFDckQsUUFBUSxHQUFDLE1BQU0sQ0FBQTtRQUNqQixDQUFDO1FBQ0QsTUFBTSxPQUFPLEdBQUcsRUFBRSxhQUFhLEVBQUUsUUFBUSxHQUFHLEtBQUssRUFBRSxDQUFDO1FBQ3BELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQU0sTUFBTSxHQUFDLFFBQVEsRUFBQyxJQUFJLEVBQUU7WUFDL0MsT0FBTyxFQUFFLE9BQU87U0FFakIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUNELE1BQU0sQ0FBQyxNQUFVLEVBQUMsTUFBTSxHQUFDLEVBQUU7UUFDekIsTUFBTSxRQUFRLEdBQU8sWUFBWSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN6RCxJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3RDLElBQUksS0FBSyxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUM7UUFDN0IsT0FBTyxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUMsTUFBTSxDQUFDLENBQUE7UUFDNUIsSUFBSSxRQUFRLEdBQUMsRUFBRSxDQUFBO1FBQ2YsSUFBRyxNQUFNLEtBQUcsU0FBUyxJQUFJLE1BQU0sS0FBRyxJQUFJLElBQUksTUFBTSxLQUFHLEVBQUUsRUFBQyxDQUFDO1lBQ3JELFFBQVEsR0FBQyxNQUFNLENBQUE7UUFDakIsQ0FBQztRQUNELE1BQU0sT0FBTyxHQUFHLEVBQUUsYUFBYSxFQUFFLFFBQVEsR0FBRyxLQUFLLEVBQUUsQ0FBQztRQUNwRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFNLE1BQU0sR0FBQyxRQUFRLEVBQUM7WUFDeEMsT0FBTyxFQUFFLE9BQU87U0FDakIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs4R0E5QlUscUJBQXFCO2tIQUFyQixxQkFBcUIsY0FGcEIsTUFBTTs7MkZBRVAscUJBQXFCO2tCQUhqQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgVnNDaGlwZHJvcGRvd25TZXJ2aWNlIHtcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQpIHsgfVxyXG4gIHBvc3RBcGkoQXBpdXJsOmFueSxqc29uPXt9LHBhcmFtczphbnkpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgY29uc3QgZ2V0VG9rZW46YW55ID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oXCJzZXNzaW9uRGF0YVwiKTtcclxuICAgIGxldCB0b2tlblZhbHVlID0gSlNPTi5wYXJzZShnZXRUb2tlbik7XHJcbiAgICBsZXQgdG9rZW4gPSB0b2tlblZhbHVlLnRva2VuO1xyXG4gICAgY29uc29sZS5sb2coXCJwYXJhbXNcIixwYXJhbXMpXHJcbiAgICBsZXQgcGFyYWRhdGE9JydcclxuICAgIGlmKHBhcmFtcyE9PXVuZGVmaW5lZCAmJiBwYXJhbXMhPT1udWxsICYmIHBhcmFtcyE9PScnKXtcclxuICAgICAgcGFyYWRhdGE9cGFyYW1zXHJcbiAgICB9XHJcbiAgICBjb25zdCBoZWFkZXJzID0geyBBdXRob3JpemF0aW9uOiBcIlRva2VuIFwiICsgdG9rZW4gfTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxhbnk+KEFwaXVybCtwYXJhZGF0YSxqc29uICx7XHJcbiAgICAgIGhlYWRlcnM6IGhlYWRlcnMsXHJcbiAgICAgIFxyXG4gICAgfSk7XHJcbiAgfVxyXG4gIEdldEFwaShBcGl1cmw6YW55LHBhcmFtcz0nJyk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBjb25zdCBnZXRUb2tlbjphbnkgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbShcInNlc3Npb25EYXRhXCIpO1xyXG4gICAgbGV0IHRva2VuVmFsdWUgPSBKU09OLnBhcnNlKGdldFRva2VuKTtcclxuICAgIGxldCB0b2tlbiA9IHRva2VuVmFsdWUudG9rZW47XHJcbiAgICBjb25zb2xlLmxvZyhcInBhcmFtc1wiLHBhcmFtcylcclxuICAgIGxldCBwYXJhZGF0YT0nJ1xyXG4gICAgaWYocGFyYW1zIT09dW5kZWZpbmVkICYmIHBhcmFtcyE9PW51bGwgJiYgcGFyYW1zIT09Jycpe1xyXG4gICAgICBwYXJhZGF0YT1wYXJhbXNcclxuICAgIH1cclxuICAgIGNvbnN0IGhlYWRlcnMgPSB7IEF1dGhvcml6YXRpb246IFwiVG9rZW4gXCIgKyB0b2tlbiB9O1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8YW55PihBcGl1cmwrcGFyYWRhdGEse1xyXG4gICAgICBoZWFkZXJzOiBoZWFkZXJzLFxyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,8 @@
1
+ /*
2
+ * Public API Surface of vs-chipdropdown
3
+ */
4
+ export * from './lib/vs-chipdropdown.service';
5
+ export * from './lib/vs-chipdropdown.component';
6
+ export * from './lib/vs-chipdropdown.module';
7
+ export * from './lib/vs-chipdd-cmp/vs-chipdd-cmp.component';
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL3ZzLWNoaXBkcm9wZG93bi9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsNkNBQTZDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgdnMtY2hpcGRyb3Bkb3duXHJcbiAqL1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdnMtY2hpcGRyb3Bkb3duLnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi92cy1jaGlwZHJvcGRvd24uY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdnMtY2hpcGRyb3Bkb3duLm1vZHVsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZzLWNoaXBkZC1jbXAvdnMtY2hpcGRkLWNtcC5jb21wb25lbnQnIl19
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5uaWxvdWlzLm9yZy12cy1jaGlwZHJvcGRvd24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy92cy1jaGlwZHJvcGRvd24vc3JjL3Vubmlsb3Vpcy5vcmctdnMtY2hpcGRyb3Bkb3duLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0=