@unnilouis.org/vs-chipdropdown 9.0.6 → 9.0.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/unnilouis.org-vs-chipdropdown.umd.js +10 -8
- package/bundles/unnilouis.org-vs-chipdropdown.umd.js.map +1 -1
- package/bundles/unnilouis.org-vs-chipdropdown.umd.min.js +1 -1
- package/bundles/unnilouis.org-vs-chipdropdown.umd.min.js.map +1 -1
- package/esm2015/lib/vs-chipdd-cmp/vs-chipdd-cmp.component.js +11 -9
- package/esm5/lib/vs-chipdd-cmp/vs-chipdd-cmp.component.js +11 -9
- package/fesm2015/unnilouis.org-vs-chipdropdown.js +10 -8
- package/fesm2015/unnilouis.org-vs-chipdropdown.js.map +1 -1
- package/fesm5/unnilouis.org-vs-chipdropdown.js +10 -8
- package/fesm5/unnilouis.org-vs-chipdropdown.js.map +1 -1
- package/lib/vs-chipdd-cmp/vs-chipdd-cmp.component.d.ts +1 -1
- package/package.json +1 -1
- package/unnilouis.org-vs-chipdropdown.metadata.json +1 -1
|
@@ -127,6 +127,7 @@ var VsChipddCmpComponent = /** @class */ (function () {
|
|
|
127
127
|
if ((_e = this.InputFields) === null || _e === void 0 ? void 0 : _e.fronentdata) {
|
|
128
128
|
this.Dropdowndata = (_f = this.InputFields) === null || _f === void 0 ? void 0 : _f.data;
|
|
129
129
|
}
|
|
130
|
+
this.dropdownsearch();
|
|
130
131
|
// else {
|
|
131
132
|
// this.getdropdown('')
|
|
132
133
|
// }
|
|
@@ -196,9 +197,11 @@ var VsChipddCmpComponent = /** @class */ (function () {
|
|
|
196
197
|
VsChipddCmpComponent.prototype.dropdownsearch = function () {
|
|
197
198
|
var _this = this;
|
|
198
199
|
var _a;
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
200
|
+
var controlName = this.dynamciformcontrolparent();
|
|
201
|
+
var control = this.DropdownForm.get(controlName);
|
|
202
|
+
if (control && !((_a = this.InputFields) === null || _a === void 0 ? void 0 : _a.fronentdata)) {
|
|
203
|
+
this.DropdownForm.get(this.dynamciformcontrolparent())
|
|
204
|
+
.valueChanges.pipe(debounceTime(200), distinctUntilChanged(), tap(function () {
|
|
202
205
|
_this.DrodownLoading = true;
|
|
203
206
|
console.log('inside tap');
|
|
204
207
|
}), switchMap(function (value) {
|
|
@@ -326,13 +329,12 @@ var VsChipddCmpComponent = /** @class */ (function () {
|
|
|
326
329
|
if ((_a = this.InputFields) === null || _a === void 0 ? void 0 : _a.Outputkey) {
|
|
327
330
|
this.chipSelectedId.push(foundemp[0][(_b = this.InputFields) === null || _b === void 0 ? void 0 : _b.Outputkey]);
|
|
328
331
|
}
|
|
329
|
-
if ((_c = this.InputFields) === null || _c === void 0 ? void 0 : _c.formkey) {
|
|
330
|
-
this.formkeyarr.push(foundemp[0][(_d = this.InputFields) === null || _d === void 0 ? void 0 : _d.formkey]);
|
|
331
|
-
}
|
|
332
332
|
else {
|
|
333
333
|
this.chipSelectedId.push(foundemp[0].id);
|
|
334
334
|
}
|
|
335
|
-
|
|
335
|
+
if ((_c = this.InputFields) === null || _c === void 0 ? void 0 : _c.formkey) {
|
|
336
|
+
this.formkeyarr.push(foundemp[0][(_d = this.InputFields) === null || _d === void 0 ? void 0 : _d.formkey]);
|
|
337
|
+
}
|
|
336
338
|
this.selected();
|
|
337
339
|
}
|
|
338
340
|
};
|
|
@@ -387,11 +389,11 @@ var VsChipddCmpComponent = /** @class */ (function () {
|
|
|
387
389
|
VsChipddCmpComponent = __decorate([
|
|
388
390
|
Component({
|
|
389
391
|
selector: 'lib-vs-chipdd-cmp',
|
|
390
|
-
template: "<div>\r\n <form [formGroup]=\"DropdownForm\" id=\"matChip-size\">\r\n <!-- class=\"mat-chipScroll\" -->\r\n <mat-form-field\r\n appearance=\"outline\"\r\n (click)=\"!this.InputFields?.fronentdata ? this.getdropdown('') : ''\"\r\n >\r\n <mat-label>{{ InputFields?.label | translate }}</mat-label>\r\n <!-- class=\"chip-container\" -->\r\n <mat-chip-list multiple #chipListvendor>\r\n <!-- class=\"mat-chipEx\" -->\r\n <mat-chip\r\n *ngFor=\"let obj of chipSelectedObj\"\r\n [removable]=\"true\"\r\n (removed)=\"removechip(obj)\"\r\n >\r\n {{ obj[InputFields?.displaykey] }}\r\n <mat-icon matChipRemove>cancel</mat-icon>\r\n </mat-chip>\r\n <!-- class=\"matformfieldinputstyle\" -->\r\n <input\r\n #DropInput\r\n [matAutocomplete]=\"scrolll\"\r\n
|
|
392
|
+
template: "<div>\r\n <form [formGroup]=\"DropdownForm\" id=\"matChip-size\">\r\n <!-- class=\"mat-chipScroll\" -->\r\n <mat-form-field\r\n appearance=\"outline\"\r\n (click)=\"!this.InputFields?.fronentdata ? this.getdropdown('') : ''\"\r\n >\r\n <mat-label>{{ InputFields?.label | translate }}</mat-label>\r\n <!-- class=\"chip-container\" -->\r\n <mat-chip-list multiple #chipListvendor>\r\n <!-- class=\"mat-chipEx\" -->\r\n <mat-chip\r\n *ngFor=\"let obj of chipSelectedObj\"\r\n [removable]=\"true\"\r\n (removed)=\"removechip(obj)\"\r\n >\r\n {{ obj[InputFields?.displaykey] }}\r\n <mat-icon matChipRemove>cancel</mat-icon>\r\n </mat-chip>\r\n <!-- class=\"matformfieldinputstyle\" -->\r\n <input\r\n #DropInput\r\n [matAutocomplete]=\"scrolll\"\r\n [matChipInputFor]=\"chipListvendor\"\r\n [matChipInputSeparatorKeyCodes]=\"separatorsKeysCodes\"\r\n [matChipInputAddOnBlur]=\"true\"\r\n #autoCompleteInput=\"matAutocompleteTrigger\"\r\n [formControlName]=\"this.dynamciformcontrolparent()\"\r\n />\r\n </mat-chip-list>\r\n <mat-autocomplete\r\n #scrolll=\"matAutocomplete\"\r\n (opened)=\"autocompleteAppScroll()\"\r\n >\r\n <ng-container>\r\n <mat-option\r\n *ngFor=\"let dropvalues of Dropdowndata\"\r\n [value]=\"\r\n this.InputFields?.formkey\r\n ? dropvalues[this.InputFields?.formkey]\r\n : dropvalues\r\n \"\r\n (onSelectionChange)=\"venSelected(dropvalues)\"\r\n >\r\n {{ dropvalues[InputFields?.displaykey] }}\r\n </mat-option>\r\n </ng-container>\r\n </mat-autocomplete>\r\n </mat-form-field>\r\n </form>\r\n</div>\r\n<!-- (click)=\"selected()\"\r\n -->\r\n<!-- (optionSelected)=\"venSelected($event)\"\r\n -->\r\n",
|
|
391
393
|
styles: [""]
|
|
392
394
|
})
|
|
393
395
|
], VsChipddCmpComponent);
|
|
394
396
|
return VsChipddCmpComponent;
|
|
395
397
|
}());
|
|
396
398
|
export { VsChipddCmpComponent };
|
|
397
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidnMtY2hpcGRkLWNtcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdW5uaWxvdWlzLm9yZy92cy1jaGlwZHJvcGRvd24vIiwic291cmNlcyI6WyJsaWIvdnMtY2hpcGRkLWNtcC92cy1jaGlwZGQtY21wLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFFTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUdMLHNCQUFzQixHQUN2QixNQUFNLGdDQUFnQyxDQUFDO0FBQ3hDLE9BQU8sRUFDTCxZQUFZLEVBQ1osb0JBQW9CLEVBQ3BCLEdBQUcsRUFFSCxTQUFTLEVBQ1QsUUFBUSxFQUNSLFNBQVMsRUFDVCxHQUFHLEdBQ0osTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQW9CLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNuRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBTXJEO0lBRUUsOEJBQ1UsT0FBOEIsRUFDOUIsRUFBZTtRQURmLFlBQU8sR0FBUCxPQUFPLENBQXVCO1FBQzlCLE9BQUUsR0FBRixFQUFFLENBQWE7UUFJaEIsZUFBVSxHQUFZLElBQUksQ0FBQztRQVcxQixjQUFTLEdBQXNCLElBQUksWUFBWSxFQUFPLENBQUM7UUFFeEQsd0JBQW1CLEdBQWEsQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFeEQsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUMxQixnQkFBVyxHQUFXLENBQUMsQ0FBQztRQUN4QixpQkFBWSxHQUFRLEVBQUUsQ0FBQztRQUN2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TyxJQUFJLENBQUM7YUFDYjtpQkFBTTtnQkFDTCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDO2FBQ3BDO1NBQ0Y7SUFDSCxDQUFDOztnQkE1WGtCLHFCQUFxQjtnQkFDMUIsV0FBVzs7SUFFaEI7UUFBUixLQUFLLEVBQUU7NkRBQWtCO0lBQ2pCO1FBQVIsS0FBSyxFQUFFOzJEQUFnQjtJQUNmO1FBQVIsS0FBSyxFQUFFOzREQUE0QjtJQU1wQztRQUpDLFNBQVMsQ0FBQyxtQkFBbUIsRUFBRTtZQUM5QixNQUFNLEVBQUUsS0FBSztZQUNiLElBQUksRUFBRSxzQkFBc0I7U0FDN0IsQ0FBQzt5REFDOEI7SUFHaEM7UUFEQyxTQUFTLENBQUMsc0JBQXNCLENBQUM7cUVBQ1U7SUFDdEI7UUFBckIsU0FBUyxDQUFDLFNBQVMsQ0FBQztvRUFBcUM7SUFDaEQ7UUFBVCxNQUFNLEVBQUU7MkRBQXdEO0lBQ3pDO1FBQXZCLFNBQVMsQ0FBQyxXQUFXLENBQUM7MkRBQWdCO0lBVTlCO1FBQVIsS0FBSyxFQUFFOzJEQUF1QjtJQTlCcEIsb0JBQW9CO1FBTGhDLFNBQVMsQ0FBQztZQUNULFFBQVEsRUFBRSxtQkFBbUI7WUFDN0IsaWhFQUE2Qzs7U0FFOUMsQ0FBQztPQUNXLG9CQUFvQixDQWdZaEM7SUFBRCwyQkFBQztDQUFBLEFBaFlELElBZ1lDO1NBaFlZLG9CQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBJbnB1dCxcclxuICBPdXRwdXQsXHJcbiAgU2ltcGxlQ2hhbmdlcyxcclxuICBWaWV3Q2hpbGQsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7XHJcbiAgTWF0QXV0b2NvbXBsZXRlU2VsZWN0ZWRFdmVudCxcclxuICBNYXRBdXRvY29tcGxldGUsXHJcbiAgTWF0QXV0b2NvbXBsZXRlVHJpZ2dlcixcclxufSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9hdXRvY29tcGxldGUnO1xyXG5pbXBvcnQge1xyXG4gIGRlYm91bmNlVGltZSxcclxuICBkaXN0aW5jdFVudGlsQ2hhbmdlZCxcclxuICB0YXAsXHJcbiAgZmlsdGVyLFxyXG4gIHN3aXRjaE1hcCxcclxuICBmaW5hbGl6ZSxcclxuICB0YWtlVW50aWwsXHJcbiAgbWFwLFxyXG59IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgZnJvbSwgT2JzZXJ2YWJsZSwgZnJvbUV2ZW50IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IFZzQ2hpcGRyb3Bkb3duU2VydmljZSB9IGZyb20gJy4uL3ZzLWNoaXBkcm9wZG93bi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Db250cm9sLCBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IENPTU1BLCBFTlRFUiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9rZXljb2Rlcyc7XHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLXZzLWNoaXBkZC1jbXAnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi92cy1jaGlwZGQtY21wLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi92cy1jaGlwZGQtY21wLmNvbXBvbmVudC5zY3NzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBWc0NoaXBkZENtcENvbXBvbmVudCB7XHJcbiAgRHJvZG93bkxvYWRpbmc6IGJvb2xlYW47XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHNlcnZpY2U6IFZzQ2hpcGRyb3Bkb3duU2VydmljZSxcclxuICAgIHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyXHJcbiAgKSB7fVxyXG4gIEBJbnB1dCgpIElucHV0RmllbGRzOiBhbnk7XHJcbiAgQElucHV0KCkgUmVzZXRGb3JtOiBhbnk7XHJcbiAgQElucHV0KCkgQmFja2VuZGFwaTogYm9vbGVhbiA9IHRydWU7XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ2F1dG9Db21wbGV0ZUlucHV0Jywge1xyXG4gICAgc3RhdGljOiBmYWxzZSxcclxuICAgIHJlYWQ6IE1hdEF1dG9jb21wbGV0ZVRyaWdnZXIsXHJcbiAgfSlcclxuICB0cmlnZ2VyOiBNYXRBdXRvY29tcGxldGVUcmlnZ2VyO1xyXG5cclxuICBAVmlld0NoaWxkKE1hdEF1dG9jb21wbGV0ZVRyaWdnZXIpXHJcbiAgYXV0b2NvbXBsZXRlVHJpZ2dlcjogTWF0QXV0b2NvbXBsZXRlVHJpZ2dlcjtcclxuICBAVmlld0NoaWxkKCdzY3JvbGxsJykgbWF0QXV0b2NvbXBsZXRlQXBwOiBNYXRBdXRvY29tcGxldGU7XHJcbiAgQE91dHB1dCgpIGRhdGFFdmVudDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICBAVmlld0NoaWxkKCdEcm9wSW5wdXQnKSBEcm9wSW5wdXQ6IGFueTtcclxuICByZWFkb25seSBzZXBhcmF0b3JzS2V5c0NvZGVzOiBudW1iZXJbXSA9IFtFTlRFUiwgQ09NTUFdO1xyXG5cclxuICBoYXNfbmV4dDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGN1cnJlbnRwYWdlOiBudW1iZXIgPSAxO1xyXG4gIERyb3Bkb3duZGF0YTogYW55ID0gW107XHJcbiAgaGFzX3ByZXZpb3VzOiBib29sZWFuID0gZmFsc2U7XHJcbiAgRHJvcGRvd25Gb3JtOiBGb3JtR3JvdXA7XHJcbiAgY2hpcFNlbGVjdGVkSWQ6IGFueSA9IFtdO1xyXG4gIGNoaXBTZWxlY3RlZE9iajogYW55ID0gW107XHJcbiAgQElucHV0KCkgZm9ybUdyb3VwITogRm9ybUdyb3VwO1xyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgLy8gaWYgKHRoaXMuZm9ybUdyb3VwKSB7XHJcbiAgICAvLyAgIHRoaXMuRHJvcGRvd25Gb3JtID0gdGhpcy5mb3JtR3JvdXA7XHJcbiAgICAvLyB9IGVsc2Uge1xyXG4gICAgLy8gICB0aGlzLkRyb3Bkb3duRm9ybSA9IHRoaXMuZmIuZ3JvdXAoe1xyXG4gICAgLy8gICAgIHZhbHVlOiAnJyxcclxuICAgIC8vICAgfSk7XHJcbiAgICAvLyB9XHJcbiAgICAvLyB0aGlzLmR1cG5nb25pdCgpO1xyXG5cclxuICAgIC8vIGlmICh0aGlzLklucHV0RmllbGRzPy5kZWZhdWx0dmFsdWUpIHtcclxuICAgIC8vICAgdGhpcy5Ecm9wZG93bkZvcm0uZ2V0KFwidmFsdWVcIikucGF0Y2hWYWx1ZSh0aGlzLklucHV0RmllbGRzPy5kZWZhdWx0dmFsdWUpXHJcbiAgICAvLyAgIHRoaXMuY2hpcFNlbGVjdGVkT2JqID0gdGhpcy5JbnB1dEZpZWxkcz8uZGVmYXVsdHZhbHVlXHJcbiAgICAvLyAgIGlmICh0aGlzLmNoaXBTZWxlY3RlZE9iai5sZW5ndGggPiAwKSB7XHJcbiAgICAvLyAgICAgZm9yIChsZXQgZm91bmRlbXAgb2YgdGhpcy5jaGlwU2VsZWN0ZWRPYmopIHtcclxuICAgIC8vICAgICAgIGlmICh0aGlzLklucHV0RmllbGRzPy5PdXRwdXRrZXkpIHtcclxuICAgIC8vICAgICAgICAgdGhpcy5jaGlwU2VsZWN0ZWRJZC5wdXNoKGZvdW5kZW1wW3RoaXMuSW5wdXRGaWVsZHM/Lk91dHB1dGtleV0pXHJcblxyXG4gICAgLy8gICAgICAgfVxyXG4gICAgLy8gICAgICAgZWxzZSB7XHJcbiAgICAvLyAgICAgICAgIHRoaXMuY2hpcFNlbGVjdGVkSWQucHVzaChmb3VuZGVtcC5pZClcclxuXHJcbiAgICAvLyAgICAgICB9XHJcbiAgICAvLyAgICAgfVxyXG4gICAgLy8gICAgIHRoaXMuc2VsZWN0ZWQoKVxyXG4gICAgLy8gICB9XHJcblxyXG4gICAgLy8gfVxyXG4gICAgLy8gaWYgKHRoaXMuSW5wdXRGaWVsZHM/LmZyb25lbnRkYXRhKSB7XHJcbiAgICAvLyAgIHRoaXMuRHJvcGRvd25kYXRhID0gdGhpcy5JbnB1dEZpZWxkcz8uZGF0YVxyXG5cclxuICAgIC8vIH1cclxuICAgIC8vIGVsc2Uge1xyXG4gICAgLy8gICB0aGlzLmdldGRyb3Bkb3duKCcnKVxyXG4gICAgLy8gfVxyXG4gIH1cclxuICBsb29vcCgpIHtcclxuICAgIGZvciAobGV0IGZvdW5kZW1wIG9mIHRoaXMuY2hpcFNlbGVjdGVkT2JqKSB7XHJcbiAgICAgIGlmKCEoZm91bmRlbXAgaW5zdGFuY2VvZiBOdW1iZXIpKXtcclxuICAgICAgICBpZiAodGhpcy5JbnB1dEZpZWxkcz8uT3V0cHV0a2V5KSB7XHJcbiAgICAgICAgICB0aGlzLmNoaXBTZWxlY3RlZElkLnB1c2goZm91bmRlbXBbdGhpcy5JbnB1dEZpZWxkcz8uT3V0cHV0a2V5XSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICh0aGlzLklucHV0RmllbGRzPy5mb3Jta2V5KSB7XHJcbiAgICAgICAgICB0aGlzLmZvcm1rZXlhcnIucHVzaChmb3VuZGVtcFt0aGlzLklucHV0RmllbGRzPy5mb3Jta2V5XSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMuY2hpcFNlbGVjdGVkSWQucHVzaChmb3VuZGVtcC5pZCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIH1cclxuICAgICBcclxuICB9XHJcbiAgZHVwbmdvbml0KCkge1xyXG4gICAgaWYgKHRoaXMuZm9ybUdyb3VwKSB7XHJcbiAgICAgIHRoaXMuRHJvcGRvd25Gb3JtID0gdGhpcy5mb3JtR3JvdXA7XHJcbiAgICAgIGlmICghdGhpcy5Ecm9wZG93bkZvcm0uY29udGFpbnModGhpcy5JbnB1dEZpZWxkcz8uZm9ybWNvbnRyb2xuYW1lKSkge1xyXG4gICAgICAgIHRoaXMuRHJvcGRvd25Gb3JtLmFkZENvbnRyb2woXHJcbiAgICAgICAgICB0aGlzLmR5bmFtY2lmb3JtY29udHJvbHBhcmVudCgpLFxyXG4gICAgICAgICAgbmV3IEZvcm1Db250cm9sKHsgdmFsdWU6IFtdLCBkaXNhYmxlZDogdGhpcy5JbnB1dEZpZWxkcz8uZGlzYWJsZWQgfSlcclxuICAgICAgICApO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLkRyb3Bkb3duRm9ybSA9IHRoaXMuZmIuZ3JvdXAoe1xyXG4gICAgICAgIGNoaXB2YWx1ZTogW10sXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgY29uc29sZS5sb2coJ3RoaXMuRHJvcGRvd25Gb3JtJywgdGhpcy5Ecm9wZG93bkZvcm0udmFsdWUpO1xyXG4gICAgLy8gdGhpcy5jaGlwU2VsZWN0ZWRPYmogPVxyXG4gICAgLy8gICB0aGlzLkRyb3Bkb3duRm9ybS5nZXQodGhpcy5keW5hbWNpZm9ybWNvbnRyb2xwYXJlbnQoKSkudmFsdWUgJiZcclxuICAgIC8vICAgdGhpcy5Ecm9wZG93bkZvcm0uZ2V0KHRoaXMuZHluYW1jaWZvcm1jb250cm9scGFyZW50KCkpLnZhbHVlLmxlbmd0aCAhPT0gMFxyXG4gICAgLy8gICAgID8gdGhpcy5Ecm9wZG93bkZvcm0uZ2V0KHRoaXMuZHluYW1jaWZvcm1jb250cm9scGFyZW50KCkpLnZhbHVlXHJcbiAgICAvLyAgICAgOiBbXTtcclxuICAgIC8vICAgICBjb25zb2xlLmxvZygndGhpcy5jaGlwU2VsZWN0ZWRPYmonLCB0aGlzLmNoaXBTZWxlY3RlZE9iaik7XHJcblxyXG4gICAgaWYgKHRoaXMuSW5wdXRGaWVsZHM/LmRlZmF1bHR2YWx1ZSkge1xyXG4gICAgICAvLyB0aGlzLkRyb3Bkb3duRm9ybS5nZXQodGhpcy5keW5hbWNpZm9ybWNvbnRyb2xwYXJlbnQoKSkucGF0Y2hWYWx1ZShcclxuICAgICAgLy8gICB0aGlzLklucHV0RmllbGRzPy5mb3Jta2V5XHJcbiAgICAgIC8vICAgICA/IHRoaXMuSW5wdXRGaWVsZHM/LmRlZmF1bHR2YWx1ZVt0aGlzLklucHV0RmllbGRzPy5mb3Jta2V5XVxyXG4gICAgICAvLyAgICAgOiB0aGlzLklucHV0RmllbGRzPy5kZWZhdWx0dmFsdWVcclxuICAgICAgLy8gKTtcclxuICAgICAgLy8gdGhpcy5Ecm9wZG93bkZvcm0uZ2V0KHRoaXMuZHluYW1jaWZvcm1jb250cm9scGFyZW50KCkpLnBhdGNoVmFsdWUodGhpcy5JbnB1dEZpZWxkcz8uZGVmYXVsdHZhbHVlKTtcclxuICAgICAgdGhpcy5jaGlwU2VsZWN0ZWRPYmogPSB0aGlzLklucHV0RmllbGRzPy5kZWZhdWx0dmFsdWU7XHJcbiAgICAgIHRoaXMuY2hpcFNlbGVjdGVkSWQgPSBbXTtcclxuICAgICAgdGhpcy5mb3Jta2V5YXJyID0gW107XHJcbiAgICAgIGlmICh0aGlzLmNoaXBTZWxlY3RlZE9iai5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgdGhpcy5sb29vcCgpO1xyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWQoKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGlmIChcclxuICAgICAgdGhpcy5Ecm9wZG93bkZvcm0uZ2V0KHRoaXMuZHluYW1jaWZvcm1jb250cm9scGFyZW50KCkpLnZhbHVlICYmXHJcbiAgICAgIHRoaXMuRHJvcGRvd25Gb3JtLmdldCh0aGlzLmR5bmFtY2lmb3JtY29udHJvbHBhcmVudCgpKS52YWx1ZS5sZW5ndGggIT09IDBcclxuICAgICkge1xyXG4gICAgICB0aGlzLmNoaXBTZWxlY3RlZE9iaiA9IHRoaXMuRHJvcGRvd25Gb3JtLmdldChcclxuICAgICAgICB0aGlzLmR5bmFtY2lmb3JtY29udHJvbHBhcmVudCgpXHJcbiAgICAgICkudmFsdWU7XHJcbiAgICAgIGNvbnNvbGUubG9nKCd0ZXN0Jyx0aGlzLmNoaXBTZWxlY3RlZE9iaiA9IHRoaXMuRHJvcGRvd25Gb3JtLmdldChcclxuICAgICAgICB0aGlzLmR5bmFtY2lmb3JtY29udHJvbHBhcmVudCgpXHJcbiAgICAgICkudmFsdWUpXHJcbiAgICAgIHRoaXMuY2hpcFNlbGVjdGVkSWQgPSBbXTtcclxuICAgICAgdGhpcy5mb3Jta2V5YXJyID0gW107XHJcbiAgICAgIHRoaXMubG9vb3AoKTtcclxuICAgICAgdGhpcy5zZWxlY3RlZCgpO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMuSW5wdXRGaWVsZHM/LmZyb25lbnRkYXRhKSB7XHJcbiAgICAgIHRoaXMuRHJvcGRvd25kYXRhID0gdGhpcy5JbnB1dEZpZWxkcz8uZGF0YTtcclxuICAgIH1cclxuICAgIC8vIGVsc2Uge1xyXG4gICAgLy8gICB0aGlzLmdldGRyb3Bkb3duKCcnKVxyXG4gICAgLy8gfVxyXG4gIH1cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICBpZiAoY2hhbmdlcy5JbnB1dEZpZWxkcyAmJiBjaGFuZ2VzLklucHV0RmllbGRzLmN1cnJlbnRWYWx1ZSkge1xyXG4gICAgICBjb25zb2xlLmxvZygnU3VtbWFyeSBMb2cgQ2hhbmdlcycpO1xyXG4gICAgICB0aGlzLmN1cnJlbnRwYWdlID0gMTtcclxuICAgICAgdGhpcy5kdXBuZ29uaXQoKTtcclxuICAgIH1cclxuICAgIGlmIChjaGFuZ2VzLlJlc2V0Rm9ybSAmJiBjaGFuZ2VzLlJlc2V0Rm9ybS5jdXJyZW50VmFsdWUpIHtcclxuICAgICAgY29uc29sZS5sb2coJ2hpdHRlZCcpO1xyXG4gICAgICAvLyB0aGlzLkRyb3Bkb3duRm9ybS5yZXNldCgpO1xyXG4gICAgICB0aGlzLmN1cnJlbnRwYWdlID0gMTtcclxuICAgICAgdGhpcy5kdXBuZ29uaXQoKTtcclxuICAgICAgdGhpcy5jaGlwU2VsZWN0ZWRJZCA9IFtdO1xyXG4gICAgICB0aGlzLmZvcm1rZXlhcnIgPSBbXTtcclxuICAgICAgdGhpcy5jaGlwU2VsZWN0ZWRPYmogPSBbXTtcclxuICAgICAgdGhpcy5kYXRhRXZlbnQuZW1pdChbXSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8vIHB1YmxpYyBkaXNwbGF5ZGV2ZWxvcGNsaWVudChjbHQ6IGFueSwga2V5OiBzdHJpbmcpIHtcclxuICAvLyAgIHJldHVybiBrZXlbY2x0XTtcclxuICAvLyB9XHJcbiAgYXV0b2NvbXBsZXRlQXBwU2Nyb2xsKCkge1xyXG4gICAgaWYgKCF0aGlzLklucHV0RmllbGRzPy5mcm9uZW50ZGF0YSkge1xyXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICBpZiAoXHJcbiAgICAgICAgICB0aGlzLm1hdEF1dG9jb21wbGV0ZUFwcCAmJlxyXG4gICAgICAgICAgdGhpcy5hdXRvY29tcGxldGVUcmlnZ2VyICYmXHJcbiAgICAgICAgICB0aGlzLm1hdEF1dG9jb21wbGV0ZUFwcC5wYW5lbFxyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgZnJvbUV2ZW50KHRoaXMubWF0QXV0b2NvbXBsZXRlQXBwLnBhbmVsLm5hdGl2ZUVsZW1lbnQsICdzY3JvbGwnKVxyXG4gICAgICAgICAgICAucGlwZShcclxuICAgICAgICAgICAgICBtYXAoKHgpID0+IHRoaXMubWF0QXV0b2NvbXBsZXRlQXBwLnBhbmVsLm5hdGl2ZUVsZW1lbnQuc2Nyb2xsVG9wKSxcclxuICAgICAgICAgICAgICB0YWtlVW50aWwoXHJcbiAgICAgICAgICAgICAgICB0aGlzLmF1dG9jb21wbGV0ZVRyaWdnZXIucGFuZWxDbG9zaW5nQWN0aW9ucyBhcyBPYnNlcnZhYmxlPGFueT5cclxuICAgICAgICAgICAgICApXHJcbiAgICAgICAgICAgIClcclxuICAgICAgICAgICAgLnN1YnNjcmliZSgoeCkgPT4ge1xyXG4gICAgICAgICAgICAgIGNvbnN0IHNjcm9sbFRvcCA9XHJcbiAgICAgICAgICAgICAgICB0aGlzLm1hdEF1dG9jb21wbGV0ZUFwcC5wYW5lbC5uYXRpdmVFbGVtZW50LnNjcm9sbFRvcDtcclxuICAgICAgICAgICAgICBjb25zdCBzY3JvbGxIZWlnaHQgPVxyXG4gICAgICAgICAgICAgICAgdGhpcy5tYXRBdXRvY29tcGxldGVBcHAucGFuZWwubmF0aXZlRWxlbWVudC5zY3JvbGxIZWlnaHQ7XHJcbiAgICAgICAgICAgICAgY29uc3QgZWxlbWVudEhlaWdodCA9XHJcbiAgICAgICAgICAgICAgICB0aGlzLm1hdEF1dG9jb21wbGV0ZUFwcC5wYW5lbC5uYXRpdmVFbGVtZW50LmNsaWVudEhlaWdodDtcclxuICAgICAgICAgICAgICBjb25zdCBhdEJvdHRvbSA9IHNjcm9sbEhlaWdodCAtIDEgPD0gc2Nyb2xsVG9wICsgZWxlbWVudEhlaWdodDtcclxuICAgICAgICAgICAgICBpZiAoYXRCb3R0b20pIHtcclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLmhhc19uZXh0ID09PSB0cnVlKSB7XHJcbiAgICAgICAgICAgICAgICAgIGxldCB2YWx1ZSA9IHRoaXMuRHJvcElucHV0Lm5hdGl2ZUVsZW1lbnQudmFsdWU7XHJcbiAgICAgICAgICAgICAgICAgIGxldCBwYXJhbXMgPSB0aGlzLnNlYXJjaHBhcmFtcyh2YWx1ZSk7XHJcbiAgICAgICAgICAgICAgICAgIHRoaXMuY3VycmVudHBhZ2UgPSB0aGlzLmN1cnJlbnRwYWdlICsgMTtcclxuICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuY3VycmVudHBhZ2UgPiAxKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXJ2aWNlXHJcbiAgICAgICAgICAgICAgICAgICAgICAuR2V0QXBpKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLklucHV0RmllbGRzLnVybCArICc/cGFnZT0nICsgdGhpcy5jdXJyZW50cGFnZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFyYW1zXHJcbiAgICAgICAgICAgICAgICAgICAgICApXHJcbiAgICAgICAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKChyZXN1bHRzOiBhbnlbXSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgZGF0YXMgPSByZXN1bHRzWydkYXRhJ107XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCBkYXRhcGFnaW5hdGlvbiA9IHJlc3VsdHNbJ3BhZ2luYXRpb24nXTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5Ecm9wZG93bmRhdGEgPSB0aGlzLkRyb3Bkb3duZGF0YS5jb25jYXQoZGF0YXMpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZygndGhpcy5Ecm9wZG93bmRhdGEnLCB0aGlzLkRyb3Bkb3duZGF0YSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLkRyb3Bkb3duZGF0YS5sZW5ndGggPj0gMCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuaGFzX25leHQgPSBkYXRhcGFnaW5hdGlvbi5oYXNfbmV4dDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmhhc19wcmV2aW91cyA9IGRhdGFwYWdpbmF0aW9uLmhhc19wcmV2aW91cztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbnRwYWdlID0gZGF0YXBhZ2luYXRpb24uaW5kZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuICBkcm9wZG93bnNlYXJjaCgpIHtcclxuICAgIGlmICghdGhpcy5JbnB1dEZpZWxkcz8uZnJvbmVudGRhdGEpIHtcclxuICAgICAgdGhpcy5Ecm9wZG93bkZvcm0uZ2V0KCd2YWx1ZScpXHJcbiAgICAgICAgLnZhbHVlQ2hhbmdlcy5waXBlKFxyXG4gICAgICAgICAgZGVib3VuY2VUaW1lKDEwMCksXHJcbiAgICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxyXG4gICAgICAgICAgdGFwKCgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5Ecm9kb3duTG9hZGluZyA9IHRydWU7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKCdpbnNpZGUgdGFwJyk7XHJcbiAgICAgICAgICB9KSxcclxuICAgICAgICAgIHN3aXRjaE1hcCgodmFsdWUpID0+IHtcclxuICAgICAgICAgICAgbGV0IHBhcmFtcyA9IHRoaXMuc2VhcmNocGFyYW1zKHZhbHVlKTtcclxuICAgICAgICAgICAgdGhpcy5jdXJyZW50cGFnZSA9IDE7XHJcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnNlcnZpY2VcclxuICAgICAgICAgICAgICAuR2V0QXBpKFxyXG4gICAgICAgICAgICAgICAgdGhpcy5JbnB1dEZpZWxkcy51cmwgKyAnP3BhZ2U9JyArIHRoaXMuY3VycmVudHBhZ2UsXHJcbiAgICAgICAgICAgICAgICBwYXJhbXNcclxuICAgICAgICAgICAgICApXHJcbiAgICAgICAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICAgICAgICBmaW5hbGl6ZSgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgIHRoaXMuRHJvZG93bkxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgKVxyXG4gICAgICAgIC5zdWJzY3JpYmUoKHJlc3VsdHM6IGFueVtdKSA9PiB7XHJcbiAgICAgICAgICBsZXQgZGF0YXMgPSByZXN1bHRzWydkYXRhJ107XHJcbiAgICAgICAgICB0aGlzLkRyb3Bkb3duZGF0YSA9IGRhdGFzO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuICBnZXRkcm9wZG93bih2YWx1ZSkge1xyXG4gICAgdGhpcy5jdXJyZW50cGFnZSA9IDE7XHJcbiAgICBpZiAodGhpcy5JbnB1dEZpZWxkcy51cmwpIHtcclxuICAgICAgbGV0IHBhcmFtcyA9IHRoaXMuc2VhcmNocGFyYW1zKHZhbHVlKTtcclxuICAgICAgdGhpcy5zZXJ2aWNlXHJcbiAgICAgICAgLkdldEFwaSh0aGlzLklucHV0RmllbGRzLnVybCArICc/cGFnZT0nICsgdGhpcy5jdXJyZW50cGFnZSwgcGFyYW1zKVxyXG4gICAgICAgIC5zdWJzY3JpYmUoKHJlc3VsdHM6IGFueVtdKSA9PiB7XHJcbiAgICAgICAgICBsZXQgZGF0YXMgPSByZXN1bHRzWydkYXRhJ107XHJcbiAgICAgICAgICBsZXQgZGF0YXBhZ2luYXRpb24gPSByZXN1bHRzWydwYWdpbmF0aW9uJ107XHJcbiAgICAgICAgICB0aGlzLkRyb3Bkb3duZGF0YSA9IGRhdGFzO1xyXG4gICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMudHJpZ2dlci5vcGVuUGFuZWwoKTtcclxuICAgICAgICAgIH0sIDApO1xyXG4gICAgICAgICAgaWYgKHRoaXMuRHJvcGRvd25kYXRhLmxlbmd0aCA+PSAwKSB7XHJcbiAgICAgICAgICAgIHRoaXMuaGFzX25leHQgPSBkYXRhcGFnaW5hdGlvbi5oYXNfbmV4dDtcclxuICAgICAgICAgICAgdGhpcy5oYXNfcHJldmlvdXMgPSBkYXRhcGFnaW5hdGlvbi5oYXNfcHJldmlvdXM7XHJcbiAgICAgICAgICAgIHRoaXMuY3VycmVudHBhZ2UgPSBkYXRhcGFnaW5hdGlvbi5pbmRleDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcbiAgT3V0cHV0ZGF0YTogYW55ID0gW107XHJcbiAgZHluYW1jaWZvcm1jb250cm9scGFyZW50KCkge1xyXG4gICAgcmV0dXJuIHRoaXMuSW5wdXRGaWVsZHM/LmZvcm1jb250cm9sbmFtZSAmJiB0aGlzLmZvcm1Hcm91cFxyXG4gICAgICA/IHRoaXMuSW5wdXRGaWVsZHM/LmZvcm1jb250cm9sbmFtZVxyXG4gICAgICA6ICdjaGlwdmFsdWUnO1xyXG4gIH1cclxuICBzZWxlY3RlZCgpIHtcclxuICAgIHRoaXMuT3V0cHV0ZGF0YSA9IHRoaXMuY2hpcFNlbGVjdGVkT2JqO1xyXG4gICAgaWYgKHRoaXMuSW5wdXRGaWVsZHM/Lk91dHB1dGtleSkge1xyXG4gICAgICB0aGlzLk91dHB1dGRhdGEgPSB0aGlzLmNoaXBTZWxlY3RlZElkO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMuZm9ybUdyb3VwICYmIHRoaXMuSW5wdXRGaWVsZHM/LmZvcm1jb250cm9sbmFtZSkge1xyXG4gICAgICB0aGlzLkRyb3Bkb3duRm9ybS5nZXQodGhpcy5keW5hbWNpZm9ybWNvbnRyb2xwYXJlbnQoKSkucGF0Y2hWYWx1ZShcclxuICAgICAgICB0aGlzLmZvcm1rZXlhcnJcclxuICAgICAgKTtcclxuICAgIH1cclxuICAgIGNvbnNvbGUubG9nKHRoaXMuZm9ybWtleWFycik7XHJcbiAgICBjb25zb2xlLmxvZygndGhpcy5Ecm9wZG93bkZvcm0uZ2V0JywgdGhpcy5Ecm9wZG93bkZvcm0udmFsdWUpO1xyXG4gICAgdGhpcy5kYXRhRXZlbnQuZW1pdCh0aGlzLk91dHB1dGRhdGEpO1xyXG5cclxuICAgIC8vIGxldCBkYXRhID0gdGhpcy5Ecm9wZG93bkZvcm0udmFsdWUudmFsdWVcclxuICAgIC8vIGlmICh0aGlzLklucHV0RmllbGRzPy53aG9sZWRhdGEpIHtcclxuICAgIC8vICAgdGhpcy5kYXRhRXZlbnQuZW1pdCh0aGlzLmNoaXBTZWxlY3RlZE9iaik7XHJcbiAgICAvLyAgIGlmICh0aGlzLklucHV0RmllbGRzPy5mb3JtZ3JvdXAgJiYgdGhpcy5JbnB1dEZpZWxkcz8uZm9ybWNvbnRyb2xuYW1lKSB7XHJcbiAgICAvLyAgICAgdGhpcy5JbnB1dEZpZWxkcz8uZm9ybWdyb3VwXHJcbiAgICAvLyAgICAgICAuZ2V0KHRoaXMuSW5wdXRGaWVsZHM/LmZvcm1jb250cm9sbmFtZSlcclxuICAgIC8vICAgICAgIC5wYXRjaFZhbHVlKHRoaXMuY2hpcFNlbGVjdGVkT2JqKTtcclxuICAgIC8vICAgfVxyXG4gICAgLy8gfVxyXG4gICAgLy8gZWxzZSB7XHJcbiAgICAvLyAgIGlmICh0aGlzLklucHV0RmllbGRzPy5PdXRwdXRrZXkpIHtcclxuICAgIC8vICAgICB0aGlzLmRhdGFFdmVudC5lbWl0KHRoaXMuY2hpcFNlbGVjdGVkSWQpO1xyXG4gICAgLy8gICAgIGlmICh0aGlzLklucHV0RmllbGRzPy5mb3JtZ3JvdXAgJiYgdGhpcy5JbnB1dEZpZWxkcz8uZm9ybWNvbnRyb2xuYW1lKSB7XHJcbiAgICAvLyAgICAgICB0aGlzLklucHV0RmllbGRzPy5mb3JtZ3JvdXBcclxuICAgIC8vICAgICAgICAgLmdldCh0aGlzLklucHV0RmllbGRzPy5mb3JtY29udHJvbG5hbWUpXHJcbiAgICAvLyAgICAgICAgIC5wYXRjaFZhbHVlKHRoaXMuY2hpcFNlbGVjdGVkSWQpO1xyXG4gICAgLy8gICAgIH1cclxuICAgIC8vICAgfVxyXG4gICAgLy8gICBlbHNlIHtcclxuICAgIC8vICAgICB0aGlzLmRhdGFFdmVudC5lbWl0KHRoaXMuY2hpcFNlbGVjdGVkT2JqKTtcclxuICAgIC8vICAgICBpZiAodGhpcy5JbnB1dEZpZWxkcz8uZm9ybWdyb3VwICYmIHRoaXMuSW5wdXRGaWVsZHM/LmZvcm1jb250cm9sbmFtZSkge1xyXG4gICAgLy8gICAgICAgdGhpcy5JbnB1dEZpZWxkcz8uZm9ybWdyb3VwXHJcbiAgICAvLyAgICAgICAgIC5nZXQodGhpcy5JbnB1dEZpZWxkcz8uZm9ybWNvbnRyb2xuYW1lKVxyXG4gICAgLy8gICAgICAgICAucGF0Y2hWYWx1ZSh0aGlzLmNoaXBTZWxlY3RlZE9iaik7XHJcbiAgICAvLyAgICAgfVxyXG4gICAgLy8gICB9XHJcblxyXG4gICAgLy8gfVxyXG4gIH1cclxuICBzZWFyY2hwYXJhbXModmFsdWUpIHtcclxuICAgIGxldCBwYXJhbXMgPSAnJztcclxuICAgIGlmICh0aGlzLklucHV0RmllbGRzLnBhcmFtcykge1xyXG4gICAgICBwYXJhbXMgPSB0aGlzLklucHV0RmllbGRzLnBhcmFtcztcclxuICAgIH1cclxuICAgIGxldCBpbnBWYWx1ZSA9IHZhbHVlO1xyXG4gICAgaW5wVmFsdWVcclxuICAgICAgPyAocGFyYW1zICs9ICcmJyArIHRoaXMuSW5wdXRGaWVsZHMuc2VhcmNoa2V5ICsgJz0nICsgaW5wVmFsdWUpXHJcbiAgICAgIDogJyc7XHJcbiAgICByZXR1cm4gcGFyYW1zO1xyXG4gIH1cclxuICByZW1vdmVjaGlwKG9iaikge1xyXG4gICAgY29uc3QgaW5kZXggPSB0aGlzLmNoaXBTZWxlY3RlZE9iai5pbmRleE9mKG9iaik7XHJcblxyXG4gICAgaWYgKGluZGV4ID49IDApIHtcclxuICAgICAgdGhpcy5jaGlwU2VsZWN0ZWRPYmouc3BsaWNlKGluZGV4LCAxKTtcclxuICAgICAgY29uc29sZS5sb2codGhpcy5jaGlwU2VsZWN0ZWRPYmopO1xyXG4gICAgICB0aGlzLmNoaXBTZWxlY3RlZElkLnNwbGljZShpbmRleCwgMSk7XHJcbiAgICAgIGNvbnNvbGUubG9nKHRoaXMuY2hpcFNlbGVjdGVkSWQpO1xyXG4gICAgICB0aGlzLmZvcm1rZXlhcnIuc3BsaWNlKGluZGV4LCAxKTtcclxuICAgICAgY29uc29sZS5sb2coJ3RoaXMuZm9ybWtleWFycicsIHRoaXMuZm9ybWtleWFycik7XHJcblxyXG4gICAgICB0aGlzLkRyb3BJbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlID0gJyc7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWQoKTtcclxuICAgIH1cclxuICB9XHJcbiAgcHVibGljIHZlblNlbGVjdGVkKGRhdGEpOiB2b2lkIHtcclxuICAgIHRoaXMuRHJvcElucHV0Lm5hdGl2ZUVsZW1lbnQudmFsdWUgPSAnJztcclxuICAgIGNvbnNvbGUubG9nKCdldmVudC5vcHRpb24udmFsdWUnLCBkYXRhKTtcclxuICAgIHRoaXMuc2VsZWN0dmVuQnlOYW1lKGRhdGFbdGhpcy5jb21wYXJla2V5KGRhdGEpXSk7XHJcbiAgICBjb25zb2xlLmxvZygnY2hpcFNlbGVjdGVkdmVuaWQnLCB0aGlzLmNoaXBTZWxlY3RlZE9iaik7XHJcbiAgfVxyXG4gIGZvcm1rZXlhcnI6IGFueSA9IFtdO1xyXG4gIHByaXZhdGUgc2VsZWN0dmVuQnlOYW1lKHZlbikge1xyXG4gICAgbGV0IGZvdW5kZW1wMSA9IHRoaXMuY2hpcFNlbGVjdGVkT2JqLmZpbHRlcihcclxuICAgICAgKGUpID0+IGVbdGhpcy5jb21wYXJla2V5KGUpXSA9PSB2ZW5cclxuICAgICk7XHJcbiAgICBpZiAoZm91bmRlbXAxLmxlbmd0aCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBsZXQgZm91bmRlbXAgPSB0aGlzLkRyb3Bkb3duZGF0YS5maWx0ZXIoXHJcbiAgICAgIChlKSA9PiBlW3RoaXMuY29tcGFyZWtleShlKV0gPT0gdmVuXHJcbiAgICApO1xyXG4gICAgaWYgKGZvdW5kZW1wLmxlbmd0aCkge1xyXG4gICAgICB0aGlzLmNoaXBTZWxlY3RlZE9iai5wdXNoKGZvdW5kZW1wWzBdKTtcclxuICAgICAgaWYgKHRoaXMuSW5wdXRGaWVsZHM/Lk91dHB1dGtleSkge1xyXG4gICAgICAgIHRoaXMuY2hpcFNlbGVjdGVkSWQucHVzaChmb3VuZGVtcFswXVt0aGlzLklucHV0RmllbGRzPy5PdXRwdXRrZXldKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5JbnB1dEZpZWxkcz8uZm9ybWtleSkge1xyXG4gICAgICAgIHRoaXMuZm9ybWtleWFyci5wdXNoKGZvdW5kZW1wWzBdW3RoaXMuSW5wdXRGaWVsZHM/LmZvcm1rZXldKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLmNoaXBTZWxlY3RlZElkLnB1c2goZm91bmRlbXBbMF0uaWQpO1xyXG4gICAgICB9XHJcbiAgICAgIGNvbnNvbGUubG9nKCdmb3Jta2V5YXJyMTInLCB0aGlzLmZvcm1rZXlhcnIpO1xyXG4gICAgICB0aGlzLnNlbGVjdGVkKCk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIGNvbXBhcmVrZXkoZSkge1xyXG4gICAgaWYgKHRoaXMuSW5wdXRGaWVsZHM/LmNvbXBhcmVrZXkpIHtcclxuICAgICAgcmV0dXJuIHRoaXMuSW5wdXRGaWVsZHM/LmNvbXBhcmVrZXk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBpZiAoZT8uaWQpIHtcclxuICAgICAgICByZXR1cm4gJ2lkJztcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5JbnB1dEZpZWxkcy5kaXNwbGF5a2V5O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
399
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidnMtY2hpcGRkLWNtcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdW5uaWxvdWlzLm9yZy92cy1jaGlwZHJvcGRvd24vIiwic291cmNlcyI6WyJsaWIvdnMtY2hpcGRkLWNtcC92cy1jaGlwZGQtY21wLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFFTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUdMLHNCQUFzQixHQUN2QixNQUFNLGdDQUFnQyxDQUFDO0FBQ3hDLE9BQU8sRUFDTCxZQUFZLEVBQ1osb0JBQW9CLEVBQ3BCLEdBQUcsRUFFSCxTQUFTLEVBQ1QsUUFBUSxFQUNSLFNBQVMsRUFDVCxHQUFHLEdBQ0osTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQW9CLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNuRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBTXJEO0lBRUUsOEJBQ1UsT0FBOEIsRUFDOUIsRUFBZTtRQURmLFlBQU8sR0FBUCxPQUFPLENBQXVCO1FBQzlCLE9BQUUsR0FBRixFQUFFLENBQWE7UUFJaEIsZUFBVSxHQUFZLElBQUksQ0FBQztRQVcxQixjQUFTLEdBQXNCLElBQUksWUFBWSxFQUFPLENBQUM7UUFFeEQsd0JBQW1CLEdBQWEsQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFeEQsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUMxQixnQkFBVyxHQUFXLENBQUMsQ0FBQztRQUN4QixpQkFBWSxHQUFRLEVBQUUsQ0FBQztRQUN2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Q2hDLGFBQU8sSUFBSSxDQUFDLFdBQVcsMENBQUUsVUFBVSxDQUFDO1NBQ3JDO2FBQU07WUFDTCxJQUFJLENBQUMsYUFBRCxDQUFDLHVCQUFELENBQUMsQ0FBRSxFQUFFLEVBQUU7Z0JBQ1QsT0FBTyxJQUFJLENBQUM7YUFDYjtpQkFBTTtnQkFDTCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDO2FBQ3BDO1NBQ0Y7SUFDSCxDQUFDOztnQkFuWWtCLHFCQUFxQjtnQkFDMUIsV0FBVzs7SUFFaEI7UUFBUixLQUFLLEVBQUU7NkRBQWtCO0lBQ2pCO1FBQVIsS0FBSyxFQUFFOzJEQUFnQjtJQUNmO1FBQVIsS0FBSyxFQUFFOzREQUE0QjtJQU1wQztRQUpDLFNBQVMsQ0FBQyxtQkFBbUIsRUFBRTtZQUM5QixNQUFNLEVBQUUsS0FBSztZQUNiLElBQUksRUFBRSxzQkFBc0I7U0FDN0IsQ0FBQzt5REFDOEI7SUFHaEM7UUFEQyxTQUFTLENBQUMsc0JBQXNCLENBQUM7cUVBQ1U7SUFDdEI7UUFBckIsU0FBUyxDQUFDLFNBQVMsQ0FBQztvRUFBcUM7SUFDaEQ7UUFBVCxNQUFNLEVBQUU7MkRBQXdEO0lBQ3pDO1FBQXZCLFNBQVMsQ0FBQyxXQUFXLENBQUM7MkRBQWdCO0lBVTlCO1FBQVIsS0FBSyxFQUFFOzJEQUF1QjtJQTlCcEIsb0JBQW9CO1FBTGhDLFNBQVMsQ0FBQztZQUNULFFBQVEsRUFBRSxtQkFBbUI7WUFDN0IscStEQUE2Qzs7U0FFOUMsQ0FBQztPQUNXLG9CQUFvQixDQXVZaEM7SUFBRCwyQkFBQztDQUFBLEFBdllELElBdVlDO1NBdllZLG9CQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBJbnB1dCxcclxuICBPdXRwdXQsXHJcbiAgU2ltcGxlQ2hhbmdlcyxcclxuICBWaWV3Q2hpbGQsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7XHJcbiAgTWF0QXV0b2NvbXBsZXRlU2VsZWN0ZWRFdmVudCxcclxuICBNYXRBdXRvY29tcGxldGUsXHJcbiAgTWF0QXV0b2NvbXBsZXRlVHJpZ2dlcixcclxufSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9hdXRvY29tcGxldGUnO1xyXG5pbXBvcnQge1xyXG4gIGRlYm91bmNlVGltZSxcclxuICBkaXN0aW5jdFVudGlsQ2hhbmdlZCxcclxuICB0YXAsXHJcbiAgZmlsdGVyLFxyXG4gIHN3aXRjaE1hcCxcclxuICBmaW5hbGl6ZSxcclxuICB0YWtlVW50aWwsXHJcbiAgbWFwLFxyXG59IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgZnJvbSwgT2JzZXJ2YWJsZSwgZnJvbUV2ZW50IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IFZzQ2hpcGRyb3Bkb3duU2VydmljZSB9IGZyb20gJy4uL3ZzLWNoaXBkcm9wZG93bi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Db250cm9sLCBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IENPTU1BLCBFTlRFUiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9rZXljb2Rlcyc7XHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLXZzLWNoaXBkZC1jbXAnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi92cy1jaGlwZGQtY21wLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi92cy1jaGlwZGQtY21wLmNvbXBvbmVudC5zY3NzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBWc0NoaXBkZENtcENvbXBvbmVudCB7XHJcbiAgRHJvZG93bkxvYWRpbmc6IGJvb2xlYW47XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHNlcnZpY2U6IFZzQ2hpcGRyb3Bkb3duU2VydmljZSxcclxuICAgIHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyXHJcbiAgKSB7fVxyXG4gIEBJbnB1dCgpIElucHV0RmllbGRzOiBhbnk7XHJcbiAgQElucHV0KCkgUmVzZXRGb3JtOiBhbnk7XHJcbiAgQElucHV0KCkgQmFja2VuZGFwaTogYm9vbGVhbiA9IHRydWU7XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ2F1dG9Db21wbGV0ZUlucHV0Jywge1xyXG4gICAgc3RhdGljOiBmYWxzZSxcclxuICAgIHJlYWQ6IE1hdEF1dG9jb21wbGV0ZVRyaWdnZXIsXHJcbiAgfSlcclxuICB0cmlnZ2VyOiBNYXRBdXRvY29tcGxldGVUcmlnZ2VyO1xyXG5cclxuICBAVmlld0NoaWxkKE1hdEF1dG9jb21wbGV0ZVRyaWdnZXIpXHJcbiAgYXV0b2NvbXBsZXRlVHJpZ2dlcjogTWF0QXV0b2NvbXBsZXRlVHJpZ2dlcjtcclxuICBAVmlld0NoaWxkKCdzY3JvbGxsJykgbWF0QXV0b2NvbXBsZXRlQXBwOiBNYXRBdXRvY29tcGxldGU7XHJcbiAgQE91dHB1dCgpIGRhdGFFdmVudDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICBAVmlld0NoaWxkKCdEcm9wSW5wdXQnKSBEcm9wSW5wdXQ6IGFueTtcclxuICByZWFkb25seSBzZXBhcmF0b3JzS2V5c0NvZGVzOiBudW1iZXJbXSA9IFtFTlRFUiwgQ09NTUFdO1xyXG5cclxuICBoYXNfbmV4dDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGN1cnJlbnRwYWdlOiBudW1iZXIgPSAxO1xyXG4gIERyb3Bkb3duZGF0YTogYW55ID0gW107XHJcbiAgaGFzX3ByZXZpb3VzOiBib29sZWFuID0gZmFsc2U7XHJcbiAgRHJvcGRvd25Gb3JtOiBGb3JtR3JvdXA7XHJcbiAgY2hpcFNlbGVjdGVkSWQ6IGFueSA9IFtdO1xyXG4gIGNoaXBTZWxlY3RlZE9iajogYW55ID0gW107XHJcbiAgQElucHV0KCkgZm9ybUdyb3VwITogRm9ybUdyb3VwO1xyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgLy8gaWYgKHRoaXMuZm9ybUdyb3VwKSB7XHJcbiAgICAvLyAgIHRoaXMuRHJvcGRvd25Gb3JtID0gdGhpcy5mb3JtR3JvdXA7XHJcbiAgICAvLyB9IGVsc2Uge1xyXG4gICAgLy8gICB0aGlzLkRyb3Bkb3duRm9ybSA9IHRoaXMuZmIuZ3JvdXAoe1xyXG4gICAgLy8gICAgIHZhbHVlOiAnJyxcclxuICAgIC8vICAgfSk7XHJcbiAgICAvLyB9XHJcbiAgICAvLyB0aGlzLmR1cG5nb25pdCgpO1xyXG5cclxuICAgIC8vIGlmICh0aGlzLklucHV0RmllbGRzPy5kZWZhdWx0dmFsdWUpIHtcclxuICAgIC8vICAgdGhpcy5Ecm9wZG93bkZvcm0uZ2V0KFwidmFsdWVcIikucGF0Y2hWYWx1ZSh0aGlzLklucHV0RmllbGRzPy5kZWZhdWx0dmFsdWUpXHJcbiAgICAvLyAgIHRoaXMuY2hpcFNlbGVjdGVkT2JqID0gdGhpcy5JbnB1dEZpZWxkcz8uZGVmYXVsdHZhbHVlXHJcbiAgICAvLyAgIGlmICh0aGlzLmNoaXBTZWxlY3RlZE9iai5sZW5ndGggPiAwKSB7XHJcbiAgICAvLyAgICAgZm9yIChsZXQgZm91bmRlbXAgb2YgdGhpcy5jaGlwU2VsZWN0ZWRPYmopIHtcclxuICAgIC8vICAgICAgIGlmICh0aGlzLklucHV0RmllbGRzPy5PdXRwdXRrZXkpIHtcclxuICAgIC8vICAgICAgICAgdGhpcy5jaGlwU2VsZWN0ZWRJZC5wdXNoKGZvdW5kZW1wW3RoaXMuSW5wdXRGaWVsZHM/Lk91dHB1dGtleV0pXHJcblxyXG4gICAgLy8gICAgICAgfVxyXG4gICAgLy8gICAgICAgZWxzZSB7XHJcbiAgICAvLyAgICAgICAgIHRoaXMuY2hpcFNlbGVjdGVkSWQucHVzaChmb3VuZGVtcC5pZClcclxuXHJcbiAgICAvLyAgICAgICB9XHJcbiAgICAvLyAgICAgfVxyXG4gICAgLy8gICAgIHRoaXMuc2VsZWN0ZWQoKVxyXG4gICAgLy8gICB9XHJcblxyXG4gICAgLy8gfVxyXG4gICAgLy8gaWYgKHRoaXMuSW5wdXRGaWVsZHM/LmZyb25lbnRkYXRhKSB7XHJcbiAgICAvLyAgIHRoaXMuRHJvcGRvd25kYXRhID0gdGhpcy5JbnB1dEZpZWxkcz8uZGF0YVxyXG5cclxuICAgIC8vIH1cclxuICAgIC8vIGVsc2Uge1xyXG4gICAgLy8gICB0aGlzLmdldGRyb3Bkb3duKCcnKVxyXG4gICAgLy8gfVxyXG4gIH1cclxuICBsb29vcCgpIHtcclxuICAgIGZvciAobGV0IGZvdW5kZW1wIG9mIHRoaXMuY2hpcFNlbGVjdGVkT2JqKSB7XHJcbiAgICAgIGlmKCEoZm91bmRlbXAgaW5zdGFuY2VvZiBOdW1iZXIpKXtcclxuICAgICAgICBpZiAodGhpcy5JbnB1dEZpZWxkcz8uT3V0cHV0a2V5KSB7XHJcbiAgICAgICAgICB0aGlzLmNoaXBTZWxlY3RlZElkLnB1c2goZm91bmRlbXBbdGhpcy5JbnB1dEZpZWxkcz8uT3V0cHV0a2V5XSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICh0aGlzLklucHV0RmllbGRzPy5mb3Jta2V5KSB7XHJcbiAgICAgICAgICB0aGlzLmZvcm1rZXlhcnIucHVzaChmb3VuZGVtcFt0aGlzLklucHV0RmllbGRzPy5mb3Jta2V5XSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMuY2hpcFNlbGVjdGVkSWQucHVzaChmb3VuZGVtcC5pZCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIH1cclxuICAgICBcclxuICB9XHJcbiAgZHVwbmdvbml0KCkge1xyXG4gICAgaWYgKHRoaXMuZm9ybUdyb3VwKSB7XHJcbiAgICAgIHRoaXMuRHJvcGRvd25Gb3JtID0gdGhpcy5mb3JtR3JvdXA7XHJcbiAgICAgIGlmICghdGhpcy5Ecm9wZG93bkZvcm0uY29udGFpbnModGhpcy5JbnB1dEZpZWxkcz8uZm9ybWNvbnRyb2xuYW1lKSkge1xyXG4gICAgICAgIHRoaXMuRHJvcGRvd25Gb3JtLmFkZENvbnRyb2woXHJcbiAgICAgICAgICB0aGlzLmR5bmFtY2lmb3JtY29udHJvbHBhcmVudCgpLFxyXG4gICAgICAgICAgbmV3IEZvcm1Db250cm9sKHsgdmFsdWU6IFtdLCBkaXNhYmxlZDogdGhpcy5JbnB1dEZpZWxkcz8uZGlzYWJsZWQgfSlcclxuICAgICAgICApO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLkRyb3Bkb3duRm9ybSA9IHRoaXMuZmIuZ3JvdXAoe1xyXG4gICAgICAgIGNoaXB2YWx1ZTogW10sXHJcbiAgICAgIH0pO1xyXG5cclxuICAgIH1cclxuICAgIGNvbnNvbGUubG9nKCd0aGlzLkRyb3Bkb3duRm9ybScsIHRoaXMuRHJvcGRvd25Gb3JtLnZhbHVlKTtcclxuICAgIC8vIHRoaXMuY2hpcFNlbGVjdGVkT2JqID1cclxuICAgIC8vICAgdGhpcy5Ecm9wZG93bkZvcm0uZ2V0KHRoaXMuZHluYW1jaWZvcm1jb250cm9scGFyZW50KCkpLnZhbHVlICYmXHJcbiAgICAvLyAgIHRoaXMuRHJvcGRvd25Gb3JtLmdldCh0aGlzLmR5bmFtY2lmb3JtY29udHJvbHBhcmVudCgpKS52YWx1ZS5sZW5ndGggIT09IDBcclxuICAgIC8vICAgICA/IHRoaXMuRHJvcGRvd25Gb3JtLmdldCh0aGlzLmR5bmFtY2lmb3JtY29udHJvbHBhcmVudCgpKS52YWx1ZVxyXG4gICAgLy8gICAgIDogW107XHJcbiAgICAvLyAgICAgY29uc29sZS5sb2coJ3RoaXMuY2hpcFNlbGVjdGVkT2JqJywgdGhpcy5jaGlwU2VsZWN0ZWRPYmopO1xyXG5cclxuICAgIGlmICh0aGlzLklucHV0RmllbGRzPy5kZWZhdWx0dmFsdWUpIHtcclxuICAgICAgLy8gdGhpcy5Ecm9wZG93bkZvcm0uZ2V0KHRoaXMuZHluYW1jaWZvcm1jb250cm9scGFyZW50KCkpLnBhdGNoVmFsdWUoXHJcbiAgICAgIC8vICAgdGhpcy5JbnB1dEZpZWxkcz8uZm9ybWtleVxyXG4gICAgICAvLyAgICAgPyB0aGlzLklucHV0RmllbGRzPy5kZWZhdWx0dmFsdWVbdGhpcy5JbnB1dEZpZWxkcz8uZm9ybWtleV1cclxuICAgICAgLy8gICAgIDogdGhpcy5JbnB1dEZpZWxkcz8uZGVmYXVsdHZhbHVlXHJcbiAgICAgIC8vICk7XHJcbiAgICAgIC8vIHRoaXMuRHJvcGRvd25Gb3JtLmdldCh0aGlzLmR5bmFtY2lmb3JtY29udHJvbHBhcmVudCgpKS5wYXRjaFZhbHVlKHRoaXMuSW5wdXRGaWVsZHM/LmRlZmF1bHR2YWx1ZSk7XHJcbiAgICAgIHRoaXMuY2hpcFNlbGVjdGVkT2JqID0gdGhpcy5JbnB1dEZpZWxkcz8uZGVmYXVsdHZhbHVlO1xyXG4gICAgICB0aGlzLmNoaXBTZWxlY3RlZElkID0gW107XHJcbiAgICAgIHRoaXMuZm9ybWtleWFyciA9IFtdO1xyXG4gICAgICBpZiAodGhpcy5jaGlwU2VsZWN0ZWRPYmoubGVuZ3RoID4gMCkge1xyXG4gICAgICAgIHRoaXMubG9vb3AoKTtcclxuICAgICAgICB0aGlzLnNlbGVjdGVkKCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBpZiAoXHJcbiAgICAgIHRoaXMuRHJvcGRvd25Gb3JtLmdldCh0aGlzLmR5bmFtY2lmb3JtY29udHJvbHBhcmVudCgpKS52YWx1ZSAmJlxyXG4gICAgICB0aGlzLkRyb3Bkb3duRm9ybS5nZXQodGhpcy5keW5hbWNpZm9ybWNvbnRyb2xwYXJlbnQoKSkudmFsdWUubGVuZ3RoICE9PSAwXHJcbiAgICApIHtcclxuICAgICAgdGhpcy5jaGlwU2VsZWN0ZWRPYmogPSB0aGlzLkRyb3Bkb3duRm9ybS5nZXQoXHJcbiAgICAgICAgdGhpcy5keW5hbWNpZm9ybWNvbnRyb2xwYXJlbnQoKVxyXG4gICAgICApLnZhbHVlO1xyXG4gICAgICBjb25zb2xlLmxvZygndGVzdCcsdGhpcy5jaGlwU2VsZWN0ZWRPYmogPSB0aGlzLkRyb3Bkb3duRm9ybS5nZXQoXHJcbiAgICAgICAgdGhpcy5keW5hbWNpZm9ybWNvbnRyb2xwYXJlbnQoKVxyXG4gICAgICApLnZhbHVlKVxyXG4gICAgICB0aGlzLmNoaXBTZWxlY3RlZElkID0gW107XHJcbiAgICAgIHRoaXMuZm9ybWtleWFyciA9IFtdO1xyXG4gICAgICB0aGlzLmxvb29wKCk7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWQoKTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLklucHV0RmllbGRzPy5mcm9uZW50ZGF0YSkge1xyXG4gICAgICB0aGlzLkRyb3Bkb3duZGF0YSA9IHRoaXMuSW5wdXRGaWVsZHM/LmRhdGE7XHJcbiAgICB9XHJcbiAgICB0aGlzLmRyb3Bkb3duc2VhcmNoKCk7XHJcbiAgICAvLyBlbHNlIHtcclxuICAgIC8vICAgdGhpcy5nZXRkcm9wZG93bignJylcclxuICAgIC8vIH1cclxuICB9XHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgaWYgKGNoYW5nZXMuSW5wdXRGaWVsZHMgJiYgY2hhbmdlcy5JbnB1dEZpZWxkcy5jdXJyZW50VmFsdWUpIHtcclxuICAgICAgY29uc29sZS5sb2coJ1N1bW1hcnkgTG9nIENoYW5nZXMnKTtcclxuICAgICAgdGhpcy5jdXJyZW50cGFnZSA9IDE7XHJcbiAgICAgIHRoaXMuZHVwbmdvbml0KCk7XHJcbiAgICB9XHJcbiAgICBpZiAoY2hhbmdlcy5SZXNldEZvcm0gJiYgY2hhbmdlcy5SZXNldEZvcm0uY3VycmVudFZhbHVlKSB7XHJcbiAgICAgIGNvbnNvbGUubG9nKCdoaXR0ZWQnKTtcclxuICAgICAgLy8gdGhpcy5Ecm9wZG93bkZvcm0ucmVzZXQoKTtcclxuICAgICAgdGhpcy5jdXJyZW50cGFnZSA9IDE7XHJcbiAgICAgIHRoaXMuZHVwbmdvbml0KCk7XHJcbiAgICAgIHRoaXMuY2hpcFNlbGVjdGVkSWQgPSBbXTtcclxuICAgICAgdGhpcy5mb3Jta2V5YXJyID0gW107XHJcbiAgICAgIHRoaXMuY2hpcFNlbGVjdGVkT2JqID0gW107XHJcbiAgICAgIHRoaXMuZGF0YUV2ZW50LmVtaXQoW10pO1xyXG4gICAgfVxyXG4gIH1cclxuICAvLyBwdWJsaWMgZGlzcGxheWRldmVsb3BjbGllbnQoY2x0OiBhbnksIGtleTogc3RyaW5nKSB7XHJcbiAgLy8gICByZXR1cm4ga2V5W2NsdF07XHJcbiAgLy8gfVxyXG4gIGF1dG9jb21wbGV0ZUFwcFNjcm9sbCgpIHtcclxuICAgIGlmICghdGhpcy5JbnB1dEZpZWxkcz8uZnJvbmVudGRhdGEpIHtcclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgaWYgKFxyXG4gICAgICAgICAgdGhpcy5tYXRBdXRvY29tcGxldGVBcHAgJiZcclxuICAgICAgICAgIHRoaXMuYXV0b2NvbXBsZXRlVHJpZ2dlciAmJlxyXG4gICAgICAgICAgdGhpcy5tYXRBdXRvY29tcGxldGVBcHAucGFuZWxcclxuICAgICAgICApIHtcclxuICAgICAgICAgIGZyb21FdmVudCh0aGlzLm1hdEF1dG9jb21wbGV0ZUFwcC5wYW5lbC5uYXRpdmVFbGVtZW50LCAnc2Nyb2xsJylcclxuICAgICAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICAgICAgbWFwKCh4KSA9PiB0aGlzLm1hdEF1dG9jb21wbGV0ZUFwcC5wYW5lbC5uYXRpdmVFbGVtZW50LnNjcm9sbFRvcCksXHJcbiAgICAgICAgICAgICAgdGFrZVVudGlsKFxyXG4gICAgICAgICAgICAgICAgdGhpcy5hdXRvY29tcGxldGVUcmlnZ2VyLnBhbmVsQ2xvc2luZ0FjdGlvbnMgYXMgT2JzZXJ2YWJsZTxhbnk+XHJcbiAgICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICApXHJcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKHgpID0+IHtcclxuICAgICAgICAgICAgICBjb25zdCBzY3JvbGxUb3AgPVxyXG4gICAgICAgICAgICAgICAgdGhpcy5tYXRBdXRvY29tcGxldGVBcHAucGFuZWwubmF0aXZlRWxlbWVudC5zY3JvbGxUb3A7XHJcbiAgICAgICAgICAgICAgY29uc3Qgc2Nyb2xsSGVpZ2h0ID1cclxuICAgICAgICAgICAgICAgIHRoaXMubWF0QXV0b2NvbXBsZXRlQXBwLnBhbmVsLm5hdGl2ZUVsZW1lbnQuc2Nyb2xsSGVpZ2h0O1xyXG4gICAgICAgICAgICAgIGNvbnN0IGVsZW1lbnRIZWlnaHQgPVxyXG4gICAgICAgICAgICAgICAgdGhpcy5tYXRBdXRvY29tcGxldGVBcHAucGFuZWwubmF0aXZlRWxlbWVudC5jbGllbnRIZWlnaHQ7XHJcbiAgICAgICAgICAgICAgY29uc3QgYXRCb3R0b20gPSBzY3JvbGxIZWlnaHQgLSAxIDw9IHNjcm9sbFRvcCArIGVsZW1lbnRIZWlnaHQ7XHJcbiAgICAgICAgICAgICAgaWYgKGF0Qm90dG9tKSB7XHJcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5oYXNfbmV4dCA9PT0gdHJ1ZSkge1xyXG4gICAgICAgICAgICAgICAgICBsZXQgdmFsdWUgPSB0aGlzLkRyb3BJbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlO1xyXG4gICAgICAgICAgICAgICAgICBsZXQgcGFyYW1zID0gdGhpcy5zZWFyY2hwYXJhbXModmFsdWUpO1xyXG4gICAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbnRwYWdlID0gdGhpcy5jdXJyZW50cGFnZSArIDE7XHJcbiAgICAgICAgICAgICAgICAgIGlmICh0aGlzLmN1cnJlbnRwYWdlID4gMSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2VydmljZVxyXG4gICAgICAgICAgICAgICAgICAgICAgLkdldEFwaShcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5JbnB1dEZpZWxkcy51cmwgKyAnP3BhZ2U9JyArIHRoaXMuY3VycmVudHBhZ2UsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtc1xyXG4gICAgICAgICAgICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICAgICAgICAgICAgLnN1YnNjcmliZSgocmVzdWx0czogYW55W10pID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGRhdGFzID0gcmVzdWx0c1snZGF0YSddO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgZGF0YXBhZ2luYXRpb24gPSByZXN1bHRzWydwYWdpbmF0aW9uJ107XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuRHJvcGRvd25kYXRhID0gdGhpcy5Ecm9wZG93bmRhdGEuY29uY2F0KGRhdGFzKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coJ3RoaXMuRHJvcGRvd25kYXRhJywgdGhpcy5Ecm9wZG93bmRhdGEpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5Ecm9wZG93bmRhdGEubGVuZ3RoID49IDApIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmhhc19uZXh0ID0gZGF0YXBhZ2luYXRpb24uaGFzX25leHQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5oYXNfcHJldmlvdXMgPSBkYXRhcGFnaW5hdGlvbi5oYXNfcHJldmlvdXM7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50cGFnZSA9IGRhdGFwYWdpbmF0aW9uLmluZGV4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcbiAgZHJvcGRvd25zZWFyY2goKSB7XHJcbiAgICBjb25zdCBjb250cm9sTmFtZSA9IHRoaXMuZHluYW1jaWZvcm1jb250cm9scGFyZW50KCk7XHJcbiAgICBjb25zdCBjb250cm9sID0gdGhpcy5Ecm9wZG93bkZvcm0uZ2V0KGNvbnRyb2xOYW1lKTtcclxuICAgIGlmIChjb250cm9sICYmICF0aGlzLklucHV0RmllbGRzPy5mcm9uZW50ZGF0YSkge1xyXG4gICAgICB0aGlzLkRyb3Bkb3duRm9ybS5nZXQodGhpcy5keW5hbWNpZm9ybWNvbnRyb2xwYXJlbnQoKSlcclxuICAgICAgICAudmFsdWVDaGFuZ2VzLnBpcGUoXHJcbiAgICAgICAgICBkZWJvdW5jZVRpbWUoMjAwKSxcclxuICAgICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXHJcbiAgICAgICAgICB0YXAoKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLkRyb2Rvd25Mb2FkaW5nID0gdHJ1ZTtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coJ2luc2lkZSB0YXAnKTtcclxuICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgc3dpdGNoTWFwKCh2YWx1ZSkgPT4ge1xyXG4gICAgICAgICAgICBsZXQgcGFyYW1zID0gdGhpcy5zZWFyY2hwYXJhbXModmFsdWUpO1xyXG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRwYWdlID0gMTtcclxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuc2VydmljZVxyXG4gICAgICAgICAgICAgIC5HZXRBcGkoXHJcbiAgICAgICAgICAgICAgICB0aGlzLklucHV0RmllbGRzLnVybCArICc/cGFnZT0nICsgdGhpcy5jdXJyZW50cGFnZSxcclxuICAgICAgICAgICAgICAgIHBhcmFtc1xyXG4gICAgICAgICAgICAgIClcclxuICAgICAgICAgICAgICAucGlwZShcclxuICAgICAgICAgICAgICAgIGZpbmFsaXplKCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgdGhpcy5Ecm9kb3duTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgfSlcclxuICAgICAgICApXHJcbiAgICAgICAgLnN1YnNjcmliZSgocmVzdWx0czogYW55W10pID0+IHtcclxuICAgICAgICAgIGxldCBkYXRhcyA9IHJlc3VsdHNbJ2RhdGEnXTtcclxuICAgICAgICAgIHRoaXMuRHJvcGRvd25kYXRhID0gZGF0YXM7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIGdldGRyb3Bkb3duKHZhbHVlKSB7XHJcblxyXG4gICAgdGhpcy5jdXJyZW50cGFnZSA9IDE7XHJcbiAgICBpZiAoIHRoaXMuSW5wdXRGaWVsZHMudXJsKSB7XHJcbiAgICAgIGxldCBwYXJhbXMgPSB0aGlzLnNlYXJjaHBhcmFtcyh2YWx1ZSk7XHJcbiAgICAgIHRoaXMuc2VydmljZVxyXG4gICAgICAgIC5HZXRBcGkodGhpcy5JbnB1dEZpZWxkcy51cmwgKyAnP3BhZ2U9JyArIHRoaXMuY3VycmVudHBhZ2UsIHBhcmFtcylcclxuICAgICAgICAuc3Vic2NyaWJlKChyZXN1bHRzOiBhbnlbXSkgPT4ge1xyXG4gICAgICAgICAgbGV0IGRhdGFzID0gcmVzdWx0c1snZGF0YSddO1xyXG4gICAgICAgICAgbGV0IGRhdGFwYWdpbmF0aW9uID0gcmVzdWx0c1sncGFnaW5hdGlvbiddO1xyXG4gICAgICAgICAgdGhpcy5Ecm9wZG93bmRhdGEgPSBkYXRhcztcclxuICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLnRyaWdnZXIub3BlblBhbmVsKCk7XHJcbiAgICAgICAgICB9LCAwKTtcclxuICAgICAgICAgIGlmICh0aGlzLkRyb3Bkb3duZGF0YS5sZW5ndGggPj0gMCkge1xyXG4gICAgICAgICAgICB0aGlzLmhhc19uZXh0ID0gZGF0YXBhZ2luYXRpb24uaGFzX25leHQ7XHJcbiAgICAgICAgICAgIHRoaXMuaGFzX3ByZXZpb3VzID0gZGF0YXBhZ2luYXRpb24uaGFzX3ByZXZpb3VzO1xyXG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRwYWdlID0gZGF0YXBhZ2luYXRpb24uaW5kZXg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIE91dHB1dGRhdGE6IGFueSA9IFtdO1xyXG4gIGR5bmFtY2lmb3JtY29udHJvbHBhcmVudCgpIHtcclxuICAgIHJldHVybiB0aGlzLklucHV0RmllbGRzPy5mb3JtY29udHJvbG5hbWUgJiYgdGhpcy5mb3JtR3JvdXBcclxuICAgICAgPyB0aGlzLklucHV0RmllbGRzPy5mb3JtY29udHJvbG5hbWVcclxuICAgICAgOiAnY2hpcHZhbHVlJztcclxuICB9XHJcbiAgc2VsZWN0ZWQoKSB7XHJcbiAgICB0aGlzLk91dHB1dGRhdGEgPSB0aGlzLmNoaXBTZWxlY3RlZE9iajtcclxuICAgIGlmICh0aGlzLklucHV0RmllbGRzPy5PdXRwdXRrZXkpIHtcclxuICAgICAgdGhpcy5PdXRwdXRkYXRhID0gdGhpcy5jaGlwU2VsZWN0ZWRJZDtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLmZvcm1Hcm91cCAmJiB0aGlzLklucHV0RmllbGRzPy5mb3JtY29udHJvbG5hbWUpIHtcclxuICAgICAgdGhpcy5Ecm9wZG93bkZvcm0uZ2V0KHRoaXMuZHluYW1jaWZvcm1jb250cm9scGFyZW50KCkpLnBhdGNoVmFsdWUoXHJcbiAgICAgICAgdGhpcy5mb3Jta2V5YXJyXHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgICBjb25zb2xlLmxvZyh0aGlzLmZvcm1rZXlhcnIpO1xyXG4gICAgY29uc29sZS5sb2coJ3RoaXMuRHJvcGRvd25Gb3JtLmdldCcsIHRoaXMuRHJvcGRvd25Gb3JtLnZhbHVlKTtcclxuICAgIHRoaXMuZGF0YUV2ZW50LmVtaXQodGhpcy5PdXRwdXRkYXRhKTtcclxuXHJcbiAgICAvLyBsZXQgZGF0YSA9IHRoaXMuRHJvcGRvd25Gb3JtLnZhbHVlLnZhbHVlXHJcbiAgICAvLyBpZiAodGhpcy5JbnB1dEZpZWxkcz8ud2hvbGVkYXRhKSB7XHJcbiAgICAvLyAgIHRoaXMuZGF0YUV2ZW50LmVtaXQodGhpcy5jaGlwU2VsZWN0ZWRPYmopO1xyXG4gICAgLy8gICBpZiAodGhpcy5JbnB1dEZpZWxkcz8uZm9ybWdyb3VwICYmIHRoaXMuSW5wdXRGaWVsZHM/LmZvcm1jb250cm9sbmFtZSkge1xyXG4gICAgLy8gICAgIHRoaXMuSW5wdXRGaWVsZHM/LmZvcm1ncm91cFxyXG4gICAgLy8gICAgICAgLmdldCh0aGlzLklucHV0RmllbGRzPy5mb3JtY29udHJvbG5hbWUpXHJcbiAgICAvLyAgICAgICAucGF0Y2hWYWx1ZSh0aGlzLmNoaXBTZWxlY3RlZE9iaik7XHJcbiAgICAvLyAgIH1cclxuICAgIC8vIH1cclxuICAgIC8vIGVsc2Uge1xyXG4gICAgLy8gICBpZiAodGhpcy5JbnB1dEZpZWxkcz8uT3V0cHV0a2V5KSB7XHJcbiAgICAvLyAgICAgdGhpcy5kYXRhRXZlbnQuZW1pdCh0aGlzLmNoaXBTZWxlY3RlZElkKTtcclxuICAgIC8vICAgICBpZiAodGhpcy5JbnB1dEZpZWxkcz8uZm9ybWdyb3VwICYmIHRoaXMuSW5wdXRGaWVsZHM/LmZvcm1jb250cm9sbmFtZSkge1xyXG4gICAgLy8gICAgICAgdGhpcy5JbnB1dEZpZWxkcz8uZm9ybWdyb3VwXHJcbiAgICAvLyAgICAgICAgIC5nZXQodGhpcy5JbnB1dEZpZWxkcz8uZm9ybWNvbnRyb2xuYW1lKVxyXG4gICAgLy8gICAgICAgICAucGF0Y2hWYWx1ZSh0aGlzLmNoaXBTZWxlY3RlZElkKTtcclxuICAgIC8vICAgICB9XHJcbiAgICAvLyAgIH1cclxuICAgIC8vICAgZWxzZSB7XHJcbiAgICAvLyAgICAgdGhpcy5kYXRhRXZlbnQuZW1pdCh0aGlzLmNoaXBTZWxlY3RlZE9iaik7XHJcbiAgICAvLyAgICAgaWYgKHRoaXMuSW5wdXRGaWVsZHM/LmZvcm1ncm91cCAmJiB0aGlzLklucHV0RmllbGRzPy5mb3JtY29udHJvbG5hbWUpIHtcclxuICAgIC8vICAgICAgIHRoaXMuSW5wdXRGaWVsZHM/LmZvcm1ncm91cFxyXG4gICAgLy8gICAgICAgICAuZ2V0KHRoaXMuSW5wdXRGaWVsZHM/LmZvcm1jb250cm9sbmFtZSlcclxuICAgIC8vICAgICAgICAgLnBhdGNoVmFsdWUodGhpcy5jaGlwU2VsZWN0ZWRPYmopO1xyXG4gICAgLy8gICAgIH1cclxuICAgIC8vICAgfVxyXG5cclxuICAgIC8vIH1cclxuICB9XHJcbiAgc2VhcmNocGFyYW1zKHZhbHVlKSB7XHJcbiAgICBsZXQgcGFyYW1zID0gJyc7XHJcbiAgICBpZiAodGhpcy5JbnB1dEZpZWxkcy5wYXJhbXMpIHtcclxuICAgICAgcGFyYW1zID0gdGhpcy5JbnB1dEZpZWxkcy5wYXJhbXM7XHJcbiAgICB9XHJcbiAgICBsZXQgaW5wVmFsdWUgPSB2YWx1ZTtcclxuICAgIGlucFZhbHVlXHJcbiAgICAgID8gKHBhcmFtcyArPSAnJicgKyB0aGlzLklucHV0RmllbGRzLnNlYXJjaGtleSArICc9JyArIGlucFZhbHVlKVxyXG4gICAgICA6ICcnO1xyXG4gICAgcmV0dXJuIHBhcmFtcztcclxuICB9XHJcbiAgcmVtb3ZlY2hpcChvYmopIHtcclxuICAgIGNvbnN0IGluZGV4ID0gdGhpcy5jaGlwU2VsZWN0ZWRPYmouaW5kZXhPZihvYmopO1xyXG5cclxuICAgIGlmIChpbmRleCA+PSAwKSB7XHJcbiAgICAgIHRoaXMuY2hpcFNlbGVjdGVkT2JqLnNwbGljZShpbmRleCwgMSk7XHJcbiAgICAgIGNvbnNvbGUubG9nKHRoaXMuY2hpcFNlbGVjdGVkT2JqKTtcclxuICAgICAgdGhpcy5jaGlwU2VsZWN0ZWRJZC5zcGxpY2UoaW5kZXgsIDEpO1xyXG4gICAgICBjb25zb2xlLmxvZyh0aGlzLmNoaXBTZWxlY3RlZElkKTtcclxuICAgICAgdGhpcy5mb3Jta2V5YXJyLnNwbGljZShpbmRleCwgMSk7XHJcbiAgICAgIGNvbnNvbGUubG9nKCd0aGlzLmZvcm1rZXlhcnInLCB0aGlzLmZvcm1rZXlhcnIpO1xyXG5cclxuICAgICAgdGhpcy5Ecm9wSW5wdXQubmF0aXZlRWxlbWVudC52YWx1ZSA9ICcnO1xyXG4gICAgICB0aGlzLnNlbGVjdGVkKCk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIGZvcm1rZXlhcnI6YW55PVtdXHJcbiAgcHVibGljIHZlblNlbGVjdGVkKGRhdGEpOiB2b2lkIHtcclxuICAgIHRoaXMuRHJvcElucHV0Lm5hdGl2ZUVsZW1lbnQudmFsdWUgPSAnJztcclxuICAgIGNvbnNvbGUubG9nKCdldmVudC5vcHRpb24udmFsdWUnLCBkYXRhKTtcclxuICAgIHRoaXMuc2VsZWN0dmVuQnlOYW1lKFxyXG4gICAgICBkYXRhW3RoaXMuY29tcGFyZWtleShkYXRhKV1cclxuICAgICk7XHJcbiAgICBjb25zb2xlLmxvZygnY2hpcFNlbGVjdGVkdmVuaWQnLCB0aGlzLmNoaXBTZWxlY3RlZE9iaik7XHJcbiAgfVxyXG4gIHByaXZhdGUgc2VsZWN0dmVuQnlOYW1lKHZlbikge1xyXG4gICAgbGV0IGZvdW5kZW1wMSA9IHRoaXMuY2hpcFNlbGVjdGVkT2JqLmZpbHRlcihcclxuICAgICAgKGUpID0+IGVbdGhpcy5jb21wYXJla2V5KGUpXSA9PSB2ZW5cclxuICAgICk7XHJcbiAgICBpZiAoZm91bmRlbXAxLmxlbmd0aCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBsZXQgZm91bmRlbXAgPSB0aGlzLkRyb3Bkb3duZGF0YS5maWx0ZXIoXHJcbiAgICAgIChlKSA9PiBlW3RoaXMuY29tcGFyZWtleShlKV0gPT0gdmVuXHJcbiAgICApO1xyXG4gICAgaWYgKGZvdW5kZW1wLmxlbmd0aCkge1xyXG4gICAgICB0aGlzLmNoaXBTZWxlY3RlZE9iai5wdXNoKGZvdW5kZW1wWzBdKTtcclxuICAgICAgaWYgKHRoaXMuSW5wdXRGaWVsZHM/Lk91dHB1dGtleSkge1xyXG4gICAgICAgIHRoaXMuY2hpcFNlbGVjdGVkSWQucHVzaChmb3VuZGVtcFswXVt0aGlzLklucHV0RmllbGRzPy5PdXRwdXRrZXldKTtcclxuICAgICAgfVxyXG4gICAgICBlbHNlIHtcclxuICAgICAgICB0aGlzLmNoaXBTZWxlY3RlZElkLnB1c2goZm91bmRlbXBbMF0uaWQpO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICh0aGlzLklucHV0RmllbGRzPy5mb3Jta2V5KSB7XHJcbiAgICAgICAgdGhpcy5mb3Jta2V5YXJyLnB1c2goZm91bmRlbXBbMF1bdGhpcy5JbnB1dEZpZWxkcz8uZm9ybWtleV0pO1xyXG4gICAgICB9IFxyXG4gICAgICB0aGlzLnNlbGVjdGVkKClcclxuICAgIH1cclxuICB9XHJcbiAgY29tcGFyZWtleShlKSB7XHJcbiAgICBpZiAodGhpcy5JbnB1dEZpZWxkcz8uY29tcGFyZWtleSkge1xyXG4gICAgICByZXR1cm4gdGhpcy5JbnB1dEZpZWxkcz8uY29tcGFyZWtleTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGlmIChlPy5pZCkge1xyXG4gICAgICAgIHJldHVybiAnaWQnO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHJldHVybiB0aGlzLklucHV0RmllbGRzLmRpc3BsYXlrZXk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
|
|
@@ -185,6 +185,7 @@ let VsChipddCmpComponent = class VsChipddCmpComponent {
|
|
|
185
185
|
if ((_e = this.InputFields) === null || _e === void 0 ? void 0 : _e.fronentdata) {
|
|
186
186
|
this.Dropdowndata = (_f = this.InputFields) === null || _f === void 0 ? void 0 : _f.data;
|
|
187
187
|
}
|
|
188
|
+
this.dropdownsearch();
|
|
188
189
|
// else {
|
|
189
190
|
// this.getdropdown('')
|
|
190
191
|
// }
|
|
@@ -252,9 +253,11 @@ let VsChipddCmpComponent = class VsChipddCmpComponent {
|
|
|
252
253
|
}
|
|
253
254
|
dropdownsearch() {
|
|
254
255
|
var _a;
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
256
|
+
const controlName = this.dynamciformcontrolparent();
|
|
257
|
+
const control = this.DropdownForm.get(controlName);
|
|
258
|
+
if (control && !((_a = this.InputFields) === null || _a === void 0 ? void 0 : _a.fronentdata)) {
|
|
259
|
+
this.DropdownForm.get(this.dynamciformcontrolparent())
|
|
260
|
+
.valueChanges.pipe(debounceTime(200), distinctUntilChanged(), tap(() => {
|
|
258
261
|
this.DrodownLoading = true;
|
|
259
262
|
console.log('inside tap');
|
|
260
263
|
}), switchMap((value) => {
|
|
@@ -380,13 +383,12 @@ let VsChipddCmpComponent = class VsChipddCmpComponent {
|
|
|
380
383
|
if ((_a = this.InputFields) === null || _a === void 0 ? void 0 : _a.Outputkey) {
|
|
381
384
|
this.chipSelectedId.push(foundemp[0][(_b = this.InputFields) === null || _b === void 0 ? void 0 : _b.Outputkey]);
|
|
382
385
|
}
|
|
383
|
-
if ((_c = this.InputFields) === null || _c === void 0 ? void 0 : _c.formkey) {
|
|
384
|
-
this.formkeyarr.push(foundemp[0][(_d = this.InputFields) === null || _d === void 0 ? void 0 : _d.formkey]);
|
|
385
|
-
}
|
|
386
386
|
else {
|
|
387
387
|
this.chipSelectedId.push(foundemp[0].id);
|
|
388
388
|
}
|
|
389
|
-
|
|
389
|
+
if ((_c = this.InputFields) === null || _c === void 0 ? void 0 : _c.formkey) {
|
|
390
|
+
this.formkeyarr.push(foundemp[0][(_d = this.InputFields) === null || _d === void 0 ? void 0 : _d.formkey]);
|
|
391
|
+
}
|
|
390
392
|
this.selected();
|
|
391
393
|
}
|
|
392
394
|
}
|
|
@@ -442,7 +444,7 @@ __decorate([
|
|
|
442
444
|
VsChipddCmpComponent = __decorate([
|
|
443
445
|
Component({
|
|
444
446
|
selector: 'lib-vs-chipdd-cmp',
|
|
445
|
-
template: "<div>\r\n <form [formGroup]=\"DropdownForm\" id=\"matChip-size\">\r\n <!-- class=\"mat-chipScroll\" -->\r\n <mat-form-field\r\n appearance=\"outline\"\r\n (click)=\"!this.InputFields?.fronentdata ? this.getdropdown('') : ''\"\r\n >\r\n <mat-label>{{ InputFields?.label | translate }}</mat-label>\r\n <!-- class=\"chip-container\" -->\r\n <mat-chip-list multiple #chipListvendor>\r\n <!-- class=\"mat-chipEx\" -->\r\n <mat-chip\r\n *ngFor=\"let obj of chipSelectedObj\"\r\n [removable]=\"true\"\r\n (removed)=\"removechip(obj)\"\r\n >\r\n {{ obj[InputFields?.displaykey] }}\r\n <mat-icon matChipRemove>cancel</mat-icon>\r\n </mat-chip>\r\n <!-- class=\"matformfieldinputstyle\" -->\r\n <input\r\n #DropInput\r\n [matAutocomplete]=\"scrolll\"\r\n
|
|
447
|
+
template: "<div>\r\n <form [formGroup]=\"DropdownForm\" id=\"matChip-size\">\r\n <!-- class=\"mat-chipScroll\" -->\r\n <mat-form-field\r\n appearance=\"outline\"\r\n (click)=\"!this.InputFields?.fronentdata ? this.getdropdown('') : ''\"\r\n >\r\n <mat-label>{{ InputFields?.label | translate }}</mat-label>\r\n <!-- class=\"chip-container\" -->\r\n <mat-chip-list multiple #chipListvendor>\r\n <!-- class=\"mat-chipEx\" -->\r\n <mat-chip\r\n *ngFor=\"let obj of chipSelectedObj\"\r\n [removable]=\"true\"\r\n (removed)=\"removechip(obj)\"\r\n >\r\n {{ obj[InputFields?.displaykey] }}\r\n <mat-icon matChipRemove>cancel</mat-icon>\r\n </mat-chip>\r\n <!-- class=\"matformfieldinputstyle\" -->\r\n <input\r\n #DropInput\r\n [matAutocomplete]=\"scrolll\"\r\n [matChipInputFor]=\"chipListvendor\"\r\n [matChipInputSeparatorKeyCodes]=\"separatorsKeysCodes\"\r\n [matChipInputAddOnBlur]=\"true\"\r\n #autoCompleteInput=\"matAutocompleteTrigger\"\r\n [formControlName]=\"this.dynamciformcontrolparent()\"\r\n />\r\n </mat-chip-list>\r\n <mat-autocomplete\r\n #scrolll=\"matAutocomplete\"\r\n (opened)=\"autocompleteAppScroll()\"\r\n >\r\n <ng-container>\r\n <mat-option\r\n *ngFor=\"let dropvalues of Dropdowndata\"\r\n [value]=\"\r\n this.InputFields?.formkey\r\n ? dropvalues[this.InputFields?.formkey]\r\n : dropvalues\r\n \"\r\n (onSelectionChange)=\"venSelected(dropvalues)\"\r\n >\r\n {{ dropvalues[InputFields?.displaykey] }}\r\n </mat-option>\r\n </ng-container>\r\n </mat-autocomplete>\r\n </mat-form-field>\r\n </form>\r\n</div>\r\n<!-- (click)=\"selected()\"\r\n -->\r\n<!-- (optionSelected)=\"venSelected($event)\"\r\n -->\r\n",
|
|
446
448
|
styles: [""]
|
|
447
449
|
})
|
|
448
450
|
], VsChipddCmpComponent);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unnilouis.org-vs-chipdropdown.js","sources":["ng://@unnilouis.org/vs-chipdropdown/lib/vs-chipdropdown.service.ts","ng://@unnilouis.org/vs-chipdropdown/lib/vs-chipdropdown.component.ts","ng://@unnilouis.org/vs-chipdropdown/lib/vs-chipdd-cmp/vs-chipdd-cmp.component.ts","ng://@unnilouis.org/vs-chipdropdown/lib/vs-chipdropdown.module.ts","ng://@unnilouis.org/vs-chipdropdown/public-api.ts","ng://@unnilouis.org/vs-chipdropdown/unnilouis.org-vs-chipdropdown.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class VsChipdropdownService {\r\n\r\n constructor(private http: HttpClient) { }\r\n postApi(Apiurl,json={},params): Observable<any> {\r\n const getToken = localStorage.getItem(\"sessionData\");\r\n let tokenValue = JSON.parse(getToken);\r\n let token = tokenValue.token;\r\n console.log(\"params\",params)\r\n let paradata=''\r\n if(params!==undefined && params!==null && params!==''){\r\n paradata=params\r\n }\r\n const headers = { Authorization: \"Token \" + token };\r\n return this.http.post<any>(Apiurl+paradata,json ,{\r\n headers: headers,\r\n \r\n });\r\n }\r\n GetApi(Apiurl,params=''): Observable<any> {\r\n const getToken = localStorage.getItem(\"sessionData\");\r\n let tokenValue = JSON.parse(getToken);\r\n let token = tokenValue.token;\r\n console.log(\"params\",params)\r\n let paradata=''\r\n if(params!==undefined && params!==null && params!==''){\r\n paradata=params\r\n }\r\n const headers = { Authorization: \"Token \" + token };\r\n return this.http.get<any>(Apiurl+paradata,{\r\n headers: headers,\r\n });\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-vs-chipdropdown',\r\n template: `\r\n <p>\r\n vs-chipdropdown works!\r\n </p>\r\n `,\r\n styles: [\r\n ]\r\n})\r\nexport class VsChipdropdownComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","import {\r\n Component,\r\n EventEmitter,\r\n Input,\r\n Output,\r\n SimpleChanges,\r\n ViewChild,\r\n} from '@angular/core';\r\nimport {\r\n MatAutocompleteSelectedEvent,\r\n MatAutocomplete,\r\n MatAutocompleteTrigger,\r\n} from '@angular/material/autocomplete';\r\nimport {\r\n debounceTime,\r\n distinctUntilChanged,\r\n tap,\r\n filter,\r\n switchMap,\r\n finalize,\r\n takeUntil,\r\n map,\r\n} from 'rxjs/operators';\r\nimport { from, Observable, fromEvent } from 'rxjs';\r\nimport { VsChipdropdownService } from '../vs-chipdropdown.service';\r\nimport { FormBuilder, FormControl, FormGroup } from '@angular/forms';\r\nimport { COMMA, ENTER } from '@angular/cdk/keycodes';\r\n@Component({\r\n selector: 'lib-vs-chipdd-cmp',\r\n templateUrl: './vs-chipdd-cmp.component.html',\r\n styleUrls: ['./vs-chipdd-cmp.component.scss'],\r\n})\r\nexport class VsChipddCmpComponent {\r\n DrodownLoading: boolean;\r\n constructor(\r\n private service: VsChipdropdownService,\r\n private fb: FormBuilder\r\n ) {}\r\n @Input() InputFields: any;\r\n @Input() ResetForm: any;\r\n @Input() Backendapi: boolean = true;\r\n\r\n @ViewChild('autoCompleteInput', {\r\n static: false,\r\n read: MatAutocompleteTrigger,\r\n })\r\n trigger: MatAutocompleteTrigger;\r\n\r\n @ViewChild(MatAutocompleteTrigger)\r\n autocompleteTrigger: MatAutocompleteTrigger;\r\n @ViewChild('scrolll') matAutocompleteApp: MatAutocomplete;\r\n @Output() dataEvent: EventEmitter<any> = new EventEmitter<any>();\r\n @ViewChild('DropInput') DropInput: any;\r\n readonly separatorsKeysCodes: number[] = [ENTER, COMMA];\r\n\r\n has_next: boolean = false;\r\n currentpage: number = 1;\r\n Dropdowndata: any = [];\r\n has_previous: boolean = false;\r\n DropdownForm: FormGroup;\r\n chipSelectedId: any = [];\r\n chipSelectedObj: any = [];\r\n @Input() formGroup!: FormGroup;\r\n ngOnInit() {\r\n // if (this.formGroup) {\r\n // this.DropdownForm = this.formGroup;\r\n // } else {\r\n // this.DropdownForm = this.fb.group({\r\n // value: '',\r\n // });\r\n // }\r\n // this.dupngonit();\r\n\r\n // if (this.InputFields?.defaultvalue) {\r\n // this.DropdownForm.get(\"value\").patchValue(this.InputFields?.defaultvalue)\r\n // this.chipSelectedObj = this.InputFields?.defaultvalue\r\n // if (this.chipSelectedObj.length > 0) {\r\n // for (let foundemp of this.chipSelectedObj) {\r\n // if (this.InputFields?.Outputkey) {\r\n // this.chipSelectedId.push(foundemp[this.InputFields?.Outputkey])\r\n\r\n // }\r\n // else {\r\n // this.chipSelectedId.push(foundemp.id)\r\n\r\n // }\r\n // }\r\n // this.selected()\r\n // }\r\n\r\n // }\r\n // if (this.InputFields?.fronentdata) {\r\n // this.Dropdowndata = this.InputFields?.data\r\n\r\n // }\r\n // else {\r\n // this.getdropdown('')\r\n // }\r\n }\r\n looop() {\r\n for (let foundemp of this.chipSelectedObj) {\r\n if(!(foundemp instanceof Number)){\r\n if (this.InputFields?.Outputkey) {\r\n this.chipSelectedId.push(foundemp[this.InputFields?.Outputkey]);\r\n }\r\n if (this.InputFields?.formkey) {\r\n this.formkeyarr.push(foundemp[this.InputFields?.formkey]);\r\n } else {\r\n this.chipSelectedId.push(foundemp.id);\r\n }\r\n }\r\n }\r\n \r\n }\r\n dupngonit() {\r\n if (this.formGroup) {\r\n this.DropdownForm = this.formGroup;\r\n if (!this.DropdownForm.contains(this.InputFields?.formcontrolname)) {\r\n this.DropdownForm.addControl(\r\n this.dynamciformcontrolparent(),\r\n new FormControl({ value: [], disabled: this.InputFields?.disabled })\r\n );\r\n }\r\n } else {\r\n this.DropdownForm = this.fb.group({\r\n chipvalue: [],\r\n });\r\n }\r\n console.log('this.DropdownForm', this.DropdownForm.value);\r\n // this.chipSelectedObj =\r\n // this.DropdownForm.get(this.dynamciformcontrolparent()).value &&\r\n // this.DropdownForm.get(this.dynamciformcontrolparent()).value.length !== 0\r\n // ? this.DropdownForm.get(this.dynamciformcontrolparent()).value\r\n // : [];\r\n // console.log('this.chipSelectedObj', this.chipSelectedObj);\r\n\r\n if (this.InputFields?.defaultvalue) {\r\n // this.DropdownForm.get(this.dynamciformcontrolparent()).patchValue(\r\n // this.InputFields?.formkey\r\n // ? this.InputFields?.defaultvalue[this.InputFields?.formkey]\r\n // : this.InputFields?.defaultvalue\r\n // );\r\n // this.DropdownForm.get(this.dynamciformcontrolparent()).patchValue(this.InputFields?.defaultvalue);\r\n this.chipSelectedObj = this.InputFields?.defaultvalue;\r\n this.chipSelectedId = [];\r\n this.formkeyarr = [];\r\n if (this.chipSelectedObj.length > 0) {\r\n this.looop();\r\n this.selected();\r\n }\r\n }\r\n\r\n if (\r\n this.DropdownForm.get(this.dynamciformcontrolparent()).value &&\r\n this.DropdownForm.get(this.dynamciformcontrolparent()).value.length !== 0\r\n ) {\r\n this.chipSelectedObj = this.DropdownForm.get(\r\n this.dynamciformcontrolparent()\r\n ).value;\r\n console.log('test',this.chipSelectedObj = this.DropdownForm.get(\r\n this.dynamciformcontrolparent()\r\n ).value)\r\n this.chipSelectedId = [];\r\n this.formkeyarr = [];\r\n this.looop();\r\n this.selected();\r\n }\r\n if (this.InputFields?.fronentdata) {\r\n this.Dropdowndata = this.InputFields?.data;\r\n }\r\n // else {\r\n // this.getdropdown('')\r\n // }\r\n }\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes.InputFields && changes.InputFields.currentValue) {\r\n console.log('Summary Log Changes');\r\n this.currentpage = 1;\r\n this.dupngonit();\r\n }\r\n if (changes.ResetForm && changes.ResetForm.currentValue) {\r\n console.log('hitted');\r\n // this.DropdownForm.reset();\r\n this.currentpage = 1;\r\n this.dupngonit();\r\n this.chipSelectedId = [];\r\n this.formkeyarr = [];\r\n this.chipSelectedObj = [];\r\n this.dataEvent.emit([]);\r\n }\r\n }\r\n // public displaydevelopclient(clt: any, key: string) {\r\n // return key[clt];\r\n // }\r\n autocompleteAppScroll() {\r\n if (!this.InputFields?.fronentdata) {\r\n setTimeout(() => {\r\n if (\r\n this.matAutocompleteApp &&\r\n this.autocompleteTrigger &&\r\n this.matAutocompleteApp.panel\r\n ) {\r\n fromEvent(this.matAutocompleteApp.panel.nativeElement, 'scroll')\r\n .pipe(\r\n map((x) => this.matAutocompleteApp.panel.nativeElement.scrollTop),\r\n takeUntil(\r\n this.autocompleteTrigger.panelClosingActions as Observable<any>\r\n )\r\n )\r\n .subscribe((x) => {\r\n const scrollTop =\r\n this.matAutocompleteApp.panel.nativeElement.scrollTop;\r\n const scrollHeight =\r\n this.matAutocompleteApp.panel.nativeElement.scrollHeight;\r\n const elementHeight =\r\n this.matAutocompleteApp.panel.nativeElement.clientHeight;\r\n const atBottom = scrollHeight - 1 <= scrollTop + elementHeight;\r\n if (atBottom) {\r\n if (this.has_next === true) {\r\n let value = this.DropInput.nativeElement.value;\r\n let params = this.searchparams(value);\r\n this.currentpage = this.currentpage + 1;\r\n if (this.currentpage > 1) {\r\n this.service\r\n .GetApi(\r\n this.InputFields.url + '?page=' + this.currentpage,\r\n params\r\n )\r\n .subscribe((results: any[]) => {\r\n let datas = results['data'];\r\n let datapagination = results['pagination'];\r\n this.Dropdowndata = this.Dropdowndata.concat(datas);\r\n console.log('this.Dropdowndata', this.Dropdowndata);\r\n if (this.Dropdowndata.length >= 0) {\r\n this.has_next = datapagination.has_next;\r\n this.has_previous = datapagination.has_previous;\r\n this.currentpage = datapagination.index;\r\n }\r\n });\r\n }\r\n }\r\n }\r\n });\r\n }\r\n });\r\n }\r\n }\r\n dropdownsearch() {\r\n if (!this.InputFields?.fronentdata) {\r\n this.DropdownForm.get('value')\r\n .valueChanges.pipe(\r\n debounceTime(100),\r\n distinctUntilChanged(),\r\n tap(() => {\r\n this.DrodownLoading = true;\r\n console.log('inside tap');\r\n }),\r\n switchMap((value) => {\r\n let params = this.searchparams(value);\r\n this.currentpage = 1;\r\n return this.service\r\n .GetApi(\r\n this.InputFields.url + '?page=' + this.currentpage,\r\n params\r\n )\r\n .pipe(\r\n finalize(() => {\r\n this.DrodownLoading = false;\r\n })\r\n );\r\n })\r\n )\r\n .subscribe((results: any[]) => {\r\n let datas = results['data'];\r\n this.Dropdowndata = datas;\r\n });\r\n }\r\n }\r\n getdropdown(value) {\r\n this.currentpage = 1;\r\n if (this.InputFields.url) {\r\n let params = this.searchparams(value);\r\n this.service\r\n .GetApi(this.InputFields.url + '?page=' + this.currentpage, params)\r\n .subscribe((results: any[]) => {\r\n let datas = results['data'];\r\n let datapagination = results['pagination'];\r\n this.Dropdowndata = datas;\r\n setTimeout(() => {\r\n this.trigger.openPanel();\r\n }, 0);\r\n if (this.Dropdowndata.length >= 0) {\r\n this.has_next = datapagination.has_next;\r\n this.has_previous = datapagination.has_previous;\r\n this.currentpage = datapagination.index;\r\n }\r\n });\r\n }\r\n }\r\n Outputdata: any = [];\r\n dynamciformcontrolparent() {\r\n return this.InputFields?.formcontrolname && this.formGroup\r\n ? this.InputFields?.formcontrolname\r\n : 'chipvalue';\r\n }\r\n selected() {\r\n this.Outputdata = this.chipSelectedObj;\r\n if (this.InputFields?.Outputkey) {\r\n this.Outputdata = this.chipSelectedId;\r\n }\r\n if (this.formGroup && this.InputFields?.formcontrolname) {\r\n this.DropdownForm.get(this.dynamciformcontrolparent()).patchValue(\r\n this.formkeyarr\r\n );\r\n }\r\n console.log(this.formkeyarr);\r\n console.log('this.DropdownForm.get', this.DropdownForm.value);\r\n this.dataEvent.emit(this.Outputdata);\r\n\r\n // let data = this.DropdownForm.value.value\r\n // if (this.InputFields?.wholedata) {\r\n // this.dataEvent.emit(this.chipSelectedObj);\r\n // if (this.InputFields?.formgroup && this.InputFields?.formcontrolname) {\r\n // this.InputFields?.formgroup\r\n // .get(this.InputFields?.formcontrolname)\r\n // .patchValue(this.chipSelectedObj);\r\n // }\r\n // }\r\n // else {\r\n // if (this.InputFields?.Outputkey) {\r\n // this.dataEvent.emit(this.chipSelectedId);\r\n // if (this.InputFields?.formgroup && this.InputFields?.formcontrolname) {\r\n // this.InputFields?.formgroup\r\n // .get(this.InputFields?.formcontrolname)\r\n // .patchValue(this.chipSelectedId);\r\n // }\r\n // }\r\n // else {\r\n // this.dataEvent.emit(this.chipSelectedObj);\r\n // if (this.InputFields?.formgroup && this.InputFields?.formcontrolname) {\r\n // this.InputFields?.formgroup\r\n // .get(this.InputFields?.formcontrolname)\r\n // .patchValue(this.chipSelectedObj);\r\n // }\r\n // }\r\n\r\n // }\r\n }\r\n searchparams(value) {\r\n let params = '';\r\n if (this.InputFields.params) {\r\n params = this.InputFields.params;\r\n }\r\n let inpValue = value;\r\n inpValue\r\n ? (params += '&' + this.InputFields.searchkey + '=' + inpValue)\r\n : '';\r\n return params;\r\n }\r\n removechip(obj) {\r\n const index = this.chipSelectedObj.indexOf(obj);\r\n\r\n if (index >= 0) {\r\n this.chipSelectedObj.splice(index, 1);\r\n console.log(this.chipSelectedObj);\r\n this.chipSelectedId.splice(index, 1);\r\n console.log(this.chipSelectedId);\r\n this.formkeyarr.splice(index, 1);\r\n console.log('this.formkeyarr', this.formkeyarr);\r\n\r\n this.DropInput.nativeElement.value = '';\r\n this.selected();\r\n }\r\n }\r\n public venSelected(data): void {\r\n this.DropInput.nativeElement.value = '';\r\n console.log('event.option.value', data);\r\n this.selectvenByName(data[this.comparekey(data)]);\r\n console.log('chipSelectedvenid', this.chipSelectedObj);\r\n }\r\n formkeyarr: any = [];\r\n private selectvenByName(ven) {\r\n let foundemp1 = this.chipSelectedObj.filter(\r\n (e) => e[this.comparekey(e)] == ven\r\n );\r\n if (foundemp1.length) {\r\n return;\r\n }\r\n let foundemp = this.Dropdowndata.filter(\r\n (e) => e[this.comparekey(e)] == ven\r\n );\r\n if (foundemp.length) {\r\n this.chipSelectedObj.push(foundemp[0]);\r\n if (this.InputFields?.Outputkey) {\r\n this.chipSelectedId.push(foundemp[0][this.InputFields?.Outputkey]);\r\n }\r\n if (this.InputFields?.formkey) {\r\n this.formkeyarr.push(foundemp[0][this.InputFields?.formkey]);\r\n } else {\r\n this.chipSelectedId.push(foundemp[0].id);\r\n }\r\n console.log('formkeyarr12', this.formkeyarr);\r\n this.selected();\r\n }\r\n }\r\n comparekey(e) {\r\n if (this.InputFields?.comparekey) {\r\n return this.InputFields?.comparekey;\r\n } else {\r\n if (e?.id) {\r\n return 'id';\r\n } else {\r\n return this.InputFields.displaykey;\r\n }\r\n }\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { VsChipdropdownComponent } from './vs-chipdropdown.component';\r\nimport { VsChipddCmpComponent } from './vs-chipdd-cmp/vs-chipdd-cmp.component';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MatGridListModule } from '@angular/material/grid-list';\r\nimport { MatChipsModule } from '@angular/material/chips';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { TranslateModule, TranslateLoader } from '@ngx-translate/core';\r\nimport { HttpClientModule, HttpClient } from '@angular/common/http';\r\n// import {VsSharedModuleModule} from '@unnilouis.org/vs-shared-module'\r\n\r\n\r\n@NgModule({\r\n declarations: [VsChipdropdownComponent, VsChipddCmpComponent],\r\n imports: [MatFormFieldModule,MatInputModule,MatSelectModule,MatAutocompleteModule,FormsModule,ReactiveFormsModule,CommonModule,MatGridListModule,MatChipsModule,MatIconModule,\r\n TranslateModule,\r\n HttpClientModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: httpTranslateLoader,\r\n deps: [HttpClient],\r\n },\r\n }),],\r\n // imports: [VsSharedModuleModule],\r\n exports: [VsChipddCmpComponent]\r\n})\r\nexport class VsChipdropdownModule { }\r\nexport function httpTranslateLoader(http: HttpClient) {\r\n return new TranslateHttpLoader(http);\r\n}\r\n","/*\r\n * Public API Surface of vs-chipdropdown\r\n */\r\n\r\nexport * from './lib/vs-chipdropdown.service';\r\nexport * from './lib/vs-chipdropdown.component';\r\nexport * from './lib/vs-chipdropdown.module';\r\nexport * from './lib/vs-chipdd-cmp/vs-chipdd-cmp.component'\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;IAOa,qBAAqB,GAAlC,MAAa,qBAAqB;IAEhC,YAAoB,IAAgB;QAAhB,SAAI,GAAJ,IAAI,CAAY;KAAK;IACzC,OAAO,CAAC,MAAM,EAAC,IAAI,GAAC,EAAE,EAAC,MAAM;QAC3B,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QACrD,IAAI,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACtC,IAAI,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAC,MAAM,CAAC,CAAA;QAC5B,IAAI,QAAQ,GAAC,EAAE,CAAA;QACf,IAAG,MAAM,KAAG,SAAS,IAAI,MAAM,KAAG,IAAI,IAAI,MAAM,KAAG,EAAE,EAAC;YACpD,QAAQ,GAAC,MAAM,CAAA;SAChB;QACD,MAAM,OAAO,GAAG,EAAE,aAAa,EAAE,QAAQ,GAAG,KAAK,EAAE,CAAC;QACpD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAM,MAAM,GAAC,QAAQ,EAAC,IAAI,EAAE;YAC/C,OAAO,EAAE,OAAO;SAEjB,CAAC,CAAC;KACJ;IACD,MAAM,CAAC,MAAM,EAAC,MAAM,GAAC,EAAE;QACrB,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QACrD,IAAI,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACtC,IAAI,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAC,MAAM,CAAC,CAAA;QAC5B,IAAI,QAAQ,GAAC,EAAE,CAAA;QACf,IAAG,MAAM,KAAG,SAAS,IAAI,MAAM,KAAG,IAAI,IAAI,MAAM,KAAG,EAAE,EAAC;YACpD,QAAQ,GAAC,MAAM,CAAA;SAChB;QACD,MAAM,OAAO,GAAG,EAAE,aAAa,EAAE,QAAQ,GAAG,KAAK,EAAE,CAAC;QACpD,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAM,MAAM,GAAC,QAAQ,EAAC;YACxC,OAAO,EAAE,OAAO;SACjB,CAAC,CAAC;KACJ;EACF;;YA9B2B,UAAU;;;AAFzB,qBAAqB;IAHjC,UAAU,CAAC;QACV,UAAU,EAAE,MAAM;KACnB,CAAC;GACW,qBAAqB,CAgCjC;;IC3BY,uBAAuB,GAApC,MAAa,uBAAuB;IAElC,iBAAiB;IAEjB,QAAQ;KACP;EAEF;AAPY,uBAAuB;IAVnC,SAAS,CAAC;QACT,QAAQ,EAAE,qBAAqB;QAC/B,QAAQ,EAAE;;;;GAIT;KAGF,CAAC;GACW,uBAAuB,CAOnC;;ICaY,oBAAoB,GAAjC,MAAa,oBAAoB;IAE/B,YACU,OAA8B,EAC9B,EAAe;QADf,YAAO,GAAP,OAAO,CAAuB;QAC9B,OAAE,GAAF,EAAE,CAAa;QAIhB,eAAU,GAAY,IAAI,CAAC;QAW1B,cAAS,GAAsB,IAAI,YAAY,EAAO,CAAC;QAExD,wBAAmB,GAAa,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAExD,aAAQ,GAAY,KAAK,CAAC;QAC1B,gBAAW,GAAW,CAAC,CAAC;QACxB,iBAAY,GAAQ,EAAE,CAAC;QACvB,iBAAY,GAAY,KAAK,CAAC;QAE9B,mBAAc,GAAQ,EAAE,CAAC;QACzB,oBAAe,GAAQ,EAAE,CAAC;QA8O1B,eAAU,GAAQ,EAAE,CAAC;QAiFrB,eAAU,GAAQ,EAAE,CAAC;KAvVjB;IA0BJ,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAmCP;IACD,KAAK;;QACH,KAAK,IAAI,QAAQ,IAAI,IAAI,CAAC,eAAe,EAAE;YACzC,IAAG,EAAE,QAAQ,YAAY,MAAM,CAAC,EAAC;gBAC/B,UAAI,IAAI,CAAC,WAAW,0CAAE,SAAS,EAAE;oBAC/B,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,OAAC,IAAI,CAAC,WAAW,0CAAE,SAAS,CAAC,CAAC,CAAC;iBACjE;gBACD,UAAI,IAAI,CAAC,WAAW,0CAAE,OAAO,EAAE;oBAC7B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,OAAC,IAAI,CAAC,WAAW,0CAAE,OAAO,CAAC,CAAC,CAAC;iBAC3D;qBAAM;oBACL,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;iBACvC;aACF;SACA;KAEJ;IACD,SAAS;;QACP,IAAI,IAAI,CAAC,SAAS,EAAE;YAClB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC;YACnC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,OAAC,IAAI,CAAC,WAAW,0CAAE,eAAe,CAAC,EAAE;gBAClE,IAAI,CAAC,YAAY,CAAC,UAAU,CAC1B,IAAI,CAAC,wBAAwB,EAAE,EAC/B,IAAI,WAAW,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,QAAE,IAAI,CAAC,WAAW,0CAAE,QAAQ,EAAE,CAAC,CACrE,CAAC;aACH;SACF;aAAM;YACL,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC;gBAChC,SAAS,EAAE,EAAE;aACd,CAAC,CAAC;SACJ;QACD,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;;;;;;;QAQ1D,UAAI,IAAI,CAAC,WAAW,0CAAE,YAAY,EAAE;;;;;;;YAOlC,IAAI,CAAC,eAAe,SAAG,IAAI,CAAC,WAAW,0CAAE,YAAY,CAAC;YACtD,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;YACzB,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;YACrB,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE;gBACnC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACb,IAAI,CAAC,QAAQ,EAAE,CAAC;aACjB;SACF;QAED,IACE,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,wBAAwB,EAAE,CAAC,CAAC,KAAK;YAC5D,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,wBAAwB,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EACzE;YACA,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAC1C,IAAI,CAAC,wBAAwB,EAAE,CAChC,CAAC,KAAK,CAAC;YACR,OAAO,CAAC,GAAG,CAAC,MAAM,EAAC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAC7D,IAAI,CAAC,wBAAwB,EAAE,CAChC,CAAC,KAAK,CAAC,CAAA;YACR,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;YACzB,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;YACrB,IAAI,CAAC,KAAK,EAAE,CAAC;YACb,IAAI,CAAC,QAAQ,EAAE,CAAC;SACjB;QACD,UAAI,IAAI,CAAC,WAAW,0CAAE,WAAW,EAAE;YACjC,IAAI,CAAC,YAAY,SAAG,IAAI,CAAC,WAAW,0CAAE,IAAI,CAAC;SAC5C;;;;KAIF;IACD,WAAW,CAAC,OAAsB;QAChC,IAAI,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,WAAW,CAAC,YAAY,EAAE;YAC3D,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;YACnC,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;YACrB,IAAI,CAAC,SAAS,EAAE,CAAC;SAClB;QACD,IAAI,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,CAAC,YAAY,EAAE;YACvD,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;;YAEtB,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;YACrB,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;YACzB,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;YACrB,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;YAC1B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SACzB;KACF;;;;IAID,qBAAqB;;QACnB,IAAI,QAAC,IAAI,CAAC,WAAW,0CAAE,WAAW,CAAA,EAAE;YAClC,UAAU,CAAC;gBACT,IACE,IAAI,CAAC,kBAAkB;oBACvB,IAAI,CAAC,mBAAmB;oBACxB,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAC7B;oBACA,SAAS,CAAC,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,aAAa,EAAE,QAAQ,CAAC;yBAC7D,IAAI,CACH,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,aAAa,CAAC,SAAS,CAAC,EACjE,SAAS,CACP,IAAI,CAAC,mBAAmB,CAAC,mBAAsC,CAChE,CACF;yBACA,SAAS,CAAC,CAAC,CAAC;wBACX,MAAM,SAAS,GACb,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,aAAa,CAAC,SAAS,CAAC;wBACxD,MAAM,YAAY,GAChB,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,aAAa,CAAC,YAAY,CAAC;wBAC3D,MAAM,aAAa,GACjB,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,aAAa,CAAC,YAAY,CAAC;wBAC3D,MAAM,QAAQ,GAAG,YAAY,GAAG,CAAC,IAAI,SAAS,GAAG,aAAa,CAAC;wBAC/D,IAAI,QAAQ,EAAE;4BACZ,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,EAAE;gCAC1B,IAAI,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,KAAK,CAAC;gCAC/C,IAAI,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;gCACtC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;gCACxC,IAAI,IAAI,CAAC,WAAW,GAAG,CAAC,EAAE;oCACxB,IAAI,CAAC,OAAO;yCACT,MAAM,CACL,IAAI,CAAC,WAAW,CAAC,GAAG,GAAG,QAAQ,GAAG,IAAI,CAAC,WAAW,EAClD,MAAM,CACP;yCACA,SAAS,CAAC,CAAC,OAAc;wCACxB,IAAI,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;wCAC5B,IAAI,cAAc,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;wCAC3C,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;wCACpD,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;wCACpD,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,IAAI,CAAC,EAAE;4CACjC,IAAI,CAAC,QAAQ,GAAG,cAAc,CAAC,QAAQ,CAAC;4CACxC,IAAI,CAAC,YAAY,GAAG,cAAc,CAAC,YAAY,CAAC;4CAChD,IAAI,CAAC,WAAW,GAAG,cAAc,CAAC,KAAK,CAAC;yCACzC;qCACF,CAAC,CAAC;iCACN;6BACF;yBACF;qBACF,CAAC,CAAC;iBACN;aACF,CAAC,CAAC;SACJ;KACF;IACD,cAAc;;QACZ,IAAI,QAAC,IAAI,CAAC,WAAW,0CAAE,WAAW,CAAA,EAAE;YAClC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC;iBAC3B,YAAY,CAAC,IAAI,CAChB,YAAY,CAAC,GAAG,CAAC,EACjB,oBAAoB,EAAE,EACtB,GAAG,CAAC;gBACF,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;gBAC3B,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;aAC3B,CAAC,EACF,SAAS,CAAC,CAAC,KAAK;gBACd,IAAI,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;gBACtC,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;gBACrB,OAAO,IAAI,CAAC,OAAO;qBAChB,MAAM,CACL,IAAI,CAAC,WAAW,CAAC,GAAG,GAAG,QAAQ,GAAG,IAAI,CAAC,WAAW,EAClD,MAAM,CACP;qBACA,IAAI,CACH,QAAQ,CAAC;oBACP,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;iBAC7B,CAAC,CACH,CAAC;aACL,CAAC,CACH;iBACA,SAAS,CAAC,CAAC,OAAc;gBACxB,IAAI,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;gBAC5B,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;aAC3B,CAAC,CAAC;SACN;KACF;IACD,WAAW,CAAC,KAAK;QACf,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;QACrB,IAAI,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE;YACxB,IAAI,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;YACtC,IAAI,CAAC,OAAO;iBACT,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,GAAG,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC;iBAClE,SAAS,CAAC,CAAC,OAAc;gBACxB,IAAI,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;gBAC5B,IAAI,cAAc,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;gBAC3C,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;gBAC1B,UAAU,CAAC;oBACT,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;iBAC1B,EAAE,CAAC,CAAC,CAAC;gBACN,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,IAAI,CAAC,EAAE;oBACjC,IAAI,CAAC,QAAQ,GAAG,cAAc,CAAC,QAAQ,CAAC;oBACxC,IAAI,CAAC,YAAY,GAAG,cAAc,CAAC,YAAY,CAAC;oBAChD,IAAI,CAAC,WAAW,GAAG,cAAc,CAAC,KAAK,CAAC;iBACzC;aACF,CAAC,CAAC;SACN;KACF;IAED,wBAAwB;;QACtB,OAAO,OAAA,IAAI,CAAC,WAAW,0CAAE,eAAe,KAAI,IAAI,CAAC,SAAS;oBACtD,IAAI,CAAC,WAAW,0CAAE,eAAe,GACjC,WAAW,CAAC;KACjB;IACD,QAAQ;;QACN,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,eAAe,CAAC;QACvC,UAAI,IAAI,CAAC,WAAW,0CAAE,SAAS,EAAE;YAC/B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC;SACvC;QACD,IAAI,IAAI,CAAC,SAAS,WAAI,IAAI,CAAC,WAAW,0CAAE,eAAe,CAAA,EAAE;YACvD,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,wBAAwB,EAAE,CAAC,CAAC,UAAU,CAC/D,IAAI,CAAC,UAAU,CAChB,CAAC;SACH;QACD,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,uBAAuB,EAAE,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QAC9D,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA8BtC;IACD,YAAY,CAAC,KAAK;QAChB,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE;YAC3B,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;SAClC;QACD,IAAI,QAAQ,GAAG,KAAK,CAAC;QACrB,QAAQ;eACH,MAAM,IAAI,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,SAAS,GAAG,GAAG,GAAG,QAAQ;cAC5D,EAAE,CAAC;QACP,OAAO,MAAM,CAAC;KACf;IACD,UAAU,CAAC,GAAG;QACZ,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAEhD,IAAI,KAAK,IAAI,CAAC,EAAE;YACd,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YACtC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAClC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YACrC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YACjC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YACjC,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;YAEhD,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,KAAK,GAAG,EAAE,CAAC;YACxC,IAAI,CAAC,QAAQ,EAAE,CAAC;SACjB;KACF;IACM,WAAW,CAAC,IAAI;QACrB,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,KAAK,GAAG,EAAE,CAAC;QACxC,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,IAAI,CAAC,CAAC;QACxC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClD,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;KACxD;IAEO,eAAe,CAAC,GAAG;;QACzB,IAAI,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CACzC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CACpC,CAAC;QACF,IAAI,SAAS,CAAC,MAAM,EAAE;YACpB,OAAO;SACR;QACD,IAAI,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CACrC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CACpC,CAAC;QACF,IAAI,QAAQ,CAAC,MAAM,EAAE;YACnB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;YACvC,UAAI,IAAI,CAAC,WAAW,0CAAE,SAAS,EAAE;gBAC/B,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAC,IAAI,CAAC,WAAW,0CAAE,SAAS,CAAC,CAAC,CAAC;aACpE;YACD,UAAI,IAAI,CAAC,WAAW,0CAAE,OAAO,EAAE;gBAC7B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAC,IAAI,CAAC,WAAW,0CAAE,OAAO,CAAC,CAAC,CAAC;aAC9D;iBAAM;gBACL,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;aAC1C;YACD,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;YAC7C,IAAI,CAAC,QAAQ,EAAE,CAAC;SACjB;KACF;IACD,UAAU,CAAC,CAAC;;QACV,UAAI,IAAI,CAAC,WAAW,0CAAE,UAAU,EAAE;YAChC,aAAO,IAAI,CAAC,WAAW,0CAAE,UAAU,CAAC;SACrC;aAAM;YACL,IAAI,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,EAAE,EAAE;gBACT,OAAO,IAAI,CAAC;aACb;iBAAM;gBACL,OAAO,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC;aACpC;SACF;KACF;EACF;;YA7XoB,qBAAqB;YAC1B,WAAW;;AAEhB;IAAR,KAAK,EAAE;yDAAkB;AACjB;IAAR,KAAK,EAAE;uDAAgB;AACf;IAAR,KAAK,EAAE;wDAA4B;AAMpC;IAJC,SAAS,CAAC,mBAAmB,EAAE;QAC9B,MAAM,EAAE,KAAK;QACb,IAAI,EAAE,sBAAsB;KAC7B,CAAC;qDAC8B;AAGhC;IADC,SAAS,CAAC,sBAAsB,CAAC;iEACU;AACtB;IAArB,SAAS,CAAC,SAAS,CAAC;gEAAqC;AAChD;IAAT,MAAM,EAAE;uDAAwD;AACzC;IAAvB,SAAS,CAAC,WAAW,CAAC;uDAAgB;AAU9B;IAAR,KAAK,EAAE;uDAAuB;AA9BpB,oBAAoB;IALhC,SAAS,CAAC;QACT,QAAQ,EAAE,mBAAmB;QAC7B,ihEAA6C;;KAE9C,CAAC;GACW,oBAAoB,CAgYhC;;ACjZD;IAkBa,oBAAoB,GAAjC,MAAa,oBAAoB;EAAI;AAAxB,oBAAoB;IAfhC,QAAQ,CAAC;QACR,YAAY,EAAE,CAAC,uBAAuB,EAAE,oBAAoB,CAAC;QAC7D,OAAO,EAAE,CAAC,kBAAkB,EAAC,cAAc,EAAC,eAAe,EAAC,qBAAqB,EAAC,WAAW,EAAC,mBAAmB,EAAC,YAAY,EAAC,iBAAiB,EAAC,cAAc,EAAC,aAAa;YAC3K,eAAe;YACf,gBAAgB;YAChB,eAAe,CAAC,OAAO,CAAC;gBACtB,MAAM,EAAE;oBACN,OAAO,EAAE,eAAe;oBACxB,UAAU,EAAE,mBAAmB;oBAC/B,IAAI,EAAE,CAAC,UAAU,CAAC;iBACnB;aACF,CAAC,EAAE;;QAEN,OAAO,EAAE,CAAC,oBAAoB,CAAC;KAChC,CAAC;GACW,oBAAoB,CAAI;SACrB,mBAAmB,CAAC,IAAgB;IAClD,OAAO,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;AACvC;;ACpCA;;;;ACAA;;;;;;"}
|
|
1
|
+
{"version":3,"file":"unnilouis.org-vs-chipdropdown.js","sources":["ng://@unnilouis.org/vs-chipdropdown/lib/vs-chipdropdown.service.ts","ng://@unnilouis.org/vs-chipdropdown/lib/vs-chipdropdown.component.ts","ng://@unnilouis.org/vs-chipdropdown/lib/vs-chipdd-cmp/vs-chipdd-cmp.component.ts","ng://@unnilouis.org/vs-chipdropdown/lib/vs-chipdropdown.module.ts","ng://@unnilouis.org/vs-chipdropdown/public-api.ts","ng://@unnilouis.org/vs-chipdropdown/unnilouis.org-vs-chipdropdown.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class VsChipdropdownService {\r\n\r\n constructor(private http: HttpClient) { }\r\n postApi(Apiurl,json={},params): Observable<any> {\r\n const getToken = localStorage.getItem(\"sessionData\");\r\n let tokenValue = JSON.parse(getToken);\r\n let token = tokenValue.token;\r\n console.log(\"params\",params)\r\n let paradata=''\r\n if(params!==undefined && params!==null && params!==''){\r\n paradata=params\r\n }\r\n const headers = { Authorization: \"Token \" + token };\r\n return this.http.post<any>(Apiurl+paradata,json ,{\r\n headers: headers,\r\n \r\n });\r\n }\r\n GetApi(Apiurl,params=''): Observable<any> {\r\n const getToken = localStorage.getItem(\"sessionData\");\r\n let tokenValue = JSON.parse(getToken);\r\n let token = tokenValue.token;\r\n console.log(\"params\",params)\r\n let paradata=''\r\n if(params!==undefined && params!==null && params!==''){\r\n paradata=params\r\n }\r\n const headers = { Authorization: \"Token \" + token };\r\n return this.http.get<any>(Apiurl+paradata,{\r\n headers: headers,\r\n });\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-vs-chipdropdown',\r\n template: `\r\n <p>\r\n vs-chipdropdown works!\r\n </p>\r\n `,\r\n styles: [\r\n ]\r\n})\r\nexport class VsChipdropdownComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","import {\r\n Component,\r\n EventEmitter,\r\n Input,\r\n Output,\r\n SimpleChanges,\r\n ViewChild,\r\n} from '@angular/core';\r\nimport {\r\n MatAutocompleteSelectedEvent,\r\n MatAutocomplete,\r\n MatAutocompleteTrigger,\r\n} from '@angular/material/autocomplete';\r\nimport {\r\n debounceTime,\r\n distinctUntilChanged,\r\n tap,\r\n filter,\r\n switchMap,\r\n finalize,\r\n takeUntil,\r\n map,\r\n} from 'rxjs/operators';\r\nimport { from, Observable, fromEvent } from 'rxjs';\r\nimport { VsChipdropdownService } from '../vs-chipdropdown.service';\r\nimport { FormBuilder, FormControl, FormGroup } from '@angular/forms';\r\nimport { COMMA, ENTER } from '@angular/cdk/keycodes';\r\n@Component({\r\n selector: 'lib-vs-chipdd-cmp',\r\n templateUrl: './vs-chipdd-cmp.component.html',\r\n styleUrls: ['./vs-chipdd-cmp.component.scss'],\r\n})\r\nexport class VsChipddCmpComponent {\r\n DrodownLoading: boolean;\r\n constructor(\r\n private service: VsChipdropdownService,\r\n private fb: FormBuilder\r\n ) {}\r\n @Input() InputFields: any;\r\n @Input() ResetForm: any;\r\n @Input() Backendapi: boolean = true;\r\n\r\n @ViewChild('autoCompleteInput', {\r\n static: false,\r\n read: MatAutocompleteTrigger,\r\n })\r\n trigger: MatAutocompleteTrigger;\r\n\r\n @ViewChild(MatAutocompleteTrigger)\r\n autocompleteTrigger: MatAutocompleteTrigger;\r\n @ViewChild('scrolll') matAutocompleteApp: MatAutocomplete;\r\n @Output() dataEvent: EventEmitter<any> = new EventEmitter<any>();\r\n @ViewChild('DropInput') DropInput: any;\r\n readonly separatorsKeysCodes: number[] = [ENTER, COMMA];\r\n\r\n has_next: boolean = false;\r\n currentpage: number = 1;\r\n Dropdowndata: any = [];\r\n has_previous: boolean = false;\r\n DropdownForm: FormGroup;\r\n chipSelectedId: any = [];\r\n chipSelectedObj: any = [];\r\n @Input() formGroup!: FormGroup;\r\n ngOnInit() {\r\n // if (this.formGroup) {\r\n // this.DropdownForm = this.formGroup;\r\n // } else {\r\n // this.DropdownForm = this.fb.group({\r\n // value: '',\r\n // });\r\n // }\r\n // this.dupngonit();\r\n\r\n // if (this.InputFields?.defaultvalue) {\r\n // this.DropdownForm.get(\"value\").patchValue(this.InputFields?.defaultvalue)\r\n // this.chipSelectedObj = this.InputFields?.defaultvalue\r\n // if (this.chipSelectedObj.length > 0) {\r\n // for (let foundemp of this.chipSelectedObj) {\r\n // if (this.InputFields?.Outputkey) {\r\n // this.chipSelectedId.push(foundemp[this.InputFields?.Outputkey])\r\n\r\n // }\r\n // else {\r\n // this.chipSelectedId.push(foundemp.id)\r\n\r\n // }\r\n // }\r\n // this.selected()\r\n // }\r\n\r\n // }\r\n // if (this.InputFields?.fronentdata) {\r\n // this.Dropdowndata = this.InputFields?.data\r\n\r\n // }\r\n // else {\r\n // this.getdropdown('')\r\n // }\r\n }\r\n looop() {\r\n for (let foundemp of this.chipSelectedObj) {\r\n if(!(foundemp instanceof Number)){\r\n if (this.InputFields?.Outputkey) {\r\n this.chipSelectedId.push(foundemp[this.InputFields?.Outputkey]);\r\n }\r\n if (this.InputFields?.formkey) {\r\n this.formkeyarr.push(foundemp[this.InputFields?.formkey]);\r\n } else {\r\n this.chipSelectedId.push(foundemp.id);\r\n }\r\n }\r\n }\r\n \r\n }\r\n dupngonit() {\r\n if (this.formGroup) {\r\n this.DropdownForm = this.formGroup;\r\n if (!this.DropdownForm.contains(this.InputFields?.formcontrolname)) {\r\n this.DropdownForm.addControl(\r\n this.dynamciformcontrolparent(),\r\n new FormControl({ value: [], disabled: this.InputFields?.disabled })\r\n );\r\n }\r\n } else {\r\n this.DropdownForm = this.fb.group({\r\n chipvalue: [],\r\n });\r\n\r\n }\r\n console.log('this.DropdownForm', this.DropdownForm.value);\r\n // this.chipSelectedObj =\r\n // this.DropdownForm.get(this.dynamciformcontrolparent()).value &&\r\n // this.DropdownForm.get(this.dynamciformcontrolparent()).value.length !== 0\r\n // ? this.DropdownForm.get(this.dynamciformcontrolparent()).value\r\n // : [];\r\n // console.log('this.chipSelectedObj', this.chipSelectedObj);\r\n\r\n if (this.InputFields?.defaultvalue) {\r\n // this.DropdownForm.get(this.dynamciformcontrolparent()).patchValue(\r\n // this.InputFields?.formkey\r\n // ? this.InputFields?.defaultvalue[this.InputFields?.formkey]\r\n // : this.InputFields?.defaultvalue\r\n // );\r\n // this.DropdownForm.get(this.dynamciformcontrolparent()).patchValue(this.InputFields?.defaultvalue);\r\n this.chipSelectedObj = this.InputFields?.defaultvalue;\r\n this.chipSelectedId = [];\r\n this.formkeyarr = [];\r\n if (this.chipSelectedObj.length > 0) {\r\n this.looop();\r\n this.selected();\r\n }\r\n }\r\n\r\n if (\r\n this.DropdownForm.get(this.dynamciformcontrolparent()).value &&\r\n this.DropdownForm.get(this.dynamciformcontrolparent()).value.length !== 0\r\n ) {\r\n this.chipSelectedObj = this.DropdownForm.get(\r\n this.dynamciformcontrolparent()\r\n ).value;\r\n console.log('test',this.chipSelectedObj = this.DropdownForm.get(\r\n this.dynamciformcontrolparent()\r\n ).value)\r\n this.chipSelectedId = [];\r\n this.formkeyarr = [];\r\n this.looop();\r\n this.selected();\r\n }\r\n if (this.InputFields?.fronentdata) {\r\n this.Dropdowndata = this.InputFields?.data;\r\n }\r\n this.dropdownsearch();\r\n // else {\r\n // this.getdropdown('')\r\n // }\r\n }\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes.InputFields && changes.InputFields.currentValue) {\r\n console.log('Summary Log Changes');\r\n this.currentpage = 1;\r\n this.dupngonit();\r\n }\r\n if (changes.ResetForm && changes.ResetForm.currentValue) {\r\n console.log('hitted');\r\n // this.DropdownForm.reset();\r\n this.currentpage = 1;\r\n this.dupngonit();\r\n this.chipSelectedId = [];\r\n this.formkeyarr = [];\r\n this.chipSelectedObj = [];\r\n this.dataEvent.emit([]);\r\n }\r\n }\r\n // public displaydevelopclient(clt: any, key: string) {\r\n // return key[clt];\r\n // }\r\n autocompleteAppScroll() {\r\n if (!this.InputFields?.fronentdata) {\r\n setTimeout(() => {\r\n if (\r\n this.matAutocompleteApp &&\r\n this.autocompleteTrigger &&\r\n this.matAutocompleteApp.panel\r\n ) {\r\n fromEvent(this.matAutocompleteApp.panel.nativeElement, 'scroll')\r\n .pipe(\r\n map((x) => this.matAutocompleteApp.panel.nativeElement.scrollTop),\r\n takeUntil(\r\n this.autocompleteTrigger.panelClosingActions as Observable<any>\r\n )\r\n )\r\n .subscribe((x) => {\r\n const scrollTop =\r\n this.matAutocompleteApp.panel.nativeElement.scrollTop;\r\n const scrollHeight =\r\n this.matAutocompleteApp.panel.nativeElement.scrollHeight;\r\n const elementHeight =\r\n this.matAutocompleteApp.panel.nativeElement.clientHeight;\r\n const atBottom = scrollHeight - 1 <= scrollTop + elementHeight;\r\n if (atBottom) {\r\n if (this.has_next === true) {\r\n let value = this.DropInput.nativeElement.value;\r\n let params = this.searchparams(value);\r\n this.currentpage = this.currentpage + 1;\r\n if (this.currentpage > 1) {\r\n this.service\r\n .GetApi(\r\n this.InputFields.url + '?page=' + this.currentpage,\r\n params\r\n )\r\n .subscribe((results: any[]) => {\r\n let datas = results['data'];\r\n let datapagination = results['pagination'];\r\n this.Dropdowndata = this.Dropdowndata.concat(datas);\r\n console.log('this.Dropdowndata', this.Dropdowndata);\r\n if (this.Dropdowndata.length >= 0) {\r\n this.has_next = datapagination.has_next;\r\n this.has_previous = datapagination.has_previous;\r\n this.currentpage = datapagination.index;\r\n }\r\n });\r\n }\r\n }\r\n }\r\n });\r\n }\r\n });\r\n }\r\n }\r\n dropdownsearch() {\r\n const controlName = this.dynamciformcontrolparent();\r\n const control = this.DropdownForm.get(controlName);\r\n if (control && !this.InputFields?.fronentdata) {\r\n this.DropdownForm.get(this.dynamciformcontrolparent())\r\n .valueChanges.pipe(\r\n debounceTime(200),\r\n distinctUntilChanged(),\r\n tap(() => {\r\n this.DrodownLoading = true;\r\n console.log('inside tap');\r\n }),\r\n switchMap((value) => {\r\n let params = this.searchparams(value);\r\n this.currentpage = 1;\r\n return this.service\r\n .GetApi(\r\n this.InputFields.url + '?page=' + this.currentpage,\r\n params\r\n )\r\n .pipe(\r\n finalize(() => {\r\n this.DrodownLoading = false;\r\n })\r\n );\r\n })\r\n )\r\n .subscribe((results: any[]) => {\r\n let datas = results['data'];\r\n this.Dropdowndata = datas;\r\n });\r\n }\r\n }\r\n getdropdown(value) {\r\n\r\n this.currentpage = 1;\r\n if ( this.InputFields.url) {\r\n let params = this.searchparams(value);\r\n this.service\r\n .GetApi(this.InputFields.url + '?page=' + this.currentpage, params)\r\n .subscribe((results: any[]) => {\r\n let datas = results['data'];\r\n let datapagination = results['pagination'];\r\n this.Dropdowndata = datas;\r\n setTimeout(() => {\r\n this.trigger.openPanel();\r\n }, 0);\r\n if (this.Dropdowndata.length >= 0) {\r\n this.has_next = datapagination.has_next;\r\n this.has_previous = datapagination.has_previous;\r\n this.currentpage = datapagination.index;\r\n }\r\n });\r\n }\r\n }\r\n Outputdata: any = [];\r\n dynamciformcontrolparent() {\r\n return this.InputFields?.formcontrolname && this.formGroup\r\n ? this.InputFields?.formcontrolname\r\n : 'chipvalue';\r\n }\r\n selected() {\r\n this.Outputdata = this.chipSelectedObj;\r\n if (this.InputFields?.Outputkey) {\r\n this.Outputdata = this.chipSelectedId;\r\n }\r\n if (this.formGroup && this.InputFields?.formcontrolname) {\r\n this.DropdownForm.get(this.dynamciformcontrolparent()).patchValue(\r\n this.formkeyarr\r\n );\r\n }\r\n console.log(this.formkeyarr);\r\n console.log('this.DropdownForm.get', this.DropdownForm.value);\r\n this.dataEvent.emit(this.Outputdata);\r\n\r\n // let data = this.DropdownForm.value.value\r\n // if (this.InputFields?.wholedata) {\r\n // this.dataEvent.emit(this.chipSelectedObj);\r\n // if (this.InputFields?.formgroup && this.InputFields?.formcontrolname) {\r\n // this.InputFields?.formgroup\r\n // .get(this.InputFields?.formcontrolname)\r\n // .patchValue(this.chipSelectedObj);\r\n // }\r\n // }\r\n // else {\r\n // if (this.InputFields?.Outputkey) {\r\n // this.dataEvent.emit(this.chipSelectedId);\r\n // if (this.InputFields?.formgroup && this.InputFields?.formcontrolname) {\r\n // this.InputFields?.formgroup\r\n // .get(this.InputFields?.formcontrolname)\r\n // .patchValue(this.chipSelectedId);\r\n // }\r\n // }\r\n // else {\r\n // this.dataEvent.emit(this.chipSelectedObj);\r\n // if (this.InputFields?.formgroup && this.InputFields?.formcontrolname) {\r\n // this.InputFields?.formgroup\r\n // .get(this.InputFields?.formcontrolname)\r\n // .patchValue(this.chipSelectedObj);\r\n // }\r\n // }\r\n\r\n // }\r\n }\r\n searchparams(value) {\r\n let params = '';\r\n if (this.InputFields.params) {\r\n params = this.InputFields.params;\r\n }\r\n let inpValue = value;\r\n inpValue\r\n ? (params += '&' + this.InputFields.searchkey + '=' + inpValue)\r\n : '';\r\n return params;\r\n }\r\n removechip(obj) {\r\n const index = this.chipSelectedObj.indexOf(obj);\r\n\r\n if (index >= 0) {\r\n this.chipSelectedObj.splice(index, 1);\r\n console.log(this.chipSelectedObj);\r\n this.chipSelectedId.splice(index, 1);\r\n console.log(this.chipSelectedId);\r\n this.formkeyarr.splice(index, 1);\r\n console.log('this.formkeyarr', this.formkeyarr);\r\n\r\n this.DropInput.nativeElement.value = '';\r\n this.selected();\r\n }\r\n }\r\n formkeyarr:any=[]\r\n public venSelected(data): void {\r\n this.DropInput.nativeElement.value = '';\r\n console.log('event.option.value', data);\r\n this.selectvenByName(\r\n data[this.comparekey(data)]\r\n );\r\n console.log('chipSelectedvenid', this.chipSelectedObj);\r\n }\r\n private selectvenByName(ven) {\r\n let foundemp1 = this.chipSelectedObj.filter(\r\n (e) => e[this.comparekey(e)] == ven\r\n );\r\n if (foundemp1.length) {\r\n return;\r\n }\r\n let foundemp = this.Dropdowndata.filter(\r\n (e) => e[this.comparekey(e)] == ven\r\n );\r\n if (foundemp.length) {\r\n this.chipSelectedObj.push(foundemp[0]);\r\n if (this.InputFields?.Outputkey) {\r\n this.chipSelectedId.push(foundemp[0][this.InputFields?.Outputkey]);\r\n }\r\n else {\r\n this.chipSelectedId.push(foundemp[0].id);\r\n }\r\n if (this.InputFields?.formkey) {\r\n this.formkeyarr.push(foundemp[0][this.InputFields?.formkey]);\r\n } \r\n this.selected()\r\n }\r\n }\r\n comparekey(e) {\r\n if (this.InputFields?.comparekey) {\r\n return this.InputFields?.comparekey;\r\n } else {\r\n if (e?.id) {\r\n return 'id';\r\n } else {\r\n return this.InputFields.displaykey;\r\n }\r\n }\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { VsChipdropdownComponent } from './vs-chipdropdown.component';\r\nimport { VsChipddCmpComponent } from './vs-chipdd-cmp/vs-chipdd-cmp.component';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MatGridListModule } from '@angular/material/grid-list';\r\nimport { MatChipsModule } from '@angular/material/chips';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { TranslateModule, TranslateLoader } from '@ngx-translate/core';\r\nimport { HttpClientModule, HttpClient } from '@angular/common/http';\r\n// import {VsSharedModuleModule} from '@unnilouis.org/vs-shared-module'\r\n\r\n\r\n@NgModule({\r\n declarations: [VsChipdropdownComponent, VsChipddCmpComponent],\r\n imports: [MatFormFieldModule,MatInputModule,MatSelectModule,MatAutocompleteModule,FormsModule,ReactiveFormsModule,CommonModule,MatGridListModule,MatChipsModule,MatIconModule,\r\n TranslateModule,\r\n HttpClientModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: httpTranslateLoader,\r\n deps: [HttpClient],\r\n },\r\n }),],\r\n // imports: [VsSharedModuleModule],\r\n exports: [VsChipddCmpComponent]\r\n})\r\nexport class VsChipdropdownModule { }\r\nexport function httpTranslateLoader(http: HttpClient) {\r\n return new TranslateHttpLoader(http);\r\n}\r\n","/*\r\n * Public API Surface of vs-chipdropdown\r\n */\r\n\r\nexport * from './lib/vs-chipdropdown.service';\r\nexport * from './lib/vs-chipdropdown.component';\r\nexport * from './lib/vs-chipdropdown.module';\r\nexport * from './lib/vs-chipdd-cmp/vs-chipdd-cmp.component'\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -197,6 +197,7 @@ var VsChipddCmpComponent = /** @class */ (function () {
|
|
|
197
197
|
if ((_e = this.InputFields) === null || _e === void 0 ? void 0 : _e.fronentdata) {
|
|
198
198
|
this.Dropdowndata = (_f = this.InputFields) === null || _f === void 0 ? void 0 : _f.data;
|
|
199
199
|
}
|
|
200
|
+
this.dropdownsearch();
|
|
200
201
|
// else {
|
|
201
202
|
// this.getdropdown('')
|
|
202
203
|
// }
|
|
@@ -266,9 +267,11 @@ var VsChipddCmpComponent = /** @class */ (function () {
|
|
|
266
267
|
VsChipddCmpComponent.prototype.dropdownsearch = function () {
|
|
267
268
|
var _this = this;
|
|
268
269
|
var _a;
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
270
|
+
var controlName = this.dynamciformcontrolparent();
|
|
271
|
+
var control = this.DropdownForm.get(controlName);
|
|
272
|
+
if (control && !((_a = this.InputFields) === null || _a === void 0 ? void 0 : _a.fronentdata)) {
|
|
273
|
+
this.DropdownForm.get(this.dynamciformcontrolparent())
|
|
274
|
+
.valueChanges.pipe(debounceTime(200), distinctUntilChanged(), tap(function () {
|
|
272
275
|
_this.DrodownLoading = true;
|
|
273
276
|
console.log('inside tap');
|
|
274
277
|
}), switchMap(function (value) {
|
|
@@ -396,13 +399,12 @@ var VsChipddCmpComponent = /** @class */ (function () {
|
|
|
396
399
|
if ((_a = this.InputFields) === null || _a === void 0 ? void 0 : _a.Outputkey) {
|
|
397
400
|
this.chipSelectedId.push(foundemp[0][(_b = this.InputFields) === null || _b === void 0 ? void 0 : _b.Outputkey]);
|
|
398
401
|
}
|
|
399
|
-
if ((_c = this.InputFields) === null || _c === void 0 ? void 0 : _c.formkey) {
|
|
400
|
-
this.formkeyarr.push(foundemp[0][(_d = this.InputFields) === null || _d === void 0 ? void 0 : _d.formkey]);
|
|
401
|
-
}
|
|
402
402
|
else {
|
|
403
403
|
this.chipSelectedId.push(foundemp[0].id);
|
|
404
404
|
}
|
|
405
|
-
|
|
405
|
+
if ((_c = this.InputFields) === null || _c === void 0 ? void 0 : _c.formkey) {
|
|
406
|
+
this.formkeyarr.push(foundemp[0][(_d = this.InputFields) === null || _d === void 0 ? void 0 : _d.formkey]);
|
|
407
|
+
}
|
|
406
408
|
this.selected();
|
|
407
409
|
}
|
|
408
410
|
};
|
|
@@ -457,7 +459,7 @@ var VsChipddCmpComponent = /** @class */ (function () {
|
|
|
457
459
|
VsChipddCmpComponent = __decorate([
|
|
458
460
|
Component({
|
|
459
461
|
selector: 'lib-vs-chipdd-cmp',
|
|
460
|
-
template: "<div>\r\n <form [formGroup]=\"DropdownForm\" id=\"matChip-size\">\r\n <!-- class=\"mat-chipScroll\" -->\r\n <mat-form-field\r\n appearance=\"outline\"\r\n (click)=\"!this.InputFields?.fronentdata ? this.getdropdown('') : ''\"\r\n >\r\n <mat-label>{{ InputFields?.label | translate }}</mat-label>\r\n <!-- class=\"chip-container\" -->\r\n <mat-chip-list multiple #chipListvendor>\r\n <!-- class=\"mat-chipEx\" -->\r\n <mat-chip\r\n *ngFor=\"let obj of chipSelectedObj\"\r\n [removable]=\"true\"\r\n (removed)=\"removechip(obj)\"\r\n >\r\n {{ obj[InputFields?.displaykey] }}\r\n <mat-icon matChipRemove>cancel</mat-icon>\r\n </mat-chip>\r\n <!-- class=\"matformfieldinputstyle\" -->\r\n <input\r\n #DropInput\r\n [matAutocomplete]=\"scrolll\"\r\n
|
|
462
|
+
template: "<div>\r\n <form [formGroup]=\"DropdownForm\" id=\"matChip-size\">\r\n <!-- class=\"mat-chipScroll\" -->\r\n <mat-form-field\r\n appearance=\"outline\"\r\n (click)=\"!this.InputFields?.fronentdata ? this.getdropdown('') : ''\"\r\n >\r\n <mat-label>{{ InputFields?.label | translate }}</mat-label>\r\n <!-- class=\"chip-container\" -->\r\n <mat-chip-list multiple #chipListvendor>\r\n <!-- class=\"mat-chipEx\" -->\r\n <mat-chip\r\n *ngFor=\"let obj of chipSelectedObj\"\r\n [removable]=\"true\"\r\n (removed)=\"removechip(obj)\"\r\n >\r\n {{ obj[InputFields?.displaykey] }}\r\n <mat-icon matChipRemove>cancel</mat-icon>\r\n </mat-chip>\r\n <!-- class=\"matformfieldinputstyle\" -->\r\n <input\r\n #DropInput\r\n [matAutocomplete]=\"scrolll\"\r\n [matChipInputFor]=\"chipListvendor\"\r\n [matChipInputSeparatorKeyCodes]=\"separatorsKeysCodes\"\r\n [matChipInputAddOnBlur]=\"true\"\r\n #autoCompleteInput=\"matAutocompleteTrigger\"\r\n [formControlName]=\"this.dynamciformcontrolparent()\"\r\n />\r\n </mat-chip-list>\r\n <mat-autocomplete\r\n #scrolll=\"matAutocomplete\"\r\n (opened)=\"autocompleteAppScroll()\"\r\n >\r\n <ng-container>\r\n <mat-option\r\n *ngFor=\"let dropvalues of Dropdowndata\"\r\n [value]=\"\r\n this.InputFields?.formkey\r\n ? dropvalues[this.InputFields?.formkey]\r\n : dropvalues\r\n \"\r\n (onSelectionChange)=\"venSelected(dropvalues)\"\r\n >\r\n {{ dropvalues[InputFields?.displaykey] }}\r\n </mat-option>\r\n </ng-container>\r\n </mat-autocomplete>\r\n </mat-form-field>\r\n </form>\r\n</div>\r\n<!-- (click)=\"selected()\"\r\n -->\r\n<!-- (optionSelected)=\"venSelected($event)\"\r\n -->\r\n",
|
|
461
463
|
styles: [""]
|
|
462
464
|
})
|
|
463
465
|
], VsChipddCmpComponent);
|