@hitsoft/uretim-yonetimi 1.0.0 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/lib/components/hit-create-barcodes/hit-create-barcodes.component.mjs +26 -8
- package/esm2020/lib/components/hit-issues-for-productions/hit-issues-for-productions.component.mjs +3 -3
- package/esm2020/lib/components/hit-production-orders/hit-production-orders.component.mjs +3 -3
- package/esm2020/lib/components/hit-receipt-from-productions/hit-receipt-from-productions.component.mjs +41 -68
- package/esm2020/lib/hit-proxy/hit-create-barcodes/models.mjs +1 -1
- package/esm2020/lib/hit-proxy/hit-receipt-from-productions/models.mjs +7 -1
- package/fesm2015/hitsoft-uretim-yonetimi.mjs +72 -73
- package/fesm2015/hitsoft-uretim-yonetimi.mjs.map +1 -1
- package/fesm2020/hitsoft-uretim-yonetimi.mjs +72 -73
- package/fesm2020/hitsoft-uretim-yonetimi.mjs.map +1 -1
- package/lib/components/hit-create-barcodes/hit-create-barcodes.component.d.ts +2 -0
- package/lib/components/hit-receipt-from-productions/hit-receipt-from-productions.component.d.ts +8 -8
- package/lib/hit-proxy/hit-create-barcodes/models.d.ts +1 -0
- package/package.json +1 -1
|
@@ -1,32 +1,25 @@
|
|
|
1
1
|
import { ListService } from '@abp/ng.core';
|
|
2
2
|
import { DateAdapter } from '@abp/ng.theme.shared/extensions';
|
|
3
3
|
import { ChangeDetectionStrategy, Component, ViewChild } from '@angular/core';
|
|
4
|
-
import { Validators } from '@angular/forms';
|
|
5
4
|
import { NgbDateAdapter } from '@ng-bootstrap/ng-bootstrap';
|
|
6
|
-
import { ReceiptFromProductionsBatchNumbers, ReceiptFromProductionsLines, ReceiptFromProductionsPostDto } from '../../hit-proxy/hit-receipt-from-productions/models';
|
|
5
|
+
import { GetProductionOrderDto, ReceiptFromProductionsBatchNumbers, ReceiptFromProductionsLines, ReceiptFromProductionsPostDto } from '../../hit-proxy/hit-receipt-from-productions/models';
|
|
7
6
|
import { HitHelper } from "../../hit-proxy/models";
|
|
8
7
|
import * as i0 from "@angular/core";
|
|
9
8
|
import * as i1 from "@abp/ng.core";
|
|
10
9
|
import * as i2 from "../../hit-proxy/hit-receipt-from-productions/hit-receipt-from-productions.service";
|
|
11
10
|
import * as i3 from "@abp/ng.theme.shared";
|
|
12
|
-
import * as i4 from "
|
|
13
|
-
import * as i5 from "
|
|
14
|
-
import * as i6 from "@angular/
|
|
15
|
-
import * as i7 from "@
|
|
16
|
-
import * as i8 from "
|
|
17
|
-
import * as i9 from "@abp/ng.components/page";
|
|
18
|
-
import * as i10 from "devextreme-angular";
|
|
19
|
-
import * as i11 from "devextreme-angular/ui/nested";
|
|
20
|
-
import * as i12 from "devextreme-angular/ui/form";
|
|
21
|
-
import * as i13 from "devextreme-angular/ui/load-indicator";
|
|
11
|
+
import * as i4 from "../../hit-proxy/hit-production-orders/hit-production-orders.service";
|
|
12
|
+
import * as i5 from "@angular/platform-browser";
|
|
13
|
+
import * as i6 from "@angular/common";
|
|
14
|
+
import * as i7 from "@abp/ng.components/page";
|
|
15
|
+
import * as i8 from "devextreme-angular";
|
|
22
16
|
export class HitReceiptFromProductionsComponent {
|
|
23
|
-
constructor(ngZone, list, track, service, confirmation,
|
|
17
|
+
constructor(ngZone, list, track, service, confirmation, productionOrdersService, sanitizer) {
|
|
24
18
|
this.ngZone = ngZone;
|
|
25
19
|
this.list = list;
|
|
26
20
|
this.track = track;
|
|
27
21
|
this.service = service;
|
|
28
22
|
this.confirmation = confirmation;
|
|
29
|
-
this.fb = fb;
|
|
30
23
|
this.productionOrdersService = productionOrdersService;
|
|
31
24
|
this.sanitizer = sanitizer;
|
|
32
25
|
this.HitHelper = HitHelper;
|
|
@@ -36,34 +29,23 @@ export class HitReceiptFromProductionsComponent {
|
|
|
36
29
|
cancelText: 'Kapat',
|
|
37
30
|
dismissible: false,
|
|
38
31
|
};
|
|
39
|
-
this.getProductionOrderDtoIsLoading = "valid";
|
|
40
32
|
this.isProductionOrderValid = false;
|
|
41
33
|
this.showModal = false;
|
|
42
34
|
this.pdfSrc = null;
|
|
43
|
-
this.
|
|
35
|
+
this.productionOrder = new GetProductionOrderDto();
|
|
36
|
+
this.receiptFromProductionsPostDtoQuantity = 0;
|
|
44
37
|
this.receiptFromProductionsPostDto = new ReceiptFromProductionsPostDto();
|
|
38
|
+
this.receiptFromProductionsPostDtoDocumentLine = new ReceiptFromProductionsLines();
|
|
39
|
+
this.receiptFromProductionsPostDtoBatchNumber = new ReceiptFromProductionsBatchNumbers();
|
|
45
40
|
this.warehouses = [];
|
|
46
41
|
}
|
|
47
42
|
ngOnInit() {
|
|
48
|
-
this.createForm();
|
|
49
43
|
this.clearAll();
|
|
50
44
|
this.getWarehouses();
|
|
51
45
|
}
|
|
52
46
|
ngAfterViewInit() {
|
|
53
47
|
this.focusOnBarkodNumarasi();
|
|
54
48
|
}
|
|
55
|
-
createForm() {
|
|
56
|
-
this.form = this.fb.group({
|
|
57
|
-
stokKodu: ['', Validators.required],
|
|
58
|
-
stokTanimi: ['', Validators.required],
|
|
59
|
-
miktar: ['', Validators.required],
|
|
60
|
-
toplanan: ['', Validators.required],
|
|
61
|
-
kalan: ['', Validators.required],
|
|
62
|
-
hedefDepo: ['', Validators.required],
|
|
63
|
-
hedefDepoCode: ['', Validators.required],
|
|
64
|
-
partiNo: ['', Validators.required],
|
|
65
|
-
});
|
|
66
|
-
}
|
|
67
49
|
generateReport() {
|
|
68
50
|
this.service.getBarcodeInfo(this.barkodNumarasi, this.newRecordDocEntry, 1).subscribe({
|
|
69
51
|
next: response => {
|
|
@@ -88,27 +70,18 @@ export class HitReceiptFromProductionsComponent {
|
|
|
88
70
|
}
|
|
89
71
|
async getProductionOrder() {
|
|
90
72
|
this.clearForm();
|
|
91
|
-
this.getProductionOrderDtoIsLoading = "pending";
|
|
92
73
|
this.isLoading = true;
|
|
93
74
|
this.productionOrdersService.get(this.barkodNumarasi).subscribe({
|
|
94
75
|
next: (result) => {
|
|
95
76
|
if (result.isSuccessful) {
|
|
96
|
-
this.
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
partiNo: result.items.u_trkBatch,
|
|
105
|
-
});
|
|
106
|
-
const filteredWarehouses = this.warehouses.filter(warehouse => warehouse.whsCode === result.items.warehouse);
|
|
107
|
-
if (filteredWarehouses.length > 0) {
|
|
108
|
-
this.form.patchValue({
|
|
109
|
-
hedefDepo: filteredWarehouses[0].whsName,
|
|
110
|
-
});
|
|
111
|
-
}
|
|
77
|
+
this.productionOrder = result.items;
|
|
78
|
+
this.receiptFromProductionsPostDtoQuantity = result.items.plannedQuantity - result.items.completedQuantity;
|
|
79
|
+
this.receiptFromProductionsPostDtoDocumentLine.baseEntry = this.barkodNumarasi;
|
|
80
|
+
this.receiptFromProductionsPostDtoDocumentLine.baseType = 202;
|
|
81
|
+
this.receiptFromProductionsPostDtoDocumentLine.quantity = this.receiptFromProductionsPostDtoQuantity;
|
|
82
|
+
this.receiptFromProductionsPostDtoDocumentLine.warehouseCode = result.items.warehouse;
|
|
83
|
+
this.receiptFromProductionsPostDtoBatchNumber.batchNumber = result.items.u_trkBatch;
|
|
84
|
+
this.receiptFromProductionsPostDtoBatchNumber.quantity = this.receiptFromProductionsPostDtoQuantity;
|
|
112
85
|
this.unitOfMeasure = result.items.unitOfMeasurement;
|
|
113
86
|
this.isProductionOrderValid = true;
|
|
114
87
|
this.focusOnToplananMiktar();
|
|
@@ -124,23 +97,15 @@ export class HitReceiptFromProductionsComponent {
|
|
|
124
97
|
}
|
|
125
98
|
}
|
|
126
99
|
});
|
|
127
|
-
this.getProductionOrderDtoIsLoading = "valid";
|
|
128
100
|
this.isLoading = false;
|
|
129
101
|
}
|
|
130
102
|
async postReceiptFromProductions() {
|
|
131
103
|
this.isLoading = true;
|
|
132
|
-
this.
|
|
133
|
-
this.receiptFromProductionsPostDto =
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
line.quantity = this.form.value.kalan;
|
|
138
|
-
line.warehouseCode = this.form.value.hedefDepoCode;
|
|
139
|
-
const batchNumber = new ReceiptFromProductionsBatchNumbers();
|
|
140
|
-
batchNumber.batchNumber = this.form.value.u_trkBatch;
|
|
141
|
-
batchNumber.quantity = this.form.value.kalan;
|
|
142
|
-
line.batchNumbers = [batchNumber];
|
|
143
|
-
this.receiptFromProductionsPostDto.documentLines = [line];
|
|
104
|
+
this.receiptFromProductionsPostDtoDocumentLine.batchNumbers = [this.receiptFromProductionsPostDtoBatchNumber];
|
|
105
|
+
this.receiptFromProductionsPostDto.documentLines = [this.receiptFromProductionsPostDtoDocumentLine];
|
|
106
|
+
console.log('documentLines', this.receiptFromProductionsPostDto.documentLines);
|
|
107
|
+
console.log('batchNumbers', this.receiptFromProductionsPostDtoDocumentLine.batchNumbers);
|
|
108
|
+
return;
|
|
144
109
|
this.service.create(this.receiptFromProductionsPostDto).subscribe({
|
|
145
110
|
next: (result) => {
|
|
146
111
|
if (result.isSuccessful) {
|
|
@@ -161,7 +126,6 @@ export class HitReceiptFromProductionsComponent {
|
|
|
161
126
|
});
|
|
162
127
|
}
|
|
163
128
|
});
|
|
164
|
-
this.receiptFromProductionsPostDtoIsLoading = false;
|
|
165
129
|
this.isLoading = false;
|
|
166
130
|
}
|
|
167
131
|
clearAll() {
|
|
@@ -169,10 +133,11 @@ export class HitReceiptFromProductionsComponent {
|
|
|
169
133
|
this.clearForm();
|
|
170
134
|
}
|
|
171
135
|
clearForm() {
|
|
136
|
+
this.productionOrder = new GetProductionOrderDto();
|
|
137
|
+
this.receiptFromProductionsPostDto = new ReceiptFromProductionsPostDto();
|
|
138
|
+
this.receiptFromProductionsPostDtoDocumentLine = new ReceiptFromProductionsLines();
|
|
139
|
+
this.receiptFromProductionsPostDtoBatchNumber = new ReceiptFromProductionsBatchNumbers();
|
|
172
140
|
this.unitOfMeasure = null;
|
|
173
|
-
this.form.reset();
|
|
174
|
-
this.form.markAsPristine();
|
|
175
|
-
this.form.markAsUntouched();
|
|
176
141
|
this.isProductionOrderValid = false;
|
|
177
142
|
this.focusOnBarkodNumarasi();
|
|
178
143
|
}
|
|
@@ -201,17 +166,25 @@ export class HitReceiptFromProductionsComponent {
|
|
|
201
166
|
}, 0);
|
|
202
167
|
});
|
|
203
168
|
}
|
|
169
|
+
getWarehouseName(code) {
|
|
170
|
+
const match = this.warehouses.find(x => x.whsCode === code);
|
|
171
|
+
return match ? match.whsName : '';
|
|
172
|
+
}
|
|
173
|
+
quantityChanged(e) {
|
|
174
|
+
this.receiptFromProductionsPostDtoBatchNumber.quantity = e.value;
|
|
175
|
+
this.receiptFromProductionsPostDtoDocumentLine.quantity = e.value;
|
|
176
|
+
}
|
|
204
177
|
}
|
|
205
|
-
HitReceiptFromProductionsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitReceiptFromProductionsComponent, deps: [{ token: i0.NgZone }, { token: i1.ListService }, { token: i1.TrackByService }, { token: i2.HitReceiptFromProductionsService }, { token: i3.ConfirmationService }, { token: i4.
|
|
206
|
-
HitReceiptFromProductionsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: HitReceiptFromProductionsComponent, selector: "lib-hit-receipt-from-productions", providers: [ListService, { provide: NgbDateAdapter, useClass: DateAdapter }], viewQueries: [{ propertyName: "nmbBoxBarkodNumarasi", first: true, predicate: ["barkodNumarasiRef"], descendants: true }, { propertyName: "nmbBoxToplananMiktar", first: true, predicate: ["toplananMiktarRef"], descendants: true }], ngImport: i0, template: "<abp-page [breadcrumb]=\"false\" style=\"padding: 0;\">\r\n <abp-page-toolbar-container class=\"col\">\r\n <div class=\"row\">\r\n <h3 class=\"page-title\">\r\n {{ 'UretimYonetimi::ReceiptFromProductions.Title' | abpLocalization }}\r\n </h3>\r\n </div>\r\n <div class=\"row text-lg-end pt-2\">\r\n <div class=\"col-8\">\r\n <button class=\"btn btn-success btn-sm\" type=\"button\"\r\n (click)=\"postReceiptFromProductions()\"\r\n [disabled]=\"!isProductionOrderValid\">\r\n <i class=\"fa fa-plus me-1\" aria-hidden=\"true\"></i>\r\n {{ 'UretimYonetimi::ReceiptFromProductions.Create' | abpLocalization }}\r\n </button>\r\n </div>\r\n <div class=\"col-4\">\r\n <button class=\"btn btn-warning btn-sm\" type=\"button\" (click)=\"clearAll()\">\r\n <i class=\"fa fa-broom me-1\" aria-hidden=\"true\"></i>\r\n {{ 'UretimYonetimi::ReceiptFromProductions.Clean' | abpLocalization }}\r\n </button>\r\n </div>\r\n </div>\r\n </abp-page-toolbar-container>\r\n <div *ngIf=\"isLoading\">\r\n <dx-load-indicator [visible]=\"true\"></dx-load-indicator>\r\n </div>\r\n <div class=\"card\">\r\n <div class=\"card-body\">\r\n <div style=\"display: flex; align-items: center;\">\r\n <dx-number-box class=\"me-1 w-100\"\r\n #barkodNumarasiRef\r\n [label]=\"'UretimYonetimi::ReceiptFromProductions.WorkOrderNo' | abpLocalization\"\r\n [(value)]=\"barkodNumarasi\"\r\n (onChange)=\"getProductionOrder()\"\r\n (onEnterKey)=\"getProductionOrder()\"\r\n [validationStatus]=\"getProductionOrderDtoIsLoading\"\r\n [disabled]=\"isProductionOrderValid\">\r\n </dx-number-box>\r\n <dx-button style=\"margin-top: 7.5px;\" icon=\"search\" type=\"default\"\r\n (onClick)=\"getProductionOrder()\"\r\n [disabled]=\"isProductionOrderValid\">\r\n </dx-button>\r\n </div>\r\n <form [formGroup]=\"form\" id=\"hit-order\" *ngIf=\"isProductionOrderValid\">\r\n <dx-form id=\"form\" labelLocation=\"top\">\r\n <dxi-item>\r\n <dx-text-box [formControlName]=\"'stokKodu'\" [label]=\"'UretimYonetimi::ReceiptFromProductions.StokCode' | abpLocalization\" [maxLength]=\"128\" [disabled]=\"true\">\r\n </dx-text-box>\r\n </dxi-item>\r\n\r\n <dxi-item>\r\n <dx-text-box [formControlName]=\"'stokTanimi'\" [label]=\"'UretimYonetimi::ReceiptFromProductions.StokDesc' | abpLocalization\" [maxLength]=\"128\" [disabled]=\"true\">\r\n </dx-text-box>\r\n </dxi-item>\r\n\r\n <dxi-item>\r\n <dx-text-box [formControlName]=\"'hedefDepo'\" [label]=\"'UretimYonetimi::ReceiptFromProductions.ToWhs' | abpLocalization\" [maxLength]=\"128\" [disabled]=\"true\">\r\n </dx-text-box>\r\n </dxi-item>\r\n\r\n <dxi-item>\r\n <dx-text-box [formControlName]=\"'partiNo'\" [label]=\"'UretimYonetimi::ReceiptFromProductions.BatchNumber' | abpLocalization\" [maxLength]=\"128\" [disabled]=\"true\">\r\n </dx-text-box>\r\n </dxi-item>\r\n\r\n <dxi-item>\r\n <dx-number-box [formControlName]=\"'miktar'\" [label]=\"'UretimYonetimi::ReceiptFromProductions.PlannedQty' | abpLocalization\"\r\n [format]=\"HitHelper.getMeasurementFormatted(unitOfMeasure)\"\r\n [disabled]=\"true\">\r\n </dx-number-box>\r\n </dxi-item>\r\n\r\n <dxi-item>\r\n <dx-number-box [formControlName]=\"'toplanan'\" [label]=\"'UretimYonetimi::ReceiptFromProductions.CompletedQty' | abpLocalization\"\r\n [format]=\"HitHelper.getMeasurementFormatted(unitOfMeasure)\"\r\n [disabled]=\"true\">\r\n </dx-number-box>\r\n </dxi-item>\r\n\r\n <dxi-item>\r\n <dx-number-box #toplananMiktarRef [formControlName]=\"'kalan'\" [label]=\"'UretimYonetimi::ReceiptFromProductions.Quantity' | abpLocalization\"\r\n [format]=\"HitHelper.getMeasurementFormatted(unitOfMeasure)\"\r\n [showSpinButtons]=\"true\" [min]=\"0\">\r\n </dx-number-box>\r\n </dxi-item>\r\n </dx-form>\r\n </form>\r\n </div>\r\n </div>\r\n</abp-page>\r\n\r\n<abp-modal [(visible)]=\"showModal\" (appear)=\"generateReport()\" (disappear)=\"clearAll()\"> <ng-template #abpHeader>\r\n <h3>{{ 'UretimYonetimi::CreateBarcodes.BarcodePreview' | abpLocalization }}</h3>\r\n </ng-template> <ng-template #abpBody> <iframe *ngIf=\"pdfSrc\" [src]=\"pdfSrc\" width=\"100%\" height=\"300\"\r\n webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe> </ng-template> <ng-template #abpFooter> <button type=\"button\"\r\n class=\"btn btn-secondary\" abpClose> {{ 'UretimYonetimi::CreateBarcodes.Close' | abpLocalization }} </button>\r\n </ng-template> \r\n</abp-modal>\r\n", dependencies: [{ kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i3.ModalComponent, selector: "abp-modal", inputs: ["visible", "busy", "options", "suppressUnsavedChangesWarning"], outputs: ["visibleChange", "init", "appear", "disappear"] }, { kind: "directive", type: i3.ModalCloseDirective, selector: "[abpClose]" }, { kind: "directive", type: i8.ValidationGroupDirective, selector: "[formGroup],[formGroupName]", exportAs: ["validationGroup"] }, { kind: "directive", type: i8.ValidationDirective, selector: "[formControl],[formControlName]", exportAs: ["validationDirective"] }, { kind: "component", type: i9.PageComponent, selector: "abp-page", inputs: ["title", "toolbar", "breadcrumb"] }, { kind: "component", type: i9.PageToolbarContainerComponent, selector: "abp-page-toolbar-container" }, { kind: "component", type: i10.DxButtonComponent, selector: "dx-button", inputs: ["accessKey", "activeStateEnabled", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "icon", "rtlEnabled", "stylingMode", "tabIndex", "template", "text", "type", "useSubmitBehavior", "validationGroup", "visible", "width"], outputs: ["onClick", "onContentReady", "onDisposing", "onInitialized", "onOptionChanged", "accessKeyChange", "activeStateEnabledChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "iconChange", "rtlEnabledChange", "stylingModeChange", "tabIndexChange", "templateChange", "textChange", "typeChange", "useSubmitBehaviorChange", "validationGroupChange", "visibleChange", "widthChange"] }, { kind: "component", type: i10.DxNumberBoxComponent, selector: "dx-number-box", inputs: ["accessKey", "activeStateEnabled", "buttons", "disabled", "elementAttr", "focusStateEnabled", "format", "height", "hint", "hoverStateEnabled", "inputAttr", "invalidValueMessage", "isValid", "label", "labelMode", "max", "min", "mode", "name", "placeholder", "readOnly", "rtlEnabled", "showClearButton", "showSpinButtons", "step", "stylingMode", "tabIndex", "text", "useLargeSpinButtons", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "visible", "width"], outputs: ["onChange", "onContentReady", "onCopy", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onKeyDown", "onKeyUp", "onOptionChanged", "onPaste", "onValueChanged", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "formatChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "invalidValueMessageChange", "isValidChange", "labelChange", "labelModeChange", "maxChange", "minChange", "modeChange", "nameChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "showClearButtonChange", "showSpinButtonsChange", "stepChange", "stylingModeChange", "tabIndexChange", "textChange", "useLargeSpinButtonsChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "visibleChange", "widthChange", "onBlur"] }, { kind: "component", type: i11.DxiItemComponent, selector: "dxi-item", inputs: ["disabled", "html", "icon", "template", "text", "title", "titleTemplate", "visible", "onClick", "stylingMode", "type", "baseSize", "box", "ratio", "shrink", "elementAttr", "hint", "beginGroup", "closeMenuOnClick", "items", "selectable", "selected", "colSpan", "cssClass", "dataField", "editorOptions", "editorType", "helpText", "isRequired", "itemType", "label", "name", "validationRules", "visibleIndex", "alignItemLabels", "caption", "colCount", "colCountByScreen", "tabPanelOptions", "tabs", "badge", "tabTemplate", "buttonOptions", "horizontalAlignment", "verticalAlignment", "locateInMenu", "location", "menuItemTemplate", "options", "showText", "widget", "height", "width", "imageAlt", "imageSrc", "acceptedValues", "formatName", "formatValues", "key", "showChevron", "heightRatio", "widthRatio", "expanded", "hasItems", "id", "parentId"] }, { kind: "component", type: i12.DxFormComponent, selector: "dx-form", inputs: ["accessKey", "activeStateEnabled", "alignItemLabels", "alignItemLabelsInAllGroups", "colCount", "colCountByScreen", "customizeItem", "disabled", "elementAttr", "focusStateEnabled", "formData", "height", "hint", "hoverStateEnabled", "items", "labelLocation", "labelMode", "minColWidth", "optionalMark", "readOnly", "requiredMark", "requiredMessage", "rtlEnabled", "screenByWidth", "scrollingEnabled", "showColonAfterLabel", "showOptionalMark", "showRequiredMark", "showValidationSummary", "tabIndex", "validationGroup", "visible", "width"], outputs: ["onContentReady", "onDisposing", "onEditorEnterKey", "onFieldDataChanged", "onInitialized", "onOptionChanged", "accessKeyChange", "activeStateEnabledChange", "alignItemLabelsChange", "alignItemLabelsInAllGroupsChange", "colCountChange", "colCountByScreenChange", "customizeItemChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "formDataChange", "heightChange", "hintChange", "hoverStateEnabledChange", "itemsChange", "labelLocationChange", "labelModeChange", "minColWidthChange", "optionalMarkChange", "readOnlyChange", "requiredMarkChange", "requiredMessageChange", "rtlEnabledChange", "screenByWidthChange", "scrollingEnabledChange", "showColonAfterLabelChange", "showOptionalMarkChange", "showRequiredMarkChange", "showValidationSummaryChange", "tabIndexChange", "validationGroupChange", "visibleChange", "widthChange"] }, { kind: "component", type: i13.DxLoadIndicatorComponent, selector: "dx-load-indicator", inputs: ["elementAttr", "height", "hint", "indicatorSrc", "rtlEnabled", "visible", "width"], outputs: ["onContentReady", "onDisposing", "onInitialized", "onOptionChanged", "elementAttrChange", "heightChange", "hintChange", "indicatorSrcChange", "rtlEnabledChange", "visibleChange", "widthChange"] }, { kind: "component", type: i10.DxTextBoxComponent, selector: "dx-text-box", inputs: ["accessKey", "activeStateEnabled", "buttons", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "inputAttr", "isValid", "label", "labelMode", "mask", "maskChar", "maskInvalidMessage", "maskRules", "maxLength", "mode", "name", "placeholder", "readOnly", "rtlEnabled", "showClearButton", "showMaskMode", "spellcheck", "stylingMode", "tabIndex", "text", "useMaskedValue", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "visible", "width"], outputs: ["onChange", "onContentReady", "onCopy", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onKeyDown", "onKeyUp", "onOptionChanged", "onPaste", "onValueChanged", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isValidChange", "labelChange", "labelModeChange", "maskChange", "maskCharChange", "maskInvalidMessageChange", "maskRulesChange", "maxLengthChange", "modeChange", "nameChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "showClearButtonChange", "showMaskModeChange", "spellcheckChange", "stylingModeChange", "tabIndexChange", "textChange", "useMaskedValueChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "visibleChange", "widthChange", "onBlur"] }, { kind: "pipe", type: i1.LocalizationPipe, name: "abpLocalization" }], changeDetection: i0.ChangeDetectionStrategy.Default });
|
|
178
|
+
HitReceiptFromProductionsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitReceiptFromProductionsComponent, deps: [{ token: i0.NgZone }, { token: i1.ListService }, { token: i1.TrackByService }, { token: i2.HitReceiptFromProductionsService }, { token: i3.ConfirmationService }, { token: i4.HitProductionOrdersService }, { token: i5.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
|
|
179
|
+
HitReceiptFromProductionsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: HitReceiptFromProductionsComponent, selector: "lib-hit-receipt-from-productions", providers: [ListService, { provide: NgbDateAdapter, useClass: DateAdapter }], viewQueries: [{ propertyName: "nmbBoxBarkodNumarasi", first: true, predicate: ["barkodNumarasiRef"], descendants: true }, { propertyName: "nmbBoxToplananMiktar", first: true, predicate: ["toplananMiktarRef"], descendants: true }], ngImport: i0, template: "<abp-page [breadcrumb]=\"false\" style=\"padding: 0;\">\r\n <abp-page-toolbar-container class=\"col\">\r\n <div class=\"row\">\r\n <h3 class=\"page-title\">\r\n {{ 'UretimYonetimi::ReceiptFromProductions.Title' | abpLocalization }}\r\n </h3>\r\n </div>\r\n <div class=\"row text-lg-end pt-2\">\r\n <div class=\"col-8\">\r\n <button class=\"btn btn-success btn-sm\" type=\"button\"\r\n (click)=\"postReceiptFromProductions()\"\r\n [disabled]=\"!isProductionOrderValid\">\r\n <i class=\"fa fa-plus me-1\" aria-hidden=\"true\"></i>\r\n {{ 'UretimYonetimi::ReceiptFromProductions.Create' | abpLocalization }}\r\n </button>\r\n </div>\r\n <div class=\"col-4\">\r\n <button class=\"btn btn-warning btn-sm\" type=\"button\" (click)=\"clearAll()\">\r\n <i class=\"fa fa-broom me-1\" aria-hidden=\"true\"></i>\r\n {{ 'UretimYonetimi::ReceiptFromProductions.Clean' | abpLocalization }}\r\n </button>\r\n </div>\r\n </div>\r\n </abp-page-toolbar-container>\r\n <div class=\"card\">\r\n <div class=\"card-body\">\r\n <div style=\"display: flex; align-items: center;\">\r\n <dx-number-box class=\"me-1 w-100\"\r\n #barkodNumarasiRef\r\n [label]=\"'UretimYonetimi::ReceiptFromProductions.WorkOrderNo' | abpLocalization\"\r\n [(value)]=\"barkodNumarasi\"\r\n (onChange)=\"getProductionOrder()\"\r\n (onEnterKey)=\"getProductionOrder()\"\r\n [disabled]=\"isProductionOrderValid\">\r\n </dx-number-box>\r\n <dx-button style=\"margin-top: 7.5px;\" icon=\"search\" type=\"default\"\r\n (onClick)=\"getProductionOrder()\"\r\n [disabled]=\"isProductionOrderValid\">\r\n </dx-button>\r\n </div>\r\n <div *ngIf=\"isProductionOrderValid\">\r\n <dx-text-box [label]=\"'UretimYonetimi::ReceiptFromProductions.StokCode' | abpLocalization\"\r\n [(value)]=\"productionOrder.itemNo\"\r\n [disabled]=\"true\">\r\n </dx-text-box>\r\n\r\n <dx-text-box [label]=\"'UretimYonetimi::ReceiptFromProductions.StokDesc' | abpLocalization\"\r\n [(value)]=\"productionOrder.productDescription\"\r\n [maxLength]=\"128\" [disabled]=\"true\">\r\n </dx-text-box>\r\n\r\n <dx-text-box [label]=\"'UretimYonetimi::ReceiptFromProductions.ToWhs' | abpLocalization\" [maxLength]=\"128\"\r\n [value]=\"getWarehouseName(receiptFromProductionsPostDtoDocumentLine.warehouseCode)\"\r\n [disabled]=\"true\">\r\n </dx-text-box>\r\n\r\n <dx-text-box [label]=\"'UretimYonetimi::ReceiptFromProductions.BatchNumber' | abpLocalization\"\r\n [(value)]=\"receiptFromProductionsPostDtoBatchNumber.batchNumber\"\r\n [maxLength]=\"128\" [disabled]=\"true\">\r\n </dx-text-box>\r\n\r\n <dx-number-box [label]=\"'UretimYonetimi::ReceiptFromProductions.PlannedQty' | abpLocalization\"\r\n [(value)]=\"productionOrder.plannedQuantity\"\r\n [format]=\"HitHelper.getMeasurementFormatted(unitOfMeasure)\"\r\n [disabled]=\"true\">\r\n </dx-number-box>\r\n\r\n <dx-number-box [label]=\"'UretimYonetimi::ReceiptFromProductions.CompletedQty' | abpLocalization\"\r\n [(value)]=\"productionOrder.completedQuantity\"\r\n [format]=\"HitHelper.getMeasurementFormatted(unitOfMeasure)\"\r\n [disabled]=\"true\">\r\n </dx-number-box>\r\n\r\n <dx-number-box [label]=\"'UretimYonetimi::ReceiptFromProductions.Quantity' | abpLocalization\"\r\n [(value)]=\"receiptFromProductionsPostDtoBatchNumber.quantity\"\r\n (onValueChanged)=\"quantityChanged($event)\"\r\n [format]=\"HitHelper.getMeasurementFormatted(unitOfMeasure)\"\r\n [showSpinButtons]=\"true\" [min]=\"0\" #toplananMiktarRef>\r\n </dx-number-box>\r\n </div>\r\n </div>\r\n </div>\r\n</abp-page>\r\n\r\n<abp-modal [(visible)]=\"showModal\" (appear)=\"generateReport()\" (disappear)=\"clearAll()\">\r\n <ng-template #abpHeader>\r\n <h3>{{ 'UretimYonetimi::CreateBarcodes.BarcodePreview' | abpLocalization }}</h3>\r\n </ng-template>\r\n <ng-template #abpBody>\r\n <iframe *ngIf=\"pdfSrc\" [src]=\"pdfSrc\" width=\"100%\" height=\"300\"\r\n webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>\r\n </ng-template>\r\n <ng-template #abpFooter>\r\n <button type=\"button\"\r\n class=\"btn btn-secondary\" abpClose> {{ 'UretimYonetimi::CreateBarcodes.Close' | abpLocalization }}\r\n </button>\r\n </ng-template>\r\n</abp-modal>\r\n", dependencies: [{ kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.ModalComponent, selector: "abp-modal", inputs: ["visible", "busy", "options", "suppressUnsavedChangesWarning"], outputs: ["visibleChange", "init", "appear", "disappear"] }, { kind: "directive", type: i3.ModalCloseDirective, selector: "[abpClose]" }, { kind: "component", type: i7.PageComponent, selector: "abp-page", inputs: ["title", "toolbar", "breadcrumb"] }, { kind: "component", type: i7.PageToolbarContainerComponent, selector: "abp-page-toolbar-container" }, { kind: "component", type: i8.DxButtonComponent, selector: "dx-button", inputs: ["accessKey", "activeStateEnabled", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "icon", "rtlEnabled", "stylingMode", "tabIndex", "template", "text", "type", "useSubmitBehavior", "validationGroup", "visible", "width"], outputs: ["onClick", "onContentReady", "onDisposing", "onInitialized", "onOptionChanged", "accessKeyChange", "activeStateEnabledChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "iconChange", "rtlEnabledChange", "stylingModeChange", "tabIndexChange", "templateChange", "textChange", "typeChange", "useSubmitBehaviorChange", "validationGroupChange", "visibleChange", "widthChange"] }, { kind: "component", type: i8.DxNumberBoxComponent, selector: "dx-number-box", inputs: ["accessKey", "activeStateEnabled", "buttons", "disabled", "elementAttr", "focusStateEnabled", "format", "height", "hint", "hoverStateEnabled", "inputAttr", "invalidValueMessage", "isValid", "label", "labelMode", "max", "min", "mode", "name", "placeholder", "readOnly", "rtlEnabled", "showClearButton", "showSpinButtons", "step", "stylingMode", "tabIndex", "text", "useLargeSpinButtons", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "visible", "width"], outputs: ["onChange", "onContentReady", "onCopy", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onKeyDown", "onKeyUp", "onOptionChanged", "onPaste", "onValueChanged", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "formatChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "invalidValueMessageChange", "isValidChange", "labelChange", "labelModeChange", "maxChange", "minChange", "modeChange", "nameChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "showClearButtonChange", "showSpinButtonsChange", "stepChange", "stylingModeChange", "tabIndexChange", "textChange", "useLargeSpinButtonsChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "visibleChange", "widthChange", "onBlur"] }, { kind: "component", type: i8.DxTextBoxComponent, selector: "dx-text-box", inputs: ["accessKey", "activeStateEnabled", "buttons", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "inputAttr", "isValid", "label", "labelMode", "mask", "maskChar", "maskInvalidMessage", "maskRules", "maxLength", "mode", "name", "placeholder", "readOnly", "rtlEnabled", "showClearButton", "showMaskMode", "spellcheck", "stylingMode", "tabIndex", "text", "useMaskedValue", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "visible", "width"], outputs: ["onChange", "onContentReady", "onCopy", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onKeyDown", "onKeyUp", "onOptionChanged", "onPaste", "onValueChanged", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isValidChange", "labelChange", "labelModeChange", "maskChange", "maskCharChange", "maskInvalidMessageChange", "maskRulesChange", "maxLengthChange", "modeChange", "nameChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "showClearButtonChange", "showMaskModeChange", "spellcheckChange", "stylingModeChange", "tabIndexChange", "textChange", "useMaskedValueChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "visibleChange", "widthChange", "onBlur"] }, { kind: "pipe", type: i1.LocalizationPipe, name: "abpLocalization" }], changeDetection: i0.ChangeDetectionStrategy.Default });
|
|
207
180
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitReceiptFromProductionsComponent, decorators: [{
|
|
208
181
|
type: Component,
|
|
209
|
-
args: [{ selector: 'lib-hit-receipt-from-productions', changeDetection: ChangeDetectionStrategy.Default, providers: [ListService, { provide: NgbDateAdapter, useClass: DateAdapter }], template: "<abp-page [breadcrumb]=\"false\" style=\"padding: 0;\">\r\n <abp-page-toolbar-container class=\"col\">\r\n <div class=\"row\">\r\n <h3 class=\"page-title\">\r\n {{ 'UretimYonetimi::ReceiptFromProductions.Title' | abpLocalization }}\r\n </h3>\r\n </div>\r\n <div class=\"row text-lg-end pt-2\">\r\n <div class=\"col-8\">\r\n <button class=\"btn btn-success btn-sm\" type=\"button\"\r\n (click)=\"postReceiptFromProductions()\"\r\n [disabled]=\"!isProductionOrderValid\">\r\n <i class=\"fa fa-plus me-1\" aria-hidden=\"true\"></i>\r\n {{ 'UretimYonetimi::ReceiptFromProductions.Create' | abpLocalization }}\r\n </button>\r\n </div>\r\n <div class=\"col-4\">\r\n <button class=\"btn btn-warning btn-sm\" type=\"button\" (click)=\"clearAll()\">\r\n <i class=\"fa fa-broom me-1\" aria-hidden=\"true\"></i>\r\n {{ 'UretimYonetimi::ReceiptFromProductions.Clean' | abpLocalization }}\r\n </button>\r\n </div>\r\n </div>\r\n </abp-page-toolbar-container>\r\n <div
|
|
210
|
-
}], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i1.ListService }, { type: i1.TrackByService }, { type: i2.HitReceiptFromProductionsService }, { type: i3.ConfirmationService }, { type: i4.
|
|
182
|
+
args: [{ selector: 'lib-hit-receipt-from-productions', changeDetection: ChangeDetectionStrategy.Default, providers: [ListService, { provide: NgbDateAdapter, useClass: DateAdapter }], template: "<abp-page [breadcrumb]=\"false\" style=\"padding: 0;\">\r\n <abp-page-toolbar-container class=\"col\">\r\n <div class=\"row\">\r\n <h3 class=\"page-title\">\r\n {{ 'UretimYonetimi::ReceiptFromProductions.Title' | abpLocalization }}\r\n </h3>\r\n </div>\r\n <div class=\"row text-lg-end pt-2\">\r\n <div class=\"col-8\">\r\n <button class=\"btn btn-success btn-sm\" type=\"button\"\r\n (click)=\"postReceiptFromProductions()\"\r\n [disabled]=\"!isProductionOrderValid\">\r\n <i class=\"fa fa-plus me-1\" aria-hidden=\"true\"></i>\r\n {{ 'UretimYonetimi::ReceiptFromProductions.Create' | abpLocalization }}\r\n </button>\r\n </div>\r\n <div class=\"col-4\">\r\n <button class=\"btn btn-warning btn-sm\" type=\"button\" (click)=\"clearAll()\">\r\n <i class=\"fa fa-broom me-1\" aria-hidden=\"true\"></i>\r\n {{ 'UretimYonetimi::ReceiptFromProductions.Clean' | abpLocalization }}\r\n </button>\r\n </div>\r\n </div>\r\n </abp-page-toolbar-container>\r\n <div class=\"card\">\r\n <div class=\"card-body\">\r\n <div style=\"display: flex; align-items: center;\">\r\n <dx-number-box class=\"me-1 w-100\"\r\n #barkodNumarasiRef\r\n [label]=\"'UretimYonetimi::ReceiptFromProductions.WorkOrderNo' | abpLocalization\"\r\n [(value)]=\"barkodNumarasi\"\r\n (onChange)=\"getProductionOrder()\"\r\n (onEnterKey)=\"getProductionOrder()\"\r\n [disabled]=\"isProductionOrderValid\">\r\n </dx-number-box>\r\n <dx-button style=\"margin-top: 7.5px;\" icon=\"search\" type=\"default\"\r\n (onClick)=\"getProductionOrder()\"\r\n [disabled]=\"isProductionOrderValid\">\r\n </dx-button>\r\n </div>\r\n <div *ngIf=\"isProductionOrderValid\">\r\n <dx-text-box [label]=\"'UretimYonetimi::ReceiptFromProductions.StokCode' | abpLocalization\"\r\n [(value)]=\"productionOrder.itemNo\"\r\n [disabled]=\"true\">\r\n </dx-text-box>\r\n\r\n <dx-text-box [label]=\"'UretimYonetimi::ReceiptFromProductions.StokDesc' | abpLocalization\"\r\n [(value)]=\"productionOrder.productDescription\"\r\n [maxLength]=\"128\" [disabled]=\"true\">\r\n </dx-text-box>\r\n\r\n <dx-text-box [label]=\"'UretimYonetimi::ReceiptFromProductions.ToWhs' | abpLocalization\" [maxLength]=\"128\"\r\n [value]=\"getWarehouseName(receiptFromProductionsPostDtoDocumentLine.warehouseCode)\"\r\n [disabled]=\"true\">\r\n </dx-text-box>\r\n\r\n <dx-text-box [label]=\"'UretimYonetimi::ReceiptFromProductions.BatchNumber' | abpLocalization\"\r\n [(value)]=\"receiptFromProductionsPostDtoBatchNumber.batchNumber\"\r\n [maxLength]=\"128\" [disabled]=\"true\">\r\n </dx-text-box>\r\n\r\n <dx-number-box [label]=\"'UretimYonetimi::ReceiptFromProductions.PlannedQty' | abpLocalization\"\r\n [(value)]=\"productionOrder.plannedQuantity\"\r\n [format]=\"HitHelper.getMeasurementFormatted(unitOfMeasure)\"\r\n [disabled]=\"true\">\r\n </dx-number-box>\r\n\r\n <dx-number-box [label]=\"'UretimYonetimi::ReceiptFromProductions.CompletedQty' | abpLocalization\"\r\n [(value)]=\"productionOrder.completedQuantity\"\r\n [format]=\"HitHelper.getMeasurementFormatted(unitOfMeasure)\"\r\n [disabled]=\"true\">\r\n </dx-number-box>\r\n\r\n <dx-number-box [label]=\"'UretimYonetimi::ReceiptFromProductions.Quantity' | abpLocalization\"\r\n [(value)]=\"receiptFromProductionsPostDtoBatchNumber.quantity\"\r\n (onValueChanged)=\"quantityChanged($event)\"\r\n [format]=\"HitHelper.getMeasurementFormatted(unitOfMeasure)\"\r\n [showSpinButtons]=\"true\" [min]=\"0\" #toplananMiktarRef>\r\n </dx-number-box>\r\n </div>\r\n </div>\r\n </div>\r\n</abp-page>\r\n\r\n<abp-modal [(visible)]=\"showModal\" (appear)=\"generateReport()\" (disappear)=\"clearAll()\">\r\n <ng-template #abpHeader>\r\n <h3>{{ 'UretimYonetimi::CreateBarcodes.BarcodePreview' | abpLocalization }}</h3>\r\n </ng-template>\r\n <ng-template #abpBody>\r\n <iframe *ngIf=\"pdfSrc\" [src]=\"pdfSrc\" width=\"100%\" height=\"300\"\r\n webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>\r\n </ng-template>\r\n <ng-template #abpFooter>\r\n <button type=\"button\"\r\n class=\"btn btn-secondary\" abpClose> {{ 'UretimYonetimi::CreateBarcodes.Close' | abpLocalization }}\r\n </button>\r\n </ng-template>\r\n</abp-modal>\r\n" }]
|
|
183
|
+
}], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i1.ListService }, { type: i1.TrackByService }, { type: i2.HitReceiptFromProductionsService }, { type: i3.ConfirmationService }, { type: i4.HitProductionOrdersService }, { type: i5.DomSanitizer }]; }, propDecorators: { nmbBoxBarkodNumarasi: [{
|
|
211
184
|
type: ViewChild,
|
|
212
185
|
args: ['barkodNumarasiRef', { static: false }]
|
|
213
186
|
}], nmbBoxToplananMiktar: [{
|
|
214
187
|
type: ViewChild,
|
|
215
188
|
args: ['toplananMiktarRef', { static: false }]
|
|
216
189
|
}] } });
|
|
217
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGl0LXJlY2VpcHQtZnJvbS1wcm9kdWN0aW9ucy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91cmV0aW0teW9uZXRpbWkvc3JjL2xpYi9jb21wb25lbnRzL2hpdC1yZWNlaXB0LWZyb20tcHJvZHVjdGlvbnMvaGl0LXJlY2VpcHQtZnJvbS1wcm9kdWN0aW9ucy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91cmV0aW0teW9uZXRpbWkvc3JjL2xpYi9jb21wb25lbnRzL2hpdC1yZWNlaXB0LWZyb20tcHJvZHVjdGlvbnMvaGl0LXJlY2VpcHQtZnJvbS1wcm9kdWN0aW9ucy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsV0FBVyxFQUFpQixNQUFNLGNBQWMsQ0FBQztBQUV6RCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFDNUQsT0FBTyxFQUFnQix1QkFBdUIsRUFBRSxTQUFTLEVBQWtCLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUMzRyxPQUFPLEVBQXlCLFVBQVUsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUkxRCxPQUFPLEVBRUwsa0NBQWtDLEVBQ2xDLDJCQUEyQixFQUMzQiw2QkFBNkIsRUFDOUIsTUFBTSxxREFBcUQsQ0FBQztBQUU3RCxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sd0JBQXdCLENBQUM7Ozs7Ozs7Ozs7Ozs7OztBQVlqRCxNQUFNLE9BQU8sa0NBQWtDO0lBWTdDLFlBQ1UsTUFBYyxFQUNOLElBQWlCLEVBQ2pCLEtBQXFCLEVBQ3JCLE9BQXlDLEVBQ2pELFlBQWlDLEVBQ2pDLEVBQWUsRUFDZix1QkFBbUQsRUFDbkQsU0FBdUI7UUFQdkIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtR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QUFDLE1BQU0sRUFBRSxLQUFLLEVBQUM7Z0JBQ0Usb0JBQW9CO3NCQUFwRSxTQUFTO3VCQUFDLG1CQUFtQixFQUFFLEVBQUMsTUFBTSxFQUFFLEtBQUssRUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TGlzdFNlcnZpY2UsIFRyYWNrQnlTZXJ2aWNlfSBmcm9tICdAYWJwL25nLmNvcmUnO1xyXG5pbXBvcnQge0NvbmZpcm1hdGlvblNlcnZpY2UsIENvbmZpcm1hdGlvbn0gZnJvbSAnQGFicC9uZy50aGVtZS5zaGFyZWQnO1xyXG5pbXBvcnQge0RhdGVBZGFwdGVyfSBmcm9tICdAYWJwL25nLnRoZW1lLnNoYXJlZC9leHRlbnNpb25zJztcclxuaW1wb3J0IHtBZnRlclZpZXdJbml0LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBOZ1pvbmUsIE9uSW5pdCwgVmlld0NoaWxkfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtGb3JtQnVpbGRlciwgRm9ybUdyb3VwLCBWYWxpZGF0b3JzfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7TmdiRGF0ZUFkYXB0ZXJ9IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwJztcclxuaW1wb3J0IHtcclxuICBIaXRSZWNlaXB0RnJvbVByb2R1Y3Rpb25zU2VydmljZVxyXG59IGZyb20gXCIuLi8uLi9oaXQtcHJveHkvaGl0LXJlY2VpcHQtZnJvbS1wcm9kdWN0aW9ucy9oaXQtcmVjZWlwdC1mcm9tLXByb2R1Y3Rpb25zLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtcclxuICBHZXRQcm9kdWN0aW9uT3JkZXJEdG8sXHJcbiAgUmVjZWlwdEZyb21Qcm9kdWN0aW9uc0JhdGNoTnVtYmVycyxcclxuICBSZWNlaXB0RnJvbVByb2R1Y3Rpb25zTGluZXMsXHJcbiAgUmVjZWlwdEZyb21Qcm9kdWN0aW9uc1Bvc3REdG9cclxufSBmcm9tICcuLi8uLi9oaXQtcHJveHkvaGl0LXJlY2VpcHQtZnJvbS1wcm9kdWN0aW9ucy9tb2RlbHMnO1xyXG5pbXBvcnQge0hpdFByb2R1Y3Rpb25PcmRlcnNTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vaGl0LXByb3h5L2hpdC1wcm9kdWN0aW9uLW9yZGVycy9oaXQtcHJvZHVjdGlvbi1vcmRlcnMuc2VydmljZVwiO1xyXG5pbXBvcnQge0hpdEhlbHBlcn0gZnJvbSBcIi4uLy4uL2hpdC1wcm94eS9tb2RlbHNcIjtcclxuaW1wb3J0IHtEeE51bWJlckJveENvbXBvbmVudCwgRHhUZXh0Qm94Q29tcG9uZW50fSBmcm9tIFwiZGV2ZXh0cmVtZS1hbmd1bGFyXCI7XHJcbmltcG9ydCB7V2FyZWhvdXNlfSBmcm9tIFwiLi4vLi4vaGl0LXByb3h5L2hpdC1wcm9kdWN0aW9uLW9yZGVycy9tb2RlbHNcIjtcclxuaW1wb3J0IHtEb21TYW5pdGl6ZXIsIFNhZmVSZXNvdXJjZVVybH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1oaXQtcmVjZWlwdC1mcm9tLXByb2R1Y3Rpb25zJyxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LkRlZmF1bHQsXHJcbiAgcHJvdmlkZXJzOiBbTGlzdFNlcnZpY2UsIHtwcm92aWRlOiBOZ2JEYXRlQWRhcHRlciwgdXNlQ2xhc3M6IERhdGVBZGFwdGVyfV0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2hpdC1yZWNlaXB0LWZyb20tcHJvZHVjdGlvbnMuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlczogW10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBIaXRSZWNlaXB0RnJvbVByb2R1Y3Rpb25zQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcclxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgSGl0SGVscGVyID0gSGl0SGVscGVyO1xyXG4gIEBWaWV3Q2hpbGQoJ2JhcmtvZE51bWFyYXNpUmVmJywge3N0YXRpYzogZmFsc2V9KSBubWJCb3hCYXJrb2ROdW1hcmFzaTogRHhUZXh0Qm94Q29tcG9uZW50O1xyXG4gIEBWaWV3Q2hpbGQoJ3RvcGxhbmFuTWlrdGFyUmVmJywge3N0YXRpYzogZmFsc2V9KSBubWJCb3hUb3BsYW5hbk1pa3RhcjogRHhOdW1iZXJCb3hDb21wb25lbnQ7XHJcbiAgaXNMb2FkaW5nID0gZmFsc2U7XHJcbiAgZm9ybTogRm9ybUdyb3VwO1xyXG4gIG9wdGlvbnM6IFBhcnRpYWw8Q29uZmlybWF0aW9uLk9wdGlvbnM+ID0ge1xyXG4gICAgaGlkZVllc0J0bjogdHJ1ZSxcclxuICAgIGNhbmNlbFRleHQ6ICdLYXBhdCcsXHJcbiAgICBkaXNtaXNzaWJsZTogZmFsc2UsXHJcbiAgfTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIG5nWm9uZTogTmdab25lLFxyXG4gICAgcHVibGljIHJlYWRvbmx5IGxpc3Q6IExpc3RTZXJ2aWNlLFxyXG4gICAgcHVibGljIHJlYWRvbmx5IHRyYWNrOiBUcmFja0J5U2VydmljZSxcclxuICAgIHB1YmxpYyByZWFkb25seSBzZXJ2aWNlOiBIaXRSZWNlaXB0RnJvbVByb2R1Y3Rpb25zU2VydmljZSxcclxuICAgIHByaXZhdGUgY29uZmlybWF0aW9uOiBDb25maXJtYXRpb25TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBmYjogRm9ybUJ1aWxkZXIsXHJcbiAgICBwcml2YXRlIHByb2R1Y3Rpb25PcmRlcnNTZXJ2aWNlOiBIaXRQcm9kdWN0aW9uT3JkZXJzU2VydmljZSxcclxuICAgIHByaXZhdGUgc2FuaXRpemVyOiBEb21TYW5pdGl6ZXJcclxuICApIHtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5jcmVhdGVGb3JtKCk7XHJcbiAgICB0aGlzLmNsZWFyQWxsKCk7XHJcbiAgICB0aGlzLmdldFdhcmVob3VzZXMoKTtcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIHRoaXMuZm9jdXNPbkJhcmtvZE51bWFyYXNpKCk7XHJcbiAgfVxyXG5cclxuICBjcmVhdGVGb3JtKCkge1xyXG4gICAgdGhpcy5mb3JtID0gdGhpcy5mYi5ncm91cCh7XHJcbiAgICAgICAgc3Rva0tvZHU6IFsnJywgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXHJcbiAgICAgICAgc3Rva1RhbmltaTogWycnLCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcclxuICAgICAgICBtaWt0YXI6IFsnJywgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXHJcbiAgICAgICAgdG9wbGFuYW46IFsnJywgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXHJcbiAgICAgICAga2FsYW46IFsnJywgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXHJcbiAgICAgICAgaGVkZWZEZXBvOiBbJycsIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxyXG4gICAgICAgIGhlZGVmRGVwb0NvZGU6IFsnJywgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXHJcbiAgICAgICAgcGFydGlObzogWycnLCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGdldFByb2R1Y3Rpb25PcmRlckR0b0lzTG9hZGluZzogc3RyaW5nID0gXCJ2YWxpZFwiO1xyXG4gIGJhcmtvZE51bWFyYXNpOiBudW1iZXI7XHJcbiAgaXNQcm9kdWN0aW9uT3JkZXJWYWxpZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHVuaXRPZk1lYXN1cmU6IHN0cmluZztcclxuICBzaG93TW9kYWw6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwZGZTcmM6IFNhZmVSZXNvdXJjZVVybCB8IG51bGwgPSBudWxsO1xyXG4gIG5ld1JlY29yZERvY0VudHJ5OiBudW1iZXI7XHJcblxyXG4gIGdlbmVyYXRlUmVwb3J0KCkge1xyXG4gICAgdGhpcy5zZXJ2aWNlLmdldEJhcmNvZGVJbmZvKHRoaXMuYmFya29kTnVtYXJhc2ksIHRoaXMubmV3UmVjb3JkRG9jRW50cnksIDEpLnN1YnNjcmliZSh7XHJcbiAgICAgIG5leHQ6IHJlc3BvbnNlID0+IHtcclxuICAgICAgICBjb25zdCBiYXNlNjREYXRhID0gcmVzcG9uc2UuYmFzZTY0OyAvLyBiYXNlNjQgc3RyaW5nIChzYWRlY2UgdmVyaSBrxLFzbcSxLCBcImRhdGE6YXBwbGljYXRpb24vcGRmO2Jhc2U2NCwuLi5cIiBkZcSfaWxzZSlcclxuXHJcbiAgICAgICAgLy8gQmFzZTY0J8O8IGRlY29kZSBlZGlwIGJpbmFyeSB2ZXJpeWUgw6dldmlyaXlvcnV6XHJcbiAgICAgICAgY29uc3QgYnl0ZUNoYXJhY3RlcnMgPSBhdG9iKGJhc2U2NERhdGEpO1xyXG4gICAgICAgIGNvbnN0IGJ5dGVOdW1iZXJzID0gbmV3IEFycmF5KGJ5dGVDaGFyYWN0ZXJzLmxlbmd0aCk7XHJcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBieXRlQ2hhcmFjdGVycy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgYnl0ZU51bWJlcnNbaV0gPSBieXRlQ2hhcmFjdGVycy5jaGFyQ29kZUF0KGkpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjb25zdCBieXRlQXJyYXkgPSBuZXcgVWludDhBcnJheShieXRlTnVtYmVycyk7XHJcblxyXG4gICAgICAgIC8vIEJsb2Igb2x1xZ90dXJ1eW9ydXpcclxuICAgICAgICBjb25zdCBibG9iID0gbmV3IEJsb2IoW2J5dGVBcnJheV0sIHt0eXBlOiAnYXBwbGljYXRpb24vcGRmJ30pO1xyXG5cclxuICAgICAgICAvLyBCbG9iJ3RhbiBVUkwgb2x1xZ90dXJ1cCB5ZW5pIHNla21lZGUgYcOnxLF5b3J1eiAodmV5YSBkb3dubG9hZCBlZGViaWxpcnNpbilcclxuICAgICAgICBjb25zdCBibG9iVXJsID0gVVJMLmNyZWF0ZU9iamVjdFVSTChibG9iKTtcclxuICAgICAgICB0aGlzLnBkZlNyYyA9IHRoaXMuYnlwYXNzQW5kU2FuaXRpemUoYmxvYlVybCk7XHJcbiAgICAgIH0sXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGJ5cGFzc0FuZFNhbml0aXplKHVybCk6IFNhZmVSZXNvdXJjZVVybCB7XHJcbiAgICByZXR1cm4gdGhpcy5zYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdFJlc291cmNlVXJsKHVybCk7XHJcbiAgfVxyXG5cclxuICBhc3luYyBnZXRQcm9kdWN0aW9uT3JkZXIoKSB7XHJcbiAgICB0aGlzLmNsZWFyRm9ybSgpO1xyXG4gICAgdGhpcy5nZXRQcm9kdWN0aW9uT3JkZXJEdG9Jc0xvYWRpbmcgPSBcInBlbmRpbmdcIjtcclxuICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcclxuICAgIHRoaXMucHJvZHVjdGlvbk9yZGVyc1NlcnZpY2UuZ2V0KHRoaXMuYmFya29kTnVtYXJhc2kpLnN1YnNjcmliZSh7XHJcbiAgICAgIG5leHQ6IChyZXN1bHQpID0+IHtcclxuICAgICAgICBpZiAocmVzdWx0LmlzU3VjY2Vzc2Z1bCkge1xyXG4gICAgICAgICAgdGhpcy5mb3JtLnBhdGNoVmFsdWUoe1xyXG4gICAgICAgICAgICBzdG9rS29kdTogcmVzdWx0Lml0ZW1zLml0ZW1ObyxcclxuICAgICAgICAgICAgc3Rva1RhbmltaTogcmVzdWx0Lml0ZW1zLnByb2R1Y3REZXNjcmlwdGlvbixcclxuICAgICAgICAgICAgbWlrdGFyOiByZXN1bHQuaXRlbXMucGxhbm5lZFF1YW50aXR5LFxyXG4gICAgICAgICAgICB0b3BsYW5hbjogcmVzdWx0Lml0ZW1zLmNvbXBsZXRlZFF1YW50aXR5LFxyXG4gICAgICAgICAgICBrYWxhbjogcmVzdWx0Lml0ZW1zLnBsYW5uZWRRdWFudGl0eSAtIHJlc3VsdC5pdGVtcy5jb21wbGV0ZWRRdWFudGl0eSxcclxuICAgICAgICAgICAgaGVkZWZEZXBvOiByZXN1bHQuaXRlbXMud2FyZWhvdXNlLFxyXG4gICAgICAgICAgICBoZWRlZkRlcG9Db2RlOiByZXN1bHQuaXRlbXMud2FyZWhvdXNlLFxyXG4gICAgICAgICAgICBwYXJ0aU5vOiByZXN1bHQuaXRlbXMudV90cmtCYXRjaCxcclxuICAgICAgICAgIH0pO1xyXG5cclxuICAgICAgICAgIGNvbnN0IGZpbHRlcmVkV2FyZWhvdXNlcyA9IHRoaXMud2FyZWhvdXNlcy5maWx0ZXIod2FyZWhvdXNlID0+IHdhcmVob3VzZS53aHNDb2RlID09PSByZXN1bHQuaXRlbXMud2FyZWhvdXNlKTtcclxuICAgICAgICAgIGlmIChmaWx0ZXJlZFdhcmVob3VzZXMubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICB0aGlzLmZvcm0ucGF0Y2hWYWx1ZSh7XHJcbiAgICAgICAgICAgICAgaGVkZWZEZXBvOiBmaWx0ZXJlZFdhcmVob3VzZXNbMF0ud2hzTmFtZSxcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgdGhpcy51bml0T2ZNZWFzdXJlID0gcmVzdWx0Lml0ZW1zLnVuaXRPZk1lYXN1cmVtZW50O1xyXG4gICAgICAgICAgdGhpcy5pc1Byb2R1Y3Rpb25PcmRlclZhbGlkID0gdHJ1ZTtcclxuICAgICAgICAgIHRoaXMuZm9jdXNPblRvcGxhbmFuTWlrdGFyKCk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGlmIChyZXN1bHQ/LmlzU3VjY2Vzc2Z1bCA9PSBmYWxzZSkge1xyXG4gICAgICAgICAgICB0aGlzLmNvbmZpcm1hdGlvbi5zdGF0dXMkLnN1YnNjcmliZSh7XHJcbiAgICAgICAgICAgICAgbmV4dDogKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5jbGVhckFsbCgpO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMuZ2V0UHJvZHVjdGlvbk9yZGVyRHRvSXNMb2FkaW5nID0gXCJ2YWxpZFwiO1xyXG4gICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcclxuICB9XHJcblxyXG4gIHJlY2VpcHRGcm9tUHJvZHVjdGlvbnNQb3N0RHRvSXNMb2FkaW5nOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcmVjZWlwdEZyb21Qcm9kdWN0aW9uc1Bvc3REdG86IFJlY2VpcHRGcm9tUHJvZHVjdGlvbnNQb3N0RHRvID0gbmV3IFJlY2VpcHRGcm9tUHJvZHVjdGlvbnNQb3N0RHRvKCk7XHJcblxyXG4gIGFzeW5jIHBvc3RSZWNlaXB0RnJvbVByb2R1Y3Rpb25zKCkge1xyXG4gICAgdGhpcy5pc0xvYWRpbmcgPSB0cnVlO1xyXG4gICAgdGhpcy5yZWNlaXB0RnJvbVByb2R1Y3Rpb25zUG9zdER0b0lzTG9hZGluZyA9IHRydWU7XHJcbiAgICB0aGlzLnJlY2VpcHRGcm9tUHJvZHVjdGlvbnNQb3N0RHRvID0gbmV3IFJlY2VpcHRGcm9tUHJvZHVjdGlvbnNQb3N0RHRvKCk7XHJcbiAgICBjb25zdCBsaW5lID0gbmV3IFJlY2VpcHRGcm9tUHJvZHVjdGlvbnNMaW5lcygpO1xyXG4gICAgbGluZS5iYXNlRW50cnkgPSB0aGlzLmJhcmtvZE51bWFyYXNpO1xyXG4gICAgbGluZS5iYXNlVHlwZSA9IDIwMjtcclxuICAgIGxpbmUucXVhbnRpdHkgPSB0aGlzLmZvcm0udmFsdWUua2FsYW47XHJcbiAgICBsaW5lLndhcmVob3VzZUNvZGUgPSB0aGlzLmZvcm0udmFsdWUuaGVkZWZEZXBvQ29kZTtcclxuXHJcbiAgICBjb25zdCBiYXRjaE51bWJlciA9IG5ldyBSZWNlaXB0RnJvbVByb2R1Y3Rpb25zQmF0Y2hOdW1iZXJzKCk7XHJcbiAgICBiYXRjaE51bWJlci5iYXRjaE51bWJlciA9IHRoaXMuZm9ybS52YWx1ZS51X3Rya0JhdGNoO1xyXG4gICAgYmF0Y2hOdW1iZXIucXVhbnRpdHkgPSB0aGlzLmZvcm0udmFsdWUua2FsYW47XHJcbiAgICBsaW5lLmJhdGNoTnVtYmVycyA9IFtiYXRjaE51bWJlcl07XHJcblxyXG4gICAgdGhpcy5yZWNlaXB0RnJvbVByb2R1Y3Rpb25zUG9zdER0by5kb2N1bWVudExpbmVzID0gW2xpbmVdO1xyXG5cclxuICAgIHRoaXMuc2VydmljZS5jcmVhdGUodGhpcy5yZWNlaXB0RnJvbVByb2R1Y3Rpb25zUG9zdER0bykuc3Vic2NyaWJlKHtcclxuICAgICAgbmV4dDogKHJlc3VsdCkgPT4ge1xyXG4gICAgICAgIGlmIChyZXN1bHQuaXNTdWNjZXNzZnVsKSB7XHJcbiAgICAgICAgICB0aGlzLmNvbmZpcm1hdGlvbi5zdWNjZXNzKCfEsMWfbGVtIEJhxZ9hcsSxbMSxJywgJycsIHRoaXMub3B0aW9ucykuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5uZXdSZWNvcmREb2NFbnRyeSA9IHJlc3VsdC5pdGVtcy5kb2NFbnRyeTtcclxuICAgICAgICAgICAgdGhpcy5zaG93TW9kYWwgPSB0cnVlO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMuY29uZmlybWF0aW9uLnN0YXR1cyQuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5mb2N1c09uVG9wbGFuYW5NaWt0YXIoKTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfSxcclxuICAgICAgZXJyb3I6ICgpID0+IHtcclxuICAgICAgICB0aGlzLmNvbmZpcm1hdGlvbi5zdGF0dXMkLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmZvY3VzT25Ub3BsYW5hbk1pa3RhcigpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLnJlY2VpcHRGcm9tUHJvZHVjdGlvbnNQb3N0RHRvSXNMb2FkaW5nID0gZmFsc2U7XHJcbiAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgY2xlYXJBbGwoKSB7XHJcbiAgICB0aGlzLmJhcmtvZE51bWFyYXNpID0gbnVsbDtcclxuICAgIHRoaXMuY2xlYXJGb3JtKCk7XHJcbiAgfVxyXG5cclxuICBjbGVhckZvcm0oKSB7XHJcbiAgICB0aGlzLnVuaXRPZk1lYXN1cmUgPSBudWxsO1xyXG4gICAgdGhpcy5mb3JtLnJlc2V0KCk7XHJcbiAgICB0aGlzLmZvcm0ubWFya0FzUHJpc3RpbmUoKTtcclxuICAgIHRoaXMuZm9ybS5tYXJrQXNVbnRvdWNoZWQoKTtcclxuICAgIHRoaXMuaXNQcm9kdWN0aW9uT3JkZXJWYWxpZCA9IGZhbHNlO1xyXG4gICAgdGhpcy5mb2N1c09uQmFya29kTnVtYXJhc2koKTtcclxuICB9XHJcblxyXG4gIHdhcmVob3VzZXM6IFdhcmVob3VzZVtdID0gW107XHJcblxyXG4gIGFzeW5jIGdldFdhcmVob3VzZXMoKSB7XHJcbiAgICB0aGlzLmlzTG9hZGluZyA9IHRydWU7XHJcbiAgICB0aGlzLnByb2R1Y3Rpb25PcmRlcnNTZXJ2aWNlLmdldFdhcmVob3VzZXMoKS5zdWJzY3JpYmUoe1xyXG4gICAgICBuZXh0OiAocmVzdWx0KSA9PiB7XHJcbiAgICAgICAgaWYgKHJlc3VsdC5pdGVtcykge1xyXG4gICAgICAgICAgdGhpcy53YXJlaG91c2VzID0gcmVzdWx0Lml0ZW1zLnNsaWNlKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBmb2N1c09uQmFya29kTnVtYXJhc2koKSB7XHJcbiAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xyXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICB0aGlzLm5tYkJveEJhcmtvZE51bWFyYXNpLmluc3RhbmNlLmZvY3VzKCk7XHJcbiAgICAgIH0sIDApO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBmb2N1c09uVG9wbGFuYW5NaWt0YXIoKSB7XHJcbiAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xyXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICB0aGlzLm5tYkJveFRvcGxhbmFuTWlrdGFyLmluc3RhbmNlLmZvY3VzKCk7XHJcbiAgICAgIH0sIDApO1xyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcbiIsIjxhYnAtcGFnZSBbYnJlYWRjcnVtYl09XCJmYWxzZVwiIHN0eWxlPVwicGFkZGluZzogMDtcIj5cclxuICA8YWJwLXBhZ2UtdG9vbGJhci1jb250YWluZXIgY2xhc3M9XCJjb2xcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgPGgzIGNsYXNzPVwicGFnZS10aXRsZVwiPlxyXG4gICAgICAgIHt7ICdVcmV0aW1Zb25ldGltaTo6UmVjZWlwdEZyb21Qcm9kdWN0aW9ucy5UaXRsZScgfCBhYnBMb2NhbGl6YXRpb24gfX1cclxuICAgICAgPC9oMz5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cInJvdyB0ZXh0LWxnLWVuZCBwdC0yXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJjb2wtOFwiPlxyXG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLXN1Y2Nlc3MgYnRuLXNtXCIgdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwicG9zdFJlY2VpcHRGcm9tUHJvZHVjdGlvbnMoKVwiXHJcbiAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiIWlzUHJvZHVjdGlvbk9yZGVyVmFsaWRcIj5cclxuICAgICAgICAgIDxpIGNsYXNzPVwiZmEgZmEtcGx1cyBtZS0xXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9pPlxyXG4gICAgICAgICAge3sgJ1VyZXRpbVlvbmV0aW1pOjpSZWNlaXB0RnJvbVByb2R1Y3Rpb25zLkNyZWF0ZScgfCBhYnBMb2NhbGl6YXRpb24gfX1cclxuICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJjb2wtNFwiPlxyXG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLXdhcm5pbmcgYnRuLXNtXCIgdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJjbGVhckFsbCgpXCI+XHJcbiAgICAgICAgICA8aSBjbGFzcz1cImZhIGZhLWJyb29tIG1lLTFcIiBhcmlhLWhpZGRlbj1cInRydWVcIj48L2k+XHJcbiAgICAgICAgICB7eyAnVXJldGltWW9uZXRpbWk6OlJlY2VpcHRGcm9tUHJvZHVjdGlvbnMuQ2xlYW4nIHwgYWJwTG9jYWxpemF0aW9uIH19XHJcbiAgICAgICAgPC9idXR0b24+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9hYnAtcGFnZS10b29sYmFyLWNvbnRhaW5lcj5cclxuICA8ZGl2ICpuZ0lmPVwiaXNMb2FkaW5nXCI+XHJcbiAgICA8ZHgtbG9hZC1pbmRpY2F0b3IgW3Zpc2libGVdPVwidHJ1ZVwiPjwvZHgtbG9hZC1pbmRpY2F0b3I+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiBjbGFzcz1cImNhcmRcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHlcIj5cclxuICAgICAgPGRpdiBzdHlsZT1cImRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7XCI+XHJcbiAgICAgICAgPGR4LW51bWJlci1ib3ggY2xhc3M9XCJtZS0xIHctMTAwXCJcclxuICAgICAgICAgICAgICAgICAgICAgI2JhcmtvZE51bWFyYXNpUmVmXHJcbiAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCInVXJldGltWW9uZXRpbWk6OlJlY2VpcHRGcm9tUHJvZHVjdGlvbnMuV29ya09yZGVyTm8nIHwgYWJwTG9jYWxpemF0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgWyh2YWx1ZSldPVwiYmFya29kTnVtYXJhc2lcIlxyXG4gICAgICAgICAgICAgICAgICAgICAob25DaGFuZ2UpPVwiZ2V0UHJvZHVjdGlvbk9yZGVyKClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAob25FbnRlcktleSk9XCJnZXRQcm9kdWN0aW9uT3JkZXIoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgIFt2YWxpZGF0aW9uU3RhdHVzXT1cImdldFByb2R1Y3Rpb25PcmRlckR0b0lzTG9hZGluZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJpc1Byb2R1Y3Rpb25PcmRlclZhbGlkXCI+XHJcbiAgICAgICAgPC9keC1udW1iZXItYm94PlxyXG4gICAgICAgIDxkeC1idXR0b24gc3R5bGU9XCJtYXJnaW4tdG9wOiA3LjVweDtcIiBpY29uPVwic2VhcmNoXCIgdHlwZT1cImRlZmF1bHRcIlxyXG4gICAgICAgICAgICAgICAgICAgKG9uQ2xpY2spPVwiZ2V0UHJvZHVjdGlvbk9yZGVyKClcIlxyXG4gICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImlzUHJvZHVjdGlvbk9yZGVyVmFsaWRcIj5cclxuICAgICAgICA8L2R4LWJ1dHRvbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxmb3JtIFtmb3JtR3JvdXBdPVwiZm9ybVwiIGlkPVwiaGl0LW9yZGVyXCIgKm5nSWY9XCJpc1Byb2R1Y3Rpb25PcmRlclZhbGlkXCI+XHJcbiAgICAgICAgPGR4LWZvcm0gaWQ9XCJmb3JtXCIgbGFiZWxMb2NhdGlvbj1cInRvcFwiPlxyXG4gICAgICAgICAgPGR4aS1pdGVtPlxyXG4gICAgICAgICAgICA8ZHgtdGV4dC1ib3ggW2Zvcm1Db250cm9sTmFtZV09XCInc3Rva0tvZHUnXCIgW2xhYmVsXT1cIidVcmV0aW1Zb25ldGltaTo6UmVjZWlwdEZyb21Qcm9kdWN0aW9ucy5TdG9rQ29kZScgfCBhYnBMb2NhbGl6YXRpb25cIiBbbWF4TGVuZ3RoXT1cIjEyOFwiIFtkaXNhYmxlZF09XCJ0cnVlXCI+XHJcbiAgICAgICAgICAgIDwvZHgtdGV4dC1ib3g+XHJcbiAgICAgICAgICA8L2R4aS1pdGVtPlxyXG5cclxuICAgICAgICAgIDxkeGktaXRlbT5cclxuICAgICAgICAgICAgPGR4LXRleHQtYm94IFtmb3JtQ29udHJvbE5hbWVdPVwiJ3N0b2tUYW5pbWknXCIgW2xhYmVsXT1cIidVcmV0aW1Zb25ldGltaTo6UmVjZWlwdEZyb21Qcm9kdWN0aW9ucy5TdG9rRGVzYycgfCBhYnBMb2NhbGl6YXRpb25cIiBbbWF4TGVuZ3RoXT1cIjEyOFwiIFtkaXNhYmxlZF09XCJ0cnVlXCI+XHJcbiAgICAgICAgICAgIDwvZHgtdGV4dC1ib3g+XHJcbiAgICAgICAgICA8L2R4aS1pdGVtPlxyXG5cclxuICAgICAgICAgIDxkeGktaXRlbT5cclxuICAgICAgICAgICAgPGR4LXRleHQtYm94IFtmb3JtQ29udHJvbE5hbWVdPVwiJ2hlZGVmRGVwbydcIiBbbGFiZWxdPVwiJ1VyZXRpbVlvbmV0aW1pOjpSZWNlaXB0RnJvbVByb2R1Y3Rpb25zLlRvV2hzJyB8IGFicExvY2FsaXphdGlvblwiIFttYXhMZW5ndGhdPVwiMTI4XCIgW2Rpc2FibGVkXT1cInRydWVcIj5cclxuICAgICAgICAgICAgPC9keC10ZXh0LWJveD5cclxuICAgICAgICAgIDwvZHhpLWl0ZW0+XHJcblxyXG4gICAgICAgICAgPGR4aS1pdGVtPlxyXG4gICAgICAgICAgICA8ZHgtdGV4dC1ib3ggW2Zvcm1Db250cm9sTmFtZV09XCIncGFydGlObydcIiBbbGFiZWxdPVwiJ1VyZXRpbVlvbmV0aW1pOjpSZWNlaXB0RnJvbVByb2R1Y3Rpb25zLkJhdGNoTnVtYmVyJyB8IGFicExvY2FsaXphdGlvblwiIFttYXhMZW5ndGhdPVwiMTI4XCIgW2Rpc2FibGVkXT1cInRydWVcIj5cclxuICAgICAgICAgICAgPC9keC10ZXh0LWJveD5cclxuICAgICAgICAgIDwvZHhpLWl0ZW0+XHJcblxyXG4gICAgICAgICAgPGR4aS1pdGVtPlxyXG4gICAgICAgICAgICA8ZHgtbnVtYmVyLWJveCBbZm9ybUNvbnRyb2xOYW1lXT1cIidtaWt0YXInXCIgW2xhYmVsXT1cIidVcmV0aW1Zb25ldGltaTo6UmVjZWlwdEZyb21Qcm9kdWN0aW9ucy5QbGFubmVkUXR5JyB8IGFicExvY2FsaXphdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFtmb3JtYXRdPVwiSGl0SGVscGVyLmdldE1lYXN1cmVtZW50Rm9ybWF0dGVkKHVuaXRPZk1lYXN1cmUpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cInRydWVcIj5cclxuICAgICAgICAgICAgPC9keC1udW1iZXItYm94PlxyXG4gICAgICAgICAgPC9keGktaXRlbT5cclxuXHJcbiAgICAgICAgICA8ZHhpLWl0ZW0+XHJcbiAgICAgICAgICAgIDxkeC1udW1iZXItYm94IFtmb3JtQ29udHJvbE5hbWVdPVwiJ3RvcGxhbmFuJ1wiIFtsYWJlbF09XCInVXJldGltWW9uZXRpbWk6OlJlY2VpcHRGcm9tUHJvZHVjdGlvbnMuQ29tcGxldGVkUXR5JyB8IGFicExvY2FsaXphdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFtmb3JtYXRdPVwiSGl0SGVscGVyLmdldE1lYXN1cmVtZW50Rm9ybWF0dGVkKHVuaXRPZk1lYXN1cmUpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cInRydWVcIj5cclxuICAgICAgICAgICAgPC9keC1udW1iZXItYm94PlxyXG4gICAgICAgICAgPC9keGktaXRlbT5cclxuXHJcbiAgICAgICAgICA8ZHhpLWl0ZW0+XHJcbiAgICAgICAgICAgIDxkeC1udW1iZXItYm94ICN0b3BsYW5hbk1pa3RhclJlZiBbZm9ybUNvbnRyb2xOYW1lXT1cIidrYWxhbidcIiBbbGFiZWxdPVwiJ1VyZXRpbVlvbmV0aW1pOjpSZWNlaXB0RnJvbVByb2R1Y3Rpb25zLlF1YW50aXR5JyB8IGFicExvY2FsaXphdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFtmb3JtYXRdPVwiSGl0SGVscGVyLmdldE1lYXN1cmVtZW50Rm9ybWF0dGVkKHVuaXRPZk1lYXN1cmUpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW3Nob3dTcGluQnV0dG9uc109XCJ0cnVlXCIgW21pbl09XCIwXCI+XHJcbiAgICAgICAgICAgIDwvZHgtbnVtYmVyLWJveD5cclxuICAgICAgICAgIDwvZHhpLWl0ZW0+XHJcbiAgICAgICAgPC9keC1mb3JtPlxyXG4gICAgICA8L2Zvcm0+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9hYnAtcGFnZT5cclxuXHJcbjxhYnAtbW9kYWwgWyh2aXNpYmxlKV09XCJzaG93TW9kYWxcIiAoYXBwZWFyKT1cImdlbmVyYXRlUmVwb3J0KClcIiAoZGlzYXBwZWFyKT1cImNsZWFyQWxsKClcIj4gPG5nLXRlbXBsYXRlICNhYnBIZWFkZXI+XHJcbiAgICA8aDM+e3sgJ1VyZXRpbVlvbmV0aW1pOjpDcmVhdGVCYXJjb2Rlcy5CYXJjb2RlUHJldmlldycgfCBhYnBMb2NhbGl6YXRpb24gfX08L2gzPlxyXG4gIDwvbmctdGVtcGxhdGU+IDxuZy10ZW1wbGF0ZSAjYWJwQm9keT4gPGlmcmFtZSAqbmdJZj1cInBkZlNyY1wiIFtzcmNdPVwicGRmU3JjXCIgd2lkdGg9XCIxMDAlXCIgaGVpZ2h0PVwiMzAwXCJcclxuICAgICAgd2Via2l0YWxsb3dmdWxsc2NyZWVuIG1vemFsbG93ZnVsbHNjcmVlbiBhbGxvd2Z1bGxzY3JlZW4+PC9pZnJhbWU+IDwvbmctdGVtcGxhdGU+IDxuZy10ZW1wbGF0ZSAjYWJwRm9vdGVyPiA8YnV0dG9uIHR5cGU9XCJidXR0b25cIlxyXG4gICAgICBjbGFzcz1cImJ0biBidG4tc2Vjb25kYXJ5XCIgYWJwQ2xvc2U+IHt7ICdVcmV0aW1Zb25ldGltaTo6Q3JlYXRlQmFyY29kZXMuQ2xvc2UnIHwgYWJwTG9jYWxpemF0aW9uIH19IDwvYnV0dG9uPlxyXG4gIDwvbmctdGVtcGxhdGU+IFxyXG48L2FicC1tb2RhbD5cclxuIl19
|
|
190
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGl0LXJlY2VpcHQtZnJvbS1wcm9kdWN0aW9ucy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91cmV0aW0teW9uZXRpbWkvc3JjL2xpYi9jb21wb25lbnRzL2hpdC1yZWNlaXB0LWZyb20tcHJvZHVjdGlvbnMvaGl0LXJlY2VpcHQtZnJvbS1wcm9kdWN0aW9ucy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91cmV0aW0teW9uZXRpbWkvc3JjL2xpYi9jb21wb25lbnRzL2hpdC1yZWNlaXB0LWZyb20tcHJvZHVjdGlvbnMvaGl0LXJlY2VpcHQtZnJvbS1wcm9kdWN0aW9ucy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsV0FBVyxFQUFpQixNQUFNLGNBQWMsQ0FBQztBQUV6RCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFDNUQsT0FBTyxFQUFnQix1QkFBdUIsRUFBRSxTQUFTLEVBQWtCLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUMzRyxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFJMUQsT0FBTyxFQUNMLHFCQUFxQixFQUNyQixrQ0FBa0MsRUFDbEMsMkJBQTJCLEVBQzNCLDZCQUE2QixFQUM5QixNQUFNLHFEQUFxRCxDQUFDO0FBRTdELE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7Ozs7OztBQVlqRCxNQUFNLE9BQU8sa0NBQWtDO0lBVzdDLFlBQ1UsTUFBYyxFQUNOLElBQWlCLEVBQ2pCLEtBQXFCLEVBQ3JCLE9BQXlDLEVBQ2pELFlBQWlDLEVBQ2pDLHVCQUFtRCxFQUNuRCxTQUF1QjtRQU52QixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ04sU0FBSSxHQUFKLElBQUksQ0FBYTtRQUNqQixVQUFLLEdBQUwsS0FBSyxD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QWtHQTsyRkR2RWEsa0NBQWtDO2tCQVA5QyxTQUFTOytCQUNFLGtDQUFrQyxtQkFDM0IsdUJBQXVCLENBQUMsT0FBTyxhQUNyQyxDQUFDLFdBQVcsRUFBRSxFQUFDLE9BQU8sRUFBRSxjQUFjLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBQyxDQUFDO3lTQU16QixvQkFBb0I7c0JBQXBFLFNBQVM7dUJBQUMsbUJBQW1CLEVBQUUsRUFBQyxNQUFNLEVBQUUsS0FBSyxFQUFDO2dCQUNFLG9CQUFvQjtzQkFBcEUsU0FBUzt1QkFBQyxtQkFBbUIsRUFBRSxFQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0xpc3RTZXJ2aWNlLCBUcmFja0J5U2VydmljZX0gZnJvbSAnQGFicC9uZy5jb3JlJztcclxuaW1wb3J0IHtDb25maXJtYXRpb25TZXJ2aWNlLCBDb25maXJtYXRpb259IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkJztcclxuaW1wb3J0IHtEYXRlQWRhcHRlcn0gZnJvbSAnQGFicC9uZy50aGVtZS5zaGFyZWQvZXh0ZW5zaW9ucyc7XHJcbmltcG9ydCB7QWZ0ZXJWaWV3SW5pdCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgTmdab25lLCBPbkluaXQsIFZpZXdDaGlsZH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7TmdiRGF0ZUFkYXB0ZXJ9IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwJztcclxuaW1wb3J0IHtcclxuICBIaXRSZWNlaXB0RnJvbVByb2R1Y3Rpb25zU2VydmljZVxyXG59IGZyb20gXCIuLi8uLi9oaXQtcHJveHkvaGl0LXJlY2VpcHQtZnJvbS1wcm9kdWN0aW9ucy9oaXQtcmVjZWlwdC1mcm9tLXByb2R1Y3Rpb25zLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtcclxuICBHZXRQcm9kdWN0aW9uT3JkZXJEdG8sXHJcbiAgUmVjZWlwdEZyb21Qcm9kdWN0aW9uc0JhdGNoTnVtYmVycyxcclxuICBSZWNlaXB0RnJvbVByb2R1Y3Rpb25zTGluZXMsXHJcbiAgUmVjZWlwdEZyb21Qcm9kdWN0aW9uc1Bvc3REdG9cclxufSBmcm9tICcuLi8uLi9oaXQtcHJveHkvaGl0LXJlY2VpcHQtZnJvbS1wcm9kdWN0aW9ucy9tb2RlbHMnO1xyXG5pbXBvcnQge0hpdFByb2R1Y3Rpb25PcmRlcnNTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vaGl0LXByb3h5L2hpdC1wcm9kdWN0aW9uLW9yZGVycy9oaXQtcHJvZHVjdGlvbi1vcmRlcnMuc2VydmljZVwiO1xyXG5pbXBvcnQge0hpdEhlbHBlcn0gZnJvbSBcIi4uLy4uL2hpdC1wcm94eS9tb2RlbHNcIjtcclxuaW1wb3J0IHtEeE51bWJlckJveENvbXBvbmVudCwgRHhUZXh0Qm94Q29tcG9uZW50fSBmcm9tIFwiZGV2ZXh0cmVtZS1hbmd1bGFyXCI7XHJcbmltcG9ydCB7V2FyZWhvdXNlfSBmcm9tIFwiLi4vLi4vaGl0LXByb3h5L2hpdC1wcm9kdWN0aW9uLW9yZGVycy9tb2RlbHNcIjtcclxuaW1wb3J0IHtEb21TYW5pdGl6ZXIsIFNhZmVSZXNvdXJjZVVybH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1oaXQtcmVjZWlwdC1mcm9tLXByb2R1Y3Rpb25zJyxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LkRlZmF1bHQsXHJcbiAgcHJvdmlkZXJzOiBbTGlzdFNlcnZpY2UsIHtwcm92aWRlOiBOZ2JEYXRlQWRhcHRlciwgdXNlQ2xhc3M6IERhdGVBZGFwdGVyfV0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2hpdC1yZWNlaXB0LWZyb20tcHJvZHVjdGlvbnMuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlczogW10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBIaXRSZWNlaXB0RnJvbVByb2R1Y3Rpb25zQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcclxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgSGl0SGVscGVyID0gSGl0SGVscGVyO1xyXG4gIEBWaWV3Q2hpbGQoJ2JhcmtvZE51bWFyYXNpUmVmJywge3N0YXRpYzogZmFsc2V9KSBubWJCb3hCYXJrb2ROdW1hcmFzaTogRHhUZXh0Qm94Q29tcG9uZW50O1xyXG4gIEBWaWV3Q2hpbGQoJ3RvcGxhbmFuTWlrdGFyUmVmJywge3N0YXRpYzogZmFsc2V9KSBubWJCb3hUb3BsYW5hbk1pa3RhcjogRHhOdW1iZXJCb3hDb21wb25lbnQ7XHJcbiAgaXNMb2FkaW5nID0gZmFsc2U7XHJcbiAgb3B0aW9uczogUGFydGlhbDxDb25maXJtYXRpb24uT3B0aW9ucz4gPSB7XHJcbiAgICBoaWRlWWVzQnRuOiB0cnVlLFxyXG4gICAgY2FuY2VsVGV4dDogJ0thcGF0JyxcclxuICAgIGRpc21pc3NpYmxlOiBmYWxzZSxcclxuICB9O1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgbmdab25lOiBOZ1pvbmUsXHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgbGlzdDogTGlzdFNlcnZpY2UsXHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgdHJhY2s6IFRyYWNrQnlTZXJ2aWNlLFxyXG4gICAgcHVibGljIHJlYWRvbmx5IHNlcnZpY2U6IEhpdFJlY2VpcHRGcm9tUHJvZHVjdGlvbnNTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBjb25maXJtYXRpb246IENvbmZpcm1hdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHByb2R1Y3Rpb25PcmRlcnNTZXJ2aWNlOiBIaXRQcm9kdWN0aW9uT3JkZXJzU2VydmljZSxcclxuICAgIHByaXZhdGUgc2FuaXRpemVyOiBEb21TYW5pdGl6ZXJcclxuICApIHtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5jbGVhckFsbCgpO1xyXG4gICAgdGhpcy5nZXRXYXJlaG91c2VzKCk7XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICB0aGlzLmZvY3VzT25CYXJrb2ROdW1hcmFzaSgpO1xyXG4gIH1cclxuXHJcbiAgYmFya29kTnVtYXJhc2k6IG51bWJlcjtcclxuICBpc1Byb2R1Y3Rpb25PcmRlclZhbGlkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgdW5pdE9mTWVhc3VyZTogc3RyaW5nO1xyXG4gIHNob3dNb2RhbDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHBkZlNyYzogU2FmZVJlc291cmNlVXJsIHwgbnVsbCA9IG51bGw7XHJcbiAgbmV3UmVjb3JkRG9jRW50cnk6IG51bWJlcjtcclxuXHJcbiAgZ2VuZXJhdGVSZXBvcnQoKSB7XHJcbiAgICB0aGlzLnNlcnZpY2UuZ2V0QmFyY29kZUluZm8odGhpcy5iYXJrb2ROdW1hcmFzaSwgdGhpcy5uZXdSZWNvcmREb2NFbnRyeSwgMSkuc3Vic2NyaWJlKHtcclxuICAgICAgbmV4dDogcmVzcG9uc2UgPT4ge1xyXG4gICAgICAgIGNvbnN0IGJhc2U2NERhdGEgPSByZXNwb25zZS5iYXNlNjQ7IC8vIGJhc2U2NCBzdHJpbmcgKHNhZGVjZSB2ZXJpIGvEsXNtxLEsIFwiZGF0YTphcHBsaWNhdGlvbi9wZGY7YmFzZTY0LC4uLlwiIGRlxJ9pbHNlKVxyXG5cclxuICAgICAgICAvLyBCYXNlNjQnw7wgZGVjb2RlIGVkaXAgYmluYXJ5IHZlcml5ZSDDp2V2aXJpeW9ydXpcclxuICAgICAgICBjb25zdCBieXRlQ2hhcmFjdGVycyA9IGF0b2IoYmFzZTY0RGF0YSk7XHJcbiAgICAgICAgY29uc3QgYnl0ZU51bWJlcnMgPSBuZXcgQXJyYXkoYnl0ZUNoYXJhY3RlcnMubGVuZ3RoKTtcclxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGJ5dGVDaGFyYWN0ZXJzLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICBieXRlTnVtYmVyc1tpXSA9IGJ5dGVDaGFyYWN0ZXJzLmNoYXJDb2RlQXQoaSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnN0IGJ5dGVBcnJheSA9IG5ldyBVaW50OEFycmF5KGJ5dGVOdW1iZXJzKTtcclxuXHJcbiAgICAgICAgLy8gQmxvYiBvbHXFn3R1cnV5b3J1elxyXG4gICAgICAgIGNvbnN0IGJsb2IgPSBuZXcgQmxvYihbYnl0ZUFycmF5XSwge3R5cGU6ICdhcHBsaWNhdGlvbi9wZGYnfSk7XHJcblxyXG4gICAgICAgIC8vIEJsb2IndGFuIFVSTCBvbHXFn3R1cnVwIHllbmkgc2VrbWVkZSBhw6fEsXlvcnV6ICh2ZXlhIGRvd25sb2FkIGVkZWJpbGlyc2luKVxyXG4gICAgICAgIGNvbnN0IGJsb2JVcmwgPSBVUkwuY3JlYXRlT2JqZWN0VVJMKGJsb2IpO1xyXG4gICAgICAgIHRoaXMucGRmU3JjID0gdGhpcy5ieXBhc3NBbmRTYW5pdGl6ZShibG9iVXJsKTtcclxuICAgICAgfSxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgYnlwYXNzQW5kU2FuaXRpemUodXJsKTogU2FmZVJlc291cmNlVXJsIHtcclxuICAgIHJldHVybiB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0UmVzb3VyY2VVcmwodXJsKTtcclxuICB9XHJcblxyXG4gIHByb2R1Y3Rpb25PcmRlcjogR2V0UHJvZHVjdGlvbk9yZGVyRHRvID0gbmV3IEdldFByb2R1Y3Rpb25PcmRlckR0bygpO1xyXG5cclxuICBhc3luYyBnZXRQcm9kdWN0aW9uT3JkZXIoKSB7XHJcbiAgICB0aGlzLmNsZWFyRm9ybSgpO1xyXG4gICAgdGhpcy5pc0xvYWRpbmcgPSB0cnVlO1xyXG4gICAgdGhpcy5wcm9kdWN0aW9uT3JkZXJzU2VydmljZS5nZXQodGhpcy5iYXJrb2ROdW1hcmFzaSkuc3Vic2NyaWJlKHtcclxuICAgICAgbmV4dDogKHJlc3VsdCkgPT4ge1xyXG4gICAgICAgIGlmIChyZXN1bHQuaXNTdWNjZXNzZnVsKSB7XHJcbiAgICAgICAgICB0aGlzLnByb2R1Y3Rpb25PcmRlciA9IHJlc3VsdC5pdGVtcztcclxuICAgICAgICAgIHRoaXMucmVjZWlwdEZyb21Qcm9kdWN0aW9uc1Bvc3REdG9RdWFudGl0eSA9IHJlc3VsdC5pdGVtcy5wbGFubmVkUXVhbnRpdHkgLSByZXN1bHQuaXRlbXMuY29tcGxldGVkUXVhbnRpdHk7XHJcblxyXG4gICAgICAgICAgdGhpcy5yZWNlaXB0RnJvbVByb2R1Y3Rpb25zUG9zdER0b0RvY3VtZW50TGluZS5iYXNlRW50cnkgPSB0aGlzLmJhcmtvZE51bWFyYXNpO1xyXG4gICAgICAgICAgdGhpcy5yZWNlaXB0RnJvbVByb2R1Y3Rpb25zUG9zdER0b0RvY3VtZW50TGluZS5iYXNlVHlwZSA9IDIwMjtcclxuICAgICAgICAgIHRoaXMucmVjZWlwdEZyb21Qcm9kdWN0aW9uc1Bvc3REdG9Eb2N1bWVudExpbmUucXVhbnRpdHkgPSB0aGlzLnJlY2VpcHRGcm9tUHJvZHVjdGlvbnNQb3N0RHRvUXVhbnRpdHk7XHJcbiAgICAgICAgICB0aGlzLnJlY2VpcHRGcm9tUHJvZHVjdGlvbnNQb3N0RHRvRG9jdW1lbnRMaW5lLndhcmVob3VzZUNvZGUgPSByZXN1bHQuaXRlbXMud2FyZWhvdXNlO1xyXG4gICAgICAgICAgdGhpcy5yZWNlaXB0RnJvbVByb2R1Y3Rpb25zUG9zdER0b0JhdGNoTnVtYmVyLmJhdGNoTnVtYmVyID0gcmVzdWx0Lml0ZW1zLnVfdHJrQmF0Y2g7XHJcbiAgICAgICAgICB0aGlzLnJlY2VpcHRGcm9tUHJvZHVjdGlvbnNQb3N0RHRvQmF0Y2hOdW1iZXIucXVhbnRpdHkgPSB0aGlzLnJlY2VpcHRGcm9tUHJvZHVjdGlvbnNQb3N0RHRvUXVhbnRpdHk7XHJcblxyXG4gICAgICAgICAgdGhpcy51bml0T2ZNZWFzdXJlID0gcmVzdWx0Lml0ZW1zLnVuaXRPZk1lYXN1cmVtZW50O1xyXG4gICAgICAgICAgdGhpcy5pc1Byb2R1Y3Rpb25PcmRlclZhbGlkID0gdHJ1ZTtcclxuICAgICAgICAgIHRoaXMuZm9jdXNPblRvcGxhbmFuTWlrdGFyKCk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGlmIChyZXN1bHQ/LmlzU3VjY2Vzc2Z1bCA9PSBmYWxzZSkge1xyXG4gICAgICAgICAgICB0aGlzLmNvbmZpcm1hdGlvbi5zdGF0dXMkLnN1YnNjcmliZSh7XHJcbiAgICAgICAgICAgICAgbmV4dDogKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5jbGVhckFsbCgpO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XHJcbiAgfVxyXG5cclxuICByZWNlaXB0RnJvbVByb2R1Y3Rpb25zUG9zdER0b1F1YW50aXR5OiBudW1iZXIgPSAwO1xyXG4gIHJlY2VpcHRGcm9tUHJvZHVjdGlvbnNQb3N0RHRvOiBSZWNlaXB0RnJvbVByb2R1Y3Rpb25zUG9zdER0byA9IG5ldyBSZWNlaXB0RnJvbVByb2R1Y3Rpb25zUG9zdER0bygpO1xyXG4gIHJlY2VpcHRGcm9tUHJvZHVjdGlvbnNQb3N0RHRvRG9jdW1lbnRMaW5lOiBSZWNlaXB0RnJvbVByb2R1Y3Rpb25zTGluZXMgPSBuZXcgUmVjZWlwdEZyb21Qcm9kdWN0aW9uc0xpbmVzKCk7XHJcbiAgcmVjZWlwdEZyb21Qcm9kdWN0aW9uc1Bvc3REdG9CYXRjaE51bWJlcjogUmVjZWlwdEZyb21Qcm9kdWN0aW9uc0JhdGNoTnVtYmVycyA9IG5ldyBSZWNlaXB0RnJvbVByb2R1Y3Rpb25zQmF0Y2hOdW1iZXJzKCk7XHJcblxyXG4gIGFzeW5jIHBvc3RSZWNlaXB0RnJvbVByb2R1Y3Rpb25zKCkge1xyXG4gICAgdGhpcy5pc0xvYWRpbmcgPSB0cnVlO1xyXG5cclxuICAgIHRoaXMucmVjZWlwdEZyb21Qcm9kdWN0aW9uc1Bvc3REdG9Eb2N1bWVudExpbmUuYmF0Y2hOdW1iZXJzID0gW3RoaXMucmVjZWlwdEZyb21Qcm9kdWN0aW9uc1Bvc3REdG9CYXRjaE51bWJlcl07XHJcbiAgICB0aGlzLnJlY2VpcHRGcm9tUHJvZHVjdGlvbnNQb3N0RHRvLmRvY3VtZW50TGluZXMgPSBbdGhpcy5yZWNlaXB0RnJvbVByb2R1Y3Rpb25zUG9zdER0b0RvY3VtZW50TGluZV07XHJcbiAgICBjb25zb2xlLmxvZygnZG9jdW1lbnRMaW5lcycsdGhpcy5yZWNlaXB0RnJvbVByb2R1Y3Rpb25zUG9zdER0by5kb2N1bWVudExpbmVzKVxyXG4gICAgY29uc29sZS5sb2coJ2JhdGNoTnVtYmVycycsdGhpcy5yZWNlaXB0RnJvbVByb2R1Y3Rpb25zUG9zdER0b0RvY3VtZW50TGluZS5iYXRjaE51bWJlcnMpXHJcbiAgICByZXR1cm47XHJcbiAgICB0aGlzLnNlcnZpY2UuY3JlYXRlKHRoaXMucmVjZWlwdEZyb21Qcm9kdWN0aW9uc1Bvc3REdG8pLnN1YnNjcmliZSh7XHJcbiAgICAgIG5leHQ6IChyZXN1bHQpID0+IHtcclxuICAgICAgICBpZiAocmVzdWx0LmlzU3VjY2Vzc2Z1bCkge1xyXG4gICAgICAgICAgdGhpcy5jb25maXJtYXRpb24uc3VjY2VzcygnxLDFn2xlbSBCYcWfYXLEsWzEsScsICcnLCB0aGlzLm9wdGlvbnMpLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMubmV3UmVjb3JkRG9jRW50cnkgPSByZXN1bHQuaXRlbXMuZG9jRW50cnk7XHJcbiAgICAgICAgICAgIHRoaXMuc2hvd01vZGFsID0gdHJ1ZTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLmNvbmZpcm1hdGlvbi5zdGF0dXMkLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuZm9jdXNPblRvcGxhbmFuTWlrdGFyKCk7XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgIH0sXHJcbiAgICAgIGVycm9yOiAoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5jb25maXJtYXRpb24uc3RhdHVzJC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5mb2N1c09uVG9wbGFuYW5NaWt0YXIoKTtcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcblxyXG4gICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcclxuICB9XHJcblxyXG4gIGNsZWFyQWxsKCkge1xyXG4gICAgdGhpcy5iYXJrb2ROdW1hcmFzaSA9IG51bGw7XHJcbiAgICB0aGlzLmNsZWFyRm9ybSgpO1xyXG4gIH1cclxuXHJcbiAgY2xlYXJGb3JtKCkge1xyXG4gICAgdGhpcy5wcm9kdWN0aW9uT3JkZXIgPSBuZXcgR2V0UHJvZHVjdGlvbk9yZGVyRHRvKCk7XHJcbiAgICB0aGlzLnJlY2VpcHRGcm9tUHJvZHVjdGlvbnNQb3N0RHRvID0gbmV3IFJlY2VpcHRGcm9tUHJvZHVjdGlvbnNQb3N0RHRvKCk7XHJcbiAgICB0aGlzLnJlY2VpcHRGcm9tUHJvZHVjdGlvbnNQb3N0RHRvRG9jdW1lbnRMaW5lID0gbmV3IFJlY2VpcHRGcm9tUHJvZHVjdGlvbnNMaW5lcygpO1xyXG4gICAgdGhpcy5yZWNlaXB0RnJvbVByb2R1Y3Rpb25zUG9zdER0b0JhdGNoTnVtYmVyID0gbmV3IFJlY2VpcHRGcm9tUHJvZHVjdGlvbnNCYXRjaE51bWJlcnMoKTtcclxuICAgIHRoaXMudW5pdE9mTWVhc3VyZSA9IG51bGw7XHJcbiAgICB0aGlzLmlzUHJvZHVjdGlvbk9yZGVyVmFsaWQgPSBmYWxzZTtcclxuICAgIHRoaXMuZm9jdXNPbkJhcmtvZE51bWFyYXNpKCk7XHJcbiAgfVxyXG5cclxuICB3YXJlaG91c2VzOiBXYXJlaG91c2VbXSA9IFtdO1xyXG5cclxuICBhc3luYyBnZXRXYXJlaG91c2VzKCkge1xyXG4gICAgdGhpcy5pc0xvYWRpbmcgPSB0cnVlO1xyXG4gICAgdGhpcy5wcm9kdWN0aW9uT3JkZXJzU2VydmljZS5nZXRXYXJlaG91c2VzKCkuc3Vic2NyaWJlKHtcclxuICAgICAgbmV4dDogKHJlc3VsdCkgPT4ge1xyXG4gICAgICAgIGlmIChyZXN1bHQuaXRlbXMpIHtcclxuICAgICAgICAgIHRoaXMud2FyZWhvdXNlcyA9IHJlc3VsdC5pdGVtcy5zbGljZSgpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgZm9jdXNPbkJhcmtvZE51bWFyYXNpKCkge1xyXG4gICAgdGhpcy5uZ1pvbmUucnVuKCgpID0+IHtcclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5ubWJCb3hCYXJrb2ROdW1hcmFzaS5pbnN0YW5jZS5mb2N1cygpO1xyXG4gICAgICB9LCAwKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgZm9jdXNPblRvcGxhbmFuTWlrdGFyKCkge1xyXG4gICAgdGhpcy5uZ1pvbmUucnVuKCgpID0+IHtcclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5ubWJCb3hUb3BsYW5hbk1pa3Rhci5pbnN0YW5jZS5mb2N1cygpO1xyXG4gICAgICB9LCAwKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgZ2V0V2FyZWhvdXNlTmFtZShjb2RlOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgY29uc3QgbWF0Y2ggPSB0aGlzLndhcmVob3VzZXMuZmluZCh4ID0+IHgud2hzQ29kZSA9PT0gY29kZSk7XHJcbiAgICByZXR1cm4gbWF0Y2ggPyBtYXRjaC53aHNOYW1lIDogJyc7XHJcbiAgfVxyXG5cclxuICBxdWFudGl0eUNoYW5nZWQoZTogYW55KXtcclxuICAgIHRoaXMucmVjZWlwdEZyb21Qcm9kdWN0aW9uc1Bvc3REdG9CYXRjaE51bWJlci5xdWFudGl0eSA9IGUudmFsdWU7XHJcbiAgICB0aGlzLnJlY2VpcHRGcm9tUHJvZHVjdGlvbnNQb3N0RHRvRG9jdW1lbnRMaW5lLnF1YW50aXR5ID0gZS52YWx1ZTtcclxuICB9XHJcbn1cclxuIiwiPGFicC1wYWdlIFticmVhZGNydW1iXT1cImZhbHNlXCIgc3R5bGU9XCJwYWRkaW5nOiAwO1wiPlxyXG4gIDxhYnAtcGFnZS10b29sYmFyLWNvbnRhaW5lciBjbGFzcz1cImNvbFwiPlxyXG4gICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICA8aDMgY2xhc3M9XCJwYWdlLXRpdGxlXCI+XHJcbiAgICAgICAge3sgJ1VyZXRpbVlvbmV0aW1pOjpSZWNlaXB0RnJvbVByb2R1Y3Rpb25zLlRpdGxlJyB8IGFicExvY2FsaXphdGlvbiB9fVxyXG4gICAgICA8L2gzPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwicm93IHRleHQtbGctZW5kIHB0LTJcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImNvbC04XCI+XHJcbiAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tc3VjY2VzcyBidG4tc21cIiB0eXBlPVwiYnV0dG9uXCJcclxuICAgICAgICAgICAgICAgIChjbGljayk9XCJwb3N0UmVjZWlwdEZyb21Qcm9kdWN0aW9ucygpXCJcclxuICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhaXNQcm9kdWN0aW9uT3JkZXJWYWxpZFwiPlxyXG4gICAgICAgICAgPGkgY2xhc3M9XCJmYSBmYS1wbHVzIG1lLTFcIiBhcmlhLWhpZGRlbj1cInRydWVcIj48L2k+XHJcbiAgICAgICAgICB7eyAnVXJldGltWW9uZXRpbWk6OlJlY2VpcHRGcm9tUHJvZHVjdGlvbnMuQ3JlYXRlJyB8IGFicExvY2FsaXphdGlvbiB9fVxyXG4gICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cImNvbC00XCI+XHJcbiAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4td2FybmluZyBidG4tc21cIiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cImNsZWFyQWxsKClcIj5cclxuICAgICAgICAgIDxpIGNsYXNzPVwiZmEgZmEtYnJvb20gbWUtMVwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPjwvaT5cclxuICAgICAgICAgIHt7ICdVcmV0aW1Zb25ldGltaTo6UmVjZWlwdEZyb21Qcm9kdWN0aW9ucy5DbGVhbicgfCBhYnBMb2NhbGl6YXRpb24gfX1cclxuICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2FicC1wYWdlLXRvb2xiYXItY29udGFpbmVyPlxyXG4gIDxkaXYgY2xhc3M9XCJjYXJkXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5XCI+XHJcbiAgICAgIDxkaXYgc3R5bGU9XCJkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogY2VudGVyO1wiPlxyXG4gICAgICAgIDxkeC1udW1iZXItYm94IGNsYXNzPVwibWUtMSB3LTEwMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgI2JhcmtvZE51bWFyYXNpUmVmXHJcbiAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIidVcmV0aW1Zb25ldGltaTo6UmVjZWlwdEZyb21Qcm9kdWN0aW9ucy5Xb3JrT3JkZXJObycgfCBhYnBMb2NhbGl6YXRpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIFsodmFsdWUpXT1cImJhcmtvZE51bWFyYXNpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAob25DaGFuZ2UpPVwiZ2V0UHJvZHVjdGlvbk9yZGVyKClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIChvbkVudGVyS2V5KT1cImdldFByb2R1Y3Rpb25PcmRlcigpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiaXNQcm9kdWN0aW9uT3JkZXJWYWxpZFwiPlxyXG4gICAgICAgIDwvZHgtbnVtYmVyLWJveD5cclxuICAgICAgICA8ZHgtYnV0dG9uIHN0eWxlPVwibWFyZ2luLXRvcDogNy41cHg7XCIgaWNvbj1cInNlYXJjaFwiIHR5cGU9XCJkZWZhdWx0XCJcclxuICAgICAgICAgICAgICAgICAgIChvbkNsaWNrKT1cImdldFByb2R1Y3Rpb25PcmRlcigpXCJcclxuICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJpc1Byb2R1Y3Rpb25PcmRlclZhbGlkXCI+XHJcbiAgICAgICAgPC9keC1idXR0b24+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2ICpuZ0lmPVwiaXNQcm9kdWN0aW9uT3JkZXJWYWxpZFwiPlxyXG4gICAgICAgIDxkeC10ZXh0LWJveCBbbGFiZWxdPVwiJ1VyZXRpbVlvbmV0aW1pOjpSZWNlaXB0RnJvbVByb2R1Y3Rpb25zLlN0b2tDb2RlJyB8IGFicExvY2FsaXphdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgIFsodmFsdWUpXT1cInByb2R1Y3Rpb25PcmRlci5pdGVtTm9cIlxyXG4gICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwidHJ1ZVwiPlxyXG4gICAgICAgIDwvZHgtdGV4dC1ib3g+XHJcblxyXG4gICAgICAgIDxkeC10ZXh0LWJveCBbbGFiZWxdPVwiJ1VyZXRpbVlvbmV0aW1pOjpSZWNlaXB0RnJvbVByb2R1Y3Rpb25zLlN0b2tEZXNjJyB8IGFicExvY2FsaXphdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgIFsodmFsdWUpXT1cInByb2R1Y3Rpb25PcmRlci5wcm9kdWN0RGVzY3JpcHRpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICBbbWF4TGVuZ3RoXT1cIjEyOFwiIFtkaXNhYmxlZF09XCJ0cnVlXCI+XHJcbiAgICAgICAgPC9keC10ZXh0LWJveD5cclxuXHJcbiAgICAgICAgPGR4LXRleHQtYm94IFtsYWJlbF09XCInVXJldGltWW9uZXRpbWk6OlJlY2VpcHRGcm9tUHJvZHVjdGlvbnMuVG9XaHMnIHwgYWJwTG9jYWxpemF0aW9uXCIgW21heExlbmd0aF09XCIxMjhcIlxyXG4gICAgICAgICAgICAgICAgICAgICBbdmFsdWVdPVwiZ2V0V2FyZWhvdXNlTmFtZShyZWNlaXB0RnJvbVByb2R1Y3Rpb25zUG9zdER0b0RvY3VtZW50TGluZS53YXJlaG91c2VDb2RlKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJ0cnVlXCI+XHJcbiAgICAgICAgPC9keC10ZXh0LWJveD5cclxuXHJcbiAgICAgICAgPGR4LXRleHQtYm94IFtsYWJlbF09XCInVXJldGltWW9uZXRpbWk6OlJlY2VpcHRGcm9tUHJvZHVjdGlvbnMuQmF0Y2hOdW1iZXInIHwgYWJwTG9jYWxpemF0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgWyh2YWx1ZSldPVwicmVjZWlwdEZyb21Qcm9kdWN0aW9uc1Bvc3REdG9CYXRjaE51bWJlci5iYXRjaE51bWJlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgIFttYXhMZW5ndGhdPVwiMTI4XCIgW2Rpc2FibGVkXT1cInRydWVcIj5cclxuICAgICAgICA8L2R4LXRleHQtYm94PlxyXG5cclxuICAgICAgICA8ZHgtbnVtYmVyLWJveCBbbGFiZWxdPVwiJ1VyZXRpbVlvbmV0aW1pOjpSZWNlaXB0RnJvbVByb2R1Y3Rpb25zLlBsYW5uZWRRdHknIHwgYWJwTG9jYWxpemF0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbKHZhbHVlKV09XCJwcm9kdWN0aW9uT3JkZXIucGxhbm5lZFF1YW50aXR5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbZm9ybWF0XT1cIkhpdEhlbHBlci5nZXRNZWFzdXJlbWVudEZvcm1hdHRlZCh1bml0T2ZNZWFzdXJlKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cInRydWVcIj5cclxuICAgICAgICA8L2R4LW51bWJlci1ib3g+XHJcblxyXG4gICAgICAgIDxkeC1udW1iZXItYm94IFtsYWJlbF09XCInVXJldGltWW9uZXRpbWk6OlJlY2VpcHRGcm9tUHJvZHVjdGlvbnMuQ29tcGxldGVkUXR5JyB8IGFicExvY2FsaXphdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgWyh2YWx1ZSldPVwicHJvZHVjdGlvbk9yZGVyLmNvbXBsZXRlZFF1YW50aXR5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbZm9ybWF0XT1cIkhpdEhlbHBlci5nZXRNZWFzdXJlbWVudEZvcm1hdHRlZCh1bml0T2ZNZWFzdXJlKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cInRydWVcIj5cclxuICAgICAgICA8L2R4LW51bWJlci1ib3g+XHJcblxyXG4gICAgICAgIDxkeC1udW1iZXItYm94IFtsYWJlbF09XCInVXJldGltWW9uZXRpbWk6OlJlY2VpcHRGcm9tUHJvZHVjdGlvbnMuUXVhbnRpdHknIHwgYWJwTG9jYWxpemF0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbKHZhbHVlKV09XCJyZWNlaXB0RnJvbVByb2R1Y3Rpb25zUG9zdER0b0JhdGNoTnVtYmVyLnF1YW50aXR5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAob25WYWx1ZUNoYW5nZWQpPVwicXVhbnRpdHlDaGFuZ2VkKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIFtmb3JtYXRdPVwiSGl0SGVscGVyLmdldE1lYXN1cmVtZW50Rm9ybWF0dGVkKHVuaXRPZk1lYXN1cmUpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbc2hvd1NwaW5CdXR0b25zXT1cInRydWVcIiBbbWluXT1cIjBcIiAjdG9wbGFuYW5NaWt0YXJSZWY+XHJcbiAgICAgICAgPC9keC1udW1iZXItYm94PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG48L2FicC1wYWdlPlxyXG5cclxuPGFicC1tb2RhbCBbKHZpc2libGUpXT1cInNob3dNb2RhbFwiIChhcHBlYXIpPVwiZ2VuZXJhdGVSZXBvcnQoKVwiIChkaXNhcHBlYXIpPVwiY2xlYXJBbGwoKVwiPlxyXG4gIDxuZy10ZW1wbGF0ZSAjYWJwSGVhZGVyPlxyXG4gICAgPGgzPnt7ICdVcmV0aW1Zb25ldGltaTo6Q3JlYXRlQmFyY29kZXMuQmFyY29kZVByZXZpZXcnIHwgYWJwTG9jYWxpemF0aW9uIH19PC9oMz5cclxuICA8L25nLXRlbXBsYXRlPlxyXG4gIDxuZy10ZW1wbGF0ZSAjYWJwQm9keT5cclxuICAgIDxpZnJhbWUgKm5nSWY9XCJwZGZTcmNcIiBbc3JjXT1cInBkZlNyY1wiIHdpZHRoPVwiMTAwJVwiIGhlaWdodD1cIjMwMFwiXHJcbiAgICAgICAgICAgIHdlYmtpdGFsbG93ZnVsbHNjcmVlbiBtb3phbGxvd2Z1bGxzY3JlZW4gYWxsb3dmdWxsc2NyZWVuPjwvaWZyYW1lPlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcbiAgPG5nLXRlbXBsYXRlICNhYnBGb290ZXI+XHJcbiAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIlxyXG4gICAgICAgICAgICBjbGFzcz1cImJ0biBidG4tc2Vjb25kYXJ5XCIgYWJwQ2xvc2U+IHt7ICdVcmV0aW1Zb25ldGltaTo6Q3JlYXRlQmFyY29kZXMuQ2xvc2UnIHwgYWJwTG9jYWxpemF0aW9uIH19XHJcbiAgICA8L2J1dHRvbj5cclxuICA8L25nLXRlbXBsYXRlPlxyXG48L2FicC1tb2RhbD5cclxuIl19
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export class ReceiptFromProductions {
|
|
2
2
|
}
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdXJldGltLXlvbmV0aW1pL3NyYy9saWIvaGl0LXByb3h5L2hpdC1jcmVhdGUtYmFyY29kZXMvbW9kZWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTyxzQkFBc0I7Q0FLbEMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgUmVjZWlwdEZyb21Qcm9kdWN0aW9ucyB7XHJcbiAgZG9jRW50cnk6IG51bWJlcjtcclxuICBxdWFudGl0eTogbnVtYmVyO1xyXG4gIGRvY0RhdGU6IERhdGU7XHJcbiAgZG9jRGF0ZVN0cmluZzogc3RyaW5nO1xyXG59XHJcbiJdfQ==
|
|
@@ -1,8 +1,14 @@
|
|
|
1
1
|
export class GetProductionOrderDto {
|
|
2
2
|
}
|
|
3
3
|
export class ReceiptFromProductionsPostDto {
|
|
4
|
+
constructor() {
|
|
5
|
+
this.documentLines = [];
|
|
6
|
+
}
|
|
4
7
|
}
|
|
5
8
|
export class ReceiptFromProductionsLines {
|
|
9
|
+
constructor() {
|
|
10
|
+
this.batchNumbers = [];
|
|
11
|
+
}
|
|
6
12
|
}
|
|
7
13
|
export class ReceiptFromProductionsBatchNumbers {
|
|
8
14
|
}
|
|
@@ -11,4 +17,4 @@ export class ProductionOrderLine {
|
|
|
11
17
|
this.quantity = 0;
|
|
12
18
|
}
|
|
13
19
|
}
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdXJldGltLXlvbmV0aW1pL3NyYy9saWIvaGl0LXByb3h5L2hpdC1yZWNlaXB0LWZyb20tcHJvZHVjdGlvbnMvbW9kZWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTyxxQkFBcUI7Q0FXakM7QUFFRCxNQUFNLE9BQU8sNkJBQTZCO0lBQTFDO1FBRUUsa0JBQWEsR0FBa0MsRUFBRSxDQUFDO0lBQ3BELENBQUM7Q0FBQTtBQUVELE1BQU0sT0FBTywyQkFBMkI7SUFBeEM7UUFLRSxpQkFBWSxHQUF5QyxFQUFFLENBQUM7SUFDMUQsQ0FBQztDQUFBO0FBRUQsTUFBTSxPQUFPLGtDQUFrQztDQUc5QztBQUVELE1BQU0sT0FBTyxtQkFBbUI7SUFBaEM7UUFVRSxhQUFRLEdBQVcsQ0FBQyxDQUFDO0lBQ3ZCLENBQUM7Q0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBHZXRQcm9kdWN0aW9uT3JkZXJEdG8ge1xyXG4gIGFic29sdXRlRW50cnk6IG51bWJlcjsgLy8gRG9jIEVudHJ5IFBLXHJcbiAgZG9jdW1lbnROdW1iZXI6IG51bWJlcjsgLy8gRG9jTnVtIEfDtnLDvG5lbiBBZCBCdSBEb2vDvG1hbiDEsMOnaW5cclxuICBpdGVtTm86IHN0cmluZzsgLy8gUGFyw6dhIEtvZHVcclxuICBwcm9kdWN0RGVzY3JpcHRpb246IHN0cmluZzsgLy8gUGFyw6dhIEFkxLFcclxuICB3YXJlaG91c2U6IHN0cmluZzsgLy8gSGVkZWYgRGVwb1xyXG4gIHVuaXRPZk1lYXN1cmVtZW50OiBzdHJpbmc7IC8vIEJpcmltIFTDvHLDvFxyXG4gIHBsYW5uZWRRdWFudGl0eTogbnVtYmVyOyAvLyBQbGFubGFuYW4ga8Sxc23EsW5hIGdlbGVjZWsgVG9wbGFuYW4gZGXEn2nFn3RpcmlsZWJpbGVjZWtcclxuICBjb21wbGV0ZWRRdWFudGl0eTogbnVtYmVyOyAvLyBQbGFubGFuYW4ga8Sxc23EsW5hIGdlbGVjZWsgVG9wbGFuYW4gZGXEn2nFn3RpcmlsZWJpbGVjZWtcclxuICB1X3Rya0JhdGNoOiBzdHJpbmc7IC8vIFBhcnRpIE51bWFyYXPEsVxyXG4gIGdldFByb2R1Y3Rpb25PcmRlckxpbmU6IFByb2R1Y3Rpb25PcmRlckxpbmVbXTsgLy8gw5xyZXRpbSBFbXJpIFNhdMSxcmxhcsSxXHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBSZWNlaXB0RnJvbVByb2R1Y3Rpb25zUG9zdER0byB7XHJcbiAgZG9jRW50cnk6IG51bWJlcjtcclxuICBkb2N1bWVudExpbmVzOiBSZWNlaXB0RnJvbVByb2R1Y3Rpb25zTGluZXNbXSA9IFtdO1xyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgUmVjZWlwdEZyb21Qcm9kdWN0aW9uc0xpbmVzIHtcclxuICB3YXJlaG91c2VDb2RlOiBzdHJpbmc7XHJcbiAgcXVhbnRpdHk6IG51bWJlcjtcclxuICBiYXNlVHlwZTogbnVtYmVyO1xyXG4gIGJhc2VFbnRyeTogbnVtYmVyO1xyXG4gIGJhdGNoTnVtYmVyczogUmVjZWlwdEZyb21Qcm9kdWN0aW9uc0JhdGNoTnVtYmVyc1tdID0gW107XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBSZWNlaXB0RnJvbVByb2R1Y3Rpb25zQmF0Y2hOdW1iZXJzIHtcclxuICBiYXRjaE51bWJlcjogc3RyaW5nO1xyXG4gIHF1YW50aXR5OiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBQcm9kdWN0aW9uT3JkZXJMaW5lIHtcclxuICBhYnNvbHV0ZUVudHJ5OiBudW1iZXI7IC8vIERvYyBFbnRyeSBQS1xyXG4gIGxpbmVOdW06IG51bWJlcjsgLy8gU2F0xLFyIE51bWFyYXPEsVxyXG4gIGJhdGNoTnVtYmVyOiBzdHJpbmc7IC8vIFBhcnRpIE51bWFyYXPEsVxyXG4gIGl0ZW1Db2RlOiBzdHJpbmc7IC8vIFBhcsOnYSBLb2R1XHJcbiAgaXRlbU5hbWU6IHN0cmluZzsgLy8gUGFyw6dhIEFkxLFcclxuICBwbGFubmVkUXR5OiBudW1iZXI7IC8vIE1pa3RhciB2ZSBUb3BsYW5hbiBrxLFzbcSxbmEgZ2VsZWNlayBUb3BsYW5hbiBkZcSfacWfdGlyaWxlYmlsZWNla1xyXG4gIHdhcmVob3VzZTogc3RyaW5nOyAvLyBIZWRlZiBEZXBvXHJcbiAgdW5pdE9mTWVhc3VyZW1lbnQ6IHN0cmluZzsgLy8gQmlyaW0gVMO8csO8XHJcbiAgaXNzdWVkUXR5OiBudW1iZXI7IC8vIFRvcGxhbmFuXHJcbiAgcXVhbnRpdHk6IG51bWJlciA9IDA7XHJcbn1cclxuIl19
|