@senior-agronegocio/angular-components 0.0.9871 → 0.0.9873
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/senior-agronegocio-angular-components.umd.js +702 -893
- package/bundles/senior-agronegocio-angular-components.umd.js.map +1 -1
- package/bundles/senior-agronegocio-angular-components.umd.min.js +2 -2
- package/bundles/senior-agronegocio-angular-components.umd.min.js.map +1 -1
- package/components/event-control-board/service/e001pes/e001pes.service.d.ts +2 -2
- package/components/event-control-board/service/e001tns/e001tns.service.d.ts +2 -2
- package/components/event-control-board/service/e012fam/e012fam.service.d.ts +2 -2
- package/components/event-control-board/service/e070emp/e070emp.service.d.ts +2 -2
- package/components/event-control-board/service/e070fil/e070fil.service.d.ts +2 -2
- package/components/event-control-board/service/e075der/e075der.service.d.ts +2 -2
- package/components/event-control-board/service/e205dep/e205dep.service.d.ts +2 -2
- package/components/event-control-board/service/event-control/event-control.service.d.ts +2 -2
- package/components/event-control-board/service/event-control-item/event-control-item.service.d.ts +2 -2
- package/components/event-control-board/service/external-invoice/external-invoice.service.d.ts +2 -2
- package/components/event-control-board/service/fixation-entity/fixation.service.d.ts +2 -2
- package/components/event-control-board/service/invoice/invoice.service.d.ts +2 -2
- package/components/event-control-board/service/origination/origination.service.d.ts +2 -2
- package/components/event-control-board/service/rural-estate/rural-estate.service.d.ts +2 -2
- package/components/event-control-board/service/ticket/ticket.service.d.ts +2 -2
- package/components/event-control-board/service/transfer/transfer.service.d.ts +2 -2
- package/components/financial-title-table/services/financial/agro-financial.service.d.ts +1 -1
- package/components/modal-invoice-pj/for-fixation/modal-invoice-pj-for-fixation.component.d.ts +8 -7
- package/components/modal-invoice-pj/for-origination/modal-invoice-pj-for-origination.component.d.ts +8 -6
- package/components/modal-invoice-pj/for-transfer/modal-invoice-pj-for-transfer.component.d.ts +8 -17
- package/components/modal-invoice-pj/modal-invoice-pj-base.class.d.ts +9 -7
- package/components/modal-invoice-pj/services/agro-invoice/agro-invoice.service.d.ts +1 -1
- package/esm2015/common/agro-logics.class.js +6 -5
- package/esm2015/common/agro-unit-converter.class.js +1 -2
- package/esm2015/components/event-control-board/common/event-control-constants.js +2 -2
- package/esm2015/components/event-control-board/event-control-board.component.js +2 -2
- package/esm2015/components/event-control-board/service/e001pes/e001pes.service.js +3 -3
- package/esm2015/components/event-control-board/service/e001tns/e001tns.service.js +3 -3
- package/esm2015/components/event-control-board/service/e012fam/e012fam.service.js +3 -3
- package/esm2015/components/event-control-board/service/e070emp/e070emp.service.js +3 -3
- package/esm2015/components/event-control-board/service/e070fil/e070fil.service.js +3 -3
- package/esm2015/components/event-control-board/service/e075der/e075der.service.js +3 -3
- package/esm2015/components/event-control-board/service/e205dep/e205dep.service.js +3 -3
- package/esm2015/components/event-control-board/service/event-control/event-control.service.js +3 -3
- package/esm2015/components/event-control-board/service/event-control-item/event-control-item.service.js +3 -3
- package/esm2015/components/event-control-board/service/external-invoice/external-invoice.service.js +3 -3
- package/esm2015/components/event-control-board/service/fixation-entity/fixation.service.js +3 -3
- package/esm2015/components/event-control-board/service/invoice/invoice.service.js +3 -3
- package/esm2015/components/event-control-board/service/origination/origination.service.js +3 -3
- package/esm2015/components/event-control-board/service/rural-estate/rural-estate.service.js +3 -3
- package/esm2015/components/event-control-board/service/ticket/ticket.service.js +3 -3
- package/esm2015/components/event-control-board/service/transfer/transfer.service.js +3 -3
- package/esm2015/components/financial-title-table/services/financial/agro-financial.service.js +2 -2
- package/esm2015/components/modal-invoice-pj/for-fixation/modal-invoice-pj-for-fixation.component.js +15 -13
- package/esm2015/components/modal-invoice-pj/for-origination/modal-invoice-pj-for-origination.component.js +13 -10
- package/esm2015/components/modal-invoice-pj/for-transfer/modal-invoice-pj-for-transfer.component.js +13 -36
- package/esm2015/components/modal-invoice-pj/modal-invoice-pj-base.class.js +13 -10
- package/esm2015/components/modal-invoice-pj/services/agro-invoice/agro-invoice.service.js +2 -2
- package/esm2015/services/agro-entity-service.js +132 -0
- package/esm2015/services/i18n/en-US.js +276 -294
- package/esm2015/services/i18n/es-CO.js +283 -294
- package/esm2015/services/i18n/pt-BR.js +70 -81
- package/esm2015/services/producer-invoice/producer-invoice.service.js +2 -2
- package/esm5/common/agro-logics.class.js +6 -5
- package/esm5/common/agro-unit-converter.class.js +1 -2
- package/esm5/components/event-control-board/common/event-control-constants.js +2 -2
- package/esm5/components/event-control-board/event-control-board.component.js +2 -2
- package/esm5/components/event-control-board/service/e001pes/e001pes.service.js +3 -3
- package/esm5/components/event-control-board/service/e001tns/e001tns.service.js +3 -3
- package/esm5/components/event-control-board/service/e012fam/e012fam.service.js +3 -3
- package/esm5/components/event-control-board/service/e070emp/e070emp.service.js +3 -3
- package/esm5/components/event-control-board/service/e070fil/e070fil.service.js +3 -3
- package/esm5/components/event-control-board/service/e075der/e075der.service.js +3 -3
- package/esm5/components/event-control-board/service/e205dep/e205dep.service.js +3 -3
- package/esm5/components/event-control-board/service/event-control/event-control.service.js +3 -3
- package/esm5/components/event-control-board/service/event-control-item/event-control-item.service.js +3 -3
- package/esm5/components/event-control-board/service/external-invoice/external-invoice.service.js +3 -3
- package/esm5/components/event-control-board/service/fixation-entity/fixation.service.js +3 -3
- package/esm5/components/event-control-board/service/invoice/invoice.service.js +3 -3
- package/esm5/components/event-control-board/service/origination/origination.service.js +3 -3
- package/esm5/components/event-control-board/service/rural-estate/rural-estate.service.js +3 -3
- package/esm5/components/event-control-board/service/ticket/ticket.service.js +3 -3
- package/esm5/components/event-control-board/service/transfer/transfer.service.js +3 -3
- package/esm5/components/financial-title-table/services/financial/agro-financial.service.js +2 -2
- package/esm5/components/modal-invoice-pj/for-fixation/modal-invoice-pj-for-fixation.component.js +15 -13
- package/esm5/components/modal-invoice-pj/for-origination/modal-invoice-pj-for-origination.component.js +13 -10
- package/esm5/components/modal-invoice-pj/for-transfer/modal-invoice-pj-for-transfer.component.js +13 -36
- package/esm5/components/modal-invoice-pj/modal-invoice-pj-base.class.js +13 -10
- package/esm5/components/modal-invoice-pj/services/agro-invoice/agro-invoice.service.js +2 -2
- package/esm5/services/agro-entity-service.js +143 -0
- package/esm5/services/i18n/en-US.js +276 -294
- package/esm5/services/i18n/es-CO.js +283 -294
- package/esm5/services/i18n/pt-BR.js +70 -81
- package/esm5/services/producer-invoice/producer-invoice.service.js +2 -2
- package/fesm2015/senior-agronegocio-angular-components.js +690 -872
- package/fesm2015/senior-agronegocio-angular-components.js.map +1 -1
- package/fesm5/senior-agronegocio-angular-components.js +703 -894
- package/fesm5/senior-agronegocio-angular-components.js.map +1 -1
- package/package.json +3 -3
- package/{components/event-control-board/service/entity-service.d.ts → services/agro-entity-service.d.ts} +3 -13
- package/services/i18n/en-US.d.ts +275 -293
- package/services/i18n/es-CO.d.ts +282 -293
- package/services/i18n/pt-BR.d.ts +69 -80
- package/services/producer-invoice/producer-invoice.service.d.ts +1 -1
- package/esm2015/components/event-control-board/service/entity-service.js +0 -127
- package/esm2015/services/entity-service.js +0 -132
- package/esm5/components/event-control-board/service/entity-service.js +0 -138
- package/esm5/services/entity-service.js +0 -143
- package/services/entity-service.d.ts +0 -73
|
@@ -2,8 +2,8 @@ import { HttpClient } from "@angular/common/http";
|
|
|
2
2
|
import { MessageService } from "primeng";
|
|
3
3
|
import { LibTranslationService as TranslateService } from "../../../../services/lib-translation.service";
|
|
4
4
|
import { E001pesDto } from "./e001pes-dto";
|
|
5
|
-
import {
|
|
6
|
-
export declare class E001pesService extends
|
|
5
|
+
import { AgroEntityService } from "../../../../services/agro-entity-service";
|
|
6
|
+
export declare class E001pesService extends AgroEntityService<E001pesDto> {
|
|
7
7
|
protected http: HttpClient;
|
|
8
8
|
protected messageService: MessageService;
|
|
9
9
|
protected translate: TranslateService;
|
|
@@ -2,8 +2,8 @@ import { HttpClient } from "@angular/common/http";
|
|
|
2
2
|
import { MessageService } from "primeng/api";
|
|
3
3
|
import { LibTranslationService as TranslateService } from "../../../../services/lib-translation.service";
|
|
4
4
|
import { E001TnsDto } from "./e001tns-dto";
|
|
5
|
-
import {
|
|
6
|
-
export declare class E001TnsService extends
|
|
5
|
+
import { AgroEntityService } from "../../../../services/agro-entity-service";
|
|
6
|
+
export declare class E001TnsService extends AgroEntityService<E001TnsDto> {
|
|
7
7
|
protected http: HttpClient;
|
|
8
8
|
protected messageService: MessageService;
|
|
9
9
|
protected translate: TranslateService;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { HttpClient } from "@angular/common/http";
|
|
2
2
|
import { MessageService } from "primeng";
|
|
3
3
|
import { LibTranslationService as TranslateService } from "../../../../services/lib-translation.service";
|
|
4
|
-
import {
|
|
4
|
+
import { AgroEntityService } from "../../../../services/agro-entity-service";
|
|
5
5
|
import { E012famDto } from "./e012fam-dto";
|
|
6
|
-
export declare class E012famService extends
|
|
6
|
+
export declare class E012famService extends AgroEntityService<E012famDto> {
|
|
7
7
|
protected http: HttpClient;
|
|
8
8
|
protected messageService: MessageService;
|
|
9
9
|
protected translate: TranslateService;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { HttpClient } from "@angular/common/http";
|
|
2
2
|
import { MessageService } from "primeng/api";
|
|
3
3
|
import { LibTranslationService as TranslateService } from "../../../../services/lib-translation.service";
|
|
4
|
-
import {
|
|
4
|
+
import { AgroEntityService, ListParams } from '../../../../services/agro-entity-service';
|
|
5
5
|
import { E070EmpDto } from "./e070emp-dto";
|
|
6
|
-
export declare class E070EmpService extends
|
|
6
|
+
export declare class E070EmpService extends AgroEntityService<E070EmpDto> {
|
|
7
7
|
protected http: HttpClient;
|
|
8
8
|
protected messageService: MessageService;
|
|
9
9
|
protected translate: TranslateService;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { HttpClient } from "@angular/common/http";
|
|
2
2
|
import { MessageService } from "primeng/api";
|
|
3
3
|
import { LibTranslationService as TranslateService } from "../../../../services/lib-translation.service";
|
|
4
|
-
import {
|
|
4
|
+
import { AgroEntityService, ListParams } from '../../../../services/agro-entity-service';
|
|
5
5
|
import { E070FilDto } from "./e070fil-dto";
|
|
6
|
-
export declare class E070FilService extends
|
|
6
|
+
export declare class E070FilService extends AgroEntityService<E070FilDto> {
|
|
7
7
|
protected http: HttpClient;
|
|
8
8
|
protected messageService: MessageService;
|
|
9
9
|
protected translate: TranslateService;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { HttpClient } from "@angular/common/http";
|
|
2
2
|
import { MessageService } from "primeng/api";
|
|
3
3
|
import { LibTranslationService as TranslateService } from "../../../../services/lib-translation.service";
|
|
4
|
-
import {
|
|
4
|
+
import { AgroEntityService } from "../../../../services/agro-entity-service";
|
|
5
5
|
import { E075DerDto } from "./e075der-dto";
|
|
6
|
-
export declare class E075DerService extends
|
|
6
|
+
export declare class E075DerService extends AgroEntityService<E075DerDto> {
|
|
7
7
|
protected http: HttpClient;
|
|
8
8
|
protected messageService: MessageService;
|
|
9
9
|
protected translate: TranslateService;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { HttpClient } from "@angular/common/http";
|
|
2
2
|
import { MessageService } from "primeng";
|
|
3
3
|
import { LibTranslationService as TranslateService } from "../../../../services/lib-translation.service";
|
|
4
|
-
import {
|
|
4
|
+
import { AgroEntityService } from "../../../../services/agro-entity-service";
|
|
5
5
|
import { E205depDto } from "./deposit-dto";
|
|
6
|
-
export declare class E205depService extends
|
|
6
|
+
export declare class E205depService extends AgroEntityService<E205depDto> {
|
|
7
7
|
protected http: HttpClient;
|
|
8
8
|
protected messageService: MessageService;
|
|
9
9
|
protected translate: TranslateService;
|
|
@@ -2,8 +2,8 @@ import { HttpClient } from '@angular/common/http';
|
|
|
2
2
|
import { MessageService } from 'primeng/api';
|
|
3
3
|
import { LibTranslationService as TranslateService } from "../../../../services/lib-translation.service";
|
|
4
4
|
import { EventControlDto } from '../event-control/event-control-dto';
|
|
5
|
-
import {
|
|
6
|
-
export declare class EventControlService extends
|
|
5
|
+
import { AgroEntityService } from '../../../../services/agro-entity-service';
|
|
6
|
+
export declare class EventControlService extends AgroEntityService<EventControlDto> {
|
|
7
7
|
protected http: HttpClient;
|
|
8
8
|
protected messageService: MessageService;
|
|
9
9
|
protected translate: TranslateService;
|
package/components/event-control-board/service/event-control-item/event-control-item.service.d.ts
CHANGED
|
@@ -2,8 +2,8 @@ import { HttpClient } from '@angular/common/http';
|
|
|
2
2
|
import { MessageService } from 'primeng/api';
|
|
3
3
|
import { LibTranslationService as TranslateService } from "../../../../services/lib-translation.service";
|
|
4
4
|
import { EventControlItemDto } from '../event-control-item/event-control-item-dto';
|
|
5
|
-
import {
|
|
6
|
-
export declare class EventControlItemService extends
|
|
5
|
+
import { AgroEntityService } from '../../../../services/agro-entity-service';
|
|
6
|
+
export declare class EventControlItemService extends AgroEntityService<EventControlItemDto> {
|
|
7
7
|
protected http: HttpClient;
|
|
8
8
|
protected messageService: MessageService;
|
|
9
9
|
protected translate: TranslateService;
|
package/components/event-control-board/service/external-invoice/external-invoice.service.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { HttpClient } from "@angular/common/http";
|
|
2
2
|
import { MessageService } from "primeng";
|
|
3
3
|
import { LibTranslationService as TranslateService } from "../../../../services/lib-translation.service";
|
|
4
|
-
import {
|
|
4
|
+
import { AgroEntityService } from "../../../../services/agro-entity-service";
|
|
5
5
|
import { ExternalInvoiceDto } from "./external-invoice-dto";
|
|
6
|
-
export declare class ExternalInvoiceService extends
|
|
6
|
+
export declare class ExternalInvoiceService extends AgroEntityService<ExternalInvoiceDto> {
|
|
7
7
|
protected http: HttpClient;
|
|
8
8
|
protected messageService: MessageService;
|
|
9
9
|
protected translate: TranslateService;
|
|
@@ -2,11 +2,11 @@ import { FixationDto } from './fixation-dto';
|
|
|
2
2
|
import { HttpClient } from '@angular/common/http';
|
|
3
3
|
import { MessageService } from 'primeng/api';
|
|
4
4
|
import { LibTranslationService as TranslateService } from "../../../../services/lib-translation.service";
|
|
5
|
-
import {
|
|
5
|
+
import { AgroEntityService } from '../../../../services/agro-entity-service';
|
|
6
6
|
export interface ICancelFixationPayload {
|
|
7
7
|
fixationId: string;
|
|
8
8
|
}
|
|
9
|
-
export declare class FixationService extends
|
|
9
|
+
export declare class FixationService extends AgroEntityService<FixationDto> {
|
|
10
10
|
protected http: HttpClient;
|
|
11
11
|
protected messageService: MessageService;
|
|
12
12
|
protected translate: TranslateService;
|
|
@@ -2,8 +2,8 @@ import { HttpClient } from '@angular/common/http';
|
|
|
2
2
|
import { MessageService } from 'primeng/api';
|
|
3
3
|
import { LibTranslationService as TranslateService } from "../../../../services/lib-translation.service";
|
|
4
4
|
import { InvoiceDto } from '../invoice/invoice-dto';
|
|
5
|
-
import {
|
|
6
|
-
export declare class InvoiceService extends
|
|
5
|
+
import { AgroEntityService } from '../../../../services/agro-entity-service';
|
|
6
|
+
export declare class InvoiceService extends AgroEntityService<InvoiceDto> {
|
|
7
7
|
protected http: HttpClient;
|
|
8
8
|
protected messageService: MessageService;
|
|
9
9
|
protected translate: TranslateService;
|
|
@@ -2,8 +2,8 @@ import { HttpClient } from "@angular/common/http";
|
|
|
2
2
|
import { MessageService } from "primeng";
|
|
3
3
|
import { LibTranslationService as TranslateService } from "../../../../services/lib-translation.service";
|
|
4
4
|
import { OriginationDto } from "../origination/origination-dto";
|
|
5
|
-
import {
|
|
6
|
-
export declare class OriginationService extends
|
|
5
|
+
import { AgroEntityService } from "../../../../services/agro-entity-service";
|
|
6
|
+
export declare class OriginationService extends AgroEntityService<OriginationDto> {
|
|
7
7
|
protected http: HttpClient;
|
|
8
8
|
protected messageService: MessageService;
|
|
9
9
|
protected translate: TranslateService;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { HttpClient } from '@angular/common/http';
|
|
2
2
|
import { MessageService } from 'primeng/api';
|
|
3
3
|
import { RuralEstateDto } from '../rural-estate/rural-estate-dto';
|
|
4
|
-
import {
|
|
4
|
+
import { AgroEntityService } from '../../../../services/agro-entity-service';
|
|
5
5
|
import { LibTranslationService } from '../../../../services/lib-translation.service';
|
|
6
|
-
export declare class RuralEstateService extends
|
|
6
|
+
export declare class RuralEstateService extends AgroEntityService<RuralEstateDto> {
|
|
7
7
|
protected http: HttpClient;
|
|
8
8
|
protected messageService: MessageService;
|
|
9
9
|
protected translate: LibTranslationService;
|
|
@@ -2,7 +2,7 @@ import { HttpClient } from '@angular/common/http';
|
|
|
2
2
|
import { MessageService } from 'primeng/api';
|
|
3
3
|
import { LibTranslationService as TranslateService } from "../../../../services/lib-translation.service";
|
|
4
4
|
import { TicketDto } from '../ticket/ticket-dto';
|
|
5
|
-
import {
|
|
5
|
+
import { AgroEntityService } from '../../../../services/agro-entity-service';
|
|
6
6
|
import { Observable } from "rxjs";
|
|
7
7
|
export interface IListMainteinerTicketsPayload {
|
|
8
8
|
filter: {
|
|
@@ -29,7 +29,7 @@ export interface IListMainteinerTicketsPayload {
|
|
|
29
29
|
order?: number;
|
|
30
30
|
};
|
|
31
31
|
}
|
|
32
|
-
export declare class TicketService extends
|
|
32
|
+
export declare class TicketService extends AgroEntityService<TicketDto> {
|
|
33
33
|
protected http: HttpClient;
|
|
34
34
|
protected messageService: MessageService;
|
|
35
35
|
protected translate: TranslateService;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { HttpClient } from '@angular/common/http';
|
|
2
2
|
import { MessageService } from 'primeng/api';
|
|
3
3
|
import { LibTranslationService as TranslateService } from "../../../../services/lib-translation.service";
|
|
4
|
-
import {
|
|
4
|
+
import { AgroEntityService } from '../../../../services/agro-entity-service';
|
|
5
5
|
import { TransferDto } from './transfer-dto';
|
|
6
|
-
export declare class TransferService extends
|
|
6
|
+
export declare class TransferService extends AgroEntityService<TransferDto> {
|
|
7
7
|
protected http: HttpClient;
|
|
8
8
|
protected messageService: MessageService;
|
|
9
9
|
protected translate: TranslateService;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { HttpClient } from "@angular/common/http";
|
|
2
2
|
import { MessageService } from "primeng/api";
|
|
3
3
|
import { Observable } from "rxjs";
|
|
4
|
-
import { AgroEntityService } from "../../../../services/entity-service";
|
|
4
|
+
import { AgroEntityService } from "../../../../services/agro-entity-service";
|
|
5
5
|
import { LibTranslationService } from "../../../../services/lib-translation.service";
|
|
6
6
|
import { FinancialQueryDataResponse, RequestListTitlesInput, TitleDto } from "./intefaces";
|
|
7
7
|
export declare class AgroFinancialService extends AgroEntityService<TitleDto> {
|
package/components/modal-invoice-pj/for-fixation/modal-invoice-pj-for-fixation.component.d.ts
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
|
+
import { CurrencyPipe, DatePipe } from '@angular/common';
|
|
1
2
|
import { EventEmitter, OnDestroy, OnInit } from '@angular/core';
|
|
2
|
-
import { IInvoiceLookupResponse } from '../services/agro-invoice/interfaces';
|
|
3
|
-
import { LibTranslationService } from '../../../services/lib-translation.service';
|
|
4
|
-
import { AgroInvoiceService } from '../services/agro-invoice';
|
|
5
3
|
import { Column, LocaleService } from '@seniorsistemas/angular-components';
|
|
4
|
+
import { MessageService } from 'primeng';
|
|
6
5
|
import { KilogramPipe } from '../../../pipe/kilogram';
|
|
7
|
-
import {
|
|
6
|
+
import { LibTranslationService } from '../../../services/lib-translation.service';
|
|
7
|
+
import { ProducerInvoiceService } from '../../../services/producer-invoice/producer-invoice.service';
|
|
8
8
|
import { ModalInvoicePjBase } from '../modal-invoice-pj-base.class';
|
|
9
|
+
import { AgroInvoiceService } from '../services/agro-invoice';
|
|
10
|
+
import { IInvoiceLookupResponse } from '../services/agro-invoice/interfaces';
|
|
9
11
|
import { ModalInvoicePjForFixationOptions } from './modal-fixation-options.interface';
|
|
10
|
-
import { ProducerInvoiceService } from '../../../services/producer-invoice/producer-invoice.service';
|
|
11
|
-
import { MessageService } from 'primeng';
|
|
12
12
|
export declare class ModalInvoicePjForFixationComponent extends ModalInvoicePjBase implements OnInit, OnDestroy {
|
|
13
13
|
readonly translationService: LibTranslationService;
|
|
14
14
|
readonly invoiceService: AgroInvoiceService;
|
|
@@ -17,12 +17,13 @@ export declare class ModalInvoicePjForFixationComponent extends ModalInvoicePjBa
|
|
|
17
17
|
readonly currencyPipe: CurrencyPipe;
|
|
18
18
|
readonly producerInvoiceService: ProducerInvoiceService;
|
|
19
19
|
readonly messageService: MessageService;
|
|
20
|
+
datePipe: DatePipe;
|
|
20
21
|
options: ModalInvoicePjForFixationOptions;
|
|
21
22
|
whenSelectInvoices: EventEmitter<any[]>;
|
|
22
23
|
gridColumns: Partial<Column & {
|
|
23
24
|
sortable?: boolean;
|
|
24
25
|
}>[];
|
|
25
|
-
constructor(translationService: LibTranslationService, invoiceService: AgroInvoiceService, localeService: LocaleService, kilogramPipe: KilogramPipe, currencyPipe: CurrencyPipe, producerInvoiceService: ProducerInvoiceService, messageService: MessageService);
|
|
26
|
+
constructor(translationService: LibTranslationService, invoiceService: AgroInvoiceService, localeService: LocaleService, kilogramPipe: KilogramPipe, currencyPipe: CurrencyPipe, producerInvoiceService: ProducerInvoiceService, messageService: MessageService, datePipe: DatePipe);
|
|
26
27
|
ngOnInit(): void;
|
|
27
28
|
defineGridColumns(): void;
|
|
28
29
|
beforeAdd(selectedInvoices: any[]): Promise<any>;
|
package/components/modal-invoice-pj/for-origination/modal-invoice-pj-for-origination.component.d.ts
CHANGED
|
@@ -1,26 +1,28 @@
|
|
|
1
|
+
import { DatePipe } from '@angular/common';
|
|
1
2
|
import { EventEmitter, OnDestroy, OnInit } from '@angular/core';
|
|
2
|
-
import { ModalInvoicePjOptions } from '../modal-invoice-pj-options.interface';
|
|
3
3
|
import { Column, LocaleService } from '@seniorsistemas/angular-components';
|
|
4
|
-
import {
|
|
5
|
-
import { IInvoiceLookupResponse } from '../services/agro-invoice/interfaces';
|
|
4
|
+
import { MessageService } from 'primeng';
|
|
6
5
|
import { KilogramPipe } from '../../../pipe/kilogram';
|
|
7
6
|
import { LibTranslationService } from '../../../services/lib-translation.service';
|
|
7
|
+
import { ModalInvoicePjBase } from '../modal-invoice-pj-base.class';
|
|
8
|
+
import { ModalInvoicePjOptions } from '../modal-invoice-pj-options.interface';
|
|
8
9
|
import { AgroInvoiceService } from '../services/agro-invoice';
|
|
9
|
-
import {
|
|
10
|
+
import { IInvoiceLookupResponse } from '../services/agro-invoice/interfaces';
|
|
10
11
|
export declare class ModalInvoicePjForOriginationComponent extends ModalInvoicePjBase implements OnInit, OnDestroy {
|
|
11
12
|
translate: LibTranslationService;
|
|
12
13
|
invoiceService: AgroInvoiceService;
|
|
13
14
|
localeService: LocaleService;
|
|
14
15
|
kilogramPipe: KilogramPipe;
|
|
15
16
|
messageService: MessageService;
|
|
17
|
+
datePipe: DatePipe;
|
|
16
18
|
options: ModalInvoicePjOptions;
|
|
17
19
|
whenSelectInvoices: EventEmitter<any[]>;
|
|
18
20
|
gridColumns: Partial<Column & {
|
|
19
21
|
sortable?: boolean;
|
|
20
22
|
}>[];
|
|
21
|
-
constructor(translate: LibTranslationService, invoiceService: AgroInvoiceService, localeService: LocaleService, kilogramPipe: KilogramPipe, messageService: MessageService);
|
|
23
|
+
constructor(translate: LibTranslationService, invoiceService: AgroInvoiceService, localeService: LocaleService, kilogramPipe: KilogramPipe, messageService: MessageService, datePipe: DatePipe);
|
|
22
24
|
ngOnInit(): void;
|
|
23
25
|
defineGridColumns(): void;
|
|
24
|
-
beforeAdd(selectedInvoices: any): Promise<any>;
|
|
25
26
|
adaptResult(result: IInvoiceLookupResponse): Promise<any>;
|
|
27
|
+
beforeAdd(selectedInvoices: any): Promise<any>;
|
|
26
28
|
}
|
package/components/modal-invoice-pj/for-transfer/modal-invoice-pj-for-transfer.component.d.ts
CHANGED
|
@@ -1,26 +1,17 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import { IInvoiceLookupResponse } from '../services/agro-invoice/interfaces';
|
|
1
|
+
import { DatePipe } from '@angular/common';
|
|
2
|
+
import { OnDestroy, OnInit } from '@angular/core';
|
|
3
|
+
import { LocaleService } from '@seniorsistemas/angular-components';
|
|
4
|
+
import { MessageService } from 'primeng';
|
|
6
5
|
import { KilogramPipe } from '../../../pipe/kilogram';
|
|
7
6
|
import { LibTranslationService } from '../../../services/lib-translation.service';
|
|
8
7
|
import { AgroInvoiceService } from '../services/agro-invoice';
|
|
9
|
-
import {
|
|
10
|
-
export declare class ModalInvoicePjForTransferComponent extends
|
|
8
|
+
import { ModalInvoicePjForOriginationComponent } from '../for-origination/modal-invoice-pj-for-origination.component';
|
|
9
|
+
export declare class ModalInvoicePjForTransferComponent extends ModalInvoicePjForOriginationComponent implements OnInit, OnDestroy {
|
|
11
10
|
translate: LibTranslationService;
|
|
12
11
|
invoiceService: AgroInvoiceService;
|
|
13
12
|
localeService: LocaleService;
|
|
14
13
|
kilogramPipe: KilogramPipe;
|
|
15
14
|
messageService: MessageService;
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
gridColumns: Partial<Column & {
|
|
19
|
-
sortable?: boolean;
|
|
20
|
-
}>[];
|
|
21
|
-
constructor(translate: LibTranslationService, invoiceService: AgroInvoiceService, localeService: LocaleService, kilogramPipe: KilogramPipe, messageService: MessageService);
|
|
22
|
-
ngOnInit(): void;
|
|
23
|
-
defineGridColumns(): void;
|
|
24
|
-
beforeAdd(selectedInvoices: any): Promise<any>;
|
|
25
|
-
adaptResult(result: IInvoiceLookupResponse): Promise<any>;
|
|
15
|
+
datePipe: DatePipe;
|
|
16
|
+
constructor(translate: LibTranslationService, invoiceService: AgroInvoiceService, localeService: LocaleService, kilogramPipe: KilogramPipe, messageService: MessageService, datePipe: DatePipe);
|
|
26
17
|
}
|
|
@@ -1,20 +1,22 @@
|
|
|
1
|
+
import { DatePipe } from '@angular/common';
|
|
1
2
|
import { EventEmitter } from '@angular/core';
|
|
2
|
-
import { LazyLoadEvent, MessageService } from 'primeng';
|
|
3
|
-
import { Subject } from 'rxjs';
|
|
4
3
|
import { FormControl } from '@angular/forms';
|
|
5
|
-
import { ListParams } from '../../services/entity-service';
|
|
6
|
-
import { AgroInvoiceService } from './services/agro-invoice/agro-invoice.service';
|
|
7
|
-
import { ModalInvoicePjOptions } from './modal-invoice-pj-options.interface';
|
|
8
4
|
import { ButtonPriority, Column, LocaleService } from '@seniorsistemas/angular-components';
|
|
5
|
+
import { LazyLoadEvent, MessageService } from 'primeng';
|
|
6
|
+
import { Subject } from 'rxjs';
|
|
7
|
+
import { KilogramPipe } from '../../pipe/kilogram';
|
|
8
|
+
import { ListParams } from '../../services/agro-entity-service';
|
|
9
9
|
import { LibTranslationService } from '../../services/lib-translation.service';
|
|
10
|
+
import { ModalInvoicePjOptions } from './modal-invoice-pj-options.interface';
|
|
11
|
+
import { AgroInvoiceService } from './services/agro-invoice/agro-invoice.service';
|
|
10
12
|
import { IInvoiceLookupResponse } from './services/agro-invoice/interfaces';
|
|
11
|
-
import { KilogramPipe } from '../../pipe/kilogram';
|
|
12
13
|
export declare abstract class ModalInvoicePjBase {
|
|
13
14
|
protected readonly translate: LibTranslationService;
|
|
14
15
|
protected readonly invoiceService: AgroInvoiceService;
|
|
15
16
|
protected readonly localeService: LocaleService;
|
|
16
17
|
protected readonly kilogramPipe: KilogramPipe;
|
|
17
18
|
protected readonly messageService: MessageService;
|
|
19
|
+
protected readonly datePipe: DatePipe;
|
|
18
20
|
abstract options: ModalInvoicePjOptions;
|
|
19
21
|
abstract whenSelectInvoices: EventEmitter<any[]>;
|
|
20
22
|
abstract gridColumns: Partial<Column & {
|
|
@@ -34,7 +36,7 @@ export declare abstract class ModalInvoicePjBase {
|
|
|
34
36
|
gridFieldValuesMap: {
|
|
35
37
|
[key: string]: (row: any) => any;
|
|
36
38
|
};
|
|
37
|
-
constructor(translate: LibTranslationService, invoiceService: AgroInvoiceService, localeService: LocaleService, kilogramPipe: KilogramPipe, messageService: MessageService);
|
|
39
|
+
constructor(translate: LibTranslationService, invoiceService: AgroInvoiceService, localeService: LocaleService, kilogramPipe: KilogramPipe, messageService: MessageService, datePipe: DatePipe);
|
|
38
40
|
ngOnDestroy(): void;
|
|
39
41
|
ngOnInit(): void;
|
|
40
42
|
abstract adaptResult(result: IInvoiceLookupResponse): Promise<any>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { HttpClient } from "@angular/common/http";
|
|
2
2
|
import { MessageService } from "primeng/api";
|
|
3
|
-
import { AgroEntityService } from "../../../../services/entity-service";
|
|
3
|
+
import { AgroEntityService } from "../../../../services/agro-entity-service";
|
|
4
4
|
import { LibTranslationService as TranslateService } from "../../../../services/lib-translation.service";
|
|
5
5
|
import { IInvoiceLookupFilter, IInvoiceLookupResponse } from "./interfaces";
|
|
6
6
|
import { Observable } from "rxjs";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AGRO_NUMBERS } from
|
|
1
|
+
import { AGRO_NUMBERS } from '../enums';
|
|
2
2
|
export class AgroLogics {
|
|
3
3
|
/**
|
|
4
4
|
* Agrupa o conjunto de dados pelos campos de entidade fornecidos e calcula
|
|
@@ -12,11 +12,12 @@ export class AgroLogics {
|
|
|
12
12
|
const total = data.length;
|
|
13
13
|
const map = new Map();
|
|
14
14
|
const resolvePath = (source, path) => {
|
|
15
|
-
const parts = path.split(
|
|
15
|
+
const parts = path.split('.');
|
|
16
16
|
let value = source;
|
|
17
17
|
for (const p of parts) {
|
|
18
|
-
if (value == null)
|
|
18
|
+
if (value == null) {
|
|
19
19
|
return undefined;
|
|
20
|
+
}
|
|
20
21
|
value = value[p];
|
|
21
22
|
}
|
|
22
23
|
return value;
|
|
@@ -27,7 +28,7 @@ export class AgroLogics {
|
|
|
27
28
|
if (!map.has(uniqueKey)) {
|
|
28
29
|
const groupedData = {};
|
|
29
30
|
for (const k of keys) {
|
|
30
|
-
const rootName = k.toString().split(
|
|
31
|
+
const rootName = k.toString().split('.')[0];
|
|
31
32
|
groupedData[rootName] = resolvePath(item, k);
|
|
32
33
|
}
|
|
33
34
|
map.set(uniqueKey, { data: groupedData, count: 0 });
|
|
@@ -50,4 +51,4 @@ AgroLogics.FAHRENHEIT_NUMERATOR = 9;
|
|
|
50
51
|
AgroLogics.FAHRENHEIT_DENOMINATOR = 5;
|
|
51
52
|
AgroLogics.KELVIN_OFFSET = 273.15;
|
|
52
53
|
AgroLogics.PERCENT = 100;
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
54
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWdyby1sb2dpY3MuY2xhc3MuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yLWFncm9uZWdvY2lvL2FuZ3VsYXItY29tcG9uZW50cy8iLCJzb3VyY2VzIjpbImNvbW1vbi9hZ3JvLWxvZ2ljcy5jbGFzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBU3hDLE1BQU0sT0FBTyxVQUFVO0lBUW5COzs7Ozs7O09BT0c7SUFDSCxNQUFNLENBQUMsdUJBQXVCLENBQzFCLElBQVMsRUFDVCxJQUEwQjtRQUUxQixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQzFCLE1BQU0sR0FBRyxHQUFHLElBQUksR0FBRyxFQUErQyxDQUFDO1FBRW5FLE1BQU0sV0FBVyxHQUFHLENBQUMsTUFBVyxFQUFFLElBQVksRUFBTyxFQUFFO1lBQ25ELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDOUIsSUFBSSxLQUFLLEdBQUcsTUFBTSxDQUFDO1lBQ25CLEtBQUssTUFBTSxDQUFDLElBQUksS0FBSyxFQUFFO2dCQUNuQixJQUFJLEtBQUssSUFBSSxJQUFJLEVBQUU7b0JBQ2YsT0FBTyxTQUFTLENBQUM7aUJBQ3BCO2dCQUNELEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDcEI7WUFDRCxPQUFPLEtBQUssQ0FBQztRQUNqQixDQUFDLENBQUM7UUFFRixLQUFLLE1BQU0sSUFBSSxJQUFJLElBQUksRUFBRTtZQUNyQixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLENBQVcsQ0FBQyxDQUFDLENBQUM7WUFDbEUsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUU1QyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsRUFBRTtnQkFDckIsTUFBTSxXQUFXLEdBQWUsRUFBRSxDQUFDO2dCQUNuQyxLQUFLLE1BQU0sQ0FBQyxJQUFJLElBQUksRUFBRTtvQkFDbEIsTUFBTSxRQUFRLEdBQUcsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztvQkFDM0MsV0FBbUIsQ0FBQyxRQUFRLENBQUMsR0FBRyxXQUFXLENBQUMsSUFBSSxFQUFFLENBQVcsQ0FBQyxDQUFDO2lCQUNuRTtnQkFDRCxHQUFHLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7YUFDdkQ7WUFDRCxNQUFNLEtBQUssR0FBRyxHQUFHLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ2pDLEtBQUssQ0FBQyxLQUFLLElBQUksWUFBWSxDQUFDLEdBQUcsQ0FBQztTQUNuQztRQUVELE1BQU0sTUFBTSxHQUE0QixLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztZQUM3RSxJQUFJLEVBQUUsS0FBSyxDQUFDLElBQUk7WUFDaEIsZ0JBQWdCLEVBQUUsS0FBSyxDQUFDLEtBQUs7WUFDN0IsZUFBZSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7U0FDcEUsQ0FBQyxDQUFDLENBQUM7UUFFSixNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLGVBQWUsR0FBRyxDQUFDLENBQUMsZUFBZSxDQUFDLENBQUM7UUFFN0QsT0FBTyxNQUFNLENBQUM7SUFDbEIsQ0FBQzs7QUEzREQsdUJBQXVCO0FBQ0MsNEJBQWlCLEdBQUcsRUFBRSxDQUFDO0FBQ3ZCLCtCQUFvQixHQUFHLENBQUMsQ0FBQztBQUN6QixpQ0FBc0IsR0FBRyxDQUFDLENBQUM7QUFDM0Isd0JBQWEsR0FBRyxNQUFNLENBQUM7QUFDdkIsa0JBQU8sR0FBRyxHQUFHLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBR1JPX05VTUJFUlMgfSBmcm9tICcuLi9lbnVtcyc7XHJcbnR5cGUgQW55UmVjb3JkID0gUmVjb3JkPHN0cmluZywgYW55PjtcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRGlzdHJpYnV0aW9uUmVzdWx0PFQ+IHtcclxuICAgIGRhdGE6IFBhcnRpYWw8VD47XHJcbiAgICBzYW1wbGluZ1N1Y2Nlc3M6IG51bWJlcjsgLy8gcGVyY2VudGFnZSBvZiB0b3RhbFxyXG4gICAgc2FtcGxpbmdRdWFudGl0eTogbnVtYmVyOyAvLyBhYnNvbHV0ZSBjb3VudFxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgQWdyb0xvZ2ljcyB7XHJcbiAgICAvLyDwn5S5IENvbnN0YW50ZXMgbG9jYWlzXHJcbiAgICBwcml2YXRlIHN0YXRpYyByZWFkb25seSBGQUhSRU5IRUlUX09GRlNFVCA9IDMyO1xyXG4gICAgcHJpdmF0ZSBzdGF0aWMgcmVhZG9ubHkgRkFIUkVOSEVJVF9OVU1FUkFUT1IgPSA5O1xyXG4gICAgcHJpdmF0ZSBzdGF0aWMgcmVhZG9ubHkgRkFIUkVOSEVJVF9ERU5PTUlOQVRPUiA9IDU7XHJcbiAgICBwcml2YXRlIHN0YXRpYyByZWFkb25seSBLRUxWSU5fT0ZGU0VUID0gMjczLjE1O1xyXG4gICAgcHJpdmF0ZSBzdGF0aWMgcmVhZG9ubHkgUEVSQ0VOVCA9IDEwMDtcclxuXHJcbiAgICAvKipcclxuICAgICAqIEFncnVwYSBvIGNvbmp1bnRvIGRlIGRhZG9zIHBlbG9zIGNhbXBvcyBkZSBlbnRpZGFkZSBmb3JuZWNpZG9zIGUgY2FsY3VsYVxyXG4gICAgICogYSBkaXN0cmlidWnDp8OjbyBkZSBwcm9iYWJpbGlkYWRlIChmcmVxdcOqbmNpYSBlIHBvcmNlbnRhZ2VtKS5cclxuICAgICAqXHJcbiAgICAgKiBAcGFyYW0gZGF0YSAtIEFycmF5IGRlIG9iamV0b3MgYSBzZXJlbSBhbmFsaXNhZG9zXHJcbiAgICAgKiBAcGFyYW0ga2V5cyAtIENoYXZlcyBvdSBjYW1pbmhvcyBhbmluaGFkb3MgcGFyYSBhZ3J1cGFyIChleDogW1wiZW50aXR5MVwiLCBcImVudGl0eTJcIl0pXHJcbiAgICAgKiBAcmV0dXJucyBBcnJheSBkZSBlc3RhdMOtc3RpY2FzIGFncnVwYWRhcyBvcmRlbmFkYXMgcG9yIHNhbXBsaW5nU3VjY2VzcyAoZGVjcmVzY2VudGUpXHJcbiAgICAgKi9cclxuICAgIHN0YXRpYyBlbnRpdHlEaXN0cmlidXRpb25TdGF0czxUIGV4dGVuZHMgQW55UmVjb3JkPihcclxuICAgICAgICBkYXRhOiBUW10sXHJcbiAgICAgICAga2V5czogKGtleW9mIFQgfCBzdHJpbmcpW11cclxuICAgICk6IERpc3RyaWJ1dGlvblJlc3VsdDxUPltdIHtcclxuICAgICAgICBjb25zdCB0b3RhbCA9IGRhdGEubGVuZ3RoO1xyXG4gICAgICAgIGNvbnN0IG1hcCA9IG5ldyBNYXA8c3RyaW5nLCB7IGRhdGE6IFBhcnRpYWw8VD47IGNvdW50OiBudW1iZXIgfT4oKTtcclxuXHJcbiAgICAgICAgY29uc3QgcmVzb2x2ZVBhdGggPSAoc291cmNlOiBhbnksIHBhdGg6IHN0cmluZyk6IGFueSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IHBhcnRzID0gcGF0aC5zcGxpdCgnLicpO1xyXG4gICAgICAgICAgICBsZXQgdmFsdWUgPSBzb3VyY2U7XHJcbiAgICAgICAgICAgIGZvciAoY29uc3QgcCBvZiBwYXJ0cykge1xyXG4gICAgICAgICAgICAgICAgaWYgKHZhbHVlID09IG51bGwpIHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgdmFsdWUgPSB2YWx1ZVtwXTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICByZXR1cm4gdmFsdWU7XHJcbiAgICAgICAgfTtcclxuXHJcbiAgICAgICAgZm9yIChjb25zdCBpdGVtIG9mIGRhdGEpIHtcclxuICAgICAgICAgICAgY29uc3Qga2V5VmFsdWVzID0ga2V5cy5tYXAoKGspID0+IHJlc29sdmVQYXRoKGl0ZW0sIGsgYXMgc3RyaW5nKSk7XHJcbiAgICAgICAgICAgIGNvbnN0IHVuaXF1ZUtleSA9IEpTT04uc3RyaW5naWZ5KGtleVZhbHVlcyk7XHJcblxyXG4gICAgICAgICAgICBpZiAoIW1hcC5oYXModW5pcXVlS2V5KSkge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgZ3JvdXBlZERhdGE6IFBhcnRpYWw8VD4gPSB7fTtcclxuICAgICAgICAgICAgICAgIGZvciAoY29uc3QgayBvZiBrZXlzKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgcm9vdE5hbWUgPSBrLnRvU3RyaW5nKCkuc3BsaXQoJy4nKVswXTtcclxuICAgICAgICAgICAgICAgICAgICAoZ3JvdXBlZERhdGEgYXMgYW55KVtyb290TmFtZV0gPSByZXNvbHZlUGF0aChpdGVtLCBrIGFzIHN0cmluZyk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBtYXAuc2V0KHVuaXF1ZUtleSwgeyBkYXRhOiBncm91cGVkRGF0YSwgY291bnQ6IDAgfSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgY29uc3QgZW50cnkgPSBtYXAuZ2V0KHVuaXF1ZUtleSk7XHJcbiAgICAgICAgICAgIGVudHJ5LmNvdW50ICs9IEFHUk9fTlVNQkVSUy5PTkU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBjb25zdCByZXN1bHQ6IERpc3RyaWJ1dGlvblJlc3VsdDxUPltdID0gQXJyYXkuZnJvbShtYXAudmFsdWVzKCkpLm1hcCgoZW50cnkpID0+ICh7XHJcbiAgICAgICAgICAgIGRhdGE6IGVudHJ5LmRhdGEsXHJcbiAgICAgICAgICAgIHNhbXBsaW5nUXVhbnRpdHk6IGVudHJ5LmNvdW50LFxyXG4gICAgICAgICAgICBzYW1wbGluZ1N1Y2Nlc3M6IE1hdGgucm91bmQoKGVudHJ5LmNvdW50IC8gdG90YWwpICogdGhpcy5QRVJDRU5UKSxcclxuICAgICAgICB9KSk7XHJcblxyXG4gICAgICAgIHJlc3VsdC5zb3J0KChhLCBiKSA9PiBiLnNhbXBsaW5nU3VjY2VzcyAtIGEuc2FtcGxpbmdTdWNjZXNzKTtcclxuXHJcbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcclxuICAgIH1cclxufVxyXG4iXX0=
|
|
@@ -171,7 +171,6 @@ export class AgroUnitConverter {
|
|
|
171
171
|
}
|
|
172
172
|
}
|
|
173
173
|
isTemperatureUnit(unit) {
|
|
174
|
-
console.log(this.TEMPERATURE_UNITS.includes(unit));
|
|
175
174
|
return this.TEMPERATURE_UNITS.includes(unit);
|
|
176
175
|
}
|
|
177
176
|
convertScalableUnits(valor, from, to) {
|
|
@@ -253,4 +252,4 @@ export class AgroUnitConverter {
|
|
|
253
252
|
return fromWatt(wattValue, to);
|
|
254
253
|
}
|
|
255
254
|
}
|
|
256
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWdyby11bml0LWNvbnZlcnRlci5jbGFzcy5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzZW5pb3ItYWdyb25lZ29jaW8vYW5ndWxhci1jb21wb25lbnRzLyIsInNvdXJjZXMiOlsiY29tbW9uL2Fncm8tdW5pdC1jb252ZXJ0ZXIuY2xhc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbkUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFVBQVUsQ0FBQztBQU94QyxNQUFNLHdDQUF3QyxHQUFHLE1BQU0sQ0FBQztBQUV4RCxNQUFNLE9BQU8saUJBQWlCO0lBc0UxQjtRQXJFQSxpQkFBaUI7UUFDUixpQkFBWSxHQUF3QjtZQUN6QyxpQkFBaUIsQ0FBQyxLQUFLO1lBQ3ZCLGlCQUFpQixDQUFDLFVBQVU7WUFDNUIsaUJBQWlCLENBQUMsU0FBUztZQUMzQixpQkFBaUIsQ0FBQyxVQUFVO1lBQzVCLGlCQUFpQixDQUFDLFFBQVE7WUFDMUIsaUJBQWlCLENBQUMsRUFBRTtTQUN2QixDQUFDO1FBRUYsV0FBVztRQUNGLGVBQVUsR0FBd0I7WUFDdkMsaUJBQWlCLENBQUMsS0FBSztZQUN2QixpQkFBaUIsQ0FBQyxVQUFVO1lBQzVCLGlCQUFpQixDQUFDLFFBQVE7WUFDMUIsaUJBQWlCLENBQUMsS0FBSztZQUN2QixpQkFBaUIsQ0FBQyxJQUFJO1NBQ3pCLENBQUM7UUFFRixVQUFVO1FBQ0QsZUFBVSxHQUF3QjtZQUN2QyxpQkFBaUIsQ0FBQyxjQUFjO1lBQ2hDLGlCQUFpQixDQUFDLG1CQUFtQjtZQUNyQyxpQkFBaUIsQ0FBQyxPQUFPO1lBQ3pCLGlCQUFpQixDQUFDLGNBQWM7WUFDaEMsaUJBQWlCLENBQUMsY0FBYztZQUNoQyxpQkFBaUIsQ0FBQyxpQkFBaUI7WUFDbkMsaUJBQWlCLENBQUMsY0FBYztZQUNoQyxpQkFBaUIsQ0FBQyxjQUFjO1lBQ2hDLGlCQUFpQixDQUFDLGNBQWM7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QUUsSUFBdUIsRUFBRSxFQUFxQjtRQUNqRyxJQUFJLElBQUksS0FBSyxFQUFFLEVBQUU7WUFDYixPQUFPLEtBQUssQ0FBQztTQUNoQjtRQUVELE1BQU0sTUFBTSxHQUFHLENBQUMsQ0FBUyxFQUFFLElBQXVCLEVBQVUsRUFBRTtZQUMxRCxRQUFRLElBQUksRUFBRTtnQkFDVixLQUFLLGlCQUFpQixDQUFDLElBQUksQ0FBQztnQkFDNUIsS0FBSyxpQkFBaUIsQ0FBQyxNQUFNO29CQUN6QixPQUFPLE9BQU8sR0FBRyxDQUFDLENBQUMsQ0FBQyxZQUFZO2dCQUNwQyxLQUFLLGlCQUFpQixDQUFDLElBQUk7b0JBQ3ZCLE9BQU8sQ0FBQyxDQUFDO2dCQUNiO29CQUNJLE1BQU0sSUFBSSxLQUFLLENBQUMsYUFBYSxJQUFJLCtCQUErQixDQUFDLENBQUM7YUFDekU7UUFDTCxDQUFDLENBQUM7UUFFRixNQUFNLFFBQVEsR0FBRyxDQUFDLENBQVMsRUFBRSxJQUF1QixFQUFVLEVBQUU7WUFDNUQsUUFBUSxJQUFJLEVBQUU7Z0JBQ1YsS0FBSyxpQkFBaUIsQ0FBQyxJQUFJLENBQUM7Z0JBQzVCLEtBQUssaUJBQWlCLENBQUMsTUFBTTtvQkFDekIsT0FBTyxDQUFDLEdBQUcsT0FBTyxDQUFDO2dCQUN2QixLQUFLLGlCQUFpQixDQUFDLElBQUk7b0JBQ3ZCLE9BQU8sQ0FBQyxDQUFDO2dCQUNiO29CQUNJLE1BQU0sSUFBSSxLQUFLLENBQUMsYUFBYSxJQUFJLCtCQUErQixDQUFDLENBQUM7YUFDekU7UUFDTCxDQUFDLENBQUM7UUFFRixNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ3RDLE9BQU8sUUFBUSxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNuQyxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBVbml0T2ZNZWFzdXJlbWVudCB9IGZyb20gXCIuLi9lbnVtcy91bml0LW1lYXN1cmVtZW50LmVudW1cIjtcclxuaW1wb3J0IHsgQUdST19OVU1CRVJTIH0gZnJvbSBcIi4uL2VudW1zXCI7XHJcblxyXG50eXBlIENvbnZlcnNpb25Vbml0ID0ge1xyXG4gICAgdW5pdHM6IFVuaXRPZk1lYXN1cmVtZW50W107XHJcbiAgICBmYWN0b3JUYWJsZTogeyBba2V5OiBzdHJpbmddOiBudW1iZXIgfTtcclxufTtcclxuXHJcbmNvbnN0IFRXT19IVU5EUkVEX1NFVkVOVFlfVEhSRUVfUE9JTlRfT05FX0ZJVkUgPSAyNzMuMTU7XHJcblxyXG5leHBvcnQgY2xhc3MgQWdyb1VuaXRDb252ZXJ0ZXIge1xyXG4gICAgLy8g8J+UuSBDb21wcmltZW50b1xyXG4gICAgcmVhZG9ubHkgTEVOR1RIX1VOSVRTOiBVbml0T2ZNZWFzdXJlbWVudFtdID0gW1xyXG4gICAgICAgIFVuaXRPZk1lYXN1cmVtZW50Lk1FVFJPLFxyXG4gICAgICAgIFVuaXRPZk1lYXN1cmVtZW50LkNFTlRJTUVUUk8sXHJcbiAgICAgICAgVW5pdE9mTWVhc3VyZW1lbnQuTUlMSU1FVFJPLFxyXG4gICAgICAgIFVuaXRPZk1lYXN1cmVtZW50LlFVSUxPTUVUUk8sXHJcbiAgICAgICAgVW5pdE9mTWVhc3VyZW1lbnQuUE9MRUdBREEsXHJcbiAgICAgICAgVW5pdE9mTWVhc3VyZW1lbnQuUEUsXHJcbiAgICBdO1xyXG5cclxuICAgIC8vIPCflLkgTWFzc2FcclxuICAgIHJlYWRvbmx5IE1BU1NfVU5JVFM6IFVuaXRPZk1lYXN1cmVtZW50W10gPSBbXHJcbiAgICAgICAgVW5pdE9mTWVhc3VyZW1lbnQuR1JBTUEsXHJcbiAgICAgICAgVW5pdE9mTWVhc3VyZW1lbnQuUVVJTE9HUkFNQSxcclxuICAgICAgICBVbml0T2ZNZWFzdXJlbWVudC5UT05FTEFEQSxcclxuICAgICAgICBVbml0T2ZNZWFzdXJlbWVudC5MSUJSQSxcclxuICAgICAgICBVbml0T2ZNZWFzdXJlbWVudC5TQUNBLFxyXG4gICAgXTtcclxuXHJcbiAgICAvLyDwn5S5IMOBcmVhXHJcbiAgICByZWFkb25seSBBUkVBX1VOSVRTOiBVbml0T2ZNZWFzdXJlbWVudFtdID0gW1xyXG4gICAgICAgIFVuaXRPZk1lYXN1cmVtZW50Lk1FVFJPX1FVQURSQURPLFxyXG4gICAgICAgIFVuaXRPZk1lYXN1cmVtZW50LkNFTlRJTUVUUk9fUVVBRFJBRE8sXHJcbiAgICAgICAgVW5pdE9mTWVhc3VyZW1lbnQuSEVDVEFSRSxcclxuICAgICAgICBVbml0T2ZNZWFzdXJlbWVudC5BTFFVRUlSRV81MHg1MCxcclxuICAgICAgICBVbml0T2ZNZWFzdXJlbWVudC5BTFFVRUlSRV81MHg3NSxcclxuICAgICAgICBVbml0T2ZNZWFzdXJlbWVudC5BTFFVRUlSRV9ET19OT1JURSxcclxuICAgICAgICBVbml0T2ZNZWFzdXJlbWVudC5BTFFVRUlSRV83NXg4MCxcclxuICAgICAgICBVbml0T2ZNZWFzdXJlbWVudC5BTFFVRUlSRV83OXg3OSxcclxuICAgICAgICBVbml0T2ZNZWFzdXJlbWVudC5BTFFVRUlSRV84MHg4MCxcclxuICAgICAgICBVbml0T2ZNZWFzdXJlbWVudC5BTFFVRUlSRV83NXgxMDAsXHJcbiAgICAgICAgVW5pdE9mTWVhc3VyZW1lbnQuQUxRVUVJUkVfMTAweDE1MCxcclxuICAgICAgICBVbml0T2ZNZWFzdXJlbWVudC5BTFFVRUlSRV9CQUlBTk8sXHJcbiAgICAgICAgVW5pdE9mTWVhc3VyZW1lbnQuQUxRVUVJUkFPLFxyXG4gICAgICAgIFVuaXRPZk1lYXN1cmVtZW50LkFMUVVFSVJFX1BBVUxJU1RBLFxyXG4gICAgICAgIFVuaXRPZk1lYXN1cmVtZW50LkFMUVVFSVJFX01JTkVJUk8sXHJcbiAgICBdO1xyXG5cclxuICAgIC8vIPCflLkgVm9sdW1lXHJcbiAgICByZWFkb25seSBWT0xVTUVfVU5JVFM6IFVuaXRPZk1lYXN1cmVtZW50W10gPSBbVW5pdE9mTWVhc3VyZW1lbnQuTElUUk8sIFVuaXRPZk1lYXN1cmVtZW50Lk1JTElMSVRSTywgVW5pdE9mTWVhc3VyZW1lbnQuTUVUUk9fQ1VCSUNPXTtcclxuXHJcbiAgICAvLyDwn5S5IFRlbXBvXHJcbiAgICByZWFkb25seSBUSU1FX1VOSVRTOiBVbml0T2ZNZWFzdXJlbWVudFtdID0gW1xyXG4gICAgICAgIFVuaXRPZk1lYXN1cmVtZW50LlNFR1VORE8sXHJcbiAgICAgICAgVW5pdE9mTWVhc3VyZW1lbnQuTUlOVVRPLFxyXG4gICAgICAgIFVuaXRPZk1lYXN1cmVtZW50LkhPUkEsXHJcbiAgICAgICAgVW5pdE9mTWVhc3VyZW1lbnQuRElBLFxyXG4gICAgXTtcclxuXHJcbiAgICAvLyDwn5S5IFRlbXBlcmF0dXJhXHJcbiAgICByZWFkb25seSBURU1QRVJBVFVSRV9VTklUUzogVW5pdE9mTWVhc3VyZW1lbnRbXSA9IFtVbml0T2ZNZWFzdXJlbWVudC5DRUxTSVVTLCBVbml0T2ZNZWFzdXJlbWVudC5GQUhSRU5IRUlULCBVbml0T2ZNZWFzdXJlbWVudC5LRUxWSU5dO1xyXG5cclxuICAgIC8vIPCflLkgRW5lcmdpYVxyXG4gICAgcmVhZG9ubHkgRU5FUkdZX1VOSVRTOiBVbml0T2ZNZWFzdXJlbWVudFtdID0gW1VuaXRPZk1lYXN1cmVtZW50LkpPVUxFLCBVbml0T2ZNZWFzdXJlbWVudC5DQUxPUklBLCBVbml0T2ZNZWFzdXJlbWVudC5RVUlMT1dBVFRfSE9SQV07XHJcblxyXG4gICAgLy8g8J+UuSBFbGV0cmljaWRhZGVcclxuICAgIHJlYWRvbmx5IEVMRUNUUklDSVRZX1VOSVRTOiBVbml0T2ZNZWFzdXJlbWVudFtdID0gW1VuaXRPZk1lYXN1cmVtZW50LlZPTFQsIFVuaXRPZk1lYXN1cmVtZW50LkFNUEVSRSwgVW5pdE9mTWVhc3VyZW1lbnQuV0FUVF07XHJcblxyXG4gICAgLy8g8J+UuSBEYWRvcyBkaWdpdGFpc1xyXG4gICAgcmVhZG9ubHkgREFUQV9VTklUUzogVW5pdE9mTWVhc3VyZW1lbnRbXSA9IFtcclxuICAgICAgICBVbml0T2ZNZWFzdXJlbWVudC5CWVRFLFxyXG4gICAgICAgIFVuaXRPZk1lYXN1cmVtZW50LktJTE9CWVRFLFxyXG4gICAgICAgIFVuaXRPZk1lYXN1cmVtZW50Lk1FR0FCWVRFLFxyXG4gICAgICAgIFVuaXRPZk1lYXN1cmVtZW50LkdJR0FCWVRFLFxyXG4gICAgICAgIFVuaXRPZk1lYXN1cmVtZW50LlRFUkFCWVRFLFxyXG4gICAgXTtcclxuXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNvbnZlcnNpb25Vbml0czogQ29udmVyc2lvblVuaXRbXTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcigpIHtcclxuICAgICAgICB0aGlzLmNvbnZlcnNpb25Vbml0cyA9IFtcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgdW5pdHM6IHRoaXMuTEVOR1RIX1VOSVRTLFxyXG4gICAgICAgICAgICAgICAgZmFjdG9yVGFibGU6IHtcclxuICAgICAgICAgICAgICAgICAgICBbVW5pdE9mTWVhc3VyZW1lbnQuTUVUUk9dOiBBR1JPX05VTUJFUlMuT05FLFxyXG4gICAgICAgICAgICAgICAgICAgIFtVbml0T2ZNZWFzdXJlbWVudC5DRU5USU1FVFJPXTogMC4wMSxcclxuICAgICAgICAgICAgICAgICAgICBbVW5pdE9mTWVhc3VyZW1lbnQuTUlMSU1FVFJPXTogMC4wMDEsXHJcbiAgICAgICAgICAgICAgICAgICAgW1VuaXRPZk1lYXN1cmVtZW50LlFVSUxPTUVUUk9dOiBBR1JPX05VTUJFUlMuT05FVEhPVVNBTkQsXHJcbiAgICAgICAgICAgICAgICAgICAgW1VuaXRPZk1lYXN1cmVtZW50LlBPTEVHQURBXTogMC4wMjU0LFxyXG4gICAgICAgICAgICAgICAgICAgIFtVbml0T2ZNZWFzdXJlbWVudC5QRV06IDAuMzA0OCxcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIHVuaXRzOiB0aGlzLk1BU1NfVU5JVFMsXHJcbiAgICAgICAgICAgICAgICBmYWN0b3JUYWJsZToge1xyXG4gICAgICAgICAgICAgICAgICAgIFtVbml0T2ZNZWFzdXJlbWVudC5HUkFNQV06IDAuMDAxLFxyXG4gICAgICAgICAgICAgICAgICAgIFtVbml0T2ZNZWFzdXJlbWVudC5RVUlMT0dSQU1BXTogQUdST19OVU1CRVJTLk9ORSxcclxuICAgICAgICAgICAgICAgICAgICBbVW5pdE9mTWVhc3VyZW1lbnQuVE9ORUxBREFdOiBBR1JPX05VTUJFUlMuT05FVEhPVVNBTkQsXHJcbiAgICAgICAgICAgICAgICAgICAgW1VuaXRPZk1lYXN1cmVtZW50LkxJQlJBXTogMC40NTM1OTIsXHJcbiAgICAgICAgICAgICAgICAgICAgW1VuaXRPZk1lYXN1cmVtZW50LlNBQ0FdOiA2MCxcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIHVuaXRzOiB0aGlzLkFSRUFfVU5JVFMsXHJcbiAgICAgICAgICAgICAgICBmYWN0b3JUYWJsZToge1xyXG4gICAgICAgICAgICAgICAgICAgIFtVbml0T2ZNZWFzdXJlbWVudC5NRVRST19RVUFEUkFET106IEFHUk9fTlVNQkVSUy5PTkUsXHJcbiAgICAgICAgICAgICAgICAgICAgW1VuaXRPZk1lYXN1cmVtZW50LkNFTlRJTUVUUk9fUVVBRFJBRE9dOiAwLjAwMDEsXHJcbiAgICAgICAgICAgICAgICAgICAgW1VuaXRPZk1lYXN1cmVtZW50LkhFQ1RBUkVdOiAxMDAwMCxcclxuICAgICAgICAgICAgICAgICAgICBbVW5pdE9mTWVhc3VyZW1lbnQuQUxRVUVJUkVfNTB4NTBdOiAxMjEwMCxcclxuICAgICAgICAgICAgICAgICAgICBbVW5pdE9mTWVhc3VyZW1lbnQuQUxRVUVJUkVfNTB4NzVdOiAxODIwMCxcclxuICAgICAgICAgICAgICAgICAgICBbVW5pdE9mTWVhc3VyZW1lbnQuQUxRVUVJUkVfRE9fTk9SVEVdOiAyNzIwMCxcclxuICAgICAgICAgICAgICAgICAgICBbVW5pdE9mTWVhc3VyZW1lbnQuQUxRVUVJUkVfNzV4ODBdOiAyOTAwMCxcclxuICAgICAgICAgICAgICAgICAgICBbVW5pdE9mTWVhc3VyZW1lbnQuQUxRVUVJUkVfNzl4NzldOiAzMDIwMCxcclxuICAgICAgICAgICAgICAgICAgICBbVW5pdE9mTWVhc3VyZW1lbnQuQUxRVUVJUkVfODB4ODBdOiAzMTkwMCxcclxuICAgICAgICAgICAgICAgICAgICBbVW5pdE9mTWVhc3VyZW1lbnQuQUxRVUVJUkVfNzV4MTAwXTogMzYzMDAsXHJcbiAgICAgICAgICAgICAgICAgICAgW1VuaXRPZk1lYXN1cmVtZW50LkFMUVVFSVJFXzEwMHgxNTBdOiA3MjYwMCxcclxuICAgICAgICAgICAgICAgICAgICBbVW5pdE9mTWVhc3VyZW1lbnQuQUxRVUVJUkVfQkFJQU5PXTogOTY4MDAsXHJcbiAgICAgICAgICAgICAgICAgICAgW1VuaXRPZk1lYXN1cmVtZW50LkFMUVVFSVJBT106IDE5MzYwMCxcclxuICAgICAgICAgICAgICAgICAgICBbVW5pdE9mTWVhc3VyZW1lbnQuQUxRVUVJUkVfUEFVTElTVEFdOiAyNDIwMCxcclxuICAgICAgICAgICAgICAgICAgICBbVW5pdE9mTWVhc3VyZW1lbnQuQUxRVUVJUkVfTUlORUlST106IDQ4NDAwLFxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgdW5pdHM6IHRoaXMuVk9MVU1FX1VOSVRTLFxyXG4gICAgICAgICAgICAgICAgZmFjdG9yVGFibGU6IHtcclxuICAgICAgICAgICAgICAgICAgICBbVW5pdE9mTWVhc3VyZW1lbnQuTElUUk9dOiBBR1JPX05VTUJFUlMuT05FLFxyXG4gICAgICAgICAgICAgICAgICAgIFtVbml0T2ZNZWFzdXJlbWVudC5NSUxJTElUUk9dOiAwLjAwMSxcclxuICAgICAgICAgICAgICAgICAgICBbVW5pdE9mTWVhc3VyZW1lbnQuTUVUUk9fQ1VCSUNPXTogQUdST19OVU1CRVJTLk9ORVRIT1VTQU5ELFxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgdW5pdHM6IHRoaXMuVElNRV9VTklUUyxcclxuICAgICAgICAgICAgICAgIGZhY3RvclRhYmxlOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgW1VuaXRPZk1lYXN1cmVtZW50LlNFR1VORE9dOiBBR1JPX05VTUJFUlMuT05FLFxyXG4gICAgICAgICAgICAgICAgICAgIFtVbml0T2ZNZWFzdXJlbWVudC5NSU5VVE9dOiBBR1JPX05VTUJFUlMuU0lYVFlfLFxyXG4gICAgICAgICAgICAgICAgICAgIFtVbml0T2ZNZWFzdXJlbWVudC5IT1JBXTogMzYwMCxcclxuICAgICAgICAgICAgICAgICAgICBbVW5pdE9mTWVhc3VyZW1lbnQuRElBXTogODY0MDAsXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICB1bml0czogdGhpcy5FTkVSR1lfVU5JVFMsXHJcbiAgICAgICAgICAgICAgICBmYWN0b3JUYWJsZToge1xyXG4gICAgICAgICAgICAgICAgICAgIFtVbml0T2ZNZWFzdXJlbWVudC5KT1VMRV06IEFHUk9fTlVNQkVSUy5PTkUsXHJcbiAgICAgICAgICAgICAgICAgICAgW1VuaXRPZk1lYXN1cmVtZW50LkNBTE9SSUFdOiA0LjE4NCxcclxuICAgICAgICAgICAgICAgICAgICBbVW5pdE9mTWVhc3VyZW1lbnQuUVVJTE9XQVRUX0hPUkFdOiAzXzYwMF8wMDAsXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICB1bml0czogdGhpcy5EQVRBX1VOSVRTLFxyXG4gICAgICAgICAgICAgICAgZmFjdG9yVGFibGU6IHtcclxuICAgICAgICAgICAgICAgICAgICBbVW5pdE9mTWVhc3VyZW1lbnQuQllURV06IEFHUk9fTlVNQkVSUy5PTkUsXHJcbiAgICAgICAgICAgICAgICAgICAgW1VuaXRPZk1lYXN1cmVtZW50LktJTE9CWVRFXTogMTAyNCxcclxuICAgICAgICAgICAgICAgICAgICBbVW5pdE9mTWVhc3VyZW1lbnQuTUVHQUJZVEVdOiAxMDI0ICoqIEFHUk9fTlVNQkVSUy5UV08sXHJcbiAgICAgICAgICAgICAgICAgICAgW1VuaXRPZk1lYXN1cmVtZW50LkdJR0FCWVRFXTogMTAyNCAqKiBBR1JPX05VTUJFUlMuVEhSRUUsXHJcbiAgICAgICAgICAgICAgICAgICAgW1VuaXRPZk1lYXN1cmVtZW50LlRFUkFCWVRFXTogMTAyNCAqKiBBR1JPX05VTUJFUlMuRk9VUixcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgXTtcclxuICAgIH1cclxuXHJcbiAgICAvLyDwn5S5IE3DqXRvZG9zIGRlIGNvbnZlcnPDo29cclxuICAgIGNvbnZlcnRUZW1wZXJhdHVyZVVuaXQodmFsb3I6IG51bWJlciwgZGU6IFVuaXRPZk1lYXN1cmVtZW50LCBwYXJhOiBVbml0T2ZNZWFzdXJlbWVudCk6IG51bWJlciB7XHJcbiAgICAgICAgaWYgKGRlID09PSBwYXJhKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB2YWxvcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGxldCBjZWxzaXVzOiBudW1iZXI7XHJcbiAgICAgICAgc3dpdGNoIChkZSkge1xyXG4gICAgICAgICAgICBjYXNlIFVuaXRPZk1lYXN1cmVtZW50LkNFTFNJVVM6XHJcbiAgICAgICAgICAgICAgICBjZWxzaXVzID0gdmFsb3I7XHJcbiAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgY2FzZSBVbml0T2ZNZWFzdXJlbWVudC5GQUhSRU5IRUlUOlxyXG4gICAgICAgICAgICAgICAgY2Vsc2l1cyA9ICgodmFsb3IgLSBBR1JPX05VTUJFUlMuVEhJUlRZX1RXTykgKiBBR1JPX05VTUJFUlMuRklWRSkgLyBBR1JPX05VTUJFUlMuTklORTtcclxuICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICBjYXNlIFVuaXRPZk1lYXN1cmVtZW50LktFTFZJTjpcclxuICAgICAgICAgICAgICAgIGNlbHNpdXMgPSB2YWxvciAtIFRXT19IVU5EUkVEX1NFVkVOVFlfVEhSRUVfUE9JTlRfT05FX0ZJVkU7XHJcbiAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIlVuaWRhZGUgaW52w6FsaWRhXCIpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgc3dpdGNoIChwYXJhKSB7XHJcbiAgICAgICAgICAgIGNhc2UgVW5pdE9mTWVhc3VyZW1lbnQuQ0VMU0lVUzpcclxuICAgICAgICAgICAgICAgIHJldHVybiBjZWxzaXVzO1xyXG4gICAgICAgICAgICBjYXNlIFVuaXRPZk1lYXN1cmVtZW50LkZBSFJFTkhFSVQ6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gKGNlbHNpdXMgKiBBR1JPX05VTUJFUlMuTklORSkgLyBBR1JPX05VTUJFUlMuRklWRSArIEFHUk9fTlVNQkVSUy5USElSVFlfVFdPO1xyXG4gICAgICAgICAgICBjYXNlIFVuaXRPZk1lYXN1cmVtZW50LktFTFZJTjpcclxuICAgICAgICAgICAgICAgIHJldHVybiBjZWxzaXVzICsgVFdPX0hVTkRSRURfU0VWRU5UWV9USFJFRV9QT0lOVF9PTkVfRklWRTtcclxuICAgICAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIlVuaWRhZGUgaW52w6FsaWRhXCIpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGlzVGVtcGVyYXR1cmVVbml0KHVuaXQ6IFVuaXRPZk1lYXN1cmVtZW50KTogYm9vbGVhbiB7XHJcbiAgICAgICAgY29uc29sZS5sb2codGhpcy5URU1QRVJBVFVSRV9VTklUUy5pbmNsdWRlcyh1bml0KSk7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuVEVNUEVSQVRVUkVfVU5JVFMuaW5jbHVkZXModW5pdCk7XHJcbiAgICB9XHJcblxyXG4gICAgY29udmVydFNjYWxhYmxlVW5pdHModmFsb3I6IG51bWJlciwgZnJvbTogVW5pdE9mTWVhc3VyZW1lbnQsIHRvOiBVbml0T2ZNZWFzdXJlbWVudCk6IG51bWJlciB7XHJcbiAgICAgICAgaWYgKGZyb20gPT09IHRvKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB2YWxvcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmICh0aGlzLmlzVGVtcGVyYXR1cmVVbml0KGZyb20pIHx8IHRoaXMuaXNUZW1wZXJhdHVyZVVuaXQodG8pKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmNvbnZlcnRUZW1wZXJhdHVyZVVuaXQodmFsb3IsIGZyb20sIHRvKTtcclxuICAgICAgICB9XHJcblxyXG5cclxuICAgICAgICBjb25zdCB1bml0Q2F0ZWdvcnkgPSB0aGlzLmNvbnZlcnNpb25Vbml0cy5maW5kKCh1KSA9PiB1LnVuaXRzLmluY2x1ZGVzKGZyb20pKTtcclxuICAgICAgICBpZiAoIXVuaXRDYXRlZ29yeT8udW5pdHM/LmluY2x1ZGVzKHRvKSkge1xyXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYE7Do28gw6kgcG9zc8OtdmVsIGNvbnZlcnRlciBkZSAke2Zyb219IHBhcmEgJHt0b306IGNhdGVnb3JpYXMgZGlmZXJlbnRlcyBvdSB1bmlkYWRlIG7Do28gZXNjYWzDoXZlbC5gKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGNvbnN0IGZhdG9yRGUgPSB1bml0Q2F0ZWdvcnkuZmFjdG9yVGFibGVbZnJvbV07XHJcbiAgICAgICAgY29uc3QgZmF0b3JQYXJhID0gdW5pdENhdGVnb3J5LmZhY3RvclRhYmxlW3RvXTtcclxuXHJcbiAgICAgICAgY29uc3QgZW1CYXNlID0gdmFsb3IgKiBmYXRvckRlO1xyXG4gICAgICAgIHJldHVybiBlbUJhc2UgLyBmYXRvclBhcmE7XHJcbiAgICB9XHJcblxyXG4gICAgY29udmVydExpdGVyc1BlckFyZWEodmFsb3I6IG51bWJlciwgZnJvbTogVW5pdE9mTWVhc3VyZW1lbnQsIHRvOiBVbml0T2ZNZWFzdXJlbWVudCk6IG51bWJlciB7XHJcbiAgICAgICAgY29uc3QgYXJlYUNhdGVnb3J5ID0gdGhpcy5jb252ZXJzaW9uVW5pdHMuZmluZCgodSkgPT4gdS51bml0cy5pbmNsdWRlcyhmcm9tKSk7XHJcbiAgICAgICAgaWYgKCFhcmVhQ2F0ZWdvcnk/LnVuaXRzPy5pbmNsdWRlcyh0bykpIHtcclxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbmlkYWRlIGRlIMOhcmVhIGludsOhbGlkYTogJHtmcm9tfSBvdSAke3RvfWApO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgY29uc3QgZmF0b3JGcm9tID0gYXJlYUNhdGVnb3J5LmZhY3RvclRhYmxlW2Zyb21dO1xyXG4gICAgICAgIGNvbnN0IGZhdG9yVG8gPSBhcmVhQ2F0ZWdvcnkuZmFjdG9yVGFibGVbdG9dO1xyXG5cclxuICAgICAgICByZXR1cm4gKHZhbG9yIC8gZmF0b3JGcm9tKSAqIGZhdG9yVG87XHJcbiAgICB9XHJcblxyXG4gICAgY29udmVydEtnUGVyQXJlYSh2YWxvcjogbnVtYmVyLCBmcm9tOiBVbml0T2ZNZWFzdXJlbWVudCwgdG86IFVuaXRPZk1lYXN1cmVtZW50KTogbnVtYmVyIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5jb252ZXJ0TGl0ZXJzUGVyQXJlYSh2YWxvciwgZnJvbSwgdG8pO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnZlcnRCdXNoZWxUb0tnKGJ1c2hlbDogbnVtYmVyLCBmYWN0b3I6IG51bWJlcik6IG51bWJlciB7XHJcbiAgICAgICAgaWYgKGZhY3RvciA8PSAwKSB7XHJcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIkZhdG9yIGRlIGNvbnZlcnPDo28gaW52w6FsaWRvXCIpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gYnVzaGVsICogZmFjdG9yO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnZlcnRLZ1RvQnVzaGVsKGtnOiBudW1iZXIsIGZhY3RvcjogbnVtYmVyKTogbnVtYmVyIHtcclxuICAgICAgICBpZiAoZmFjdG9yIDw9IDApIHtcclxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiRmF0b3IgZGUgY29udmVyc8OjbyBpbnbDoWxpZG9cIik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBrZyAvIGZhY3RvcjtcclxuICAgIH1cclxuXHJcbiAgICBjYWxjdWxhdGVBcmVhRnJvbVZvbHVtZSh0b3RhbFZvbHVtZTogbnVtYmVyLCByYXRlOiBudW1iZXIsIHJhdGVVbml0OiBVbml0T2ZNZWFzdXJlbWVudCwgYXJlYVVuaXQ6IFVuaXRPZk1lYXN1cmVtZW50KTogbnVtYmVyIHtcclxuICAgICAgICBpZiAocmF0ZSA8PSAwKSB7XHJcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIlRheGEgZGUgYXBsaWNhw6fDo28gaW52w6FsaWRhXCIpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjb25zdCByYXRlSW5EZXNpcmVkVW5pdCA9IHRoaXMuY29udmVydExpdGVyc1BlckFyZWEocmF0ZSwgcmF0ZVVuaXQsIGFyZWFVbml0KTtcclxuICAgICAgICByZXR1cm4gdG90YWxWb2x1bWUgLyByYXRlSW5EZXNpcmVkVW5pdDtcclxuICAgIH1cclxuXHJcbiAgICBjb252ZXJ0RWxlY3RyaWNpdHlVbml0KHZhbG9yOiBudW1iZXIsIHZvbHRhZ2U6IG51bWJlciwgZnJvbTogVW5pdE9mTWVhc3VyZW1lbnQsIHRvOiBVbml0T2ZNZWFzdXJlbWVudCk6IG51bWJlciB7XHJcbiAgICAgICAgaWYgKGZyb20gPT09IHRvKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB2YWxvcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGNvbnN0IHRvV2F0dCA9ICh2OiBudW1iZXIsIHVuaXQ6IFVuaXRPZk1lYXN1cmVtZW50KTogbnVtYmVyID0+IHtcclxuICAgICAgICAgICAgc3dpdGNoICh1bml0KSB7XHJcbiAgICAgICAgICAgICAgICBjYXNlIFVuaXRPZk1lYXN1cmVtZW50LlZPTFQ6XHJcbiAgICAgICAgICAgICAgICBjYXNlIFVuaXRPZk1lYXN1cmVtZW50LkFNUEVSRTpcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdm9sdGFnZSAqIHY7IC8vIFAgPSBWICogSVxyXG4gICAgICAgICAgICAgICAgY2FzZSBVbml0T2ZNZWFzdXJlbWVudC5XQVRUOlxyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB2O1xyXG4gICAgICAgICAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEEgdW5pZGFkZSAke3VuaXR9IG7Do28gw6kgZXNjYWzDoXZlbCBkaXJldGFtZW50ZS5gKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH07XHJcblxyXG4gICAgICAgIGNvbnN0IGZyb21XYXR0ID0gKHc6IG51bWJlciwgdW5pdDogVW5pdE9mTWVhc3VyZW1lbnQpOiBudW1iZXIgPT4ge1xyXG4gICAgICAgICAgICBzd2l0Y2ggKHVuaXQpIHtcclxuICAgICAgICAgICAgICAgIGNhc2UgVW5pdE9mTWVhc3VyZW1lbnQuVk9MVDpcclxuICAgICAgICAgICAgICAgIGNhc2UgVW5pdE9mTWVhc3VyZW1lbnQuQU1QRVJFOlxyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB3IC8gdm9sdGFnZTtcclxuICAgICAgICAgICAgICAgIGNhc2UgVW5pdE9mTWVhc3VyZW1lbnQuV0FUVDpcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdztcclxuICAgICAgICAgICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBBIHVuaWRhZGUgJHt1bml0fSBuw6NvIMOpIGVzY2Fsw6F2ZWwgZGlyZXRhbWVudGUuYCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9O1xyXG5cclxuICAgICAgICBjb25zdCB3YXR0VmFsdWUgPSB0b1dhdHQodmFsb3IsIGZyb20pO1xyXG4gICAgICAgIHJldHVybiBmcm9tV2F0dCh3YXR0VmFsdWUsIHRvKTtcclxuICAgIH1cclxufVxyXG4iXX0=
|
|
255
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWdyby11bml0LWNvbnZlcnRlci5jbGFzcy5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzZW5pb3ItYWdyb25lZ29jaW8vYW5ndWxhci1jb21wb25lbnRzLyIsInNvdXJjZXMiOlsiY29tbW9uL2Fncm8tdW5pdC1jb252ZXJ0ZXIuY2xhc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbkUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFVBQVUsQ0FBQztBQU94QyxNQUFNLHdDQUF3QyxHQUFHLE1BQU0sQ0FBQztBQUV4RCxNQUFNLE9BQU8saUJBQWlCO0lBc0UxQjtRQXJFQSxpQkFBaUI7UUFDUixpQkFBWSxHQUF3QjtZQUN6QyxpQkFBaUIsQ0FBQyxLQUFLO1lBQ3ZCLGlCQUFpQixDQUFDLFVBQVU7WUFDNUIsaUJBQWlCLENBQUMsU0FBUztZQUMzQixpQkFBaUIsQ0FBQyxVQUFVO1lBQzVCLGlCQUFpQixDQUFDLFFBQVE7WUFDMUIsaUJBQWlCLENBQUMsRUFBRTtTQUN2QixDQUFDO1FBRUYsV0FBVztRQUNGLGVBQVUsR0FBd0I7WUFDdkMsaUJBQWlCLENBQUMsS0FBSztZQUN2QixpQkFBaUIsQ0FBQyxVQUFVO1lBQzVCLGlCQUFpQixDQUFDLFFBQVE7WUFDMUIsaUJBQWlCLENBQUMsS0FBSztZQUN2QixpQkFBaUIsQ0FBQyxJQUFJO1NBQ3pCLENBQUM7UUFFRixVQUFVO1FBQ0QsZUFBVSxHQUF3QjtZQUN2QyxpQkFBaUIsQ0FBQyxjQUFjO1lBQ2hDLGlCQUFpQixDQUFDLG1CQUFtQjtZQUNyQyxpQkFBaUIsQ0FBQyxPQUFPO1lBQ3pCLGlCQUFpQixDQUFDLGNBQWM7WUFDaEMsaUJBQWlCLENBQUMsY0FBYztZQUNoQyxpQkFBaUIsQ0FBQyxpQkFBaUI7WUFDbkMsaUJBQWlCLENBQUMsY0FBYztZQUNoQyxpQkFBaUIsQ0FBQyxjQUFjO1lBQ2hDLGlCQUFpQixDQUFDLGNBQWM7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QUVELE1BQU0sTUFBTSxHQUFHLENBQUMsQ0FBUyxFQUFFLElBQXVCLEVBQVUsRUFBRTtZQUMxRCxRQUFRLElBQUksRUFBRTtnQkFDVixLQUFLLGlCQUFpQixDQUFDLElBQUksQ0FBQztnQkFDNUIsS0FBSyxpQkFBaUIsQ0FBQyxNQUFNO29CQUN6QixPQUFPLE9BQU8sR0FBRyxDQUFDLENBQUMsQ0FBQyxZQUFZO2dCQUNwQyxLQUFLLGlCQUFpQixDQUFDLElBQUk7b0JBQ3ZCLE9BQU8sQ0FBQyxDQUFDO2dCQUNiO29CQUNJLE1BQU0sSUFBSSxLQUFLLENBQUMsYUFBYSxJQUFJLCtCQUErQixDQUFDLENBQUM7YUFDekU7UUFDTCxDQUFDLENBQUM7UUFFRixNQUFNLFFBQVEsR0FBRyxDQUFDLENBQVMsRUFBRSxJQUF1QixFQUFVLEVBQUU7WUFDNUQsUUFBUSxJQUFJLEVBQUU7Z0JBQ1YsS0FBSyxpQkFBaUIsQ0FBQyxJQUFJLENBQUM7Z0JBQzVCLEtBQUssaUJBQWlCLENBQUMsTUFBTTtvQkFDekIsT0FBTyxDQUFDLEdBQUcsT0FBTyxDQUFDO2dCQUN2QixLQUFLLGlCQUFpQixDQUFDLElBQUk7b0JBQ3ZCLE9BQU8sQ0FBQyxDQUFDO2dCQUNiO29CQUNJLE1BQU0sSUFBSSxLQUFLLENBQUMsYUFBYSxJQUFJLCtCQUErQixDQUFDLENBQUM7YUFDekU7UUFDTCxDQUFDLENBQUM7UUFFRixNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ3RDLE9BQU8sUUFBUSxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNuQyxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBVbml0T2ZNZWFzdXJlbWVudCB9IGZyb20gXCIuLi9lbnVtcy91bml0LW1lYXN1cmVtZW50LmVudW1cIjtcclxuaW1wb3J0IHsgQUdST19OVU1CRVJTIH0gZnJvbSBcIi4uL2VudW1zXCI7XHJcblxyXG50eXBlIENvbnZlcnNpb25Vbml0ID0ge1xyXG4gICAgdW5pdHM6IFVuaXRPZk1lYXN1cmVtZW50W107XHJcbiAgICBmYWN0b3JUYWJsZTogeyBba2V5OiBzdHJpbmddOiBudW1iZXIgfTtcclxufTtcclxuXHJcbmNvbnN0IFRXT19IVU5EUkVEX1NFVkVOVFlfVEhSRUVfUE9JTlRfT05FX0ZJVkUgPSAyNzMuMTU7XHJcblxyXG5leHBvcnQgY2xhc3MgQWdyb1VuaXRDb252ZXJ0ZXIge1xyXG4gICAgLy8g8J+UuSBDb21wcmltZW50b1xyXG4gICAgcmVhZG9ubHkgTEVOR1RIX1VOSVRTOiBVbml0T2ZNZWFzdXJlbWVudFtdID0gW1xyXG4gICAgICAgIFVuaXRPZk1lYXN1cmVtZW50Lk1FVFJPLFxyXG4gICAgICAgIFVuaXRPZk1lYXN1cmVtZW50LkNFTlRJTUVUUk8sXHJcbiAgICAgICAgVW5pdE9mTWVhc3VyZW1lbnQuTUlMSU1FVFJPLFxyXG4gICAgICAgIFVuaXRPZk1lYXN1cmVtZW50LlFVSUxPTUVUUk8sXHJcbiAgICAgICAgVW5pdE9mTWVhc3VyZW1lbnQuUE9MRUdBREEsXHJcbiAgICAgICAgVW5pdE9mTWVhc3VyZW1lbnQuUEUsXHJcbiAgICBdO1xyXG5cclxuICAgIC8vIPCflLkgTWFzc2FcclxuICAgIHJlYWRvbmx5IE1BU1NfVU5JVFM6IFVuaXRPZk1lYXN1cmVtZW50W10gPSBbXHJcbiAgICAgICAgVW5pdE9mTWVhc3VyZW1lbnQuR1JBTUEsXHJcbiAgICAgICAgVW5pdE9mTWVhc3VyZW1lbnQuUVVJTE9HUkFNQSxcclxuICAgICAgICBVbml0T2ZNZWFzdXJlbWVudC5UT05FTEFEQSxcclxuICAgICAgICBVbml0T2ZNZWFzdXJlbWVudC5MSUJSQSxcclxuICAgICAgICBVbml0T2ZNZWFzdXJlbWVudC5TQUNBLFxyXG4gICAgXTtcclxuXHJcbiAgICAvLyDwn5S5IMOBcmVhXHJcbiAgICByZWFkb25seSBBUkVBX1VOSVRTOiBVbml0T2ZNZWFzdXJlbWVudFtdID0gW1xyXG4gICAgICAgIFVuaXRPZk1lYXN1cmVtZW50Lk1FVFJPX1FVQURSQURPLFxyXG4gICAgICAgIFVuaXRPZk1lYXN1cmVtZW50LkNFTlRJTUVUUk9fUVVBRFJBRE8sXHJcbiAgICAgICAgVW5pdE9mTWVhc3VyZW1lbnQuSEVDVEFSRSxcclxuICAgICAgICBVbml0T2ZNZWFzdXJlbWVudC5BTFFVRUlSRV81MHg1MCxcclxuICAgICAgICBVbml0T2ZNZWFzdXJlbWVudC5BTFFVRUlSRV81MHg3NSxcclxuICAgICAgICBVbml0T2ZNZWFzdXJlbWVudC5BTFFVRUlSRV9ET19OT1JURSxcclxuICAgICAgICBVbml0T2ZNZWFzdXJlbWVudC5BTFFVRUlSRV83NXg4MCxcclxuICAgICAgICBVbml0T2ZNZWFzdXJlbWVudC5BTFFVRUlSRV83OXg3OSxcclxuICAgICAgICBVbml0T2ZNZWFzdXJlbWVudC5BTFFVRUlSRV84MHg4MCxcclxuICAgICAgICBVbml0T2ZNZWFzdXJlbWVudC5BTFFVRUlSRV83NXgxMDAsXHJcbiAgICAgICAgVW5pdE9mTWVhc3VyZW1lbnQuQUxRVUVJUkVfMTAweDE1MCxcclxuICAgICAgICBVbml0T2ZNZWFzdXJlbWVudC5BTFFVRUlSRV9CQUlBTk8sXHJcbiAgICAgICAgVW5pdE9mTWVhc3VyZW1lbnQuQUxRVUVJUkFPLFxyXG4gICAgICAgIFVuaXRPZk1lYXN1cmVtZW50LkFMUVVFSVJFX1BBVUxJU1RBLFxyXG4gICAgICAgIFVuaXRPZk1lYXN1cmVtZW50LkFMUVVFSVJFX01JTkVJUk8sXHJcbiAgICBdO1xyXG5cclxuICAgIC8vIPCflLkgVm9sdW1lXHJcbiAgICByZWFkb25seSBWT0xVTUVfVU5JVFM6IFVuaXRPZk1lYXN1cmVtZW50W10gPSBbVW5pdE9mTWVhc3VyZW1lbnQuTElUUk8sIFVuaXRPZk1lYXN1cmVtZW50Lk1JTElMSVRSTywgVW5pdE9mTWVhc3VyZW1lbnQuTUVUUk9fQ1VCSUNPXTtcclxuXHJcbiAgICAvLyDwn5S5IFRlbXBvXHJcbiAgICByZWFkb25seSBUSU1FX1VOSVRTOiBVbml0T2ZNZWFzdXJlbWVudFtdID0gW1xyXG4gICAgICAgIFVuaXRPZk1lYXN1cmVtZW50LlNFR1VORE8sXHJcbiAgICAgICAgVW5pdE9mTWVhc3VyZW1lbnQuTUlOVVRPLFxyXG4gICAgICAgIFVuaXRPZk1lYXN1cmVtZW50LkhPUkEsXHJcbiAgICAgICAgVW5pdE9mTWVhc3VyZW1lbnQuRElBLFxyXG4gICAgXTtcclxuXHJcbiAgICAvLyDwn5S5IFRlbXBlcmF0dXJhXHJcbiAgICByZWFkb25seSBURU1QRVJBVFVSRV9VTklUUzogVW5pdE9mTWVhc3VyZW1lbnRbXSA9IFtVbml0T2ZNZWFzdXJlbWVudC5DRUxTSVVTLCBVbml0T2ZNZWFzdXJlbWVudC5GQUhSRU5IRUlULCBVbml0T2ZNZWFzdXJlbWVudC5LRUxWSU5dO1xyXG5cclxuICAgIC8vIPCflLkgRW5lcmdpYVxyXG4gICAgcmVhZG9ubHkgRU5FUkdZX1VOSVRTOiBVbml0T2ZNZWFzdXJlbWVudFtdID0gW1VuaXRPZk1lYXN1cmVtZW50LkpPVUxFLCBVbml0T2ZNZWFzdXJlbWVudC5DQUxPUklBLCBVbml0T2ZNZWFzdXJlbWVudC5RVUlMT1dBVFRfSE9SQV07XHJcblxyXG4gICAgLy8g8J+UuSBFbGV0cmljaWRhZGVcclxuICAgIHJlYWRvbmx5IEVMRUNUUklDSVRZX1VOSVRTOiBVbml0T2ZNZWFzdXJlbWVudFtdID0gW1VuaXRPZk1lYXN1cmVtZW50LlZPTFQsIFVuaXRPZk1lYXN1cmVtZW50LkFNUEVSRSwgVW5pdE9mTWVhc3VyZW1lbnQuV0FUVF07XHJcblxyXG4gICAgLy8g8J+UuSBEYWRvcyBkaWdpdGFpc1xyXG4gICAgcmVhZG9ubHkgREFUQV9VTklUUzogVW5pdE9mTWVhc3VyZW1lbnRbXSA9IFtcclxuICAgICAgICBVbml0T2ZNZWFzdXJlbWVudC5CWVRFLFxyXG4gICAgICAgIFVuaXRPZk1lYXN1cmVtZW50LktJTE9CWVRFLFxyXG4gICAgICAgIFVuaXRPZk1lYXN1cmVtZW50Lk1FR0FCWVRFLFxyXG4gICAgICAgIFVuaXRPZk1lYXN1cmVtZW50LkdJR0FCWVRFLFxyXG4gICAgICAgIFVuaXRPZk1lYXN1cmVtZW50LlRFUkFCWVRFLFxyXG4gICAgXTtcclxuXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNvbnZlcnNpb25Vbml0czogQ29udmVyc2lvblVuaXRbXTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcigpIHtcclxuICAgICAgICB0aGlzLmNvbnZlcnNpb25Vbml0cyA9IFtcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgdW5pdHM6IHRoaXMuTEVOR1RIX1VOSVRTLFxyXG4gICAgICAgICAgICAgICAgZmFjdG9yVGFibGU6IHtcclxuICAgICAgICAgICAgICAgICAgICBbVW5pdE9mTWVhc3VyZW1lbnQuTUVUUk9dOiBBR1JPX05VTUJFUlMuT05FLFxyXG4gICAgICAgICAgICAgICAgICAgIFtVbml0T2ZNZWFzdXJlbWVudC5DRU5USU1FVFJPXTogMC4wMSxcclxuICAgICAgICAgICAgICAgICAgICBbVW5pdE9mTWVhc3VyZW1lbnQuTUlMSU1FVFJPXTogMC4wMDEsXHJcbiAgICAgICAgICAgICAgICAgICAgW1VuaXRPZk1lYXN1cmVtZW50LlFVSUxPTUVUUk9dOiBBR1JPX05VTUJFUlMuT05FVEhPVVNBTkQsXHJcbiAgICAgICAgICAgICAgICAgICAgW1VuaXRPZk1lYXN1cmVtZW50LlBPTEVHQURBXTogMC4wMjU0LFxyXG4gICAgICAgICAgICAgICAgICAgIFtVbml0T2ZNZWFzdXJlbWVudC5QRV06IDAuMzA0OCxcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIHVuaXRzOiB0aGlzLk1BU1NfVU5JVFMsXHJcbiAgICAgICAgICAgICAgICBmYWN0b3JUYWJsZToge1xyXG4gICAgICAgICAgICAgICAgICAgIFtVbml0T2ZNZWFzdXJlbWVudC5HUkFNQV06IDAuMDAxLFxyXG4gICAgICAgICAgICAgICAgICAgIFtVbml0T2ZNZWFzdXJlbWVudC5RVUlMT0dSQU1BXTogQUdST19OVU1CRVJTLk9ORSxcclxuICAgICAgICAgICAgICAgICAgICBbVW5pdE9mTWVhc3VyZW1lbnQuVE9ORUxBREFdOiBBR1JPX05VTUJFUlMuT05FVEhPVVNBTkQsXHJcbiAgICAgICAgICAgICAgICAgICAgW1VuaXRPZk1lYXN1cmVtZW50LkxJQlJBXTogMC40NTM1OTIsXHJcbiAgICAgICAgICAgICAgICAgICAgW1VuaXRPZk1lYXN1cmVtZW50LlNBQ0FdOiA2MCxcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIHVuaXRzOiB0aGlzLkFSRUFfVU5JVFMsXHJcbiAgICAgICAgICAgICAgICBmYWN0b3JUYWJsZToge1xyXG4gICAgICAgICAgICAgICAgICAgIFtVbml0T2ZNZWFzdXJlbWVudC5NRVRST19RVUFEUkFET106IEFHUk9fTlVNQkVSUy5PTkUsXHJcbiAgICAgICAgICAgICAgICAgICAgW1VuaXRPZk1lYXN1cmVtZW50LkNFTlRJTUVUUk9fUVVBRFJBRE9dOiAwLjAwMDEsXHJcbiAgICAgICAgICAgICAgICAgICAgW1VuaXRPZk1lYXN1cmVtZW50LkhFQ1RBUkVdOiAxMDAwMCxcclxuICAgICAgICAgICAgICAgICAgICBbVW5pdE9mTWVhc3VyZW1lbnQuQUxRVUVJUkVfNTB4NTBdOiAxMjEwMCxcclxuICAgICAgICAgICAgICAgICAgICBbVW5pdE9mTWVhc3VyZW1lbnQuQUxRVUVJUkVfNTB4NzVdOiAxODIwMCxcclxuICAgICAgICAgICAgICAgICAgICBbVW5pdE9mTWVhc3VyZW1lbnQuQUxRVUVJUkVfRE9fTk9SVEVdOiAyNzIwMCxcclxuICAgICAgICAgICAgICAgICAgICBbVW5pdE9mTWVhc3VyZW1lbnQuQUxRVUVJUkVfNzV4ODBdOiAyOTAwMCxcclxuICAgICAgICAgICAgICAgICAgICBbVW5pdE9mTWVhc3VyZW1lbnQuQUxRVUVJUkVfNzl4NzldOiAzMDIwMCxcclxuICAgICAgICAgICAgICAgICAgICBbVW5pdE9mTWVhc3VyZW1lbnQuQUxRVUVJUkVfODB4ODBdOiAzMTkwMCxcclxuICAgICAgICAgICAgICAgICAgICBbVW5pdE9mTWVhc3VyZW1lbnQuQUxRVUVJUkVfNzV4MTAwXTogMzYzMDAsXHJcbiAgICAgICAgICAgICAgICAgICAgW1VuaXRPZk1lYXN1cmVtZW50LkFMUVVFSVJFXzEwMHgxNTBdOiA3MjYwMCxcclxuICAgICAgICAgICAgICAgICAgICBbVW5pdE9mTWVhc3VyZW1lbnQuQUxRVUVJUkVfQkFJQU5PXTogOTY4MDAsXHJcbiAgICAgICAgICAgICAgICAgICAgW1VuaXRPZk1lYXN1cmVtZW50LkFMUVVFSVJBT106IDE5MzYwMCxcclxuICAgICAgICAgICAgICAgICAgICBbVW5pdE9mTWVhc3VyZW1lbnQuQUxRVUVJUkVfUEFVTElTVEFdOiAyNDIwMCxcclxuICAgICAgICAgICAgICAgICAgICBbVW5pdE9mTWVhc3VyZW1lbnQuQUxRVUVJUkVfTUlORUlST106IDQ4NDAwLFxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgdW5pdHM6IHRoaXMuVk9MVU1FX1VOSVRTLFxyXG4gICAgICAgICAgICAgICAgZmFjdG9yVGFibGU6IHtcclxuICAgICAgICAgICAgICAgICAgICBbVW5pdE9mTWVhc3VyZW1lbnQuTElUUk9dOiBBR1JPX05VTUJFUlMuT05FLFxyXG4gICAgICAgICAgICAgICAgICAgIFtVbml0T2ZNZWFzdXJlbWVudC5NSUxJTElUUk9dOiAwLjAwMSxcclxuICAgICAgICAgICAgICAgICAgICBbVW5pdE9mTWVhc3VyZW1lbnQuTUVUUk9fQ1VCSUNPXTogQUdST19OVU1CRVJTLk9ORVRIT1VTQU5ELFxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgdW5pdHM6IHRoaXMuVElNRV9VTklUUyxcclxuICAgICAgICAgICAgICAgIGZhY3RvclRhYmxlOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgW1VuaXRPZk1lYXN1cmVtZW50LlNFR1VORE9dOiBBR1JPX05VTUJFUlMuT05FLFxyXG4gICAgICAgICAgICAgICAgICAgIFtVbml0T2ZNZWFzdXJlbWVudC5NSU5VVE9dOiBBR1JPX05VTUJFUlMuU0lYVFlfLFxyXG4gICAgICAgICAgICAgICAgICAgIFtVbml0T2ZNZWFzdXJlbWVudC5IT1JBXTogMzYwMCxcclxuICAgICAgICAgICAgICAgICAgICBbVW5pdE9mTWVhc3VyZW1lbnQuRElBXTogODY0MDAsXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICB1bml0czogdGhpcy5FTkVSR1lfVU5JVFMsXHJcbiAgICAgICAgICAgICAgICBmYWN0b3JUYWJsZToge1xyXG4gICAgICAgICAgICAgICAgICAgIFtVbml0T2ZNZWFzdXJlbWVudC5KT1VMRV06IEFHUk9fTlVNQkVSUy5PTkUsXHJcbiAgICAgICAgICAgICAgICAgICAgW1VuaXRPZk1lYXN1cmVtZW50LkNBTE9SSUFdOiA0LjE4NCxcclxuICAgICAgICAgICAgICAgICAgICBbVW5pdE9mTWVhc3VyZW1lbnQuUVVJTE9XQVRUX0hPUkFdOiAzXzYwMF8wMDAsXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICB1bml0czogdGhpcy5EQVRBX1VOSVRTLFxyXG4gICAgICAgICAgICAgICAgZmFjdG9yVGFibGU6IHtcclxuICAgICAgICAgICAgICAgICAgICBbVW5pdE9mTWVhc3VyZW1lbnQuQllURV06IEFHUk9fTlVNQkVSUy5PTkUsXHJcbiAgICAgICAgICAgICAgICAgICAgW1VuaXRPZk1lYXN1cmVtZW50LktJTE9CWVRFXTogMTAyNCxcclxuICAgICAgICAgICAgICAgICAgICBbVW5pdE9mTWVhc3VyZW1lbnQuTUVHQUJZVEVdOiAxMDI0ICoqIEFHUk9fTlVNQkVSUy5UV08sXHJcbiAgICAgICAgICAgICAgICAgICAgW1VuaXRPZk1lYXN1cmVtZW50LkdJR0FCWVRFXTogMTAyNCAqKiBBR1JPX05VTUJFUlMuVEhSRUUsXHJcbiAgICAgICAgICAgICAgICAgICAgW1VuaXRPZk1lYXN1cmVtZW50LlRFUkFCWVRFXTogMTAyNCAqKiBBR1JPX05VTUJFUlMuRk9VUixcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgXTtcclxuICAgIH1cclxuXHJcbiAgICAvLyDwn5S5IE3DqXRvZG9zIGRlIGNvbnZlcnPDo29cclxuICAgIGNvbnZlcnRUZW1wZXJhdHVyZVVuaXQodmFsb3I6IG51bWJlciwgZGU6IFVuaXRPZk1lYXN1cmVtZW50LCBwYXJhOiBVbml0T2ZNZWFzdXJlbWVudCk6IG51bWJlciB7XHJcbiAgICAgICAgaWYgKGRlID09PSBwYXJhKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB2YWxvcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGxldCBjZWxzaXVzOiBudW1iZXI7XHJcbiAgICAgICAgc3dpdGNoIChkZSkge1xyXG4gICAgICAgICAgICBjYXNlIFVuaXRPZk1lYXN1cmVtZW50LkNFTFNJVVM6XHJcbiAgICAgICAgICAgICAgICBjZWxzaXVzID0gdmFsb3I7XHJcbiAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgY2FzZSBVbml0T2ZNZWFzdXJlbWVudC5GQUhSRU5IRUlUOlxyXG4gICAgICAgICAgICAgICAgY2Vsc2l1cyA9ICgodmFsb3IgLSBBR1JPX05VTUJFUlMuVEhJUlRZX1RXTykgKiBBR1JPX05VTUJFUlMuRklWRSkgLyBBR1JPX05VTUJFUlMuTklORTtcclxuICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICBjYXNlIFVuaXRPZk1lYXN1cmVtZW50LktFTFZJTjpcclxuICAgICAgICAgICAgICAgIGNlbHNpdXMgPSB2YWxvciAtIFRXT19IVU5EUkVEX1NFVkVOVFlfVEhSRUVfUE9JTlRfT05FX0ZJVkU7XHJcbiAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIlVuaWRhZGUgaW52w6FsaWRhXCIpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgc3dpdGNoIChwYXJhKSB7XHJcbiAgICAgICAgICAgIGNhc2UgVW5pdE9mTWVhc3VyZW1lbnQuQ0VMU0lVUzpcclxuICAgICAgICAgICAgICAgIHJldHVybiBjZWxzaXVzO1xyXG4gICAgICAgICAgICBjYXNlIFVuaXRPZk1lYXN1cmVtZW50LkZBSFJFTkhFSVQ6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gKGNlbHNpdXMgKiBBR1JPX05VTUJFUlMuTklORSkgLyBBR1JPX05VTUJFUlMuRklWRSArIEFHUk9fTlVNQkVSUy5USElSVFlfVFdPO1xyXG4gICAgICAgICAgICBjYXNlIFVuaXRPZk1lYXN1cmVtZW50LktFTFZJTjpcclxuICAgICAgICAgICAgICAgIHJldHVybiBjZWxzaXVzICsgVFdPX0hVTkRSRURfU0VWRU5UWV9USFJFRV9QT0lOVF9PTkVfRklWRTtcclxuICAgICAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIlVuaWRhZGUgaW52w6FsaWRhXCIpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGlzVGVtcGVyYXR1cmVVbml0KHVuaXQ6IFVuaXRPZk1lYXN1cmVtZW50KTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuVEVNUEVSQVRVUkVfVU5JVFMuaW5jbHVkZXModW5pdCk7XHJcbiAgICB9XHJcblxyXG4gICAgY29udmVydFNjYWxhYmxlVW5pdHModmFsb3I6IG51bWJlciwgZnJvbTogVW5pdE9mTWVhc3VyZW1lbnQsIHRvOiBVbml0T2ZNZWFzdXJlbWVudCk6IG51bWJlciB7XHJcbiAgICAgICAgaWYgKGZyb20gPT09IHRvKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB2YWxvcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmICh0aGlzLmlzVGVtcGVyYXR1cmVVbml0KGZyb20pIHx8IHRoaXMuaXNUZW1wZXJhdHVyZVVuaXQodG8pKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmNvbnZlcnRUZW1wZXJhdHVyZVVuaXQodmFsb3IsIGZyb20sIHRvKTtcclxuICAgICAgICB9XHJcblxyXG5cclxuICAgICAgICBjb25zdCB1bml0Q2F0ZWdvcnkgPSB0aGlzLmNvbnZlcnNpb25Vbml0cy5maW5kKCh1KSA9PiB1LnVuaXRzLmluY2x1ZGVzKGZyb20pKTtcclxuICAgICAgICBpZiAoIXVuaXRDYXRlZ29yeT8udW5pdHM/LmluY2x1ZGVzKHRvKSkge1xyXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYE7Do28gw6kgcG9zc8OtdmVsIGNvbnZlcnRlciBkZSAke2Zyb219IHBhcmEgJHt0b306IGNhdGVnb3JpYXMgZGlmZXJlbnRlcyBvdSB1bmlkYWRlIG7Do28gZXNjYWzDoXZlbC5gKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGNvbnN0IGZhdG9yRGUgPSB1bml0Q2F0ZWdvcnkuZmFjdG9yVGFibGVbZnJvbV07XHJcbiAgICAgICAgY29uc3QgZmF0b3JQYXJhID0gdW5pdENhdGVnb3J5LmZhY3RvclRhYmxlW3RvXTtcclxuXHJcbiAgICAgICAgY29uc3QgZW1CYXNlID0gdmFsb3IgKiBmYXRvckRlO1xyXG4gICAgICAgIHJldHVybiBlbUJhc2UgLyBmYXRvclBhcmE7XHJcbiAgICB9XHJcblxyXG4gICAgY29udmVydExpdGVyc1BlckFyZWEodmFsb3I6IG51bWJlciwgZnJvbTogVW5pdE9mTWVhc3VyZW1lbnQsIHRvOiBVbml0T2ZNZWFzdXJlbWVudCk6IG51bWJlciB7XHJcbiAgICAgICAgY29uc3QgYXJlYUNhdGVnb3J5ID0gdGhpcy5jb252ZXJzaW9uVW5pdHMuZmluZCgodSkgPT4gdS51bml0cy5pbmNsdWRlcyhmcm9tKSk7XHJcbiAgICAgICAgaWYgKCFhcmVhQ2F0ZWdvcnk/LnVuaXRzPy5pbmNsdWRlcyh0bykpIHtcclxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbmlkYWRlIGRlIMOhcmVhIGludsOhbGlkYTogJHtmcm9tfSBvdSAke3RvfWApO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgY29uc3QgZmF0b3JGcm9tID0gYXJlYUNhdGVnb3J5LmZhY3RvclRhYmxlW2Zyb21dO1xyXG4gICAgICAgIGNvbnN0IGZhdG9yVG8gPSBhcmVhQ2F0ZWdvcnkuZmFjdG9yVGFibGVbdG9dO1xyXG5cclxuICAgICAgICByZXR1cm4gKHZhbG9yIC8gZmF0b3JGcm9tKSAqIGZhdG9yVG87XHJcbiAgICB9XHJcblxyXG4gICAgY29udmVydEtnUGVyQXJlYSh2YWxvcjogbnVtYmVyLCBmcm9tOiBVbml0T2ZNZWFzdXJlbWVudCwgdG86IFVuaXRPZk1lYXN1cmVtZW50KTogbnVtYmVyIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5jb252ZXJ0TGl0ZXJzUGVyQXJlYSh2YWxvciwgZnJvbSwgdG8pO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnZlcnRCdXNoZWxUb0tnKGJ1c2hlbDogbnVtYmVyLCBmYWN0b3I6IG51bWJlcik6IG51bWJlciB7XHJcbiAgICAgICAgaWYgKGZhY3RvciA8PSAwKSB7XHJcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIkZhdG9yIGRlIGNvbnZlcnPDo28gaW52w6FsaWRvXCIpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gYnVzaGVsICogZmFjdG9yO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnZlcnRLZ1RvQnVzaGVsKGtnOiBudW1iZXIsIGZhY3RvcjogbnVtYmVyKTogbnVtYmVyIHtcclxuICAgICAgICBpZiAoZmFjdG9yIDw9IDApIHtcclxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiRmF0b3IgZGUgY29udmVyc8OjbyBpbnbDoWxpZG9cIik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBrZyAvIGZhY3RvcjtcclxuICAgIH1cclxuXHJcbiAgICBjYWxjdWxhdGVBcmVhRnJvbVZvbHVtZSh0b3RhbFZvbHVtZTogbnVtYmVyLCByYXRlOiBudW1iZXIsIHJhdGVVbml0OiBVbml0T2ZNZWFzdXJlbWVudCwgYXJlYVVuaXQ6IFVuaXRPZk1lYXN1cmVtZW50KTogbnVtYmVyIHtcclxuICAgICAgICBpZiAocmF0ZSA8PSAwKSB7XHJcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIlRheGEgZGUgYXBsaWNhw6fDo28gaW52w6FsaWRhXCIpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjb25zdCByYXRlSW5EZXNpcmVkVW5pdCA9IHRoaXMuY29udmVydExpdGVyc1BlckFyZWEocmF0ZSwgcmF0ZVVuaXQsIGFyZWFVbml0KTtcclxuICAgICAgICByZXR1cm4gdG90YWxWb2x1bWUgLyByYXRlSW5EZXNpcmVkVW5pdDtcclxuICAgIH1cclxuXHJcbiAgICBjb252ZXJ0RWxlY3RyaWNpdHlVbml0KHZhbG9yOiBudW1iZXIsIHZvbHRhZ2U6IG51bWJlciwgZnJvbTogVW5pdE9mTWVhc3VyZW1lbnQsIHRvOiBVbml0T2ZNZWFzdXJlbWVudCk6IG51bWJlciB7XHJcbiAgICAgICAgaWYgKGZyb20gPT09IHRvKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB2YWxvcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGNvbnN0IHRvV2F0dCA9ICh2OiBudW1iZXIsIHVuaXQ6IFVuaXRPZk1lYXN1cmVtZW50KTogbnVtYmVyID0+IHtcclxuICAgICAgICAgICAgc3dpdGNoICh1bml0KSB7XHJcbiAgICAgICAgICAgICAgICBjYXNlIFVuaXRPZk1lYXN1cmVtZW50LlZPTFQ6XHJcbiAgICAgICAgICAgICAgICBjYXNlIFVuaXRPZk1lYXN1cmVtZW50LkFNUEVSRTpcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdm9sdGFnZSAqIHY7IC8vIFAgPSBWICogSVxyXG4gICAgICAgICAgICAgICAgY2FzZSBVbml0T2ZNZWFzdXJlbWVudC5XQVRUOlxyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB2O1xyXG4gICAgICAgICAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEEgdW5pZGFkZSAke3VuaXR9IG7Do28gw6kgZXNjYWzDoXZlbCBkaXJldGFtZW50ZS5gKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH07XHJcblxyXG4gICAgICAgIGNvbnN0IGZyb21XYXR0ID0gKHc6IG51bWJlciwgdW5pdDogVW5pdE9mTWVhc3VyZW1lbnQpOiBudW1iZXIgPT4ge1xyXG4gICAgICAgICAgICBzd2l0Y2ggKHVuaXQpIHtcclxuICAgICAgICAgICAgICAgIGNhc2UgVW5pdE9mTWVhc3VyZW1lbnQuVk9MVDpcclxuICAgICAgICAgICAgICAgIGNhc2UgVW5pdE9mTWVhc3VyZW1lbnQuQU1QRVJFOlxyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB3IC8gdm9sdGFnZTtcclxuICAgICAgICAgICAgICAgIGNhc2UgVW5pdE9mTWVhc3VyZW1lbnQuV0FUVDpcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdztcclxuICAgICAgICAgICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBBIHVuaWRhZGUgJHt1bml0fSBuw6NvIMOpIGVzY2Fsw6F2ZWwgZGlyZXRhbWVudGUuYCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9O1xyXG5cclxuICAgICAgICBjb25zdCB3YXR0VmFsdWUgPSB0b1dhdHQodmFsb3IsIGZyb20pO1xyXG4gICAgICAgIHJldHVybiBmcm9tV2F0dCh3YXR0VmFsdWUsIHRvKTtcclxuICAgIH1cclxufVxyXG4iXX0=
|