@qubesense/customer-farm 0.1.8 → 0.2.0
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/esm2020/lib/customer-farm.component.mjs +18 -3
- package/esm2020/lib/customer-farm.service.mjs +11 -1
- package/esm2020/lib/dependencies/customer-farm-api-urls.mjs +3 -1
- package/fesm2015/qubesense-customer-farm.mjs +35 -4
- package/fesm2015/qubesense-customer-farm.mjs.map +1 -1
- package/fesm2020/qubesense-customer-farm.mjs +31 -4
- package/fesm2020/qubesense-customer-farm.mjs.map +1 -1
- package/lib/customer-farm.component.d.ts +2 -0
- package/lib/customer-farm.service.d.ts +1 -0
- package/lib/dependencies/customer-farm-api-urls.d.ts +1 -0
- package/package.json +1 -1
|
@@ -9,6 +9,8 @@ import * as i3 from "@angular/forms";
|
|
|
9
9
|
import * as i4 from "@angular/material/form-field";
|
|
10
10
|
import * as i5 from "@angular/material/input";
|
|
11
11
|
import * as i6 from "@angular/common";
|
|
12
|
+
import * as i7 from "@angular/material/core";
|
|
13
|
+
import * as i8 from "@angular/material/select";
|
|
12
14
|
export class CustomerFarmComponent {
|
|
13
15
|
constructor(customerFarmService, jsonForms, applicationRoleMenusService, formBuilder, errorLogService, toastr) {
|
|
14
16
|
this.customerFarmService = customerFarmService;
|
|
@@ -25,6 +27,7 @@ export class CustomerFarmComponent {
|
|
|
25
27
|
this.hideButtons = false;
|
|
26
28
|
this.isViewCall = false;
|
|
27
29
|
this.speciesList = [];
|
|
30
|
+
this.warehouseList = [];
|
|
28
31
|
this.permission = [];
|
|
29
32
|
this.userData = [];
|
|
30
33
|
this.gridConfiguration.formCodeForJsonHeader = 'CUFA';
|
|
@@ -32,6 +35,7 @@ export class CustomerFarmComponent {
|
|
|
32
35
|
}
|
|
33
36
|
async ngOnInit() {
|
|
34
37
|
this.DeclareForm();
|
|
38
|
+
this.getWarehouseList();
|
|
35
39
|
if (this.customerFarmConfiguration.showGrid) {
|
|
36
40
|
this.gridConfiguration.formCodeForJsonHeader = 'CUFA';
|
|
37
41
|
this.gridConfiguration.formCodeForGridPermissions = this.customerFarmConfiguration.customerFarmGridConfigration.formCodeForGridPermission;
|
|
@@ -39,6 +43,7 @@ export class CustomerFarmComponent {
|
|
|
39
43
|
await this.permissionMethod();
|
|
40
44
|
//this.gridConfiguration.actions = { 'View': false, 'Edit': true, 'Delete': true, 'Generate PDF': false };
|
|
41
45
|
this.GetListData();
|
|
46
|
+
//this.getWarehouseList();
|
|
42
47
|
}
|
|
43
48
|
}
|
|
44
49
|
async permissionMethod() {
|
|
@@ -196,6 +201,16 @@ export class CustomerFarmComponent {
|
|
|
196
201
|
this.customerFarmForm.disable();
|
|
197
202
|
});
|
|
198
203
|
}
|
|
204
|
+
async getWarehouseList() {
|
|
205
|
+
try {
|
|
206
|
+
const getResponse = await this.customerFarmService.GetWarehouseDropdownList();
|
|
207
|
+
this.warehouseList = getResponse.apiData;
|
|
208
|
+
}
|
|
209
|
+
catch (error) {
|
|
210
|
+
this.errorLogService.saveError(error);
|
|
211
|
+
this.toastr.ShowAllErrors(error.error.message.userMessage);
|
|
212
|
+
}
|
|
213
|
+
}
|
|
199
214
|
/**
|
|
200
215
|
* @description
|
|
201
216
|
* get data for Customer grid list
|
|
@@ -216,13 +231,13 @@ export class CustomerFarmComponent {
|
|
|
216
231
|
}
|
|
217
232
|
}
|
|
218
233
|
CustomerFarmComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: CustomerFarmComponent, deps: [{ token: i1.CustomerFarmService }, { token: i2.JsonFormsService }, { token: i2.ApplicationRoleMenusService }, { token: i3.FormBuilder }, { token: i2.ErrorLogService }, { token: i2.ToastrNotificationService }], target: i0.ɵɵFactoryTarget.Component });
|
|
219
|
-
CustomerFarmComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: CustomerFarmComponent, selector: "lib-customer-farm", inputs: { customerFarmConfiguration: "customerFarmConfiguration" }, outputs: { customerFarmData: "customerFarmData" }, ngImport: i0, template: "<div class=\"flex flex-col flex-auto min-w-0 w-full\">\r\n <!-- form code starts here -->\r\n <!--content-->\r\n <div class=\"sm:w-full overflow-hidden\" *ngIf=\"customerFarmConfiguration.showModal\">\r\n\r\n <!--form body-->\r\n <form class=\"flex flex-col overflow-hidden\" [formGroup]=\"customerFarmForm\">\r\n <!-- Customer Farm section start -->\r\n\r\n <div class=\"sm:flex\">\r\n <div class=\"w-full\">\r\n <div class=\"sm:flex px-8 pt-4\">\r\n <mat-form-field class=\"flex-auto w-full mr-4\"\r\n *ngIf=\"customerFarmConfiguration.allowedCustomerFarmFields.customerName\">\r\n <mat-label>Client Name</mat-label>\r\n <input matInput id=\"customerName\" placeholder=\"Client Name\" pattern=\"^[a-zA-Z ]*$\"\r\n minlength=\"3\" [formControlName]=\"'customerName'\" (change)=\"emitDataToParent()\">\r\n <mat-error\r\n *ngIf=\"customerFarmForm.get('customerName').hasError('required') && customerFarmConfiguration.requiredCustomerFarmFields.customerName \">\r\n Client Name is required\r\n </mat-error>\r\n <mat-error *ngIf=\"customerFarmForm.get('customerName').hasError('pattern')\">\r\n Please enter valid Client name\r\n </mat-error>\r\n <mat-error *ngIf=\"customerFarmForm.get('customerName').hasError('minlength')\">\r\n Client name must be of atleast 3 characters\r\n </mat-error>\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"flex-auto w-full\"\r\n *ngIf=\"customerFarmConfiguration.allowedCustomerFarmFields.defaultWarehouse\">\r\n <mat-label>Default Warehouse</mat-label>\r\n <
|
|
234
|
+
CustomerFarmComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: CustomerFarmComponent, selector: "lib-customer-farm", inputs: { customerFarmConfiguration: "customerFarmConfiguration" }, outputs: { customerFarmData: "customerFarmData" }, ngImport: i0, template: "<div class=\"flex flex-col flex-auto min-w-0 w-full\">\r\n <!-- form code starts here -->\r\n <!--content-->\r\n <div class=\"sm:w-full overflow-hidden\" *ngIf=\"customerFarmConfiguration.showModal\">\r\n\r\n <!--form body-->\r\n <form class=\"flex flex-col overflow-hidden\" [formGroup]=\"customerFarmForm\">\r\n <!-- Customer Farm section start -->\r\n\r\n <div class=\"sm:flex\">\r\n <div class=\"w-full\">\r\n <div class=\"sm:flex px-8 pt-4\">\r\n <mat-form-field class=\"flex-auto w-full mr-4\"\r\n *ngIf=\"customerFarmConfiguration.allowedCustomerFarmFields.customerName\">\r\n <mat-label>Client Name</mat-label>\r\n <input matInput id=\"customerName\" placeholder=\"Client Name\" pattern=\"^[a-zA-Z ]*$\"\r\n minlength=\"3\" [formControlName]=\"'customerName'\" (change)=\"emitDataToParent()\">\r\n <mat-error\r\n *ngIf=\"customerFarmForm.get('customerName').hasError('required') && customerFarmConfiguration.requiredCustomerFarmFields.customerName \">\r\n Client Name is required\r\n </mat-error>\r\n <mat-error *ngIf=\"customerFarmForm.get('customerName').hasError('pattern')\">\r\n Please enter valid Client name\r\n </mat-error>\r\n <mat-error *ngIf=\"customerFarmForm.get('customerName').hasError('minlength')\">\r\n Client name must be of atleast 3 characters\r\n </mat-error>\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"flex-auto w-full\"\r\n *ngIf=\"customerFarmConfiguration.allowedCustomerFarmFields.defaultWarehouse\">\r\n <mat-label>Default Warehouse</mat-label>\r\n <mat-select matSelect [formControlName]=\"'defaultWarehouse'\" (selectionChange)=\"emitDataToParent()\">\r\n <mat-option *ngFor=\"let warehouse of warehouseList\"\r\n [value]=\"warehouse.dataValue\">{{warehouse.dataText}}</mat-option>\r\n </mat-select>\r\n <mat-error\r\n *ngIf=\"customerFarmForm.get('defaultWarehouse').hasError('required') && customerFarmConfiguration.requiredCustomerFarmFields.defaultWarehouse\">\r\n Default Warehouse is required\r\n </mat-error>\r\n </mat-form-field>\r\n </div>\r\n\r\n <div class=\"sm:flex px-8 pt-4\">\r\n <mat-form-field class=\"flex-auto w-full mr-4\"\r\n *ngIf=\"customerFarmConfiguration.allowedCustomerFarmFields.personInCharge\">\r\n <mat-label>Person In Charge</mat-label>\r\n <input matInput id=\"personInCharge\" placeholder=\"Person In Charge\"\r\n [formControlName]=\"'personInCharge'\" (change)=\"emitDataToParent()\">\r\n <mat-error\r\n *ngIf=\"customerFarmForm.get('personInCharge').hasError('required') && customerFarmConfiguration.requiredCustomerFarmFields.personInCharge\">\r\n Person In Charge is required\r\n </mat-error>\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"flex-auto w-full\"\r\n *ngIf=\"customerFarmConfiguration.allowedCustomerFarmFields.displayName\">\r\n <mat-label>Display Name</mat-label>\r\n <input matInput id=\"displayName\" placeholder=\"Display Name\"\r\n [formControlName]=\"'displayName'\" (change)=\"emitDataToParent()\">\r\n </mat-form-field>\r\n </div>\r\n\r\n <div class=\"sm:flex px-8 pt-4\">\r\n <mat-form-field class=\"flex-auto w-full mr-4\"\r\n *ngIf=\"customerFarmConfiguration.allowedCustomerFarmFields.primaryVetId\">\r\n <mat-label>Primary Vet</mat-label>\r\n <input matInput id=\"primaryVetId\" placeholder=\"Primary Vet\"\r\n [formControlName]=\"'primaryVetId'\" (change)=\"emitDataToParent()\">\r\n <mat-error\r\n *ngIf=\"customerFarmForm.get('primaryVetId').hasError('required') && customerFarmConfiguration.requiredCustomerFarmFields.primaryVetId\">\r\n Primary Vet is required\r\n </mat-error>\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"flex-auto w-full\"\r\n *ngIf=\"customerFarmConfiguration.allowedCustomerFarmFields.PICTattoo\">\r\n <mat-label>PIC/Tattoo (if applicable)</mat-label>\r\n <input matInput id=\"PICTattoo\" placeholder=\"PIC/Tattoo\" [formControlName]=\"'PICTattoo'\"\r\n (change)=\"emitDataToParent()\">\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n <!-- Customer Farm section End -->\r\n\r\n </form>\r\n </div>\r\n <!-- form code ends here -->\r\n\r\n</div>\r\n<div *ngIf=\"customerFarmConfiguration.showGrid\">\r\n <lib-kendo-grid-view [configuration]=\"gridConfiguration\" (events)=\"handleGridEvents($event)\"></lib-kendo-grid-view>\r\n </div>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i4.MatError, selector: "mat-error", inputs: ["id"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "directive", type: i5.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i3.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i7.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: i8.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "component", type: i2.KendoGridViewComponent, selector: "lib-kendo-grid-view", inputs: ["configuration"], outputs: ["events"] }] });
|
|
220
235
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: CustomerFarmComponent, decorators: [{
|
|
221
236
|
type: Component,
|
|
222
|
-
args: [{ selector: 'lib-customer-farm', template: "<div class=\"flex flex-col flex-auto min-w-0 w-full\">\r\n <!-- form code starts here -->\r\n <!--content-->\r\n <div class=\"sm:w-full overflow-hidden\" *ngIf=\"customerFarmConfiguration.showModal\">\r\n\r\n <!--form body-->\r\n <form class=\"flex flex-col overflow-hidden\" [formGroup]=\"customerFarmForm\">\r\n <!-- Customer Farm section start -->\r\n\r\n <div class=\"sm:flex\">\r\n <div class=\"w-full\">\r\n <div class=\"sm:flex px-8 pt-4\">\r\n <mat-form-field class=\"flex-auto w-full mr-4\"\r\n *ngIf=\"customerFarmConfiguration.allowedCustomerFarmFields.customerName\">\r\n <mat-label>Client Name</mat-label>\r\n <input matInput id=\"customerName\" placeholder=\"Client Name\" pattern=\"^[a-zA-Z ]*$\"\r\n minlength=\"3\" [formControlName]=\"'customerName'\" (change)=\"emitDataToParent()\">\r\n <mat-error\r\n *ngIf=\"customerFarmForm.get('customerName').hasError('required') && customerFarmConfiguration.requiredCustomerFarmFields.customerName \">\r\n Client Name is required\r\n </mat-error>\r\n <mat-error *ngIf=\"customerFarmForm.get('customerName').hasError('pattern')\">\r\n Please enter valid Client name\r\n </mat-error>\r\n <mat-error *ngIf=\"customerFarmForm.get('customerName').hasError('minlength')\">\r\n Client name must be of atleast 3 characters\r\n </mat-error>\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"flex-auto w-full\"\r\n *ngIf=\"customerFarmConfiguration.allowedCustomerFarmFields.defaultWarehouse\">\r\n <mat-label>Default Warehouse</mat-label>\r\n <
|
|
237
|
+
args: [{ selector: 'lib-customer-farm', template: "<div class=\"flex flex-col flex-auto min-w-0 w-full\">\r\n <!-- form code starts here -->\r\n <!--content-->\r\n <div class=\"sm:w-full overflow-hidden\" *ngIf=\"customerFarmConfiguration.showModal\">\r\n\r\n <!--form body-->\r\n <form class=\"flex flex-col overflow-hidden\" [formGroup]=\"customerFarmForm\">\r\n <!-- Customer Farm section start -->\r\n\r\n <div class=\"sm:flex\">\r\n <div class=\"w-full\">\r\n <div class=\"sm:flex px-8 pt-4\">\r\n <mat-form-field class=\"flex-auto w-full mr-4\"\r\n *ngIf=\"customerFarmConfiguration.allowedCustomerFarmFields.customerName\">\r\n <mat-label>Client Name</mat-label>\r\n <input matInput id=\"customerName\" placeholder=\"Client Name\" pattern=\"^[a-zA-Z ]*$\"\r\n minlength=\"3\" [formControlName]=\"'customerName'\" (change)=\"emitDataToParent()\">\r\n <mat-error\r\n *ngIf=\"customerFarmForm.get('customerName').hasError('required') && customerFarmConfiguration.requiredCustomerFarmFields.customerName \">\r\n Client Name is required\r\n </mat-error>\r\n <mat-error *ngIf=\"customerFarmForm.get('customerName').hasError('pattern')\">\r\n Please enter valid Client name\r\n </mat-error>\r\n <mat-error *ngIf=\"customerFarmForm.get('customerName').hasError('minlength')\">\r\n Client name must be of atleast 3 characters\r\n </mat-error>\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"flex-auto w-full\"\r\n *ngIf=\"customerFarmConfiguration.allowedCustomerFarmFields.defaultWarehouse\">\r\n <mat-label>Default Warehouse</mat-label>\r\n <mat-select matSelect [formControlName]=\"'defaultWarehouse'\" (selectionChange)=\"emitDataToParent()\">\r\n <mat-option *ngFor=\"let warehouse of warehouseList\"\r\n [value]=\"warehouse.dataValue\">{{warehouse.dataText}}</mat-option>\r\n </mat-select>\r\n <mat-error\r\n *ngIf=\"customerFarmForm.get('defaultWarehouse').hasError('required') && customerFarmConfiguration.requiredCustomerFarmFields.defaultWarehouse\">\r\n Default Warehouse is required\r\n </mat-error>\r\n </mat-form-field>\r\n </div>\r\n\r\n <div class=\"sm:flex px-8 pt-4\">\r\n <mat-form-field class=\"flex-auto w-full mr-4\"\r\n *ngIf=\"customerFarmConfiguration.allowedCustomerFarmFields.personInCharge\">\r\n <mat-label>Person In Charge</mat-label>\r\n <input matInput id=\"personInCharge\" placeholder=\"Person In Charge\"\r\n [formControlName]=\"'personInCharge'\" (change)=\"emitDataToParent()\">\r\n <mat-error\r\n *ngIf=\"customerFarmForm.get('personInCharge').hasError('required') && customerFarmConfiguration.requiredCustomerFarmFields.personInCharge\">\r\n Person In Charge is required\r\n </mat-error>\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"flex-auto w-full\"\r\n *ngIf=\"customerFarmConfiguration.allowedCustomerFarmFields.displayName\">\r\n <mat-label>Display Name</mat-label>\r\n <input matInput id=\"displayName\" placeholder=\"Display Name\"\r\n [formControlName]=\"'displayName'\" (change)=\"emitDataToParent()\">\r\n </mat-form-field>\r\n </div>\r\n\r\n <div class=\"sm:flex px-8 pt-4\">\r\n <mat-form-field class=\"flex-auto w-full mr-4\"\r\n *ngIf=\"customerFarmConfiguration.allowedCustomerFarmFields.primaryVetId\">\r\n <mat-label>Primary Vet</mat-label>\r\n <input matInput id=\"primaryVetId\" placeholder=\"Primary Vet\"\r\n [formControlName]=\"'primaryVetId'\" (change)=\"emitDataToParent()\">\r\n <mat-error\r\n *ngIf=\"customerFarmForm.get('primaryVetId').hasError('required') && customerFarmConfiguration.requiredCustomerFarmFields.primaryVetId\">\r\n Primary Vet is required\r\n </mat-error>\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"flex-auto w-full\"\r\n *ngIf=\"customerFarmConfiguration.allowedCustomerFarmFields.PICTattoo\">\r\n <mat-label>PIC/Tattoo (if applicable)</mat-label>\r\n <input matInput id=\"PICTattoo\" placeholder=\"PIC/Tattoo\" [formControlName]=\"'PICTattoo'\"\r\n (change)=\"emitDataToParent()\">\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n <!-- Customer Farm section End -->\r\n\r\n </form>\r\n </div>\r\n <!-- form code ends here -->\r\n\r\n</div>\r\n<div *ngIf=\"customerFarmConfiguration.showGrid\">\r\n <lib-kendo-grid-view [configuration]=\"gridConfiguration\" (events)=\"handleGridEvents($event)\"></lib-kendo-grid-view>\r\n </div>\r\n" }]
|
|
223
238
|
}], ctorParameters: function () { return [{ type: i1.CustomerFarmService }, { type: i2.JsonFormsService }, { type: i2.ApplicationRoleMenusService }, { type: i3.FormBuilder }, { type: i2.ErrorLogService }, { type: i2.ToastrNotificationService }]; }, propDecorators: { customerFarmData: [{
|
|
224
239
|
type: Output
|
|
225
240
|
}], customerFarmConfiguration: [{
|
|
226
241
|
type: Input
|
|
227
242
|
}] } });
|
|
228
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tZXItZmFybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jdXN0b21lci1mYXJtL3NyYy9saWIvY3VzdG9tZXItZmFybS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jdXN0b21lci1mYXJtL3NyYy9saWIvY3VzdG9tZXItZmFybS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sRUFBMEIsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDcEUsT0FBTyxFQUFFLDZCQUE2QixFQUFFLGlCQUFpQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDdEcsT0FBTyxFQUFtRiwrQkFBK0IsRUFBNkIsTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7Ozs7QUFRdkwsTUFBTSxPQUFPLHFCQUFxQjtJQWlCaEMsWUFBb0IsbUJBQXdDLEVBQ2xELFNBQTJCLEVBQzNCLDJCQUF3RCxFQUN4RCxXQUF3QixFQUN4QixlQUFnQyxFQUNoQyxNQUFpQztRQUx2Qix3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBQ2xELGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBQzNCLGdDQUEyQixHQUEzQiwyQkFBMkIsQ0FBNkI7UUFDeEQsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQ2hDLFdBQU0sR0FBTixNQUFNLENBQTJCO1FBckJqQyxxQkFBZ0IsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBQ3JDLDhCQUF5QixHQUFrQyxJQUFJLDZCQUE2QixFQUFFLENBQUM7UUFFL0csaUJBQVksR0FBYSxFQUFFLENBQUM7UUFDckIsYUFBUSxHQUFVLEVBQUUsQ0FBQztRQUM1QixzQkFBaUIsR0FBb0Ms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QUFDO1lBQ2xGLFdBQVcsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFO2dCQUNuQyxNQUFNLENBQUMsWUFBWSxHQUFHLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUN0RCxDQUFDLENBQUMsQ0FBQztZQUNILElBQUksQ0FBQyxRQUFRLEdBQUcsV0FBVyxDQUFDLE9BQU8sQ0FBQztTQUNyQztRQUFDLE9BQU8sS0FBSyxFQUFFO1lBQ2QsSUFBSSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDdEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUM7U0FDNUQ7SUFDSCxDQUFDOztrSEFuT1UscUJBQXFCO3NHQUFyQixxQkFBcUIsZ0xDWGxDLCt4TEE2RkE7MkZEbEZhLHFCQUFxQjtrQkFMakMsU0FBUzsrQkFDRSxtQkFBbUI7bVJBS25CLGdCQUFnQjtzQkFBekIsTUFBTTtnQkFDUyx5QkFBeUI7c0JBQXhDLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IEN1c3RvbWVyRmFybUNvbmZpZ3JhdGlvbk1vZGVsLCBDdXN0b21lckZhcm1Nb2RlbCB9IGZyb20gJy4vZGVwZW5kZW5jaWVzL2N1c3RvbWVyLWZhcm0tbW9kZWwnO1xyXG5pbXBvcnQgeyBBcHBsaWNhdGlvblJvbGVNZW51c1NlcnZpY2UsIEVycm9yTG9nU2VydmljZSwgR3JpZEV2ZW50c01vZGVsLCBKc29uRm9ybXNTZXJ2aWNlLCBLZW5kb0dyaWR2aWV3Q29uZmlndXJhdGlvbk1vZGVsLCBUb2FzdHJOb3RpZmljYXRpb25TZXJ2aWNlIH0gZnJvbSAnQHF1YmVzZW5zZS9iYXNlLXNlcnZpY2VzJztcclxuaW1wb3J0IHsgQ3VzdG9tZXJGYXJtU2VydmljZSB9IGZyb20gJy4vY3VzdG9tZXItZmFybS5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLWN1c3RvbWVyLWZhcm0nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9jdXN0b21lci1mYXJtLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9jdXN0b21lci1mYXJtLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIEN1c3RvbWVyRmFybUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgQE91dHB1dCgpIGN1c3RvbWVyRmFybURhdGEgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICBASW5wdXQoKSBwdWJsaWMgY3VzdG9tZXJGYXJtQ29uZmlndXJhdGlvbjogQ3VzdG9tZXJGYXJtQ29uZmlncmF0aW9uTW9kZWwgPSBuZXcgQ3VzdG9tZXJGYXJtQ29uZmlncmF0aW9uTW9kZWwoKTtcclxuICBjdXN0b21lckZhcm1Gb3JtOiBGb3JtR3JvdXA7XHJcbiAgdXNlck1lc3NhZ2VzOiBzdHJpbmdbXSA9IFtdO1xyXG4gIHB1YmxpYyBncmlkRGF0YTogYW55W10gPSBbXTtcclxuICBncmlkQ29uZmlndXJhdGlvbjogS2VuZG9Hcmlkdmlld0NvbmZpZ3VyYXRpb25Nb2RlbCA9IG5ldyBLZW5kb0dyaWR2aWV3Q29uZmlndXJhdGlvbk1vZGVsKCk7XHJcbiAgaGlkZUJ1dHRvbnMgPSBmYWxzZTtcclxuICBpc1ZpZXdDYWxsID0gZmFsc2U7XHJcbiAgc3BlY2llc0xpc3Q6IGFueVtdID0gW107XHJcbiAgZmlsdGVyZWRDdXN0b21lcnM6IFtdO1xyXG5cclxuICBwZXJtaXNzaW9uOiBhbnkgPSBbXTtcclxuICB1c2VyRGF0YTogYW55ID0gW107XHJcbiAgSGlkZUFkZEJ1dHRvbjogYm9vbGVhbjtcclxuXHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY3VzdG9tZXJGYXJtU2VydmljZTogQ3VzdG9tZXJGYXJtU2VydmljZSxcclxuICAgIHByaXZhdGUganNvbkZvcm1zOiBKc29uRm9ybXNTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBhcHBsaWNhdGlvblJvbGVNZW51c1NlcnZpY2U6IEFwcGxpY2F0aW9uUm9sZU1lbnVzU2VydmljZSxcclxuICAgIHByaXZhdGUgZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyLFxyXG4gICAgcHJpdmF0ZSBlcnJvckxvZ1NlcnZpY2U6IEVycm9yTG9nU2VydmljZSxcclxuICAgIHByaXZhdGUgdG9hc3RyOiBUb2FzdHJOb3RpZmljYXRpb25TZXJ2aWNlXHJcbiAgKSB7XHJcbiAgICB0aGlzLmdyaWRDb25maWd1cmF0aW9uLmZvcm1Db2RlRm9ySnNvbkhlYWRlciA9ICdDVUZBJztcclxuICAgIHRoaXMuZ3JpZENvbmZpZ3VyYXRpb24uZm9ybUNvZGVGb3JHcmlkUGVybWlzc2lvbnMgPSB0aGlzLmN1c3RvbWVyRmFybUNvbmZpZ3VyYXRpb24uY3VzdG9tZXJGYXJtR3JpZENvbmZpZ3JhdGlvbi5mb3JtQ29kZUZvckdyaWRQZXJtaXNzaW9uO1xyXG4gIH1cclxuXHJcbiAgYXN5bmMgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLkRlY2xhcmVGb3JtKCk7XHJcbiAgICBpZiAodGhpcy5jdXN0b21lckZhcm1Db25maWd1cmF0aW9uLnNob3dHcmlkKSB7XHJcbiAgICAgIHRoaXMuZ3JpZENvbmZpZ3VyYXRpb24uZm9ybUNvZGVGb3JKc29uSGVhZGVyID0gJ0NVRkEnO1xyXG4gICAgICB0aGlzLmdyaWRDb25maWd1cmF0aW9uLmZvcm1Db2RlRm9yR3JpZFBlcm1pc3Npb25zID0gdGhpcy5jdXN0b21lckZhcm1Db25maWd1cmF0aW9uLmN1c3RvbWVyRmFybUdyaWRDb25maWdyYXRpb24uZm9ybUNvZGVGb3JHcmlkUGVybWlzc2lvbjtcclxuICAgICAgdGhpcy5ncmlkQ29uZmlndXJhdGlvbi5zaG93TW9kYWwgPSB0cnVlO1xyXG4gICAgICBhd2FpdCB0aGlzLnBlcm1pc3Npb25NZXRob2QoKTtcclxuICAgICAgLy90aGlzLmdyaWRDb25maWd1cmF0aW9uLmFjdGlvbnMgPSB7ICdWaWV3JzogZmFsc2UsICdFZGl0JzogdHJ1ZSwgJ0RlbGV0ZSc6IHRydWUsICdHZW5lcmF0ZSBQREYnOiBmYWxzZSB9OyAgXHJcbiAgICAgIHRoaXMuR2V0TGlzdERhdGEoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBwZXJtaXNzaW9uTWV0aG9kKCkge1xyXG4gICAgdGhpcy51c2VyRGF0YSA9IEpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0oXCJzZXNzaW9uVXNlclwiKSk7XHJcbiAgICBjb25zdCBnZXRSZXNwb25zZSA9IGF3YWl0IHRoaXMuYXBwbGljYXRpb25Sb2xlTWVudXNTZXJ2aWNlLkdldEFzc2lnbmVkUm9sZUF1dGgodGhpcy51c2VyRGF0YS5zZXNzaW9uVXNlci51c2VyRW1haWwsIHRoaXMuZ3JpZENvbmZpZ3VyYXRpb24uZm9ybUNvZGVGb3JHcmlkUGVybWlzc2lvbnMpO1xyXG4gICAgdGhpcy5wZXJtaXNzaW9uID0gZ2V0UmVzcG9uc2UuYXBpRGF0YVswXTtcclxuICAgIHRoaXMuSGlkZUFkZEJ1dHRvbiA9IHRoaXMucGVybWlzc2lvbi5jYW5BZGQgPT0gZmFsc2UgPyB0cnVlIDogZmFsc2U7XHJcbiAgfVxyXG5cclxuICBEZWNsYXJlRm9ybSgpIHtcclxuICAgIHRoaXMuY3VzdG9tZXJGYXJtRm9ybSA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xyXG4gICAgICByZWNvcmRJZDogW251bGxdLFxyXG4gICAgICBjdXN0b21lcklkOiBbbnVsbF0sXHJcbiAgICAgIGN1c3RvbWVyTmFtZTogW251bGxdLFxyXG4gICAgICBkZWZhdWx0V2FyZWhvdXNlOiBbbnVsbF0sXHJcbiAgICAgIHBlcnNvbkluQ2hhcmdlOiBbbnVsbF0sXHJcbiAgICAgIGRpc3BsYXlOYW1lOiBbbnVsbF0sXHJcbiAgICAgIHByaW1hcnlWZXRJZDogW251bGxdLFxyXG4gICAgICBQSUNUYXR0b286IFtudWxsXSxcclxuICAgICAgaXNBY3RpdmU6IFt0cnVlXVxyXG4gICAgfSk7XHJcbiAgICB0aGlzLm9uQ2hhbmdlcygpO1xyXG5cclxuICAgIGlmICh0aGlzLmN1c3RvbWVyRmFybUNvbmZpZ3VyYXRpb24ucmVxdWlyZWRDdXN0b21lckZhcm1GaWVsZHMuY3VzdG9tZXJOYW1lKSB7XHJcbiAgICAgIHRoaXMuY3VzdG9tZXJGYXJtRm9ybS5nZXQoJ2N1c3RvbWVyTmFtZScpLmFkZFZhbGlkYXRvcnMoVmFsaWRhdG9ycy5yZXF1aXJlZCk7XHJcbiAgICAgIHRoaXMuY3VzdG9tZXJGYXJtRm9ybS5nZXQoJ2N1c3RvbWVyTmFtZScpLmFkZFZhbGlkYXRvcnMoVmFsaWRhdG9ycy5wYXR0ZXJuKCdeW2EtekEtWiBdKiQnKSk7XHJcbiAgICAgIHRoaXMuY3VzdG9tZXJGYXJtRm9ybS5nZXQoJ2N1c3RvbWVyTmFtZScpLmFkZFZhbGlkYXRvcnMoVmFsaWRhdG9ycy5taW5MZW5ndGgoMykpO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMuY3VzdG9tZXJGYXJtQ29uZmlndXJhdGlvbi5yZXF1aXJlZEN1c3RvbWVyRmFybUZpZWxkcy5kZWZhdWx0V2FyZWhvdXNlKSB7XHJcbiAgICAgIHRoaXMuY3VzdG9tZXJGYXJtRm9ybS5nZXQoJ2RlZmF1bHRXYXJlaG91c2UnKS5hZGRWYWxpZGF0b3JzKFZhbGlkYXRvcnMucmVxdWlyZWQpO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMuY3VzdG9tZXJGYXJtQ29uZmlndXJhdGlvbi5yZXF1aXJlZEN1c3RvbWVyRmFybUZpZWxkcy5wZXJzb25JbkNoYXJnZSkge1xyXG4gICAgICB0aGlzLmN1c3RvbWVyRmFybUZvcm0uZ2V0KCdwZXJzb25JbkNoYXJnZScpLmFkZFZhbGlkYXRvcnMoVmFsaWRhdG9ycy5yZXF1aXJlZCk7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5jdXN0b21lckZhcm1Db25maWd1cmF0aW9uLnJlcXVpcmVkQ3VzdG9tZXJGYXJtRmllbGRzLnByaW1hcnlWZXRJZCkge1xyXG4gICAgICB0aGlzLmN1c3RvbWVyRmFybUZvcm0uZ2V0KCdwcmltYXJ5VmV0SWQnKS5hZGRWYWxpZGF0b3JzKFZhbGlkYXRvcnMucmVxdWlyZWQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9zdGFuZGFyZCBtZXRob2RzLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuXHJcbiAgICBvbkNoYW5nZXMoKTogdm9pZCB7XHJcbiAgICAgIHRoaXMuY3VzdG9tZXJGYXJtRm9ybS5nZXQoJ2N1c3RvbWVyTmFtZScpLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUodmFsID0+IHtcclxuICAgICAgICB0aGlzLmN1c3RvbWVyRmFybUZvcm0ucGF0Y2hWYWx1ZSh7XHJcbiAgICAgICAgICBkaXNwbGF5TmFtZTogdmFsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAvKipcclxuICAgKiBAZGVzY3JpcHRpb25cclxuICAgKlxyXG4gICAqIGVkaXQgZGF0YSBsaXN0IGl0ZW0gdXNpbmcgZGF0YSBpdGVtIEdVSURcclxuICAgKlxyXG4gICAqIEBwYXJhbSBjdXN0b21lcklkXHJcbiAgICpcclxuICAgKiAgZ2V0cyBjdXN0b21lciBHVUlEIGZyb20gZ3JpZERhdGEgYW5kIHBhc3NlcyBpdCB0byB0aGlzIGZ1bmN0aW9uXHJcbiAgICovXHJcbiAgYXN5bmMgRWRpdERhdGEoY3VzdG9tZXJJZDogc3RyaW5nKSB7XHJcbiAgICBjb25zdCBnZXRSZXNwb25zZSA9IGF3YWl0IHRoaXMuY3VzdG9tZXJGYXJtU2VydmljZS5HZXREYXRhQnlJZChjdXN0b21lcklkKTtcclxuICAgIHRoaXMuY3VzdG9tZXJGYXJtRm9ybS5jb250cm9sc1sncmVjb3JkSWQnXS5zZXRWYWx1ZShnZXRSZXNwb25zZS5hcGlEYXRhLnJlY29yZElkKTtcclxuICAgIHRoaXMuY3VzdG9tZXJGYXJtRm9ybS5jb250cm9sc1snY3VzdG9tZXJJZCddLnNldFZhbHVlKGdldFJlc3BvbnNlLmFwaURhdGEuY3VzdG9tZXJJZCk7XHJcbiAgICB0aGlzLmN1c3RvbWVyRmFybUZvcm0uY29udHJvbHNbJ2N1c3RvbWVyTmFtZSddLnNldFZhbHVlKGdldFJlc3BvbnNlLmFwaURhdGEuY3VzdG9tZXJOYW1lKTtcclxuICAgIHRoaXMuY3VzdG9tZXJGYXJtRm9ybS5jb250cm9sc1snZGVmYXVsdFdhcmVob3VzZSddLnNldFZhbHVlKGdldFJlc3BvbnNlLmFwaURhdGEuZGVmYXVsdFdhcmVob3VzZSk7XHJcbiAgICB0aGlzLmN1c3RvbWVyRmFybUZvcm0uY29udHJvbHNbJ3BlcnNvbkluQ2hhcmdlJ10uc2V0VmFsdWUoZ2V0UmVzcG9uc2UuYXBpRGF0YS5wZXJzb25JbkNoYXJnZSk7XHJcbiAgICB0aGlzLmN1c3RvbWVyRmFybUZvcm0uY29udHJvbHNbJ2Rpc3BsYXlOYW1lJ10uc2V0VmFsdWUoZ2V0UmVzcG9uc2UuYXBpRGF0YS5kaXNwbGF5TmFtZSk7XHJcbiAgICB0aGlzLmN1c3RvbWVyRmFybUZvcm0uY29udHJvbHNbJ3ByaW1hcnlWZXRJZCddLnNldFZhbHVlKGdldFJlc3BvbnNlLmFwaURhdGEucHJpbWFyeVZldElkKTtcclxuICAgIHRoaXMuY3VzdG9tZXJGYXJtRm9ybS5jb250cm9sc1snUElDVGF0dG9vJ10uc2V0VmFsdWUoZ2V0UmVzcG9uc2UuYXBpRGF0YS5waWNUYXR0b28pO1xyXG4gICAgdGhpcy5jdXN0b21lckZhcm1Gb3JtLmNvbnRyb2xzWydpc0FjdGl2ZSddLnNldFZhbHVlKGdldFJlc3BvbnNlLmFwaURhdGEuaXNBY3RpdmUpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQGRlc2NyaXB0aW9uXHJcbiAgICpcclxuICAgKiB0aGlzIG1ldGhvZCBjb252ZXJ0cyBhbGwgZm9ybSBpbnB1dHMgaW50byBtb2RlbCBjbGFzc1xyXG4gICAqXHJcbiAgICogQHJldHVybnMgbW9kZWwgd2l0aCBuZXcgZm9ybSB2YWx1ZXNcclxuICAgKi9cclxuICBDb252ZXJ0Rm9ybVRvTW9kZWwoKSB7XHJcbiAgICBjb25zdCBjdXN0b21lckZhcm1Nb2RlbCA9IG5ldyBDdXN0b21lckZhcm1Nb2RlbCgpO1xyXG4gICAgY3VzdG9tZXJGYXJtTW9kZWwucmVjb3JkSWQgPSB0aGlzLmN1c3RvbWVyRmFybUZvcm0udmFsdWUucmVjb3JkSWQ7XHJcbiAgICBjdXN0b21lckZhcm1Nb2RlbC5jdXN0b21lck5hbWUgPSB0aGlzLmN1c3RvbWVyRmFybUZvcm0udmFsdWUuY3VzdG9tZXJOYW1lO1xyXG4gICAgY3VzdG9tZXJGYXJtTW9kZWwuZGVmYXVsdFdhcmVob3VzZSA9IHRoaXMuY3VzdG9tZXJGYXJtRm9ybS52YWx1ZS5kZWZhdWx0V2FyZWhvdXNlO1xyXG4gICAgY3VzdG9tZXJGYXJtTW9kZWwucGVyc29uSW5DaGFyZ2UgPSB0aGlzLmN1c3RvbWVyRmFybUZvcm0udmFsdWUucGVyc29uSW5DaGFyZ2U7XHJcbiAgICBjdXN0b21lckZhcm1Nb2RlbC5kaXNwbGF5TmFtZSA9IHRoaXMuY3VzdG9tZXJGYXJtRm9ybS52YWx1ZS5kaXNwbGF5TmFtZTtcclxuICAgIGN1c3RvbWVyRmFybU1vZGVsLnByaW1hcnlWZXRJZCA9IHRoaXMuY3VzdG9tZXJGYXJtRm9ybS52YWx1ZS5wcmltYXJ5VmV0SWQ7XHJcbiAgICBjdXN0b21lckZhcm1Nb2RlbC5QSUNUYXR0b28gPSB0aGlzLmN1c3RvbWVyRmFybUZvcm0udmFsdWUuUElDVGF0dG9vO1xyXG4gICAgY3VzdG9tZXJGYXJtTW9kZWwuY3VzdG9tZXJJZCA9IHRoaXMuY3VzdG9tZXJGYXJtQ29uZmlndXJhdGlvbi5jdXN0b21lcklkO1xyXG4gICAgY3VzdG9tZXJGYXJtTW9kZWwuZm9ybUNvZGUgPSB0aGlzLmN1c3RvbWVyRmFybUNvbmZpZ3VyYXRpb24uZm9ybUNvZGU7XHJcblxyXG4gICAgcmV0dXJuIGN1c3RvbWVyRmFybU1vZGVsO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQGRlc2NyaXB0aW9uXHJcbiAgICogY2xlYXIgZm9ybSBkYXRhXHJcbiAgICovXHJcbiAgQ2xlYXJGb3JtKCkge1xyXG4gICAgdGhpcy5EZWNsYXJlRm9ybSgpO1xyXG4gIH1cclxuXHJcbiAgZW1pdERhdGFUb1BhcmVudCgpIHtcclxuICAgIGxldCBjdXN0b21lckZhcm1Nb2RlbCA9IG5ldyBDdXN0b21lckZhcm1Nb2RlbCgpO1xyXG4gICAgY3VzdG9tZXJGYXJtTW9kZWwgPSB0aGlzLkNvbnZlcnRGb3JtVG9Nb2RlbCgpO1xyXG4gICAgdGhpcy5jdXN0b21lckZhcm1EYXRhLmVtaXQoY3VzdG9tZXJGYXJtTW9kZWwpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQGRlc2NyaXB0aW9uXHJcbiAgICpcclxuICAgKiBJbnNlcnQgY3VzdG9tZXIgZGF0YSBpbnRvIGRhdGFiYXNlXHJcbiAgICovXHJcbiAgcHVibGljIGFzeW5jIEluc2VydERhdGEoKSB7XHJcbiAgICBsZXQgY3VzdG9tZXJGYXJtTW9kZWwgPSBuZXcgQ3VzdG9tZXJGYXJtTW9kZWwoKTtcclxuICAgIGN1c3RvbWVyRmFybU1vZGVsID0gdGhpcy5Db252ZXJ0Rm9ybVRvTW9kZWwoKTtcclxuICAgIGNvbnN0IGdldFJlc3BvbnNlID0gYXdhaXQgdGhpcy5jdXN0b21lckZhcm1TZXJ2aWNlLkluc2VydERhdGEoY3VzdG9tZXJGYXJtTW9kZWwpO1xyXG4gICAgdGhpcy51c2VyTWVzc2FnZXMgPSBnZXRSZXNwb25zZS5tZXNzYWdlLnVzZXJNZXNzYWdlO1xyXG4gICAgaWYgKHRoaXMuY3VzdG9tZXJGYXJtQ29uZmlndXJhdGlvbi51c2VyTWVzc2FnZXMpIHtcclxuICAgICAgdGhpcy50b2FzdHIuU2hvd1N1Y2Nlc3ModGhpcy51c2VyTWVzc2FnZXMudG9TdHJpbmcoKSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBAZGVzY3JpcHRpb25cclxuICAgKlxyXG4gICAqIHVwZGF0ZSBjdXN0b21lciBkYXRhIGludG8gZGF0YWJhc2VcclxuICAgKi9cclxuICBwdWJsaWMgYXN5bmMgVXBkYXRlRGF0YSgpIHtcclxuICAgIGxldCBjdXN0b21lckZhcm1Nb2RlbCA9IG5ldyBDdXN0b21lckZhcm1Nb2RlbCgpO1xyXG4gICAgY3VzdG9tZXJGYXJtTW9kZWwgPSB0aGlzLkNvbnZlcnRGb3JtVG9Nb2RlbCgpO1xyXG4gICAgY29uc3QgZ2V0UmVzcG9uc2UgPSBhd2FpdCB0aGlzLmN1c3RvbWVyRmFybVNlcnZpY2UuVXBkYXRlRGF0YShjdXN0b21lckZhcm1Nb2RlbCk7XHJcbiAgICB0aGlzLnVzZXJNZXNzYWdlcyA9IGdldFJlc3BvbnNlLm1lc3NhZ2UudXNlck1lc3NhZ2U7XHJcbiAgICBpZiAodGhpcy5jdXN0b21lckZhcm1Db25maWd1cmF0aW9uLnVzZXJNZXNzYWdlcykge1xyXG4gICAgICB0aGlzLnRvYXN0ci5TaG93U3VjY2Vzcyh0aGlzLnVzZXJNZXNzYWdlcy50b1N0cmluZygpKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICogQGRlc2NyaXB0aW9uXHJcbiAgKlxyXG4gICogRGVsZXRlIGN1c3RvbWVyIGRhdGEgaW50byBkYXRhYmFzZVxyXG4gICovXHJcbiAgcHVibGljIGFzeW5jIERlbGV0ZURhdGEodmFsdWUpIHtcclxuICAgIGNvbnN0IGdldFJlc3BvbnNlID0gYXdhaXQgdGhpcy5jdXN0b21lckZhcm1TZXJ2aWNlLkRlbGV0ZURhdGEodmFsdWUpO1xyXG4gICAgdGhpcy51c2VyTWVzc2FnZXMgPSBnZXRSZXNwb25zZS5tZXNzYWdlLnVzZXJNZXNzYWdlO1xyXG4gICAgaWYgKHRoaXMuY3VzdG9tZXJGYXJtQ29uZmlndXJhdGlvbi51c2VyTWVzc2FnZXMpIHtcclxuICAgICAgdGhpcy50b2FzdHIuU2hvd1N1Y2Nlc3ModGhpcy51c2VyTWVzc2FnZXMudG9TdHJpbmcoKSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgICAqIEBkZXNjcmlwdGlvblxyXG4gICAgICogXHJcbiAgICAgKiBHcmlkIGV2ZW50cyBjYWxsc1xyXG4gICAgICovXHJcbiAgaGFuZGxlR3JpZEV2ZW50cyhncmlkRXZlbnRzOiBHcmlkRXZlbnRzTW9kZWwpIHtcclxuICAgIGdyaWRFdmVudHMuZWRpdFJlY29yZC5zdWJzY3JpYmUoKHJlY29yZElkKSA9PiB7XHJcbiAgICAgIHRoaXMuaGlkZUJ1dHRvbnMgPSBmYWxzZTtcclxuICAgICAgdGhpcy5pc1ZpZXdDYWxsID0gZmFsc2U7XHJcbiAgICAgIHRoaXMuRWRpdERhdGEocmVjb3JkSWQpO1xyXG4gICAgICB0aGlzLmN1c3RvbWVyRmFybUZvcm0uZW5hYmxlKCk7XHJcbiAgICB9KTtcclxuICAgIGdyaWRFdmVudHMuZGVsZXRlUmVjb3JkLnN1YnNjcmliZSgocmVjb3JkSWQpID0+IHtcclxuICAgICAgdGhpcy5EZWxldGVEYXRhKHJlY29yZElkKTtcclxuICAgIH0pO1xyXG4gICAgZ3JpZEV2ZW50cy52aWV3UmVjb3JkLnN1YnNjcmliZShhc3luYyAocmVjb3JkSWQpID0+IHtcclxuICAgICAgdGhpcy5FZGl0RGF0YShyZWNvcmRJZCk7XHJcbiAgICAgIHRoaXMuY3VzdG9tZXJGYXJtRm9ybS5kaXNhYmxlKCk7XHJcbiAgICAgIFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuXHJcbiAgLyoqXHJcbiAgICAqIEBkZXNjcmlwdGlvblxyXG4gICAgKiBnZXQgZGF0YSBmb3IgQ3VzdG9tZXIgZ3JpZCBsaXN0XHJcbiAgICAqL1xyXG4gIHB1YmxpYyBhc3luYyBHZXRMaXN0RGF0YSgpIHtcclxuICAgIGNvbnN0IGN1c3RvbWVyRmFybU1vZGVsID0gbmV3IEN1c3RvbWVyRmFybU1vZGVsKCk7XHJcbiAgICB0cnkge1xyXG4gICAgICBjb25zdCBnZXRSZXNwb25zZSA9IGF3YWl0IHRoaXMuY3VzdG9tZXJGYXJtU2VydmljZS5HZXRMaXN0RGF0YShjdXN0b21lckZhcm1Nb2RlbCk7XHJcbiAgICAgIGdldFJlc3BvbnNlLmFwaURhdGEuZm9yRWFjaChyZWNvcmQgPT4ge1xyXG4gICAgICAgIHJlY29yZC5jcmVhdGVkT25VVEMgPSBuZXcgRGF0ZShyZWNvcmQuY3JlYXRlZE9uVVRDKTtcclxuICAgICAgfSk7XHJcbiAgICAgIHRoaXMuZ3JpZERhdGEgPSBnZXRSZXNwb25zZS5hcGlEYXRhO1xyXG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgICAgdGhpcy5lcnJvckxvZ1NlcnZpY2Uuc2F2ZUVycm9yKGVycm9yKTtcclxuICAgICAgdGhpcy50b2FzdHIuU2hvd0FsbEVycm9ycyhlcnJvci5lcnJvci5tZXNzYWdlLnVzZXJNZXNzYWdlKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgZmxleC1hdXRvIG1pbi13LTAgdy1mdWxsXCI+XHJcbiAgICA8IS0tIGZvcm0gY29kZSBzdGFydHMgaGVyZSAtLT5cclxuICAgIDwhLS1jb250ZW50LS0+XHJcbiAgICA8ZGl2IGNsYXNzPVwic206dy1mdWxsIG92ZXJmbG93LWhpZGRlblwiICpuZ0lmPVwiY3VzdG9tZXJGYXJtQ29uZmlndXJhdGlvbi5zaG93TW9kYWxcIj5cclxuXHJcbiAgICAgICAgPCEtLWZvcm0gYm9keS0tPlxyXG4gICAgICAgIDxmb3JtIGNsYXNzPVwiZmxleCBmbGV4LWNvbCBvdmVyZmxvdy1oaWRkZW5cIiBbZm9ybUdyb3VwXT1cImN1c3RvbWVyRmFybUZvcm1cIj5cclxuICAgICAgICAgICAgPCEtLSBDdXN0b21lciBGYXJtIHNlY3Rpb24gc3RhcnQgIC0tPlxyXG5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNtOmZsZXhcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3LWZ1bGxcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic206ZmxleCBweC04IHB0LTRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiZmxleC1hdXRvIHctZnVsbCBtci00XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiY3VzdG9tZXJGYXJtQ29uZmlndXJhdGlvbi5hbGxvd2VkQ3VzdG9tZXJGYXJtRmllbGRzLmN1c3RvbWVyTmFtZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1sYWJlbD5DbGllbnQgTmFtZTwvbWF0LWxhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IG1hdElucHV0IGlkPVwiY3VzdG9tZXJOYW1lXCIgcGxhY2Vob2xkZXI9XCJDbGllbnQgTmFtZVwiIHBhdHRlcm49XCJeW2EtekEtWiBdKiRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbmxlbmd0aD1cIjNcIiBbZm9ybUNvbnRyb2xOYW1lXT1cIidjdXN0b21lck5hbWUnXCIgKGNoYW5nZSk9XCJlbWl0RGF0YVRvUGFyZW50KClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtZXJyb3JcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImN1c3RvbWVyRmFybUZvcm0uZ2V0KCdjdXN0b21lck5hbWUnKS5oYXNFcnJvcigncmVxdWlyZWQnKSAmJiBjdXN0b21lckZhcm1Db25maWd1cmF0aW9uLnJlcXVpcmVkQ3VzdG9tZXJGYXJtRmllbGRzLmN1c3RvbWVyTmFtZSBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDbGllbnQgTmFtZSBpcyByZXF1aXJlZFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9tYXQtZXJyb3I+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWVycm9yICpuZ0lmPVwiY3VzdG9tZXJGYXJtRm9ybS5nZXQoJ2N1c3RvbWVyTmFtZScpLmhhc0Vycm9yKCdwYXR0ZXJuJylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQbGVhc2UgZW50ZXIgdmFsaWQgQ2xpZW50IG5hbWVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbWF0LWVycm9yPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1lcnJvciAqbmdJZj1cImN1c3RvbWVyRmFybUZvcm0uZ2V0KCdjdXN0b21lck5hbWUnKS5oYXNFcnJvcignbWlubGVuZ3RoJylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDbGllbnQgbmFtZSBtdXN0IGJlIG9mIGF0bGVhc3QgMyBjaGFyYWN0ZXJzXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21hdC1lcnJvcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImZsZXgtYXV0byB3LWZ1bGxcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJjdXN0b21lckZhcm1Db25maWd1cmF0aW9uLmFsbG93ZWRDdXN0b21lckZhcm1GaWVsZHMuZGVmYXVsdFdhcmVob3VzZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1sYWJlbD5EZWZhdWx0IFdhcmVob3VzZTwvbWF0LWxhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IG1hdElucHV0IGlkPVwiZGVmYXVsdFdhcmVob3VzZVwiIHBsYWNlaG9sZGVyPVwiRGVmYXVsdCBXYXJlaG91c2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtmb3JtQ29udHJvbE5hbWVdPVwiJ2RlZmF1bHRXYXJlaG91c2UnXCIgKGNoYW5nZSk9XCJlbWl0RGF0YVRvUGFyZW50KClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtZXJyb3JcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImN1c3RvbWVyRmFybUZvcm0uZ2V0KCdkZWZhdWx0V2FyZWhvdXNlJykuaGFzRXJyb3IoJ3JlcXVpcmVkJykgJiYgY3VzdG9tZXJGYXJtQ29uZmlndXJhdGlvbi5yZXF1aXJlZEN1c3RvbWVyRmFybUZpZWxkcy5kZWZhdWx0V2FyZWhvdXNlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRGVmYXVsdCBXYXJlaG91c2UgaXMgcmVxdWlyZWRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbWF0LWVycm9yPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic206ZmxleCBweC04IHB0LTRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiZmxleC1hdXRvIHctZnVsbCBtci00XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiY3VzdG9tZXJGYXJtQ29uZmlndXJhdGlvbi5hbGxvd2VkQ3VzdG9tZXJGYXJtRmllbGRzLnBlcnNvbkluQ2hhcmdlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWxhYmVsPlBlcnNvbiBJbiBDaGFyZ2U8L21hdC1sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCBtYXRJbnB1dCBpZD1cInBlcnNvbkluQ2hhcmdlXCIgcGxhY2Vob2xkZXI9XCJQZXJzb24gSW4gQ2hhcmdlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cIidwZXJzb25JbkNoYXJnZSdcIiAoY2hhbmdlKT1cImVtaXREYXRhVG9QYXJlbnQoKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1lcnJvclxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiY3VzdG9tZXJGYXJtRm9ybS5nZXQoJ3BlcnNvbkluQ2hhcmdlJykuaGFzRXJyb3IoJ3JlcXVpcmVkJykgJiYgY3VzdG9tZXJGYXJtQ29uZmlndXJhdGlvbi5yZXF1aXJlZEN1c3RvbWVyRmFybUZpZWxkcy5wZXJzb25JbkNoYXJnZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBlcnNvbiBJbiBDaGFyZ2UgaXMgcmVxdWlyZWRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbWF0LWVycm9yPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiZmxleC1hdXRvIHctZnVsbFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImN1c3RvbWVyRmFybUNvbmZpZ3VyYXRpb24uYWxsb3dlZEN1c3RvbWVyRmFybUZpZWxkcy5kaXNwbGF5TmFtZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1sYWJlbD5EaXNwbGF5IE5hbWU8L21hdC1sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCBtYXRJbnB1dCBpZD1cImRpc3BsYXlOYW1lXCIgcGxhY2Vob2xkZXI9XCJEaXNwbGF5IE5hbWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtmb3JtQ29udHJvbE5hbWVdPVwiJ2Rpc3BsYXlOYW1lJ1wiIChjaGFuZ2UpPVwiZW1pdERhdGFUb1BhcmVudCgpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzbTpmbGV4IHB4LTggcHQtNFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJmbGV4LWF1dG8gdy1mdWxsIG1yLTRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJjdXN0b21lckZhcm1Db25maWd1cmF0aW9uLmFsbG93ZWRDdXN0b21lckZhcm1GaWVsZHMucHJpbWFyeVZldElkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWxhYmVsPlByaW1hcnkgVmV0PC9tYXQtbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgbWF0SW5wdXQgaWQ9XCJwcmltYXJ5VmV0SWRcIiBwbGFjZWhvbGRlcj1cIlByaW1hcnkgVmV0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cIidwcmltYXJ5VmV0SWQnXCIgKGNoYW5nZSk9XCJlbWl0RGF0YVRvUGFyZW50KClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtZXJyb3JcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImN1c3RvbWVyRmFybUZvcm0uZ2V0KCdwcmltYXJ5VmV0SWQnKS5oYXNFcnJvcigncmVxdWlyZWQnKSAmJiBjdXN0b21lckZhcm1Db25maWd1cmF0aW9uLnJlcXVpcmVkQ3VzdG9tZXJGYXJtRmllbGRzLnByaW1hcnlWZXRJZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFByaW1hcnkgVmV0IGlzIHJlcXVpcmVkXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21hdC1lcnJvcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImZsZXgtYXV0byB3LWZ1bGxcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJjdXN0b21lckZhcm1Db25maWd1cmF0aW9uLmFsbG93ZWRDdXN0b21lckZhcm1GaWVsZHMuUElDVGF0dG9vXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWxhYmVsPlBJQy9UYXR0b28gKGlmIGFwcGxpY2FibGUpPC9tYXQtbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgbWF0SW5wdXQgaWQ9XCJQSUNUYXR0b29cIiBwbGFjZWhvbGRlcj1cIlBJQy9UYXR0b29cIiBbZm9ybUNvbnRyb2xOYW1lXT1cIidQSUNUYXR0b28nXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2hhbmdlKT1cImVtaXREYXRhVG9QYXJlbnQoKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPCEtLSBDdXN0b21lciBGYXJtIHNlY3Rpb24gRW5kICAtLT5cclxuXHJcbiAgICAgICAgPC9mb3JtPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8IS0tIGZvcm0gY29kZSBlbmRzIGhlcmUgLS0+XHJcblxyXG48L2Rpdj5cclxuPGRpdiAqbmdJZj1cImN1c3RvbWVyRmFybUNvbmZpZ3VyYXRpb24uc2hvd0dyaWRcIj5cclxuICAgIDxsaWIta2VuZG8tZ3JpZC12aWV3IFtjb25maWd1cmF0aW9uXT1cImdyaWRDb25maWd1cmF0aW9uXCIgKGV2ZW50cyk9XCJoYW5kbGVHcmlkRXZlbnRzKCRldmVudClcIj48L2xpYi1rZW5kby1ncmlkLXZpZXc+XHJcbiAgPC9kaXY+XHJcbiJdfQ==
|
|
243
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tZXItZmFybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jdXN0b21lci1mYXJtL3NyYy9saWIvY3VzdG9tZXItZmFybS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jdXN0b21lci1mYXJtL3NyYy9saWIvY3VzdG9tZXItZmFybS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sRUFBMEIsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDcEUsT0FBTyxFQUFFLDZCQUE2QixFQUFFLGlCQUFpQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDdEcsT0FBTyxFQUFtRiwrQkFBK0IsRUFBNkIsTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7Ozs7OztBQVF2TCxNQUFNLE9BQU8scUJBQXFCO0lBa0JoQyxZQUFvQixtQkFBd0MsRUFDbEQsU0FBMkIsRUFDM0IsMkJBQXdELEVBQ3hELFdBQXdCLEVBQ3hCLGVBQWdDLEVBQ2hDLE1BQWlDO1FBTHZCLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFDbEQsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFDM0IsZ0NBQTJCLEdBQTNCLDJCQUEyQixDQUE2QjtRQUN4RCxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QixvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFDaEMsV0FBTSxHQUFOLE1BQU0sQ0FBMkI7UUF0QmpDLHFCQUFnQixHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFDckMsOEJBQXlCLEdBQWtDLElBQUksNkJBQTZCLEVBQUUsQ0FBQztRQUUvRyxpQkFBWSxHQUFhLEVBQUUsQ0FBQztRQUNyQixhQUFRLEdBQVUsRUFBRSxDQUFDO1FBQzVCLHNCQUFpQixHQUFv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bnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBDdXN0b21lckZhcm1Db25maWdyYXRpb25Nb2RlbCwgQ3VzdG9tZXJGYXJtTW9kZWwgfSBmcm9tICcuL2RlcGVuZGVuY2llcy9jdXN0b21lci1mYXJtLW1vZGVsJztcclxuaW1wb3J0IHsgQXBwbGljYXRpb25Sb2xlTWVudXNTZXJ2aWNlLCBFcnJvckxvZ1NlcnZpY2UsIEdyaWRFdmVudHNNb2RlbCwgSnNvbkZvcm1zU2VydmljZSwgS2VuZG9Hcmlkdmlld0NvbmZpZ3VyYXRpb25Nb2RlbCwgVG9hc3RyTm90aWZpY2F0aW9uU2VydmljZSB9IGZyb20gJ0BxdWJlc2Vuc2UvYmFzZS1zZXJ2aWNlcyc7XHJcbmltcG9ydCB7IEN1c3RvbWVyRmFybVNlcnZpY2UgfSBmcm9tICcuL2N1c3RvbWVyLWZhcm0uc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1jdXN0b21lci1mYXJtJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vY3VzdG9tZXItZmFybS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vY3VzdG9tZXItZmFybS5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDdXN0b21lckZhcm1Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBPdXRwdXQoKSBjdXN0b21lckZhcm1EYXRhID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgQElucHV0KCkgcHVibGljIGN1c3RvbWVyRmFybUNvbmZpZ3VyYXRpb246IEN1c3RvbWVyRmFybUNvbmZpZ3JhdGlvbk1vZGVsID0gbmV3IEN1c3RvbWVyRmFybUNvbmZpZ3JhdGlvbk1vZGVsKCk7XHJcbiAgY3VzdG9tZXJGYXJtRm9ybTogRm9ybUdyb3VwO1xyXG4gIHVzZXJNZXNzYWdlczogc3RyaW5nW10gPSBbXTtcclxuICBwdWJsaWMgZ3JpZERhdGE6IGFueVtdID0gW107XHJcbiAgZ3JpZENvbmZpZ3VyYXRpb246IEtlbmRvR3JpZHZpZXdDb25maWd1cmF0aW9uTW9kZWwgPSBuZXcgS2VuZG9Hcmlkdmlld0NvbmZpZ3VyYXRpb25Nb2RlbCgpO1xyXG4gIGhpZGVCdXR0b25zID0gZmFsc2U7XHJcbiAgaXNWaWV3Q2FsbCA9IGZhbHNlO1xyXG4gIHNwZWNpZXNMaXN0OiBhbnlbXSA9IFtdO1xyXG4gIHdhcmVob3VzZUxpc3Q6IGFueVtdID0gW107XHJcbiAgZmlsdGVyZWRDdXN0b21lcnM6IFtdO1xyXG5cclxuICBwZXJtaXNzaW9uOiBhbnkgPSBbXTtcclxuICB1c2VyRGF0YTogYW55ID0gW107XHJcbiAgSGlkZUFkZEJ1dHRvbjogYm9vbGVhbjtcclxuXHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY3VzdG9tZXJGYXJtU2VydmljZTogQ3VzdG9tZXJGYXJtU2VydmljZSxcclxuICAgIHByaXZhdGUganNvbkZvcm1zOiBKc29uRm9ybXNTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBhcHBsaWNhdGlvblJvbGVNZW51c1NlcnZpY2U6IEFwcGxpY2F0aW9uUm9sZU1lbnVzU2VydmljZSxcclxuICAgIHByaXZhdGUgZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyLFxyXG4gICAgcHJpdmF0ZSBlcnJvckxvZ1NlcnZpY2U6IEVycm9yTG9nU2VydmljZSxcclxuICAgIHByaXZhdGUgdG9hc3RyOiBUb2FzdHJOb3RpZmljYXRpb25TZXJ2aWNlXHJcbiAgKSB7XHJcbiAgICB0aGlzLmdyaWRDb25maWd1cmF0aW9uLmZvcm1Db2RlRm9ySnNvbkhlYWRlciA9ICdDVUZBJztcclxuICAgIHRoaXMuZ3JpZENvbmZpZ3VyYXRpb24uZm9ybUNvZGVGb3JHcmlkUGVybWlzc2lvbnMgPSB0aGlzLmN1c3RvbWVyRmFybUNvbmZpZ3VyYXRpb24uY3VzdG9tZXJGYXJtR3JpZENvbmZpZ3JhdGlvbi5mb3JtQ29kZUZvckdyaWRQZXJtaXNzaW9uO1xyXG4gIH1cclxuXHJcbiAgYXN5bmMgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLkRlY2xhcmVGb3JtKCk7XHJcbiAgICB0aGlzLmdldFdhcmVob3VzZUxpc3QoKTtcclxuICAgIGlmICh0aGlzLmN1c3RvbWVyRmFybUNvbmZpZ3VyYXRpb24uc2hvd0dyaWQpIHtcclxuICAgICAgdGhpcy5ncmlkQ29uZmlndXJhdGlvbi5mb3JtQ29kZUZvckpzb25IZWFkZXIgPSAnQ1VGQSc7XHJcbiAgICAgIHRoaXMuZ3JpZENvbmZpZ3VyYXRpb24uZm9ybUNvZGVGb3JHcmlkUGVybWlzc2lvbnMgPSB0aGlzLmN1c3RvbWVyRmFybUNvbmZpZ3VyYXRpb24uY3VzdG9tZXJGYXJtR3JpZENvbmZpZ3JhdGlvbi5mb3JtQ29kZUZvckdyaWRQZXJtaXNzaW9uO1xyXG4gICAgICB0aGlzLmdyaWRDb25maWd1cmF0aW9uLnNob3dNb2RhbCA9IHRydWU7XHJcbiAgICAgIGF3YWl0IHRoaXMucGVybWlzc2lvbk1ldGhvZCgpO1xyXG4gICAgICAvL3RoaXMuZ3JpZENvbmZpZ3VyYXRpb24uYWN0aW9ucyA9IHsgJ1ZpZXcnOiBmYWxzZSwgJ0VkaXQnOiB0cnVlLCAnRGVsZXRlJzogdHJ1ZSwgJ0dlbmVyYXRlIFBERic6IGZhbHNlIH07ICBcclxuICAgICAgdGhpcy5HZXRMaXN0RGF0YSgpO1xyXG4gICAgICAvL3RoaXMuZ2V0V2FyZWhvdXNlTGlzdCgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIHBlcm1pc3Npb25NZXRob2QoKSB7XHJcbiAgICB0aGlzLnVzZXJEYXRhID0gSlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbShcInNlc3Npb25Vc2VyXCIpKTtcclxuICAgIGNvbnN0IGdldFJlc3BvbnNlID0gYXdhaXQgdGhpcy5hcHBsaWNhdGlvblJvbGVNZW51c1NlcnZpY2UuR2V0QXNzaWduZWRSb2xlQXV0aCh0aGlzLnVzZXJEYXRhLnNlc3Npb25Vc2VyLnVzZXJFbWFpbCwgdGhpcy5ncmlkQ29uZmlndXJhdGlvbi5mb3JtQ29kZUZvckdyaWRQZXJtaXNzaW9ucyk7XHJcbiAgICB0aGlzLnBlcm1pc3Npb24gPSBnZXRSZXNwb25zZS5hcGlEYXRhWzBdO1xyXG4gICAgdGhpcy5IaWRlQWRkQnV0dG9uID0gdGhpcy5wZXJtaXNzaW9uLmNhbkFkZCA9PSBmYWxzZSA/IHRydWUgOiBmYWxzZTtcclxuICB9XHJcblxyXG4gIERlY2xhcmVGb3JtKCkge1xyXG4gICAgdGhpcy5jdXN0b21lckZhcm1Gb3JtID0gdGhpcy5mb3JtQnVpbGRlci5ncm91cCh7XHJcbiAgICAgIHJlY29yZElkOiBbbnVsbF0sXHJcbiAgICAgIGN1c3RvbWVySWQ6IFtudWxsXSxcclxuICAgICAgY3VzdG9tZXJOYW1lOiBbbnVsbF0sXHJcbiAgICAgIGRlZmF1bHRXYXJlaG91c2U6IFtudWxsXSxcclxuICAgICAgcGVyc29uSW5DaGFyZ2U6IFtudWxsXSxcclxuICAgICAgZGlzcGxheU5hbWU6IFtudWxsXSxcclxuICAgICAgcHJpbWFyeVZldElkOiBbbnVsbF0sXHJcbiAgICAgIFBJQ1RhdHRvbzogW251bGxdLFxyXG4gICAgICBpc0FjdGl2ZTogW3RydWVdXHJcbiAgICB9KTtcclxuICAgIHRoaXMub25DaGFuZ2VzKCk7XHJcblxyXG4gICAgaWYgKHRoaXMuY3VzdG9tZXJGYXJtQ29uZmlndXJhdGlvbi5yZXF1aXJlZEN1c3RvbWVyRmFybUZpZWxkcy5jdXN0b21lck5hbWUpIHtcclxuICAgICAgdGhpcy5jdXN0b21lckZhcm1Gb3JtLmdldCgnY3VzdG9tZXJOYW1lJykuYWRkVmFsaWRhdG9ycyhWYWxpZGF0b3JzLnJlcXVpcmVkKTtcclxuICAgICAgdGhpcy5jdXN0b21lckZhcm1Gb3JtLmdldCgnY3VzdG9tZXJOYW1lJykuYWRkVmFsaWRhdG9ycyhWYWxpZGF0b3JzLnBhdHRlcm4oJ15bYS16QS1aIF0qJCcpKTtcclxuICAgICAgdGhpcy5jdXN0b21lckZhcm1Gb3JtLmdldCgnY3VzdG9tZXJOYW1lJykuYWRkVmFsaWRhdG9ycyhWYWxpZGF0b3JzLm1pbkxlbmd0aCgzKSk7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5jdXN0b21lckZhcm1Db25maWd1cmF0aW9uLnJlcXVpcmVkQ3VzdG9tZXJGYXJtRmllbGRzLmRlZmF1bHRXYXJlaG91c2UpIHtcclxuICAgICAgdGhpcy5jdXN0b21lckZhcm1Gb3JtLmdldCgnZGVmYXVsdFdhcmVob3VzZScpLmFkZFZhbGlkYXRvcnMoVmFsaWRhdG9ycy5yZXF1aXJlZCk7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5jdXN0b21lckZhcm1Db25maWd1cmF0aW9uLnJlcXVpcmVkQ3VzdG9tZXJGYXJtRmllbGRzLnBlcnNvbkluQ2hhcmdlKSB7XHJcbiAgICAgIHRoaXMuY3VzdG9tZXJGYXJtRm9ybS5nZXQoJ3BlcnNvbkluQ2hhcmdlJykuYWRkVmFsaWRhdG9ycyhWYWxpZGF0b3JzLnJlcXVpcmVkKTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLmN1c3RvbWVyRmFybUNvbmZpZ3VyYXRpb24ucmVxdWlyZWRDdXN0b21lckZhcm1GaWVsZHMucHJpbWFyeVZldElkKSB7XHJcbiAgICAgIHRoaXMuY3VzdG9tZXJGYXJtRm9ybS5nZXQoJ3ByaW1hcnlWZXRJZCcpLmFkZFZhbGlkYXRvcnMoVmFsaWRhdG9ycy5yZXF1aXJlZCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL3N0YW5kYXJkIG1ldGhvZHMvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG5cclxuICBvbkNoYW5nZXMoKTogdm9pZCB7XHJcbiAgICB0aGlzLmN1c3RvbWVyRmFybUZvcm0uZ2V0KCdjdXN0b21lck5hbWUnKS52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKHZhbCA9PiB7XHJcbiAgICAgIHRoaXMuY3VzdG9tZXJGYXJtRm9ybS5wYXRjaFZhbHVlKHtcclxuICAgICAgICBkaXNwbGF5TmFtZTogdmFsXHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBAZGVzY3JpcHRpb25cclxuICAgKlxyXG4gICAqIGVkaXQgZGF0YSBsaXN0IGl0ZW0gdXNpbmcgZGF0YSBpdGVtIEdVSURcclxuICAgKlxyXG4gICAqIEBwYXJhbSBjdXN0b21lcklkXHJcbiAgICpcclxuICAgKiAgZ2V0cyBjdXN0b21lciBHVUlEIGZyb20gZ3JpZERhdGEgYW5kIHBhc3NlcyBpdCB0byB0aGlzIGZ1bmN0aW9uXHJcbiAgICovXHJcbiAgYXN5bmMgRWRpdERhdGEoY3VzdG9tZXJJZDogc3RyaW5nKSB7XHJcbiAgICBjb25zdCBnZXRSZXNwb25zZSA9IGF3YWl0IHRoaXMuY3VzdG9tZXJGYXJtU2VydmljZS5HZXREYXRhQnlJZChjdXN0b21lcklkKTtcclxuICAgIHRoaXMuY3VzdG9tZXJGYXJtRm9ybS5jb250cm9sc1sncmVjb3JkSWQnXS5zZXRWYWx1ZShnZXRSZXNwb25zZS5hcGlEYXRhLnJlY29yZElkKTtcclxuICAgIHRoaXMuY3VzdG9tZXJGYXJtRm9ybS5jb250cm9sc1snY3VzdG9tZXJJZCddLnNldFZhbHVlKGdldFJlc3BvbnNlLmFwaURhdGEuY3VzdG9tZXJJZCk7XHJcbiAgICB0aGlzLmN1c3RvbWVyRmFybUZvcm0uY29udHJvbHNbJ2N1c3RvbWVyTmFtZSddLnNldFZhbHVlKGdldFJlc3BvbnNlLmFwaURhdGEuY3VzdG9tZXJOYW1lKTtcclxuICAgIHRoaXMuY3VzdG9tZXJGYXJtRm9ybS5jb250cm9sc1snZGVmYXVsdFdhcmVob3VzZSddLnNldFZhbHVlKGdldFJlc3BvbnNlLmFwaURhdGEuZGVmYXVsdFdhcmVob3VzZSk7XHJcbiAgICB0aGlzLmN1c3RvbWVyRmFybUZvcm0uY29udHJvbHNbJ3BlcnNvbkluQ2hhcmdlJ10uc2V0VmFsdWUoZ2V0UmVzcG9uc2UuYXBpRGF0YS5wZXJzb25JbkNoYXJnZSk7XHJcbiAgICB0aGlzLmN1c3RvbWVyRmFybUZvcm0uY29udHJvbHNbJ2Rpc3BsYXlOYW1lJ10uc2V0VmFsdWUoZ2V0UmVzcG9uc2UuYXBpRGF0YS5kaXNwbGF5TmFtZSk7XHJcbiAgICB0aGlzLmN1c3RvbWVyRmFybUZvcm0uY29udHJvbHNbJ3ByaW1hcnlWZXRJZCddLnNldFZhbHVlKGdldFJlc3BvbnNlLmFwaURhdGEucHJpbWFyeVZldElkKTtcclxuICAgIHRoaXMuY3VzdG9tZXJGYXJtRm9ybS5jb250cm9sc1snUElDVGF0dG9vJ10uc2V0VmFsdWUoZ2V0UmVzcG9uc2UuYXBpRGF0YS5waWNUYXR0b28pO1xyXG4gICAgdGhpcy5jdXN0b21lckZhcm1Gb3JtLmNvbnRyb2xzWydpc0FjdGl2ZSddLnNldFZhbHVlKGdldFJlc3BvbnNlLmFwaURhdGEuaXNBY3RpdmUpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQGRlc2NyaXB0aW9uXHJcbiAgICpcclxuICAgKiB0aGlzIG1ldGhvZCBjb252ZXJ0cyBhbGwgZm9ybSBpbnB1dHMgaW50byBtb2RlbCBjbGFzc1xyXG4gICAqXHJcbiAgICogQHJldHVybnMgbW9kZWwgd2l0aCBuZXcgZm9ybSB2YWx1ZXNcclxuICAgKi9cclxuICBDb252ZXJ0Rm9ybVRvTW9kZWwoKSB7XHJcbiAgICBjb25zdCBjdXN0b21lckZhcm1Nb2RlbCA9IG5ldyBDdXN0b21lckZhcm1Nb2RlbCgpO1xyXG4gICAgY3VzdG9tZXJGYXJtTW9kZWwucmVjb3JkSWQgPSB0aGlzLmN1c3RvbWVyRmFybUZvcm0udmFsdWUucmVjb3JkSWQ7XHJcbiAgICBjdXN0b21lckZhcm1Nb2RlbC5jdXN0b21lck5hbWUgPSB0aGlzLmN1c3RvbWVyRmFybUZvcm0udmFsdWUuY3VzdG9tZXJOYW1lO1xyXG4gICAgY3VzdG9tZXJGYXJtTW9kZWwuZGVmYXVsdFdhcmVob3VzZSA9IHRoaXMuY3VzdG9tZXJGYXJtRm9ybS52YWx1ZS5kZWZhdWx0V2FyZWhvdXNlO1xyXG4gICAgY3VzdG9tZXJGYXJtTW9kZWwucGVyc29uSW5DaGFyZ2UgPSB0aGlzLmN1c3RvbWVyRmFybUZvcm0udmFsdWUucGVyc29uSW5DaGFyZ2U7XHJcbiAgICBjdXN0b21lckZhcm1Nb2RlbC5kaXNwbGF5TmFtZSA9IHRoaXMuY3VzdG9tZXJGYXJtRm9ybS52YWx1ZS5kaXNwbGF5TmFtZTtcclxuICAgIGN1c3RvbWVyRmFybU1vZGVsLnByaW1hcnlWZXRJZCA9IHRoaXMuY3VzdG9tZXJGYXJtRm9ybS52YWx1ZS5wcmltYXJ5VmV0SWQ7XHJcbiAgICBjdXN0b21lckZhcm1Nb2RlbC5QSUNUYXR0b28gPSB0aGlzLmN1c3RvbWVyRmFybUZvcm0udmFsdWUuUElDVGF0dG9vO1xyXG4gICAgY3VzdG9tZXJGYXJtTW9kZWwuY3VzdG9tZXJJZCA9IHRoaXMuY3VzdG9tZXJGYXJtQ29uZmlndXJhdGlvbi5jdXN0b21lcklkO1xyXG4gICAgY3VzdG9tZXJGYXJtTW9kZWwuZm9ybUNvZGUgPSB0aGlzLmN1c3RvbWVyRmFybUNvbmZpZ3VyYXRpb24uZm9ybUNvZGU7XHJcblxyXG4gICAgcmV0dXJuIGN1c3RvbWVyRmFybU1vZGVsO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQGRlc2NyaXB0aW9uXHJcbiAgICogY2xlYXIgZm9ybSBkYXRhXHJcbiAgICovXHJcbiAgQ2xlYXJGb3JtKCkge1xyXG4gICAgdGhpcy5EZWNsYXJlRm9ybSgpO1xyXG4gIH1cclxuXHJcbiAgZW1pdERhdGFUb1BhcmVudCgpIHtcclxuICAgIGxldCBjdXN0b21lckZhcm1Nb2RlbCA9IG5ldyBDdXN0b21lckZhcm1Nb2RlbCgpO1xyXG4gICAgY3VzdG9tZXJGYXJtTW9kZWwgPSB0aGlzLkNvbnZlcnRGb3JtVG9Nb2RlbCgpO1xyXG4gICAgdGhpcy5jdXN0b21lckZhcm1EYXRhLmVtaXQoY3VzdG9tZXJGYXJtTW9kZWwpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQGRlc2NyaXB0aW9uXHJcbiAgICpcclxuICAgKiBJbnNlcnQgY3VzdG9tZXIgZGF0YSBpbnRvIGRhdGFiYXNlXHJcbiAgICovXHJcbiAgcHVibGljIGFzeW5jIEluc2VydERhdGEoKSB7XHJcbiAgICBsZXQgY3VzdG9tZXJGYXJtTW9kZWwgPSBuZXcgQ3VzdG9tZXJGYXJtTW9kZWwoKTtcclxuICAgIGN1c3RvbWVyRmFybU1vZGVsID0gdGhpcy5Db252ZXJ0Rm9ybVRvTW9kZWwoKTtcclxuICAgIGNvbnN0IGdldFJlc3BvbnNlID0gYXdhaXQgdGhpcy5jdXN0b21lckZhcm1TZXJ2aWNlLkluc2VydERhdGEoY3VzdG9tZXJGYXJtTW9kZWwpO1xyXG4gICAgdGhpcy51c2VyTWVzc2FnZXMgPSBnZXRSZXNwb25zZS5tZXNzYWdlLnVzZXJNZXNzYWdlO1xyXG4gICAgaWYgKHRoaXMuY3VzdG9tZXJGYXJtQ29uZmlndXJhdGlvbi51c2VyTWVzc2FnZXMpIHtcclxuICAgICAgdGhpcy50b2FzdHIuU2hvd1N1Y2Nlc3ModGhpcy51c2VyTWVzc2FnZXMudG9TdHJpbmcoKSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBAZGVzY3JpcHRpb25cclxuICAgKlxyXG4gICAqIHVwZGF0ZSBjdXN0b21lciBkYXRhIGludG8gZGF0YWJhc2VcclxuICAgKi9cclxuICBwdWJsaWMgYXN5bmMgVXBkYXRlRGF0YSgpIHtcclxuICAgIGxldCBjdXN0b21lckZhcm1Nb2RlbCA9IG5ldyBDdXN0b21lckZhcm1Nb2RlbCgpO1xyXG4gICAgY3VzdG9tZXJGYXJtTW9kZWwgPSB0aGlzLkNvbnZlcnRGb3JtVG9Nb2RlbCgpO1xyXG4gICAgY29uc3QgZ2V0UmVzcG9uc2UgPSBhd2FpdCB0aGlzLmN1c3RvbWVyRmFybVNlcnZpY2UuVXBkYXRlRGF0YShjdXN0b21lckZhcm1Nb2RlbCk7XHJcbiAgICB0aGlzLnVzZXJNZXNzYWdlcyA9IGdldFJlc3BvbnNlLm1lc3NhZ2UudXNlck1lc3NhZ2U7XHJcbiAgICBpZiAodGhpcy5jdXN0b21lckZhcm1Db25maWd1cmF0aW9uLnVzZXJNZXNzYWdlcykge1xyXG4gICAgICB0aGlzLnRvYXN0ci5TaG93U3VjY2Vzcyh0aGlzLnVzZXJNZXNzYWdlcy50b1N0cmluZygpKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICogQGRlc2NyaXB0aW9uXHJcbiAgKlxyXG4gICogRGVsZXRlIGN1c3RvbWVyIGRhdGEgaW50byBkYXRhYmFzZVxyXG4gICovXHJcbiAgcHVibGljIGFzeW5jIERlbGV0ZURhdGEodmFsdWUpIHtcclxuICAgIGNvbnN0IGdldFJlc3BvbnNlID0gYXdhaXQgdGhpcy5jdXN0b21lckZhcm1TZXJ2aWNlLkRlbGV0ZURhdGEodmFsdWUpO1xyXG4gICAgdGhpcy51c2VyTWVzc2FnZXMgPSBnZXRSZXNwb25zZS5tZXNzYWdlLnVzZXJNZXNzYWdlO1xyXG4gICAgaWYgKHRoaXMuY3VzdG9tZXJGYXJtQ29uZmlndXJhdGlvbi51c2VyTWVzc2FnZXMpIHtcclxuICAgICAgdGhpcy50b2FzdHIuU2hvd1N1Y2Nlc3ModGhpcy51c2VyTWVzc2FnZXMudG9TdHJpbmcoKSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgICAqIEBkZXNjcmlwdGlvblxyXG4gICAgICogXHJcbiAgICAgKiBHcmlkIGV2ZW50cyBjYWxsc1xyXG4gICAgICovXHJcbiAgaGFuZGxlR3JpZEV2ZW50cyhncmlkRXZlbnRzOiBHcmlkRXZlbnRzTW9kZWwpIHtcclxuICAgIGdyaWRFdmVudHMuZWRpdFJlY29yZC5zdWJzY3JpYmUoKHJlY29yZElkKSA9PiB7XHJcbiAgICAgIHRoaXMuaGlkZUJ1dHRvbnMgPSBmYWxzZTtcclxuICAgICAgdGhpcy5pc1ZpZXdDYWxsID0gZmFsc2U7XHJcbiAgICAgIHRoaXMuRWRpdERhdGEocmVjb3JkSWQpO1xyXG4gICAgICB0aGlzLmN1c3RvbWVyRmFybUZvcm0uZW5hYmxlKCk7XHJcbiAgICB9KTtcclxuICAgIGdyaWRFdmVudHMuZGVsZXRlUmVjb3JkLnN1YnNjcmliZSgocmVjb3JkSWQpID0+IHtcclxuICAgICAgdGhpcy5EZWxldGVEYXRhKHJlY29yZElkKTtcclxuICAgIH0pO1xyXG4gICAgZ3JpZEV2ZW50cy52aWV3UmVjb3JkLnN1YnNjcmliZShhc3luYyAocmVjb3JkSWQpID0+IHtcclxuICAgICAgdGhpcy5FZGl0RGF0YShyZWNvcmRJZCk7XHJcbiAgICAgIHRoaXMuY3VzdG9tZXJGYXJtRm9ybS5kaXNhYmxlKCk7XHJcblxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgZ2V0V2FyZWhvdXNlTGlzdCgpIHtcclxuICAgIHRyeSB7XHJcbiAgICAgIGNvbnN0IGdldFJlc3BvbnNlID0gYXdhaXQgdGhpcy5jdXN0b21lckZhcm1TZXJ2aWNlLkdldFdhcmVob3VzZURyb3Bkb3duTGlzdCgpO1xyXG4gICAgICB0aGlzLndhcmVob3VzZUxpc3QgPSBnZXRSZXNwb25zZS5hcGlEYXRhO1xyXG4gICAgfVxyXG4gICAgY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgIHRoaXMuZXJyb3JMb2dTZXJ2aWNlLnNhdmVFcnJvcihlcnJvcik7XHJcbiAgICAgIHRoaXMudG9hc3RyLlNob3dBbGxFcnJvcnMoZXJyb3IuZXJyb3IubWVzc2FnZS51c2VyTWVzc2FnZSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcbiAgLyoqXHJcbiAgICAqIEBkZXNjcmlwdGlvblxyXG4gICAgKiBnZXQgZGF0YSBmb3IgQ3VzdG9tZXIgZ3JpZCBsaXN0XHJcbiAgICAqL1xyXG4gIHB1YmxpYyBhc3luYyBHZXRMaXN0RGF0YSgpIHtcclxuICAgIGNvbnN0IGN1c3RvbWVyRmFybU1vZGVsID0gbmV3IEN1c3RvbWVyRmFybU1vZGVsKCk7XHJcbiAgICB0cnkge1xyXG4gICAgICBjb25zdCBnZXRSZXNwb25zZSA9IGF3YWl0IHRoaXMuY3VzdG9tZXJGYXJtU2VydmljZS5HZXRMaXN0RGF0YShjdXN0b21lckZhcm1Nb2RlbCk7XHJcbiAgICAgIGdldFJlc3BvbnNlLmFwaURhdGEuZm9yRWFjaChyZWNvcmQgPT4ge1xyXG4gICAgICAgIHJlY29yZC5jcmVhdGVkT25VVEMgPSBuZXcgRGF0ZShyZWNvcmQuY3JlYXRlZE9uVVRDKTtcclxuICAgICAgfSk7XHJcbiAgICAgIHRoaXMuZ3JpZERhdGEgPSBnZXRSZXNwb25zZS5hcGlEYXRhO1xyXG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgICAgdGhpcy5lcnJvckxvZ1NlcnZpY2Uuc2F2ZUVycm9yKGVycm9yKTtcclxuICAgICAgdGhpcy50b2FzdHIuU2hvd0FsbEVycm9ycyhlcnJvci5lcnJvci5tZXNzYWdlLnVzZXJNZXNzYWdlKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgZmxleC1hdXRvIG1pbi13LTAgdy1mdWxsXCI+XHJcbiAgICA8IS0tIGZvcm0gY29kZSBzdGFydHMgaGVyZSAtLT5cclxuICAgIDwhLS1jb250ZW50LS0+XHJcbiAgICA8ZGl2IGNsYXNzPVwic206dy1mdWxsIG92ZXJmbG93LWhpZGRlblwiICpuZ0lmPVwiY3VzdG9tZXJGYXJtQ29uZmlndXJhdGlvbi5zaG93TW9kYWxcIj5cclxuXHJcbiAgICAgICAgPCEtLWZvcm0gYm9keS0tPlxyXG4gICAgICAgIDxmb3JtIGNsYXNzPVwiZmxleCBmbGV4LWNvbCBvdmVyZmxvdy1oaWRkZW5cIiBbZm9ybUdyb3VwXT1cImN1c3RvbWVyRmFybUZvcm1cIj5cclxuICAgICAgICAgICAgPCEtLSBDdXN0b21lciBGYXJtIHNlY3Rpb24gc3RhcnQgIC0tPlxyXG5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNtOmZsZXhcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3LWZ1bGxcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic206ZmxleCBweC04IHB0LTRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiZmxleC1hdXRvIHctZnVsbCBtci00XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiY3VzdG9tZXJGYXJtQ29uZmlndXJhdGlvbi5hbGxvd2VkQ3VzdG9tZXJGYXJtRmllbGRzLmN1c3RvbWVyTmFtZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1sYWJlbD5DbGllbnQgTmFtZTwvbWF0LWxhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IG1hdElucHV0IGlkPVwiY3VzdG9tZXJOYW1lXCIgcGxhY2Vob2xkZXI9XCJDbGllbnQgTmFtZVwiIHBhdHRlcm49XCJeW2EtekEtWiBdKiRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbmxlbmd0aD1cIjNcIiBbZm9ybUNvbnRyb2xOYW1lXT1cIidjdXN0b21lck5hbWUnXCIgKGNoYW5nZSk9XCJlbWl0RGF0YVRvUGFyZW50KClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtZXJyb3JcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImN1c3RvbWVyRmFybUZvcm0uZ2V0KCdjdXN0b21lck5hbWUnKS5oYXNFcnJvcigncmVxdWlyZWQnKSAmJiBjdXN0b21lckZhcm1Db25maWd1cmF0aW9uLnJlcXVpcmVkQ3VzdG9tZXJGYXJtRmllbGRzLmN1c3RvbWVyTmFtZSBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDbGllbnQgTmFtZSBpcyByZXF1aXJlZFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9tYXQtZXJyb3I+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWVycm9yICpuZ0lmPVwiY3VzdG9tZXJGYXJtRm9ybS5nZXQoJ2N1c3RvbWVyTmFtZScpLmhhc0Vycm9yKCdwYXR0ZXJuJylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQbGVhc2UgZW50ZXIgdmFsaWQgQ2xpZW50IG5hbWVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbWF0LWVycm9yPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1lcnJvciAqbmdJZj1cImN1c3RvbWVyRmFybUZvcm0uZ2V0KCdjdXN0b21lck5hbWUnKS5oYXNFcnJvcignbWlubGVuZ3RoJylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDbGllbnQgbmFtZSBtdXN0IGJlIG9mIGF0bGVhc3QgMyBjaGFyYWN0ZXJzXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21hdC1lcnJvcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImZsZXgtYXV0byB3LWZ1bGxcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJjdXN0b21lckZhcm1Db25maWd1cmF0aW9uLmFsbG93ZWRDdXN0b21lckZhcm1GaWVsZHMuZGVmYXVsdFdhcmVob3VzZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1sYWJlbD5EZWZhdWx0IFdhcmVob3VzZTwvbWF0LWxhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1zZWxlY3QgbWF0U2VsZWN0IFtmb3JtQ29udHJvbE5hbWVdPVwiJ2RlZmF1bHRXYXJlaG91c2UnXCIgKHNlbGVjdGlvbkNoYW5nZSk9XCJlbWl0RGF0YVRvUGFyZW50KClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgd2FyZWhvdXNlIG9mIHdhcmVob3VzZUxpc3RcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3ZhbHVlXT1cIndhcmVob3VzZS5kYXRhVmFsdWVcIj57e3dhcmVob3VzZS5kYXRhVGV4dH19PC9tYXQtb3B0aW9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21hdC1zZWxlY3Q+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWVycm9yXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJjdXN0b21lckZhcm1Gb3JtLmdldCgnZGVmYXVsdFdhcmVob3VzZScpLmhhc0Vycm9yKCdyZXF1aXJlZCcpICYmIGN1c3RvbWVyRmFybUNvbmZpZ3VyYXRpb24ucmVxdWlyZWRDdXN0b21lckZhcm1GaWVsZHMuZGVmYXVsdFdhcmVob3VzZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERlZmF1bHQgV2FyZWhvdXNlIGlzIHJlcXVpcmVkXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21hdC1lcnJvcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNtOmZsZXggcHgtOCBwdC00XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImZsZXgtYXV0byB3LWZ1bGwgbXItNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImN1c3RvbWVyRmFybUNvbmZpZ3VyYXRpb24uYWxsb3dlZEN1c3RvbWVyRmFybUZpZWxkcy5wZXJzb25JbkNoYXJnZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1sYWJlbD5QZXJzb24gSW4gQ2hhcmdlPC9tYXQtbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgbWF0SW5wdXQgaWQ9XCJwZXJzb25JbkNoYXJnZVwiIHBsYWNlaG9sZGVyPVwiUGVyc29uIEluIENoYXJnZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Zvcm1Db250cm9sTmFtZV09XCIncGVyc29uSW5DaGFyZ2UnXCIgKGNoYW5nZSk9XCJlbWl0RGF0YVRvUGFyZW50KClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtZXJyb3JcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImN1c3RvbWVyRmFybUZvcm0uZ2V0KCdwZXJzb25JbkNoYXJnZScpLmhhc0Vycm9yKCdyZXF1aXJlZCcpICYmIGN1c3RvbWVyRmFybUNvbmZpZ3VyYXRpb24ucmVxdWlyZWRDdXN0b21lckZhcm1GaWVsZHMucGVyc29uSW5DaGFyZ2VcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQZXJzb24gSW4gQ2hhcmdlIGlzIHJlcXVpcmVkXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21hdC1lcnJvcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImZsZXgtYXV0byB3LWZ1bGxcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJjdXN0b21lckZhcm1Db25maWd1cmF0aW9uLmFsbG93ZWRDdXN0b21lckZhcm1GaWVsZHMuZGlzcGxheU5hbWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtbGFiZWw+RGlzcGxheSBOYW1lPC9tYXQtbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgbWF0SW5wdXQgaWQ9XCJkaXNwbGF5TmFtZVwiIHBsYWNlaG9sZGVyPVwiRGlzcGxheSBOYW1lXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cIidkaXNwbGF5TmFtZSdcIiAoY2hhbmdlKT1cImVtaXREYXRhVG9QYXJlbnQoKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic206ZmxleCBweC04IHB0LTRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiZmxleC1hdXRvIHctZnVsbCBtci00XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiY3VzdG9tZXJGYXJtQ29uZmlndXJhdGlvbi5hbGxvd2VkQ3VzdG9tZXJGYXJtRmllbGRzLnByaW1hcnlWZXRJZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1sYWJlbD5QcmltYXJ5IFZldDwvbWF0LWxhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IG1hdElucHV0IGlkPVwicHJpbWFyeVZldElkXCIgcGxhY2Vob2xkZXI9XCJQcmltYXJ5IFZldFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Zvcm1Db250cm9sTmFtZV09XCIncHJpbWFyeVZldElkJ1wiIChjaGFuZ2UpPVwiZW1pdERhdGFUb1BhcmVudCgpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWVycm9yXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJjdXN0b21lckZhcm1Gb3JtLmdldCgncHJpbWFyeVZldElkJykuaGFzRXJyb3IoJ3JlcXVpcmVkJykgJiYgY3VzdG9tZXJGYXJtQ29uZmlndXJhdGlvbi5yZXF1aXJlZEN1c3RvbWVyRmFybUZpZWxkcy5wcmltYXJ5VmV0SWRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQcmltYXJ5IFZldCBpcyByZXF1aXJlZFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9tYXQtZXJyb3I+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJmbGV4LWF1dG8gdy1mdWxsXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiY3VzdG9tZXJGYXJtQ29uZmlndXJhdGlvbi5hbGxvd2VkQ3VzdG9tZXJGYXJtRmllbGRzLlBJQ1RhdHRvb1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1sYWJlbD5QSUMvVGF0dG9vIChpZiBhcHBsaWNhYmxlKTwvbWF0LWxhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IG1hdElucHV0IGlkPVwiUElDVGF0dG9vXCIgcGxhY2Vob2xkZXI9XCJQSUMvVGF0dG9vXCIgW2Zvcm1Db250cm9sTmFtZV09XCInUElDVGF0dG9vJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNoYW5nZSk9XCJlbWl0RGF0YVRvUGFyZW50KClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwhLS0gQ3VzdG9tZXIgRmFybSBzZWN0aW9uIEVuZCAgLS0+XHJcblxyXG4gICAgICAgIDwvZm9ybT5cclxuICAgIDwvZGl2PlxyXG4gICAgPCEtLSBmb3JtIGNvZGUgZW5kcyBoZXJlIC0tPlxyXG5cclxuPC9kaXY+XHJcbjxkaXYgKm5nSWY9XCJjdXN0b21lckZhcm1Db25maWd1cmF0aW9uLnNob3dHcmlkXCI+XHJcbiAgICA8bGliLWtlbmRvLWdyaWQtdmlldyBbY29uZmlndXJhdGlvbl09XCJncmlkQ29uZmlndXJhdGlvblwiIChldmVudHMpPVwiaGFuZGxlR3JpZEV2ZW50cygkZXZlbnQpXCI+PC9saWIta2VuZG8tZ3JpZC12aWV3PlxyXG4gIDwvZGl2PlxyXG4iXX0=
|
|
@@ -117,6 +117,16 @@ export class CustomerFarmService {
|
|
|
117
117
|
throw error;
|
|
118
118
|
}
|
|
119
119
|
}
|
|
120
|
+
async GetWarehouseDropdownList() {
|
|
121
|
+
try {
|
|
122
|
+
const url = this.customerFarmApiUrls.getWarehouseDropdownListUrl;
|
|
123
|
+
const resultResponse = await this.dataAccessService.GetDropdownListData(url);
|
|
124
|
+
return resultResponse;
|
|
125
|
+
}
|
|
126
|
+
catch (error) {
|
|
127
|
+
throw error;
|
|
128
|
+
}
|
|
129
|
+
}
|
|
120
130
|
}
|
|
121
131
|
CustomerFarmService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: CustomerFarmService, deps: [{ token: i1.DataAccessService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
122
132
|
CustomerFarmService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: CustomerFarmService, providedIn: 'root' });
|
|
@@ -126,4 +136,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImpor
|
|
|
126
136
|
providedIn: 'root'
|
|
127
137
|
}]
|
|
128
138
|
}], ctorParameters: function () { return [{ type: i1.DataAccessService }]; } });
|
|
129
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
139
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tZXItZmFybS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY3VzdG9tZXItZmFybS9zcmMvbGliL2N1c3RvbWVyLWZhcm0uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDOzs7QUFPNUUsTUFBTSxPQUFPLG1CQUFtQjtJQUU1QixZQUFvQixpQkFBb0M7UUFBcEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUV4RCx3QkFBbUIsR0FBRyxJQUFJLG1CQUFtQixFQUFFLENBQUM7SUFGWSxDQUFDO0lBSTdEOzs7Ozs7T0FNRztJQUNJLEtBQUssQ0FBQyxXQUFXLENBQUMsWUFBb0I7UUFDekMsSUFBSTtZQUNBLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxzQkFBc0IsR0FBRyxHQUFHLEdBQUcsWUFBWSxDQUFDO1lBQ2pGLE1BQU0sY0FBYyxHQUFHLE1BQU0sSUFBSSxDQUFDLGlCQUFpQixDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNyRSxPQUFPLGNBQWMsQ0FBQztTQUN6QjtRQUFDLE9BQU8sS0FBSyxFQUFFO1lBQ1osTUFBTSxLQUFLLENBQUM7U0FDZjtJQUNMLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxLQUFLLENBQUMsVUFBVSxDQUFDLGlCQUFvQztRQUN4RCxJQUFJO1lBQ0EsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLHlCQUF5QixDQUFDO1lBQy9ELE1BQU0sY0FBYyxHQUFHLE1BQU0sSUFBSSxDQUFDLGlCQUFpQixDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsaUJBQWlCLENBQUMsQ0FBQztZQUN2RixPQUFPLGNBQWMsQ0FBQztTQUN6QjtRQUFDLE9BQU8s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fSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRGF0YUFjY2Vzc1NlcnZpY2UsIFdlYkFwaVJlc3VsdCB9IGZyb20gJ0BxdWJlc2Vuc2UvYmFzZS1zZXJ2aWNlcyc7XHJcbmltcG9ydCB7IEN1c3RvbWVyRmFybUFwaVVybHMgfSBmcm9tICcuL2RlcGVuZGVuY2llcy9jdXN0b21lci1mYXJtLWFwaS11cmxzJztcclxuaW1wb3J0IHsgQ3VzdG9tZXJGYXJtTW9kZWwgfSBmcm9tICcuL2RlcGVuZGVuY2llcy9jdXN0b21lci1mYXJtLW1vZGVsJztcclxuXHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEN1c3RvbWVyRmFybVNlcnZpY2Uge1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgZGF0YUFjY2Vzc1NlcnZpY2U6IERhdGFBY2Nlc3NTZXJ2aWNlKSB7IH1cclxuXHJcbiAgICBjdXN0b21lckZhcm1BcGlVcmxzID0gbmV3IEN1c3RvbWVyRmFybUFwaVVybHMoKTtcclxuXHJcbiAgICAvKipcclxuICAgICAqIHNlcnZpY2UgZm9yIGdldCBjdXN0b21lciBkYXRhIGJ5IElkXHJcbiAgICAgKiBcclxuICAgICAqIEBwYXJhbSBjdXN0b21lckdVSUQgXHJcbiAgICAgKiBcclxuICAgICAqIEByZXR1cm5zIFJlc3BvbnNlIERhdGEgZnJvbSBEYXRhYmFzZVxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgYXN5bmMgR2V0RGF0YUJ5SWQoY3VzdG9tZXJHVUlEOiBzdHJpbmcpOiBQcm9taXNlPFdlYkFwaVJlc3VsdD4ge1xyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHVybCA9IHRoaXMuY3VzdG9tZXJGYXJtQXBpVXJscy5nZXRDdXN0b21lckZhcm1CeUlkVXJsICsgJy8nICsgY3VzdG9tZXJHVUlEO1xyXG4gICAgICAgICAgICBjb25zdCByZXN1bHRSZXNwb25zZSA9IGF3YWl0IHRoaXMuZGF0YUFjY2Vzc1NlcnZpY2UuR2V0RGF0YUJ5SWQodXJsKTtcclxuICAgICAgICAgICAgcmV0dXJuIHJlc3VsdFJlc3BvbnNlO1xyXG4gICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgICAgICAgIHRocm93IGVycm9yO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIHNlcnZpY2UgZm9yIGluc2VydGluZyBjdXN0b21lciBkYXRhIGludG8gZGF0YWJhc2VcclxuICAgICAqIFxyXG4gICAgICogQHBhcmFtIGN1c3RvbWVyRmFybU1vZGVsIFxyXG4gICAgICogXHJcbiAgICAgKiBAcmV0dXJucyBSZXNwb25zZSBtZXNzYWdlIGZyb20gRGF0YWJhc2VcclxuICAgICAqL1xyXG4gICAgcHVibGljIGFzeW5jIEluc2VydERhdGEoY3VzdG9tZXJGYXJtTW9kZWw6IEN1c3RvbWVyRmFybU1vZGVsKSB7XHJcbiAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgY29uc3QgdXJsID0gdGhpcy5jdXN0b21lckZhcm1BcGlVcmxzLmluc2VydEN1c3RvbWVyRmFybURhdGFVcmw7XHJcbiAgICAgICAgICAgIGNvbnN0IHJlc3VsdFJlc3BvbnNlID0gYXdhaXQgdGhpcy5kYXRhQWNjZXNzU2VydmljZS5JbnNlcnREYXRhKHVybCwgY3VzdG9tZXJGYXJtTW9kZWwpO1xyXG4gICAgICAgICAgICByZXR1cm4gcmVzdWx0UmVzcG9uc2U7XHJcbiAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgICAgICAgICAgdGhyb3cgZXJyb3I7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogc2VydmljZSBmb3IgdXBkYXRlIGN1c3RvbWVyIERhdGFcclxuICAgICAqIFxyXG4gICAgICogQHBhcmFtIGN1c3RvbWVyRmFybU1vZGVsIFxyXG4gICAgICogXHJcbiAgICAgKiBAcmV0dXJucyBSZXNwb25zZSBtZXNzYWdlIGZyb20gRGF0YWJhc2VcclxuICAgICAqL1xyXG4gICAgcHVibGljIGFzeW5jIFVwZGF0ZURhdGEoY3VzdG9tZXJGYXJtTW9kZWw6IEN1c3RvbWVyRmFybU1vZGVsKSB7XHJcbiAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgY29uc3QgdXJsID0gdGhpcy5jdXN0b21lckZhcm1BcGlVcmxzLnVwZGF0ZUN1c3RvbWVyRmFybURhdGFVcmw7XHJcbiAgICAgICAgICAgIGNvbnN0IHJlc3VsdFJlc3BvbnNlID0gYXdhaXQgdGhpcy5kYXRhQWNjZXNzU2VydmljZS5VcGRhdGVEYXRhKHVybCwgY3VzdG9tZXJGYXJtTW9kZWwpO1xyXG4gICAgICAgICAgICByZXR1cm4gcmVzdWx0UmVzcG9uc2U7XHJcbiAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgICAgICAgICAgdGhyb3cgZXJyb3I7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogc2VydmljZSBmb3IgZGVsZXRlIGN1c3RvbWVyIGRhdGEgYnkgR1VJRFxyXG4gICAgICogXHJcbiAgICAgKiBAcGFyYW0gY3VzdG9tZXJGYXJtTW9kZWwgXHJcbiAgICAgKiBcclxuICAgICAqIEByZXR1cm5zIFJlc3BvbnNlIG1lc3NhZ2UgZnJvbSBEYXRhYmFzZVxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgYXN5bmMgRGVsZXRlRGF0YShyZWNvcmRJZDogYW55KSB7XHJcbiAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgY29uc3QgdXJsID0gdGhpcy5jdXN0b21lckZhcm1BcGlVcmxzLmRlbGV0ZUN1c3RvbWVyRmFybURhdGFVcmwgKyAnLycgKyByZWNvcmRJZDtcclxuICAgICAgICAgICAgY29uc3QgcmVzdWx0UmVzcG9uc2UgPSBhd2FpdCB0aGlzLmRhdGFBY2Nlc3NTZXJ2aWNlLkRlbGV0ZURhdGEodXJsKTtcclxuICAgICAgICAgICAgcmV0dXJuIHJlc3VsdFJlc3BvbnNlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjYXRjaCAoZXJyb3IpIHtcclxuICAgICAgICAgICAgdGhyb3cgZXJyb3I7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogc2VydmljZSBmb3IgZ2V0IGRhdGEgZm9yIGN1c3RvbWVyIGdyaWQgXHJcbiAgICAgKiBcclxuICAgICAqIEBwYXJhbSBjdXN0b21lckZhcm1Nb2RlbCBcclxuICAgICAqIFxyXG4gICAgICogQHJldHVybnMgUmVzcG9uc2UgRGF0YSBmcm9tIERhdGFiYXNlXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBhc3luYyBHZXRMaXN0RGF0YShjdXN0b21lckRhdGFNb2RlbDogQ3VzdG9tZXJGYXJtTW9kZWwpIHtcclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICBjb25zdCB1cmwgPSB0aGlzLmN1c3RvbWVyRmFybUFwaVVybHMuZ2V0Q3VzdG9tZXJGYXJtTGlzdFVybDtcclxuICAgICAgICAgICAgY29uc3QgcmVzdWx0UmVzcG9uc2UgPSBhd2FpdCB0aGlzLmRhdGFBY2Nlc3NTZXJ2aWNlLkdldExpc3REYXRhKHVybCwgY3VzdG9tZXJEYXRhTW9kZWwpO1xyXG4gICAgICAgICAgICByZXR1cm4gcmVzdWx0UmVzcG9uc2U7XHJcbiAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgICAgICAgICAgdGhyb3cgZXJyb3I7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogc2VydmljZSBmb3IgZ2V0IGRhdGEgZm9yIGN1c3RvbWVyIERyb3BEb3duIExpc3RcclxuICAgICAqIFxyXG4gICAgICogQHJldHVybnMgXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBhc3luYyBHZXRDdXN0b21lcnNEcm9wZG93bkxpc3QoKSB7XHJcbiAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgY29uc3QgdXJsID0gdGhpcy5jdXN0b21lckZhcm1BcGlVcmxzLmdldEN1c3RvbWVyRmFybURyb3Bkb3duTGlzdFVybDtcclxuICAgICAgICAgICAgY29uc3QgcmVzdWx0UmVzcG9uc2UgPSBhd2FpdCB0aGlzLmRhdGFBY2Nlc3NTZXJ2aWNlLkdldERyb3Bkb3duTGlzdERhdGEodXJsKTtcclxuICAgICAgICAgICAgcmV0dXJuIHJlc3VsdFJlc3BvbnNlO1xyXG4gICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgICAgICAgIHRocm93IGVycm9yO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgYXN5bmMgR2V0Q3VzdG9tZXJMaXN0QnlLZXl3b3JkKHZhbHVlOnN0cmluZykge1xyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHVybCA9IHRoaXMuY3VzdG9tZXJGYXJtQXBpVXJscy5nZXRjdXN0b21lcmxpc3RieWtleXdvcmQgKyAnLycgKyB2YWx1ZTtcclxuICAgICAgICAgICAgY29uc3QgcmVzdWx0UmVzcG9uc2UgPSBhd2FpdCB0aGlzLmRhdGFBY2Nlc3NTZXJ2aWNlLkdldERhdGFCeUlkKHVybCk7XHJcbiAgICAgICAgICAgIHJldHVybiByZXN1bHRSZXNwb25zZTtcclxuICAgICAgICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgICAgICAgICB0aHJvdyBlcnJvcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGFzeW5jIEdldFdhcmVob3VzZURyb3Bkb3duTGlzdCgpIHtcclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgY29uc3QgdXJsID0gdGhpcy5jdXN0b21lckZhcm1BcGlVcmxzLmdldFdhcmVob3VzZURyb3Bkb3duTGlzdFVybDtcclxuICAgICAgICAgIGNvbnN0IHJlc3VsdFJlc3BvbnNlID0gYXdhaXQgdGhpcy5kYXRhQWNjZXNzU2VydmljZS5HZXREcm9wZG93bkxpc3REYXRhKHVybCk7XHJcbiAgICAgICAgICByZXR1cm4gcmVzdWx0UmVzcG9uc2U7XHJcbiAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgICAgICAgIHRocm93IGVycm9yO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -12,8 +12,10 @@ export class CustomerFarmApiUrls {
|
|
|
12
12
|
this.getCustomerFarmListUrl = 'api/CustomerFarm/GetAll';
|
|
13
13
|
//api Url string for get Customer dropdown list
|
|
14
14
|
this.getCustomerFarmDropdownListUrl = 'api/CustomerFarm/GetDropdownList';
|
|
15
|
+
//api Url string for get Warehouse dropdown list
|
|
16
|
+
this.getWarehouseDropdownListUrl = 'api/CustomerFarm/GetWarehouseDropdownList';
|
|
15
17
|
//api Url string for get Customer dropdown list
|
|
16
18
|
this.getcustomerlistbykeyword = 'api/CustomerFarm/SearchCustomer';
|
|
17
19
|
}
|
|
18
20
|
}
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tZXItZmFybS1hcGktdXJscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2N1c3RvbWVyLWZhcm0vc3JjL2xpYi9kZXBlbmRlbmNpZXMvY3VzdG9tZXItZmFybS1hcGktdXJscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sbUJBQW1CO0lBQWhDO1FBQ0ksbUNBQW1DO1FBQ25DLDJCQUFzQixHQUFXLDBCQUEwQixDQUFDO1FBRTVELHlDQUF5QztRQUN6Qyw4QkFBeUIsR0FBVyx5QkFBeUIsQ0FBQztRQUU5RCwyQ0FBMkM7UUFDM0MsOEJBQXlCLEdBQVcseUJBQXlCLENBQUM7UUFFOUQsMkNBQTJDO1FBQzNDLDhCQUF5QixHQUFXLHlCQUF5QixDQUFDO1FBRTlELHNDQUFzQztRQUN0QywyQkFBc0IsR0FBVyx5QkFBeUIsQ0FBQztRQUUzRCwrQ0FBK0M7UUFDL0MsbUNBQThCLEdBQVcsa0NBQWtDLENBQUM7UUFFNUUsZ0RBQWdEO1FBQ2hELGdDQUEyQixHQUFXLDJDQUEyQyxDQUFDO1FBRWxGLCtDQUErQztRQUMvQyw2QkFBd0IsR0FBVyxpQ0FBaUMsQ0FBQztJQUN6RSxDQUFDO0NBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgQ3VzdG9tZXJGYXJtQXBpVXJscyB7XHJcbiAgICAvL2FwaSBVcmwgc3RyaW5nIGZvciBnZXQgZGF0YSBieSBJZFxyXG4gICAgZ2V0Q3VzdG9tZXJGYXJtQnlJZFVybDogc3RyaW5nID0gJ2FwaS9DdXN0b21lckZhcm0vR2V0QnlJZCc7XHJcbiAgICBcclxuICAgIC8vYXBpIFVybCBzdHJpbmcgZm9yIGluc2VydCBDdXN0b21lciBkYXRhXHJcbiAgICBpbnNlcnRDdXN0b21lckZhcm1EYXRhVXJsOiBzdHJpbmcgPSAnYXBpL0N1c3RvbWVyRmFybS9DcmVhdGUnO1xyXG5cclxuICAgIC8vYXBpIFVybCBzdHJpbmcgZm9yIHVwZGF0ZSBDdXN0b21lciByZWNvcmRcclxuICAgIHVwZGF0ZUN1c3RvbWVyRmFybURhdGFVcmw6IHN0cmluZyA9ICdhcGkvQ3VzdG9tZXJGYXJtL1VwZGF0ZSc7XHJcblxyXG4gICAgLy9hcGkgVXJsIHN0cmluZyBmb3IgZGVsZXRlIEN1c3RvbWVyIHJlY29yZFxyXG4gICAgZGVsZXRlQ3VzdG9tZXJGYXJtRGF0YVVybDogc3RyaW5nID0gJ2FwaS9DdXN0b21lckZhcm0vRGVsZXRlJztcclxuXHJcbiAgICAvL2FwaSBVcmwgc3RyaW5nIGZvciBnZXQgQ3VzdG9tZXIgbGlzdFxyXG4gICAgZ2V0Q3VzdG9tZXJGYXJtTGlzdFVybDogc3RyaW5nID0gJ2FwaS9DdXN0b21lckZhcm0vR2V0QWxsJztcclxuICAgXHJcbiAgICAvL2FwaSBVcmwgc3RyaW5nIGZvciBnZXQgQ3VzdG9tZXIgZHJvcGRvd24gbGlzdFxyXG4gICAgZ2V0Q3VzdG9tZXJGYXJtRHJvcGRvd25MaXN0VXJsOiBzdHJpbmcgPSAnYXBpL0N1c3RvbWVyRmFybS9HZXREcm9wZG93bkxpc3QnO1xyXG5cclxuICAgIC8vYXBpIFVybCBzdHJpbmcgZm9yIGdldCBXYXJlaG91c2UgZHJvcGRvd24gbGlzdFxyXG4gICAgZ2V0V2FyZWhvdXNlRHJvcGRvd25MaXN0VXJsOiBzdHJpbmcgPSAnYXBpL0N1c3RvbWVyRmFybS9HZXRXYXJlaG91c2VEcm9wZG93bkxpc3QnO1xyXG5cclxuICAgIC8vYXBpIFVybCBzdHJpbmcgZm9yIGdldCBDdXN0b21lciBkcm9wZG93biBsaXN0XHJcbiAgICBnZXRjdXN0b21lcmxpc3RieWtleXdvcmQ6IHN0cmluZyA9ICdhcGkvQ3VzdG9tZXJGYXJtL1NlYXJjaEN1c3RvbWVyJztcclxufSJdfQ==
|
|
@@ -11,14 +11,16 @@ import * as i5 from '@angular/material/input';
|
|
|
11
11
|
import { MatInputModule } from '@angular/material/input';
|
|
12
12
|
import * as i6 from '@angular/common';
|
|
13
13
|
import { CommonModule } from '@angular/common';
|
|
14
|
+
import * as i7 from '@angular/material/core';
|
|
15
|
+
import { MatOptionModule, MatNativeDateModule } from '@angular/material/core';
|
|
16
|
+
import * as i8 from '@angular/material/select';
|
|
17
|
+
import { MatSelectModule } from '@angular/material/select';
|
|
14
18
|
import { MatCheckboxModule } from '@angular/material/checkbox';
|
|
15
19
|
import { CdkStepperModule } from '@angular/cdk/stepper';
|
|
16
20
|
import { MatButtonModule } from '@angular/material/button';
|
|
17
|
-
import { MatOptionModule, MatNativeDateModule } from '@angular/material/core';
|
|
18
21
|
import { MatDatepickerModule } from '@angular/material/datepicker';
|
|
19
22
|
import { MatGridListModule } from '@angular/material/grid-list';
|
|
20
23
|
import { MatIconModule } from '@angular/material/icon';
|
|
21
|
-
import { MatSelectModule } from '@angular/material/select';
|
|
22
24
|
import { MatStepperModule } from '@angular/material/stepper';
|
|
23
25
|
import { MatToolbarModule } from '@angular/material/toolbar';
|
|
24
26
|
import { ButtonsModule } from '@progress/kendo-angular-buttons';
|
|
@@ -38,6 +40,8 @@ class CustomerFarmApiUrls {
|
|
|
38
40
|
this.getCustomerFarmListUrl = 'api/CustomerFarm/GetAll';
|
|
39
41
|
//api Url string for get Customer dropdown list
|
|
40
42
|
this.getCustomerFarmDropdownListUrl = 'api/CustomerFarm/GetDropdownList';
|
|
43
|
+
//api Url string for get Warehouse dropdown list
|
|
44
|
+
this.getWarehouseDropdownListUrl = 'api/CustomerFarm/GetWarehouseDropdownList';
|
|
41
45
|
//api Url string for get Customer dropdown list
|
|
42
46
|
this.getcustomerlistbykeyword = 'api/CustomerFarm/SearchCustomer';
|
|
43
47
|
}
|
|
@@ -172,6 +176,18 @@ class CustomerFarmService {
|
|
|
172
176
|
}
|
|
173
177
|
});
|
|
174
178
|
}
|
|
179
|
+
GetWarehouseDropdownList() {
|
|
180
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
181
|
+
try {
|
|
182
|
+
const url = this.customerFarmApiUrls.getWarehouseDropdownListUrl;
|
|
183
|
+
const resultResponse = yield this.dataAccessService.GetDropdownListData(url);
|
|
184
|
+
return resultResponse;
|
|
185
|
+
}
|
|
186
|
+
catch (error) {
|
|
187
|
+
throw error;
|
|
188
|
+
}
|
|
189
|
+
});
|
|
190
|
+
}
|
|
175
191
|
}
|
|
176
192
|
CustomerFarmService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: CustomerFarmService, deps: [{ token: i2.DataAccessService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
177
193
|
CustomerFarmService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: CustomerFarmService, providedIn: 'root' });
|
|
@@ -262,6 +278,7 @@ class CustomerFarmComponent {
|
|
|
262
278
|
this.hideButtons = false;
|
|
263
279
|
this.isViewCall = false;
|
|
264
280
|
this.speciesList = [];
|
|
281
|
+
this.warehouseList = [];
|
|
265
282
|
this.permission = [];
|
|
266
283
|
this.userData = [];
|
|
267
284
|
this.gridConfiguration.formCodeForJsonHeader = 'CUFA';
|
|
@@ -270,6 +287,7 @@ class CustomerFarmComponent {
|
|
|
270
287
|
ngOnInit() {
|
|
271
288
|
return __awaiter(this, void 0, void 0, function* () {
|
|
272
289
|
this.DeclareForm();
|
|
290
|
+
this.getWarehouseList();
|
|
273
291
|
if (this.customerFarmConfiguration.showGrid) {
|
|
274
292
|
this.gridConfiguration.formCodeForJsonHeader = 'CUFA';
|
|
275
293
|
this.gridConfiguration.formCodeForGridPermissions = this.customerFarmConfiguration.customerFarmGridConfigration.formCodeForGridPermission;
|
|
@@ -277,6 +295,7 @@ class CustomerFarmComponent {
|
|
|
277
295
|
yield this.permissionMethod();
|
|
278
296
|
//this.gridConfiguration.actions = { 'View': false, 'Edit': true, 'Delete': true, 'Generate PDF': false };
|
|
279
297
|
this.GetListData();
|
|
298
|
+
//this.getWarehouseList();
|
|
280
299
|
}
|
|
281
300
|
});
|
|
282
301
|
}
|
|
@@ -445,6 +464,18 @@ class CustomerFarmComponent {
|
|
|
445
464
|
this.customerFarmForm.disable();
|
|
446
465
|
}));
|
|
447
466
|
}
|
|
467
|
+
getWarehouseList() {
|
|
468
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
469
|
+
try {
|
|
470
|
+
const getResponse = yield this.customerFarmService.GetWarehouseDropdownList();
|
|
471
|
+
this.warehouseList = getResponse.apiData;
|
|
472
|
+
}
|
|
473
|
+
catch (error) {
|
|
474
|
+
this.errorLogService.saveError(error);
|
|
475
|
+
this.toastr.ShowAllErrors(error.error.message.userMessage);
|
|
476
|
+
}
|
|
477
|
+
});
|
|
478
|
+
}
|
|
448
479
|
/**
|
|
449
480
|
* @description
|
|
450
481
|
* get data for Customer grid list
|
|
@@ -467,10 +498,10 @@ class CustomerFarmComponent {
|
|
|
467
498
|
}
|
|
468
499
|
}
|
|
469
500
|
CustomerFarmComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: CustomerFarmComponent, deps: [{ token: CustomerFarmService }, { token: i2.JsonFormsService }, { token: i2.ApplicationRoleMenusService }, { token: i3.FormBuilder }, { token: i2.ErrorLogService }, { token: i2.ToastrNotificationService }], target: i0.ɵɵFactoryTarget.Component });
|
|
470
|
-
CustomerFarmComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: CustomerFarmComponent, selector: "lib-customer-farm", inputs: { customerFarmConfiguration: "customerFarmConfiguration" }, outputs: { customerFarmData: "customerFarmData" }, ngImport: i0, template: "<div class=\"flex flex-col flex-auto min-w-0 w-full\">\r\n <!-- form code starts here -->\r\n <!--content-->\r\n <div class=\"sm:w-full overflow-hidden\" *ngIf=\"customerFarmConfiguration.showModal\">\r\n\r\n <!--form body-->\r\n <form class=\"flex flex-col overflow-hidden\" [formGroup]=\"customerFarmForm\">\r\n <!-- Customer Farm section start -->\r\n\r\n <div class=\"sm:flex\">\r\n <div class=\"w-full\">\r\n <div class=\"sm:flex px-8 pt-4\">\r\n <mat-form-field class=\"flex-auto w-full mr-4\"\r\n *ngIf=\"customerFarmConfiguration.allowedCustomerFarmFields.customerName\">\r\n <mat-label>Client Name</mat-label>\r\n <input matInput id=\"customerName\" placeholder=\"Client Name\" pattern=\"^[a-zA-Z ]*$\"\r\n minlength=\"3\" [formControlName]=\"'customerName'\" (change)=\"emitDataToParent()\">\r\n <mat-error\r\n *ngIf=\"customerFarmForm.get('customerName').hasError('required') && customerFarmConfiguration.requiredCustomerFarmFields.customerName \">\r\n Client Name is required\r\n </mat-error>\r\n <mat-error *ngIf=\"customerFarmForm.get('customerName').hasError('pattern')\">\r\n Please enter valid Client name\r\n </mat-error>\r\n <mat-error *ngIf=\"customerFarmForm.get('customerName').hasError('minlength')\">\r\n Client name must be of atleast 3 characters\r\n </mat-error>\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"flex-auto w-full\"\r\n *ngIf=\"customerFarmConfiguration.allowedCustomerFarmFields.defaultWarehouse\">\r\n <mat-label>Default Warehouse</mat-label>\r\n <
|
|
501
|
+
CustomerFarmComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: CustomerFarmComponent, selector: "lib-customer-farm", inputs: { customerFarmConfiguration: "customerFarmConfiguration" }, outputs: { customerFarmData: "customerFarmData" }, ngImport: i0, template: "<div class=\"flex flex-col flex-auto min-w-0 w-full\">\r\n <!-- form code starts here -->\r\n <!--content-->\r\n <div class=\"sm:w-full overflow-hidden\" *ngIf=\"customerFarmConfiguration.showModal\">\r\n\r\n <!--form body-->\r\n <form class=\"flex flex-col overflow-hidden\" [formGroup]=\"customerFarmForm\">\r\n <!-- Customer Farm section start -->\r\n\r\n <div class=\"sm:flex\">\r\n <div class=\"w-full\">\r\n <div class=\"sm:flex px-8 pt-4\">\r\n <mat-form-field class=\"flex-auto w-full mr-4\"\r\n *ngIf=\"customerFarmConfiguration.allowedCustomerFarmFields.customerName\">\r\n <mat-label>Client Name</mat-label>\r\n <input matInput id=\"customerName\" placeholder=\"Client Name\" pattern=\"^[a-zA-Z ]*$\"\r\n minlength=\"3\" [formControlName]=\"'customerName'\" (change)=\"emitDataToParent()\">\r\n <mat-error\r\n *ngIf=\"customerFarmForm.get('customerName').hasError('required') && customerFarmConfiguration.requiredCustomerFarmFields.customerName \">\r\n Client Name is required\r\n </mat-error>\r\n <mat-error *ngIf=\"customerFarmForm.get('customerName').hasError('pattern')\">\r\n Please enter valid Client name\r\n </mat-error>\r\n <mat-error *ngIf=\"customerFarmForm.get('customerName').hasError('minlength')\">\r\n Client name must be of atleast 3 characters\r\n </mat-error>\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"flex-auto w-full\"\r\n *ngIf=\"customerFarmConfiguration.allowedCustomerFarmFields.defaultWarehouse\">\r\n <mat-label>Default Warehouse</mat-label>\r\n <mat-select matSelect [formControlName]=\"'defaultWarehouse'\" (selectionChange)=\"emitDataToParent()\">\r\n <mat-option *ngFor=\"let warehouse of warehouseList\"\r\n [value]=\"warehouse.dataValue\">{{warehouse.dataText}}</mat-option>\r\n </mat-select>\r\n <mat-error\r\n *ngIf=\"customerFarmForm.get('defaultWarehouse').hasError('required') && customerFarmConfiguration.requiredCustomerFarmFields.defaultWarehouse\">\r\n Default Warehouse is required\r\n </mat-error>\r\n </mat-form-field>\r\n </div>\r\n\r\n <div class=\"sm:flex px-8 pt-4\">\r\n <mat-form-field class=\"flex-auto w-full mr-4\"\r\n *ngIf=\"customerFarmConfiguration.allowedCustomerFarmFields.personInCharge\">\r\n <mat-label>Person In Charge</mat-label>\r\n <input matInput id=\"personInCharge\" placeholder=\"Person In Charge\"\r\n [formControlName]=\"'personInCharge'\" (change)=\"emitDataToParent()\">\r\n <mat-error\r\n *ngIf=\"customerFarmForm.get('personInCharge').hasError('required') && customerFarmConfiguration.requiredCustomerFarmFields.personInCharge\">\r\n Person In Charge is required\r\n </mat-error>\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"flex-auto w-full\"\r\n *ngIf=\"customerFarmConfiguration.allowedCustomerFarmFields.displayName\">\r\n <mat-label>Display Name</mat-label>\r\n <input matInput id=\"displayName\" placeholder=\"Display Name\"\r\n [formControlName]=\"'displayName'\" (change)=\"emitDataToParent()\">\r\n </mat-form-field>\r\n </div>\r\n\r\n <div class=\"sm:flex px-8 pt-4\">\r\n <mat-form-field class=\"flex-auto w-full mr-4\"\r\n *ngIf=\"customerFarmConfiguration.allowedCustomerFarmFields.primaryVetId\">\r\n <mat-label>Primary Vet</mat-label>\r\n <input matInput id=\"primaryVetId\" placeholder=\"Primary Vet\"\r\n [formControlName]=\"'primaryVetId'\" (change)=\"emitDataToParent()\">\r\n <mat-error\r\n *ngIf=\"customerFarmForm.get('primaryVetId').hasError('required') && customerFarmConfiguration.requiredCustomerFarmFields.primaryVetId\">\r\n Primary Vet is required\r\n </mat-error>\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"flex-auto w-full\"\r\n *ngIf=\"customerFarmConfiguration.allowedCustomerFarmFields.PICTattoo\">\r\n <mat-label>PIC/Tattoo (if applicable)</mat-label>\r\n <input matInput id=\"PICTattoo\" placeholder=\"PIC/Tattoo\" [formControlName]=\"'PICTattoo'\"\r\n (change)=\"emitDataToParent()\">\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n <!-- Customer Farm section End -->\r\n\r\n </form>\r\n </div>\r\n <!-- form code ends here -->\r\n\r\n</div>\r\n<div *ngIf=\"customerFarmConfiguration.showGrid\">\r\n <lib-kendo-grid-view [configuration]=\"gridConfiguration\" (events)=\"handleGridEvents($event)\"></lib-kendo-grid-view>\r\n </div>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i4.MatError, selector: "mat-error", inputs: ["id"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "directive", type: i5.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i3.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i7.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: i8.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "component", type: i2.KendoGridViewComponent, selector: "lib-kendo-grid-view", inputs: ["configuration"], outputs: ["events"] }] });
|
|
471
502
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: CustomerFarmComponent, decorators: [{
|
|
472
503
|
type: Component,
|
|
473
|
-
args: [{ selector: 'lib-customer-farm', template: "<div class=\"flex flex-col flex-auto min-w-0 w-full\">\r\n <!-- form code starts here -->\r\n <!--content-->\r\n <div class=\"sm:w-full overflow-hidden\" *ngIf=\"customerFarmConfiguration.showModal\">\r\n\r\n <!--form body-->\r\n <form class=\"flex flex-col overflow-hidden\" [formGroup]=\"customerFarmForm\">\r\n <!-- Customer Farm section start -->\r\n\r\n <div class=\"sm:flex\">\r\n <div class=\"w-full\">\r\n <div class=\"sm:flex px-8 pt-4\">\r\n <mat-form-field class=\"flex-auto w-full mr-4\"\r\n *ngIf=\"customerFarmConfiguration.allowedCustomerFarmFields.customerName\">\r\n <mat-label>Client Name</mat-label>\r\n <input matInput id=\"customerName\" placeholder=\"Client Name\" pattern=\"^[a-zA-Z ]*$\"\r\n minlength=\"3\" [formControlName]=\"'customerName'\" (change)=\"emitDataToParent()\">\r\n <mat-error\r\n *ngIf=\"customerFarmForm.get('customerName').hasError('required') && customerFarmConfiguration.requiredCustomerFarmFields.customerName \">\r\n Client Name is required\r\n </mat-error>\r\n <mat-error *ngIf=\"customerFarmForm.get('customerName').hasError('pattern')\">\r\n Please enter valid Client name\r\n </mat-error>\r\n <mat-error *ngIf=\"customerFarmForm.get('customerName').hasError('minlength')\">\r\n Client name must be of atleast 3 characters\r\n </mat-error>\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"flex-auto w-full\"\r\n *ngIf=\"customerFarmConfiguration.allowedCustomerFarmFields.defaultWarehouse\">\r\n <mat-label>Default Warehouse</mat-label>\r\n <
|
|
504
|
+
args: [{ selector: 'lib-customer-farm', template: "<div class=\"flex flex-col flex-auto min-w-0 w-full\">\r\n <!-- form code starts here -->\r\n <!--content-->\r\n <div class=\"sm:w-full overflow-hidden\" *ngIf=\"customerFarmConfiguration.showModal\">\r\n\r\n <!--form body-->\r\n <form class=\"flex flex-col overflow-hidden\" [formGroup]=\"customerFarmForm\">\r\n <!-- Customer Farm section start -->\r\n\r\n <div class=\"sm:flex\">\r\n <div class=\"w-full\">\r\n <div class=\"sm:flex px-8 pt-4\">\r\n <mat-form-field class=\"flex-auto w-full mr-4\"\r\n *ngIf=\"customerFarmConfiguration.allowedCustomerFarmFields.customerName\">\r\n <mat-label>Client Name</mat-label>\r\n <input matInput id=\"customerName\" placeholder=\"Client Name\" pattern=\"^[a-zA-Z ]*$\"\r\n minlength=\"3\" [formControlName]=\"'customerName'\" (change)=\"emitDataToParent()\">\r\n <mat-error\r\n *ngIf=\"customerFarmForm.get('customerName').hasError('required') && customerFarmConfiguration.requiredCustomerFarmFields.customerName \">\r\n Client Name is required\r\n </mat-error>\r\n <mat-error *ngIf=\"customerFarmForm.get('customerName').hasError('pattern')\">\r\n Please enter valid Client name\r\n </mat-error>\r\n <mat-error *ngIf=\"customerFarmForm.get('customerName').hasError('minlength')\">\r\n Client name must be of atleast 3 characters\r\n </mat-error>\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"flex-auto w-full\"\r\n *ngIf=\"customerFarmConfiguration.allowedCustomerFarmFields.defaultWarehouse\">\r\n <mat-label>Default Warehouse</mat-label>\r\n <mat-select matSelect [formControlName]=\"'defaultWarehouse'\" (selectionChange)=\"emitDataToParent()\">\r\n <mat-option *ngFor=\"let warehouse of warehouseList\"\r\n [value]=\"warehouse.dataValue\">{{warehouse.dataText}}</mat-option>\r\n </mat-select>\r\n <mat-error\r\n *ngIf=\"customerFarmForm.get('defaultWarehouse').hasError('required') && customerFarmConfiguration.requiredCustomerFarmFields.defaultWarehouse\">\r\n Default Warehouse is required\r\n </mat-error>\r\n </mat-form-field>\r\n </div>\r\n\r\n <div class=\"sm:flex px-8 pt-4\">\r\n <mat-form-field class=\"flex-auto w-full mr-4\"\r\n *ngIf=\"customerFarmConfiguration.allowedCustomerFarmFields.personInCharge\">\r\n <mat-label>Person In Charge</mat-label>\r\n <input matInput id=\"personInCharge\" placeholder=\"Person In Charge\"\r\n [formControlName]=\"'personInCharge'\" (change)=\"emitDataToParent()\">\r\n <mat-error\r\n *ngIf=\"customerFarmForm.get('personInCharge').hasError('required') && customerFarmConfiguration.requiredCustomerFarmFields.personInCharge\">\r\n Person In Charge is required\r\n </mat-error>\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"flex-auto w-full\"\r\n *ngIf=\"customerFarmConfiguration.allowedCustomerFarmFields.displayName\">\r\n <mat-label>Display Name</mat-label>\r\n <input matInput id=\"displayName\" placeholder=\"Display Name\"\r\n [formControlName]=\"'displayName'\" (change)=\"emitDataToParent()\">\r\n </mat-form-field>\r\n </div>\r\n\r\n <div class=\"sm:flex px-8 pt-4\">\r\n <mat-form-field class=\"flex-auto w-full mr-4\"\r\n *ngIf=\"customerFarmConfiguration.allowedCustomerFarmFields.primaryVetId\">\r\n <mat-label>Primary Vet</mat-label>\r\n <input matInput id=\"primaryVetId\" placeholder=\"Primary Vet\"\r\n [formControlName]=\"'primaryVetId'\" (change)=\"emitDataToParent()\">\r\n <mat-error\r\n *ngIf=\"customerFarmForm.get('primaryVetId').hasError('required') && customerFarmConfiguration.requiredCustomerFarmFields.primaryVetId\">\r\n Primary Vet is required\r\n </mat-error>\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"flex-auto w-full\"\r\n *ngIf=\"customerFarmConfiguration.allowedCustomerFarmFields.PICTattoo\">\r\n <mat-label>PIC/Tattoo (if applicable)</mat-label>\r\n <input matInput id=\"PICTattoo\" placeholder=\"PIC/Tattoo\" [formControlName]=\"'PICTattoo'\"\r\n (change)=\"emitDataToParent()\">\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n <!-- Customer Farm section End -->\r\n\r\n </form>\r\n </div>\r\n <!-- form code ends here -->\r\n\r\n</div>\r\n<div *ngIf=\"customerFarmConfiguration.showGrid\">\r\n <lib-kendo-grid-view [configuration]=\"gridConfiguration\" (events)=\"handleGridEvents($event)\"></lib-kendo-grid-view>\r\n </div>\r\n" }]
|
|
474
505
|
}], ctorParameters: function () { return [{ type: CustomerFarmService }, { type: i2.JsonFormsService }, { type: i2.ApplicationRoleMenusService }, { type: i3.FormBuilder }, { type: i2.ErrorLogService }, { type: i2.ToastrNotificationService }]; }, propDecorators: { customerFarmData: [{
|
|
475
506
|
type: Output
|
|
476
507
|
}], customerFarmConfiguration: [{
|