@unnilouis.org/vs-chipdropdown 0.0.20-v9 → 0.0.22-V16

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 +24 -24
  2. package/esm2022/lib/vs-chipdd-cmp/vs-chipdd-cmp.component.mjs +243 -0
  3. package/esm2022/lib/vs-chipdropdown.component.mjs +19 -0
  4. package/esm2022/lib/vs-chipdropdown.module.mjs +61 -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 +368 -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 -601
  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 -274
  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 -290
  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 -374
  34. package/fesm2015/unnilouis.org-vs-chipdropdown.js.map +0 -1
  35. package/fesm5/unnilouis.org-vs-chipdropdown.js +0 -394
  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,24 +1,24 @@
1
- # VsChipdropdown
2
-
3
- This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 9.1.13.
4
-
5
- ## Code scaffolding
6
-
7
- Run `ng generate component component-name --project vs-chipdropdown` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project vs-chipdropdown`.
8
- > Note: Don't forget to add `--project vs-chipdropdown` or else it will be added to the default project in your `angular.json` file.
9
-
10
- ## Build
11
-
12
- Run `ng build vs-chipdropdown` to build the project. The build artifacts will be stored in the `dist/` directory.
13
-
14
- ## Publishing
15
-
16
- After building your library with `ng build vs-chipdropdown`, go to the dist folder `cd dist/vs-chipdropdown` and run `npm publish`.
17
-
18
- ## Running unit tests
19
-
20
- Run `ng test vs-chipdropdown` to execute the unit tests via [Karma](https://karma-runner.github.io).
21
-
22
- ## Further help
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).
1
+ # VsChipdropdown
2
+
3
+ This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 16.2.0.
4
+
5
+ ## Code scaffolding
6
+
7
+ Run `ng generate component component-name --project vs-chipdropdown` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project vs-chipdropdown`.
8
+ > Note: Don't forget to add `--project vs-chipdropdown` or else it will be added to the default project in your `angular.json` file.
9
+
10
+ ## Build
11
+
12
+ Run `ng build vs-chipdropdown` to build the project. The build artifacts will be stored in the `dist/` directory.
13
+
14
+ ## Publishing
15
+
16
+ After building your library with `ng build vs-chipdropdown`, go to the dist folder `cd dist/vs-chipdropdown` and run `npm publish`.
17
+
18
+ ## Running unit tests
19
+
20
+ Run `ng test vs-chipdropdown` to execute the unit tests via [Karma](https://karma-runner.github.io).
21
+
22
+ ## Further help
23
+
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,243 @@
1
+ import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';
2
+ import { MatAutocompleteTrigger } from '@angular/material/autocomplete';
3
+ import { debounceTime, distinctUntilChanged, tap, switchMap, finalize, takeUntil, map, } from "rxjs/operators";
4
+ import { fromEvent } from 'rxjs';
5
+ import { COMMA, ENTER } from '@angular/cdk/keycodes';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "../vs-chipdropdown.service";
8
+ import * as i2 from "@angular/forms";
9
+ import * as i3 from "@angular/material/form-field";
10
+ import * as i4 from "@angular/common";
11
+ import * as i5 from "@angular/material/core";
12
+ import * as i6 from "@angular/material/autocomplete";
13
+ import * as i7 from "@angular/material/chips";
14
+ import * as i8 from "@angular/material/icon";
15
+ import * as i9 from "@ngx-translate/core";
16
+ export class VsChipddCmpComponent {
17
+ constructor(service, fb) {
18
+ this.service = service;
19
+ this.fb = fb;
20
+ this.Backendapi = true;
21
+ this.dataEvent = new EventEmitter();
22
+ this.separatorsKeysCodes = [ENTER, COMMA];
23
+ this.has_next = false;
24
+ this.currentpage = 1;
25
+ this.Dropdowndata = [];
26
+ this.has_previous = false;
27
+ this.chipSelectedId = [];
28
+ this.chipSelectedObj = [];
29
+ }
30
+ ngOnInit() {
31
+ this.DropdownForm = this.fb.group({
32
+ value: ''
33
+ });
34
+ }
35
+ dupngonit() {
36
+ this.DropdownForm = this.fb.group({
37
+ value: ''
38
+ });
39
+ if (this.InputFields?.defaultvalue) {
40
+ this.DropdownForm.get("value").patchValue(this.InputFields?.defaultvalue);
41
+ this.chipSelectedObj = this.InputFields?.defaultvalue;
42
+ if (this.chipSelectedObj.length > 0) {
43
+ for (let foundemp of this.chipSelectedObj) {
44
+ if (this.InputFields?.Outputkey) {
45
+ this.chipSelectedId.push(foundemp[this.InputFields?.Outputkey]);
46
+ }
47
+ else {
48
+ this.chipSelectedId.push(foundemp.id);
49
+ }
50
+ }
51
+ this.selected();
52
+ }
53
+ }
54
+ if (this.InputFields?.fronentdata) {
55
+ this.Dropdowndata = this.InputFields?.data;
56
+ }
57
+ else {
58
+ this.getdropdown('');
59
+ }
60
+ }
61
+ ngOnChanges(changes) {
62
+ if (changes.InputFields && changes.InputFields?.currentValue) {
63
+ console.log("Summary Log Changes");
64
+ this.currentpage = 1;
65
+ this.dupngonit();
66
+ }
67
+ if (changes.ResetForm && changes.ResetForm?.currentValue) {
68
+ console.log("hitted");
69
+ this.DropdownForm.reset();
70
+ this.currentpage = 1;
71
+ this.dupngonit();
72
+ this.chipSelectedId = [];
73
+ this.chipSelectedObj = [];
74
+ this.dataEvent.emit([]);
75
+ }
76
+ }
77
+ // public displaydevelopclient(clt: any, key: string) {
78
+ // return key[clt];
79
+ // }
80
+ autocompleteAppScroll() {
81
+ if (!(this.InputFields?.fronentdata)) {
82
+ setTimeout(() => {
83
+ if (this.matAutocompleteApp &&
84
+ this.autocompleteTrigger &&
85
+ this.matAutocompleteApp.panel) {
86
+ fromEvent(this.matAutocompleteApp.panel.nativeElement, 'scroll')
87
+ .pipe(map(x => this.matAutocompleteApp.panel.nativeElement.scrollTop), takeUntil(this.autocompleteTrigger.panelClosingActions))
88
+ .subscribe(x => {
89
+ const scrollTop = this.matAutocompleteApp.panel.nativeElement.scrollTop;
90
+ const scrollHeight = this.matAutocompleteApp.panel.nativeElement.scrollHeight;
91
+ const elementHeight = this.matAutocompleteApp.panel.nativeElement.clientHeight;
92
+ const atBottom = scrollHeight - 1 <= scrollTop + elementHeight;
93
+ if (atBottom) {
94
+ if (this.has_next === true) {
95
+ let value = this.DropInput.nativeElement.value;
96
+ let params = this.searchparams(value);
97
+ this.currentpage = this.currentpage + 1;
98
+ if (this.currentpage > 1) {
99
+ this.service.GetApi(this.InputFields.url + "?page=" + this.currentpage, params)
100
+ .subscribe((results) => {
101
+ let datas = results["data"];
102
+ let datapagination = results["pagination"];
103
+ this.Dropdowndata = this.Dropdowndata.concat(datas);
104
+ console.log("this.Dropdowndata", this.Dropdowndata);
105
+ if (this.Dropdowndata.length >= 0) {
106
+ this.has_next = datapagination.has_next;
107
+ this.has_previous = datapagination.has_previous;
108
+ this.currentpage = datapagination.index;
109
+ }
110
+ });
111
+ }
112
+ }
113
+ }
114
+ });
115
+ }
116
+ });
117
+ }
118
+ }
119
+ dropdownsearch() {
120
+ if (!(this.InputFields?.fronentdata)) {
121
+ this.DropdownForm.get("value").valueChanges.pipe(debounceTime(100), distinctUntilChanged(), tap(() => {
122
+ this.DrodownLoading = true;
123
+ console.log("inside tap");
124
+ }), switchMap((value) => {
125
+ let params = this.searchparams(value);
126
+ this.currentpage = 1;
127
+ return this.service.GetApi(this.InputFields.url + "?page=" + this.currentpage, params).pipe(finalize(() => {
128
+ this.DrodownLoading = false;
129
+ }));
130
+ })).subscribe((results) => {
131
+ let datas = results["data"];
132
+ this.Dropdowndata = datas;
133
+ });
134
+ }
135
+ }
136
+ getdropdown(value) {
137
+ let params = this.searchparams(value);
138
+ this.service.GetApi(this.InputFields.url + "?page=" + this.currentpage, params)
139
+ .subscribe((results) => {
140
+ let datas = results["data"];
141
+ let datapagination = results["pagination"];
142
+ this.Dropdowndata = datas;
143
+ if (this.Dropdowndata.length >= 0) {
144
+ this.has_next = datapagination.has_next;
145
+ this.has_previous = datapagination.has_previous;
146
+ this.currentpage = datapagination.index;
147
+ }
148
+ });
149
+ }
150
+ selected() {
151
+ // let data = this.DropdownForm.value.value
152
+ if (this.InputFields?.wholedata) {
153
+ this.dataEvent.emit(this.chipSelectedObj);
154
+ }
155
+ else {
156
+ if (this.InputFields?.Outputkey) {
157
+ this.dataEvent.emit(this.chipSelectedId);
158
+ }
159
+ else {
160
+ this.dataEvent.emit(this.chipSelectedObj);
161
+ }
162
+ }
163
+ }
164
+ searchparams(value) {
165
+ let params = '';
166
+ if (this.InputFields.params) {
167
+ params = this.InputFields.params;
168
+ }
169
+ let inpValue = value;
170
+ inpValue ? params += '&' + this.InputFields.searchkey + '=' + inpValue : '';
171
+ return params;
172
+ }
173
+ removechip(obj) {
174
+ const index = this.chipSelectedObj.indexOf(obj);
175
+ if (index >= 0) {
176
+ this.chipSelectedObj.splice(index, 1);
177
+ console.log(this.chipSelectedObj);
178
+ this.chipSelectedId.splice(index, 1);
179
+ console.log(this.chipSelectedId);
180
+ this.DropInput.nativeElement.value = '';
181
+ this.selected();
182
+ }
183
+ }
184
+ venSelected(event) {
185
+ this.DropInput.nativeElement.value = '';
186
+ console.log('event.option.value', event.option.value);
187
+ this.selectvenByName(event.option.value[this.comparekey(event.option.value)]);
188
+ console.log('chipSelectedvenid', this.chipSelectedObj);
189
+ }
190
+ selectvenByName(ven) {
191
+ let foundemp1 = this.chipSelectedObj.filter(e => e[this.comparekey(e)] == ven);
192
+ if (foundemp1.length) {
193
+ return;
194
+ }
195
+ let foundemp = this.Dropdowndata.filter(e => e[this.comparekey(e)] == ven);
196
+ if (foundemp.length) {
197
+ this.chipSelectedObj.push(foundemp[0]);
198
+ if (this.InputFields?.Outputkey) {
199
+ this.chipSelectedId.push(foundemp[0][this.InputFields?.Outputkey]);
200
+ }
201
+ else {
202
+ this.chipSelectedId.push(foundemp[0].id);
203
+ }
204
+ }
205
+ }
206
+ comparekey(e) {
207
+ if (this.InputFields?.comparekey) {
208
+ return this.InputFields?.comparekey;
209
+ }
210
+ else {
211
+ if (e?.id) {
212
+ return "id";
213
+ }
214
+ else {
215
+ return this.InputFields.displaykey;
216
+ }
217
+ }
218
+ }
219
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: VsChipddCmpComponent, deps: [{ token: i1.VsChipdropdownService }, { token: i2.FormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
220
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", 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>\n <form [formGroup]=\"DropdownForm\">\n <mat-form-field class=\"mat-chipScroll\" appearance=\"outline\">\n <mat-label>{{ InputFields.label | translate }}</mat-label>\n <mat-chip-grid multiple #chipListvendor class=\"chip-container\">\n <mat-chip-row\n *ngFor=\"let obj of chipSelectedObj\"\n [removable]=\"true\"\n (removed)=\"removechip(obj)\"\n class=\"mat-chipEx\"\n >\n {{ obj[InputFields.displaykey] }}\n <mat-icon matChipRemove>cancel</mat-icon>\n </mat-chip-row>\n <input\n #DropInput\n [matAutocomplete]=\"scrolll\"\n class=\"matformfieldinputstyle\"\n (keydown)=\"dropdownsearch()\"\n [matChipInputFor]=\"chipListvendor\"\n [matChipInputSeparatorKeyCodes]=\"separatorsKeysCodes\"\n [matChipInputAddOnBlur]=\"true\"\n formControlName=\"value\"\n />\n </mat-chip-grid>\n <mat-autocomplete\n #scrolll=\"matAutocomplete\"\n (optionSelected)=\"venSelected($event)\"\n (opened)=\"autocompleteAppScroll()\"\n >\n <ng-container>\n <mat-option\n *ngFor=\"let dropvalues of Dropdowndata\"\n [value]=\"dropvalues\"\n (click)=\"selected()\"\n >\n {{ dropvalues[InputFields.displaykey] }}\n </mat-option>\n </ng-container>\n </mat-autocomplete>\n </mat-form-field>\n </form>\n</div>\n", styles: [".mat-chipScroll{max-width:var(--chipScroll-width)!important;width:100%}.mat-chipEx{text-align:left}.chip-container{overflow-y:scroll;max-height:var(--chipScroll-height)!important}.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}.mat-mdc-text-field-wrapper{max-height:var(--chipScroll-height)!important}\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: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: i6.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple", "hideSingleSelectionIndicator"], exportAs: ["matAutocomplete"] }, { kind: "directive", type: i6.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", 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: i7.MatChipGrid, selector: "mat-chip-grid", inputs: ["tabIndex", "disabled", "placeholder", "required", "value", "errorStateMatcher"], outputs: ["change", "valueChange"] }, { kind: "directive", type: i7.MatChipInput, selector: "input[matChipInputFor]", inputs: ["matChipInputFor", "matChipInputAddOnBlur", "matChipInputSeparatorKeyCodes", "placeholder", "id", "disabled"], outputs: ["matChipInputTokenEnd"], exportAs: ["matChipInput", "matChipInputFor"] }, { kind: "directive", type: i7.MatChipRemove, selector: "[matChipRemove]" }, { kind: "component", type: i7.MatChipRow, selector: "mat-chip-row, [mat-chip-row], mat-basic-chip-row, [mat-basic-chip-row]", inputs: ["color", "disabled", "disableRipple", "tabIndex", "editable"], outputs: ["edited"] }, { kind: "component", type: i8.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: i9.TranslatePipe, name: "translate" }] }); }
221
+ }
222
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: VsChipddCmpComponent, decorators: [{
223
+ type: Component,
224
+ args: [{ selector: 'lib-vs-chipdd-cmp', template: "<div>\n <form [formGroup]=\"DropdownForm\">\n <mat-form-field class=\"mat-chipScroll\" appearance=\"outline\">\n <mat-label>{{ InputFields.label | translate }}</mat-label>\n <mat-chip-grid multiple #chipListvendor class=\"chip-container\">\n <mat-chip-row\n *ngFor=\"let obj of chipSelectedObj\"\n [removable]=\"true\"\n (removed)=\"removechip(obj)\"\n class=\"mat-chipEx\"\n >\n {{ obj[InputFields.displaykey] }}\n <mat-icon matChipRemove>cancel</mat-icon>\n </mat-chip-row>\n <input\n #DropInput\n [matAutocomplete]=\"scrolll\"\n class=\"matformfieldinputstyle\"\n (keydown)=\"dropdownsearch()\"\n [matChipInputFor]=\"chipListvendor\"\n [matChipInputSeparatorKeyCodes]=\"separatorsKeysCodes\"\n [matChipInputAddOnBlur]=\"true\"\n formControlName=\"value\"\n />\n </mat-chip-grid>\n <mat-autocomplete\n #scrolll=\"matAutocomplete\"\n (optionSelected)=\"venSelected($event)\"\n (opened)=\"autocompleteAppScroll()\"\n >\n <ng-container>\n <mat-option\n *ngFor=\"let dropvalues of Dropdowndata\"\n [value]=\"dropvalues\"\n (click)=\"selected()\"\n >\n {{ dropvalues[InputFields.displaykey] }}\n </mat-option>\n </ng-container>\n </mat-autocomplete>\n </mat-form-field>\n </form>\n</div>\n", styles: [".mat-chipScroll{max-width:var(--chipScroll-width)!important;width:100%}.mat-chipEx{text-align:left}.chip-container{overflow-y:scroll;max-height:var(--chipScroll-height)!important}.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}.mat-mdc-text-field-wrapper{max-height:var(--chipScroll-height)!important}\n"] }]
225
+ }], ctorParameters: function () { return [{ type: i1.VsChipdropdownService }, { type: i2.FormBuilder }]; }, propDecorators: { InputFields: [{
226
+ type: Input
227
+ }], ResetForm: [{
228
+ type: Input
229
+ }], Backendapi: [{
230
+ type: Input
231
+ }], autocompleteTrigger: [{
232
+ type: ViewChild,
233
+ args: [MatAutocompleteTrigger]
234
+ }], matAutocompleteApp: [{
235
+ type: ViewChild,
236
+ args: ['scrolll']
237
+ }], dataEvent: [{
238
+ type: Output
239
+ }], DropInput: [{
240
+ type: ViewChild,
241
+ args: ['DropInput']
242
+ }] } });
243
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidnMtY2hpcGRkLWNtcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92cy1jaGlwZHJvcGRvd24vc3JjL2xpYi92cy1jaGlwZGQtY21wL3ZzLWNoaXBkZC1jbXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdnMtY2hpcGRyb3Bkb3duL3NyYy9saWIvdnMtY2hpcGRkLWNtcC92cy1jaGlwZGQtY21wLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQWlCLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRyxPQUFPLEVBQWlELHNCQUFzQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDdkgsT0FBTyxFQUNMLFlBQVksRUFDWixvQkFBb0IsRUFDcEIsR0FBRyxFQUVILFNBQVMsRUFDVCxRQUFRLEVBQ1IsU0FBUyxFQUNULEdBQUcsR0FDSixNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBb0IsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBR25ELE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7Ozs7Ozs7Ozs7O0FBTXJELE1BQU0sT0FBTyxvQkFBb0I7SUFFL0IsWUFBb0IsT0FBOEIsRUFBVSxFQUFlO1FBQXZELFlBQU8sR0FBUCxPQUFPLENBQXVCO1FBQVUsT0FBRSxHQUFGLEVBQUUsQ0FBYTtRQUdsRSxlQUFVLEdBQVksSUFBSSxDQUFBO1FBSXpCLGNBQVMsR0FBc0IsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUV4RCx3QkFBbUIsR0FBYSxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQztRQUV4RCxhQUFRLEdBQVksS0FBSyxDQUFDO1FBQzFCLGdCQUFXLEdBQVcsQ0FBQyxDQUFDO1FBQ3hCLGlCQUFZ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QixLQUFLO2dCQUU2QixtQkFBbUI7c0JBQXJELFNBQVM7dUJBQUMsc0JBQXNCO2dCQUNYLGtCQUFrQjtzQkFBdkMsU0FBUzt1QkFBQyxTQUFTO2dCQUNWLFNBQVM7c0JBQWxCLE1BQU07Z0JBQ2lCLFNBQVM7c0JBQWhDLFNBQVM7dUJBQUMsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzLCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdEF1dG9jb21wbGV0ZVNlbGVjdGVkRXZlbnQsIE1hdEF1dG9jb21wbGV0ZSwgTWF0QXV0b2NvbXBsZXRlVHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2F1dG9jb21wbGV0ZSc7XG5pbXBvcnQge1xuICBkZWJvdW5jZVRpbWUsXG4gIGRpc3RpbmN0VW50aWxDaGFuZ2VkLFxuICB0YXAsXG4gIGZpbHRlcixcbiAgc3dpdGNoTWFwLFxuICBmaW5hbGl6ZSxcbiAgdGFrZVVudGlsLFxuICBtYXAsXG59IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xuaW1wb3J0IHsgZnJvbSwgT2JzZXJ2YWJsZSwgZnJvbUV2ZW50IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBWc0NoaXBkcm9wZG93blNlcnZpY2UgfSBmcm9tICcuLi92cy1jaGlwZHJvcGRvd24uc2VydmljZSdcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtQ29udHJvbCwgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ09NTUEsIEVOVEVSIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2tleWNvZGVzJztcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2xpYi12cy1jaGlwZGQtY21wJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3ZzLWNoaXBkZC1jbXAuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi92cy1jaGlwZGQtY21wLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgVnNDaGlwZGRDbXBDb21wb25lbnQge1xuICBEcm9kb3duTG9hZGluZzogYm9vbGVhbjtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzZXJ2aWNlOiBWc0NoaXBkcm9wZG93blNlcnZpY2UsIHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyKSB7IH1cbiAgQElucHV0KCkgSW5wdXRGaWVsZHM6IGFueVxuICBASW5wdXQoKSBSZXNldEZvcm06IGFueVxuICBASW5wdXQoKSBCYWNrZW5kYXBpOiBib29sZWFuID0gdHJ1ZVxuXG4gIEBWaWV3Q2hpbGQoTWF0QXV0b2NvbXBsZXRlVHJpZ2dlcikgYXV0b2NvbXBsZXRlVHJpZ2dlcjogTWF0QXV0b2NvbXBsZXRlVHJpZ2dlcjtcbiAgQFZpZXdDaGlsZCgnc2Nyb2xsbCcpIG1hdEF1dG9jb21wbGV0ZUFwcDogTWF0QXV0b2NvbXBsZXRlO1xuICBAT3V0cHV0KCkgZGF0YUV2ZW50OiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBAVmlld0NoaWxkKCdEcm9wSW5wdXQnKSBEcm9wSW5wdXQ6IGFueTtcbiAgcmVhZG9ubHkgc2VwYXJhdG9yc0tleXNDb2RlczogbnVtYmVyW10gPSBbRU5URVIsIENPTU1BXTtcblxuICBoYXNfbmV4dDogYm9vbGVhbiA9IGZhbHNlO1xuICBjdXJyZW50cGFnZTogbnVtYmVyID0gMTtcbiAgRHJvcGRvd25kYXRhOiBhbnkgPSBbXTtcbiAgaGFzX3ByZXZpb3VzOiBib29sZWFuID0gZmFsc2U7XG4gIERyb3Bkb3duRm9ybTogRm9ybUdyb3VwXG4gIGNoaXBTZWxlY3RlZElkOiBhbnkgPSBbXTtcbiAgY2hpcFNlbGVjdGVkT2JqOiBhbnkgPSBbXVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuRHJvcGRvd25Gb3JtID0gdGhpcy5mYi5ncm91cCh7XG4gICAgICB2YWx1ZTogJydcbiAgICB9KVxuICAgXG4gIH1cbiAgZHVwbmdvbml0KCl7XG4gICAgdGhpcy5Ecm9wZG93bkZvcm0gPSB0aGlzLmZiLmdyb3VwKHtcbiAgICAgIHZhbHVlOiAnJ1xuICAgIH0pXG4gICAgaWYgKHRoaXMuSW5wdXRGaWVsZHM/LmRlZmF1bHR2YWx1ZSkge1xuICAgICAgdGhpcy5Ecm9wZG93bkZvcm0uZ2V0KFwidmFsdWVcIikucGF0Y2hWYWx1ZSh0aGlzLklucHV0RmllbGRzPy5kZWZhdWx0dmFsdWUpXG4gICAgICB0aGlzLmNoaXBTZWxlY3RlZE9iaiA9IHRoaXMuSW5wdXRGaWVsZHM/LmRlZmF1bHR2YWx1ZVxuICAgICAgaWYgKHRoaXMuY2hpcFNlbGVjdGVkT2JqLmxlbmd0aCA+IDApIHtcbiAgICAgICAgZm9yIChsZXQgZm91bmRlbXAgb2YgdGhpcy5jaGlwU2VsZWN0ZWRPYmopIHtcbiAgICAgICAgICBpZiAodGhpcy5JbnB1dEZpZWxkcz8uT3V0cHV0a2V5KSB7XG4gICAgICAgICAgICB0aGlzLmNoaXBTZWxlY3RlZElkLnB1c2goZm91bmRlbXBbdGhpcy5JbnB1dEZpZWxkcz8uT3V0cHV0a2V5XSlcblxuICAgICAgICAgIH1cbiAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuY2hpcFNlbGVjdGVkSWQucHVzaChmb3VuZGVtcC5pZClcblxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB0aGlzLnNlbGVjdGVkKClcbiAgICAgIH1cblxuXG4gICAgfVxuICAgIGlmICh0aGlzLklucHV0RmllbGRzPy5mcm9uZW50ZGF0YSkge1xuICAgICAgdGhpcy5Ecm9wZG93bmRhdGEgPSB0aGlzLklucHV0RmllbGRzPy5kYXRhXG5cbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICB0aGlzLmdldGRyb3Bkb3duKCcnKVxuICAgIH1cbiAgfVxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKGNoYW5nZXMuSW5wdXRGaWVsZHMgJiYgY2hhbmdlcy5JbnB1dEZpZWxkcz8uY3VycmVudFZhbHVlKSB7XG4gICAgICBjb25zb2xlLmxvZyhcIlN1bW1hcnkgTG9nIENoYW5nZXNcIilcbiAgICAgIHRoaXMuY3VycmVudHBhZ2UgPSAxXG4gICAgICB0aGlzLmR1cG5nb25pdCgpXG4gICAgfVxuICAgIGlmIChjaGFuZ2VzLlJlc2V0Rm9ybSAmJiBjaGFuZ2VzLlJlc2V0Rm9ybT8uY3VycmVudFZhbHVlKSB7XG4gICAgICBjb25zb2xlLmxvZyhcImhpdHRlZFwiKVxuICAgICAgdGhpcy5Ecm9wZG93bkZvcm0ucmVzZXQoKVxuICAgICAgdGhpcy5jdXJyZW50cGFnZSA9IDFcbiAgICAgIHRoaXMuZHVwbmdvbml0KClcbiAgICAgIHRoaXMuY2hpcFNlbGVjdGVkSWQgPSBbXTtcbiAgICAgIHRoaXMuY2hpcFNlbGVjdGVkT2JqID0gW11cbiAgICAgIHRoaXMuZGF0YUV2ZW50LmVtaXQoW10pO1xuXG5cbiAgICB9XG4gIH1cbiAgLy8gcHVibGljIGRpc3BsYXlkZXZlbG9wY2xpZW50KGNsdDogYW55LCBrZXk6IHN0cmluZykge1xuICAvLyAgIHJldHVybiBrZXlbY2x0XTtcbiAgLy8gfVxuICBhdXRvY29tcGxldGVBcHBTY3JvbGwoKSB7XG4gICAgaWYgKCEodGhpcy5JbnB1dEZpZWxkcz8uZnJvbmVudGRhdGEpKSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgaWYgKFxuICAgICAgICAgIHRoaXMubWF0QXV0b2NvbXBsZXRlQXBwICYmXG4gICAgICAgICAgdGhpcy5hdXRvY29tcGxldGVUcmlnZ2VyICYmXG4gICAgICAgICAgdGhpcy5tYXRBdXRvY29tcGxldGVBcHAucGFuZWxcbiAgICAgICAgKSB7XG4gICAgICAgICAgZnJvbUV2ZW50KHRoaXMubWF0QXV0b2NvbXBsZXRlQXBwLnBhbmVsLm5hdGl2ZUVsZW1lbnQsICdzY3JvbGwnKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgIG1hcCh4ID0+IHRoaXMubWF0QXV0b2NvbXBsZXRlQXBwLnBhbmVsLm5hdGl2ZUVsZW1lbnQuc2Nyb2xsVG9wKSxcbiAgICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMuYXV0b2NvbXBsZXRlVHJpZ2dlci5wYW5lbENsb3NpbmdBY3Rpb25zIGFzIE9ic2VydmFibGU8YW55PilcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoeCA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IHNjcm9sbFRvcCA9IHRoaXMubWF0QXV0b2NvbXBsZXRlQXBwLnBhbmVsLm5hdGl2ZUVsZW1lbnQuc2Nyb2xsVG9wO1xuICAgICAgICAgICAgICBjb25zdCBzY3JvbGxIZWlnaHQgPSB0aGlzLm1hdEF1dG9jb21wbGV0ZUFwcC5wYW5lbC5uYXRpdmVFbGVtZW50LnNjcm9sbEhlaWdodDtcbiAgICAgICAgICAgICAgY29uc3QgZWxlbWVudEhlaWdodCA9IHRoaXMubWF0QXV0b2NvbXBsZXRlQXBwLnBhbmVsLm5hdGl2ZUVsZW1lbnQuY2xpZW50SGVpZ2h0O1xuICAgICAgICAgICAgICBjb25zdCBhdEJvdHRvbSA9IHNjcm9sbEhlaWdodCAtIDEgPD0gc2Nyb2xsVG9wICsgZWxlbWVudEhlaWdodDtcbiAgICAgICAgICAgICAgaWYgKGF0Qm90dG9tKSB7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuaGFzX25leHQgPT09IHRydWUpIHtcbiAgICAgICAgICAgICAgICAgIGxldCB2YWx1ZSA9IHRoaXMuRHJvcElucHV0Lm5hdGl2ZUVsZW1lbnQudmFsdWVcbiAgICAgICAgICAgICAgICAgIGxldCBwYXJhbXMgPSB0aGlzLnNlYXJjaHBhcmFtcyh2YWx1ZSlcbiAgICAgICAgICAgICAgICAgIHRoaXMuY3VycmVudHBhZ2UgPSB0aGlzLmN1cnJlbnRwYWdlICsgMVxuICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuY3VycmVudHBhZ2UgPiAxKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2VydmljZS5HZXRBcGkodGhpcy5JbnB1dEZpZWxkcy51cmwgKyBcIj9wYWdlPVwiICsgdGhpcy5jdXJyZW50cGFnZSwgcGFyYW1zKVxuICAgICAgICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKHJlc3VsdHM6IGFueVtdKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgZGF0YXMgPSByZXN1bHRzW1wiZGF0YVwiXTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCBkYXRhcGFnaW5hdGlvbiA9IHJlc3VsdHNbXCJwYWdpbmF0aW9uXCJdO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5Ecm9wZG93bmRhdGEgPSB0aGlzLkRyb3Bkb3duZGF0YS5jb25jYXQoZGF0YXMpO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coXCJ0aGlzLkRyb3Bkb3duZGF0YVwiLCB0aGlzLkRyb3Bkb3duZGF0YSlcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLkRyb3Bkb3duZGF0YS5sZW5ndGggPj0gMCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmhhc19uZXh0ID0gZGF0YXBhZ2luYXRpb24uaGFzX25leHQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuaGFzX3ByZXZpb3VzID0gZGF0YXBhZ2luYXRpb24uaGFzX3ByZXZpb3VzO1xuICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbnRwYWdlID0gZGF0YXBhZ2luYXRpb24uaW5kZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cblxuICB9XG4gIGRyb3Bkb3duc2VhcmNoKCkge1xuICAgIGlmICghKHRoaXMuSW5wdXRGaWVsZHM/LmZyb25lbnRkYXRhKSkge1xuICAgICAgdGhpcy5Ecm9wZG93bkZvcm0uZ2V0KFwidmFsdWVcIikudmFsdWVDaGFuZ2VzLnBpcGUoXG4gICAgICAgIGRlYm91bmNlVGltZSgxMDApLFxuICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICAgICB0YXAoKCkgPT4ge1xuICAgICAgICAgIHRoaXMuRHJvZG93bkxvYWRpbmcgPSB0cnVlO1xuICAgICAgICAgIGNvbnNvbGUubG9nKFwiaW5zaWRlIHRhcFwiKTtcbiAgICAgICAgfSksXG4gICAgICAgIHN3aXRjaE1hcCgodmFsdWUpID0+IHtcbiAgICAgICAgICBsZXQgcGFyYW1zID0gdGhpcy5zZWFyY2hwYXJhbXModmFsdWUpO1xuICAgICAgICAgIHRoaXMuY3VycmVudHBhZ2UgPSAxXG4gICAgICAgICAgcmV0dXJuIHRoaXMuc2VydmljZS5HZXRBcGkodGhpcy5JbnB1dEZpZWxkcy51cmwgKyBcIj9wYWdlPVwiICsgdGhpcy5jdXJyZW50cGFnZSwgcGFyYW1zKS5waXBlKFxuICAgICAgICAgICAgZmluYWxpemUoKCkgPT4ge1xuICAgICAgICAgICAgICB0aGlzLkRyb2Rvd25Mb2FkaW5nID0gZmFsc2U7XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICk7XG4gICAgICAgIH0pXG4gICAgICApLnN1YnNjcmliZSgocmVzdWx0czogYW55W10pID0+IHtcbiAgICAgICAgbGV0IGRhdGFzID0gcmVzdWx0c1tcImRhdGFcIl07XG4gICAgICAgIHRoaXMuRHJvcGRvd25kYXRhID0gZGF0YXM7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgfVxuICBnZXRkcm9wZG93bih2YWx1ZSkge1xuICAgIGxldCBwYXJhbXMgPSB0aGlzLnNlYXJjaHBhcmFtcyh2YWx1ZSlcbiAgICB0aGlzLnNlcnZpY2UuR2V0QXBpKHRoaXMuSW5wdXRGaWVsZHMudXJsICsgXCI/cGFnZT1cIiArIHRoaXMuY3VycmVudHBhZ2UsIHBhcmFtcylcbiAgICAgIC5zdWJzY3JpYmUoKHJlc3VsdHM6IGFueVtdKSA9PiB7XG4gICAgICAgIGxldCBkYXRhcyA9IHJlc3VsdHNbXCJkYXRhXCJdO1xuICAgICAgICBsZXQgZGF0YXBhZ2luYXRpb24gPSByZXN1bHRzW1wicGFnaW5hdGlvblwiXTtcbiAgICAgICAgdGhpcy5Ecm9wZG93bmRhdGEgPSBkYXRhc1xuICAgICAgICBpZiAodGhpcy5Ecm9wZG93bmRhdGEubGVuZ3RoID49IDApIHtcbiAgICAgICAgICB0aGlzLmhhc19uZXh0ID0gZGF0YXBhZ2luYXRpb24uaGFzX25leHQ7XG4gICAgICAgICAgdGhpcy5oYXNfcHJldmlvdXMgPSBkYXRhcGFnaW5hdGlvbi5oYXNfcHJldmlvdXM7XG4gICAgICAgICAgdGhpcy5jdXJyZW50cGFnZSA9IGRhdGFwYWdpbmF0aW9uLmluZGV4O1xuICAgICAgICB9XG4gICAgICB9KVxuICB9XG4gIHNlbGVjdGVkKCkge1xuICAgIC8vIGxldCBkYXRhID0gdGhpcy5Ecm9wZG93bkZvcm0udmFsdWUudmFsdWVcbiAgICBpZiAodGhpcy5JbnB1dEZpZWxkcz8ud2hvbGVkYXRhKSB7XG4gICAgICB0aGlzLmRhdGFFdmVudC5lbWl0KHRoaXMuY2hpcFNlbGVjdGVkT2JqKTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICBpZiAodGhpcy5JbnB1dEZpZWxkcz8uT3V0cHV0a2V5KSB7XG4gICAgICAgIHRoaXMuZGF0YUV2ZW50LmVtaXQodGhpcy5jaGlwU2VsZWN0ZWRJZCk7XG4gICAgICB9XG4gICAgICBlbHNlIHtcbiAgICAgICAgdGhpcy5kYXRhRXZlbnQuZW1pdCh0aGlzLmNoaXBTZWxlY3RlZE9iaik7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuICBzZWFyY2hwYXJhbXModmFsdWUpIHtcbiAgICBsZXQgcGFyYW1zID0gJydcbiAgICBpZiAodGhpcy5JbnB1dEZpZWxkcy5wYXJhbXMpIHtcbiAgICAgIHBhcmFtcyA9IHRoaXMuSW5wdXRGaWVsZHMucGFyYW1zXG4gICAgfVxuICAgIGxldCBpbnBWYWx1ZSA9IHZhbHVlXG4gICAgaW5wVmFsdWUgPyBwYXJhbXMgKz0gJyYnICsgdGhpcy5JbnB1dEZpZWxkcy5zZWFyY2hrZXkgKyAnPScgKyBpbnBWYWx1ZSA6ICcnXG4gICAgcmV0dXJuIHBhcmFtc1xuICB9XG4gIHJlbW92ZWNoaXAob2JqKSB7XG4gICAgY29uc3QgaW5kZXggPSB0aGlzLmNoaXBTZWxlY3RlZE9iai5pbmRleE9mKG9iaik7XG5cbiAgICBpZiAoaW5kZXggPj0gMCkge1xuXG4gICAgICB0aGlzLmNoaXBTZWxlY3RlZE9iai5zcGxpY2UoaW5kZXgsIDEpO1xuICAgICAgY29uc29sZS5sb2codGhpcy5jaGlwU2VsZWN0ZWRPYmopO1xuICAgICAgdGhpcy5jaGlwU2VsZWN0ZWRJZC5zcGxpY2UoaW5kZXgsIDEpO1xuICAgICAgY29uc29sZS5sb2codGhpcy5jaGlwU2VsZWN0ZWRJZCk7XG4gICAgICB0aGlzLkRyb3BJbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlID0gJyc7XG4gICAgICB0aGlzLnNlbGVjdGVkKClcbiAgICB9XG5cbiAgfVxuICBwdWJsaWMgdmVuU2VsZWN0ZWQoZXZlbnQ6IE1hdEF1dG9jb21wbGV0ZVNlbGVjdGVkRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLkRyb3BJbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlID0gJyc7XG4gICAgY29uc29sZS5sb2coJ2V2ZW50Lm9wdGlvbi52YWx1ZScsIGV2ZW50Lm9wdGlvbi52YWx1ZSlcbiAgICB0aGlzLnNlbGVjdHZlbkJ5TmFtZShldmVudC5vcHRpb24udmFsdWVbdGhpcy5jb21wYXJla2V5KGV2ZW50Lm9wdGlvbi52YWx1ZSldKTtcbiAgICBjb25zb2xlLmxvZygnY2hpcFNlbGVjdGVkdmVuaWQnLCB0aGlzLmNoaXBTZWxlY3RlZE9iailcbiAgfVxuICBwcml2YXRlIHNlbGVjdHZlbkJ5TmFtZSh2ZW4pIHtcbiAgICBsZXQgZm91bmRlbXAxID0gdGhpcy5jaGlwU2VsZWN0ZWRPYmouZmlsdGVyKGUgPT4gZVt0aGlzLmNvbXBhcmVrZXkoZSldID09IHZlbik7XG4gICAgaWYgKGZvdW5kZW1wMS5sZW5ndGgpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgbGV0IGZvdW5kZW1wID0gdGhpcy5Ecm9wZG93bmRhdGEuZmlsdGVyKGUgPT4gZVt0aGlzLmNvbXBhcmVrZXkoZSldID09IHZlbik7XG4gICAgaWYgKGZvdW5kZW1wLmxlbmd0aCkge1xuICAgICAgdGhpcy5jaGlwU2VsZWN0ZWRPYmoucHVzaChmb3VuZGVtcFswXSk7XG4gICAgICBpZiAodGhpcy5JbnB1dEZpZWxkcz8uT3V0cHV0a2V5KSB7XG4gICAgICAgIHRoaXMuY2hpcFNlbGVjdGVkSWQucHVzaChmb3VuZGVtcFswXVt0aGlzLklucHV0RmllbGRzPy5PdXRwdXRrZXldKVxuXG4gICAgICB9XG4gICAgICBlbHNlIHtcbiAgICAgICAgdGhpcy5jaGlwU2VsZWN0ZWRJZC5wdXNoKGZvdW5kZW1wWzBdLmlkKVxuXG4gICAgICB9XG4gICAgfVxuICB9XG4gIGNvbXBhcmVrZXkoZSkge1xuICAgIGlmICh0aGlzLklucHV0RmllbGRzPy5jb21wYXJla2V5KSB7XG4gICAgICByZXR1cm4gdGhpcy5JbnB1dEZpZWxkcz8uY29tcGFyZWtleVxuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgIGlmIChlPy5pZCkge1xuICAgICAgICByZXR1cm4gXCJpZFwiXG4gICAgICB9XG4gICAgICBlbHNlIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuSW5wdXRGaWVsZHMuZGlzcGxheWtleVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIjxkaXY+XG4gIDxmb3JtIFtmb3JtR3JvdXBdPVwiRHJvcGRvd25Gb3JtXCI+XG4gICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwibWF0LWNoaXBTY3JvbGxcIiBhcHBlYXJhbmNlPVwib3V0bGluZVwiPlxuICAgICAgPG1hdC1sYWJlbD57eyBJbnB1dEZpZWxkcy5sYWJlbCB8IHRyYW5zbGF0ZSB9fTwvbWF0LWxhYmVsPlxuICAgICAgPG1hdC1jaGlwLWdyaWQgbXVsdGlwbGUgI2NoaXBMaXN0dmVuZG9yIGNsYXNzPVwiY2hpcC1jb250YWluZXJcIj5cbiAgICAgICAgPG1hdC1jaGlwLXJvd1xuICAgICAgICAgICpuZ0Zvcj1cImxldCBvYmogb2YgY2hpcFNlbGVjdGVkT2JqXCJcbiAgICAgICAgICBbcmVtb3ZhYmxlXT1cInRydWVcIlxuICAgICAgICAgIChyZW1vdmVkKT1cInJlbW92ZWNoaXAob2JqKVwiXG4gICAgICAgICAgY2xhc3M9XCJtYXQtY2hpcEV4XCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7IG9ialtJbnB1dEZpZWxkcy5kaXNwbGF5a2V5XSB9fVxuICAgICAgICAgIDxtYXQtaWNvbiBtYXRDaGlwUmVtb3ZlPmNhbmNlbDwvbWF0LWljb24+XG4gICAgICAgIDwvbWF0LWNoaXAtcm93PlxuICAgICAgICA8aW5wdXRcbiAgICAgICAgICAjRHJvcElucHV0XG4gICAgICAgICAgW21hdEF1dG9jb21wbGV0ZV09XCJzY3JvbGxsXCJcbiAgICAgICAgICBjbGFzcz1cIm1hdGZvcm1maWVsZGlucHV0c3R5bGVcIlxuICAgICAgICAgIChrZXlkb3duKT1cImRyb3Bkb3duc2VhcmNoKClcIlxuICAgICAgICAgIFttYXRDaGlwSW5wdXRGb3JdPVwiY2hpcExpc3R2ZW5kb3JcIlxuICAgICAgICAgIFttYXRDaGlwSW5wdXRTZXBhcmF0b3JLZXlDb2Rlc109XCJzZXBhcmF0b3JzS2V5c0NvZGVzXCJcbiAgICAgICAgICBbbWF0Q2hpcElucHV0QWRkT25CbHVyXT1cInRydWVcIlxuICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInZhbHVlXCJcbiAgICAgICAgLz5cbiAgICAgIDwvbWF0LWNoaXAtZ3JpZD5cbiAgICAgIDxtYXQtYXV0b2NvbXBsZXRlXG4gICAgICAgICNzY3JvbGxsPVwibWF0QXV0b2NvbXBsZXRlXCJcbiAgICAgICAgKG9wdGlvblNlbGVjdGVkKT1cInZlblNlbGVjdGVkKCRldmVudClcIlxuICAgICAgICAob3BlbmVkKT1cImF1dG9jb21wbGV0ZUFwcFNjcm9sbCgpXCJcbiAgICAgID5cbiAgICAgICAgPG5nLWNvbnRhaW5lcj5cbiAgICAgICAgICA8bWF0LW9wdGlvblxuICAgICAgICAgICAgKm5nRm9yPVwibGV0IGRyb3B2YWx1ZXMgb2YgRHJvcGRvd25kYXRhXCJcbiAgICAgICAgICAgIFt2YWx1ZV09XCJkcm9wdmFsdWVzXCJcbiAgICAgICAgICAgIChjbGljayk9XCJzZWxlY3RlZCgpXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICB7eyBkcm9wdmFsdWVzW0lucHV0RmllbGRzLmRpc3BsYXlrZXldIH19XG4gICAgICAgICAgPC9tYXQtb3B0aW9uPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvbWF0LWF1dG9jb21wbGV0ZT5cbiAgICA8L21hdC1mb3JtLWZpZWxkPlxuICA8L2Zvcm0+XG48L2Rpdj5cbiJdfQ==
@@ -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: "16.2.12", ngImport: i0, type: VsChipdropdownComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: VsChipdropdownComponent, selector: "lib-vs-chipdropdown", ngImport: i0, template: `
6
+ <p>
7
+ vs-chipdropdown works!
8
+ </p>
9
+ `, isInline: true }); }
10
+ }
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", 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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidnMtY2hpcGRyb3Bkb3duLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3ZzLWNoaXBkcm9wZG93bi9zcmMvbGliL3ZzLWNoaXBkcm9wZG93bi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFZMUMsTUFBTSxPQUFPLHVCQUF1QjsrR0FBdkIsdUJBQXVCO21HQUF2Qix1QkFBdUIsMkRBUnhCOzs7O0dBSVQ7OzRGQUlVLHVCQUF1QjtrQkFWbkMsU0FBUzsrQkFDRSxxQkFBcUIsWUFDckI7Ozs7R0FJVCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItdnMtY2hpcGRyb3Bkb3duJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8cD5cbiAgICAgIHZzLWNoaXBkcm9wZG93biB3b3JrcyFcbiAgICA8L3A+XG4gIGAsXG4gIHN0eWxlczogW1xuICBdXG59KVxuZXhwb3J0IGNsYXNzIFZzQ2hpcGRyb3Bkb3duQ29tcG9uZW50IHtcblxufVxuIl19
@@ -0,0 +1,61 @@
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: "16.2.12", ngImport: i0, type: VsChipdropdownModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
20
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: VsChipdropdownModule, declarations: [VsChipdropdownComponent,
21
+ VsChipddCmpComponent], imports: [MatFormFieldModule, CommonModule,
22
+ MatInputModule, MatSelectModule, MatAutocompleteModule, FormsModule, ReactiveFormsModule, MatGridListModule, MatChipsModule, MatIconModule,
23
+ HttpClientModule, i1.TranslateModule], exports: [VsChipddCmpComponent] }); }
24
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: VsChipdropdownModule, imports: [MatFormFieldModule, CommonModule,
25
+ MatInputModule, MatSelectModule, MatAutocompleteModule, FormsModule, ReactiveFormsModule, MatGridListModule, MatChipsModule, MatIconModule,
26
+ HttpClientModule,
27
+ TranslateModule.forRoot({
28
+ loader: {
29
+ provide: TranslateLoader,
30
+ useFactory: httpTranslateLoader,
31
+ deps: [HttpClient],
32
+ },
33
+ })] }); }
34
+ }
35
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: VsChipdropdownModule, decorators: [{
36
+ type: NgModule,
37
+ args: [{
38
+ declarations: [
39
+ VsChipdropdownComponent,
40
+ VsChipddCmpComponent
41
+ ],
42
+ imports: [MatFormFieldModule, CommonModule,
43
+ MatInputModule, MatSelectModule, MatAutocompleteModule, FormsModule, ReactiveFormsModule, MatGridListModule, MatChipsModule, MatIconModule,
44
+ HttpClientModule,
45
+ TranslateModule.forRoot({
46
+ loader: {
47
+ provide: TranslateLoader,
48
+ useFactory: httpTranslateLoader,
49
+ deps: [HttpClient],
50
+ },
51
+ }),
52
+ ],
53
+ exports: [
54
+ VsChipddCmpComponent
55
+ ]
56
+ }]
57
+ }] });
58
+ export function httpTranslateLoader(http) {
59
+ return new TranslateHttpLoader(http);
60
+ }
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidnMtY2hpcGRyb3Bkb3duLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3ZzLWNoaXBkcm9wZG93bi9zcmMvbGliL3ZzLWNoaXBkcm9wZG93bi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUMvRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZUFBZSxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7O0FBcUJqRSxNQUFNLE9BQU8sb0JBQW9COytHQUFwQixvQkFBb0I7Z0hBQXBCLG9CQUFvQixpQkFsQjdCLHVCQUF1QjtZQUN2QixvQkFBb0IsYUFFWixrQkFBa0IsRUFBQyxZQUFZO1lBQ3ZDLGNBQWMsRUFBQyxlQUFlLEVBQUMscUJBQXFCLEVBQUMsV0FBVyxFQUFDLG1CQUFtQixFQUFDLGlCQUFpQixFQUFDLGNBQWMsRUFBQyxhQUFhO1lBQ25JLGdCQUFnQixpQ0FVaEIsb0JBQW9CO2dIQUdYLG9CQUFvQixZQWZyQixrQkFBa0IsRUFBQyxZQUFZO1lBQ3ZDLGNBQWMsRUFBQyxlQUFlLEVBQUMscUJBQXFCLEVBQUMsV0FBVyxFQUFDLG1CQUFtQixFQUFDLGlCQUFpQixFQUFDLGNBQWMsRUFBQyxhQUFhO1lBQ25JLGdCQUFnQjtZQUNoQixlQUFlLENBQUMsT0FBTyxDQUFDO2dCQUN0QixNQUFNLEVBQUU7b0JBQ04sT0FBTyxFQUFFLGVBQWU7b0JBQ3hCLFVBQVUsRUFBRSxtQkFBbUI7b0JBQy9CLElBQUksRUFBRSxDQUFDLFVBQVUsQ0FBQztpQkFDbkI7YUFDRixDQUFDOzs0RkFNTyxvQkFBb0I7a0JBcEJoQyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWix1QkFBdUI7d0JBQ3ZCLG9CQUFvQjtxQkFDckI7b0JBQ0QsT0FBTyxFQUFFLENBQUMsa0JBQWtCLEVBQUMsWUFBWTt3QkFDdkMsY0FBYyxFQUFDLGVBQWUsRUFBQyxxQkFBcUIsRUFBQyxXQUFXLEVBQUMsbUJBQW1CLEVBQUMsaUJBQWlCLEVBQUMsY0FBYyxFQUFDLGFBQWE7d0JBQ25JLGdCQUFnQjt3QkFDaEIsZUFBZSxDQUFDLE9BQU8sQ0FBQzs0QkFDdEIsTUFBTSxFQUFFO2dDQUNOLE9BQU8sRUFBRSxlQUFlO2dDQUN4QixVQUFVLEVBQUUsbUJBQW1CO2dDQUMvQixJQUFJLEVBQUUsQ0FBQyxVQUFVLENBQUM7NkJBQ25CO3lCQUNGLENBQUM7cUJBQ0g7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLG9CQUFvQjtxQkFDckI7aUJBQ0Y7O0FBRUQsTUFBTSxVQUFVLG1CQUFtQixDQUFDLElBQWdCO0lBQ2xELE9BQU8sSUFBSSxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUN2QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFZzQ2hpcGRyb3Bkb3duQ29tcG9uZW50IH0gZnJvbSAnLi92cy1jaGlwZHJvcGRvd24uY29tcG9uZW50JztcbmltcG9ydCB7IFZzQ2hpcGRkQ21wQ29tcG9uZW50IH0gZnJvbSAnLi92cy1jaGlwZGQtY21wL3ZzLWNoaXBkZC1jbXAuY29tcG9uZW50JztcbmltcG9ydCB7IE1hdEZvcm1GaWVsZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xuaW1wb3J0IHsgTWF0SW5wdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XG5pbXBvcnQgeyBNYXRTZWxlY3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zZWxlY3QnO1xuaW1wb3J0IHsgTWF0QXV0b2NvbXBsZXRlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYXV0b2NvbXBsZXRlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE1hdEdyaWRMaXN0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZ3JpZC1saXN0JztcbmltcG9ydCB7IE1hdENoaXBzTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2hpcHMnO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlLCBUcmFuc2xhdGVMb2FkZXIgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IEh0dHBDbGllbnRNb2R1bGUsIEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBUcmFuc2xhdGVIdHRwTG9hZGVyIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvaHR0cC1sb2FkZXInO1xuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgVnNDaGlwZHJvcGRvd25Db21wb25lbnQsXG4gICAgVnNDaGlwZGRDbXBDb21wb25lbnRcbiAgXSxcbiAgaW1wb3J0czogW01hdEZvcm1GaWVsZE1vZHVsZSxDb21tb25Nb2R1bGUsXG4gICAgTWF0SW5wdXRNb2R1bGUsTWF0U2VsZWN0TW9kdWxlLE1hdEF1dG9jb21wbGV0ZU1vZHVsZSxGb3Jtc01vZHVsZSxSZWFjdGl2ZUZvcm1zTW9kdWxlLE1hdEdyaWRMaXN0TW9kdWxlLE1hdENoaXBzTW9kdWxlLE1hdEljb25Nb2R1bGUsXG4gICAgSHR0cENsaWVudE1vZHVsZSxcbiAgICBUcmFuc2xhdGVNb2R1bGUuZm9yUm9vdCh7XG4gICAgICBsb2FkZXI6IHtcbiAgICAgICAgcHJvdmlkZTogVHJhbnNsYXRlTG9hZGVyLFxuICAgICAgICB1c2VGYWN0b3J5OiBodHRwVHJhbnNsYXRlTG9hZGVyLFxuICAgICAgICBkZXBzOiBbSHR0cENsaWVudF0sXG4gICAgICB9LFxuICAgIH0pLFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgVnNDaGlwZGRDbXBDb21wb25lbnRcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBWc0NoaXBkcm9wZG93bk1vZHVsZSB7IH1cbmV4cG9ydCBmdW5jdGlvbiBodHRwVHJhbnNsYXRlTG9hZGVyKGh0dHA6IEh0dHBDbGllbnQpIHtcbiAgcmV0dXJuIG5ldyBUcmFuc2xhdGVIdHRwTG9hZGVyKGh0dHApO1xufVxuIl19
@@ -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: "16.2.12", ngImport: i0, type: VsChipdropdownService, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
37
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: VsChipdropdownService, providedIn: 'root' }); }
38
+ }
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: VsChipdropdownService, decorators: [{
40
+ type: Injectable,
41
+ args: [{
42
+ providedIn: 'root'
43
+ }]
44
+ }], ctorParameters: function () { return [{ type: i1.HttpClient }]; } });
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidnMtY2hpcGRyb3Bkb3duLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy92cy1jaGlwZHJvcGRvd24vc3JjL2xpYi92cy1jaGlwZHJvcGRvd24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFPM0MsTUFBTSxPQUFPLHFCQUFxQjtJQUVoQyxZQUFvQixJQUFnQjtRQUFoQixTQUFJLEdBQUosSUFBSSxDQUFZO0lBQUksQ0FBQztJQUN6QyxPQUFPLENBQUMsTUFBTSxFQUFDLElBQUksR0FBQyxFQUFFLEVBQUMsTUFBTTtRQUMzQixNQUFNLFFBQVEsR0FBRyxZQUFZLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3JELElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDdEMsSUFBSSxLQUFLLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQztRQUM3QixPQUFPLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBQyxNQUFNLENBQUMsQ0FBQTtRQUM1QixJQUFJLFFBQVEsR0FBQyxFQUFFLENBQUE7UUFDZixJQUFHLE1BQU0sS0FBRyxTQUFTLElBQUksTUFBTSxLQUFHLElBQUksSUFBSSxNQUFNLEtBQUcsRUFBRSxFQUFDO1lBQ3BELFFBQVEsR0FBQyxNQUFNLENBQUE7U0FDaEI7UUFDRCxNQUFNLE9BQU8sR0FBRyxFQUFFLGFBQWEsRUFBRSxRQUFRLEdBQUcsS0FBSyxFQUFFLENBQUM7UUFDcEQsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBTSxNQUFNLEdBQUMsUUFBUSxFQUFDLElBQUksRUFBRTtZQUMvQyxPQUFPLEVBQUUsT0FBTztTQUVqQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBQ0QsTUFBTSxDQUFDLE1BQU0sRUFBQyxNQUFNLEdBQUMsRUFBRTtRQUNyQixNQUFNLFFBQVEsR0FBRyxZQUFZLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3JELElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDdEMsSUFBSSxLQUFLLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQztRQUM3QixPQUFPLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBQyxNQUFNLENBQUMsQ0FBQTtRQUM1QixJQUFJLFFBQVEsR0FBQyxFQUFFLENBQUE7UUFDZixJQUFHLE1BQU0sS0FBRyxTQUFTLElBQUksTUFBTSxLQUFHLElBQUksSUFBSSxNQUFNLEtBQUcsRUFBRSxFQUFDO1lBQ3BELFFBQVEsR0FBQyxNQUFNLENBQUE7U0FDaEI7UUFDRCxNQUFNLE9BQU8sR0FBRyxFQUFFLGFBQWEsRUFBRSxRQUFRLEdBQUcsS0FBSyxFQUFFLENBQUM7UUFDcEQsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBTSxNQUFNLEdBQUMsUUFBUSxFQUFDO1lBQ3hDLE9BQU8sRUFBRSxPQUFPO1NBQ2pCLENBQUMsQ0FBQztJQUNMLENBQUM7K0dBL0JVLHFCQUFxQjttSEFBckIscUJBQXFCLGNBRnBCLE1BQU07OzRGQUVQLHFCQUFxQjtrQkFIakMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBWc0NoaXBkcm9wZG93blNlcnZpY2Uge1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cDogSHR0cENsaWVudCkgeyB9XG4gIHBvc3RBcGkoQXBpdXJsLGpzb249e30scGFyYW1zKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBnZXRUb2tlbiA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKFwic2Vzc2lvbkRhdGFcIik7XG4gICAgbGV0IHRva2VuVmFsdWUgPSBKU09OLnBhcnNlKGdldFRva2VuKTtcbiAgICBsZXQgdG9rZW4gPSB0b2tlblZhbHVlLnRva2VuO1xuICAgIGNvbnNvbGUubG9nKFwicGFyYW1zXCIscGFyYW1zKVxuICAgIGxldCBwYXJhZGF0YT0nJ1xuICAgIGlmKHBhcmFtcyE9PXVuZGVmaW5lZCAmJiBwYXJhbXMhPT1udWxsICYmIHBhcmFtcyE9PScnKXtcbiAgICAgIHBhcmFkYXRhPXBhcmFtc1xuICAgIH1cbiAgICBjb25zdCBoZWFkZXJzID0geyBBdXRob3JpemF0aW9uOiBcIlRva2VuIFwiICsgdG9rZW4gfTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8YW55PihBcGl1cmwrcGFyYWRhdGEsanNvbiAse1xuICAgICAgaGVhZGVyczogaGVhZGVycyxcbiAgICAgIFxuICAgIH0pO1xuICB9XG4gIEdldEFwaShBcGl1cmwscGFyYW1zPScnKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBnZXRUb2tlbiA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKFwic2Vzc2lvbkRhdGFcIik7XG4gICAgbGV0IHRva2VuVmFsdWUgPSBKU09OLnBhcnNlKGdldFRva2VuKTtcbiAgICBsZXQgdG9rZW4gPSB0b2tlblZhbHVlLnRva2VuO1xuICAgIGNvbnNvbGUubG9nKFwicGFyYW1zXCIscGFyYW1zKVxuICAgIGxldCBwYXJhZGF0YT0nJ1xuICAgIGlmKHBhcmFtcyE9PXVuZGVmaW5lZCAmJiBwYXJhbXMhPT1udWxsICYmIHBhcmFtcyE9PScnKXtcbiAgICAgIHBhcmFkYXRhPXBhcmFtc1xuICAgIH1cbiAgICBjb25zdCBoZWFkZXJzID0geyBBdXRob3JpemF0aW9uOiBcIlRva2VuIFwiICsgdG9rZW4gfTtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxhbnk+KEFwaXVybCtwYXJhZGF0YSx7XG4gICAgICBoZWFkZXJzOiBoZWFkZXJzLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL3ZzLWNoaXBkcm9wZG93bi9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsNkNBQTZDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIHZzLWNoaXBkcm9wZG93blxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZzLWNoaXBkcm9wZG93bi5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZzLWNoaXBkcm9wZG93bi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdnMtY2hpcGRyb3Bkb3duLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92cy1jaGlwZGQtY21wL3ZzLWNoaXBkZC1jbXAuY29tcG9uZW50JyJdfQ==
@@ -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=