@seniorsistemas/yms-integration 1.18.4 → 1.19.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/bundles/seniorsistemas-yms-integration.umd.js +44 -24
- package/bundles/seniorsistemas-yms-integration.umd.js.map +1 -1
- package/bundles/seniorsistemas-yms-integration.umd.min.js +1 -1
- package/bundles/seniorsistemas-yms-integration.umd.min.js.map +1 -1
- package/esm2015/src/devices/balancas/balancas.service.js +4 -1
- package/esm2015/src/devices/balancas/visualiar-balanca/visualizar-balanca.component.js +8 -25
- package/esm2015/src/devices/balancas/weightScale.js +1 -1
- package/esm2015/src/sam-senior/components/visitor-edit/visitor-edit-list/visitor-edit-list.component.js +32 -1
- package/esm5/src/devices/balancas/balancas.service.js +4 -1
- package/esm5/src/devices/balancas/visualiar-balanca/visualizar-balanca.component.js +8 -25
- package/esm5/src/devices/balancas/weightScale.js +1 -1
- package/esm5/src/sam-senior/components/visitor-edit/visitor-edit-list/visitor-edit-list.component.js +32 -1
- package/fesm2015/seniorsistemas-yms-integration.js +42 -22
- package/fesm2015/seniorsistemas-yms-integration.js.map +1 -1
- package/fesm5/seniorsistemas-yms-integration.js +42 -22
- package/fesm5/seniorsistemas-yms-integration.js.map +1 -1
- package/package.json +1 -1
- package/seniorsistemas-yms-integration.metadata.json +1 -1
- package/src/devices/balancas/balancas.service.d.ts +1 -0
- package/src/devices/balancas/visualiar-balanca/visualizar-balanca.component.d.ts +2 -11
- package/src/devices/balancas/weightScale.d.ts +2 -2
- package/src/sam-senior/components/visitor-edit/visitor-edit-list/visitor-edit-list.component.d.ts +1 -0
|
@@ -23,6 +23,9 @@ let BalancasService = class BalancasService extends Service {
|
|
|
23
23
|
fallbackCall(balanca, peso) {
|
|
24
24
|
return this.http.post(`${this.urlBalanca}actions/manualWeight`, { code: balanca, weight: peso }).pipe(this.defaultCatch());
|
|
25
25
|
}
|
|
26
|
+
getStabilizedWeight(code) {
|
|
27
|
+
return this.http.post(`${this.urlBalanca}queries/getStabilizedWeight`, { code }).pipe(this.defaultCatch());
|
|
28
|
+
}
|
|
26
29
|
getWeightScaleByCode(code) {
|
|
27
30
|
const params = {
|
|
28
31
|
displayFields: ["description", "code"],
|
|
@@ -38,4 +41,4 @@ BalancasService = tslib_1.__decorate([
|
|
|
38
41
|
tslib_1.__metadata("design:paramtypes", [HttpClient, MessageService])
|
|
39
42
|
], BalancasService);
|
|
40
43
|
export { BalancasService };
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFsYW5jYXMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzZW5pb3JzaXN0ZW1hcy95bXMtaW50ZWdyYXRpb24vIiwic291cmNlcyI6WyJzcmMvZGV2aWNlcy9iYWxhbmNhcy9iYWxhbmNhcy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLE9BQU8sRUFBYyxNQUFNLGVBQWUsQ0FBQztBQUNwRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzdDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHM0MsSUFBYSxlQUFlLEdBQTVCLE1BQWEsZUFBZ0IsU0FBUSxPQUFPO0lBR3hDLFlBQW9CLElBQWdCLEVBQVksY0FBOEI7UUFDMUUsS0FBSyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBRE4sU0FBSSxHQUFKLElBQUksQ0FBWTtRQUFZLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUY3RCxtQkFBYyxHQUFHLGtCQUFrQixDQUFDO1FBQ3BDLGVBQVUsR0FBRyxjQUFjLENBQUM7SUFHN0MsQ0FBQztJQUNELG9CQUFvQixDQUFDLE1BQWM7UUFDL0IsTUFBTSxNQUFNLEdBQWU7WUFDdkIsYUFBYSxFQUFFLENBQUMsYUFBYSxFQUFFLE1BQU0sQ0FBQztZQUN0QyxJQUFJLEVBQUUsQ0FBQztZQUNQLElBQUksRUFBRSxJQUFJO1lBQ1YsV0FBVyxFQUFFLGVBQWUsTUFBTSxHQUFHO1NBQ3hDLENBQUE7UUFDRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLGNBQWMsc0JBQXNCLEVBQzdELEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFBO0lBQzlFLENBQUM7SUFFRCxZQUFZLENBQUMsT0FBZSxFQUFFLElBQVk7UUFDdEMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxVQUFVLHNCQUFzQixFQUFFLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUM7SUFDL0gsQ0FBQztJQUVELG1CQUFtQixDQUFFLElBQVk7UUFDN0IsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxVQUFVLDZCQUE2QixFQUFFLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUM7SUFDL0csQ0FBQztJQUVELG9CQUFvQixDQUFDLElBQVk7UUFDN0IsTUFBTSxNQUFNLEdBQWU7WUFDdkIsYUFBYSxFQUFFLENBQUMsYUFBYSxFQUFFLE1BQU0sQ0FBQztZQUN0QyxJQUFJLEVBQUUsQ0FBQztZQUNQLElBQUksRUFBRSxFQUFFO1lBQ1IsV0FBVyxFQUFFLFlBQVksSUFBSSxHQUFHO1NBQ25DLENBQUM7UUFDRixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLGNBQWMsc0JBQXNCLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUM7SUFDOUksQ0FBQztDQUNKLENBQUE7QUFsQ1ksZUFBZTtJQUQzQixVQUFVLEVBQUU7NkNBSWlCLFVBQVUsRUFBNEIsY0FBYztHQUhyRSxlQUFlLENBa0MzQjtTQWxDWSxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gXCJAYW5ndWxhci9jb21tb24vaHR0cFwiO1xuaW1wb3J0IHsgU2VydmljZSwgTGlzdFBhcmFtcyB9IGZyb20gXCIuLi8uLi9zZXJ2aWNlXCI7XG5pbXBvcnQgeyBNZXNzYWdlU2VydmljZSB9IGZyb20gXCJwcmltZW5nL2FwaVwiO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBCYWxhbmNhc1NlcnZpY2UgZXh0ZW5kcyBTZXJ2aWNlIHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHVybEludGVncmF0aW9uID0gYHltcy9pbnRlZ3JhdGlvbi9gO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgdXJsQmFsYW5jYSA9IGB5bXMvYmFsYW5jYS9gO1xuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cDogSHR0cENsaWVudCwgcHJvdGVjdGVkIG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSkge1xuICAgICAgICBzdXBlcihtZXNzYWdlU2VydmljZSk7XG4gICAgfVxuICAgIGdldFdlaWdodFNjYWxlQnlBcmVhKGFyZWFJZDogc3RyaW5nKSB7XG4gICAgICAgIGNvbnN0IHBhcmFtczogTGlzdFBhcmFtcyA9IHtcbiAgICAgICAgICAgIGRpc3BsYXlGaWVsZHM6IFtcImRlc2NyaXB0aW9uXCIsIFwiY29kZVwiXSxcbiAgICAgICAgICAgIHBhZ2U6IDAsXG4gICAgICAgICAgICBzaXplOiAxMDAwLFxuICAgICAgICAgICAgZmlsdGVyUXVlcnk6IGBhcmVhLmlkIGVxICcke2FyZWFJZH0nYFxuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KGAke3RoaXMudXJsSW50ZWdyYXRpb259ZW50aXRpZXMvd2VpZ2h0U2NhbGVgLFxuICAgICAgICAgICAgeyBwYXJhbXM6IHRoaXMuZ2V0TGlzdFF1ZXJ5UGFyYW1zKHBhcmFtcykgfSkucGlwZSh0aGlzLmRlZmF1bHRDYXRjaCgpKVxuICAgIH1cblxuICAgIGZhbGxiYWNrQ2FsbChiYWxhbmNhOiBzdHJpbmcsIHBlc286IG51bWJlcikge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoYCR7dGhpcy51cmxCYWxhbmNhfWFjdGlvbnMvbWFudWFsV2VpZ2h0YCwgeyBjb2RlOiBiYWxhbmNhLCB3ZWlnaHQ6IHBlc28gfSkucGlwZSh0aGlzLmRlZmF1bHRDYXRjaCgpKTtcbiAgICB9XG5cbiAgICBnZXRTdGFiaWxpemVkV2VpZ2h0IChjb2RlOiBzdHJpbmcpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KGAke3RoaXMudXJsQmFsYW5jYX1xdWVyaWVzL2dldFN0YWJpbGl6ZWRXZWlnaHRgLCB7IGNvZGUgfSkucGlwZSh0aGlzLmRlZmF1bHRDYXRjaCgpKTtcbiAgICB9XG5cbiAgICBnZXRXZWlnaHRTY2FsZUJ5Q29kZShjb2RlOiBzdHJpbmcpIHtcbiAgICAgICAgY29uc3QgcGFyYW1zOiBMaXN0UGFyYW1zID0ge1xuICAgICAgICAgICAgZGlzcGxheUZpZWxkczogW1wiZGVzY3JpcHRpb25cIiwgXCJjb2RlXCJdLFxuICAgICAgICAgICAgcGFnZTogMCxcbiAgICAgICAgICAgIHNpemU6IDEwLFxuICAgICAgICAgICAgZmlsdGVyUXVlcnk6IGBjb2RlIGVxICcke2NvZGV9J2BcbiAgICAgICAgfTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoYCR7dGhpcy51cmxJbnRlZ3JhdGlvbn1lbnRpdGllcy93ZWlnaHRTY2FsZWAsIHsgcGFyYW1zOiB0aGlzLmdldExpc3RRdWVyeVBhcmFtcyhwYXJhbXMpIH0pLnBpcGUodGhpcy5kZWZhdWx0Q2F0Y2goKSk7XG4gICAgfVxufSJdfQ==
|
|
@@ -3,10 +3,7 @@ import { Component, Input } from "@angular/core";
|
|
|
3
3
|
import { ControleCircuito, ControleOperacao } from "@seniorsistemas/yms-routines";
|
|
4
4
|
import { BalancasService } from "../balancas.service";
|
|
5
5
|
import { Subject, BehaviorSubject } from "rxjs";
|
|
6
|
-
import { takeUntil, finalize
|
|
7
|
-
import { StompService } from "@stomp/ng2-stompjs";
|
|
8
|
-
import { CookieService } from "ngx-cookie-service";
|
|
9
|
-
import { IntegrationWebSocket } from "../../../websocket";
|
|
6
|
+
import { takeUntil, finalize } from "rxjs/operators";
|
|
10
7
|
let VisualizarBalancaDescritor = class VisualizarBalancaDescritor {
|
|
11
8
|
};
|
|
12
9
|
VisualizarBalancaDescritor = tslib_1.__decorate([
|
|
@@ -21,13 +18,10 @@ VisualizarBalancaDescritor = tslib_1.__decorate([
|
|
|
21
18
|
], VisualizarBalancaDescritor);
|
|
22
19
|
export { VisualizarBalancaDescritor };
|
|
23
20
|
let VisualizarBalancaComponent = class VisualizarBalancaComponent extends VisualizarBalancaDescritor {
|
|
24
|
-
constructor(service
|
|
21
|
+
constructor(service) {
|
|
25
22
|
super();
|
|
26
23
|
this.service = service;
|
|
27
|
-
this.client = client;
|
|
28
|
-
this.cookieService = cookieService;
|
|
29
24
|
this.loading = false;
|
|
30
|
-
this.websocket = new IntegrationWebSocket(this.client, this.cookieService, 'integration');
|
|
31
25
|
this.unsubscribe$ = new Subject();
|
|
32
26
|
this.weightScales$ = new BehaviorSubject([]);
|
|
33
27
|
this.weightScaleValues = new Map();
|
|
@@ -42,19 +36,10 @@ let VisualizarBalancaComponent = class VisualizarBalancaComponent extends Visual
|
|
|
42
36
|
this.weightScales$.next(contents);
|
|
43
37
|
contents.forEach((value) => {
|
|
44
38
|
this.weightScaleValues.set(value.id, 0);
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
.pipe(map((message) => message.body), map((body) => JSON.parse(body).data), takeUntil(this.unsubscribe$))
|
|
50
|
-
.subscribe((payload) => {
|
|
51
|
-
if (!this.weightScales$.value.length)
|
|
52
|
-
return;
|
|
53
|
-
const index = this.weightScales$.value.findIndex(value => value.id === payload.weightScale.id);
|
|
54
|
-
if (index < 0)
|
|
55
|
-
return;
|
|
56
|
-
const find = this.weightScales$.value[index];
|
|
57
|
-
this.weightScaleValues.set(find.id, payload.weight);
|
|
39
|
+
this.service.getStabilizedWeight(value.code)
|
|
40
|
+
.subscribe((stabilized) => {
|
|
41
|
+
this.weightScaleValues.set(value.id, stabilized.weight);
|
|
42
|
+
});
|
|
58
43
|
});
|
|
59
44
|
});
|
|
60
45
|
}
|
|
@@ -72,9 +57,7 @@ VisualizarBalancaComponent = tslib_1.__decorate([
|
|
|
72
57
|
selector: 'visualizar-balanca-component',
|
|
73
58
|
template: "<div *sLoadingState=\"loading\">\n <p-table [value]=\"weightScales$ | async\">\n <ng-template pTemplate=\"header\">\n <tr>\n <th>C\u00F3digo</th>\n <th>Descri\u00E7\u00E3o</th>\n <th>Peso</th>\n </tr>\n </ng-template>\n <ng-template let-rowData pTemplate=\"body\">\n <tr>\n <td>{{rowData.code}}</td>\n <td>{{rowData.description}}</td>\n <td>{{weightScaleValues.get(rowData.id)}}</td>\n </tr>\n </ng-template>\n </p-table>\n</div>"
|
|
74
59
|
}),
|
|
75
|
-
tslib_1.__metadata("design:paramtypes", [BalancasService
|
|
76
|
-
StompService,
|
|
77
|
-
CookieService])
|
|
60
|
+
tslib_1.__metadata("design:paramtypes", [BalancasService])
|
|
78
61
|
], VisualizarBalancaComponent);
|
|
79
62
|
export { VisualizarBalancaComponent };
|
|
80
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlzdWFsaXphci1iYWxhbmNhLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzZW5pb3JzaXN0ZW1hcy95bXMtaW50ZWdyYXRpb24vIiwic291cmNlcyI6WyJzcmMvZGV2aWNlcy9iYWxhbmNhcy92aXN1YWxpYXItYmFsYW5jYS92aXN1YWxpemFyLWJhbGFuY2EuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFxQixLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGdCQUFnQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbEYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2hELE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFXckQsSUFBYSwwQkFBMEIsR0FBdkMsTUFBYSwwQkFBMEI7Q0FBRyxDQUFBO0FBQTdCLDBCQUEwQjtJQVJ0QyxnQkFBZ0IsQ0FBQztRQUNkLE1BQU0sRUFBRSxVQUFVO1FBQ2xCLElBQUksRUFBRSx3QkFBd0I7S0FDakMsQ0FBQztJQUNELGdCQUFnQixDQUFDO1FBQ2QsTUFBTSxFQUFFLFVBQVU7UUFDbEIsSUFBSSxFQUFFLHdCQUF3QjtLQUNqQyxDQUFDO0dBQ1csMEJBQTBCLENBQUc7U0FBN0IsMEJBQTBCO0FBTXZDLElBQWEsMEJBQTBCLEdBQXZDLE1BQWEsMEJBQTJCLFNBQVEsMEJBQTBCO0lBT3RFLFlBQTZCLE9BQXdCO1FBQ2pELEtBQUssRUFBRSxDQUFDO1FBRGlCLFlBQU8sR0FBUCxPQUFPLENBQWlCO1FBTHJELFlBQU8sR0FBRyxLQUFLLENBQUM7UUFPWixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7UUFDbEMsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLGVBQWUsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUM3QyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxHQUFHLEVBQUUsQ0FBQztJQUN2QyxDQUFDO0lBQ0QsUUFBUTtRQUNKLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCO1lBQUUsT0FBTztRQUNwQyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztRQUNwQixJQUFJLENBQUMsT0FBTyxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO2FBQzVELElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQyxDQUFDO2FBQ3hFLFNBQVMsQ0FBQyxDQUFDLEVBQUUsUUFBUSxFQUFPLEVBQUUsRUFBRTtZQUM3QixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNsQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBa0IsRUFBRSxFQUFFO2dCQUNwQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQ3hDLElBQUksQ0FBQyxPQUFPLENBQUMsbUJBQW1CLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQztxQkFDM0MsU0FBUyxDQUFDLENBQUMsVUFBZ0IsRUFBRSxFQUFFO29CQUM1QixJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLEVBQUUsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUM1RCxDQUFDLENBQUMsQ0FBQztZQUNQLENBQUMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQyxDQUFDLENBQUM7SUFFWCxDQUFDO0lBQ0QsV0FBVztRQUNQLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDekIsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNqQyxDQUFDO0NBRUosQ0FBQTtBQWxDWTtJQUFSLEtBQUssRUFBRTs7cUVBQXdCO0FBRHZCLDBCQUEwQjtJQUp0QyxTQUFTLENBQUM7UUFDUCxRQUFRLEVBQUUsOEJBQThCO1FBQ3hDLGltQkFBa0Q7S0FDckQsQ0FBQzs2Q0FRd0MsZUFBZTtHQVA1QywwQkFBMEIsQ0FtQ3RDO1NBbkNZLDBCQUEwQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBPbkRlc3Ryb3ksIElucHV0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IENvbnRyb2xlQ2lyY3VpdG8sIENvbnRyb2xlT3BlcmFjYW8gfSBmcm9tIFwiQHNlbmlvcnNpc3RlbWFzL3ltcy1yb3V0aW5lc1wiO1xuaW1wb3J0IHsgQmFsYW5jYXNTZXJ2aWNlIH0gZnJvbSBcIi4uL2JhbGFuY2FzLnNlcnZpY2VcIjtcbmltcG9ydCB7IFN1YmplY3QsIEJlaGF2aW9yU3ViamVjdCB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyB0YWtlVW50aWwsIGZpbmFsaXplIH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XG5pbXBvcnQgeyBXZWlnaHRTY2FsZSB9IGZyb20gXCIuLi93ZWlnaHRTY2FsZVwiO1xuXG5AQ29udHJvbGVDaXJjdWl0byh7XG4gICAgaGVhZGVyOiAnQmFsYW7Dp2FzJyxcbiAgICBuYW1lOiAneW1zLmludGVncmFjYW8uZGV2aWNlcydcbn0pXG5AQ29udHJvbGVPcGVyYWNhbyh7XG4gICAgaGVhZGVyOiAnQmFsYW7Dp2FzJyxcbiAgICBuYW1lOiAneW1zLmludGVncmFjYW8uZGV2aWNlcydcbn0pXG5leHBvcnQgY2xhc3MgVmlzdWFsaXphckJhbGFuY2FEZXNjcml0b3Ige31cblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd2aXN1YWxpemFyLWJhbGFuY2EtY29tcG9uZW50JyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdmlzdWFsaXphci1iYWxhbmNhLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBWaXN1YWxpemFyQmFsYW5jYUNvbXBvbmVudCBleHRlbmRzIFZpc3VhbGl6YXJCYWxhbmNhRGVzY3JpdG9yIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAgIEBJbnB1dCgpIHNlcXVlbmNpYUNpcmN1aXRvOiBhbnk7XG4gICAgbG9hZGluZyA9IGZhbHNlO1xuICAgIHdlaWdodFNjYWxlcyQ6IEJlaGF2aW9yU3ViamVjdDxXZWlnaHRTY2FsZVtdPjtcbiAgICB3ZWlnaHRTY2FsZVZhbHVlczogTWFwPHN0cmluZywgbnVtYmVyPjtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHVuc3Vic2NyaWJlJDogU3ViamVjdDx2b2lkPjtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgc2VydmljZTogQmFsYW5jYXNTZXJ2aWNlKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgICAgIHRoaXMudW5zdWJzY3JpYmUkID0gbmV3IFN1YmplY3QoKTtcbiAgICAgICAgdGhpcy53ZWlnaHRTY2FsZXMkID0gbmV3IEJlaGF2aW9yU3ViamVjdChbXSk7XG4gICAgICAgIHRoaXMud2VpZ2h0U2NhbGVWYWx1ZXMgPSBuZXcgTWFwKCk7XG4gICAgfVxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICBpZiAoIXRoaXMuc2VxdWVuY2lhQ2lyY3VpdG8pIHJldHVybjtcbiAgICAgICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5zZXJ2aWNlLmdldFdlaWdodFNjYWxlQnlBcmVhKHRoaXMuc2VxdWVuY2lhQ2lyY3VpdG8uYXJlYS5pZClcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLnVuc3Vic2NyaWJlJCksIGZpbmFsaXplKCgpID0+IHRoaXMubG9hZGluZyA9IGZhbHNlKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKHsgY29udGVudHMgfTogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy53ZWlnaHRTY2FsZXMkLm5leHQoY29udGVudHMpO1xuICAgICAgICAgICAgICAgIGNvbnRlbnRzLmZvckVhY2goKHZhbHVlOiBXZWlnaHRTY2FsZSkgPT4geyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgdGhpcy53ZWlnaHRTY2FsZVZhbHVlcy5zZXQodmFsdWUuaWQsIDApO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNlcnZpY2UuZ2V0U3RhYmlsaXplZFdlaWdodCh2YWx1ZS5jb2RlKVxuICAgICAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKChzdGFiaWxpemVkIDogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLndlaWdodFNjYWxlVmFsdWVzLnNldCh2YWx1ZS5pZCwgc3RhYmlsaXplZC53ZWlnaHQpO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgfVxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICB0aGlzLnVuc3Vic2NyaWJlJC5uZXh0KCk7XG4gICAgICAgIHRoaXMudW5zdWJzY3JpYmUkLmNvbXBsZXRlKCk7XG4gICAgfVxuICAgIFxufVxuIl19
|
|
@@ -1 +1 @@
|
|
|
1
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2VpZ2h0U2NhbGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yc2lzdGVtYXMveW1zLWludGVncmF0aW9uLyIsInNvdXJjZXMiOlsic3JjL2RldmljZXMvYmFsYW5jYXMvd2VpZ2h0U2NhbGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgV2VpZ2h0U2NhbGUge1xuICAgIGlkPzogc3RyaW5nO1xuICAgIGRlc2NyaXB0aW9uOiBzdHJpbmc7XG4gICAgY29kZTogc3RyaW5nO1xuICAgIGFyZWE6IGFueTtcbn0iXX0=
|
|
@@ -63,6 +63,16 @@ let VisitanteComponent = class VisitanteComponent {
|
|
|
63
63
|
driver: true
|
|
64
64
|
});
|
|
65
65
|
}
|
|
66
|
+
if (this.visitors.length > 0) {
|
|
67
|
+
this.visitors[0].visitor = {
|
|
68
|
+
name: mot.nome,
|
|
69
|
+
document: mot.cpf,
|
|
70
|
+
contact: this.getContatoMotorista(mot),
|
|
71
|
+
visitorSituation: VisitorSituation.CHECK_IN_PENDING,
|
|
72
|
+
documentType: this.getDocumentType(),
|
|
73
|
+
driver: true
|
|
74
|
+
};
|
|
75
|
+
}
|
|
66
76
|
}
|
|
67
77
|
adicionaVisitantesGrid() {
|
|
68
78
|
if (this.visitors.length) {
|
|
@@ -147,6 +157,14 @@ let VisitanteComponent = class VisitanteComponent {
|
|
|
147
157
|
if (visitor.document === visitante.document) {
|
|
148
158
|
visitor.contact = visitante.contact;
|
|
149
159
|
visitor.name = visitante.name;
|
|
160
|
+
const novoVisitante = this.buildVisitorCredentialsDto(visitor);
|
|
161
|
+
this.visitors.forEach(result => {
|
|
162
|
+
if (result.visitor.document === novoVisitante.visitor.document) {
|
|
163
|
+
result.visitor.name = novoVisitante.visitor.name;
|
|
164
|
+
result.visitor.contact = novoVisitante.visitor.contact;
|
|
165
|
+
}
|
|
166
|
+
});
|
|
167
|
+
this.visitorsChange.emit(this.visitors);
|
|
150
168
|
this.visitorFound = true;
|
|
151
169
|
}
|
|
152
170
|
});
|
|
@@ -174,6 +192,19 @@ let VisitanteComponent = class VisitanteComponent {
|
|
|
174
192
|
this.visitorsChange.emit(this.visitors);
|
|
175
193
|
this.hasChange.emit(true);
|
|
176
194
|
}
|
|
195
|
+
buildVisitorCredentialsDto(visitor) {
|
|
196
|
+
const visitorCredentialsDto = new VisitorCredentialsDto();
|
|
197
|
+
const visitante = {
|
|
198
|
+
name: visitor.name,
|
|
199
|
+
document: visitor.document,
|
|
200
|
+
contact: visitor.contact,
|
|
201
|
+
documentType: visitor.documentType,
|
|
202
|
+
visitorSituation: visitor.visitorSituation,
|
|
203
|
+
driver: false
|
|
204
|
+
};
|
|
205
|
+
visitorCredentialsDto.visitor = visitante;
|
|
206
|
+
return visitorCredentialsDto;
|
|
207
|
+
}
|
|
177
208
|
model(visitante) {
|
|
178
209
|
const isDriver = visitante.document === this.motorista.cpf;
|
|
179
210
|
const findVisitor = this.visitors.find((visitorWithCredentials) => visitorWithCredentials.visitor.document === visitante.document);
|
|
@@ -361,4 +392,4 @@ VisitanteComponent = tslib_1.__decorate([
|
|
|
361
392
|
IntegrationEventsCallback])
|
|
362
393
|
], VisitanteComponent);
|
|
363
394
|
export { VisitanteComponent };
|
|
364
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlzaXRvci1lZGl0LWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNlbmlvcnNpc3RlbWFzL3ltcy1pbnRlZ3JhdGlvbi8iLCJzb3VyY2VzIjpbInNyYy9zYW0tc2VuaW9yL2NvbXBvbmVudHMvdmlzaXRvci1lZGl0L3Zpc2l0b3ItZWRpdC1saXN0L3Zpc2l0b3ItZWRpdC1saXN0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDbEYsT0FBTyxFQUFvQixTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakcsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFdkQsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUNMLGNBQWMsR0FFZixNQUFNLGlDQUFpQyxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBRXJFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDNUMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0saURBQWlELENBQUM7QUFDMUYsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0saUVBQWlFLENBQUM7QUFDekcsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3ZELE9BQU8sRUFBRyx5QkFBeUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBUTFFLElBQWEsa0JBQWtCLEdBQS9CLE1BQWEsa0JBQWtCO0lBZ0I3QixZQUNVLFNBQTJCLEVBQzNCLGFBQTRCLEVBQzNCLG1CQUE4QztRQUYvQyxj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Q0UsS0FBSyxFQUFFLFNBQVM7Z0JBQ2hCLE1BQU0sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyx1Q0FBdUMsQ0FBQzthQUN4RTtTQUNGLENBQUM7SUFDSixDQUFDO0lBRU8sZUFBZTtRQUNyQixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7Q0FDRixDQUFBO0FBM2FVO0lBQVIsS0FBSyxFQUFFOztxREFBOEI7QUFDN0I7SUFBUixLQUFLLEVBQUU7O29EQUFnRDtBQUM5QztJQUFULE1BQU0sRUFBRTs7MERBQThEO0FBQzdEO0lBQVQsTUFBTSxFQUFFOztxREFBMEM7QUFKeEMsa0JBQWtCO0lBTDlCLFNBQVMsQ0FBQztRQUNULFFBQVEsRUFBRSxxQkFBcUI7UUFDL0IsODhLQUFpRDs7S0FFbEQsQ0FBQzs2Q0FrQnFCLGdCQUFnQjtRQUNaLGFBQWE7UUFDTix5QkFBeUI7R0FuQjlDLGtCQUFrQixDQTRhOUI7U0E1YVksa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVmlzaXRvckNyZWRlbnRpYWxzRHRvIH0gZnJvbSAnLi4vLi4vLi4vZW50aXRpZXMvdmlzaXRvci1jcmVkZW50aWFscy1kdG8nO1xuaW1wb3J0IHsgQWZ0ZXJDb250ZW50SW5pdCwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSBcIkBuZ3gtdHJhbnNsYXRlL2NvcmVcIjtcbmltcG9ydCB7IFZpc2l0b3IgfSBmcm9tIFwiLi4vLi4vLi4vbW9kZWxzL3Zpc2l0b3JcIjtcbmltcG9ydCB7IFN1YmplY3QsIGVtcHR5IH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7XG4gIENhcmRUZWNobm9sb2d5LFxuICBDcmVkZW50aWFsQ2FyZCxcbn0gZnJvbSBcIi4uLy4uLy4uL21vZGVscy9jYXJkLWNyZWRlbnRpYWxcIjtcbmltcG9ydCB7IGZpbHRlciwgdGFrZVVudGlsLCBtZXJnZU1hcCB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xuaW1wb3J0IHsgVmlzaXRvclNpdHVhdGlvbiB9IGZyb20gXCIuLi8uLi8uLi9tb2RlbHMvdmlzaXRvci1zaXR1YXRpb25cIjtcbmltcG9ydCB7IE1vdG9yaXN0YSB9IGZyb20gXCIuLi8uLi8uLi8uLi9lcnAtc2VuaW9yL2NvcmUvZW50aXRpZXMvbW90b3Jpc3RhL21vdG9yaXN0YVwiO1xuaW1wb3J0IHsgRGlhbG9nU2VydmljZSB9IGZyb20gXCJwcmltZW5nL2FwaVwiO1xuaW1wb3J0IHsgQ3JlZGVuY2lhbEZvcm1Db21wb25lbnQgfSBmcm9tIFwiLi4vLi4vY3JlZGVuY2lhbC1mb3JtL2NyZWRlbmNpYWwtZm9ybS5jb21wb25lbnRcIjtcbmltcG9ydCB7IFZpc2l0YW50ZUZvcm1Db21wb25lbnQgfSBmcm9tIFwiLi4vdmlzaXRvci1lZGl0LWZvcm0vdmlzaXRhbnRlLWZvcm0vdmlzaXRvci1lZGl0LWZvcm0uY29tcG9uZW50XCI7XG5pbXBvcnQgeyBkaWFsb2dDb25maWcgfSBmcm9tIFwiLi4vLi4vLi4vLi4vdXRpbHMvdXRpbHNcIjtcbmltcG9ydCB7ICBJbnRlZ3JhdGlvbkV2ZW50c0NhbGxiYWNrIH0gZnJvbSBcIkBzZW5pb3JzaXN0ZW1hcy95bXMtcm91dGluZXNcIjtcbmltcG9ydCB7IFZpc2l0b3JEdG8gfSBmcm9tICcuLi8uLi8uLi9lbnRpdGllcy92aXNpdG9yLWR0byc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3Zpc2l0YW50ZS1jb21wb25lbnQnLFxuICB0ZW1wbGF0ZVVybDogJy4vdmlzaXRvci1lZGl0LWxpc3QuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi92aXNpdG9yLWVkaXQtbGlzdC5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBWaXNpdGFudGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyQ29udGVudEluaXQge1xuICBASW5wdXQoKSBwcml2YXRlIG1vdG9yaXN0YTogTW90b3Jpc3RhO1xuICBASW5wdXQoKSBwcml2YXRlIHZpc2l0b3JzOiBWaXNpdG9yQ3JlZGVudGlhbHNEdG9bXSA9IFtdO1xuICBAT3V0cHV0KCkgdmlzaXRvcnNDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFZpc2l0b3JDcmVkZW50aWFsc0R0b1tdPigpO1xuICBAT3V0cHV0KCkgaGFzQ2hhbmdlICA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IG5nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdCgpO1xuICBwdWJsaWMgdmlzaXRhbnRlR3JpZERhdGE6IFZpc2l0b3JEdG9bXTtcbiAgcHVibGljIHZpc2l0YW50ZUdyaWRDb2x1bW5zOiBhbnlbXTtcbiAgcHVibGljIHZpc2l0YW50ZVRvdGFsUmVjb3JkczogbnVtYmVyO1xuICBwdWJsaWMgdmlzaXRhbnRlR3JpZExvYWRpbmc6IGJvb2xlYW47XG4gIHB1YmxpYyB2aXNpdG9yRm91bmQ6IGJvb2xlYW47XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfaW50ZWdyYXRpb25DYWxsYmFjazogSW50ZWdyYXRpb25FdmVudHNDYWxsYmFjaztcbiAgcHJpdmF0ZSByZWFkb25seSB1bnN1YnNjcmliZSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgZGlhbG9nU2VydmljZTogRGlhbG9nU2VydmljZSxcbiAgICByZWFkb25seSBpbnRlZ3JhdGlvbkNhbGxiYWNrOiBJbnRlZ3JhdGlvbkV2ZW50c0NhbGxiYWNrXG4gICkge1xuICAgIHRoaXMuX2ludGVncmF0aW9uQ2FsbGJhY2sgPSBpbnRlZ3JhdGlvbkNhbGxiYWNrO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5jb25zdHJvaUNhbXBvc1RhYmVsYVZpc3RhbnRlKCk7XG4gICAgdGhpcy52aXNpdGFudGVUb3RhbFJlY29yZHMgPSAwO1xuICB9XG5cbiAgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgIHRoaXMudmlzaXRhbnRlR3JpZExvYWRpbmcgPSBmYWxzZTtcbiAgICB0aGlzLmFkaWNpb25hVmlzaXRhbnRlc0dyaWQoKTtcbiAgICB0aGlzLl9pbnRlZ3JhdGlvbkNhbGxiYWNrXG4gICAgICAub25BZ2VuZGFtZW50b01vdG9yaXN0YUNoYW5nZWQoKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLnVuc3Vic2NyaWJlJCksXG4gICAgICAgIG1lcmdlTWFwKChtb3RvcmlzdGEpID0+IHtcbiAgICAgICAgICB0aGlzLmF0dWFsaXphTW90b3Jpc3RhKG1vdG9yaXN0YSk7XG4gICAgICAgICAgcmV0dXJuIGVtcHR5KCk7XG4gICAgICAgIH0pXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwcml2YXRlIGF0dWFsaXphTW90b3Jpc3RhKG1vdDogTW90b3Jpc3RhKSB7XG4gICAgY29uc3QgbW90b3Jpc3RhVmlzaXRhbnRlID0gdGhpcy52aXNpdGFudGVHcmlkRGF0YS5maW5kKFxuICAgICAgKGl0ZW0pID0+IGl0ZW0uZHJpdmVyXG4gICAgKTtcblxuICAgIGlmIChtb3RvcmlzdGFWaXNpdGFudGUgJiYgbW90b3Jpc3RhVmlzaXRhbnRlLmRvY3VtZW50VHlwZSA9PT0gdGhpcy5nZXREb2N1bWVudFR5cGUoKSAmJiAgbW90b3Jpc3RhVmlzaXRhbnRlLmRvY3VtZW50ID09PSBtb3QuY3BmKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMudmlzaXRhbnRlR3JpZERhdGEubGVuZ3RoID4gMCkge1xuICAgICAgdGhpcy52aXNpdGFudGVHcmlkRGF0YVswXSA9IHtcbiAgICAgICAgbmFtZTogbW90Lm5vbWUsXG4gICAgICAgIGRvY3VtZW50OiBtb3QuY3BmLFxuICAgICAgICBjb250YWN0OiB0aGlzLmdldENvbnRhdG9Nb3RvcmlzdGEobW90KSxcbiAgICAgICAgdmlzaXRvclNpdHVhdGlvbjogVmlzaXRvclNpdHVhdGlvbi5DSEVDS19JTl9QRU5ESU5HLFxuICAgICAgICBkb2N1bWVudFR5cGU6IHRoaXMuZ2V0RG9jdW1lbnRUeXBlKCksXG4gICAgICAgIGRyaXZlcjogdHJ1ZVxuICAgICAgfTsgICAgICBcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICB0aGlzLnZpc2l0YW50ZUdyaWREYXRhLnB1c2goe1xuICAgICAgICBuYW1lOiBtb3Qubm9tZSxcbiAgICAgICAgZG9jdW1lbnQ6IG1vdC5jcGYsXG4gICAgICAgIGNvbnRhY3Q6IHRoaXMuZ2V0Q29udGF0b01vdG9yaXN0YShtb3QpLFxuICAgICAgICB2aXNpdG9yU2l0dWF0aW9uOiBWaXNpdG9yU2l0dWF0aW9uLkNIRUNLX0lOX1BFTkRJTkcsXG4gICAgICAgIGRvY3VtZW50VHlwZTogdGhpcy5nZXREb2N1bWVudFR5cGUoKSxcbiAgICAgICAgZHJpdmVyOiB0cnVlXG4gICAgICB9KTtcbiAgICB9XG4gICAgXG4gIH1cblxuICBwcml2YXRlIGFkaWNpb25hVmlzaXRhbnRlc0dyaWQoKSB7XG4gICAgaWYgKHRoaXMudmlzaXRvcnMubGVuZ3RoKSB7XG4gICAgICB0aGlzLnZpc2l0YW50ZUdyaWREYXRhID0gW107XG4gICAgICB0aGlzLmFkaWNpb25hTW90b3Jpc3RhTm9WaXNpdGFudGVHcmlkRGF0YSgpO1xuXG4gICAgICB0aGlzLnZpc2l0b3JzLmZvckVhY2goKHZpc2l0b3I6IGFueSkgPT4ge1xuICAgICAgICBpZiAodGhpcy5tb3RvcmlzdGEuY3BmICE9PSB2aXNpdG9yLnZpc2l0b3IuZG9jdW1lbnQpIHtcbiAgICAgICAgICB0aGlzLnZpc2l0YW50ZUdyaWREYXRhLnB1c2goe1xuICAgICAgICAgICAgaWQ6IHZpc2l0b3IudmlzaXRvci5pZCxcbiAgICAgICAgICAgIG5hbWU6IHZpc2l0b3IudmlzaXRvci5uYW1lLFxuICAgICAgICAgICAgZG9jdW1lbnQ6IHZpc2l0b3IudmlzaXRvci5kb2N1bWVudCxcbiAgICAgICAgICAgIGNvbnRhY3Q6IHZpc2l0b3IudmlzaXRvci5jb250YWN0LFxuICAgICAgICAgICAgdmlzaXRvclNpdHVhdGlvbjogdGhpcy5nZXRWaXNpdG9yU2l0dWF0aW9uKFxuICAgICAgICAgICAgICB2aXNpdG9yLnZpc2l0b3IudmlzaXRvclNpdHVhdGlvblxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIGRvY3VtZW50VHlwZTogdGhpcy5nZXREb2N1bWVudFR5cGUoKSxcbiAgICAgICAgICAgIGRyaXZlcjogdHJ1ZVxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy52aXNpdGFudGVUb3RhbFJlY29yZHMgPSB0aGlzLnZpc2l0b3JzLmxlbmd0aDtcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnZpc2l0YW50ZUdyaWREYXRhID0gW107XG4gICAgICBjb25zdCBub3ZvX3Zpc2l0YW50ZSA9IG5ldyBWaXNpdG9yQ3JlZGVudGlhbHNEdG8oKVxuICAgICAgbm92b192aXNpdGFudGUudmlzaXRvciA9IHtcbiAgICAgICAgbmFtZTogdGhpcy5tb3RvcmlzdGEubm9tZSxcbiAgICAgICAgZG9jdW1lbnQ6IHRoaXMubW90b3Jpc3RhLmNwZixcbiAgICAgICAgY29udGFjdDogdGhpcy5nZXRDb250YXRvTW90b3Jpc3RhKHRoaXMubW90b3Jpc3RhKSxcbiAgICAgICAgZG9jdW1lbnRUeXBlOiB0aGlzLmdldERvY3VtZW50VHlwZSgpLFxuICAgICAgICB2aXNpdG9yU2l0dWF0aW9uOiBWaXNpdG9yU2l0dWF0aW9uLkNIRUNLX0lOX1BFTkRJTkcsXG4gICAgICAgIGRyaXZlcjogdHJ1ZVxuICAgICAgfVxuXG4gICAgICBjb25zdCB2aXNpdGFudGVCdXNjYW5kbyA9IHRoaXMudmlzaXRhbnRlR3JpZERhdGEuZmluZChcbiAgICAgICAgKHZpc2l0YW50ZU5hTGlzdGEpID0+IG5vdm9fdmlzaXRhbnRlLnZpc2l0b3IuZG9jdW1lbnQgPT09IHZpc2l0YW50ZU5hTGlzdGEuZG9jdW1lbnRcbiAgICAgICAgKTtcbiAgICAgICAgaWYgKHZpc2l0YW50ZUJ1c2NhbmRvID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICB0aGlzLnZpc2l0YW50ZUdyaWREYXRhLnB1c2gobm92b192aXNpdGFudGUudmlzaXRvcik7ICAgICAgICBcbiAgICAgICAgICB0aGlzLnZpc2l0b3JzLnB1c2gobm92b192aXNpdGFudGUpO1xuICAgICAgICB0aGlzLnZpc2l0YW50ZVRvdGFsUmVjb3JkcyA9IDE7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy52aXNpdGFudGVHcmlkTG9hZGluZyA9IGZhbHNlO1xuICB9XG5cbiAgcHVibGljIGlzQ3JlZGVudGlhbENhcmRzRW1wdHkodmlzaXRvcjogVmlzaXRvcikge1xuICAgIGNvbnN0IHZpc2l0YW50ZXNFbmNvbnRyYWRvcyA9IHRoaXMudmlzaXRvcnMuZmluZChcbiAgICAgICh2aXNpdG9yV2l0aENyZWRlbnRpYWxzKSA9PlxuICAgICAgICB2aXNpdG9yV2l0aENyZWRlbnRpYWxzLnZpc2l0b3IuZG9jdW1lbnQgPT09IHZpc2l0b3IuZG9jdW1lbnRcbiAgICApO1xuXG4gICAgaWYgKHZpc2l0YW50ZXNFbmNvbnRyYWRvcyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcmV0dXJuIHZpc2l0YW50ZXNFbmNvbnRyYWRvcy5jcmVkZW50aWFsQ2FyZHMuZmlsdGVyKFxuICAgICAgKGNyZWRlbnRpYWxDYXJkOiBDcmVkZW50aWFsQ2FyZCkgPT5cbiAgICAgICAgT2JqZWN0LmtleXMoY3JlZGVudGlhbENhcmQpLmxlbmd0aCAhPT0gMFxuICAgICkubGVuZ3RoID4gMFxuICAgICAgPyB0cnVlXG4gICAgICA6IGZhbHNlO1xuICB9XG5cbiAgcHJpdmF0ZSBhZGljaW9uYU1vdG9yaXN0YU5vVmlzaXRhbnRlR3JpZERhdGEoKSB7XG4gICAgY29uc3QgbW90b3Jpc3RhVmlzaXRhbnRlID0gdGhpcy52aXNpdG9ycy5maW5kKFxuICAgICAgKHZpc2l0b3IpID0+IHRoaXMubW90b3Jpc3RhLmNwZiA9PT0gdmlzaXRvci52aXNpdG9yLmRvY3VtZW50XG4gICAgKTtcblxuICAgIGlmIChtb3RvcmlzdGFWaXNpdGFudGUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy52aXNpdGFudGVHcmlkRGF0YS5wdXNoKHtcbiAgICAgICAgbmFtZTogdGhpcy5tb3RvcmlzdGEubm9tZSxcbiAgICAgICAgZG9jdW1lbnQ6IHRoaXMubW90b3Jpc3RhLmNwZixcbiAgICAgICAgY29udGFjdDogdGhpcy5nZXRDb250YXRvTW90b3Jpc3RhKHRoaXMubW90b3Jpc3RhKSxcbiAgICAgICAgdmlzaXRvclNpdHVhdGlvbjogVmlzaXRvclNpdHVhdGlvbi5DSEVDS19JTl9QRU5ESU5HLFxuICAgICAgICBkb2N1bWVudFR5cGU6IHRoaXMuZ2V0RG9jdW1lbnRUeXBlKCksXG4gICAgICAgIGRyaXZlcjogdHJ1ZSxcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnZpc2l0YW50ZUdyaWREYXRhLnB1c2goe1xuICAgICAgICBpZDogbW90b3Jpc3RhVmlzaXRhbnRlLnZpc2l0b3IuaWQsXG4gICAgICAgIG5hbWU6IG1vdG9yaXN0YVZpc2l0YW50ZS52aXNpdG9yLm5hbWUsXG4gICAgICAgIGRvY3VtZW50OiBtb3RvcmlzdGFWaXNpdGFudGUudmlzaXRvci5kb2N1bWVudCxcbiAgICAgICAgY29udGFjdDogdGhpcy5nZXRDb250YXRvTW90b3Jpc3RhKHRoaXMubW90b3Jpc3RhKSxcbiAgICAgICAgdmlzaXRvclNpdHVhdGlvbjogdGhpcy5nZXRWaXNpdG9yU2l0dWF0aW9uKFxuICAgICAgICAgIG1vdG9yaXN0YVZpc2l0YW50ZS52aXNpdG9yLnZpc2l0b3JTaXR1YXRpb25cbiAgICAgICAgKSxcbiAgICAgICAgZG9jdW1lbnRUeXBlOiB0aGlzLmdldERvY3VtZW50VHlwZSgpLFxuICAgICAgICBkcml2ZXI6IHRydWUsXG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgY3JpYXJPdUF0dWFsaXphclZpc2l0YW50ZSh2aXNpdG9yOiBWaXNpdG9yKSB7XG4gICAgdGhpcy5kaWFsb2dTZXJ2aWNlXG4gICAgICAub3BlbihWaXNpdGFudGVGb3JtQ29tcG9uZW50LCB7XG4gICAgICAgIGhlYWRlcjogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcbiAgICAgICAgICBcInltcy5wYXRpby5tb3RvcmlzdGFfYWRpY2lvbmFyX3Zpc2l0YW50ZVwiXG4gICAgICAgICksXG4gICAgICAgIC4uLmRpYWxvZ0NvbmZpZyxcbiAgICAgICAgLi4udGhpcy5jb25zdHJvaVZpc2l0YW50ZSh2aXNpdG9yKSxcbiAgICAgIH0pXG4gICAgICAub25DbG9zZS5waXBlKFxuICAgICAgICB0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSxcbiAgICAgICAgZmlsdGVyKCh2YWx1ZSkgPT4gISF2YWx1ZSlcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKHZpc2l0YW50ZSkgPT4gdGhpcy5hZGljaW9uYVZpc2l0YW50ZVBhcmFTYWx2YXIodmlzaXRhbnRlKSk7XG4gIH1cblxuICBwdWJsaWMgYWRpY2lvbmFWaXNpdGFudGVQYXJhU2FsdmFyKHZpc2l0YW50ZTogVmlzaXRvcikge1xuICAgIHRoaXMudmlzaXRhbnRlR3JpZERhdGEuZm9yRWFjaCh2aXNpdG9yID0+IHtcbiAgICAgIGlmKHZpc2l0b3IuZG9jdW1lbnQgPT09IHZpc2l0YW50ZS5kb2N1bWVudCkge1xuICAgICAgICB2aXNpdG9yLmNvbnRhY3QgPSB2aXNpdGFudGUuY29udGFjdDtcbiAgICAgICAgdmlzaXRvci5uYW1lID0gdmlzaXRhbnRlLm5hbWU7XG4gICAgICAgIHRoaXMudmlzaXRvckZvdW5kID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIGlmKHRoaXMudmlzaXRvckZvdW5kKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMudmlzaXRhbnRlR3JpZExvYWRpbmcgPSB0cnVlO1xuXG4gICAgdmlzaXRhbnRlLmRvY3VtZW50VHlwZSA9IHRoaXMuZ2V0RG9jdW1lbnRUeXBlKCk7XG5cbiAgICBpZiAodmlzaXRhbnRlLnZpc2l0b3JTaXR1YXRpb24gPT09IHVuZGVmaW5lZCkge1xuICAgICAgdmlzaXRhbnRlLnZpc2l0b3JTaXR1YXRpb24gPSBWaXNpdG9yU2l0dWF0aW9uLkNIRUNLX0lOX1BFTkRJTkc7XG4gICAgfVxuXG4gICAgdGhpcy5hZGRWaXNpdGFudGVOYVRhYmVsYSh2aXNpdGFudGUpO1xuXG4gICAgdGhpcy52aXNpdGFudGVUb3RhbFJlY29yZHMrKztcbiAgICB0aGlzLnZpc2l0YW50ZUdyaWRMb2FkaW5nID0gZmFsc2U7XG5cbiAgICBjb25zdCBub3ZvX3Zpc2l0YW50ZSA9IG5ldyBWaXNpdG9yQ3JlZGVudGlhbHNEdG8oKVxuICAgIG5vdm9fdmlzaXRhbnRlLnZpc2l0b3IgPSB7XG4gICAgICBuYW1lIDogdmlzaXRhbnRlLm5hbWUsXG4gICAgICBkb2N1bWVudCA6IHZpc2l0YW50ZS5kb2N1bWVudCxcbiAgICAgIGNvbnRhY3Q6IHZpc2l0YW50ZS5jb250YWN0LFxuICAgICAgZG9jdW1lbnRUeXBlIDogdmlzaXRhbnRlLmRvY3VtZW50VHlwZSxcbiAgICAgIHZpc2l0b3JTaXR1YXRpb24gOiB2aXNpdGFudGUudmlzaXRvclNpdHVhdGlvbixcbiAgICAgIGRyaXZlcjogZmFsc2VcbiAgICB9XG5cbiAgICB0aGlzLnZpc2l0b3JzLnB1c2gobm92b192aXNpdGFudGUpXG4gICAgdGhpcy52aXNpdG9yc0NoYW5nZS5lbWl0KHRoaXMudmlzaXRvcnMpXG4gICAgdGhpcy5oYXNDaGFuZ2UuZW1pdCh0cnVlKTtcbiAgfVxuXG4gIHB1YmxpYyBtb2RlbCh2aXNpdGFudGU6IFZpc2l0b3IpIHtcbiAgICBjb25zdCBpc0RyaXZlciA9IHZpc2l0YW50ZS5kb2N1bWVudCA9PT0gdGhpcy5tb3RvcmlzdGEuY3BmO1xuXG4gICAgY29uc3QgZmluZFZpc2l0b3IgPSB0aGlzLnZpc2l0b3JzLmZpbmQoXG4gICAgICAodmlzaXRvcldpdGhDcmVkZW50aWFscykgPT5cbiAgICAgICAgdmlzaXRvcldpdGhDcmVkZW50aWFscy52aXNpdG9yLmRvY3VtZW50ID09PSB2aXNpdGFudGUuZG9jdW1lbnRcbiAgICApO1xuXG4gICAgcmV0dXJuIFtcbiAgICAgIHtcbiAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ3ltcy5wYXRpby5tb3RvcmlzdGFfZWRpdGFyX3Zpc2l0YW50ZScpLFxuICAgICAgICBjb21tYW5kOiAoKSA9PiB0aGlzLmVkaXRhclZpc2l0YW50ZSh2aXNpdGFudGUpLFxuICAgICAgICB2aXNpYmxlIDogIWlzRHJpdmVyXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBsYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgneW1zLnBhdGlvLmRlbGV0ZScpLFxuICAgICAgICBjb21tYW5kOiAoKSA9PiB0aGlzLmRlbGV0YXJWaXNpdGFudGUodmlzaXRhbnRlKSxcbiAgICAgICAgdmlzaWJsZSA6ICFpc0RyaXZlclxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ3ltcy5wYXRpby5tb3RvcmlzdGFfdmlzaXRhbnRlX2VudHJlZ2FyX2NyZWRlbmNpYWwnKSxcbiAgICAgICAgY29tbWFuZDogKCkgPT4gdGhpcy5lbnRyZWdhckNyZWRlbmNpYWwodmlzaXRhbnRlKSxcbiAgICAgICAgdmlzaWJsZSA6IGlzRHJpdmVyIHx8ICFpc0RyaXZlclxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ3ltcy5wYXRpby5yZW1vdmVyX2NyZWRlbmNpYWlzJyksXG4gICAgICAgIGNvbW1hbmQ6ICgpID0+IHRoaXMuZGVsZXRhckNyZWRlbmNpYWlzKGZpbmRWaXNpdG9yKSxcbiAgICAgICAgdmlzaWJsZSA6IGZpbmRWaXNpdG9yICE9IG51bGwgJiYgZmluZFZpc2l0b3IuY3JlZGVudGlhbENhcmRzICE9IG51bGwgJiYgZmluZFZpc2l0b3IuY3JlZGVudGlhbENhcmRzLmxlbmd0aCA+IDBcbiAgICAgIH0sXG4gICAgXTtcbiAgfVxuXG4gIHByaXZhdGUgYWRkVmlzaXRhbnRlTmFUYWJlbGEodmlzaXRhbnRlOiBhbnkpIHtcbiAgICBpZiAodmlzaXRhbnRlLmlkICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhpcy52aXNpdGFudGVHcmlkRGF0YSA9IHRoaXMudmlzaXRhbnRlR3JpZERhdGEubWFwKCh2aXNpdGFudGVHcmlkKSA9PiB7XG4gICAgICAgICAgICBpZiAodmlzaXRhbnRlR3JpZC5pZCA9PT0gdmlzaXRhbnRlLmlkKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHZpc2l0YW50ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiB2aXNpdGFudGVHcmlkO1xuICAgICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnZpc2l0YW50ZUdyaWREYXRhLnB1c2godmlzaXRhbnRlKTtcbiAgICB9XG59XG5cbiAgcHVibGljIGVudHJlZ2FyQ3JlZGVuY2lhbCh2aXNpdGFudGU6IFZpc2l0b3IpIHtcbiAgICB0aGlzLmRpYWxvZ1NlcnZpY2VcbiAgICAgIC5vcGVuKENyZWRlbmNpYWxGb3JtQ29tcG9uZW50LCB7XG4gICAgICAgIGhlYWRlcjogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcbiAgICAgICAgICBcInltcy5wYXRpby5tb3RvcmlzdGFfdmlzaXRhbnRlX2NyZWRlbmNpYWxcIlxuICAgICAgICApLFxuICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgdmlzaXRhbnRlOiB2aXNpdGFudGUsXG4gICAgICAgIH0sXG4gICAgICB9KVxuICAgICAgLm9uQ2xvc2UucGlwZShcbiAgICAgICAgdGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSksXG4gICAgICAgIGZpbHRlcigodmFsdWUpID0+ICEhdmFsdWUpXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCh2aXNpdG9yQ3JlZGVudGlhbENhcmQ6IGFueSkgPT4gXG4gICAgICB0aGlzLmFkaWNpb25hQ3JlZGVuY2lhbFBhcmFFbnRyZWdhcih2aXNpdG9yQ3JlZGVudGlhbENhcmQpKTtcbiAgfVxuXG4gIHByaXZhdGUgYWRpY2lvbmFDcmVkZW5jaWFsUGFyYUVudHJlZ2FyKHZpc2l0b3JDcmVkZW50aWFsQ2FyZDogYW55KSB7XG4gICAgY29uc3QgdmlzaXRvcldpdGhDcmVkZW5jaWFsID0gdGhpcy52aXNpdG9ycy5maW5kKFxuICAgICAgKHZpc2l0b3IpID0+IHZpc2l0b3IudmlzaXRvci5kb2N1bWVudCA9PT0gdmlzaXRvckNyZWRlbnRpYWxDYXJkLnZpc2l0b3IuZG9jdW1lbnRcbiAgICApO1xuXG4gICAgaWYgKHZpc2l0b3JXaXRoQ3JlZGVuY2lhbCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLnZpc2l0b3JzLnB1c2goe1xuICAgICAgICB2aXNpdG9yOiB2aXNpdG9yQ3JlZGVudGlhbENhcmQudmlzaXRvcixcbiAgICAgICAgY3JlZGVudGlhbENhcmRzOiBbdGhpcy5jcmVhdGVDcmVkZW50aWFsQ2FyZCh2aXNpdG9yQ3JlZGVudGlhbENhcmQpXSxcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB2aXNpdG9yV2l0aENyZWRlbmNpYWwuY3JlZGVudGlhbENhcmRzLnB1c2godGhpcy5jcmVhdGVDcmVkZW50aWFsQ2FyZCh2aXNpdG9yQ3JlZGVudGlhbENhcmQpKTtcbiAgICB9XG4gICAgdGhpcy5oYXNDaGFuZ2UuZW1pdCh0cnVlKTtcbiAgfVxuXG4gIHB1YmxpYyBlZGl0YXJWaXNpdGFudGUodmlzaXRhbnRlOiBWaXNpdG9yKSB7XG4gICAgdGhpcy5jcmlhck91QXR1YWxpemFyVmlzaXRhbnRlKHZpc2l0YW50ZSk7XG4gIH1cblxuICBwdWJsaWMgZGVsZXRhclZpc2l0YW50ZSh2aXNpdGFudGU6IFZpc2l0b3IpIHtcbiAgICB0aGlzLnZpc2l0YW50ZUdyaWREYXRhLmZvckVhY2goKHZhbHVlLCBpbmRleCkgPT4ge1xuICAgICAgaWYgKHZhbHVlLmRvY3VtZW50ID09PSB2aXNpdGFudGUuZG9jdW1lbnQpIHtcbiAgICAgICAgdGhpcy52aXNpdGFudGVHcmlkRGF0YS5zcGxpY2UoaW5kZXgsIDEpO1xuXG4gICAgICAgIGNvbnN0IHJlbW92ZVZpc2l0b3IgPSB0aGlzLnZpc2l0b3JzLmZpbmRJbmRleCgodmlzaXRvcikgPT4gdmlzaXRvci52aXNpdG9yLmRvY3VtZW50ID09PSB2YWx1ZS5kb2N1bWVudCk7XG4gICAgICAgIGlmKHJlbW92ZVZpc2l0b3IgIT09IC0xKSB7XG4gICAgICAgICAgdGhpcy52aXNpdG9ycy5zcGxpY2UocmVtb3ZlVmlzaXRvciwgMSk7XG4gICAgICAgICAgdGhpcy5oYXNDaGFuZ2UuZW1pdCh0cnVlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGRlbGV0YXJDcmVkZW5jaWFpcyh2aWlzaXRvckNyZWRlbnRpYWw6IFZpc2l0b3JDcmVkZW50aWFsc0R0bykge1xuICAgIHZpaXNpdG9yQ3JlZGVudGlhbC5jcmVkZW50aWFsQ2FyZHMuc3BsaWNlKDAsIHZpaXNpdG9yQ3JlZGVudGlhbC5jcmVkZW50aWFsQ2FyZHMubGVuZ3RoKTtcbiAgICB0aGlzLmhhc0NoYW5nZS5lbWl0KHRydWUpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRDb250YXRvTW90b3Jpc3RhKG1vdG9yaXN0YTogTW90b3Jpc3RhKSB7XG4gICAgcmV0dXJuIG1vdG9yaXN0YS50ZWxlZm9uZSA9PT0gdW5kZWZpbmVkID8gXCIwXCIgOiBtb3RvcmlzdGEudGVsZWZvbmU7XG4gIH1cblxuICBwdWJsaWMgZ2V0Q3JlZGVudGlhbENhcmRzKHZpc2l0b3I6IFZpc2l0b3IpIHtcbiAgICBpZiAodGhpcy52aXNpdG9ycy5sZW5ndGggPD0gMCkge1xuICAgICAgcmV0dXJuIFtdO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLnZpc2l0b3JzXG4gICAgICAuZmluZChcbiAgICAgICAgKHZpc2l0b3JXaXRoQ3JlZGVudGlhbHMpID0+XG4gICAgICAgICAgdmlzaXRvcldpdGhDcmVkZW50aWFscy52aXNpdG9yLmRvY3VtZW50ID09PSB2aXNpdG9yLmRvY3VtZW50XG4gICAgICApXG4gICAgICAuY3JlZGVudGlhbENhcmRzLmZpbHRlcihcbiAgICAgICAgKGNyZWRlbnRpYWxDYXJkKSA9PiBPYmplY3Qua2V5cyhjcmVkZW50aWFsQ2FyZCkubGVuZ3RoICE9PSAwXG4gICAgICApXG4gICAgICAubWFwKChjcmVkZW50aWFsQ2FyZDogQ3JlZGVudGlhbENhcmQpID0+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBjYXJkVGVjaG5vbG9neTogdGhpcy5nZXRUZWNub2xvZ2lhQ3JhY2hhVHJhZHV6aWRhKFxuICAgICAgICAgICAgY3JlZGVudGlhbENhcmQuY2FyZFRlY2hub2xvZ3lcbiAgICAgICAgICApLFxuICAgICAgICAgIGNhcmROdW1iZXI6IGNyZWRlbnRpYWxDYXJkLmNhcmROdW1iZXIsXG4gICAgICAgICAgZW5kRGF0ZTogY3JlZGVudGlhbENhcmQuZW5kRGF0ZSxcbiAgICAgICAgfTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBjb25zdHJvaVZpc2l0YW50ZSh2aXNpdGFudGU6IFZpc2l0b3IpIHtcbiAgICBsZXQgdmlzaXRhbnRlRGF0YSA9IHsgZGF0YToge30gfTtcbiAgICBpZiAodmlzaXRhbnRlICE9PSB1bmRlZmluZWQgJiYgdmlzaXRhbnRlICE9PSBudWxsKSB7XG4gICAgICB2aXNpdGFudGVEYXRhID0ge1xuICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgaWQ6IHZpc2l0YW50ZS5pZCxcbiAgICAgICAgICBuYW1lOiB2aXNpdGFudGUubmFtZSxcbiAgICAgICAgICBkb2N1bWVudDogdmlzaXRhbnRlLmRvY3VtZW50LFxuICAgICAgICAgIGNvbnRhY3Q6IHZpc2l0YW50ZS5jb250YWN0LFxuICAgICAgICAgIHZpc2l0b3JTaXR1YXRpb246IHRoaXMuZ2V0VmlzaXRvclNpdHVhdGlvbihcbiAgICAgICAgICAgIHZpc2l0YW50ZS52aXNpdG9yU2l0dWF0aW9uXG4gICAgICAgICAgKSxcbiAgICAgICAgICBkb2N1bWVudFR5cGU6IHRoaXMuZ2V0RG9jdW1lbnRUeXBlKCksXG4gICAgICAgIH0sXG4gICAgICB9O1xuICAgIH1cbiAgICByZXR1cm4gdmlzaXRhbnRlRGF0YTtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlQ3JlZGVudGlhbENhcmQodmlzaXRvckNyZWRlbnRpYWxDYXJkOiBDcmVkZW50aWFsQ2FyZCk6IENyZWRlbnRpYWxDYXJkIHtcbiAgICByZXR1cm4ge1xuICAgICAgdmlzaXRvcjogdmlzaXRvckNyZWRlbnRpYWxDYXJkLmlkLFxuICAgICAgY2FyZFRlY2hub2xvZ3k6IHZpc2l0b3JDcmVkZW50aWFsQ2FyZC5jYXJkVGVjaG5vbG9neSxcbiAgICAgIGNhcmROdW1iZXI6IHZpc2l0b3JDcmVkZW50aWFsQ2FyZC5jYXJkTnVtYmVyLFxuICAgICAgZW5kRGF0ZTogdmlzaXRvckNyZWRlbnRpYWxDYXJkLmVuZERhdGUsXG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0VGVjbm9sb2dpYUNyYWNoYVRyYWR1emlkYShjYXJkVGVjaG5vbG9neTogQ2FyZFRlY2hub2xvZ3kpOiBzdHJpbmcge1xuICAgIGlmIChjYXJkVGVjaG5vbG9neSA9PT0gQ2FyZFRlY2hub2xvZ3kuQkFSQ09ERV9DQVJEKSB7XG4gICAgICByZXR1cm4gdGhpcy50cmFuc2xhdGUuaW5zdGFudChcbiAgICAgICAgXCJ5bXMucGF0aW8uY2FydGFvX2NyZWRlbmNpYWxfY29kaWdvX2JhcnJhc1wiXG4gICAgICApO1xuICAgIH1cblxuICAgIGlmIChjYXJkVGVjaG5vbG9neSA9PT0gQ2FyZFRlY2hub2xvZ3kuUkZJRF9DQVJEKSB7XG4gICAgICByZXR1cm4gdGhpcy50cmFuc2xhdGUuaW5zdGFudChcInltcy5wYXRpby5jYXJ0YW9fY3JlZGVuY2lhbF9yZmlkXCIpO1xuICAgIH1cblxuICAgIGlmIChjYXJkVGVjaG5vbG9neSA9PT0gQ2FyZFRlY2hub2xvZ3kuU01BUlRfQ0FSRCkge1xuICAgICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoXCJ5bXMucGF0aW8uY2FydGFvX2NyZWRlbmNpYWxfc21hcnRcIik7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBnZXRWaXNpdG9yU2l0dWF0aW9uKHZpc2l0b3JTaXR1YXRpb246IFZpc2l0b3JTaXR1YXRpb24pIHtcbiAgICByZXR1cm4gdmlzaXRvclNpdHVhdGlvbiA9PT0gdW5kZWZpbmVkXG4gICAgICA/IFZpc2l0b3JTaXR1YXRpb24uQ0hFQ0tfSU5fUEVORElOR1xuICAgICAgOiB2aXNpdG9yU2l0dWF0aW9uO1xuICB9XG5cbiAgcHJpdmF0ZSBjb25zdHJvaUNhbXBvc1RhYmVsYVZpc3RhbnRlKCkge1xuICAgIHRoaXMudmlzaXRhbnRlR3JpZENvbHVtbnMgPSBbXG4gICAgICB7XG4gICAgICAgIGZpZWxkOiBcIm5hbWVcIixcbiAgICAgICAgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFwieW1zLnBhdGlvLm1vdG9yaXN0YV92aXNpdGFudGVfbm9tZVwiKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGZpZWxkOiBcImRvY3VtZW50XCIsXG4gICAgICAgIGhlYWRlcjogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcbiAgICAgICAgICBcInltcy5wYXRpby5tb3RvcmlzdGFfdmlzaXRhbnRlX2RvY3VtZW50b1wiXG4gICAgICAgICksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBmaWVsZDogXCJjb250YWN0XCIsXG4gICAgICAgIGhlYWRlcjogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcInltcy5wYXRpby5tb3RvcmlzdGFfdmlzaXRhbnRlX2NvbnRhdG9cIiksXG4gICAgICB9LFxuICAgIF07XG4gIH1cblxuICBwcml2YXRlIGdldERvY3VtZW50VHlwZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiBcImNwZlwiO1xuICB9XG59Il19
|
|
395
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlzaXRvci1lZGl0LWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNlbmlvcnNpc3RlbWFzL3ltcy1pbnRlZ3JhdGlvbi8iLCJzb3VyY2VzIjpbInNyYy9zYW0tc2VuaW9yL2NvbXBvbmVudHMvdmlzaXRvci1lZGl0L3Zpc2l0b3ItZWRpdC1saXN0L3Zpc2l0b3ItZWRpdC1saXN0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDbEYsT0FBTyxFQUFvQixTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakcsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFdkQsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUNMLGNBQWMsR0FFZixNQUFNLGlDQUFpQyxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBRXJFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDNUMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0saURBQWlELENBQUM7QUFDMUYsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0saUVBQWlFLENBQUM7QUFDekcsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3ZELE9BQU8sRUFBRyx5QkFBeUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBUTFFLElBQWEsa0JBQWtCLEdBQS9CLE1BQWEsa0JBQWtCO0lBZ0I3QixZQUNVLFNBQTJCLEVBQzNCLGFBQTRCLEVBQzNCLG1CQUE4QztRQUYvQyxj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RSxLQUFLLEVBQUUsTUFBTTtnQkFDYixNQUFNLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsb0NBQW9DLENBQUM7YUFDckU7WUFDRDtnQkFDRSxLQUFLLEVBQUUsVUFBVTtnQkFDakIsTUFBTSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUM1Qix5Q0FBeUMsQ0FDMUM7YUFDRjtZQUNEO2dCQUNFLEtBQUssRUFBRSxTQUFTO2dCQUNoQixNQUFNLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsdUNBQXVDLENBQUM7YUFDeEU7U0FDRixDQUFDO0lBQ0osQ0FBQztJQUVPLGVBQWU7UUFDckIsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0NBQ0YsQ0FBQTtBQWpkVTtJQUFSLEtBQUssRUFBRTs7cURBQThCO0FBQzdCO0lBQVIsS0FBSyxFQUFFOztvREFBZ0Q7QUFDOUM7SUFBVCxNQUFNLEVBQUU7OzBEQUE4RDtBQUM3RDtJQUFULE1BQU0sRUFBRTs7cURBQTBDO0FBSnhDLGtCQUFrQjtJQUw5QixTQUFTLENBQUM7UUFDVCxRQUFRLEVBQUUscUJBQXFCO1FBQy9CLDg4S0FBaUQ7O0tBRWxELENBQUM7NkNBa0JxQixnQkFBZ0I7UUFDWixhQUFhO1FBQ04seUJBQXlCO0dBbkI5QyxrQkFBa0IsQ0FrZDlCO1NBbGRZLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFZpc2l0b3JDcmVkZW50aWFsc0R0byB9IGZyb20gJy4uLy4uLy4uL2VudGl0aWVzL3Zpc2l0b3ItY3JlZGVudGlhbHMtZHRvJztcbmltcG9ydCB7IEFmdGVyQ29udGVudEluaXQsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gXCJAbmd4LXRyYW5zbGF0ZS9jb3JlXCI7XG5pbXBvcnQgeyBWaXNpdG9yIH0gZnJvbSBcIi4uLy4uLy4uL21vZGVscy92aXNpdG9yXCI7XG5pbXBvcnQgeyBTdWJqZWN0LCBlbXB0eSB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQge1xuICBDYXJkVGVjaG5vbG9neSxcbiAgQ3JlZGVudGlhbENhcmQsXG59IGZyb20gXCIuLi8uLi8uLi9tb2RlbHMvY2FyZC1jcmVkZW50aWFsXCI7XG5pbXBvcnQgeyBmaWx0ZXIsIHRha2VVbnRpbCwgbWVyZ2VNYXAgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcbmltcG9ydCB7IFZpc2l0b3JTaXR1YXRpb24gfSBmcm9tIFwiLi4vLi4vLi4vbW9kZWxzL3Zpc2l0b3Itc2l0dWF0aW9uXCI7XG5pbXBvcnQgeyBNb3RvcmlzdGEgfSBmcm9tIFwiLi4vLi4vLi4vLi4vZXJwLXNlbmlvci9jb3JlL2VudGl0aWVzL21vdG9yaXN0YS9tb3RvcmlzdGFcIjtcbmltcG9ydCB7IERpYWxvZ1NlcnZpY2UgfSBmcm9tIFwicHJpbWVuZy9hcGlcIjtcbmltcG9ydCB7IENyZWRlbmNpYWxGb3JtQ29tcG9uZW50IH0gZnJvbSBcIi4uLy4uL2NyZWRlbmNpYWwtZm9ybS9jcmVkZW5jaWFsLWZvcm0uY29tcG9uZW50XCI7XG5pbXBvcnQgeyBWaXNpdGFudGVGb3JtQ29tcG9uZW50IH0gZnJvbSBcIi4uL3Zpc2l0b3ItZWRpdC1mb3JtL3Zpc2l0YW50ZS1mb3JtL3Zpc2l0b3ItZWRpdC1mb3JtLmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgZGlhbG9nQ29uZmlnIH0gZnJvbSBcIi4uLy4uLy4uLy4uL3V0aWxzL3V0aWxzXCI7XG5pbXBvcnQgeyAgSW50ZWdyYXRpb25FdmVudHNDYWxsYmFjayB9IGZyb20gXCJAc2VuaW9yc2lzdGVtYXMveW1zLXJvdXRpbmVzXCI7XG5pbXBvcnQgeyBWaXNpdG9yRHRvIH0gZnJvbSAnLi4vLi4vLi4vZW50aXRpZXMvdmlzaXRvci1kdG8nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2aXNpdGFudGUtY29tcG9uZW50JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Zpc2l0b3ItZWRpdC1saXN0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdmlzaXRvci1lZGl0LWxpc3QuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgVmlzaXRhbnRlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlckNvbnRlbnRJbml0IHtcbiAgQElucHV0KCkgcHJpdmF0ZSBtb3RvcmlzdGE6IE1vdG9yaXN0YTtcbiAgQElucHV0KCkgcHJpdmF0ZSB2aXNpdG9yczogVmlzaXRvckNyZWRlbnRpYWxzRHRvW10gPSBbXTtcbiAgQE91dHB1dCgpIHZpc2l0b3JzQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxWaXNpdG9yQ3JlZGVudGlhbHNEdG9bXT4oKTtcbiAgQE91dHB1dCgpIGhhc0NoYW5nZSAgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBuZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3QoKTtcbiAgcHVibGljIHZpc2l0YW50ZUdyaWREYXRhOiBWaXNpdG9yRHRvW107XG4gIHB1YmxpYyB2aXNpdGFudGVHcmlkQ29sdW1uczogYW55W107XG4gIHB1YmxpYyB2aXNpdGFudGVUb3RhbFJlY29yZHM6IG51bWJlcjtcbiAgcHVibGljIHZpc2l0YW50ZUdyaWRMb2FkaW5nOiBib29sZWFuO1xuICBwdWJsaWMgdmlzaXRvckZvdW5kOiBib29sZWFuO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2ludGVncmF0aW9uQ2FsbGJhY2s6IEludGVncmF0aW9uRXZlbnRzQ2FsbGJhY2s7XG4gIHByaXZhdGUgcmVhZG9ubHkgdW5zdWJzY3JpYmUkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICBwcml2YXRlIGRpYWxvZ1NlcnZpY2U6IERpYWxvZ1NlcnZpY2UsXG4gICAgcmVhZG9ubHkgaW50ZWdyYXRpb25DYWxsYmFjazogSW50ZWdyYXRpb25FdmVudHNDYWxsYmFja1xuICApIHtcbiAgICB0aGlzLl9pbnRlZ3JhdGlvbkNhbGxiYWNrID0gaW50ZWdyYXRpb25DYWxsYmFjaztcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuY29uc3Ryb2lDYW1wb3NUYWJlbGFWaXN0YW50ZSgpO1xuICAgIHRoaXMudmlzaXRhbnRlVG90YWxSZWNvcmRzID0gMDtcbiAgfVxuXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnZpc2l0YW50ZUdyaWRMb2FkaW5nID0gZmFsc2U7XG4gICAgdGhpcy5hZGljaW9uYVZpc2l0YW50ZXNHcmlkKCk7XG4gICAgdGhpcy5faW50ZWdyYXRpb25DYWxsYmFja1xuICAgICAgLm9uQWdlbmRhbWVudG9Nb3RvcmlzdGFDaGFuZ2VkKClcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlVW50aWwodGhpcy51bnN1YnNjcmliZSQpLFxuICAgICAgICBtZXJnZU1hcCgobW90b3Jpc3RhKSA9PiB7XG4gICAgICAgICAgdGhpcy5hdHVhbGl6YU1vdG9yaXN0YShtb3RvcmlzdGEpO1xuICAgICAgICAgIHJldHVybiBlbXB0eSgpO1xuICAgICAgICB9KVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBhdHVhbGl6YU1vdG9yaXN0YShtb3Q6IE1vdG9yaXN0YSkge1xuICAgIGNvbnN0IG1vdG9yaXN0YVZpc2l0YW50ZSA9IHRoaXMudmlzaXRhbnRlR3JpZERhdGEuZmluZChcbiAgICAgIChpdGVtKSA9PiBpdGVtLmRyaXZlclxuICAgICk7XG5cbiAgICBpZiAobW90b3Jpc3RhVmlzaXRhbnRlICYmIG1vdG9yaXN0YVZpc2l0YW50ZS5kb2N1bWVudFR5cGUgPT09IHRoaXMuZ2V0RG9jdW1lbnRUeXBlKCkgJiYgIG1vdG9yaXN0YVZpc2l0YW50ZS5kb2N1bWVudCA9PT0gbW90LmNwZikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnZpc2l0YW50ZUdyaWREYXRhLmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMudmlzaXRhbnRlR3JpZERhdGFbMF0gPSB7XG4gICAgICAgIG5hbWU6IG1vdC5ub21lLFxuICAgICAgICBkb2N1bWVudDogbW90LmNwZixcbiAgICAgICAgY29udGFjdDogdGhpcy5nZXRDb250YXRvTW90b3Jpc3RhKG1vdCksXG4gICAgICAgIHZpc2l0b3JTaXR1YXRpb246IFZpc2l0b3JTaXR1YXRpb24uQ0hFQ0tfSU5fUEVORElORyxcbiAgICAgICAgZG9jdW1lbnRUeXBlOiB0aGlzLmdldERvY3VtZW50VHlwZSgpLFxuICAgICAgICBkcml2ZXI6IHRydWVcbiAgICAgIH07ICAgICAgXG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgdGhpcy52aXNpdGFudGVHcmlkRGF0YS5wdXNoKHtcbiAgICAgICAgbmFtZTogbW90Lm5vbWUsXG4gICAgICAgIGRvY3VtZW50OiBtb3QuY3BmLFxuICAgICAgICBjb250YWN0OiB0aGlzLmdldENvbnRhdG9Nb3RvcmlzdGEobW90KSxcbiAgICAgICAgdmlzaXRvclNpdHVhdGlvbjogVmlzaXRvclNpdHVhdGlvbi5DSEVDS19JTl9QRU5ESU5HLFxuICAgICAgICBkb2N1bWVudFR5cGU6IHRoaXMuZ2V0RG9jdW1lbnRUeXBlKCksXG4gICAgICAgIGRyaXZlcjogdHJ1ZVxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMudmlzaXRvcnMubGVuZ3RoID4gMCkge1xuICAgICAgdGhpcy52aXNpdG9yc1swXS52aXNpdG9yID0ge1xuICAgICAgICBuYW1lOiBtb3Qubm9tZSxcbiAgICAgICAgZG9jdW1lbnQ6IG1vdC5jcGYsXG4gICAgICAgIGNvbnRhY3Q6IHRoaXMuZ2V0Q29udGF0b01vdG9yaXN0YShtb3QpLFxuICAgICAgICB2aXNpdG9yU2l0dWF0aW9uOiBWaXNpdG9yU2l0dWF0aW9uLkNIRUNLX0lOX1BFTkRJTkcsXG4gICAgICAgIGRvY3VtZW50VHlwZTogdGhpcy5nZXREb2N1bWVudFR5cGUoKSxcbiAgICAgICAgZHJpdmVyOiB0cnVlXG4gICAgICB9O1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYWRpY2lvbmFWaXNpdGFudGVzR3JpZCgpIHtcbiAgICBpZiAodGhpcy52aXNpdG9ycy5sZW5ndGgpIHtcbiAgICAgIHRoaXMudmlzaXRhbnRlR3JpZERhdGEgPSBbXTtcbiAgICAgIHRoaXMuYWRpY2lvbmFNb3RvcmlzdGFOb1Zpc2l0YW50ZUdyaWREYXRhKCk7XG5cbiAgICAgIHRoaXMudmlzaXRvcnMuZm9yRWFjaCgodmlzaXRvcjogYW55KSA9PiB7XG4gICAgICAgIGlmICh0aGlzLm1vdG9yaXN0YS5jcGYgIT09IHZpc2l0b3IudmlzaXRvci5kb2N1bWVudCkge1xuICAgICAgICAgIHRoaXMudmlzaXRhbnRlR3JpZERhdGEucHVzaCh7XG4gICAgICAgICAgICBpZDogdmlzaXRvci52aXNpdG9yLmlkLFxuICAgICAgICAgICAgbmFtZTogdmlzaXRvci52aXNpdG9yLm5hbWUsXG4gICAgICAgICAgICBkb2N1bWVudDogdmlzaXRvci52aXNpdG9yLmRvY3VtZW50LFxuICAgICAgICAgICAgY29udGFjdDogdmlzaXRvci52aXNpdG9yLmNvbnRhY3QsXG4gICAgICAgICAgICB2aXNpdG9yU2l0dWF0aW9uOiB0aGlzLmdldFZpc2l0b3JTaXR1YXRpb24oXG4gICAgICAgICAgICAgIHZpc2l0b3IudmlzaXRvci52aXNpdG9yU2l0dWF0aW9uXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgZG9jdW1lbnRUeXBlOiB0aGlzLmdldERvY3VtZW50VHlwZSgpLFxuICAgICAgICAgICAgZHJpdmVyOiB0cnVlXG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnZpc2l0YW50ZVRvdGFsUmVjb3JkcyA9IHRoaXMudmlzaXRvcnMubGVuZ3RoO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudmlzaXRhbnRlR3JpZERhdGEgPSBbXTtcbiAgICAgIGNvbnN0IG5vdm9fdmlzaXRhbnRlID0gbmV3IFZpc2l0b3JDcmVkZW50aWFsc0R0bygpXG4gICAgICBub3ZvX3Zpc2l0YW50ZS52aXNpdG9yID0ge1xuICAgICAgICBuYW1lOiB0aGlzLm1vdG9yaXN0YS5ub21lLFxuICAgICAgICBkb2N1bWVudDogdGhpcy5tb3RvcmlzdGEuY3BmLFxuICAgICAgICBjb250YWN0OiB0aGlzLmdldENvbnRhdG9Nb3RvcmlzdGEodGhpcy5tb3RvcmlzdGEpLFxuICAgICAgICBkb2N1bWVudFR5cGU6IHRoaXMuZ2V0RG9jdW1lbnRUeXBlKCksXG4gICAgICAgIHZpc2l0b3JTaXR1YXRpb246IFZpc2l0b3JTaXR1YXRpb24uQ0hFQ0tfSU5fUEVORElORyxcbiAgICAgICAgZHJpdmVyOiB0cnVlXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHZpc2l0YW50ZUJ1c2NhbmRvID0gdGhpcy52aXNpdGFudGVHcmlkRGF0YS5maW5kKFxuICAgICAgICAodmlzaXRhbnRlTmFMaXN0YSkgPT4gbm92b192aXNpdGFudGUudmlzaXRvci5kb2N1bWVudCA9PT0gdmlzaXRhbnRlTmFMaXN0YS5kb2N1bWVudFxuICAgICAgICApO1xuICAgICAgICBpZiAodmlzaXRhbnRlQnVzY2FuZG8gPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIHRoaXMudmlzaXRhbnRlR3JpZERhdGEucHVzaChub3ZvX3Zpc2l0YW50ZS52aXNpdG9yKTsgICAgICAgIFxuICAgICAgICAgIHRoaXMudmlzaXRvcnMucHVzaChub3ZvX3Zpc2l0YW50ZSk7XG4gICAgICAgIHRoaXMudmlzaXRhbnRlVG90YWxSZWNvcmRzID0gMTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLnZpc2l0YW50ZUdyaWRMb2FkaW5nID0gZmFsc2U7XG4gIH1cblxuICBwdWJsaWMgaXNDcmVkZW50aWFsQ2FyZHNFbXB0eSh2aXNpdG9yOiBWaXNpdG9yKSB7XG4gICAgY29uc3QgdmlzaXRhbnRlc0VuY29udHJhZG9zID0gdGhpcy52aXNpdG9ycy5maW5kKFxuICAgICAgKHZpc2l0b3JXaXRoQ3JlZGVudGlhbHMpID0+XG4gICAgICAgIHZpc2l0b3JXaXRoQ3JlZGVudGlhbHMudmlzaXRvci5kb2N1bWVudCA9PT0gdmlzaXRvci5kb2N1bWVudFxuICAgICk7XG5cbiAgICBpZiAodmlzaXRhbnRlc0VuY29udHJhZG9zID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICByZXR1cm4gdmlzaXRhbnRlc0VuY29udHJhZG9zLmNyZWRlbnRpYWxDYXJkcy5maWx0ZXIoXG4gICAgICAoY3JlZGVudGlhbENhcmQ6IENyZWRlbnRpYWxDYXJkKSA9PlxuICAgICAgICBPYmplY3Qua2V5cyhjcmVkZW50aWFsQ2FyZCkubGVuZ3RoICE9PSAwXG4gICAgKS5sZW5ndGggPiAwXG4gICAgICA/IHRydWVcbiAgICAgIDogZmFsc2U7XG4gIH1cblxuICBwcml2YXRlIGFkaWNpb25hTW90b3Jpc3RhTm9WaXNpdGFudGVHcmlkRGF0YSgpIHtcbiAgICBjb25zdCBtb3RvcmlzdGFWaXNpdGFudGUgPSB0aGlzLnZpc2l0b3JzLmZpbmQoXG4gICAgICAodmlzaXRvcikgPT4gdGhpcy5tb3RvcmlzdGEuY3BmID09PSB2aXNpdG9yLnZpc2l0b3IuZG9jdW1lbnRcbiAgICApO1xuXG4gICAgaWYgKG1vdG9yaXN0YVZpc2l0YW50ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLnZpc2l0YW50ZUdyaWREYXRhLnB1c2goe1xuICAgICAgICBuYW1lOiB0aGlzLm1vdG9yaXN0YS5ub21lLFxuICAgICAgICBkb2N1bWVudDogdGhpcy5tb3RvcmlzdGEuY3BmLFxuICAgICAgICBjb250YWN0OiB0aGlzLmdldENvbnRhdG9Nb3RvcmlzdGEodGhpcy5tb3RvcmlzdGEpLFxuICAgICAgICB2aXNpdG9yU2l0dWF0aW9uOiBWaXNpdG9yU2l0dWF0aW9uLkNIRUNLX0lOX1BFTkRJTkcsXG4gICAgICAgIGRvY3VtZW50VHlwZTogdGhpcy5nZXREb2N1bWVudFR5cGUoKSxcbiAgICAgICAgZHJpdmVyOiB0cnVlLFxuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudmlzaXRhbnRlR3JpZERhdGEucHVzaCh7XG4gICAgICAgIGlkOiBtb3RvcmlzdGFWaXNpdGFudGUudmlzaXRvci5pZCxcbiAgICAgICAgbmFtZTogbW90b3Jpc3RhVmlzaXRhbnRlLnZpc2l0b3IubmFtZSxcbiAgICAgICAgZG9jdW1lbnQ6IG1vdG9yaXN0YVZpc2l0YW50ZS52aXNpdG9yLmRvY3VtZW50LFxuICAgICAgICBjb250YWN0OiB0aGlzLmdldENvbnRhdG9Nb3RvcmlzdGEodGhpcy5tb3RvcmlzdGEpLFxuICAgICAgICB2aXNpdG9yU2l0dWF0aW9uOiB0aGlzLmdldFZpc2l0b3JTaXR1YXRpb24oXG4gICAgICAgICAgbW90b3Jpc3RhVmlzaXRhbnRlLnZpc2l0b3IudmlzaXRvclNpdHVhdGlvblxuICAgICAgICApLFxuICAgICAgICBkb2N1bWVudFR5cGU6IHRoaXMuZ2V0RG9jdW1lbnRUeXBlKCksXG4gICAgICAgIGRyaXZlcjogdHJ1ZSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBjcmlhck91QXR1YWxpemFyVmlzaXRhbnRlKHZpc2l0b3I6IFZpc2l0b3IpIHtcbiAgICB0aGlzLmRpYWxvZ1NlcnZpY2VcbiAgICAgIC5vcGVuKFZpc2l0YW50ZUZvcm1Db21wb25lbnQsIHtcbiAgICAgICAgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFxuICAgICAgICAgIFwieW1zLnBhdGlvLm1vdG9yaXN0YV9hZGljaW9uYXJfdmlzaXRhbnRlXCJcbiAgICAgICAgKSxcbiAgICAgICAgLi4uZGlhbG9nQ29uZmlnLFxuICAgICAgICAuLi50aGlzLmNvbnN0cm9pVmlzaXRhbnRlKHZpc2l0b3IpLFxuICAgICAgfSlcbiAgICAgIC5vbkNsb3NlLnBpcGUoXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLm5nVW5zdWJzY3JpYmUpLFxuICAgICAgICBmaWx0ZXIoKHZhbHVlKSA9PiAhIXZhbHVlKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgodmlzaXRhbnRlKSA9PiB0aGlzLmFkaWNpb25hVmlzaXRhbnRlUGFyYVNhbHZhcih2aXNpdGFudGUpKTtcbiAgfVxuXG4gIHB1YmxpYyBhZGljaW9uYVZpc2l0YW50ZVBhcmFTYWx2YXIodmlzaXRhbnRlOiBWaXNpdG9yKSB7XG4gICAgdGhpcy52aXNpdGFudGVHcmlkRGF0YS5mb3JFYWNoKHZpc2l0b3IgPT4ge1xuICAgICAgaWYodmlzaXRvci5kb2N1bWVudCA9PT0gdmlzaXRhbnRlLmRvY3VtZW50KSB7XG4gICAgICAgIHZpc2l0b3IuY29udGFjdCA9IHZpc2l0YW50ZS5jb250YWN0O1xuICAgICAgICB2aXNpdG9yLm5hbWUgPSB2aXNpdGFudGUubmFtZTtcblxuICAgICAgICBjb25zdCBub3ZvVmlzaXRhbnRlID0gdGhpcy5idWlsZFZpc2l0b3JDcmVkZW50aWFsc0R0byh2aXNpdG9yKTtcblxuICAgICAgICB0aGlzLnZpc2l0b3JzLmZvckVhY2gocmVzdWx0ID0+IHtcbiAgICAgICAgICBpZihyZXN1bHQudmlzaXRvci5kb2N1bWVudCA9PT0gbm92b1Zpc2l0YW50ZS52aXNpdG9yLmRvY3VtZW50KSB7XG4gICAgICAgICAgICByZXN1bHQudmlzaXRvci5uYW1lID0gbm92b1Zpc2l0YW50ZS52aXNpdG9yLm5hbWU7XG4gICAgICAgICAgICByZXN1bHQudmlzaXRvci5jb250YWN0ID0gbm92b1Zpc2l0YW50ZS52aXNpdG9yLmNvbnRhY3Q7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgdGhpcy52aXNpdG9yc0NoYW5nZS5lbWl0KHRoaXMudmlzaXRvcnMpO1xuICAgICAgdGhpcy52aXNpdG9yRm91bmQgPSB0cnVlO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgaWYodGhpcy52aXNpdG9yRm91bmQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy52aXNpdGFudGVHcmlkTG9hZGluZyA9IHRydWU7XG5cbiAgICB2aXNpdGFudGUuZG9jdW1lbnRUeXBlID0gdGhpcy5nZXREb2N1bWVudFR5cGUoKTtcblxuICAgIGlmICh2aXNpdGFudGUudmlzaXRvclNpdHVhdGlvbiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB2aXNpdGFudGUudmlzaXRvclNpdHVhdGlvbiA9IFZpc2l0b3JTaXR1YXRpb24uQ0hFQ0tfSU5fUEVORElORztcbiAgICB9XG5cbiAgICB0aGlzLmFkZFZpc2l0YW50ZU5hVGFiZWxhKHZpc2l0YW50ZSk7XG5cbiAgICB0aGlzLnZpc2l0YW50ZVRvdGFsUmVjb3JkcysrO1xuICAgIHRoaXMudmlzaXRhbnRlR3JpZExvYWRpbmcgPSBmYWxzZTtcblxuICAgIGNvbnN0IG5vdm9fdmlzaXRhbnRlID0gbmV3IFZpc2l0b3JDcmVkZW50aWFsc0R0bygpXG4gICAgbm92b192aXNpdGFudGUudmlzaXRvciA9IHtcbiAgICAgIG5hbWUgOiB2aXNpdGFudGUubmFtZSxcbiAgICAgIGRvY3VtZW50IDogdmlzaXRhbnRlLmRvY3VtZW50LFxuICAgICAgY29udGFjdDogdmlzaXRhbnRlLmNvbnRhY3QsXG4gICAgICBkb2N1bWVudFR5cGUgOiB2aXNpdGFudGUuZG9jdW1lbnRUeXBlLFxuICAgICAgdmlzaXRvclNpdHVhdGlvbiA6IHZpc2l0YW50ZS52aXNpdG9yU2l0dWF0aW9uLFxuICAgICAgZHJpdmVyOiBmYWxzZVxuICAgIH1cblxuICAgIHRoaXMudmlzaXRvcnMucHVzaChub3ZvX3Zpc2l0YW50ZSlcbiAgICB0aGlzLnZpc2l0b3JzQ2hhbmdlLmVtaXQodGhpcy52aXNpdG9ycylcbiAgICB0aGlzLmhhc0NoYW5nZS5lbWl0KHRydWUpO1xuICB9XG5cbiAgcHJpdmF0ZSBidWlsZFZpc2l0b3JDcmVkZW50aWFsc0R0byAodmlzaXRvcjogVmlzaXRvckR0bykge1xuICAgIGNvbnN0IHZpc2l0b3JDcmVkZW50aWFsc0R0byA9IG5ldyBWaXNpdG9yQ3JlZGVudGlhbHNEdG8oKTtcblxuICAgIGNvbnN0IHZpc2l0YW50ZTogVmlzaXRvckR0byA9IHtcbiAgICAgIG5hbWUgOiB2aXNpdG9yLm5hbWUsXG4gICAgICBkb2N1bWVudCA6IHZpc2l0b3IuZG9jdW1lbnQsXG4gICAgICBjb250YWN0OiB2aXNpdG9yLmNvbnRhY3QsXG4gICAgICBkb2N1bWVudFR5cGUgOiB2aXNpdG9yLmRvY3VtZW50VHlwZSxcbiAgICAgIHZpc2l0b3JTaXR1YXRpb24gOiB2aXNpdG9yLnZpc2l0b3JTaXR1YXRpb24sXG4gICAgICBkcml2ZXI6IGZhbHNlXG4gICAgfTtcblxuICAgIHZpc2l0b3JDcmVkZW50aWFsc0R0by52aXNpdG9yID0gdmlzaXRhbnRlO1xuXG4gICAgcmV0dXJuIHZpc2l0b3JDcmVkZW50aWFsc0R0bztcbiAgfVxuXG4gIHB1YmxpYyBtb2RlbCh2aXNpdGFudGU6IFZpc2l0b3IpIHtcbiAgICBjb25zdCBpc0RyaXZlciA9IHZpc2l0YW50ZS5kb2N1bWVudCA9PT0gdGhpcy5tb3RvcmlzdGEuY3BmO1xuXG4gICAgY29uc3QgZmluZFZpc2l0b3IgPSB0aGlzLnZpc2l0b3JzLmZpbmQoXG4gICAgICAodmlzaXRvcldpdGhDcmVkZW50aWFscykgPT5cbiAgICAgICAgdmlzaXRvcldpdGhDcmVkZW50aWFscy52aXNpdG9yLmRvY3VtZW50ID09PSB2aXNpdGFudGUuZG9jdW1lbnRcbiAgICApO1xuXG4gICAgcmV0dXJuIFtcbiAgICAgIHtcbiAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ3ltcy5wYXRpby5tb3RvcmlzdGFfZWRpdGFyX3Zpc2l0YW50ZScpLFxuICAgICAgICBjb21tYW5kOiAoKSA9PiB0aGlzLmVkaXRhclZpc2l0YW50ZSh2aXNpdGFudGUpLFxuICAgICAgICB2aXNpYmxlIDogIWlzRHJpdmVyXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBsYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgneW1zLnBhdGlvLmRlbGV0ZScpLFxuICAgICAgICBjb21tYW5kOiAoKSA9PiB0aGlzLmRlbGV0YXJWaXNpdGFudGUodmlzaXRhbnRlKSxcbiAgICAgICAgdmlzaWJsZSA6ICFpc0RyaXZlclxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ3ltcy5wYXRpby5tb3RvcmlzdGFfdmlzaXRhbnRlX2VudHJlZ2FyX2NyZWRlbmNpYWwnKSxcbiAgICAgICAgY29tbWFuZDogKCkgPT4gdGhpcy5lbnRyZWdhckNyZWRlbmNpYWwodmlzaXRhbnRlKSxcbiAgICAgICAgdmlzaWJsZSA6IGlzRHJpdmVyIHx8ICFpc0RyaXZlclxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ3ltcy5wYXRpby5yZW1vdmVyX2NyZWRlbmNpYWlzJyksXG4gICAgICAgIGNvbW1hbmQ6ICgpID0+IHRoaXMuZGVsZXRhckNyZWRlbmNpYWlzKGZpbmRWaXNpdG9yKSxcbiAgICAgICAgdmlzaWJsZSA6IGZpbmRWaXNpdG9yICE9IG51bGwgJiYgZmluZFZpc2l0b3IuY3JlZGVudGlhbENhcmRzICE9IG51bGwgJiYgZmluZFZpc2l0b3IuY3JlZGVudGlhbENhcmRzLmxlbmd0aCA+IDBcbiAgICAgIH0sXG4gICAgXTtcbiAgfVxuXG4gIHByaXZhdGUgYWRkVmlzaXRhbnRlTmFUYWJlbGEodmlzaXRhbnRlOiBhbnkpIHtcbiAgICBpZiAodmlzaXRhbnRlLmlkICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhpcy52aXNpdGFudGVHcmlkRGF0YSA9IHRoaXMudmlzaXRhbnRlR3JpZERhdGEubWFwKCh2aXNpdGFudGVHcmlkKSA9PiB7XG4gICAgICAgICAgICBpZiAodmlzaXRhbnRlR3JpZC5pZCA9PT0gdmlzaXRhbnRlLmlkKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHZpc2l0YW50ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiB2aXNpdGFudGVHcmlkO1xuICAgICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnZpc2l0YW50ZUdyaWREYXRhLnB1c2godmlzaXRhbnRlKTtcbiAgICB9XG59XG5cbiAgcHVibGljIGVudHJlZ2FyQ3JlZGVuY2lhbCh2aXNpdGFudGU6IFZpc2l0b3IpIHtcbiAgICB0aGlzLmRpYWxvZ1NlcnZpY2VcbiAgICAgIC5vcGVuKENyZWRlbmNpYWxGb3JtQ29tcG9uZW50LCB7XG4gICAgICAgIGhlYWRlcjogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcbiAgICAgICAgICBcInltcy5wYXRpby5tb3RvcmlzdGFfdmlzaXRhbnRlX2NyZWRlbmNpYWxcIlxuICAgICAgICApLFxuICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgdmlzaXRhbnRlOiB2aXNpdGFudGUsXG4gICAgICAgIH0sXG4gICAgICB9KVxuICAgICAgLm9uQ2xvc2UucGlwZShcbiAgICAgICAgdGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSksXG4gICAgICAgIGZpbHRlcigodmFsdWUpID0+ICEhdmFsdWUpXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCh2aXNpdG9yQ3JlZGVudGlhbENhcmQ6IGFueSkgPT4gXG4gICAgICB0aGlzLmFkaWNpb25hQ3JlZGVuY2lhbFBhcmFFbnRyZWdhcih2aXNpdG9yQ3JlZGVudGlhbENhcmQpKTtcbiAgfVxuXG4gIHByaXZhdGUgYWRpY2lvbmFDcmVkZW5jaWFsUGFyYUVudHJlZ2FyKHZpc2l0b3JDcmVkZW50aWFsQ2FyZDogYW55KSB7XG4gICAgY29uc3QgdmlzaXRvcldpdGhDcmVkZW5jaWFsID0gdGhpcy52aXNpdG9ycy5maW5kKFxuICAgICAgKHZpc2l0b3IpID0+IHZpc2l0b3IudmlzaXRvci5kb2N1bWVudCA9PT0gdmlzaXRvckNyZWRlbnRpYWxDYXJkLnZpc2l0b3IuZG9jdW1lbnRcbiAgICApO1xuXG4gICAgaWYgKHZpc2l0b3JXaXRoQ3JlZGVuY2lhbCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLnZpc2l0b3JzLnB1c2goe1xuICAgICAgICB2aXNpdG9yOiB2aXNpdG9yQ3JlZGVudGlhbENhcmQudmlzaXRvcixcbiAgICAgICAgY3JlZGVudGlhbENhcmRzOiBbdGhpcy5jcmVhdGVDcmVkZW50aWFsQ2FyZCh2aXNpdG9yQ3JlZGVudGlhbENhcmQpXSxcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB2aXNpdG9yV2l0aENyZWRlbmNpYWwuY3JlZGVudGlhbENhcmRzLnB1c2godGhpcy5jcmVhdGVDcmVkZW50aWFsQ2FyZCh2aXNpdG9yQ3JlZGVudGlhbENhcmQpKTtcbiAgICB9XG4gICAgdGhpcy5oYXNDaGFuZ2UuZW1pdCh0cnVlKTtcbiAgfVxuXG4gIHB1YmxpYyBlZGl0YXJWaXNpdGFudGUodmlzaXRhbnRlOiBWaXNpdG9yKSB7XG4gICAgdGhpcy5jcmlhck91QXR1YWxpemFyVmlzaXRhbnRlKHZpc2l0YW50ZSk7XG4gIH1cblxuICBwdWJsaWMgZGVsZXRhclZpc2l0YW50ZSh2aXNpdGFudGU6IFZpc2l0b3IpIHtcbiAgICB0aGlzLnZpc2l0YW50ZUdyaWREYXRhLmZvckVhY2goKHZhbHVlLCBpbmRleCkgPT4ge1xuICAgICAgaWYgKHZhbHVlLmRvY3VtZW50ID09PSB2aXNpdGFudGUuZG9jdW1lbnQpIHtcbiAgICAgICAgdGhpcy52aXNpdGFudGVHcmlkRGF0YS5zcGxpY2UoaW5kZXgsIDEpO1xuXG4gICAgICAgIGNvbnN0IHJlbW92ZVZpc2l0b3IgPSB0aGlzLnZpc2l0b3JzLmZpbmRJbmRleCgodmlzaXRvcikgPT4gdmlzaXRvci52aXNpdG9yLmRvY3VtZW50ID09PSB2YWx1ZS5kb2N1bWVudCk7XG4gICAgICAgIGlmKHJlbW92ZVZpc2l0b3IgIT09IC0xKSB7XG4gICAgICAgICAgdGhpcy52aXNpdG9ycy5zcGxpY2UocmVtb3ZlVmlzaXRvciwgMSk7XG4gICAgICAgICAgdGhpcy5oYXNDaGFuZ2UuZW1pdCh0cnVlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGRlbGV0YXJDcmVkZW5jaWFpcyh2aWlzaXRvckNyZWRlbnRpYWw6IFZpc2l0b3JDcmVkZW50aWFsc0R0bykge1xuICAgIHZpaXNpdG9yQ3JlZGVudGlhbC5jcmVkZW50aWFsQ2FyZHMuc3BsaWNlKDAsIHZpaXNpdG9yQ3JlZGVudGlhbC5jcmVkZW50aWFsQ2FyZHMubGVuZ3RoKTtcbiAgICB0aGlzLmhhc0NoYW5nZS5lbWl0KHRydWUpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRDb250YXRvTW90b3Jpc3RhKG1vdG9yaXN0YTogTW90b3Jpc3RhKSB7XG4gICAgcmV0dXJuIG1vdG9yaXN0YS50ZWxlZm9uZSA9PT0gdW5kZWZpbmVkID8gXCIwXCIgOiBtb3RvcmlzdGEudGVsZWZvbmU7XG4gIH1cblxuICBwdWJsaWMgZ2V0Q3JlZGVudGlhbENhcmRzKHZpc2l0b3I6IFZpc2l0b3IpIHtcbiAgICBpZiAodGhpcy52aXNpdG9ycy5sZW5ndGggPD0gMCkge1xuICAgICAgcmV0dXJuIFtdO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLnZpc2l0b3JzXG4gICAgICAuZmluZChcbiAgICAgICAgKHZpc2l0b3JXaXRoQ3JlZGVudGlhbHMpID0+XG4gICAgICAgICAgdmlzaXRvcldpdGhDcmVkZW50aWFscy52aXNpdG9yLmRvY3VtZW50ID09PSB2aXNpdG9yLmRvY3VtZW50XG4gICAgICApXG4gICAgICAuY3JlZGVudGlhbENhcmRzLmZpbHRlcihcbiAgICAgICAgKGNyZWRlbnRpYWxDYXJkKSA9PiBPYmplY3Qua2V5cyhjcmVkZW50aWFsQ2FyZCkubGVuZ3RoICE9PSAwXG4gICAgICApXG4gICAgICAubWFwKChjcmVkZW50aWFsQ2FyZDogQ3JlZGVudGlhbENhcmQpID0+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBjYXJkVGVjaG5vbG9neTogdGhpcy5nZXRUZWNub2xvZ2lhQ3JhY2hhVHJhZHV6aWRhKFxuICAgICAgICAgICAgY3JlZGVudGlhbENhcmQuY2FyZFRlY2hub2xvZ3lcbiAgICAgICAgICApLFxuICAgICAgICAgIGNhcmROdW1iZXI6IGNyZWRlbnRpYWxDYXJkLmNhcmROdW1iZXIsXG4gICAgICAgICAgZW5kRGF0ZTogY3JlZGVudGlhbENhcmQuZW5kRGF0ZSxcbiAgICAgICAgfTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBjb25zdHJvaVZpc2l0YW50ZSh2aXNpdGFudGU6IFZpc2l0b3IpIHtcbiAgICBsZXQgdmlzaXRhbnRlRGF0YSA9IHsgZGF0YToge30gfTtcbiAgICBpZiAodmlzaXRhbnRlICE9PSB1bmRlZmluZWQgJiYgdmlzaXRhbnRlICE9PSBudWxsKSB7XG4gICAgICB2aXNpdGFudGVEYXRhID0ge1xuICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgaWQ6IHZpc2l0YW50ZS5pZCxcbiAgICAgICAgICBuYW1lOiB2aXNpdGFudGUubmFtZSxcbiAgICAgICAgICBkb2N1bWVudDogdmlzaXRhbnRlLmRvY3VtZW50LFxuICAgICAgICAgIGNvbnRhY3Q6IHZpc2l0YW50ZS5jb250YWN0LFxuICAgICAgICAgIHZpc2l0b3JTaXR1YXRpb246IHRoaXMuZ2V0VmlzaXRvclNpdHVhdGlvbihcbiAgICAgICAgICAgIHZpc2l0YW50ZS52aXNpdG9yU2l0dWF0aW9uXG4gICAgICAgICAgKSxcbiAgICAgICAgICBkb2N1bWVudFR5cGU6IHRoaXMuZ2V0RG9jdW1lbnRUeXBlKCksXG4gICAgICAgIH0sXG4gICAgICB9O1xuICAgIH1cbiAgICByZXR1cm4gdmlzaXRhbnRlRGF0YTtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlQ3JlZGVudGlhbENhcmQodmlzaXRvckNyZWRlbnRpYWxDYXJkOiBDcmVkZW50aWFsQ2FyZCk6IENyZWRlbnRpYWxDYXJkIHtcbiAgICByZXR1cm4ge1xuICAgICAgdmlzaXRvcjogdmlzaXRvckNyZWRlbnRpYWxDYXJkLmlkLFxuICAgICAgY2FyZFRlY2hub2xvZ3k6IHZpc2l0b3JDcmVkZW50aWFsQ2FyZC5jYXJkVGVjaG5vbG9neSxcbiAgICAgIGNhcmROdW1iZXI6IHZpc2l0b3JDcmVkZW50aWFsQ2FyZC5jYXJkTnVtYmVyLFxuICAgICAgZW5kRGF0ZTogdmlzaXRvckNyZWRlbnRpYWxDYXJkLmVuZERhdGUsXG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0VGVjbm9sb2dpYUNyYWNoYVRyYWR1emlkYShjYXJkVGVjaG5vbG9neTogQ2FyZFRlY2hub2xvZ3kpOiBzdHJpbmcge1xuICAgIGlmIChjYXJkVGVjaG5vbG9neSA9PT0gQ2FyZFRlY2hub2xvZ3kuQkFSQ09ERV9DQVJEKSB7XG4gICAgICByZXR1cm4gdGhpcy50cmFuc2xhdGUuaW5zdGFudChcbiAgICAgICAgXCJ5bXMucGF0aW8uY2FydGFvX2NyZWRlbmNpYWxfY29kaWdvX2JhcnJhc1wiXG4gICAgICApO1xuICAgIH1cblxuICAgIGlmIChjYXJkVGVjaG5vbG9neSA9PT0gQ2FyZFRlY2hub2xvZ3kuUkZJRF9DQVJEKSB7XG4gICAgICByZXR1cm4gdGhpcy50cmFuc2xhdGUuaW5zdGFudChcInltcy5wYXRpby5jYXJ0YW9fY3JlZGVuY2lhbF9yZmlkXCIpO1xuICAgIH1cblxuICAgIGlmIChjYXJkVGVjaG5vbG9neSA9PT0gQ2FyZFRlY2hub2xvZ3kuU01BUlRfQ0FSRCkge1xuICAgICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoXCJ5bXMucGF0aW8uY2FydGFvX2NyZWRlbmNpYWxfc21hcnRcIik7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBnZXRWaXNpdG9yU2l0dWF0aW9uKHZpc2l0b3JTaXR1YXRpb246IFZpc2l0b3JTaXR1YXRpb24pIHtcbiAgICByZXR1cm4gdmlzaXRvclNpdHVhdGlvbiA9PT0gdW5kZWZpbmVkXG4gICAgICA/IFZpc2l0b3JTaXR1YXRpb24uQ0hFQ0tfSU5fUEVORElOR1xuICAgICAgOiB2aXNpdG9yU2l0dWF0aW9uO1xuICB9XG5cbiAgcHJpdmF0ZSBjb25zdHJvaUNhbXBvc1RhYmVsYVZpc3RhbnRlKCkge1xuICAgIHRoaXMudmlzaXRhbnRlR3JpZENvbHVtbnMgPSBbXG4gICAgICB7XG4gICAgICAgIGZpZWxkOiBcIm5hbWVcIixcbiAgICAgICAgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFwieW1zLnBhdGlvLm1vdG9yaXN0YV92aXNpdGFudGVfbm9tZVwiKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGZpZWxkOiBcImRvY3VtZW50XCIsXG4gICAgICAgIGhlYWRlcjogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcbiAgICAgICAgICBcInltcy5wYXRpby5tb3RvcmlzdGFfdmlzaXRhbnRlX2RvY3VtZW50b1wiXG4gICAgICAgICksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBmaWVsZDogXCJjb250YWN0XCIsXG4gICAgICAgIGhlYWRlcjogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcInltcy5wYXRpby5tb3RvcmlzdGFfdmlzaXRhbnRlX2NvbnRhdG9cIiksXG4gICAgICB9LFxuICAgIF07XG4gIH1cblxuICBwcml2YXRlIGdldERvY3VtZW50VHlwZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiBcImNwZlwiO1xuICB9XG59Il19
|
|
@@ -25,6 +25,9 @@ var BalancasService = /** @class */ (function (_super) {
|
|
|
25
25
|
BalancasService.prototype.fallbackCall = function (balanca, peso) {
|
|
26
26
|
return this.http.post(this.urlBalanca + "actions/manualWeight", { code: balanca, weight: peso }).pipe(this.defaultCatch());
|
|
27
27
|
};
|
|
28
|
+
BalancasService.prototype.getStabilizedWeight = function (code) {
|
|
29
|
+
return this.http.post(this.urlBalanca + "queries/getStabilizedWeight", { code: code }).pipe(this.defaultCatch());
|
|
30
|
+
};
|
|
28
31
|
BalancasService.prototype.getWeightScaleByCode = function (code) {
|
|
29
32
|
var params = {
|
|
30
33
|
displayFields: ["description", "code"],
|
|
@@ -41,4 +44,4 @@ var BalancasService = /** @class */ (function (_super) {
|
|
|
41
44
|
return BalancasService;
|
|
42
45
|
}(Service));
|
|
43
46
|
export { BalancasService };
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFsYW5jYXMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzZW5pb3JzaXN0ZW1hcy95bXMtaW50ZWdyYXRpb24vIiwic291cmNlcyI6WyJzcmMvZGV2aWNlcy9iYWxhbmNhcy9iYWxhbmNhcy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLE9BQU8sRUFBYyxNQUFNLGVBQWUsQ0FBQztBQUNwRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzdDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHM0M7SUFBcUMsMkNBQU87SUFHeEMseUJBQW9CLElBQWdCLEVBQVksY0FBOEI7UUFBOUUsWUFDSSxrQkFBTSxjQUFjLENBQUMsU0FDeEI7UUFGbUIsVUFBSSxHQUFKLElBQUksQ0FBWTtRQUFZLG9CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUY3RCxvQkFBYyxHQUFHLGtCQUFrQixDQUFDO1FBQ3BDLGdCQUFVLEdBQUcsY0FBYyxDQUFDOztJQUc3QyxDQUFDO0lBQ0QsOENBQW9CLEdBQXBCLFVBQXFCLE1BQWM7UUFDL0IsSUFBTSxNQUFNLEdBQWU7WUFDdkIsYUFBYSxFQUFFLENBQUMsYUFBYSxFQUFFLE1BQU0sQ0FBQztZQUN0QyxJQUFJLEVBQUUsQ0FBQztZQUNQLElBQUksRUFBRSxJQUFJO1lBQ1YsV0FBVyxFQUFFLGlCQUFlLE1BQU0sTUFBRztTQUN4QyxDQUFBO1FBQ0QsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBSSxJQUFJLENBQUMsY0FBYyx5QkFBc0IsRUFDN0QsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUE7SUFDOUUsQ0FBQztJQUVELHNDQUFZLEdBQVosVUFBYSxPQUFlLEVBQUUsSUFBWTtRQUN0QyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFJLElBQUksQ0FBQyxVQUFVLHlCQUFzQixFQUFFLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUM7SUFDL0gsQ0FBQztJQUVELDZDQUFtQixHQUFuQixVQUFxQixJQUFZO1FBQzdCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUksSUFBSSxDQUFDLFVBQVUsZ0NBQTZCLEVBQUUsRUFBRSxJQUFJLE1BQUEsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDO0lBQy9HLENBQUM7SUFFRCw4Q0FBb0IsR0FBcEIsVUFBcUIsSUFBWTtRQUM3QixJQUFNLE1BQU0sR0FBZTtZQUN2QixhQUFhLEVBQUUsQ0FBQyxhQUFhLEVBQUUsTUFBTSxDQUFDO1lBQ3RDLElBQUksRUFBRSxDQUFDO1lBQ1AsSUFBSSxFQUFFLEVBQUU7WUFDUixXQUFXLEVBQUUsY0FBWSxJQUFJLE1BQUc7U0FDbkMsQ0FBQztRQUNGLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUksSUFBSSxDQUFDLGNBQWMseUJBQXNCLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUM7SUFDOUksQ0FBQztJQWpDUSxlQUFlO1FBRDNCLFVBQVUsRUFBRTtpREFJaUIsVUFBVSxFQUE0QixjQUFjO09BSHJFLGVBQWUsQ0FrQzNCO0lBQUQsc0JBQUM7Q0FBQSxBQWxDRCxDQUFxQyxPQUFPLEdBa0MzQztTQWxDWSxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gXCJAYW5ndWxhci9jb21tb24vaHR0cFwiO1xuaW1wb3J0IHsgU2VydmljZSwgTGlzdFBhcmFtcyB9IGZyb20gXCIuLi8uLi9zZXJ2aWNlXCI7XG5pbXBvcnQgeyBNZXNzYWdlU2VydmljZSB9IGZyb20gXCJwcmltZW5nL2FwaVwiO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBCYWxhbmNhc1NlcnZpY2UgZXh0ZW5kcyBTZXJ2aWNlIHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHVybEludGVncmF0aW9uID0gYHltcy9pbnRlZ3JhdGlvbi9gO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgdXJsQmFsYW5jYSA9IGB5bXMvYmFsYW5jYS9gO1xuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cDogSHR0cENsaWVudCwgcHJvdGVjdGVkIG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSkge1xuICAgICAgICBzdXBlcihtZXNzYWdlU2VydmljZSk7XG4gICAgfVxuICAgIGdldFdlaWdodFNjYWxlQnlBcmVhKGFyZWFJZDogc3RyaW5nKSB7XG4gICAgICAgIGNvbnN0IHBhcmFtczogTGlzdFBhcmFtcyA9IHtcbiAgICAgICAgICAgIGRpc3BsYXlGaWVsZHM6IFtcImRlc2NyaXB0aW9uXCIsIFwiY29kZVwiXSxcbiAgICAgICAgICAgIHBhZ2U6IDAsXG4gICAgICAgICAgICBzaXplOiAxMDAwLFxuICAgICAgICAgICAgZmlsdGVyUXVlcnk6IGBhcmVhLmlkIGVxICcke2FyZWFJZH0nYFxuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KGAke3RoaXMudXJsSW50ZWdyYXRpb259ZW50aXRpZXMvd2VpZ2h0U2NhbGVgLFxuICAgICAgICAgICAgeyBwYXJhbXM6IHRoaXMuZ2V0TGlzdFF1ZXJ5UGFyYW1zKHBhcmFtcykgfSkucGlwZSh0aGlzLmRlZmF1bHRDYXRjaCgpKVxuICAgIH1cblxuICAgIGZhbGxiYWNrQ2FsbChiYWxhbmNhOiBzdHJpbmcsIHBlc286IG51bWJlcikge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoYCR7dGhpcy51cmxCYWxhbmNhfWFjdGlvbnMvbWFudWFsV2VpZ2h0YCwgeyBjb2RlOiBiYWxhbmNhLCB3ZWlnaHQ6IHBlc28gfSkucGlwZSh0aGlzLmRlZmF1bHRDYXRjaCgpKTtcbiAgICB9XG5cbiAgICBnZXRTdGFiaWxpemVkV2VpZ2h0IChjb2RlOiBzdHJpbmcpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KGAke3RoaXMudXJsQmFsYW5jYX1xdWVyaWVzL2dldFN0YWJpbGl6ZWRXZWlnaHRgLCB7IGNvZGUgfSkucGlwZSh0aGlzLmRlZmF1bHRDYXRjaCgpKTtcbiAgICB9XG5cbiAgICBnZXRXZWlnaHRTY2FsZUJ5Q29kZShjb2RlOiBzdHJpbmcpIHtcbiAgICAgICAgY29uc3QgcGFyYW1zOiBMaXN0UGFyYW1zID0ge1xuICAgICAgICAgICAgZGlzcGxheUZpZWxkczogW1wiZGVzY3JpcHRpb25cIiwgXCJjb2RlXCJdLFxuICAgICAgICAgICAgcGFnZTogMCxcbiAgICAgICAgICAgIHNpemU6IDEwLFxuICAgICAgICAgICAgZmlsdGVyUXVlcnk6IGBjb2RlIGVxICcke2NvZGV9J2BcbiAgICAgICAgfTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoYCR7dGhpcy51cmxJbnRlZ3JhdGlvbn1lbnRpdGllcy93ZWlnaHRTY2FsZWAsIHsgcGFyYW1zOiB0aGlzLmdldExpc3RRdWVyeVBhcmFtcyhwYXJhbXMpIH0pLnBpcGUodGhpcy5kZWZhdWx0Q2F0Y2goKSk7XG4gICAgfVxufSJdfQ==
|
|
@@ -3,10 +3,7 @@ import { Component, Input } from "@angular/core";
|
|
|
3
3
|
import { ControleCircuito, ControleOperacao } from "@seniorsistemas/yms-routines";
|
|
4
4
|
import { BalancasService } from "../balancas.service";
|
|
5
5
|
import { Subject, BehaviorSubject } from "rxjs";
|
|
6
|
-
import { takeUntil, finalize
|
|
7
|
-
import { StompService } from "@stomp/ng2-stompjs";
|
|
8
|
-
import { CookieService } from "ngx-cookie-service";
|
|
9
|
-
import { IntegrationWebSocket } from "../../../websocket";
|
|
6
|
+
import { takeUntil, finalize } from "rxjs/operators";
|
|
10
7
|
var VisualizarBalancaDescritor = /** @class */ (function () {
|
|
11
8
|
function VisualizarBalancaDescritor() {
|
|
12
9
|
}
|
|
@@ -25,13 +22,10 @@ var VisualizarBalancaDescritor = /** @class */ (function () {
|
|
|
25
22
|
export { VisualizarBalancaDescritor };
|
|
26
23
|
var VisualizarBalancaComponent = /** @class */ (function (_super) {
|
|
27
24
|
tslib_1.__extends(VisualizarBalancaComponent, _super);
|
|
28
|
-
function VisualizarBalancaComponent(service
|
|
25
|
+
function VisualizarBalancaComponent(service) {
|
|
29
26
|
var _this = _super.call(this) || this;
|
|
30
27
|
_this.service = service;
|
|
31
|
-
_this.client = client;
|
|
32
|
-
_this.cookieService = cookieService;
|
|
33
28
|
_this.loading = false;
|
|
34
|
-
_this.websocket = new IntegrationWebSocket(_this.client, _this.cookieService, 'integration');
|
|
35
29
|
_this.unsubscribe$ = new Subject();
|
|
36
30
|
_this.weightScales$ = new BehaviorSubject([]);
|
|
37
31
|
_this.weightScaleValues = new Map();
|
|
@@ -49,19 +43,10 @@ var VisualizarBalancaComponent = /** @class */ (function (_super) {
|
|
|
49
43
|
_this.weightScales$.next(contents);
|
|
50
44
|
contents.forEach(function (value) {
|
|
51
45
|
_this.weightScaleValues.set(value.id, 0);
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
.pipe(map(function (message) { return message.body; }), map(function (body) { return JSON.parse(body).data; }), takeUntil(_this.unsubscribe$))
|
|
57
|
-
.subscribe(function (payload) {
|
|
58
|
-
if (!_this.weightScales$.value.length)
|
|
59
|
-
return;
|
|
60
|
-
var index = _this.weightScales$.value.findIndex(function (value) { return value.id === payload.weightScale.id; });
|
|
61
|
-
if (index < 0)
|
|
62
|
-
return;
|
|
63
|
-
var find = _this.weightScales$.value[index];
|
|
64
|
-
_this.weightScaleValues.set(find.id, payload.weight);
|
|
46
|
+
_this.service.getStabilizedWeight(value.code)
|
|
47
|
+
.subscribe(function (stabilized) {
|
|
48
|
+
_this.weightScaleValues.set(value.id, stabilized.weight);
|
|
49
|
+
});
|
|
65
50
|
});
|
|
66
51
|
});
|
|
67
52
|
};
|
|
@@ -78,11 +63,9 @@ var VisualizarBalancaComponent = /** @class */ (function (_super) {
|
|
|
78
63
|
selector: 'visualizar-balanca-component',
|
|
79
64
|
template: "<div *sLoadingState=\"loading\">\n <p-table [value]=\"weightScales$ | async\">\n <ng-template pTemplate=\"header\">\n <tr>\n <th>C\u00F3digo</th>\n <th>Descri\u00E7\u00E3o</th>\n <th>Peso</th>\n </tr>\n </ng-template>\n <ng-template let-rowData pTemplate=\"body\">\n <tr>\n <td>{{rowData.code}}</td>\n <td>{{rowData.description}}</td>\n <td>{{weightScaleValues.get(rowData.id)}}</td>\n </tr>\n </ng-template>\n </p-table>\n</div>"
|
|
80
65
|
}),
|
|
81
|
-
tslib_1.__metadata("design:paramtypes", [BalancasService
|
|
82
|
-
StompService,
|
|
83
|
-
CookieService])
|
|
66
|
+
tslib_1.__metadata("design:paramtypes", [BalancasService])
|
|
84
67
|
], VisualizarBalancaComponent);
|
|
85
68
|
return VisualizarBalancaComponent;
|
|
86
69
|
}(VisualizarBalancaDescritor));
|
|
87
70
|
export { VisualizarBalancaComponent };
|
|
88
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
71
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlzdWFsaXphci1iYWxhbmNhLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzZW5pb3JzaXN0ZW1hcy95bXMtaW50ZWdyYXRpb24vIiwic291cmNlcyI6WyJzcmMvZGV2aWNlcy9iYWxhbmNhcy92aXN1YWxpYXItYmFsYW5jYS92aXN1YWxpemFyLWJhbGFuY2EuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFxQixLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGdCQUFnQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbEYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2hELE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFXckQ7SUFBQTtJQUF5QyxDQUFDO0lBQTdCLDBCQUEwQjtRQVJ0QyxnQkFBZ0IsQ0FBQztZQUNkLE1BQU0sRUFBRSxVQUFVO1lBQ2xCLElBQUksRUFBRSx3QkFBd0I7U0FDakMsQ0FBQztRQUNELGdCQUFnQixDQUFDO1lBQ2QsTUFBTSxFQUFFLFVBQVU7WUFDbEIsSUFBSSxFQUFFLHdCQUF3QjtTQUNqQyxDQUFDO09BQ1csMEJBQTBCLENBQUc7SUFBRCxpQ0FBQztDQUFBLEFBQTFDLElBQTBDO1NBQTdCLDBCQUEwQjtBQU12QztJQUFnRCxzREFBMEI7SUFPdEUsb0NBQTZCLE9BQXdCO1FBQXJELFlBQ0ksaUJBQU8sU0FJVjtRQUw0QixhQUFPLEdBQVAsT0FBTyxDQUFpQjtRQUxyRCxhQUFPLEdBQUcsS0FBSyxDQUFDO1FBT1osS0FBSSxDQUFDLFlBQVksR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO1FBQ2xDLEtBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxlQUFlLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDN0MsS0FBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksR0FBRyxFQUFFLENBQUM7O0lBQ3ZDLENBQUM7SUFDRCw2Q0FBUSxHQUFSO1FBQUEsaUJBZ0JDO1FBZkcsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUI7WUFBRSxPQUFPO1FBQ3BDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxPQUFPLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7YUFDNUQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsUUFBUSxDQUFDLGNBQU0sT0FBQSxLQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssRUFBcEIsQ0FBb0IsQ0FBQyxDQUFDO2FBQ3hFLFNBQVMsQ0FBQyxVQUFDLEVBQWlCO2dCQUFmLHNCQUFRO1lBQ2xCLEtBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ2xDLFFBQVEsQ0FBQyxPQUFPLENBQUMsVUFBQyxLQUFrQjtnQkFDaEMsS0FBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUN4QyxLQUFJLENBQUMsT0FBTyxDQUFDLG1CQUFtQixDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUM7cUJBQzNDLFNBQVMsQ0FBQyxVQUFDLFVBQWdCO29CQUN4QixLQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLEVBQUUsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUM1RCxDQUFDLENBQUMsQ0FBQztZQUNQLENBQUMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQyxDQUFDLENBQUM7SUFFWCxDQUFDO0lBQ0QsZ0RBQVcsR0FBWDtRQUNJLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDekIsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNqQyxDQUFDO0lBaENRO1FBQVIsS0FBSyxFQUFFOzt5RUFBd0I7SUFEdkIsMEJBQTBCO1FBSnRDLFNBQVMsQ0FBQztZQUNQLFFBQVEsRUFBRSw4QkFBOEI7WUFDeEMsaW1CQUFrRDtTQUNyRCxDQUFDO2lEQVF3QyxlQUFlO09BUDVDLDBCQUEwQixDQW1DdEM7SUFBRCxpQ0FBQztDQUFBLEFBbkNELENBQWdELDBCQUEwQixHQW1DekU7U0FuQ1ksMEJBQTBCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIE9uRGVzdHJveSwgSW5wdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgQ29udHJvbGVDaXJjdWl0bywgQ29udHJvbGVPcGVyYWNhbyB9IGZyb20gXCJAc2VuaW9yc2lzdGVtYXMveW1zLXJvdXRpbmVzXCI7XG5pbXBvcnQgeyBCYWxhbmNhc1NlcnZpY2UgfSBmcm9tIFwiLi4vYmFsYW5jYXMuc2VydmljZVwiO1xuaW1wb3J0IHsgU3ViamVjdCwgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7IHRha2VVbnRpbCwgZmluYWxpemUgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcbmltcG9ydCB7IFdlaWdodFNjYWxlIH0gZnJvbSBcIi4uL3dlaWdodFNjYWxlXCI7XG5cbkBDb250cm9sZUNpcmN1aXRvKHtcbiAgICBoZWFkZXI6ICdCYWxhbsOnYXMnLFxuICAgIG5hbWU6ICd5bXMuaW50ZWdyYWNhby5kZXZpY2VzJ1xufSlcbkBDb250cm9sZU9wZXJhY2FvKHtcbiAgICBoZWFkZXI6ICdCYWxhbsOnYXMnLFxuICAgIG5hbWU6ICd5bXMuaW50ZWdyYWNhby5kZXZpY2VzJ1xufSlcbmV4cG9ydCBjbGFzcyBWaXN1YWxpemFyQmFsYW5jYURlc2NyaXRvciB7fVxuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3Zpc3VhbGl6YXItYmFsYW5jYS1jb21wb25lbnQnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi92aXN1YWxpemFyLWJhbGFuY2EuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIFZpc3VhbGl6YXJCYWxhbmNhQ29tcG9uZW50IGV4dGVuZHMgVmlzdWFsaXphckJhbGFuY2FEZXNjcml0b3IgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gICAgQElucHV0KCkgc2VxdWVuY2lhQ2lyY3VpdG86IGFueTtcbiAgICBsb2FkaW5nID0gZmFsc2U7XG4gICAgd2VpZ2h0U2NhbGVzJDogQmVoYXZpb3JTdWJqZWN0PFdlaWdodFNjYWxlW10+O1xuICAgIHdlaWdodFNjYWxlVmFsdWVzOiBNYXA8c3RyaW5nLCBudW1iZXI+O1xuICAgIHByaXZhdGUgcmVhZG9ubHkgdW5zdWJzY3JpYmUkOiBTdWJqZWN0PHZvaWQ+O1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBzZXJ2aWNlOiBCYWxhbmNhc1NlcnZpY2UpIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICAgICAgdGhpcy51bnN1YnNjcmliZSQgPSBuZXcgU3ViamVjdCgpO1xuICAgICAgICB0aGlzLndlaWdodFNjYWxlcyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KFtdKTtcbiAgICAgICAgdGhpcy53ZWlnaHRTY2FsZVZhbHVlcyA9IG5ldyBNYXAoKTtcbiAgICB9XG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIGlmICghdGhpcy5zZXF1ZW5jaWFDaXJjdWl0bykgcmV0dXJuO1xuICAgICAgICB0aGlzLmxvYWRpbmcgPSB0cnVlO1xuICAgICAgICB0aGlzLnNlcnZpY2UuZ2V0V2VpZ2h0U2NhbGVCeUFyZWEodGhpcy5zZXF1ZW5jaWFDaXJjdWl0by5hcmVhLmlkKVxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMudW5zdWJzY3JpYmUkKSwgZmluYWxpemUoKCkgPT4gdGhpcy5sb2FkaW5nID0gZmFsc2UpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoeyBjb250ZW50cyB9OiBhbnkpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLndlaWdodFNjYWxlcyQubmV4dChjb250ZW50cyk7XG4gICAgICAgICAgICAgICAgY29udGVudHMuZm9yRWFjaCgodmFsdWU6IFdlaWdodFNjYWxlKSA9PiB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICB0aGlzLndlaWdodFNjYWxlVmFsdWVzLnNldCh2YWx1ZS5pZCwgMCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2VydmljZS5nZXRTdGFiaWxpemVkV2VpZ2h0KHZhbHVlLmNvZGUpXG4gICAgICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKHN0YWJpbGl6ZWQgOiBhbnkpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMud2VpZ2h0U2NhbGVWYWx1ZXMuc2V0KHZhbHVlLmlkLCBzdGFiaWxpemVkLndlaWdodCk7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSk7XG5cbiAgICB9XG4gICAgbmdPbkRlc3Ryb3koKSB7XG4gICAgICAgIHRoaXMudW5zdWJzY3JpYmUkLm5leHQoKTtcbiAgICAgICAgdGhpcy51bnN1YnNjcmliZSQuY29tcGxldGUoKTtcbiAgICB9XG4gICAgXG59XG4iXX0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2VpZ2h0U2NhbGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yc2lzdGVtYXMveW1zLWludGVncmF0aW9uLyIsInNvdXJjZXMiOlsic3JjL2RldmljZXMvYmFsYW5jYXMvd2VpZ2h0U2NhbGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgV2VpZ2h0U2NhbGUge1xuICAgIGlkPzogc3RyaW5nO1xuICAgIGRlc2NyaXB0aW9uOiBzdHJpbmc7XG4gICAgY29kZTogc3RyaW5nO1xuICAgIGFyZWE6IGFueTtcbn0iXX0=
|