@senior-agronegocio/angular-components 1.0.2 → 1.0.4

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.
@@ -19,6 +19,7 @@ export declare class ModalInvoicePjForContractsComponent extends ModalInvoicePjB
19
19
  datePipe: DatePipe;
20
20
  options: ModalInvoicePjForContractsOptions;
21
21
  whenSelectInvoices: EventEmitter<any[]>;
22
+ invertFooterActions: boolean;
22
23
  gridColumns: Partial<Column & {
23
24
  sortable?: boolean;
24
25
  }>[];
@@ -26,12 +26,22 @@ export declare abstract class ModalInvoicePjBase implements OnInit, OnDestroy {
26
26
  sortable?: boolean;
27
27
  }>[];
28
28
  gridData: any[];
29
+ readonly loadingGridData: {
30
+ externalInvoiceId: string;
31
+ number: string;
32
+ series: string;
33
+ invoiceItems: number;
34
+ quantity: string;
35
+ issuanceDate: string;
36
+ __isPlaceholder: boolean;
37
+ }[];
29
38
  readonly ButtonPriority: {
30
39
  Primary: "primary";
31
40
  Secondary: "secondary";
32
41
  Link: "link";
33
42
  };
34
43
  dontHaveAnyInvoice: boolean;
44
+ invertFooterActions: boolean;
35
45
  gridLoading: boolean;
36
46
  gridTotalRecords: number;
37
47
  selected: any[];
@@ -43,6 +53,7 @@ export declare abstract class ModalInvoicePjBase implements OnInit, OnDestroy {
43
53
  gridFieldValuesMap: {
44
54
  [key: string]: (row: any) => any;
45
55
  };
56
+ get tableDataSource(): any[];
46
57
  constructor(translate: LibTranslationService, invoiceService: AgroInvoiceService, localeService: LocaleService, kilogramPipe: KilogramPipe, messageService: MessageService, datePipe: DatePipe);
47
58
  ngOnDestroy(): void;
48
59
  ngOnInit(): void;
@@ -18,17 +18,9 @@ export class E070Fil {
18
18
  model.lastModifiedDate = model.lastModifiedDate && moment(model.lastModifiedDate).toDate();
19
19
  const lookupSeparator = " - ";
20
20
  const displayFields = [
21
- "id",
22
- "e070emp.id",
23
21
  "codFil",
24
22
  "nomFil",
25
- "sigFil",
26
23
  "numCgc",
27
- "cidFil",
28
- "createdBy",
29
- "createdDate",
30
- "lastModifiedBy",
31
- "lastModifiedDate",
32
24
  ];
33
25
  model.label = displayFields.map((field) => model[field]).join(lookupSeparator);
34
26
  if (originEntity !== "E070Emp" && model.e070emp) {
@@ -49,4 +41,4 @@ export class E070Fil {
49
41
  return dto;
50
42
  }
51
43
  }
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZTA3MGZpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY29tcG9uZW50cy9jb21wb25lbnRzL2V2ZW50LWNvbnRyb2wtYm9hcmQvc2VydmljZS9lMDcwZmlsL2UwNzBmaWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxNQUFNLE1BQU0sUUFBUSxDQUFDO0FBRTVCLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUU3QyxNQUFNLE9BQU8sT0FBTztJQUNULEVBQUUsQ0FBVTtJQUNaLE9BQU8sQ0FBVztJQUNsQixNQUFNLENBQVU7SUFDaEIsTUFBTSxDQUFVO0lBQ2hCLE1BQU0sQ0FBVTtJQUNoQixNQUFNLENBQVU7SUFDaEIsTUFBTSxDQUFVO0lBQ2hCLFNBQVMsQ0FBVTtJQUNuQixXQUFXLENBQVE7SUFDbkIsY0FBYyxDQUFVO0lBQ3hCLGdCQUFnQixDQUFRO0lBRXhCLE1BQU0sQ0FBQyxPQUFPLENBQUMsVUFBc0IsRUFBRSxZQUFxQjtRQUMvRCxNQUFNLEtBQUssR0FBUSxFQUFFLEdBQUcsVUFBVSxFQUFFLENBQUM7UUFFckMsS0FBSyxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUMsV0FBVyxJQUFJLE1BQU0sQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDNUUsS0FBSyxDQUFDLGdCQUFnQixHQUFHLEtBQUssQ0FBQyxnQkFBZ0IsSUFBSSxNQUFNLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7UUFFM0YsTUFBTSxlQUFlLEdBQUcsS0FBSyxDQUFDO1FBQzlCLE1BQU0sYUFBYSxHQUFHO1lBQ2xCLElBQUk7WUFDSixZQUFZO1lBQ1osUUFBUTtZQUNSLFFBQVE7WUFDUixRQUFRO1lBQ1IsUUFBUTtZQUNSLFFBQVE7WUFDUixXQUFXO1lBQ1gsYUFBYTtZQUNiLGdCQUFnQjtZQUNoQixrQkFBa0I7U0FDckIsQ0FBQztRQUVGLEtBQUssQ0FBQyxLQUFLLEdBQUcsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBRS9FLElBQUksWUFBWSxLQUFLLFNBQVMsSUFBSSxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDOUMsS0FBSyxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFTLEVBQUUsRUFBRSxDQUMzRCxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxTQUFTLENBQUMsQ0FDbkMsQ0FBQztRQUNOLENBQUM7UUFFRCxPQUFPLEtBQWdCLENBQUM7SUFDNUIsQ0FBQztJQUVNLE1BQU0sQ0FBQyxLQUFLLENBQUMsT0FBZ0IsRUFBRSxZQUFxQjtRQUN2RCxNQUFNLEdBQUcsR0FBUSxFQUFFLEdBQUcsT0FBTyxFQUFFLENBQUM7UUFFaEMsR0FBRyxDQUFDLFdBQVcsR0FBRyxHQUFHLENBQUMsV0FBVyxJQUFJLE1BQU0sQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDdEUsR0FBRyxDQUFDLGdCQUFnQixHQUFHLEdBQUcsQ0FBQyxnQkFBZ0IsSUFBSSxNQUFNLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7UUFFckYsT0FBTyxHQUFHLENBQUMsS0FBSyxDQUFDO1FBRWpCLElBQUksWUFBWSxLQUFLLFNBQVMsSUFBSSxHQUFHLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDNUMsR0FBRyxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUM7aUJBQ25DLEdBQUcsQ0FBQyxDQUFDLElBQVMsRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsU0FBUyxDQUFDLENBQUM7aUJBQ2xELE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNwRCxDQUFDO1FBRUQsT0FBTyxHQUFHLENBQUM7SUFDZixDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgbW9tZW50IGZyb20gXCJtb21lbnRcIjtcclxuaW1wb3J0IHsgRTA3MEZpbER0byB9IGZyb20gXCIuL2UwNzBmaWwtZHRvXCI7XHJcbmltcG9ydCB7IEUwNzBFbXAgfSBmcm9tIFwiLi4vZTA3MGVtcC9lMDcwZW1wXCI7XHJcblxyXG5leHBvcnQgY2xhc3MgRTA3MEZpbCB7XHJcbiAgICBwdWJsaWMgaWQ/OiBzdHJpbmc7XHJcbiAgICBwdWJsaWMgZTA3MGVtcD86IEUwNzBFbXA7XHJcbiAgICBwdWJsaWMgY29kRmlsPzogbnVtYmVyO1xyXG4gICAgcHVibGljIG5vbUZpbD86IHN0cmluZztcclxuICAgIHB1YmxpYyBzaWdGaWw/OiBzdHJpbmc7XHJcbiAgICBwdWJsaWMgbnVtQ2djPzogbnVtYmVyO1xyXG4gICAgcHVibGljIGNpZEZpbD86IHN0cmluZztcclxuICAgIHB1YmxpYyBjcmVhdGVkQnk/OiBzdHJpbmc7XHJcbiAgICBwdWJsaWMgY3JlYXRlZERhdGU/OiBEYXRlO1xyXG4gICAgcHVibGljIGxhc3RNb2RpZmllZEJ5Pzogc3RyaW5nO1xyXG4gICAgcHVibGljIGxhc3RNb2RpZmllZERhdGU/OiBEYXRlO1xyXG5cclxuICAgIHB1YmxpYyBzdGF0aWMgZnJvbUR0byhlMDcwRmlsRHRvOiBFMDcwRmlsRHRvLCBvcmlnaW5FbnRpdHk/OiBzdHJpbmcpOiBFMDcwRmlsIHtcclxuICAgICAgICBjb25zdCBtb2RlbDogYW55ID0geyAuLi5lMDcwRmlsRHRvIH07XHJcblxyXG4gICAgICAgIG1vZGVsLmNyZWF0ZWREYXRlID0gbW9kZWwuY3JlYXRlZERhdGUgJiYgbW9tZW50KG1vZGVsLmNyZWF0ZWREYXRlKS50b0RhdGUoKTtcclxuICAgICAgICBtb2RlbC5sYXN0TW9kaWZpZWREYXRlID0gbW9kZWwubGFzdE1vZGlmaWVkRGF0ZSAmJiBtb21lbnQobW9kZWwubGFzdE1vZGlmaWVkRGF0ZSkudG9EYXRlKCk7XHJcblxyXG4gICAgICAgIGNvbnN0IGxvb2t1cFNlcGFyYXRvciA9IFwiIC0gXCI7XHJcbiAgICAgICAgY29uc3QgZGlzcGxheUZpZWxkcyA9IFtcclxuICAgICAgICAgICAgXCJpZFwiLFxyXG4gICAgICAgICAgICBcImUwNzBlbXAuaWRcIixcclxuICAgICAgICAgICAgXCJjb2RGaWxcIixcclxuICAgICAgICAgICAgXCJub21GaWxcIixcclxuICAgICAgICAgICAgXCJzaWdGaWxcIixcclxuICAgICAgICAgICAgXCJudW1DZ2NcIixcclxuICAgICAgICAgICAgXCJjaWRGaWxcIixcclxuICAgICAgICAgICAgXCJjcmVhdGVkQnlcIixcclxuICAgICAgICAgICAgXCJjcmVhdGVkRGF0ZVwiLFxyXG4gICAgICAgICAgICBcImxhc3RNb2RpZmllZEJ5XCIsXHJcbiAgICAgICAgICAgIFwibGFzdE1vZGlmaWVkRGF0ZVwiLFxyXG4gICAgICAgIF07XHJcblxyXG4gICAgICAgIG1vZGVsLmxhYmVsID0gZGlzcGxheUZpZWxkcy5tYXAoKGZpZWxkKSA9PiBtb2RlbFtmaWVsZF0pLmpvaW4obG9va3VwU2VwYXJhdG9yKTtcclxuXHJcbiAgICAgICAgaWYgKG9yaWdpbkVudGl0eSAhPT0gXCJFMDcwRW1wXCIgJiYgbW9kZWwuZTA3MGVtcCkge1xyXG4gICAgICAgICAgICBtb2RlbC5lMDcwZW1wID0gT2JqZWN0LnZhbHVlcyhtb2RlbC5lMDcwZW1wKS5tYXAoKGl0ZW06IGFueSkgPT5cclxuICAgICAgICAgICAgICAgIEUwNzBFbXAuZnJvbUR0byhpdGVtLCBcIkUwNzBGaWxcIilcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiBtb2RlbCBhcyBFMDcwRmlsO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBzdGF0aWMgdG9EdG8oZTA3MEZpbDogRTA3MEZpbCwgb3JpZ2luRW50aXR5Pzogc3RyaW5nKTogRTA3MEZpbER0byB7XHJcbiAgICAgICAgY29uc3QgZHRvOiBhbnkgPSB7IC4uLmUwNzBGaWwgfTtcclxuXHJcbiAgICAgICAgZHRvLmNyZWF0ZWREYXRlID0gZHRvLmNyZWF0ZWREYXRlICYmIG1vbWVudChkdG8uY3JlYXRlZERhdGUpLmZvcm1hdCgpO1xyXG4gICAgICAgIGR0by5sYXN0TW9kaWZpZWREYXRlID0gZHRvLmxhc3RNb2RpZmllZERhdGUgJiYgbW9tZW50KGR0by5sYXN0TW9kaWZpZWREYXRlKS5mb3JtYXQoKTtcclxuXHJcbiAgICAgICAgZGVsZXRlIGR0by5sYWJlbDtcclxuXHJcbiAgICAgICAgaWYgKG9yaWdpbkVudGl0eSAhPT0gXCJFMDcwRW1wXCIgJiYgZHRvLmUwNzBlbXApIHtcclxuICAgICAgICAgICAgZHRvLmUwNzBlbXAgPSBPYmplY3QudmFsdWVzKGR0by5lMDcwZW1wKVxyXG4gICAgICAgICAgICAgICAgLm1hcCgoaXRlbTogYW55KSA9PiBFMDcwRW1wLnRvRHRvKGl0ZW0sIFwiRTA3MEZpbFwiKSlcclxuICAgICAgICAgICAgICAgIC5maWx0ZXIoKGl0ZW0pID0+IE9iamVjdC5rZXlzKGl0ZW0pLmxlbmd0aCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gZHRvO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZTA3MGZpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY29tcG9uZW50cy9jb21wb25lbnRzL2V2ZW50LWNvbnRyb2wtYm9hcmQvc2VydmljZS9lMDcwZmlsL2UwNzBmaWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxNQUFNLE1BQU0sUUFBUSxDQUFDO0FBRTVCLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUU3QyxNQUFNLE9BQU8sT0FBTztJQUNULEVBQUUsQ0FBVTtJQUNaLE9BQU8sQ0FBVztJQUNsQixNQUFNLENBQVU7SUFDaEIsTUFBTSxDQUFVO0lBQ2hCLE1BQU0sQ0FBVTtJQUNoQixNQUFNLENBQVU7SUFDaEIsTUFBTSxDQUFVO0lBQ2hCLFNBQVMsQ0FBVTtJQUNuQixXQUFXLENBQVE7SUFDbkIsY0FBYyxDQUFVO0lBQ3hCLGdCQUFnQixDQUFRO0lBRXhCLE1BQU0sQ0FBQyxPQUFPLENBQUMsVUFBc0IsRUFBRSxZQUFxQjtRQUMvRCxNQUFNLEtBQUssR0FBUSxFQUFFLEdBQUcsVUFBVSxFQUFFLENBQUM7UUFFckMsS0FBSyxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUMsV0FBVyxJQUFJLE1BQU0sQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDNUUsS0FBSyxDQUFDLGdCQUFnQixHQUFHLEtBQUssQ0FBQyxnQkFBZ0IsSUFBSSxNQUFNLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7UUFFM0YsTUFBTSxlQUFlLEdBQUcsS0FBSyxDQUFDO1FBQzlCLE1BQU0sYUFBYSxHQUFHO1lBQ2xCLFFBQVE7WUFDUixRQUFRO1lBQ1IsUUFBUTtTQUNYLENBQUM7UUFFRixLQUFLLENBQUMsS0FBSyxHQUFHLGFBQWEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUUvRSxJQUFJLFlBQVksS0FBSyxTQUFTLElBQUksS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQzlDLEtBQUssQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBUyxFQUFFLEVBQUUsQ0FDM0QsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsU0FBUyxDQUFDLENBQ25DLENBQUM7UUFDTixDQUFDO1FBRUQsT0FBTyxLQUFnQixDQUFDO0lBQzVCLENBQUM7SUFFTSxNQUFNLENBQUMsS0FBSyxDQUFDLE9BQWdCLEVBQUUsWUFBcUI7UUFDdkQsTUFBTSxHQUFHLEdBQVEsRUFBRSxHQUFHLE9BQU8sRUFBRSxDQUFDO1FBRWhDLEdBQUcsQ0FBQyxXQUFXLEdBQUcsR0FBRyxDQUFDLFdBQVcsSUFBSSxNQUFNLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3RFLEdBQUcsQ0FBQyxnQkFBZ0IsR0FBRyxHQUFHLENBQUMsZ0JBQWdCLElBQUksTUFBTSxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBRXJGLE9BQU8sR0FBRyxDQUFDLEtBQUssQ0FBQztRQUVqQixJQUFJLFlBQVksS0FBSyxTQUFTLElBQUksR0FBRyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQzVDLEdBQUcsQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDO2lCQUNuQyxHQUFHLENBQUMsQ0FBQyxJQUFTLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxDQUFDO2lCQUNsRCxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDcEQsQ0FBQztRQUVELE9BQU8sR0FBRyxDQUFDO0lBQ2YsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IG1vbWVudCBmcm9tIFwibW9tZW50XCI7XHJcbmltcG9ydCB7IEUwNzBGaWxEdG8gfSBmcm9tIFwiLi9lMDcwZmlsLWR0b1wiO1xyXG5pbXBvcnQgeyBFMDcwRW1wIH0gZnJvbSBcIi4uL2UwNzBlbXAvZTA3MGVtcFwiO1xyXG5cclxuZXhwb3J0IGNsYXNzIEUwNzBGaWwge1xyXG4gICAgcHVibGljIGlkPzogc3RyaW5nO1xyXG4gICAgcHVibGljIGUwNzBlbXA/OiBFMDcwRW1wO1xyXG4gICAgcHVibGljIGNvZEZpbD86IG51bWJlcjtcclxuICAgIHB1YmxpYyBub21GaWw/OiBzdHJpbmc7XHJcbiAgICBwdWJsaWMgc2lnRmlsPzogc3RyaW5nO1xyXG4gICAgcHVibGljIG51bUNnYz86IG51bWJlcjtcclxuICAgIHB1YmxpYyBjaWRGaWw/OiBzdHJpbmc7XHJcbiAgICBwdWJsaWMgY3JlYXRlZEJ5Pzogc3RyaW5nO1xyXG4gICAgcHVibGljIGNyZWF0ZWREYXRlPzogRGF0ZTtcclxuICAgIHB1YmxpYyBsYXN0TW9kaWZpZWRCeT86IHN0cmluZztcclxuICAgIHB1YmxpYyBsYXN0TW9kaWZpZWREYXRlPzogRGF0ZTtcclxuXHJcbiAgICBwdWJsaWMgc3RhdGljIGZyb21EdG8oZTA3MEZpbER0bzogRTA3MEZpbER0bywgb3JpZ2luRW50aXR5Pzogc3RyaW5nKTogRTA3MEZpbCB7XHJcbiAgICAgICAgY29uc3QgbW9kZWw6IGFueSA9IHsgLi4uZTA3MEZpbER0byB9O1xyXG5cclxuICAgICAgICBtb2RlbC5jcmVhdGVkRGF0ZSA9IG1vZGVsLmNyZWF0ZWREYXRlICYmIG1vbWVudChtb2RlbC5jcmVhdGVkRGF0ZSkudG9EYXRlKCk7XHJcbiAgICAgICAgbW9kZWwubGFzdE1vZGlmaWVkRGF0ZSA9IG1vZGVsLmxhc3RNb2RpZmllZERhdGUgJiYgbW9tZW50KG1vZGVsLmxhc3RNb2RpZmllZERhdGUpLnRvRGF0ZSgpO1xyXG5cclxuICAgICAgICBjb25zdCBsb29rdXBTZXBhcmF0b3IgPSBcIiAtIFwiO1xyXG4gICAgICAgIGNvbnN0IGRpc3BsYXlGaWVsZHMgPSBbXHJcbiAgICAgICAgICAgIFwiY29kRmlsXCIsXHJcbiAgICAgICAgICAgIFwibm9tRmlsXCIsXHJcbiAgICAgICAgICAgIFwibnVtQ2djXCIsXHJcbiAgICAgICAgXTtcclxuXHJcbiAgICAgICAgbW9kZWwubGFiZWwgPSBkaXNwbGF5RmllbGRzLm1hcCgoZmllbGQpID0+IG1vZGVsW2ZpZWxkXSkuam9pbihsb29rdXBTZXBhcmF0b3IpO1xyXG5cclxuICAgICAgICBpZiAob3JpZ2luRW50aXR5ICE9PSBcIkUwNzBFbXBcIiAmJiBtb2RlbC5lMDcwZW1wKSB7XHJcbiAgICAgICAgICAgIG1vZGVsLmUwNzBlbXAgPSBPYmplY3QudmFsdWVzKG1vZGVsLmUwNzBlbXApLm1hcCgoaXRlbTogYW55KSA9PlxyXG4gICAgICAgICAgICAgICAgRTA3MEVtcC5mcm9tRHRvKGl0ZW0sIFwiRTA3MEZpbFwiKVxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIG1vZGVsIGFzIEUwNzBGaWw7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIHN0YXRpYyB0b0R0byhlMDcwRmlsOiBFMDcwRmlsLCBvcmlnaW5FbnRpdHk/OiBzdHJpbmcpOiBFMDcwRmlsRHRvIHtcclxuICAgICAgICBjb25zdCBkdG86IGFueSA9IHsgLi4uZTA3MEZpbCB9O1xyXG5cclxuICAgICAgICBkdG8uY3JlYXRlZERhdGUgPSBkdG8uY3JlYXRlZERhdGUgJiYgbW9tZW50KGR0by5jcmVhdGVkRGF0ZSkuZm9ybWF0KCk7XHJcbiAgICAgICAgZHRvLmxhc3RNb2RpZmllZERhdGUgPSBkdG8ubGFzdE1vZGlmaWVkRGF0ZSAmJiBtb21lbnQoZHRvLmxhc3RNb2RpZmllZERhdGUpLmZvcm1hdCgpO1xyXG5cclxuICAgICAgICBkZWxldGUgZHRvLmxhYmVsO1xyXG5cclxuICAgICAgICBpZiAob3JpZ2luRW50aXR5ICE9PSBcIkUwNzBFbXBcIiAmJiBkdG8uZTA3MGVtcCkge1xyXG4gICAgICAgICAgICBkdG8uZTA3MGVtcCA9IE9iamVjdC52YWx1ZXMoZHRvLmUwNzBlbXApXHJcbiAgICAgICAgICAgICAgICAubWFwKChpdGVtOiBhbnkpID0+IEUwNzBFbXAudG9EdG8oaXRlbSwgXCJFMDcwRmlsXCIpKVxyXG4gICAgICAgICAgICAgICAgLmZpbHRlcigoaXRlbSkgPT4gT2JqZWN0LmtleXMoaXRlbSkubGVuZ3RoKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiBkdG87XHJcbiAgICB9XHJcbn1cclxuIl19
@@ -13,8 +13,7 @@ import * as i9 from "@seniorsistemas/angular-components/empty-state";
13
13
  import * as i10 from "primeng/inputtext";
14
14
  import * as i11 from "@angular/forms";
15
15
  import * as i12 from "primeng/dialog";
16
- import * as i13 from "@seniorsistemas/angular-components/loading-state";
17
- import * as i14 from "../../../pipe/lib-translate.pipe";
16
+ import * as i13 from "../../../pipe/lib-translate.pipe";
18
17
  export class ModalInvoicePjForContractsComponent extends ModalInvoicePjBase {
19
18
  translate;
20
19
  invoiceService;
@@ -24,6 +23,7 @@ export class ModalInvoicePjForContractsComponent extends ModalInvoicePjBase {
24
23
  datePipe;
25
24
  options;
26
25
  whenSelectInvoices = new EventEmitter();
26
+ invertFooterActions = true;
27
27
  gridColumns;
28
28
  constructor(translate, invoiceService, localeService, kilogramPipe, messageService, datePipe) {
29
29
  super(translate, invoiceService, localeService, kilogramPipe, messageService, datePipe);
@@ -54,14 +54,14 @@ export class ModalInvoicePjForContractsComponent extends ModalInvoicePjBase {
54
54
  return Promise.resolve();
55
55
  }
56
56
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ModalInvoicePjForContractsComponent, deps: [{ token: i1.LibTranslationService }, { token: i2.AgroInvoiceService }, { token: i3.LocaleService }, { token: i4.KilogramPipe }, { token: i5.MessageService }, { token: i6.DatePipe }], target: i0.ɵɵFactoryTarget.Component });
57
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: ModalInvoicePjForContractsComponent, selector: "s-modal-invoice-pj-for-contracts", inputs: { options: "options" }, outputs: { whenSelectInvoices: "whenSelectInvoices" }, usesInheritance: true, ngImport: i0, template: "<p-dialog\r\n header=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [(visible)]=\"visible\"\r\n [modal]=\"true\"\r\n class=\"add-invoice-modal\"\r\n [closeOnEscape]=\"false\"\r\n (onHide)=\"cancelPooling()\"\r\n [dismissableMask]=\"false\"\r\n>\r\n <ng-container *ngIf=\"!dontHaveAnyInvoice\">\r\n <div class=\"ui-g\">\r\n <label for=\"invoiceSearchInput\">{{ 'agro.angular_components.number' | libTranslate }}</label>\r\n <input\r\n type=\"text\"\r\n id=\"invoiceSearchInput\"\r\n pInputText\r\n [formControl]=\"searchValue\"\r\n [placeholder]=\"'' | libTranslate\"\r\n [required]=\"false\"\r\n />\r\n <div class=\"ui-g-12\">\r\n <p-table\r\n [(selection)]=\"selected\"\r\n [value]=\"gridData\"\r\n [columns]=\"gridColumns\"\r\n [scrollable]=\"true\"\r\n dataKey=\"externalInvoiceId\"\r\n [rows]=\"10\"\r\n [paginator]=\"true\"\r\n [lazyLoadOnInit]=\"false\"\r\n [totalRecords]=\"gridTotalRecords\"\r\n [lazy]=\"true\"\r\n (onLazyLoad)=\"updateGridData($event)\"\r\n [resizableColumns]=\"true\"\r\n *sLoadingState=\"gridLoading\"\r\n sortMode=\"multiple\"\r\n [selectionMode]=\"'multiple'\"\r\n >\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n <th class=\"checkbox\" scope=\"col\">\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n </th>\r\n <ng-container *ngFor=\"let col of columns\">\r\n <th\r\n *ngIf=\"col.sortable === undefined || col.sortable\"\r\n [pSortableColumn]=\"col.field\"\r\n scope=\"col\"\r\n >\r\n {{ col.header }}\r\n <p-sortIcon [field]=\"col.field\"></p-sortIcon>\r\n </th>\r\n <th *ngIf=\"col.sortable === false || col.sortable === null\" scope=\"col\">\r\n {{ col.header }}\r\n </th>\r\n </ng-container>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"body\" let-rowData let-columns=\"columns\" let-rowIndex=\"rowIndex\">\r\n <tr>\r\n <td class=\"checkbox\" tabindex=\"0\">\r\n <p-tableCheckbox [value]=\"rowData\"></p-tableCheckbox>\r\n </td>\r\n <td\r\n [pSelectableRow]=\"rowData\"\r\n [pSelectableRowIndex]=\"rowIndex\"\r\n *ngFor=\"let col of columns\"\r\n class=\"column\"\r\n tabindex=\"0\"\r\n >\r\n <ng-container>\r\n {{ gridFieldValuesMap[col.field] ? gridFieldValuesMap[col.field](rowData) :\r\n rowData[col.field] }}\r\n </ng-container>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"paginatorright\">\r\n <span>{{ gridTotalRecords }} registros encontrados</span>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"dontHaveAnyInvoice\">\r\n <s-empty-state\r\n iconClass=\"fa fa-exclamation-triangle\"\r\n title=\"{{ 'agro.angular_components.add_pj_invoice_modal_no_invoices_found' | libTranslate }}\"\r\n primaryActionLabel=\"{{ 'agro.angular_components.error_server_try_again' | libTranslate }}\"\r\n (primaryAction)=\"tryToSearchAgain()\"\r\n description=\"{{ 'agro.angular_components.no_register_found_for_external_invoices_summary' | libTranslate }}\"\r\n >\r\n </s-empty-state>\r\n </ng-container>\r\n\r\n <p-footer class=\"footer\" *ngIf=\"!dontHaveAnyInvoice\">\r\n <s-button\r\n [priority]=\"ButtonPriority.Primary\"\r\n label=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [disabled]=\"!selected.length\"\r\n (click)=\"add()\"\r\n (keydown.enter)=\"add()\"\r\n ></s-button>\r\n <s-button\r\n [priority]=\"ButtonPriority.Link\"\r\n label=\"{{ 'agro.angular_components.cancel' | libTranslate }}\"\r\n (click)=\"cancel()\"\r\n (keydown.enter)=\"cancel()\"\r\n ></s-button>\r\n </p-footer>\r\n</p-dialog>\r\n", styles: [".footer{width:100%;display:flex;justify-content:space-between;align-items:center}.add-invoice-modal{width:480px;max-width:480px}.add-invoice-modal input[type=text]{width:100%}.add-invoice-modal .ui-dialog{width:480px!important}.add-invoice-modal .ui-dialog .ui-dialog-content{min-height:175px}td.checkbox,th.checkbox{width:50px}th.column,td.column{min-width:150px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}\n"], dependencies: [{ kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i7.ButtonComponent, selector: "s-button", inputs: ["id", "label", "tooltip", "tooltipPosition", "iconClass", "rightIconClass", "caret", "styleClass", "baseZIndex", "disabled", "auxiliary", "type", "priority", "menuOptions", "size", "slide", "animation", "badge", "iconColor", "menuAriaLabel"], outputs: ["clicked"] }, { kind: "component", type: i5.Footer, selector: "p-footer" }, { kind: "directive", type: i5.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i8.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "scrollDirection", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "responsive", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "autoLayout", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "size", "showGridlines", "stripedRows", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "virtualRowHeight", "selectAll"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i8.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "directive", type: i8.SelectableRow, selector: "[pSelectableRow]", inputs: ["pSelectableRow", "pSelectableRowIndex", "pSelectableRowDisabled"] }, { kind: "component", type: i8.SortIcon, selector: "p-sortIcon", inputs: ["field"] }, { kind: "component", type: i8.TableCheckbox, selector: "p-tableCheckbox", inputs: ["disabled", "value", "index", "inputId", "name", "required", "ariaLabel"] }, { kind: "component", type: i8.TableHeaderCheckbox, selector: "p-tableHeaderCheckbox", inputs: ["disabled", "inputId", "name", "ariaLabel"] }, { kind: "component", type: i9.EmptyStateComponent, selector: "s-empty-state", inputs: ["id", "title", "iconClass", "description", "showPrimaryAction", "showSecondaryAction", "primaryActionLabel", "secondaryActionLabel", "primaryModel"], outputs: ["primaryAction", "secondaryAction"] }, { kind: "directive", type: i10.InputText, selector: "[pInputText]", inputs: ["variant", "fluid", "pSize"] }, { kind: "directive", type: i11.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i11.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i11.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i11.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i12.Dialog, selector: "p-dialog", inputs: ["header", "draggable", "resizable", "positionLeft", "positionTop", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "responsive", "appendTo", "breakpoints", "styleClass", "maskStyleClass", "maskStyle", "showHeader", "breakpoint", "blockScroll", "autoZIndex", "baseZIndex", "minX", "minY", "focusOnShow", "maximizable", "keepInViewport", "focusTrap", "transitionOptions", "closeIcon", "closeAriaLabel", "closeTabindex", "minimizeIcon", "maximizeIcon", "closeButtonProps", "maximizeButtonProps", "visible", "style", "position", "role", "content", "contentTemplate", "footerTemplate", "closeIconTemplate", "maximizeIconTemplate", "minimizeIconTemplate", "headlessTemplate"], outputs: ["onShow", "onHide", "visibleChange", "onResizeInit", "onResizeEnd", "onDragEnd", "onMaximize"] }, { kind: "directive", type: i13.LoadingStateDirective, selector: "[sLoadingState]", inputs: ["sLoadingState"] }, { kind: "pipe", type: i14.LibTranslatePipe, name: "libTranslate" }] });
57
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: ModalInvoicePjForContractsComponent, selector: "s-modal-invoice-pj-for-contracts", inputs: { options: "options" }, outputs: { whenSelectInvoices: "whenSelectInvoices" }, usesInheritance: true, ngImport: i0, template: "<p-dialog\r\n header=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [(visible)]=\"visible\"\r\n [modal]=\"true\"\r\n class=\"add-invoice-modal\"\r\n [closeOnEscape]=\"false\"\r\n (onHide)=\"cancelPooling()\"\r\n [dismissableMask]=\"false\"\r\n>\r\n <ng-container *ngIf=\"!dontHaveAnyInvoice\">\r\n <div class=\"ui-g\">\r\n <label for=\"invoiceSearchInput\">{{ 'agro.angular_components.number' | libTranslate }}</label>\r\n <input\r\n type=\"text\"\r\n id=\"invoiceSearchInput\"\r\n pInputText\r\n [formControl]=\"searchValue\"\r\n [placeholder]=\"'' | libTranslate\"\r\n [required]=\"false\"\r\n />\r\n <div class=\"ui-g-12\">\r\n <p-table\r\n [(selection)]=\"selected\"\r\n [value]=\"tableDataSource\"\r\n [columns]=\"gridColumns\"\r\n [scrollable]=\"true\"\r\n dataKey=\"externalInvoiceId\"\r\n [rows]=\"10\"\r\n [paginator]=\"true\"\r\n [lazyLoadOnInit]=\"false\"\r\n [totalRecords]=\"gridTotalRecords\"\r\n [lazy]=\"true\"\r\n (onLazyLoad)=\"updateGridData($event)\"\r\n [resizableColumns]=\"true\"\r\n sortMode=\"multiple\"\r\n [selectionMode]=\"gridLoading ? null : 'multiple'\"\r\n >\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n <th class=\"checkbox\" scope=\"col\">\r\n <p-tableHeaderCheckbox [disabled]=\"gridLoading\"></p-tableHeaderCheckbox>\r\n </th>\r\n <ng-container *ngFor=\"let col of columns\">\r\n <th\r\n *ngIf=\"col.sortable === undefined || col.sortable\"\r\n [pSortableColumn]=\"col.field\"\r\n scope=\"col\"\r\n >\r\n {{ col.header }}\r\n <p-sortIcon [field]=\"col.field\"></p-sortIcon>\r\n </th>\r\n <th *ngIf=\"col.sortable === false || col.sortable === null\" scope=\"col\">\r\n {{ col.header }}\r\n </th>\r\n </ng-container>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"body\" let-rowData let-columns=\"columns\" let-rowIndex=\"rowIndex\">\r\n <tr [class.loading-row]=\"rowData.__isPlaceholder\">\r\n <td class=\"checkbox\" tabindex=\"0\">\r\n <ng-container *ngIf=\"!rowData.__isPlaceholder\">\r\n <p-tableCheckbox [value]=\"rowData\" [disabled]=\"gridLoading\"></p-tableCheckbox>\r\n </ng-container>\r\n <ng-container *ngIf=\"rowData.__isPlaceholder\">\r\n <div class=\"loading-cell-placeholder\"></div>\r\n </ng-container>\r\n </td>\r\n <td\r\n [pSelectableRow]=\"rowData.__isPlaceholder ? null : rowData\"\r\n [pSelectableRowIndex]=\"rowIndex\"\r\n *ngFor=\"let col of columns\"\r\n class=\"column\"\r\n tabindex=\"0\"\r\n >\r\n <ng-container>\r\n <span *ngIf=\"!rowData.__isPlaceholder\">\r\n {{ gridFieldValuesMap[col.field] ? gridFieldValuesMap[col.field](rowData) : rowData[col.field] }}\r\n </span>\r\n <span class=\"loading-text-placeholder\" *ngIf=\"rowData.__isPlaceholder\">\r\n {{ rowData[col.field] || 'placeholder' }}\r\n </span>\r\n </ng-container>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"paginatorright\">\r\n <span>{{ gridTotalRecords }} registros encontrados</span>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"dontHaveAnyInvoice\">\r\n <s-empty-state\r\n iconClass=\"fa fa-exclamation-triangle\"\r\n title=\"{{ 'agro.angular_components.add_pj_invoice_modal_no_invoices_found' | libTranslate }}\"\r\n primaryActionLabel=\"{{ 'agro.angular_components.error_server_try_again' | libTranslate }}\"\r\n (primaryAction)=\"tryToSearchAgain()\"\r\n description=\"{{ 'agro.angular_components.no_register_found_for_external_invoices_summary' | libTranslate }}\"\r\n >\r\n </s-empty-state>\r\n </ng-container>\r\n\r\n <ng-template pTemplate=\"footer\" *ngIf=\"!dontHaveAnyInvoice\">\r\n <div class=\"footer\">\r\n <ng-container *ngIf=\"invertFooterActions; else defaultFooterActions\">\r\n <s-button\r\n [priority]=\"ButtonPriority.Link\"\r\n label=\"{{ 'agro.angular_components.cancel' | libTranslate }}\"\r\n (click)=\"cancel()\"\r\n (keydown.enter)=\"cancel()\"\r\n ></s-button>\r\n <s-button\r\n [priority]=\"ButtonPriority.Primary\"\r\n label=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [disabled]=\"gridLoading || !selected.length\"\r\n (click)=\"add()\"\r\n (keydown.enter)=\"add()\"\r\n ></s-button>\r\n </ng-container>\r\n <ng-template #defaultFooterActions>\r\n <s-button\r\n [priority]=\"ButtonPriority.Primary\"\r\n label=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [disabled]=\"gridLoading || !selected.length\"\r\n (click)=\"add()\"\r\n (keydown.enter)=\"add()\"\r\n ></s-button>\r\n <s-button\r\n [priority]=\"ButtonPriority.Link\"\r\n label=\"{{ 'agro.angular_components.cancel' | libTranslate }}\"\r\n (click)=\"cancel()\"\r\n (keydown.enter)=\"cancel()\"\r\n ></s-button>\r\n </ng-template>\r\n </div>\r\n </ng-template>\r\n</p-dialog>\r\n", styles: [".footer{width:100%;display:flex;justify-content:space-between;align-items:center}.add-invoice-modal{width:480px;max-width:480px}.add-invoice-modal input[type=text]{width:100%}.add-invoice-modal .ui-dialog{width:480px!important}.add-invoice-modal .ui-dialog .ui-dialog-content{min-height:175px}td.checkbox,th.checkbox{width:50px}th.column,td.column{min-width:150px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.loading-row{pointer-events:none}.loading-row .loading-text-placeholder{display:inline-block;filter:blur(3px);-webkit-user-select:none;user-select:none}.loading-row .loading-cell-placeholder{width:16px;height:16px;border-radius:4px;background:#d8d8d8;filter:blur(1px);margin:0 auto}\n"], dependencies: [{ kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i7.ButtonComponent, selector: "s-button", inputs: ["id", "label", "tooltip", "tooltipPosition", "iconClass", "rightIconClass", "caret", "styleClass", "baseZIndex", "disabled", "auxiliary", "type", "priority", "menuOptions", "size", "slide", "animation", "badge", "iconColor", "menuAriaLabel"], outputs: ["clicked"] }, { kind: "directive", type: i5.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i8.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "scrollDirection", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "responsive", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "autoLayout", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "size", "showGridlines", "stripedRows", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "virtualRowHeight", "selectAll"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i8.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "directive", type: i8.SelectableRow, selector: "[pSelectableRow]", inputs: ["pSelectableRow", "pSelectableRowIndex", "pSelectableRowDisabled"] }, { kind: "component", type: i8.SortIcon, selector: "p-sortIcon", inputs: ["field"] }, { kind: "component", type: i8.TableCheckbox, selector: "p-tableCheckbox", inputs: ["disabled", "value", "index", "inputId", "name", "required", "ariaLabel"] }, { kind: "component", type: i8.TableHeaderCheckbox, selector: "p-tableHeaderCheckbox", inputs: ["disabled", "inputId", "name", "ariaLabel"] }, { kind: "component", type: i9.EmptyStateComponent, selector: "s-empty-state", inputs: ["id", "title", "iconClass", "description", "showPrimaryAction", "showSecondaryAction", "primaryActionLabel", "secondaryActionLabel", "primaryModel"], outputs: ["primaryAction", "secondaryAction"] }, { kind: "directive", type: i10.InputText, selector: "[pInputText]", inputs: ["variant", "fluid", "pSize"] }, { kind: "directive", type: i11.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i11.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i11.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i11.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i12.Dialog, selector: "p-dialog", inputs: ["header", "draggable", "resizable", "positionLeft", "positionTop", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "responsive", "appendTo", "breakpoints", "styleClass", "maskStyleClass", "maskStyle", "showHeader", "breakpoint", "blockScroll", "autoZIndex", "baseZIndex", "minX", "minY", "focusOnShow", "maximizable", "keepInViewport", "focusTrap", "transitionOptions", "closeIcon", "closeAriaLabel", "closeTabindex", "minimizeIcon", "maximizeIcon", "closeButtonProps", "maximizeButtonProps", "visible", "style", "position", "role", "content", "contentTemplate", "footerTemplate", "closeIconTemplate", "maximizeIconTemplate", "minimizeIconTemplate", "headlessTemplate"], outputs: ["onShow", "onHide", "visibleChange", "onResizeInit", "onResizeEnd", "onDragEnd", "onMaximize"] }, { kind: "pipe", type: i13.LibTranslatePipe, name: "libTranslate" }] });
58
58
  }
59
59
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ModalInvoicePjForContractsComponent, decorators: [{
60
60
  type: Component,
61
- args: [{ selector: 's-modal-invoice-pj-for-contracts', template: "<p-dialog\r\n header=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [(visible)]=\"visible\"\r\n [modal]=\"true\"\r\n class=\"add-invoice-modal\"\r\n [closeOnEscape]=\"false\"\r\n (onHide)=\"cancelPooling()\"\r\n [dismissableMask]=\"false\"\r\n>\r\n <ng-container *ngIf=\"!dontHaveAnyInvoice\">\r\n <div class=\"ui-g\">\r\n <label for=\"invoiceSearchInput\">{{ 'agro.angular_components.number' | libTranslate }}</label>\r\n <input\r\n type=\"text\"\r\n id=\"invoiceSearchInput\"\r\n pInputText\r\n [formControl]=\"searchValue\"\r\n [placeholder]=\"'' | libTranslate\"\r\n [required]=\"false\"\r\n />\r\n <div class=\"ui-g-12\">\r\n <p-table\r\n [(selection)]=\"selected\"\r\n [value]=\"gridData\"\r\n [columns]=\"gridColumns\"\r\n [scrollable]=\"true\"\r\n dataKey=\"externalInvoiceId\"\r\n [rows]=\"10\"\r\n [paginator]=\"true\"\r\n [lazyLoadOnInit]=\"false\"\r\n [totalRecords]=\"gridTotalRecords\"\r\n [lazy]=\"true\"\r\n (onLazyLoad)=\"updateGridData($event)\"\r\n [resizableColumns]=\"true\"\r\n *sLoadingState=\"gridLoading\"\r\n sortMode=\"multiple\"\r\n [selectionMode]=\"'multiple'\"\r\n >\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n <th class=\"checkbox\" scope=\"col\">\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n </th>\r\n <ng-container *ngFor=\"let col of columns\">\r\n <th\r\n *ngIf=\"col.sortable === undefined || col.sortable\"\r\n [pSortableColumn]=\"col.field\"\r\n scope=\"col\"\r\n >\r\n {{ col.header }}\r\n <p-sortIcon [field]=\"col.field\"></p-sortIcon>\r\n </th>\r\n <th *ngIf=\"col.sortable === false || col.sortable === null\" scope=\"col\">\r\n {{ col.header }}\r\n </th>\r\n </ng-container>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"body\" let-rowData let-columns=\"columns\" let-rowIndex=\"rowIndex\">\r\n <tr>\r\n <td class=\"checkbox\" tabindex=\"0\">\r\n <p-tableCheckbox [value]=\"rowData\"></p-tableCheckbox>\r\n </td>\r\n <td\r\n [pSelectableRow]=\"rowData\"\r\n [pSelectableRowIndex]=\"rowIndex\"\r\n *ngFor=\"let col of columns\"\r\n class=\"column\"\r\n tabindex=\"0\"\r\n >\r\n <ng-container>\r\n {{ gridFieldValuesMap[col.field] ? gridFieldValuesMap[col.field](rowData) :\r\n rowData[col.field] }}\r\n </ng-container>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"paginatorright\">\r\n <span>{{ gridTotalRecords }} registros encontrados</span>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"dontHaveAnyInvoice\">\r\n <s-empty-state\r\n iconClass=\"fa fa-exclamation-triangle\"\r\n title=\"{{ 'agro.angular_components.add_pj_invoice_modal_no_invoices_found' | libTranslate }}\"\r\n primaryActionLabel=\"{{ 'agro.angular_components.error_server_try_again' | libTranslate }}\"\r\n (primaryAction)=\"tryToSearchAgain()\"\r\n description=\"{{ 'agro.angular_components.no_register_found_for_external_invoices_summary' | libTranslate }}\"\r\n >\r\n </s-empty-state>\r\n </ng-container>\r\n\r\n <p-footer class=\"footer\" *ngIf=\"!dontHaveAnyInvoice\">\r\n <s-button\r\n [priority]=\"ButtonPriority.Primary\"\r\n label=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [disabled]=\"!selected.length\"\r\n (click)=\"add()\"\r\n (keydown.enter)=\"add()\"\r\n ></s-button>\r\n <s-button\r\n [priority]=\"ButtonPriority.Link\"\r\n label=\"{{ 'agro.angular_components.cancel' | libTranslate }}\"\r\n (click)=\"cancel()\"\r\n (keydown.enter)=\"cancel()\"\r\n ></s-button>\r\n </p-footer>\r\n</p-dialog>\r\n", styles: [".footer{width:100%;display:flex;justify-content:space-between;align-items:center}.add-invoice-modal{width:480px;max-width:480px}.add-invoice-modal input[type=text]{width:100%}.add-invoice-modal .ui-dialog{width:480px!important}.add-invoice-modal .ui-dialog .ui-dialog-content{min-height:175px}td.checkbox,th.checkbox{width:50px}th.column,td.column{min-width:150px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}\n"] }]
61
+ args: [{ selector: 's-modal-invoice-pj-for-contracts', template: "<p-dialog\r\n header=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [(visible)]=\"visible\"\r\n [modal]=\"true\"\r\n class=\"add-invoice-modal\"\r\n [closeOnEscape]=\"false\"\r\n (onHide)=\"cancelPooling()\"\r\n [dismissableMask]=\"false\"\r\n>\r\n <ng-container *ngIf=\"!dontHaveAnyInvoice\">\r\n <div class=\"ui-g\">\r\n <label for=\"invoiceSearchInput\">{{ 'agro.angular_components.number' | libTranslate }}</label>\r\n <input\r\n type=\"text\"\r\n id=\"invoiceSearchInput\"\r\n pInputText\r\n [formControl]=\"searchValue\"\r\n [placeholder]=\"'' | libTranslate\"\r\n [required]=\"false\"\r\n />\r\n <div class=\"ui-g-12\">\r\n <p-table\r\n [(selection)]=\"selected\"\r\n [value]=\"tableDataSource\"\r\n [columns]=\"gridColumns\"\r\n [scrollable]=\"true\"\r\n dataKey=\"externalInvoiceId\"\r\n [rows]=\"10\"\r\n [paginator]=\"true\"\r\n [lazyLoadOnInit]=\"false\"\r\n [totalRecords]=\"gridTotalRecords\"\r\n [lazy]=\"true\"\r\n (onLazyLoad)=\"updateGridData($event)\"\r\n [resizableColumns]=\"true\"\r\n sortMode=\"multiple\"\r\n [selectionMode]=\"gridLoading ? null : 'multiple'\"\r\n >\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n <th class=\"checkbox\" scope=\"col\">\r\n <p-tableHeaderCheckbox [disabled]=\"gridLoading\"></p-tableHeaderCheckbox>\r\n </th>\r\n <ng-container *ngFor=\"let col of columns\">\r\n <th\r\n *ngIf=\"col.sortable === undefined || col.sortable\"\r\n [pSortableColumn]=\"col.field\"\r\n scope=\"col\"\r\n >\r\n {{ col.header }}\r\n <p-sortIcon [field]=\"col.field\"></p-sortIcon>\r\n </th>\r\n <th *ngIf=\"col.sortable === false || col.sortable === null\" scope=\"col\">\r\n {{ col.header }}\r\n </th>\r\n </ng-container>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"body\" let-rowData let-columns=\"columns\" let-rowIndex=\"rowIndex\">\r\n <tr [class.loading-row]=\"rowData.__isPlaceholder\">\r\n <td class=\"checkbox\" tabindex=\"0\">\r\n <ng-container *ngIf=\"!rowData.__isPlaceholder\">\r\n <p-tableCheckbox [value]=\"rowData\" [disabled]=\"gridLoading\"></p-tableCheckbox>\r\n </ng-container>\r\n <ng-container *ngIf=\"rowData.__isPlaceholder\">\r\n <div class=\"loading-cell-placeholder\"></div>\r\n </ng-container>\r\n </td>\r\n <td\r\n [pSelectableRow]=\"rowData.__isPlaceholder ? null : rowData\"\r\n [pSelectableRowIndex]=\"rowIndex\"\r\n *ngFor=\"let col of columns\"\r\n class=\"column\"\r\n tabindex=\"0\"\r\n >\r\n <ng-container>\r\n <span *ngIf=\"!rowData.__isPlaceholder\">\r\n {{ gridFieldValuesMap[col.field] ? gridFieldValuesMap[col.field](rowData) : rowData[col.field] }}\r\n </span>\r\n <span class=\"loading-text-placeholder\" *ngIf=\"rowData.__isPlaceholder\">\r\n {{ rowData[col.field] || 'placeholder' }}\r\n </span>\r\n </ng-container>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"paginatorright\">\r\n <span>{{ gridTotalRecords }} registros encontrados</span>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"dontHaveAnyInvoice\">\r\n <s-empty-state\r\n iconClass=\"fa fa-exclamation-triangle\"\r\n title=\"{{ 'agro.angular_components.add_pj_invoice_modal_no_invoices_found' | libTranslate }}\"\r\n primaryActionLabel=\"{{ 'agro.angular_components.error_server_try_again' | libTranslate }}\"\r\n (primaryAction)=\"tryToSearchAgain()\"\r\n description=\"{{ 'agro.angular_components.no_register_found_for_external_invoices_summary' | libTranslate }}\"\r\n >\r\n </s-empty-state>\r\n </ng-container>\r\n\r\n <ng-template pTemplate=\"footer\" *ngIf=\"!dontHaveAnyInvoice\">\r\n <div class=\"footer\">\r\n <ng-container *ngIf=\"invertFooterActions; else defaultFooterActions\">\r\n <s-button\r\n [priority]=\"ButtonPriority.Link\"\r\n label=\"{{ 'agro.angular_components.cancel' | libTranslate }}\"\r\n (click)=\"cancel()\"\r\n (keydown.enter)=\"cancel()\"\r\n ></s-button>\r\n <s-button\r\n [priority]=\"ButtonPriority.Primary\"\r\n label=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [disabled]=\"gridLoading || !selected.length\"\r\n (click)=\"add()\"\r\n (keydown.enter)=\"add()\"\r\n ></s-button>\r\n </ng-container>\r\n <ng-template #defaultFooterActions>\r\n <s-button\r\n [priority]=\"ButtonPriority.Primary\"\r\n label=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [disabled]=\"gridLoading || !selected.length\"\r\n (click)=\"add()\"\r\n (keydown.enter)=\"add()\"\r\n ></s-button>\r\n <s-button\r\n [priority]=\"ButtonPriority.Link\"\r\n label=\"{{ 'agro.angular_components.cancel' | libTranslate }}\"\r\n (click)=\"cancel()\"\r\n (keydown.enter)=\"cancel()\"\r\n ></s-button>\r\n </ng-template>\r\n </div>\r\n </ng-template>\r\n</p-dialog>\r\n", styles: [".footer{width:100%;display:flex;justify-content:space-between;align-items:center}.add-invoice-modal{width:480px;max-width:480px}.add-invoice-modal input[type=text]{width:100%}.add-invoice-modal .ui-dialog{width:480px!important}.add-invoice-modal .ui-dialog .ui-dialog-content{min-height:175px}td.checkbox,th.checkbox{width:50px}th.column,td.column{min-width:150px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.loading-row{pointer-events:none}.loading-row .loading-text-placeholder{display:inline-block;filter:blur(3px);-webkit-user-select:none;user-select:none}.loading-row .loading-cell-placeholder{width:16px;height:16px;border-radius:4px;background:#d8d8d8;filter:blur(1px);margin:0 auto}\n"] }]
62
62
  }], ctorParameters: () => [{ type: i1.LibTranslationService }, { type: i2.AgroInvoiceService }, { type: i3.LocaleService }, { type: i4.KilogramPipe }, { type: i5.MessageService }, { type: i6.DatePipe }], propDecorators: { options: [{
63
63
  type: Input
64
64
  }], whenSelectInvoices: [{
65
65
  type: Output
66
66
  }] } });
67
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtaW52b2ljZS1wai1mb3ItY29udHJhY3RzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY29tcG9uZW50cy9jb21wb25lbnRzL21vZGFsLWludm9pY2UtcGovZm9yLWNvbnRyYWN0cy9tb2RhbC1pbnZvaWNlLXBqLWZvci1jb250cmFjdHMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1jb21wb25lbnRzL2NvbXBvbmVudHMvbW9kYWwtaW52b2ljZS1wai90ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBTTFGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7O0FBVXBFLE1BQU0sT0FBTyxtQ0FBb0MsU0FBUSxrQkFBa0I7SUFPbkQ7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBWFgsT0FBTyxDQUFxQztJQUMzQyxrQkFBa0IsR0FBRyxJQUFJLFlBQVksRUFBUyxDQUFDO0lBRWxELFdBQVcsQ0FBOEM7SUFFaEUsWUFDb0IsU0FBZ0MsRUFDaEMsY0FBa0MsRUFDbEMsYUFBNEIsRUFDNUIsWUFBMEIsRUFDMUIsY0FBOEIsRUFDOUIsUUFBa0I7UUFFbEMsS0FBSyxDQUFDLFNBQVMsRUFBRSxjQUFjLEVBQUUsYUFBYSxFQUFFLFlBQVksRUFBRSxjQUFjLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFQeEUsY0FBUyxHQUFULFNBQVMsQ0FBdUI7UUFDaEMsbUJBQWMsR0FBZCxjQUFjLENBQW9CO1FBQ2xDLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQzVCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5QixhQUFRLEdBQVIsUUFBUSxDQUFVO0lBR3RDLENBQUM7SUFFUSxRQUFRO1FBQ2IsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDekIsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFFRCxpQkFBaUI7UUFDYixJQUFJLENBQUMsV0FBVyxHQUFHO1lBQ2YsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxnQ0FBZ0MsQ0FBQyxFQUFFO1lBQ3JGLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsZ0NBQWdDLENBQUMsRUFBRTtZQUNyRixFQUFFLEtBQUssRUFBRSxjQUFjLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLCtCQUErQixDQUFDLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRTtZQUMzRyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLGtDQUFrQyxDQUFDLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRTtZQUMxRyxFQUFFLEtBQUssRUFBRSxjQUFjLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLHVDQUF1QyxDQUFDLEVBQUU7U0FDckcsQ0FBQztJQUNOLENBQUM7SUFFRCxXQUFXLENBQUMsTUFBOEI7UUFDdEMsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQWEsQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFRCxTQUFTLENBQUMsZ0JBQXFCO1FBQzNCLE9BQU8sT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQzdCLENBQUM7d0dBdENRLG1DQUFtQzs0RkFBbkMsbUNBQW1DLHNMQ2pCaEQsNjNLQWtIQTs7NEZEakdhLG1DQUFtQztrQkFML0MsU0FBUzsrQkFDSSxrQ0FBa0M7c09BS25DLE9BQU87c0JBQWYsS0FBSztnQkFDSSxrQkFBa0I7c0JBQTNCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYXRlUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBMb2NhbGVTZXJ2aWNlIH0gZnJvbSAnQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50cy9sb2NhbGUnO1xyXG5pbXBvcnQgeyBDb2x1bW4gfSBmcm9tICdAc2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzL3RhYmxlJztcclxuaW1wb3J0IHsgTWVzc2FnZVNlcnZpY2UgfSBmcm9tICdwcmltZW5nL2FwaSc7XHJcbmltcG9ydCB7IEtpbG9ncmFtUGlwZSB9IGZyb20gJy4uLy4uLy4uL3BpcGUva2lsb2dyYW0nO1xyXG5pbXBvcnQgeyBMaWJUcmFuc2xhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9saWItdHJhbnNsYXRpb24uc2VydmljZSc7XHJcbmltcG9ydCB7IE1vZGFsSW52b2ljZVBqQmFzZSB9IGZyb20gJy4uL21vZGFsLWludm9pY2UtcGotYmFzZS5jbGFzcyc7XHJcbmltcG9ydCB7IEFncm9JbnZvaWNlU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2Fncm8taW52b2ljZSc7XHJcbmltcG9ydCB7IElJbnZvaWNlTG9va3VwUmVzcG9uc2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9hZ3JvLWludm9pY2UvaW50ZXJmYWNlcyc7XHJcbmltcG9ydCB7IE1vZGFsSW52b2ljZVBqRm9yQ29udHJhY3RzT3B0aW9ucyB9IGZyb20gJy4vbW9kYWwtY29udHJhY3RzLW9wdGlvbnMuaW50ZXJmYWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdzLW1vZGFsLWludm9pY2UtcGotZm9yLWNvbnRyYWN0cycsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4uL3RlbXBsYXRlLmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4uL3N0eWxlLnNjc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIE1vZGFsSW52b2ljZVBqRm9yQ29udHJhY3RzQ29tcG9uZW50IGV4dGVuZHMgTW9kYWxJbnZvaWNlUGpCYXNlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gICAgQElucHV0KCkgb3B0aW9ucyE6IE1vZGFsSW52b2ljZVBqRm9yQ29udHJhY3RzT3B0aW9ucztcclxuICAgIEBPdXRwdXQoKSB3aGVuU2VsZWN0SW52b2ljZXMgPSBuZXcgRXZlbnRFbWl0dGVyPGFueVtdPigpO1xyXG5cclxuICAgIHB1YmxpYyBncmlkQ29sdW1ucyE6IFBhcnRpYWw8Q29sdW1uICYgeyBzb3J0YWJsZT86IGJvb2xlYW4gfT5bXTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwdWJsaWMgb3ZlcnJpZGUgdHJhbnNsYXRlOiBMaWJUcmFuc2xhdGlvblNlcnZpY2UsXHJcbiAgICAgICAgcHVibGljIG92ZXJyaWRlIGludm9pY2VTZXJ2aWNlOiBBZ3JvSW52b2ljZVNlcnZpY2UsXHJcbiAgICAgICAgcHVibGljIG92ZXJyaWRlIGxvY2FsZVNlcnZpY2U6IExvY2FsZVNlcnZpY2UsXHJcbiAgICAgICAgcHVibGljIG92ZXJyaWRlIGtpbG9ncmFtUGlwZTogS2lsb2dyYW1QaXBlLFxyXG4gICAgICAgIHB1YmxpYyBvdmVycmlkZSBtZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2UsXHJcbiAgICAgICAgcHVibGljIG92ZXJyaWRlIGRhdGVQaXBlOiBEYXRlUGlwZVxyXG4gICAgKSB7XHJcbiAgICAgICAgc3VwZXIodHJhbnNsYXRlLCBpbnZvaWNlU2VydmljZSwgbG9jYWxlU2VydmljZSwga2lsb2dyYW1QaXBlLCBtZXNzYWdlU2VydmljZSwgZGF0ZVBpcGUpO1xyXG4gICAgfVxyXG5cclxuICAgIG92ZXJyaWRlIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuZGVmaW5lR3JpZENvbHVtbnMoKTtcclxuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xyXG4gICAgfVxyXG5cclxuICAgIGRlZmluZUdyaWRDb2x1bW5zKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuZ3JpZENvbHVtbnMgPSBbXHJcbiAgICAgICAgICAgIHsgZmllbGQ6ICdudW1iZXInLCBoZWFkZXI6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2Fncm8uYW5ndWxhcl9jb21wb25lbnRzLm51bWJlcicpIH0sXHJcbiAgICAgICAgICAgIHsgZmllbGQ6ICdzZXJpZXMnLCBoZWFkZXI6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2Fncm8uYW5ndWxhcl9jb21wb25lbnRzLnNlcmllcycpIH0sXHJcbiAgICAgICAgICAgIHsgZmllbGQ6ICdpbnZvaWNlSXRlbXMnLCBoZWFkZXI6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2Fncm8uYW5ndWxhcl9jb21wb25lbnRzLml0ZW5zJyksIHNvcnRhYmxlOiBmYWxzZSB9LFxyXG4gICAgICAgICAgICB7IGZpZWxkOiAncXVhbnRpdHknLCBoZWFkZXI6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2Fncm8uYW5ndWxhcl9jb21wb25lbnRzLnF1YW50aXR5JyksIHNvcnRhYmxlOiBmYWxzZSB9LFxyXG4gICAgICAgICAgICB7IGZpZWxkOiAnaXNzdWFuY2VEYXRlJywgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5pc3N1YW5jZV9kYXRlJykgfSxcclxuICAgICAgICBdO1xyXG4gICAgfVxyXG5cclxuICAgIGFkYXB0UmVzdWx0KHJlc3VsdDogSUludm9pY2VMb29rdXBSZXNwb25zZSk6IFByb21pc2U8YW55PiB7XHJcbiAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShyZXN1bHQgYXMgYW55KTtcclxuICAgIH1cclxuXHJcbiAgICBiZWZvcmVBZGQoc2VsZWN0ZWRJbnZvaWNlczogYW55KTogUHJvbWlzZTxhbnk+IHtcclxuICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7XHJcbiAgICB9XHJcbn1cclxuIiwiPHAtZGlhbG9nXHJcbiAgICBoZWFkZXI9XCJ7eyAnYWdyby5hbmd1bGFyX2NvbXBvbmVudHMucGFuZWxfdGl0bGVfZXh0ZXJuYWxfaW52b2ljZV9hZGRfZXh0ZXJuYWxfaW52b2ljZScgfCBsaWJUcmFuc2xhdGUgfX1cIlxyXG4gICAgWyh2aXNpYmxlKV09XCJ2aXNpYmxlXCJcclxuICAgIFttb2RhbF09XCJ0cnVlXCJcclxuICAgIGNsYXNzPVwiYWRkLWludm9pY2UtbW9kYWxcIlxyXG4gICAgW2Nsb3NlT25Fc2NhcGVdPVwiZmFsc2VcIlxyXG4gICAgKG9uSGlkZSk9XCJjYW5jZWxQb29saW5nKClcIlxyXG4gICAgW2Rpc21pc3NhYmxlTWFza109XCJmYWxzZVwiXHJcbj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhZG9udEhhdmVBbnlJbnZvaWNlXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInVpLWdcIj5cclxuICAgICAgICAgICAgPGxhYmVsIGZvcj1cImludm9pY2VTZWFyY2hJbnB1dFwiPnt7ICdhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5udW1iZXInIHwgbGliVHJhbnNsYXRlIH19PC9sYWJlbD5cclxuICAgICAgICAgICAgPGlucHV0XHJcbiAgICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXHJcbiAgICAgICAgICAgICAgICBpZD1cImludm9pY2VTZWFyY2hJbnB1dFwiXHJcbiAgICAgICAgICAgICAgICBwSW5wdXRUZXh0XHJcbiAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xdPVwic2VhcmNoVmFsdWVcIlxyXG4gICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIicnIHwgbGliVHJhbnNsYXRlXCJcclxuICAgICAgICAgICAgICAgIFtyZXF1aXJlZF09XCJmYWxzZVwiXHJcbiAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ1aS1nLTEyXCI+XHJcbiAgICAgICAgICAgICAgICA8cC10YWJsZVxyXG4gICAgICAgICAgICAgICAgICAgIFsoc2VsZWN0aW9uKV09XCJzZWxlY3RlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgW3ZhbHVlXT1cImdyaWREYXRhXCJcclxuICAgICAgICAgICAgICAgICAgICBbY29sdW1uc109XCJncmlkQ29sdW1uc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgW3Njcm9sbGFibGVdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgZGF0YUtleT1cImV4dGVybmFsSW52b2ljZUlkXCJcclxuICAgICAgICAgICAgICAgICAgICBbcm93c109XCIxMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgW3BhZ2luYXRvcl09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICBbbGF6eUxvYWRPbkluaXRdPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICAgICAgICAgIFt0b3RhbFJlY29yZHNdPVwiZ3JpZFRvdGFsUmVjb3Jkc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgW2xhenldPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgKG9uTGF6eUxvYWQpPVwidXBkYXRlR3JpZERhdGEoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW3Jlc2l6YWJsZUNvbHVtbnNdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgKnNMb2FkaW5nU3RhdGU9XCJncmlkTG9hZGluZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgc29ydE1vZGU9XCJtdWx0aXBsZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW3NlbGVjdGlvbk1vZGVdPVwiJ211bHRpcGxlJ1wiXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImhlYWRlclwiIGxldC1jb2x1bW5zPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggY2xhc3M9XCJjaGVja2JveFwiIHNjb3BlPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAtdGFibGVIZWFkZXJDaGVja2JveD48L3AtdGFibGVIZWFkZXJDaGVja2JveD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBjb2wgb2YgY29sdW1uc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImNvbC5zb3J0YWJsZSA9PT0gdW5kZWZpbmVkIHx8IGNvbC5zb3J0YWJsZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtwU29ydGFibGVDb2x1bW5dPVwiY29sLmZpZWxkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2NvcGU9XCJjb2xcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgY29sLmhlYWRlciB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cC1zb3J0SWNvbiBbZmllbGRdPVwiY29sLmZpZWxkXCI+PC9wLXNvcnRJY29uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoICpuZ0lmPVwiY29sLnNvcnRhYmxlID09PSBmYWxzZSB8fCBjb2wuc29ydGFibGUgPT09IG51bGxcIiBzY29wZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBjb2wuaGVhZGVyIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJib2R5XCIgbGV0LXJvd0RhdGEgbGV0LWNvbHVtbnM9XCJjb2x1bW5zXCIgbGV0LXJvd0luZGV4PVwicm93SW5kZXhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwiY2hlY2tib3hcIiB0YWJpbmRleD1cIjBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cC10YWJsZUNoZWNrYm94IFt2YWx1ZV09XCJyb3dEYXRhXCI+PC9wLXRhYmxlQ2hlY2tib3g+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BTZWxlY3RhYmxlUm93XT1cInJvd0RhdGFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtwU2VsZWN0YWJsZVJvd0luZGV4XT1cInJvd0luZGV4XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgY29sIG9mIGNvbHVtbnNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY29sdW1uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YWJpbmRleD1cIjBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGdyaWRGaWVsZFZhbHVlc01hcFtjb2wuZmllbGRdID8gZ3JpZEZpZWxkVmFsdWVzTWFwW2NvbC5maWVsZF0ocm93RGF0YSkgOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3dEYXRhW2NvbC5maWVsZF0gfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cInBhZ2luYXRvcnJpZ2h0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPnt7IGdyaWRUb3RhbFJlY29yZHMgfX0gcmVnaXN0cm9zIGVuY29udHJhZG9zPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgICA8L3AtdGFibGU+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImRvbnRIYXZlQW55SW52b2ljZVwiPlxyXG4gICAgICAgIDxzLWVtcHR5LXN0YXRlXHJcbiAgICAgICAgICAgIGljb25DbGFzcz1cImZhIGZhLWV4Y2xhbWF0aW9uLXRyaWFuZ2xlXCJcclxuICAgICAgICAgICAgdGl0bGU9XCJ7eyAnYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuYWRkX3BqX2ludm9pY2VfbW9kYWxfbm9faW52b2ljZXNfZm91bmQnIHwgbGliVHJhbnNsYXRlIH19XCJcclxuICAgICAgICAgICAgcHJpbWFyeUFjdGlvbkxhYmVsPVwie3sgJ2Fncm8uYW5ndWxhcl9jb21wb25lbnRzLmVycm9yX3NlcnZlcl90cnlfYWdhaW4nIHwgbGliVHJhbnNsYXRlIH19XCJcclxuICAgICAgICAgICAgKHByaW1hcnlBY3Rpb24pPVwidHJ5VG9TZWFyY2hBZ2FpbigpXCJcclxuICAgICAgICAgICAgZGVzY3JpcHRpb249XCJ7eyAnYWdyby5hbmd1bGFyX2NvbXBvbmVudHMubm9fcmVnaXN0ZXJfZm91bmRfZm9yX2V4dGVybmFsX2ludm9pY2VzX3N1bW1hcnknIHwgbGliVHJhbnNsYXRlIH19XCJcclxuICAgICAgICA+XHJcbiAgICAgICAgPC9zLWVtcHR5LXN0YXRlPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPHAtZm9vdGVyIGNsYXNzPVwiZm9vdGVyXCIgKm5nSWY9XCIhZG9udEhhdmVBbnlJbnZvaWNlXCI+XHJcbiAgICAgICAgPHMtYnV0dG9uXHJcbiAgICAgICAgICAgIFtwcmlvcml0eV09XCJCdXR0b25Qcmlvcml0eS5QcmltYXJ5XCJcclxuICAgICAgICAgICAgbGFiZWw9XCJ7eyAnYWdyby5hbmd1bGFyX2NvbXBvbmVudHMucGFuZWxfdGl0bGVfZXh0ZXJuYWxfaW52b2ljZV9hZGRfZXh0ZXJuYWxfaW52b2ljZScgfCBsaWJUcmFuc2xhdGUgfX1cIlxyXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiIXNlbGVjdGVkLmxlbmd0aFwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJhZGQoKVwiXHJcbiAgICAgICAgICAgIChrZXlkb3duLmVudGVyKT1cImFkZCgpXCJcclxuICAgICAgICA+PC9zLWJ1dHRvbj5cclxuICAgICAgICA8cy1idXR0b25cclxuICAgICAgICAgICAgW3ByaW9yaXR5XT1cIkJ1dHRvblByaW9yaXR5LkxpbmtcIlxyXG4gICAgICAgICAgICBsYWJlbD1cInt7ICdhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5jYW5jZWwnIHwgbGliVHJhbnNsYXRlIH19XCJcclxuICAgICAgICAgICAgKGNsaWNrKT1cImNhbmNlbCgpXCJcclxuICAgICAgICAgICAgKGtleWRvd24uZW50ZXIpPVwiY2FuY2VsKClcIlxyXG4gICAgICAgID48L3MtYnV0dG9uPlxyXG4gICAgPC9wLWZvb3Rlcj5cclxuPC9wLWRpYWxvZz5cclxuIl19
67
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtaW52b2ljZS1wai1mb3ItY29udHJhY3RzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY29tcG9uZW50cy9jb21wb25lbnRzL21vZGFsLWludm9pY2UtcGovZm9yLWNvbnRyYWN0cy9tb2RhbC1pbnZvaWNlLXBqLWZvci1jb250cmFjdHMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1jb21wb25lbnRzL2NvbXBvbmVudHMvbW9kYWwtaW52b2ljZS1wai90ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBTTFGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7QUFVcEUsTUFBTSxPQUFPLG1DQUFvQyxTQUFRLGtCQUFrQjtJQVFuRDtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFaWCxPQUFPLENBQXFDO0lBQzNDLGtCQUFrQixHQUFHLElBQUksWUFBWSxFQUFTLENBQUM7SUFDekMsbUJBQW1CLEdBQUcsSUFBSSxDQUFDO0lBRXBDLFdBQVcsQ0FBOEM7SUFFaEUsWUFDb0IsU0FBZ0MsRUFDaEMsY0FBa0MsRUFDbEMsYUFBNEIsRUFDNUIsWUFBMEIsRUFDMUIsY0FBOEIsRUFDOUIsUUFBa0I7UUFFbEMsS0FBSyxDQUFDLFNBQVMsRUFBRSxjQUFjLEVBQUUsYUFBYSxFQUFFLFlBQVksRUFBRSxjQUFjLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFQeEUsY0FBUyxHQUFULFNBQVMsQ0FBdUI7UUFDaEMsbUJBQWMsR0FBZCxjQUFjLENBQW9CO1FBQ2xDLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQzVCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5QixhQUFRLEdBQVIsUUFBUSxDQUFVO0lBR3RDLENBQUM7SUFFUSxRQUFRO1FBQ2IsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDekIsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFFRCxpQkFBaUI7UUFDYixJQUFJLENBQUMsV0FBVyxHQUFHO1lBQ2YsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxnQ0FBZ0MsQ0FBQyxFQUFFO1lBQ3JGLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsZ0NBQWdDLENBQUMsRUFBRTtZQUNyRixFQUFFLEtBQUssRUFBRSxjQUFjLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLCtCQUErQixDQUFDLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRTtZQUMzRyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLGtDQUFrQyxDQUFDLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRTtZQUMxRyxFQUFFLEtBQUssRUFBRSxjQUFjLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLHVDQUF1QyxDQUFDLEVBQUU7U0FDckcsQ0FBQztJQUNOLENBQUM7SUFFRCxXQUFXLENBQUMsTUFBOEI7UUFDdEMsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQWEsQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFRCxTQUFTLENBQUMsZ0JBQXFCO1FBQzNCLE9BQU8sT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQzdCLENBQUM7d0dBdkNRLG1DQUFtQzs0RkFBbkMsbUNBQW1DLHNMQ2pCaEQsNnJPQTZJQTs7NEZENUhhLG1DQUFtQztrQkFML0MsU0FBUzsrQkFDSSxrQ0FBa0M7c09BS25DLE9BQU87c0JBQWYsS0FBSztnQkFDSSxrQkFBa0I7c0JBQTNCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYXRlUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBMb2NhbGVTZXJ2aWNlIH0gZnJvbSAnQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50cy9sb2NhbGUnO1xyXG5pbXBvcnQgeyBDb2x1bW4gfSBmcm9tICdAc2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzL3RhYmxlJztcclxuaW1wb3J0IHsgTWVzc2FnZVNlcnZpY2UgfSBmcm9tICdwcmltZW5nL2FwaSc7XHJcbmltcG9ydCB7IEtpbG9ncmFtUGlwZSB9IGZyb20gJy4uLy4uLy4uL3BpcGUva2lsb2dyYW0nO1xyXG5pbXBvcnQgeyBMaWJUcmFuc2xhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9saWItdHJhbnNsYXRpb24uc2VydmljZSc7XHJcbmltcG9ydCB7IE1vZGFsSW52b2ljZVBqQmFzZSB9IGZyb20gJy4uL21vZGFsLWludm9pY2UtcGotYmFzZS5jbGFzcyc7XHJcbmltcG9ydCB7IEFncm9JbnZvaWNlU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2Fncm8taW52b2ljZSc7XHJcbmltcG9ydCB7IElJbnZvaWNlTG9va3VwUmVzcG9uc2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9hZ3JvLWludm9pY2UvaW50ZXJmYWNlcyc7XHJcbmltcG9ydCB7IE1vZGFsSW52b2ljZVBqRm9yQ29udHJhY3RzT3B0aW9ucyB9IGZyb20gJy4vbW9kYWwtY29udHJhY3RzLW9wdGlvbnMuaW50ZXJmYWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdzLW1vZGFsLWludm9pY2UtcGotZm9yLWNvbnRyYWN0cycsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4uL3RlbXBsYXRlLmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4uL3N0eWxlLnNjc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIE1vZGFsSW52b2ljZVBqRm9yQ29udHJhY3RzQ29tcG9uZW50IGV4dGVuZHMgTW9kYWxJbnZvaWNlUGpCYXNlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gICAgQElucHV0KCkgb3B0aW9ucyE6IE1vZGFsSW52b2ljZVBqRm9yQ29udHJhY3RzT3B0aW9ucztcclxuICAgIEBPdXRwdXQoKSB3aGVuU2VsZWN0SW52b2ljZXMgPSBuZXcgRXZlbnRFbWl0dGVyPGFueVtdPigpO1xyXG4gICAgcHVibGljIG92ZXJyaWRlIGludmVydEZvb3RlckFjdGlvbnMgPSB0cnVlO1xyXG5cclxuICAgIHB1YmxpYyBncmlkQ29sdW1ucyE6IFBhcnRpYWw8Q29sdW1uICYgeyBzb3J0YWJsZT86IGJvb2xlYW4gfT5bXTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwdWJsaWMgb3ZlcnJpZGUgdHJhbnNsYXRlOiBMaWJUcmFuc2xhdGlvblNlcnZpY2UsXHJcbiAgICAgICAgcHVibGljIG92ZXJyaWRlIGludm9pY2VTZXJ2aWNlOiBBZ3JvSW52b2ljZVNlcnZpY2UsXHJcbiAgICAgICAgcHVibGljIG92ZXJyaWRlIGxvY2FsZVNlcnZpY2U6IExvY2FsZVNlcnZpY2UsXHJcbiAgICAgICAgcHVibGljIG92ZXJyaWRlIGtpbG9ncmFtUGlwZTogS2lsb2dyYW1QaXBlLFxyXG4gICAgICAgIHB1YmxpYyBvdmVycmlkZSBtZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2UsXHJcbiAgICAgICAgcHVibGljIG92ZXJyaWRlIGRhdGVQaXBlOiBEYXRlUGlwZVxyXG4gICAgKSB7XHJcbiAgICAgICAgc3VwZXIodHJhbnNsYXRlLCBpbnZvaWNlU2VydmljZSwgbG9jYWxlU2VydmljZSwga2lsb2dyYW1QaXBlLCBtZXNzYWdlU2VydmljZSwgZGF0ZVBpcGUpO1xyXG4gICAgfVxyXG5cclxuICAgIG92ZXJyaWRlIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuZGVmaW5lR3JpZENvbHVtbnMoKTtcclxuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xyXG4gICAgfVxyXG5cclxuICAgIGRlZmluZUdyaWRDb2x1bW5zKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuZ3JpZENvbHVtbnMgPSBbXHJcbiAgICAgICAgICAgIHsgZmllbGQ6ICdudW1iZXInLCBoZWFkZXI6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2Fncm8uYW5ndWxhcl9jb21wb25lbnRzLm51bWJlcicpIH0sXHJcbiAgICAgICAgICAgIHsgZmllbGQ6ICdzZXJpZXMnLCBoZWFkZXI6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2Fncm8uYW5ndWxhcl9jb21wb25lbnRzLnNlcmllcycpIH0sXHJcbiAgICAgICAgICAgIHsgZmllbGQ6ICdpbnZvaWNlSXRlbXMnLCBoZWFkZXI6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2Fncm8uYW5ndWxhcl9jb21wb25lbnRzLml0ZW5zJyksIHNvcnRhYmxlOiBmYWxzZSB9LFxyXG4gICAgICAgICAgICB7IGZpZWxkOiAncXVhbnRpdHknLCBoZWFkZXI6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2Fncm8uYW5ndWxhcl9jb21wb25lbnRzLnF1YW50aXR5JyksIHNvcnRhYmxlOiBmYWxzZSB9LFxyXG4gICAgICAgICAgICB7IGZpZWxkOiAnaXNzdWFuY2VEYXRlJywgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5pc3N1YW5jZV9kYXRlJykgfSxcclxuICAgICAgICBdO1xyXG4gICAgfVxyXG5cclxuICAgIGFkYXB0UmVzdWx0KHJlc3VsdDogSUludm9pY2VMb29rdXBSZXNwb25zZSk6IFByb21pc2U8YW55PiB7XHJcbiAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShyZXN1bHQgYXMgYW55KTtcclxuICAgIH1cclxuXHJcbiAgICBiZWZvcmVBZGQoc2VsZWN0ZWRJbnZvaWNlczogYW55KTogUHJvbWlzZTxhbnk+IHtcclxuICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7XHJcbiAgICB9XHJcbn1cclxuIiwiPHAtZGlhbG9nXHJcbiAgICBoZWFkZXI9XCJ7eyAnYWdyby5hbmd1bGFyX2NvbXBvbmVudHMucGFuZWxfdGl0bGVfZXh0ZXJuYWxfaW52b2ljZV9hZGRfZXh0ZXJuYWxfaW52b2ljZScgfCBsaWJUcmFuc2xhdGUgfX1cIlxyXG4gICAgWyh2aXNpYmxlKV09XCJ2aXNpYmxlXCJcclxuICAgIFttb2RhbF09XCJ0cnVlXCJcclxuICAgIGNsYXNzPVwiYWRkLWludm9pY2UtbW9kYWxcIlxyXG4gICAgW2Nsb3NlT25Fc2NhcGVdPVwiZmFsc2VcIlxyXG4gICAgKG9uSGlkZSk9XCJjYW5jZWxQb29saW5nKClcIlxyXG4gICAgW2Rpc21pc3NhYmxlTWFza109XCJmYWxzZVwiXHJcbj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhZG9udEhhdmVBbnlJbnZvaWNlXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInVpLWdcIj5cclxuICAgICAgICAgICAgPGxhYmVsIGZvcj1cImludm9pY2VTZWFyY2hJbnB1dFwiPnt7ICdhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5udW1iZXInIHwgbGliVHJhbnNsYXRlIH19PC9sYWJlbD5cclxuICAgICAgICAgICAgPGlucHV0XHJcbiAgICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXHJcbiAgICAgICAgICAgICAgICBpZD1cImludm9pY2VTZWFyY2hJbnB1dFwiXHJcbiAgICAgICAgICAgICAgICBwSW5wdXRUZXh0XHJcbiAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xdPVwic2VhcmNoVmFsdWVcIlxyXG4gICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIicnIHwgbGliVHJhbnNsYXRlXCJcclxuICAgICAgICAgICAgICAgIFtyZXF1aXJlZF09XCJmYWxzZVwiXHJcbiAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ1aS1nLTEyXCI+XHJcbiAgICAgICAgICAgICAgICA8cC10YWJsZVxyXG4gICAgICAgICAgICAgICAgICAgIFsoc2VsZWN0aW9uKV09XCJzZWxlY3RlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgW3ZhbHVlXT1cInRhYmxlRGF0YVNvdXJjZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2NvbHVtbnNdPVwiZ3JpZENvbHVtbnNcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtzY3JvbGxhYmxlXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgIGRhdGFLZXk9XCJleHRlcm5hbEludm9pY2VJZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgW3Jvd3NdPVwiMTBcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtwYWdpbmF0b3JdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2xhenlMb2FkT25Jbml0XT1cImZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICBbdG90YWxSZWNvcmRzXT1cImdyaWRUb3RhbFJlY29yZHNcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtsYXp5XT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgIChvbkxhenlMb2FkKT1cInVwZGF0ZUdyaWREYXRhKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtyZXNpemFibGVDb2x1bW5zXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgIHNvcnRNb2RlPVwibXVsdGlwbGVcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtzZWxlY3Rpb25Nb2RlXT1cImdyaWRMb2FkaW5nID8gbnVsbCA6ICdtdWx0aXBsZSdcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJoZWFkZXJcIiBsZXQtY29sdW1ucz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIGNsYXNzPVwiY2hlY2tib3hcIiBzY29wZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwLXRhYmxlSGVhZGVyQ2hlY2tib3ggW2Rpc2FibGVkXT1cImdyaWRMb2FkaW5nXCI+PC9wLXRhYmxlSGVhZGVyQ2hlY2tib3g+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgY29sIG9mIGNvbHVtbnNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJjb2wuc29ydGFibGUgPT09IHVuZGVmaW5lZCB8fCBjb2wuc29ydGFibGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcFNvcnRhYmxlQ29sdW1uXT1cImNvbC5maWVsZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNjb3BlPVwiY29sXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGNvbC5oZWFkZXIgfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAtc29ydEljb24gW2ZpZWxkXT1cImNvbC5maWVsZFwiPjwvcC1zb3J0SWNvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCAqbmdJZj1cImNvbC5zb3J0YWJsZSA9PT0gZmFsc2UgfHwgY29sLnNvcnRhYmxlID09PSBudWxsXCIgc2NvcGU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgY29sLmhlYWRlciB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiYm9keVwiIGxldC1yb3dEYXRhIGxldC1jb2x1bW5zPVwiY29sdW1uc1wiIGxldC1yb3dJbmRleD1cInJvd0luZGV4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ciBbY2xhc3MubG9hZGluZy1yb3ddPVwicm93RGF0YS5fX2lzUGxhY2Vob2xkZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cImNoZWNrYm94XCIgdGFiaW5kZXg9XCIwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFyb3dEYXRhLl9faXNQbGFjZWhvbGRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cC10YWJsZUNoZWNrYm94IFt2YWx1ZV09XCJyb3dEYXRhXCIgW2Rpc2FibGVkXT1cImdyaWRMb2FkaW5nXCI+PC9wLXRhYmxlQ2hlY2tib3g+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInJvd0RhdGEuX19pc1BsYWNlaG9sZGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsb2FkaW5nLWNlbGwtcGxhY2Vob2xkZXJcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcFNlbGVjdGFibGVSb3ddPVwicm93RGF0YS5fX2lzUGxhY2Vob2xkZXIgPyBudWxsIDogcm93RGF0YVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BTZWxlY3RhYmxlUm93SW5kZXhdPVwicm93SW5kZXhcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBjb2wgb2YgY29sdW1uc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjb2x1bW5cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhYmluZGV4PVwiMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCIhcm93RGF0YS5fX2lzUGxhY2Vob2xkZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGdyaWRGaWVsZFZhbHVlc01hcFtjb2wuZmllbGRdID8gZ3JpZEZpZWxkVmFsdWVzTWFwW2NvbC5maWVsZF0ocm93RGF0YSkgOiByb3dEYXRhW2NvbC5maWVsZF0gfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImxvYWRpbmctdGV4dC1wbGFjZWhvbGRlclwiICpuZ0lmPVwicm93RGF0YS5fX2lzUGxhY2Vob2xkZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IHJvd0RhdGFbY29sLmZpZWxkXSB8fCAncGxhY2Vob2xkZXInIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cInBhZ2luYXRvcnJpZ2h0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPnt7IGdyaWRUb3RhbFJlY29yZHMgfX0gcmVnaXN0cm9zIGVuY29udHJhZG9zPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgICA8L3AtdGFibGU+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImRvbnRIYXZlQW55SW52b2ljZVwiPlxyXG4gICAgICAgIDxzLWVtcHR5LXN0YXRlXHJcbiAgICAgICAgICAgIGljb25DbGFzcz1cImZhIGZhLWV4Y2xhbWF0aW9uLXRyaWFuZ2xlXCJcclxuICAgICAgICAgICAgdGl0bGU9XCJ7eyAnYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuYWRkX3BqX2ludm9pY2VfbW9kYWxfbm9faW52b2ljZXNfZm91bmQnIHwgbGliVHJhbnNsYXRlIH19XCJcclxuICAgICAgICAgICAgcHJpbWFyeUFjdGlvbkxhYmVsPVwie3sgJ2Fncm8uYW5ndWxhcl9jb21wb25lbnRzLmVycm9yX3NlcnZlcl90cnlfYWdhaW4nIHwgbGliVHJhbnNsYXRlIH19XCJcclxuICAgICAgICAgICAgKHByaW1hcnlBY3Rpb24pPVwidHJ5VG9TZWFyY2hBZ2FpbigpXCJcclxuICAgICAgICAgICAgZGVzY3JpcHRpb249XCJ7eyAnYWdyby5hbmd1bGFyX2NvbXBvbmVudHMubm9fcmVnaXN0ZXJfZm91bmRfZm9yX2V4dGVybmFsX2ludm9pY2VzX3N1bW1hcnknIHwgbGliVHJhbnNsYXRlIH19XCJcclxuICAgICAgICA+XHJcbiAgICAgICAgPC9zLWVtcHR5LXN0YXRlPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImZvb3RlclwiICpuZ0lmPVwiIWRvbnRIYXZlQW55SW52b2ljZVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJmb290ZXJcIj5cclxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImludmVydEZvb3RlckFjdGlvbnM7IGVsc2UgZGVmYXVsdEZvb3RlckFjdGlvbnNcIj5cclxuICAgICAgICAgICAgICAgIDxzLWJ1dHRvblxyXG4gICAgICAgICAgICAgICAgICAgIFtwcmlvcml0eV09XCJCdXR0b25Qcmlvcml0eS5MaW5rXCJcclxuICAgICAgICAgICAgICAgICAgICBsYWJlbD1cInt7ICdhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5jYW5jZWwnIHwgbGliVHJhbnNsYXRlIH19XCJcclxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiY2FuY2VsKClcIlxyXG4gICAgICAgICAgICAgICAgICAgIChrZXlkb3duLmVudGVyKT1cImNhbmNlbCgpXCJcclxuICAgICAgICAgICAgICAgID48L3MtYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPHMtYnV0dG9uXHJcbiAgICAgICAgICAgICAgICAgICAgW3ByaW9yaXR5XT1cIkJ1dHRvblByaW9yaXR5LlByaW1hcnlcIlxyXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsPVwie3sgJ2Fncm8uYW5ndWxhcl9jb21wb25lbnRzLnBhbmVsX3RpdGxlX2V4dGVybmFsX2ludm9pY2VfYWRkX2V4dGVybmFsX2ludm9pY2UnIHwgbGliVHJhbnNsYXRlIH19XCJcclxuICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiZ3JpZExvYWRpbmcgfHwgIXNlbGVjdGVkLmxlbmd0aFwiXHJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImFkZCgpXCJcclxuICAgICAgICAgICAgICAgICAgICAoa2V5ZG93bi5lbnRlcik9XCJhZGQoKVwiXHJcbiAgICAgICAgICAgICAgICA+PC9zLWJ1dHRvbj5cclxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjZGVmYXVsdEZvb3RlckFjdGlvbnM+XHJcbiAgICAgICAgICAgIDxzLWJ1dHRvblxyXG4gICAgICAgICAgICAgICAgW3ByaW9yaXR5XT1cIkJ1dHRvblByaW9yaXR5LlByaW1hcnlcIlxyXG4gICAgICAgICAgICAgICAgbGFiZWw9XCJ7eyAnYWdyby5hbmd1bGFyX2NvbXBvbmVudHMucGFuZWxfdGl0bGVfZXh0ZXJuYWxfaW52b2ljZV9hZGRfZXh0ZXJuYWxfaW52b2ljZScgfCBsaWJUcmFuc2xhdGUgfX1cIlxyXG4gICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImdyaWRMb2FkaW5nIHx8ICFzZWxlY3RlZC5sZW5ndGhcIlxyXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cImFkZCgpXCJcclxuICAgICAgICAgICAgICAgIChrZXlkb3duLmVudGVyKT1cImFkZCgpXCJcclxuICAgICAgICAgICAgPjwvcy1idXR0b24+XHJcbiAgICAgICAgICAgIDxzLWJ1dHRvblxyXG4gICAgICAgICAgICAgICAgW3ByaW9yaXR5XT1cIkJ1dHRvblByaW9yaXR5LkxpbmtcIlxyXG4gICAgICAgICAgICAgICAgbGFiZWw9XCJ7eyAnYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuY2FuY2VsJyB8IGxpYlRyYW5zbGF0ZSB9fVwiXHJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiY2FuY2VsKClcIlxyXG4gICAgICAgICAgICAgICAgKGtleWRvd24uZW50ZXIpPVwiY2FuY2VsKClcIlxyXG4gICAgICAgICAgICAgICAgPjwvcy1idXR0b24+XHJcbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG48L3AtZGlhbG9nPlxyXG4iXX0=
@@ -16,8 +16,7 @@ import * as i10 from "@seniorsistemas/angular-components/empty-state";
16
16
  import * as i11 from "primeng/inputtext";
17
17
  import * as i12 from "@angular/forms";
18
18
  import * as i13 from "primeng/dialog";
19
- import * as i14 from "@seniorsistemas/angular-components/loading-state";
20
- import * as i15 from "../../../pipe/lib-translate.pipe";
19
+ import * as i14 from "../../../pipe/lib-translate.pipe";
21
20
  export class ModalInvoicePjForFixationComponent extends ModalInvoicePjBase {
22
21
  translationService;
23
22
  invoiceService;
@@ -177,14 +176,14 @@ export class ModalInvoicePjForFixationComponent extends ModalInvoicePjBase {
177
176
  });
178
177
  }
179
178
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ModalInvoicePjForFixationComponent, deps: [{ token: i1.LibTranslationService }, { token: i2.AgroInvoiceService }, { token: i3.LocaleService }, { token: i4.KilogramPipe }, { token: i5.CurrencyPipe }, { token: i6.ProducerInvoiceService }, { token: i7.MessageService }, { token: i5.DatePipe }], target: i0.ɵɵFactoryTarget.Component });
180
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: ModalInvoicePjForFixationComponent, selector: "s-modal-invoice-pj-for-fixation", inputs: { options: "options" }, outputs: { whenSelectInvoices: "whenSelectInvoices" }, usesInheritance: true, ngImport: i0, template: "<p-dialog\r\n header=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [(visible)]=\"visible\"\r\n [modal]=\"true\"\r\n class=\"add-invoice-modal\"\r\n [closeOnEscape]=\"false\"\r\n (onHide)=\"cancelPooling()\"\r\n [dismissableMask]=\"false\"\r\n>\r\n <ng-container *ngIf=\"!dontHaveAnyInvoice\">\r\n <div class=\"ui-g\">\r\n <label for=\"invoiceSearchInput\">{{ 'agro.angular_components.number' | libTranslate }}</label>\r\n <input\r\n type=\"text\"\r\n id=\"invoiceSearchInput\"\r\n pInputText\r\n [formControl]=\"searchValue\"\r\n [placeholder]=\"'' | libTranslate\"\r\n [required]=\"false\"\r\n />\r\n <div class=\"ui-g-12\">\r\n <p-table\r\n [(selection)]=\"selected\"\r\n [value]=\"gridData\"\r\n [columns]=\"gridColumns\"\r\n [scrollable]=\"true\"\r\n dataKey=\"externalInvoiceId\"\r\n [rows]=\"10\"\r\n [paginator]=\"true\"\r\n [lazyLoadOnInit]=\"false\"\r\n [totalRecords]=\"gridTotalRecords\"\r\n [lazy]=\"true\"\r\n (onLazyLoad)=\"updateGridData($event)\"\r\n [resizableColumns]=\"true\"\r\n *sLoadingState=\"gridLoading\"\r\n sortMode=\"multiple\"\r\n [selectionMode]=\"'multiple'\"\r\n >\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n <th class=\"checkbox\" scope=\"col\">\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n </th>\r\n <ng-container *ngFor=\"let col of columns\">\r\n <th\r\n *ngIf=\"col.sortable === undefined || col.sortable\"\r\n [pSortableColumn]=\"col.field\"\r\n scope=\"col\"\r\n >\r\n {{ col.header }}\r\n <p-sortIcon [field]=\"col.field\"></p-sortIcon>\r\n </th>\r\n <th *ngIf=\"col.sortable === false || col.sortable === null\" scope=\"col\">\r\n {{ col.header }}\r\n </th>\r\n </ng-container>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"body\" let-rowData let-columns=\"columns\" let-rowIndex=\"rowIndex\">\r\n <tr>\r\n <td class=\"checkbox\" tabindex=\"0\">\r\n <p-tableCheckbox [value]=\"rowData\"></p-tableCheckbox>\r\n </td>\r\n <td\r\n [pSelectableRow]=\"rowData\"\r\n [pSelectableRowIndex]=\"rowIndex\"\r\n *ngFor=\"let col of columns\"\r\n class=\"column\"\r\n tabindex=\"0\"\r\n >\r\n <ng-container>\r\n {{ gridFieldValuesMap[col.field] ? gridFieldValuesMap[col.field](rowData) :\r\n rowData[col.field] }}\r\n </ng-container>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"paginatorright\">\r\n <span>{{ gridTotalRecords }} registros encontrados</span>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"dontHaveAnyInvoice\">\r\n <s-empty-state\r\n iconClass=\"fa fa-exclamation-triangle\"\r\n title=\"{{ 'agro.angular_components.add_pj_invoice_modal_no_invoices_found' | libTranslate }}\"\r\n primaryActionLabel=\"{{ 'agro.angular_components.error_server_try_again' | libTranslate }}\"\r\n (primaryAction)=\"tryToSearchAgain()\"\r\n description=\"{{ 'agro.angular_components.no_register_found_for_external_invoices_summary' | libTranslate }}\"\r\n >\r\n </s-empty-state>\r\n </ng-container>\r\n\r\n <p-footer class=\"footer\" *ngIf=\"!dontHaveAnyInvoice\">\r\n <s-button\r\n [priority]=\"ButtonPriority.Primary\"\r\n label=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [disabled]=\"!selected.length\"\r\n (click)=\"add()\"\r\n (keydown.enter)=\"add()\"\r\n ></s-button>\r\n <s-button\r\n [priority]=\"ButtonPriority.Link\"\r\n label=\"{{ 'agro.angular_components.cancel' | libTranslate }}\"\r\n (click)=\"cancel()\"\r\n (keydown.enter)=\"cancel()\"\r\n ></s-button>\r\n </p-footer>\r\n</p-dialog>\r\n", styles: [".footer{width:100%;display:flex;justify-content:space-between;align-items:center}.add-invoice-modal{width:480px;max-width:480px}.add-invoice-modal input[type=text]{width:100%}.add-invoice-modal .ui-dialog{width:480px!important}.add-invoice-modal .ui-dialog .ui-dialog-content{min-height:175px}td.checkbox,th.checkbox{width:50px}th.column,td.column{min-width:150px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}\n"], dependencies: [{ kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i8.ButtonComponent, selector: "s-button", inputs: ["id", "label", "tooltip", "tooltipPosition", "iconClass", "rightIconClass", "caret", "styleClass", "baseZIndex", "disabled", "auxiliary", "type", "priority", "menuOptions", "size", "slide", "animation", "badge", "iconColor", "menuAriaLabel"], outputs: ["clicked"] }, { kind: "component", type: i7.Footer, selector: "p-footer" }, { kind: "directive", type: i7.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i9.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "scrollDirection", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "responsive", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "autoLayout", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "size", "showGridlines", "stripedRows", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "virtualRowHeight", "selectAll"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i9.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "directive", type: i9.SelectableRow, selector: "[pSelectableRow]", inputs: ["pSelectableRow", "pSelectableRowIndex", "pSelectableRowDisabled"] }, { kind: "component", type: i9.SortIcon, selector: "p-sortIcon", inputs: ["field"] }, { kind: "component", type: i9.TableCheckbox, selector: "p-tableCheckbox", inputs: ["disabled", "value", "index", "inputId", "name", "required", "ariaLabel"] }, { kind: "component", type: i9.TableHeaderCheckbox, selector: "p-tableHeaderCheckbox", inputs: ["disabled", "inputId", "name", "ariaLabel"] }, { kind: "component", type: i10.EmptyStateComponent, selector: "s-empty-state", inputs: ["id", "title", "iconClass", "description", "showPrimaryAction", "showSecondaryAction", "primaryActionLabel", "secondaryActionLabel", "primaryModel"], outputs: ["primaryAction", "secondaryAction"] }, { kind: "directive", type: i11.InputText, selector: "[pInputText]", inputs: ["variant", "fluid", "pSize"] }, { kind: "directive", type: i12.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i12.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i12.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i12.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i13.Dialog, selector: "p-dialog", inputs: ["header", "draggable", "resizable", "positionLeft", "positionTop", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "responsive", "appendTo", "breakpoints", "styleClass", "maskStyleClass", "maskStyle", "showHeader", "breakpoint", "blockScroll", "autoZIndex", "baseZIndex", "minX", "minY", "focusOnShow", "maximizable", "keepInViewport", "focusTrap", "transitionOptions", "closeIcon", "closeAriaLabel", "closeTabindex", "minimizeIcon", "maximizeIcon", "closeButtonProps", "maximizeButtonProps", "visible", "style", "position", "role", "content", "contentTemplate", "footerTemplate", "closeIconTemplate", "maximizeIconTemplate", "minimizeIconTemplate", "headlessTemplate"], outputs: ["onShow", "onHide", "visibleChange", "onResizeInit", "onResizeEnd", "onDragEnd", "onMaximize"] }, { kind: "directive", type: i14.LoadingStateDirective, selector: "[sLoadingState]", inputs: ["sLoadingState"] }, { kind: "pipe", type: i15.LibTranslatePipe, name: "libTranslate" }] });
179
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: ModalInvoicePjForFixationComponent, selector: "s-modal-invoice-pj-for-fixation", inputs: { options: "options" }, outputs: { whenSelectInvoices: "whenSelectInvoices" }, usesInheritance: true, ngImport: i0, template: "<p-dialog\r\n header=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [(visible)]=\"visible\"\r\n [modal]=\"true\"\r\n class=\"add-invoice-modal\"\r\n [closeOnEscape]=\"false\"\r\n (onHide)=\"cancelPooling()\"\r\n [dismissableMask]=\"false\"\r\n>\r\n <ng-container *ngIf=\"!dontHaveAnyInvoice\">\r\n <div class=\"ui-g\">\r\n <label for=\"invoiceSearchInput\">{{ 'agro.angular_components.number' | libTranslate }}</label>\r\n <input\r\n type=\"text\"\r\n id=\"invoiceSearchInput\"\r\n pInputText\r\n [formControl]=\"searchValue\"\r\n [placeholder]=\"'' | libTranslate\"\r\n [required]=\"false\"\r\n />\r\n <div class=\"ui-g-12\">\r\n <p-table\r\n [(selection)]=\"selected\"\r\n [value]=\"tableDataSource\"\r\n [columns]=\"gridColumns\"\r\n [scrollable]=\"true\"\r\n dataKey=\"externalInvoiceId\"\r\n [rows]=\"10\"\r\n [paginator]=\"true\"\r\n [lazyLoadOnInit]=\"false\"\r\n [totalRecords]=\"gridTotalRecords\"\r\n [lazy]=\"true\"\r\n (onLazyLoad)=\"updateGridData($event)\"\r\n [resizableColumns]=\"true\"\r\n sortMode=\"multiple\"\r\n [selectionMode]=\"gridLoading ? null : 'multiple'\"\r\n >\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n <th class=\"checkbox\" scope=\"col\">\r\n <p-tableHeaderCheckbox [disabled]=\"gridLoading\"></p-tableHeaderCheckbox>\r\n </th>\r\n <ng-container *ngFor=\"let col of columns\">\r\n <th\r\n *ngIf=\"col.sortable === undefined || col.sortable\"\r\n [pSortableColumn]=\"col.field\"\r\n scope=\"col\"\r\n >\r\n {{ col.header }}\r\n <p-sortIcon [field]=\"col.field\"></p-sortIcon>\r\n </th>\r\n <th *ngIf=\"col.sortable === false || col.sortable === null\" scope=\"col\">\r\n {{ col.header }}\r\n </th>\r\n </ng-container>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"body\" let-rowData let-columns=\"columns\" let-rowIndex=\"rowIndex\">\r\n <tr [class.loading-row]=\"rowData.__isPlaceholder\">\r\n <td class=\"checkbox\" tabindex=\"0\">\r\n <ng-container *ngIf=\"!rowData.__isPlaceholder\">\r\n <p-tableCheckbox [value]=\"rowData\" [disabled]=\"gridLoading\"></p-tableCheckbox>\r\n </ng-container>\r\n <ng-container *ngIf=\"rowData.__isPlaceholder\">\r\n <div class=\"loading-cell-placeholder\"></div>\r\n </ng-container>\r\n </td>\r\n <td\r\n [pSelectableRow]=\"rowData.__isPlaceholder ? null : rowData\"\r\n [pSelectableRowIndex]=\"rowIndex\"\r\n *ngFor=\"let col of columns\"\r\n class=\"column\"\r\n tabindex=\"0\"\r\n >\r\n <ng-container>\r\n <span *ngIf=\"!rowData.__isPlaceholder\">\r\n {{ gridFieldValuesMap[col.field] ? gridFieldValuesMap[col.field](rowData) : rowData[col.field] }}\r\n </span>\r\n <span class=\"loading-text-placeholder\" *ngIf=\"rowData.__isPlaceholder\">\r\n {{ rowData[col.field] || 'placeholder' }}\r\n </span>\r\n </ng-container>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"paginatorright\">\r\n <span>{{ gridTotalRecords }} registros encontrados</span>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"dontHaveAnyInvoice\">\r\n <s-empty-state\r\n iconClass=\"fa fa-exclamation-triangle\"\r\n title=\"{{ 'agro.angular_components.add_pj_invoice_modal_no_invoices_found' | libTranslate }}\"\r\n primaryActionLabel=\"{{ 'agro.angular_components.error_server_try_again' | libTranslate }}\"\r\n (primaryAction)=\"tryToSearchAgain()\"\r\n description=\"{{ 'agro.angular_components.no_register_found_for_external_invoices_summary' | libTranslate }}\"\r\n >\r\n </s-empty-state>\r\n </ng-container>\r\n\r\n <ng-template pTemplate=\"footer\" *ngIf=\"!dontHaveAnyInvoice\">\r\n <div class=\"footer\">\r\n <ng-container *ngIf=\"invertFooterActions; else defaultFooterActions\">\r\n <s-button\r\n [priority]=\"ButtonPriority.Link\"\r\n label=\"{{ 'agro.angular_components.cancel' | libTranslate }}\"\r\n (click)=\"cancel()\"\r\n (keydown.enter)=\"cancel()\"\r\n ></s-button>\r\n <s-button\r\n [priority]=\"ButtonPriority.Primary\"\r\n label=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [disabled]=\"gridLoading || !selected.length\"\r\n (click)=\"add()\"\r\n (keydown.enter)=\"add()\"\r\n ></s-button>\r\n </ng-container>\r\n <ng-template #defaultFooterActions>\r\n <s-button\r\n [priority]=\"ButtonPriority.Primary\"\r\n label=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [disabled]=\"gridLoading || !selected.length\"\r\n (click)=\"add()\"\r\n (keydown.enter)=\"add()\"\r\n ></s-button>\r\n <s-button\r\n [priority]=\"ButtonPriority.Link\"\r\n label=\"{{ 'agro.angular_components.cancel' | libTranslate }}\"\r\n (click)=\"cancel()\"\r\n (keydown.enter)=\"cancel()\"\r\n ></s-button>\r\n </ng-template>\r\n </div>\r\n </ng-template>\r\n</p-dialog>\r\n", styles: [".footer{width:100%;display:flex;justify-content:space-between;align-items:center}.add-invoice-modal{width:480px;max-width:480px}.add-invoice-modal input[type=text]{width:100%}.add-invoice-modal .ui-dialog{width:480px!important}.add-invoice-modal .ui-dialog .ui-dialog-content{min-height:175px}td.checkbox,th.checkbox{width:50px}th.column,td.column{min-width:150px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.loading-row{pointer-events:none}.loading-row .loading-text-placeholder{display:inline-block;filter:blur(3px);-webkit-user-select:none;user-select:none}.loading-row .loading-cell-placeholder{width:16px;height:16px;border-radius:4px;background:#d8d8d8;filter:blur(1px);margin:0 auto}\n"], dependencies: [{ kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i8.ButtonComponent, selector: "s-button", inputs: ["id", "label", "tooltip", "tooltipPosition", "iconClass", "rightIconClass", "caret", "styleClass", "baseZIndex", "disabled", "auxiliary", "type", "priority", "menuOptions", "size", "slide", "animation", "badge", "iconColor", "menuAriaLabel"], outputs: ["clicked"] }, { kind: "directive", type: i7.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i9.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "scrollDirection", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "responsive", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "autoLayout", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "size", "showGridlines", "stripedRows", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "virtualRowHeight", "selectAll"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i9.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "directive", type: i9.SelectableRow, selector: "[pSelectableRow]", inputs: ["pSelectableRow", "pSelectableRowIndex", "pSelectableRowDisabled"] }, { kind: "component", type: i9.SortIcon, selector: "p-sortIcon", inputs: ["field"] }, { kind: "component", type: i9.TableCheckbox, selector: "p-tableCheckbox", inputs: ["disabled", "value", "index", "inputId", "name", "required", "ariaLabel"] }, { kind: "component", type: i9.TableHeaderCheckbox, selector: "p-tableHeaderCheckbox", inputs: ["disabled", "inputId", "name", "ariaLabel"] }, { kind: "component", type: i10.EmptyStateComponent, selector: "s-empty-state", inputs: ["id", "title", "iconClass", "description", "showPrimaryAction", "showSecondaryAction", "primaryActionLabel", "secondaryActionLabel", "primaryModel"], outputs: ["primaryAction", "secondaryAction"] }, { kind: "directive", type: i11.InputText, selector: "[pInputText]", inputs: ["variant", "fluid", "pSize"] }, { kind: "directive", type: i12.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i12.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i12.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i12.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i13.Dialog, selector: "p-dialog", inputs: ["header", "draggable", "resizable", "positionLeft", "positionTop", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "responsive", "appendTo", "breakpoints", "styleClass", "maskStyleClass", "maskStyle", "showHeader", "breakpoint", "blockScroll", "autoZIndex", "baseZIndex", "minX", "minY", "focusOnShow", "maximizable", "keepInViewport", "focusTrap", "transitionOptions", "closeIcon", "closeAriaLabel", "closeTabindex", "minimizeIcon", "maximizeIcon", "closeButtonProps", "maximizeButtonProps", "visible", "style", "position", "role", "content", "contentTemplate", "footerTemplate", "closeIconTemplate", "maximizeIconTemplate", "minimizeIconTemplate", "headlessTemplate"], outputs: ["onShow", "onHide", "visibleChange", "onResizeInit", "onResizeEnd", "onDragEnd", "onMaximize"] }, { kind: "pipe", type: i14.LibTranslatePipe, name: "libTranslate" }] });
181
180
  }
182
181
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ModalInvoicePjForFixationComponent, decorators: [{
183
182
  type: Component,
184
- args: [{ selector: 's-modal-invoice-pj-for-fixation', template: "<p-dialog\r\n header=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [(visible)]=\"visible\"\r\n [modal]=\"true\"\r\n class=\"add-invoice-modal\"\r\n [closeOnEscape]=\"false\"\r\n (onHide)=\"cancelPooling()\"\r\n [dismissableMask]=\"false\"\r\n>\r\n <ng-container *ngIf=\"!dontHaveAnyInvoice\">\r\n <div class=\"ui-g\">\r\n <label for=\"invoiceSearchInput\">{{ 'agro.angular_components.number' | libTranslate }}</label>\r\n <input\r\n type=\"text\"\r\n id=\"invoiceSearchInput\"\r\n pInputText\r\n [formControl]=\"searchValue\"\r\n [placeholder]=\"'' | libTranslate\"\r\n [required]=\"false\"\r\n />\r\n <div class=\"ui-g-12\">\r\n <p-table\r\n [(selection)]=\"selected\"\r\n [value]=\"gridData\"\r\n [columns]=\"gridColumns\"\r\n [scrollable]=\"true\"\r\n dataKey=\"externalInvoiceId\"\r\n [rows]=\"10\"\r\n [paginator]=\"true\"\r\n [lazyLoadOnInit]=\"false\"\r\n [totalRecords]=\"gridTotalRecords\"\r\n [lazy]=\"true\"\r\n (onLazyLoad)=\"updateGridData($event)\"\r\n [resizableColumns]=\"true\"\r\n *sLoadingState=\"gridLoading\"\r\n sortMode=\"multiple\"\r\n [selectionMode]=\"'multiple'\"\r\n >\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n <th class=\"checkbox\" scope=\"col\">\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n </th>\r\n <ng-container *ngFor=\"let col of columns\">\r\n <th\r\n *ngIf=\"col.sortable === undefined || col.sortable\"\r\n [pSortableColumn]=\"col.field\"\r\n scope=\"col\"\r\n >\r\n {{ col.header }}\r\n <p-sortIcon [field]=\"col.field\"></p-sortIcon>\r\n </th>\r\n <th *ngIf=\"col.sortable === false || col.sortable === null\" scope=\"col\">\r\n {{ col.header }}\r\n </th>\r\n </ng-container>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"body\" let-rowData let-columns=\"columns\" let-rowIndex=\"rowIndex\">\r\n <tr>\r\n <td class=\"checkbox\" tabindex=\"0\">\r\n <p-tableCheckbox [value]=\"rowData\"></p-tableCheckbox>\r\n </td>\r\n <td\r\n [pSelectableRow]=\"rowData\"\r\n [pSelectableRowIndex]=\"rowIndex\"\r\n *ngFor=\"let col of columns\"\r\n class=\"column\"\r\n tabindex=\"0\"\r\n >\r\n <ng-container>\r\n {{ gridFieldValuesMap[col.field] ? gridFieldValuesMap[col.field](rowData) :\r\n rowData[col.field] }}\r\n </ng-container>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"paginatorright\">\r\n <span>{{ gridTotalRecords }} registros encontrados</span>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"dontHaveAnyInvoice\">\r\n <s-empty-state\r\n iconClass=\"fa fa-exclamation-triangle\"\r\n title=\"{{ 'agro.angular_components.add_pj_invoice_modal_no_invoices_found' | libTranslate }}\"\r\n primaryActionLabel=\"{{ 'agro.angular_components.error_server_try_again' | libTranslate }}\"\r\n (primaryAction)=\"tryToSearchAgain()\"\r\n description=\"{{ 'agro.angular_components.no_register_found_for_external_invoices_summary' | libTranslate }}\"\r\n >\r\n </s-empty-state>\r\n </ng-container>\r\n\r\n <p-footer class=\"footer\" *ngIf=\"!dontHaveAnyInvoice\">\r\n <s-button\r\n [priority]=\"ButtonPriority.Primary\"\r\n label=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [disabled]=\"!selected.length\"\r\n (click)=\"add()\"\r\n (keydown.enter)=\"add()\"\r\n ></s-button>\r\n <s-button\r\n [priority]=\"ButtonPriority.Link\"\r\n label=\"{{ 'agro.angular_components.cancel' | libTranslate }}\"\r\n (click)=\"cancel()\"\r\n (keydown.enter)=\"cancel()\"\r\n ></s-button>\r\n </p-footer>\r\n</p-dialog>\r\n", styles: [".footer{width:100%;display:flex;justify-content:space-between;align-items:center}.add-invoice-modal{width:480px;max-width:480px}.add-invoice-modal input[type=text]{width:100%}.add-invoice-modal .ui-dialog{width:480px!important}.add-invoice-modal .ui-dialog .ui-dialog-content{min-height:175px}td.checkbox,th.checkbox{width:50px}th.column,td.column{min-width:150px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}\n"] }]
183
+ args: [{ selector: 's-modal-invoice-pj-for-fixation', template: "<p-dialog\r\n header=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [(visible)]=\"visible\"\r\n [modal]=\"true\"\r\n class=\"add-invoice-modal\"\r\n [closeOnEscape]=\"false\"\r\n (onHide)=\"cancelPooling()\"\r\n [dismissableMask]=\"false\"\r\n>\r\n <ng-container *ngIf=\"!dontHaveAnyInvoice\">\r\n <div class=\"ui-g\">\r\n <label for=\"invoiceSearchInput\">{{ 'agro.angular_components.number' | libTranslate }}</label>\r\n <input\r\n type=\"text\"\r\n id=\"invoiceSearchInput\"\r\n pInputText\r\n [formControl]=\"searchValue\"\r\n [placeholder]=\"'' | libTranslate\"\r\n [required]=\"false\"\r\n />\r\n <div class=\"ui-g-12\">\r\n <p-table\r\n [(selection)]=\"selected\"\r\n [value]=\"tableDataSource\"\r\n [columns]=\"gridColumns\"\r\n [scrollable]=\"true\"\r\n dataKey=\"externalInvoiceId\"\r\n [rows]=\"10\"\r\n [paginator]=\"true\"\r\n [lazyLoadOnInit]=\"false\"\r\n [totalRecords]=\"gridTotalRecords\"\r\n [lazy]=\"true\"\r\n (onLazyLoad)=\"updateGridData($event)\"\r\n [resizableColumns]=\"true\"\r\n sortMode=\"multiple\"\r\n [selectionMode]=\"gridLoading ? null : 'multiple'\"\r\n >\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n <th class=\"checkbox\" scope=\"col\">\r\n <p-tableHeaderCheckbox [disabled]=\"gridLoading\"></p-tableHeaderCheckbox>\r\n </th>\r\n <ng-container *ngFor=\"let col of columns\">\r\n <th\r\n *ngIf=\"col.sortable === undefined || col.sortable\"\r\n [pSortableColumn]=\"col.field\"\r\n scope=\"col\"\r\n >\r\n {{ col.header }}\r\n <p-sortIcon [field]=\"col.field\"></p-sortIcon>\r\n </th>\r\n <th *ngIf=\"col.sortable === false || col.sortable === null\" scope=\"col\">\r\n {{ col.header }}\r\n </th>\r\n </ng-container>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"body\" let-rowData let-columns=\"columns\" let-rowIndex=\"rowIndex\">\r\n <tr [class.loading-row]=\"rowData.__isPlaceholder\">\r\n <td class=\"checkbox\" tabindex=\"0\">\r\n <ng-container *ngIf=\"!rowData.__isPlaceholder\">\r\n <p-tableCheckbox [value]=\"rowData\" [disabled]=\"gridLoading\"></p-tableCheckbox>\r\n </ng-container>\r\n <ng-container *ngIf=\"rowData.__isPlaceholder\">\r\n <div class=\"loading-cell-placeholder\"></div>\r\n </ng-container>\r\n </td>\r\n <td\r\n [pSelectableRow]=\"rowData.__isPlaceholder ? null : rowData\"\r\n [pSelectableRowIndex]=\"rowIndex\"\r\n *ngFor=\"let col of columns\"\r\n class=\"column\"\r\n tabindex=\"0\"\r\n >\r\n <ng-container>\r\n <span *ngIf=\"!rowData.__isPlaceholder\">\r\n {{ gridFieldValuesMap[col.field] ? gridFieldValuesMap[col.field](rowData) : rowData[col.field] }}\r\n </span>\r\n <span class=\"loading-text-placeholder\" *ngIf=\"rowData.__isPlaceholder\">\r\n {{ rowData[col.field] || 'placeholder' }}\r\n </span>\r\n </ng-container>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"paginatorright\">\r\n <span>{{ gridTotalRecords }} registros encontrados</span>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"dontHaveAnyInvoice\">\r\n <s-empty-state\r\n iconClass=\"fa fa-exclamation-triangle\"\r\n title=\"{{ 'agro.angular_components.add_pj_invoice_modal_no_invoices_found' | libTranslate }}\"\r\n primaryActionLabel=\"{{ 'agro.angular_components.error_server_try_again' | libTranslate }}\"\r\n (primaryAction)=\"tryToSearchAgain()\"\r\n description=\"{{ 'agro.angular_components.no_register_found_for_external_invoices_summary' | libTranslate }}\"\r\n >\r\n </s-empty-state>\r\n </ng-container>\r\n\r\n <ng-template pTemplate=\"footer\" *ngIf=\"!dontHaveAnyInvoice\">\r\n <div class=\"footer\">\r\n <ng-container *ngIf=\"invertFooterActions; else defaultFooterActions\">\r\n <s-button\r\n [priority]=\"ButtonPriority.Link\"\r\n label=\"{{ 'agro.angular_components.cancel' | libTranslate }}\"\r\n (click)=\"cancel()\"\r\n (keydown.enter)=\"cancel()\"\r\n ></s-button>\r\n <s-button\r\n [priority]=\"ButtonPriority.Primary\"\r\n label=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [disabled]=\"gridLoading || !selected.length\"\r\n (click)=\"add()\"\r\n (keydown.enter)=\"add()\"\r\n ></s-button>\r\n </ng-container>\r\n <ng-template #defaultFooterActions>\r\n <s-button\r\n [priority]=\"ButtonPriority.Primary\"\r\n label=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [disabled]=\"gridLoading || !selected.length\"\r\n (click)=\"add()\"\r\n (keydown.enter)=\"add()\"\r\n ></s-button>\r\n <s-button\r\n [priority]=\"ButtonPriority.Link\"\r\n label=\"{{ 'agro.angular_components.cancel' | libTranslate }}\"\r\n (click)=\"cancel()\"\r\n (keydown.enter)=\"cancel()\"\r\n ></s-button>\r\n </ng-template>\r\n </div>\r\n </ng-template>\r\n</p-dialog>\r\n", styles: [".footer{width:100%;display:flex;justify-content:space-between;align-items:center}.add-invoice-modal{width:480px;max-width:480px}.add-invoice-modal input[type=text]{width:100%}.add-invoice-modal .ui-dialog{width:480px!important}.add-invoice-modal .ui-dialog .ui-dialog-content{min-height:175px}td.checkbox,th.checkbox{width:50px}th.column,td.column{min-width:150px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.loading-row{pointer-events:none}.loading-row .loading-text-placeholder{display:inline-block;filter:blur(3px);-webkit-user-select:none;user-select:none}.loading-row .loading-cell-placeholder{width:16px;height:16px;border-radius:4px;background:#d8d8d8;filter:blur(1px);margin:0 auto}\n"] }]
185
184
  }], ctorParameters: () => [{ type: i1.LibTranslationService }, { type: i2.AgroInvoiceService }, { type: i3.LocaleService }, { type: i4.KilogramPipe }, { type: i5.CurrencyPipe }, { type: i6.ProducerInvoiceService }, { type: i7.MessageService }, { type: i5.DatePipe }], propDecorators: { options: [{
186
185
  type: Input
187
186
  }], whenSelectInvoices: [{
188
187
  type: Output
189
188
  }] } });
190
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtaW52b2ljZS1wai1mb3ItZml4YXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1jb21wb25lbnRzL2NvbXBvbmVudHMvbW9kYWwtaW52b2ljZS1wai9mb3ItZml4YXRpb24vbW9kYWwtaW52b2ljZS1wai1mb3ItZml4YXRpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1jb21wb25lbnRzL2NvbXBvbmVudHMvbW9kYWwtaW52b2ljZS1wai90ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBSTFGLE9BQU8sRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pDLE9BQU8sRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFJckQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBV3BFLE1BQU0sT0FBTyxrQ0FBbUMsU0FBUSxrQkFBa0I7SUFPekQ7SUFDUztJQUNBO0lBQ0E7SUFDVDtJQUNBO0lBQ1M7SUFDRjtJQWJYLE9BQU8sQ0FBb0M7SUFDMUMsa0JBQWtCLEdBQUcsSUFBSSxZQUFZLEVBQVMsQ0FBQztJQUVsRCxXQUFXLENBQThDO0lBRWhFLFlBQ2Esa0JBQXlDLEVBQ2hDLGNBQWtDLEVBQ2xDLGFBQTRCLEVBQzVCLFlBQTBCLEVBQ25DLFlBQTBCLEVBQzFCLHNCQUE4QyxFQUNyQyxjQUE4QixFQUNoQyxRQUFrQjtRQUVsQyxLQUFLLENBQUMsa0JBQWtCLEVBQUUsY0FBYyxFQUFFLGFBQWEsRUFBRSxZQUFZLEVBQUUsY0FBYyxFQUFFLFFBQVEsQ0FBQyxDQUFD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dCI6WyJpbXBvcnQgeyBDdXJyZW5jeVBpcGUsIERhdGVQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbHVtbiB9IGZyb20gJ0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvdGFibGUnO1xyXG5pbXBvcnQgeyBMb2NhbGVTZXJ2aWNlIH0gZnJvbSAnQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50cy9sb2NhbGUnO1xyXG5pbXBvcnQgeyBNZXNzYWdlU2VydmljZSB9IGZyb20gJ3ByaW1lbmcvYXBpJztcclxuaW1wb3J0IHsgRU1QVFksIG9mIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGZpbmFsaXplLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IEtpbG9ncmFtUGlwZSB9IGZyb20gJy4uLy4uLy4uL3BpcGUva2lsb2dyYW0nO1xyXG5pbXBvcnQgeyBMaWJUcmFuc2xhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9saWItdHJhbnNsYXRpb24uc2VydmljZSc7XHJcbmltcG9ydCB7IFByb2R1Y2VySW52b2ljZVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9wcm9kdWNlci1pbnZvaWNlL3Byb2R1Y2VyLWludm9pY2Uuc2VydmljZSc7XHJcbmltcG9ydCB7IE1vZGFsSW52b2ljZVBqQmFzZSB9IGZyb20gJy4uL21vZGFsLWludm9pY2UtcGotYmFzZS5jbGFzcyc7XHJcbmltcG9ydCB7IEFncm9JbnZvaWNlU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2Fncm8taW52b2ljZSc7XHJcbmltcG9ydCB7IElJbnZvaWNlTG9va3VwUmVzcG9uc2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9hZ3JvLWludm9pY2UvaW50ZXJmYWNlcyc7XHJcbmltcG9ydCB7IE1vZGFsSW52b2ljZVBqRm9yRml4YXRpb25PcHRpb25zIH0gZnJvbSAnLi9tb2RhbC1maXhhdGlvbi1vcHRpb25zLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IExpc3RQYXJhbXMgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9hZ3JvLWVudGl0eS1zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdzLW1vZGFsLWludm9pY2UtcGotZm9yLWZpeGF0aW9uJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi4vdGVtcGxhdGUuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi4vc3R5bGUuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTW9kYWxJbnZvaWNlUGpGb3JGaXhhdGlvbkNvbXBvbmVudCBleHRlbmRzIE1vZGFsSW52b2ljZVBqQmFzZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICAgIEBJbnB1dCgpIG9wdGlvbnMhOiBNb2RhbEludm9pY2VQakZvckZpeGF0aW9uT3B0aW9ucztcclxuICAgIEBPdXRwdXQoKSB3aGVuU2VsZWN0SW52b2ljZXMgPSBuZXcgRXZlbnRFbWl0dGVyPGFueVtdPigpO1xyXG5cclxuICAgIHB1YmxpYyBncmlkQ29sdW1ucyE6IFBhcnRpYWw8Q29sdW1uICYgeyBzb3J0YWJsZT86IGJvb2xlYW4gfT5bXTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICByZWFkb25seSB0cmFuc2xhdGlvblNlcnZpY2U6IExpYlRyYW5zbGF0aW9uU2VydmljZSxcclxuICAgICAgICBvdmVycmlkZSByZWFkb25seSBpbnZvaWNlU2VydmljZTogQWdyb0ludm9pY2VTZXJ2aWNlLFxyXG4gICAgICAgIG92ZXJyaWRlIHJlYWRvbmx5IGxvY2FsZVNlcnZpY2U6IExvY2FsZVNlcnZpY2UsXHJcbiAgICAgICAgb3ZlcnJpZGUgcmVhZG9ubHkga2lsb2dyYW1QaXBlOiBLaWxvZ3JhbVBpcGUsXHJcbiAgICAgICAgcmVhZG9ubHkgY3VycmVuY3lQaXBlOiBDdXJyZW5jeVBpcGUsXHJcbiAgICAgICAgcmVhZG9ubHkgcHJvZHVjZXJJbnZvaWNlU2VydmljZTogUHJvZHVjZXJJbnZvaWNlU2VydmljZSxcclxuICAgICAgICBvdmVycmlkZSByZWFkb25seSBtZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2UsXHJcbiAgICAgICAgcHVibGljIG92ZXJyaWRlIGRhdGVQaXBlOiBEYXRlUGlwZVxyXG4gICAgKSB7XHJcbiAgICAgICAgc3VwZXIodHJhbnNsYXRpb25TZXJ2aWNlLCBpbnZvaWNlU2VydmljZSwgbG9jYWxlU2VydmljZSwga2lsb2dyYW1QaXBlLCBtZXNzYWdlU2VydmljZSwgZGF0ZVBpcGUpO1xyXG4gICAgfVxyXG5cclxuICAgIG92ZXJyaWRlIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuZGVmaW5lR3JpZENvbHVtbnMoKTtcclxuICAgICAgICB0aGlzLmdyaWRGaWVsZFZhbHVlc01hcCA9IHtcclxuICAgICAgICAgICAgLi4udGhpcy5ncmlkRmllbGRWYWx1ZXNNYXAsXHJcbiAgICAgICAgICAgIHNlcmllczogKHJvdykgPT4gcm93Py5zZXJpZXNMZWdhbCB8fCByb3c/LnNlcmllcyB8fCByb3cuc2VyaWVzLFxyXG4gICAgICAgICAgICB0b3RhbFZhbHVlOiAocm93KSA9PiB0aGlzLmN1cnJlbmN5UGlwZS50cmFuc2Zvcm0ocm93Py5uZXRUb3RhbFZhbHVlIHx8IDAsICdCUkwnKSxcclxuICAgICAgICB9O1xyXG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XHJcbiAgICB9XHJcblxyXG4gICAgZGVmaW5lR3JpZENvbHVtbnMoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5ncmlkQ29sdW1ucyA9IFtcclxuICAgICAgICAgICAgeyBmaWVsZDogJ251bWJlcicsIGhlYWRlcjogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnYWdyby5hbmd1bGFyX2NvbXBvbmVudHMubnVtYmVyJykgfSxcclxuICAgICAgICAgICAgeyBmaWVsZDogJ3NlcmllcycsIGhlYWRlcjogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuc2VyaWVzJykgfSxcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgZmllbGQ6ICd0b3RhbFZhbHVlJyxcclxuICAgICAgICAgICAgICAgIGhlYWRlcjogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnYWdyby5hbmd1bGFyX2NvbXBvbmVudHMudG90YWxfdmFsdWUnKSxcclxuICAgICAgICAgICAgICAgIHNvcnRhYmxlOiBmYWxzZSxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgZmllbGQ6ICdsaW5rZWRWYWx1ZScsXHJcbiAgICAgICAgICAgICAgICBoZWFkZXI6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2Fncm8uYW5ndWxhcl9jb21wb25lbnRzLnZhbHVlX2xpbmtlZCcpLFxyXG4gICAgICAgICAgICAgICAgc29ydGFibGU6IGZhbHNlLFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7IGZpZWxkOiAnaXNzdWFuY2VEYXRlJywgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5pc3N1YW5jZV9kYXRlJykgfSxcclxuICAgICAgICBdO1xyXG4gICAgfVxyXG5cclxuICAgIGJlZm9yZUFkZChzZWxlY3RlZEludm9pY2VzOiBhbnlbXSk6IFByb21pc2U8YW55PiB7XHJcbiAgICAgICAgaWYgKHNlbGVjdGVkSW52b2ljZXM/Lmxlbmd0aCkge1xyXG4gICAgICAgICAgICB0aGlzLmxpbmtTZWxlY3RlZEludm9pY2VzSW5GaXhhdGlvbkl0ZW0oKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIG9mKEVNUFRZKS50b1Byb21pc2UoKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgb3ZlcnJpZGUgb3BlbigpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy5vcHRpb25zLmZpeGF0aW9uSXRlbXMuZmlsdGVyKChpdGVtKSA9PiBpdGVtLnJlcXVpcmVkVmFsdWUgPiBpdGVtLnRvdGFsVmFsdWVJbnZvaWNlcykubGVuZ3RoID09PSAwKSB7XHJcbiAgICAgICAgICAgIHRoaXMubWVzc2FnZVNlcnZpY2UuYWRkKHtcclxuICAgICAgICAgICAgICAgIHNldmVyaXR5OiAnd2FybicsXHJcbiAgICAgICAgICAgICAgICBzdW1tYXJ5OiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5tYXhfbGlua2VkX2ludm9pY2VzJyksXHJcbiAgICAgICAgICAgICAgICBkZXRhaWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2Fncm8uYW5ndWxhcl9jb21wb25lbnRzLm1heF9saW5rZWRfaW52b2ljZXNfZGVzY3JpcHRpb24nKSxcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgc3VwZXIub3BlbigpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBhc3luYyBsaW5rU2VsZWN0ZWRJbnZvaWNlc0luRml4YXRpb25JdGVtKCkge1xyXG4gICAgICAgIGlmICghKGF3YWl0IHRoaXMuaXNWYWxpZEFuZFNldExpbmtlZFZhbHVlSW5JbnZvaWNlcygpKSkge1xyXG4gICAgICAgICAgICB0aGlzLmdyaWRMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29uc3QgZW50aXRpZXM6IGFueVtdID0gdGhpcy5zZWxlY3RlZFxyXG4gICAgICAgICAgICAuZmxhdE1hcCgoaW52b2ljZTogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5vcHRpb25zLmZpeGF0aW9uSXRlbXMubWFwKChmaXhhdGlvbkl0ZW06IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlcXVpcmVkVmFsdWUgPVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoZml4YXRpb25JdGVtLnJlcXVpcmVkVmFsdWUgfHwgMCkgLSAoZml4YXRpb25JdGVtLnRvdGFsVmFsdWVJbnZvaWNlcyB8fCAwKTtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoaW52b2ljZS5yZW1haW5pbmdWYWx1ZSA8PSAwIHx8IHJlcXVpcmVkVmFsdWUgPD0gMCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgdmFsdWVUb0JlTGlua2VkID1cclxuICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWRWYWx1ZSA+IGludm9pY2UucmVtYWluaW5nVmFsdWUgPyBpbnZvaWNlLnJlbWFpbmluZ1ZhbHVlIDogcmVxdWlyZWRWYWx1ZTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgaW52b2ljZS5yZW1haW5pbmdWYWx1ZSAtPSB2YWx1ZVRvQmVMaW5rZWQ7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgYm9keSA9IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgc2VyaWVzOiBpbnZvaWNlPy5zZXJpZXMsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG51bWJlcjogU3RyaW5nKGludm9pY2U/Lm51bWJlciksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGludm9pY2VJZDogaW52b2ljZT8uaWQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmtlZFZhbHVlOiB2YWx1ZVRvQmVMaW5rZWQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvdGFsVmFsdWU6IGludm9pY2U/LnRvdGFsVmFsdWUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlzc3VhbmNlRGF0ZTogaW52b2ljZT8uaXNzdWFuY2VEYXRlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmaXhhdGlvbkl0ZW0sXHJcbiAgICAgICAgICAgICAgICAgICAgfTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgZml4YXRpb25JdGVtLnRvdGFsVmFsdWVJbnZvaWNlcyA9IChmaXhhdGlvbkl0ZW0udG90YWxWYWx1ZUludm9pY2VzIHx8IDApICsgdmFsdWVUb0JlTGlua2VkO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gYm9keTtcclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAuZmlsdGVyKChlbnRpdHkpOiBlbnRpdHkgaXMgTm9uTnVsbGFibGU8dHlwZW9mIGVudGl0eT4gPT4gZW50aXR5ICE9PSBudWxsKTtcclxuICAgICAgICB0aGlzLmdyaWRMb2FkaW5nID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLnByb2R1Y2VySW52b2ljZVNlcnZpY2VcclxuICAgICAgICAgICAgLmluc2VydEJ1bGsoZW50aXRpZXMpXHJcbiAgICAgICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSksXHJcbiAgICAgICAgICAgICAgICBmaW5hbGl6ZSgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5ncmlkTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMud2hlblNlbGVjdEludm9pY2VzLmVtaXQodGhpcy5zZWxlY3RlZCk7XHJcbiAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICApXHJcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5tZXNzYWdlU2VydmljZS5hZGQoe1xyXG4gICAgICAgICAgICAgICAgICAgIHNldmVyaXR5OiAnc3VjY2VzcycsXHJcbiAgICAgICAgICAgICAgICAgICAgc3VtbWFyeTogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuc3VjY2VzcycpLFxyXG4gICAgICAgICAgICAgICAgICAgIGRldGFpbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuaW52b2ljZV9jcmVhdGVkX3N1Y2Nlc3NmdWxseScpLFxyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmNhbmNlbCgpO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBhc3luYyBpc1ZhbGlkQW5kU2V0TGlua2VkVmFsdWVJbkludm9pY2VzKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xyXG4gICAgICAgIGNvbnN0IHZhbG9yTGlua2VkID0gYXdhaXQgdGhpcy5wcm9kdWNlckludm9pY2VTZXJ2aWNlLmdldFRvdGFsTGlua2VkSW5JbnZvaWNlcyhcclxuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZC5tYXAoKGludm9pY2U6IGFueSkgPT4gaW52b2ljZS5pZCksXHJcbiAgICAgICAgICAgIHRoaXMub3B0aW9ucy5maXhhdGlvbklkXHJcbiAgICAgICAgKTtcclxuICAgICAgICBsZXQgaXNWYWxpZCA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZC5mb3JFYWNoKChpbnZvaWNlOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgaW52b2ljZS5saW5rZWRWYWx1ZSA9IHZhbG9yTGlua2VkLmZpbmQoKGxpbmtlZDogYW55KSA9PiBsaW5rZWQuaW52b2ljZUlkID09PSBpbnZvaWNlLmlkKT8udG90YWxMaW5rZWQgfHwgMDtcclxuICAgICAgICAgICAgaWYgKGludm9pY2UubGlua2VkVmFsdWUgPj0gaW52b2ljZS50b3RhbFZhbHVlKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLmFkZCh7XHJcbiAgICAgICAgICAgICAgICAgICAgc2V2ZXJpdHk6ICd3YXJuJyxcclxuICAgICAgICAgICAgICAgICAgICBzdW1tYXJ5OiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5saW5rX2ludm9pY2UnKSxcclxuICAgICAgICAgICAgICAgICAgICBkZXRhaWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2Fncm8uYW5ndWxhcl9jb21wb25lbnRzLmludm9pY2VfYWxyZWFkeV9saW5rZWQnKSxcclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgaXNWYWxpZCA9IGZhbHNlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGludm9pY2UucmVtYWluaW5nVmFsdWUgPSBpbnZvaWNlLnRvdGFsVmFsdWUgLSBpbnZvaWNlLmxpbmtlZFZhbHVlO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHJldHVybiBpc1ZhbGlkO1xyXG4gICAgfVxyXG5cclxuICAgIGFzeW5jIGFkYXB0UmVzdWx0KHJlc3VsdDogSUludm9pY2VMb29rdXBSZXNwb25zZSk6IFByb21pc2U8YW55PiB7XHJcbiAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShyZXN1bHQgYXMgYW55KTtcclxuICAgIH1cclxuXHJcbiAgICBvdmVycmlkZSBjYW5jZWwoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICAgICAgdGhpcy5vcHRpb25zLmZpeGF0aW9uSXRlbXMgPSBbXTtcclxuICAgICAgICByZXR1cm4gc3VwZXIuY2FuY2VsKCk7XHJcbiAgICB9XHJcblxyXG4gICAgYXN5bmMgdXBkYXRlTGlua2VkVmFsdWVJbkdyaWQocm93czogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICAgICAgY29uc3QgaW52b2ljZUlkID0gdGhpcy5ncmlkRGF0YS5tYXAoKGludm9pY2U6IGFueSkgPT4gaW52b2ljZS5pZCk7XHJcbiAgICAgICAgbGV0IGZpbHRlciA9IGBmaXhhdGlvbkl0ZW0uZml4YXRpb24uaWQgZXEgJyR7dGhpcy5vcHRpb25zLmZpeGF0aW9uSWR9J2A7XHJcbiAgICAgICAgaWYgKGludm9pY2VJZCAmJiBpbnZvaWNlSWQubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICBmaWx0ZXIgKz0gYGFuZCBpbnZvaWNlSWQgaW4gKCcke2ludm9pY2VJZC5qb2luKFwiJywnXCIpfScpIGA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnN0IGxpc3RQYXJhbXM6IFBhcnRpYWw8TGlzdFBhcmFtcz4gPSB7XHJcbiAgICAgICAgICAgIHBhZ2U6IDAsXHJcbiAgICAgICAgICAgIHNpemU6IHJvd3MsXHJcbiAgICAgICAgICAgIGZpbHRlclF1ZXJ5OiBmaWx0ZXIsXHJcbiAgICAgICAgfTtcclxuICAgICAgICBhd2FpdCB0aGlzLnByb2R1Y2VySW52b2ljZVNlcnZpY2VcclxuICAgICAgICAgICAgLmxpc3QobGlzdFBhcmFtcylcclxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSkpXHJcbiAgICAgICAgICAgIC50b1Byb21pc2UoKVxyXG4gICAgICAgICAgICAudGhlbigocHJvZHVjZXJJbnZvaWNlczogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICBwcm9kdWNlckludm9pY2VzPy5jb250ZW50cy5mb3JFYWNoKChpbnZvaWNlOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBjb25zdCBncmlkSW52b2ljZSA9IHRoaXMuZ3JpZERhdGEuZmluZCgoaXRlbTogYW55KSA9PiBpdGVtLmlkID09PSBpbnZvaWNlLmludm9pY2VJZCk7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKGdyaWRJbnZvaWNlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGdyaWRJbnZvaWNlLmxpbmtlZFZhbHVlID0gaW52b2ljZS5saW5rZWRWYWx1ZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICB9XHJcbn1cclxuIiwiPHAtZGlhbG9nXHJcbiAgICBoZWFkZXI9XCJ7eyAnYWdyby5hbmd1bGFyX2NvbXBvbmVudHMucGFuZWxfdGl0bGVfZXh0ZXJuYWxfaW52b2ljZV9hZGRfZXh0ZXJuYWxfaW52b2ljZScgfCBsaWJUcmFuc2xhdGUgfX1cIlxyXG4gICAgWyh2aXNpYmxlKV09XCJ2aXNpYmxlXCJcclxuICAgIFttb2RhbF09XCJ0cnVlXCJcclxuICAgIGNsYXNzPVwiYWRkLWludm9pY2UtbW9kYWxcIlxyXG4gICAgW2Nsb3NlT25Fc2NhcGVdPVwiZmFsc2VcIlxyXG4gICAgKG9uSGlkZSk9XCJjYW5jZWxQb29saW5nKClcIlxyXG4gICAgW2Rpc21pc3NhYmxlTWFza109XCJmYWxzZVwiXHJcbj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhZG9udEhhdmVBbnlJbnZvaWNlXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInVpLWdcIj5cclxuICAgICAgICAgICAgPGxhYmVsIGZvcj1cImludm9pY2VTZWFyY2hJbnB1dFwiPnt7ICdhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5udW1iZXInIHwgbGliVHJhbnNsYXRlIH19PC9sYWJlbD5cclxuICAgICAgICAgICAgPGlucHV0XHJcbiAgICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXHJcbiAgICAgICAgICAgICAgICBpZD1cImludm9pY2VTZWFyY2hJbnB1dFwiXHJcbiAgICAgICAgICAgICAgICBwSW5wdXRUZXh0XHJcbiAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xdPVwic2VhcmNoVmFsdWVcIlxyXG4gICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIicnIHwgbGliVHJhbnNsYXRlXCJcclxuICAgICAgICAgICAgICAgIFtyZXF1aXJlZF09XCJmYWxzZVwiXHJcbiAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ1aS1nLTEyXCI+XHJcbiAgICAgICAgICAgICAgICA8cC10YWJsZVxyXG4gICAgICAgICAgICAgICAgICAgIFsoc2VsZWN0aW9uKV09XCJzZWxlY3RlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgW3ZhbHVlXT1cImdyaWREYXRhXCJcclxuICAgICAgICAgICAgICAgICAgICBbY29sdW1uc109XCJncmlkQ29sdW1uc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgW3Njcm9sbGFibGVdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgZGF0YUtleT1cImV4dGVybmFsSW52b2ljZUlkXCJcclxuICAgICAgICAgICAgICAgICAgICBbcm93c109XCIxMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgW3BhZ2luYXRvcl09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICBbbGF6eUxvYWRPbkluaXRdPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICAgICAgICAgIFt0b3RhbFJlY29yZHNdPVwiZ3JpZFRvdGFsUmVjb3Jkc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgW2xhenldPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgKG9uTGF6eUxvYWQpPVwidXBkYXRlR3JpZERhdGEoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW3Jlc2l6YWJsZUNvbHVtbnNdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgKnNMb2FkaW5nU3RhdGU9XCJncmlkTG9hZGluZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgc29ydE1vZGU9XCJtdWx0aXBsZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW3NlbGVjdGlvbk1vZGVdPVwiJ211bHRpcGxlJ1wiXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImhlYWRlclwiIGxldC1jb2x1bW5zPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggY2xhc3M9XCJjaGVja2JveFwiIHNjb3BlPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAtdGFibGVIZWFkZXJDaGVja2JveD48L3AtdGFibGVIZWFkZXJDaGVja2JveD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBjb2wgb2YgY29sdW1uc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImNvbC5zb3J0YWJsZSA9PT0gdW5kZWZpbmVkIHx8IGNvbC5zb3J0YWJsZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtwU29ydGFibGVDb2x1bW5dPVwiY29sLmZpZWxkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2NvcGU9XCJjb2xcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgY29sLmhlYWRlciB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cC1zb3J0SWNvbiBbZmllbGRdPVwiY29sLmZpZWxkXCI+PC9wLXNvcnRJY29uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoICpuZ0lmPVwiY29sLnNvcnRhYmxlID09PSBmYWxzZSB8fCBjb2wuc29ydGFibGUgPT09IG51bGxcIiBzY29wZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBjb2wuaGVhZGVyIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJib2R5XCIgbGV0LXJvd0RhdGEgbGV0LWNvbHVtbnM9XCJjb2x1bW5zXCIgbGV0LXJvd0luZGV4PVwicm93SW5kZXhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwiY2hlY2tib3hcIiB0YWJpbmRleD1cIjBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cC10YWJsZUNoZWNrYm94IFt2YWx1ZV09XCJyb3dEYXRhXCI+PC9wLXRhYmxlQ2hlY2tib3g+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BTZWxlY3RhYmxlUm93XT1cInJvd0RhdGFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtwU2VsZWN0YWJsZVJvd0luZGV4XT1cInJvd0luZGV4XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgY29sIG9mIGNvbHVtbnNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY29sdW1uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YWJpbmRleD1cIjBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGdyaWRGaWVsZFZhbHVlc01hcFtjb2wuZmllbGRdID8gZ3JpZEZpZWxkVmFsdWVzTWFwW2NvbC5maWVsZF0ocm93RGF0YSkgOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3dEYXRhW2NvbC5maWVsZF0gfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cInBhZ2luYXRvcnJpZ2h0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPnt7IGdyaWRUb3RhbFJlY29yZHMgfX0gcmVnaXN0cm9zIGVuY29udHJhZG9zPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgICA8L3AtdGFibGU+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImRvbnRIYXZlQW55SW52b2ljZVwiPlxyXG4gICAgICAgIDxzLWVtcHR5LXN0YXRlXHJcbiAgICAgICAgICAgIGljb25DbGFzcz1cImZhIGZhLWV4Y2xhbWF0aW9uLXRyaWFuZ2xlXCJcclxuICAgICAgICAgICAgdGl0bGU9XCJ7eyAnYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuYWRkX3BqX2ludm9pY2VfbW9kYWxfbm9faW52b2ljZXNfZm91bmQnIHwgbGliVHJhbnNsYXRlIH19XCJcclxuICAgICAgICAgICAgcHJpbWFyeUFjdGlvbkxhYmVsPVwie3sgJ2Fncm8uYW5ndWxhcl9jb21wb25lbnRzLmVycm9yX3NlcnZlcl90cnlfYWdhaW4nIHwgbGliVHJhbnNsYXRlIH19XCJcclxuICAgICAgICAgICAgKHByaW1hcnlBY3Rpb24pPVwidHJ5VG9TZWFyY2hBZ2FpbigpXCJcclxuICAgICAgICAgICAgZGVzY3JpcHRpb249XCJ7eyAnYWdyby5hbmd1bGFyX2NvbXBvbmVudHMubm9fcmVnaXN0ZXJfZm91bmRfZm9yX2V4dGVybmFsX2ludm9pY2VzX3N1bW1hcnknIHwgbGliVHJhbnNsYXRlIH19XCJcclxuICAgICAgICA+XHJcbiAgICAgICAgPC9zLWVtcHR5LXN0YXRlPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPHAtZm9vdGVyIGNsYXNzPVwiZm9vdGVyXCIgKm5nSWY9XCIhZG9udEhhdmVBbnlJbnZvaWNlXCI+XHJcbiAgICAgICAgPHMtYnV0dG9uXHJcbiAgICAgICAgICAgIFtwcmlvcml0eV09XCJCdXR0b25Qcmlvcml0eS5QcmltYXJ5XCJcclxuICAgICAgICAgICAgbGFiZWw9XCJ7eyAnYWdyby5hbmd1bGFyX2NvbXBvbmVudHMucGFuZWxfdGl0bGVfZXh0ZXJuYWxfaW52b2ljZV9hZGRfZXh0ZXJuYWxfaW52b2ljZScgfCBsaWJUcmFuc2xhdGUgfX1cIlxyXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiIXNlbGVjdGVkLmxlbmd0aFwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJhZGQoKVwiXHJcbiAgICAgICAgICAgIChrZXlkb3duLmVudGVyKT1cImFkZCgpXCJcclxuICAgICAgICA+PC9zLWJ1dHRvbj5cclxuICAgICAgICA8cy1idXR0b25cclxuICAgICAgICAgICAgW3ByaW9yaXR5XT1cIkJ1dHRvblByaW9yaXR5LkxpbmtcIlxyXG4gICAgICAgICAgICBsYWJlbD1cInt7ICdhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5jYW5jZWwnIHwgbGliVHJhbnNsYXRlIH19XCJcclxuICAgICAgICAgICAgKGNsaWNrKT1cImNhbmNlbCgpXCJcclxuICAgICAgICAgICAgKGtleWRvd24uZW50ZXIpPVwiY2FuY2VsKClcIlxyXG4gICAgICAgID48L3MtYnV0dG9uPlxyXG4gICAgPC9wLWZvb3Rlcj5cclxuPC9wLWRpYWxvZz5cclxuIl19
189
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtaW52b2ljZS1wai1mb3ItZml4YXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1jb21wb25lbnRzL2NvbXBvbmVudHMvbW9kYWwtaW52b2ljZS1wai9mb3ItZml4YXRpb24vbW9kYWwtaW52b2ljZS1wai1mb3ItZml4YXRpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1jb21wb25lbnRzL2NvbXBvbmVudHMvbW9kYWwtaW52b2ljZS1wai90ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBSTFGLE9BQU8sRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pDLE9BQU8sRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFJckQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7QUFXcEUsTUFBTSxPQUFPLGtDQUFtQyxTQUFRLGtCQUFrQjtJQU96RDtJQUNTO0lBQ0E7SUFDQTtJQUNUO0lBQ0E7SUFDUztJQUNGO0lBYlgsT0FBTyxDQUFvQztJQUMxQyxrQkFBa0IsR0FBRyxJQUFJLFlBQVksRUFBUyxDQUFDO0lBRWxELFdBQVcsQ0FBOEM7SUFFaEUsWUFDYSxrQkFBeUMsRUFDaEMsY0FBa0MsRUFDbEMsYUFBNEIsRUFDNUIsWUFBMEIsRUFDbkMsWUFBMEIsRUFDMUIsc0JBQThDLEVBQ3JDLGNBQThCLEVBQ2hDLFFBQWtCO1FBRWxDLEtBQUssQ0FBQyxrQkFBa0IsRUFBRSxjQUFjLEVBQUUsYUFBYSxFQUFFLFlBQVksRUFBRSxjQUFjLEVBQUUsUUFBUSxDQUFDLENBQUM7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IjpbImltcG9ydCB7IEN1cnJlbmN5UGlwZSwgRGF0ZVBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29sdW1uIH0gZnJvbSAnQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50cy90YWJsZSc7XHJcbmltcG9ydCB7IExvY2FsZVNlcnZpY2UgfSBmcm9tICdAc2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzL2xvY2FsZSc7XHJcbmltcG9ydCB7IE1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSAncHJpbWVuZy9hcGknO1xyXG5pbXBvcnQgeyBFTVBUWSwgb2YgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgZmluYWxpemUsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgS2lsb2dyYW1QaXBlIH0gZnJvbSAnLi4vLi4vLi4vcGlwZS9raWxvZ3JhbSc7XHJcbmltcG9ydCB7IExpYlRyYW5zbGF0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2xpYi10cmFuc2xhdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgUHJvZHVjZXJJbnZvaWNlU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3Byb2R1Y2VyLWludm9pY2UvcHJvZHVjZXItaW52b2ljZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTW9kYWxJbnZvaWNlUGpCYXNlIH0gZnJvbSAnLi4vbW9kYWwtaW52b2ljZS1wai1iYXNlLmNsYXNzJztcclxuaW1wb3J0IHsgQWdyb0ludm9pY2VTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvYWdyby1pbnZvaWNlJztcclxuaW1wb3J0IHsgSUludm9pY2VMb29rdXBSZXNwb25zZSB9IGZyb20gJy4uL3NlcnZpY2VzL2Fncm8taW52b2ljZS9pbnRlcmZhY2VzJztcclxuaW1wb3J0IHsgTW9kYWxJbnZvaWNlUGpGb3JGaXhhdGlvbk9wdGlvbnMgfSBmcm9tICcuL21vZGFsLWZpeGF0aW9uLW9wdGlvbnMuaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgTGlzdFBhcmFtcyB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2Fncm8tZW50aXR5LXNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ3MtbW9kYWwtaW52b2ljZS1wai1mb3ItZml4YXRpb24nLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuLi90ZW1wbGF0ZS5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuLi9zdHlsZS5zY3NzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBNb2RhbEludm9pY2VQakZvckZpeGF0aW9uQ29tcG9uZW50IGV4dGVuZHMgTW9kYWxJbnZvaWNlUGpCYXNlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gICAgQElucHV0KCkgb3B0aW9ucyE6IE1vZGFsSW52b2ljZVBqRm9yRml4YXRpb25PcHRpb25zO1xyXG4gICAgQE91dHB1dCgpIHdoZW5TZWxlY3RJbnZvaWNlcyA9IG5ldyBFdmVudEVtaXR0ZXI8YW55W10+KCk7XHJcblxyXG4gICAgcHVibGljIGdyaWRDb2x1bW5zITogUGFydGlhbDxDb2x1bW4gJiB7IHNvcnRhYmxlPzogYm9vbGVhbiB9PltdO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHJlYWRvbmx5IHRyYW5zbGF0aW9uU2VydmljZTogTGliVHJhbnNsYXRpb25TZXJ2aWNlLFxyXG4gICAgICAgIG92ZXJyaWRlIHJlYWRvbmx5IGludm9pY2VTZXJ2aWNlOiBBZ3JvSW52b2ljZVNlcnZpY2UsXHJcbiAgICAgICAgb3ZlcnJpZGUgcmVhZG9ubHkgbG9jYWxlU2VydmljZTogTG9jYWxlU2VydmljZSxcclxuICAgICAgICBvdmVycmlkZSByZWFkb25seSBraWxvZ3JhbVBpcGU6IEtpbG9ncmFtUGlwZSxcclxuICAgICAgICByZWFkb25seSBjdXJyZW5jeVBpcGU6IEN1cnJlbmN5UGlwZSxcclxuICAgICAgICByZWFkb25seSBwcm9kdWNlckludm9pY2VTZXJ2aWNlOiBQcm9kdWNlckludm9pY2VTZXJ2aWNlLFxyXG4gICAgICAgIG92ZXJyaWRlIHJlYWRvbmx5IG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSxcclxuICAgICAgICBwdWJsaWMgb3ZlcnJpZGUgZGF0ZVBpcGU6IERhdGVQaXBlXHJcbiAgICApIHtcclxuICAgICAgICBzdXBlcih0cmFuc2xhdGlvblNlcnZpY2UsIGludm9pY2VTZXJ2aWNlLCBsb2NhbGVTZXJ2aWNlLCBraWxvZ3JhbVBpcGUsIG1lc3NhZ2VTZXJ2aWNlLCBkYXRlUGlwZSk7XHJcbiAgICB9XHJcblxyXG4gICAgb3ZlcnJpZGUgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5kZWZpbmVHcmlkQ29sdW1ucygpO1xyXG4gICAgICAgIHRoaXMuZ3JpZEZpZWxkVmFsdWVzTWFwID0ge1xyXG4gICAgICAgICAgICAuLi50aGlzLmdyaWRGaWVsZFZhbHVlc01hcCxcclxuICAgICAgICAgICAgc2VyaWVzOiAocm93KSA9PiByb3c/LnNlcmllc0xlZ2FsIHx8IHJvdz8uc2VyaWVzIHx8IHJvdy5zZXJpZXMsXHJcbiAgICAgICAgICAgIHRvdGFsVmFsdWU6IChyb3cpID0+IHRoaXMuY3VycmVuY3lQaXBlLnRyYW5zZm9ybShyb3c/Lm5ldFRvdGFsVmFsdWUgfHwgMCwgJ0JSTCcpLFxyXG4gICAgICAgIH07XHJcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcclxuICAgIH1cclxuXHJcbiAgICBkZWZpbmVHcmlkQ29sdW1ucygpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmdyaWRDb2x1bW5zID0gW1xyXG4gICAgICAgICAgICB7IGZpZWxkOiAnbnVtYmVyJywgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5udW1iZXInKSB9LFxyXG4gICAgICAgICAgICB7IGZpZWxkOiAnc2VyaWVzJywgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5zZXJpZXMnKSB9LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICBmaWVsZDogJ3RvdGFsVmFsdWUnLFxyXG4gICAgICAgICAgICAgICAgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy50b3RhbF92YWx1ZScpLFxyXG4gICAgICAgICAgICAgICAgc29ydGFibGU6IGZhbHNlLFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICBmaWVsZDogJ2xpbmtlZFZhbHVlJyxcclxuICAgICAgICAgICAgICAgIGhlYWRlcjogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnYWdyby5hbmd1bGFyX2NvbXBvbmVudHMudmFsdWVfbGlua2VkJyksXHJcbiAgICAgICAgICAgICAgICBzb3J0YWJsZTogZmFsc2UsXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgZmllbGQ6ICdpc3N1YW5jZURhdGUnLCBoZWFkZXI6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2Fncm8uYW5ndWxhcl9jb21wb25lbnRzLmlzc3VhbmNlX2RhdGUnKSB9LFxyXG4gICAgICAgIF07XHJcbiAgICB9XHJcblxyXG4gICAgYmVmb3JlQWRkKHNlbGVjdGVkSW52b2ljZXM6IGFueVtdKTogUHJvbWlzZTxhbnk+IHtcclxuICAgICAgICBpZiAoc2VsZWN0ZWRJbnZvaWNlcz8ubGVuZ3RoKSB7XHJcbiAgICAgICAgICAgIHRoaXMubGlua1NlbGVjdGVkSW52b2ljZXNJbkZpeGF0aW9uSXRlbSgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gb2YoRU1QVFkpLnRvUHJvbWlzZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBvdmVycmlkZSBvcGVuKCk6IHZvaWQge1xyXG4gICAgICAgIGlmICh0aGlzLm9wdGlvbnMuZml4YXRpb25JdGVtcy5maWx0ZXIoKGl0ZW0pID0+IGl0ZW0ucmVxdWlyZWRWYWx1ZSA+IGl0ZW0udG90YWxWYWx1ZUludm9pY2VzKS5sZW5ndGggPT09IDApIHtcclxuICAgICAgICAgICAgdGhpcy5tZXNzYWdlU2VydmljZS5hZGQoe1xyXG4gICAgICAgICAgICAgICAgc2V2ZXJpdHk6ICd3YXJuJyxcclxuICAgICAgICAgICAgICAgIHN1bW1hcnk6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2Fncm8uYW5ndWxhcl9jb21wb25lbnRzLm1heF9saW5rZWRfaW52b2ljZXMnKSxcclxuICAgICAgICAgICAgICAgIGRldGFpbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnYWdyby5hbmd1bGFyX2NvbXBvbmVudHMubWF4X2xpbmtlZF9pbnZvaWNlc19kZXNjcmlwdGlvbicpLFxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICBzdXBlci5vcGVuKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGFzeW5jIGxpbmtTZWxlY3RlZEludm9pY2VzSW5GaXhhdGlvbkl0ZW0oKSB7XHJcbiAgICAgICAgaWYgKCEoYXdhaXQgdGhpcy5pc1ZhbGlkQW5kU2V0TGlua2VkVmFsdWVJbkludm9pY2VzKCkpKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZ3JpZExvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjb25zdCBlbnRpdGllczogYW55W10gPSB0aGlzLnNlbGVjdGVkXHJcbiAgICAgICAgICAgIC5mbGF0TWFwKChpbnZvaWNlOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLm9wdGlvbnMuZml4YXRpb25JdGVtcy5tYXAoKGZpeGF0aW9uSXRlbTogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgcmVxdWlyZWRWYWx1ZSA9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChmaXhhdGlvbkl0ZW0ucmVxdWlyZWRWYWx1ZSB8fCAwKSAtIChmaXhhdGlvbkl0ZW0udG90YWxWYWx1ZUludm9pY2VzIHx8IDApO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmIChpbnZvaWNlLnJlbWFpbmluZ1ZhbHVlIDw9IDAgfHwgcmVxdWlyZWRWYWx1ZSA8PSAwKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBjb25zdCB2YWx1ZVRvQmVMaW5rZWQgPVxyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlZFZhbHVlID4gaW52b2ljZS5yZW1haW5pbmdWYWx1ZSA/IGludm9pY2UucmVtYWluaW5nVmFsdWUgOiByZXF1aXJlZFZhbHVlO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICBpbnZvaWNlLnJlbWFpbmluZ1ZhbHVlIC09IHZhbHVlVG9CZUxpbmtlZDtcclxuICAgICAgICAgICAgICAgICAgICBjb25zdCBib2R5ID0ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBzZXJpZXM6IGludm9pY2U/LnNlcmllcyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgbnVtYmVyOiBTdHJpbmcoaW52b2ljZT8ubnVtYmVyKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgaW52b2ljZUlkOiBpbnZvaWNlPy5pZCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGlua2VkVmFsdWU6IHZhbHVlVG9CZUxpbmtlZCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgdG90YWxWYWx1ZTogaW52b2ljZT8udG90YWxWYWx1ZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXNzdWFuY2VEYXRlOiBpbnZvaWNlPy5pc3N1YW5jZURhdGUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpeGF0aW9uSXRlbSxcclxuICAgICAgICAgICAgICAgICAgICB9O1xyXG5cclxuICAgICAgICAgICAgICAgICAgICBmaXhhdGlvbkl0ZW0udG90YWxWYWx1ZUludm9pY2VzID0gKGZpeGF0aW9uSXRlbS50b3RhbFZhbHVlSW52b2ljZXMgfHwgMCkgKyB2YWx1ZVRvQmVMaW5rZWQ7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBib2R5O1xyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgIC5maWx0ZXIoKGVudGl0eSk6IGVudGl0eSBpcyBOb25OdWxsYWJsZTx0eXBlb2YgZW50aXR5PiA9PiBlbnRpdHkgIT09IG51bGwpO1xyXG4gICAgICAgIHRoaXMuZ3JpZExvYWRpbmcgPSB0cnVlO1xyXG4gICAgICAgIHRoaXMucHJvZHVjZXJJbnZvaWNlU2VydmljZVxyXG4gICAgICAgICAgICAuaW5zZXJ0QnVsayhlbnRpdGllcylcclxuICAgICAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSxcclxuICAgICAgICAgICAgICAgIGZpbmFsaXplKCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmdyaWRMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy53aGVuU2VsZWN0SW52b2ljZXMuZW1pdCh0aGlzLnNlbGVjdGVkKTtcclxuICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgIClcclxuICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLmFkZCh7XHJcbiAgICAgICAgICAgICAgICAgICAgc2V2ZXJpdHk6ICdzdWNjZXNzJyxcclxuICAgICAgICAgICAgICAgICAgICBzdW1tYXJ5OiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5zdWNjZXNzJyksXHJcbiAgICAgICAgICAgICAgICAgICAgZGV0YWlsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5pbnZvaWNlX2NyZWF0ZWRfc3VjY2Vzc2Z1bGx5JyksXHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgIHRoaXMuY2FuY2VsKCk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIGFzeW5jIGlzVmFsaWRBbmRTZXRMaW5rZWRWYWx1ZUluSW52b2ljZXMoKTogUHJvbWlzZTxib29sZWFuPiB7XHJcbiAgICAgICAgY29uc3QgdmFsb3JMaW5rZWQgPSBhd2FpdCB0aGlzLnByb2R1Y2VySW52b2ljZVNlcnZpY2UuZ2V0VG90YWxMaW5rZWRJbkludm9pY2VzKFxyXG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkLm1hcCgoaW52b2ljZTogYW55KSA9PiBpbnZvaWNlLmlkKSxcclxuICAgICAgICAgICAgdGhpcy5vcHRpb25zLmZpeGF0aW9uSWRcclxuICAgICAgICApO1xyXG4gICAgICAgIGxldCBpc1ZhbGlkID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLnNlbGVjdGVkLmZvckVhY2goKGludm9pY2U6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICBpbnZvaWNlLmxpbmtlZFZhbHVlID0gdmFsb3JMaW5rZWQuZmluZCgobGlua2VkOiBhbnkpID0+IGxpbmtlZC5pbnZvaWNlSWQgPT09IGludm9pY2UuaWQpPy50b3RhbExpbmtlZCB8fCAwO1xyXG4gICAgICAgICAgICBpZiAoaW52b2ljZS5saW5rZWRWYWx1ZSA+PSBpbnZvaWNlLnRvdGFsVmFsdWUpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMubWVzc2FnZVNlcnZpY2UuYWRkKHtcclxuICAgICAgICAgICAgICAgICAgICBzZXZlcml0eTogJ3dhcm4nLFxyXG4gICAgICAgICAgICAgICAgICAgIHN1bW1hcnk6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2Fncm8uYW5ndWxhcl9jb21wb25lbnRzLmxpbmtfaW52b2ljZScpLFxyXG4gICAgICAgICAgICAgICAgICAgIGRldGFpbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuaW52b2ljZV9hbHJlYWR5X2xpbmtlZCcpLFxyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICBpc1ZhbGlkID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaW52b2ljZS5yZW1haW5pbmdWYWx1ZSA9IGludm9pY2UudG90YWxWYWx1ZSAtIGludm9pY2UubGlua2VkVmFsdWU7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgcmV0dXJuIGlzVmFsaWQ7XHJcbiAgICB9XHJcblxyXG4gICAgYXN5bmMgYWRhcHRSZXN1bHQocmVzdWx0OiBJSW52b2ljZUxvb2t1cFJlc3BvbnNlKTogUHJvbWlzZTxhbnk+IHtcclxuICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHJlc3VsdCBhcyBhbnkpO1xyXG4gICAgfVxyXG5cclxuICAgIG92ZXJyaWRlIGNhbmNlbCgpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgICAgICB0aGlzLm9wdGlvbnMuZml4YXRpb25JdGVtcyA9IFtdO1xyXG4gICAgICAgIHJldHVybiBzdXBlci5jYW5jZWwoKTtcclxuICAgIH1cclxuXHJcbiAgICBhc3luYyB1cGRhdGVMaW5rZWRWYWx1ZUluR3JpZChyb3dzOiBudW1iZXIpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgICAgICBjb25zdCBpbnZvaWNlSWQgPSB0aGlzLmdyaWREYXRhLm1hcCgoaW52b2ljZTogYW55KSA9PiBpbnZvaWNlLmlkKTtcclxuICAgICAgICBsZXQgZmlsdGVyID0gYGZpeGF0aW9uSXRlbS5maXhhdGlvbi5pZCBlcSAnJHt0aGlzLm9wdGlvbnMuZml4YXRpb25JZH0nYDtcclxuICAgICAgICBpZiAoaW52b2ljZUlkICYmIGludm9pY2VJZC5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgIGZpbHRlciArPSBgYW5kIGludm9pY2VJZCBpbiAoJyR7aW52b2ljZUlkLmpvaW4oXCInLCdcIil9JykgYDtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29uc3QgbGlzdFBhcmFtczogUGFydGlhbDxMaXN0UGFyYW1zPiA9IHtcclxuICAgICAgICAgICAgcGFnZTogMCxcclxuICAgICAgICAgICAgc2l6ZTogcm93cyxcclxuICAgICAgICAgICAgZmlsdGVyUXVlcnk6IGZpbHRlcixcclxuICAgICAgICB9O1xyXG4gICAgICAgIGF3YWl0IHRoaXMucHJvZHVjZXJJbnZvaWNlU2VydmljZVxyXG4gICAgICAgICAgICAubGlzdChsaXN0UGFyYW1zKVxyXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSlcclxuICAgICAgICAgICAgLnRvUHJvbWlzZSgpXHJcbiAgICAgICAgICAgIC50aGVuKChwcm9kdWNlckludm9pY2VzOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICAgIHByb2R1Y2VySW52b2ljZXM/LmNvbnRlbnRzLmZvckVhY2goKGludm9pY2U6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGdyaWRJbnZvaWNlID0gdGhpcy5ncmlkRGF0YS5maW5kKChpdGVtOiBhbnkpID0+IGl0ZW0uaWQgPT09IGludm9pY2UuaW52b2ljZUlkKTtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoZ3JpZEludm9pY2UpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZ3JpZEludm9pY2UubGlua2VkVmFsdWUgPSBpbnZvaWNlLmxpbmtlZFZhbHVlO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgIH1cclxufVxyXG4iLCI8cC1kaWFsb2dcclxuICAgIGhlYWRlcj1cInt7ICdhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5wYW5lbF90aXRsZV9leHRlcm5hbF9pbnZvaWNlX2FkZF9leHRlcm5hbF9pbnZvaWNlJyB8IGxpYlRyYW5zbGF0ZSB9fVwiXHJcbiAgICBbKHZpc2libGUpXT1cInZpc2libGVcIlxyXG4gICAgW21vZGFsXT1cInRydWVcIlxyXG4gICAgY2xhc3M9XCJhZGQtaW52b2ljZS1tb2RhbFwiXHJcbiAgICBbY2xvc2VPbkVzY2FwZV09XCJmYWxzZVwiXHJcbiAgICAob25IaWRlKT1cImNhbmNlbFBvb2xpbmcoKVwiXHJcbiAgICBbZGlzbWlzc2FibGVNYXNrXT1cImZhbHNlXCJcclxuPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFkb250SGF2ZUFueUludm9pY2VcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwidWktZ1wiPlxyXG4gICAgICAgICAgICA8bGFiZWwgZm9yPVwiaW52b2ljZVNlYXJjaElucHV0XCI+e3sgJ2Fncm8uYW5ndWxhcl9jb21wb25lbnRzLm51bWJlcicgfCBsaWJUcmFuc2xhdGUgfX08L2xhYmVsPlxyXG4gICAgICAgICAgICA8aW5wdXRcclxuICAgICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcclxuICAgICAgICAgICAgICAgIGlkPVwiaW52b2ljZVNlYXJjaElucHV0XCJcclxuICAgICAgICAgICAgICAgIHBJbnB1dFRleHRcclxuICAgICAgICAgICAgICAgIFtmb3JtQ29udHJvbF09XCJzZWFyY2hWYWx1ZVwiXHJcbiAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJycgfCBsaWJUcmFuc2xhdGVcIlxyXG4gICAgICAgICAgICAgICAgW3JlcXVpcmVkXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInVpLWctMTJcIj5cclxuICAgICAgICAgICAgICAgIDxwLXRhYmxlXHJcbiAgICAgICAgICAgICAgICAgICAgWyhzZWxlY3Rpb24pXT1cInNlbGVjdGVkXCJcclxuICAgICAgICAgICAgICAgICAgICBbdmFsdWVdPVwidGFibGVEYXRhU291cmNlXCJcclxuICAgICAgICAgICAgICAgICAgICBbY29sdW1uc109XCJncmlkQ29sdW1uc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgW3Njcm9sbGFibGVdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgZGF0YUtleT1cImV4dGVybmFsSW52b2ljZUlkXCJcclxuICAgICAgICAgICAgICAgICAgICBbcm93c109XCIxMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgW3BhZ2luYXRvcl09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICBbbGF6eUxvYWRPbkluaXRdPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICAgICAgICAgIFt0b3RhbFJlY29yZHNdPVwiZ3JpZFRvdGFsUmVjb3Jkc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgW2xhenldPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgKG9uTGF6eUxvYWQpPVwidXBkYXRlR3JpZERhdGEoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW3Jlc2l6YWJsZUNvbHVtbnNdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgc29ydE1vZGU9XCJtdWx0aXBsZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW3NlbGVjdGlvbk1vZGVdPVwiZ3JpZExvYWRpbmcgPyBudWxsIDogJ211bHRpcGxlJ1wiXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImhlYWRlclwiIGxldC1jb2x1bW5zPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggY2xhc3M9XCJjaGVja2JveFwiIHNjb3BlPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAtdGFibGVIZWFkZXJDaGVja2JveCBbZGlzYWJsZWRdPVwiZ3JpZExvYWRpbmdcIj48L3AtdGFibGVIZWFkZXJDaGVja2JveD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBjb2wgb2YgY29sdW1uc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImNvbC5zb3J0YWJsZSA9PT0gdW5kZWZpbmVkIHx8IGNvbC5zb3J0YWJsZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtwU29ydGFibGVDb2x1bW5dPVwiY29sLmZpZWxkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2NvcGU9XCJjb2xcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgY29sLmhlYWRlciB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cC1zb3J0SWNvbiBbZmllbGRdPVwiY29sLmZpZWxkXCI+PC9wLXNvcnRJY29uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoICpuZ0lmPVwiY29sLnNvcnRhYmxlID09PSBmYWxzZSB8fCBjb2wuc29ydGFibGUgPT09IG51bGxcIiBzY29wZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBjb2wuaGVhZGVyIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJib2R5XCIgbGV0LXJvd0RhdGEgbGV0LWNvbHVtbnM9XCJjb2x1bW5zXCIgbGV0LXJvd0luZGV4PVwicm93SW5kZXhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyIFtjbGFzcy5sb2FkaW5nLXJvd109XCJyb3dEYXRhLl9faXNQbGFjZWhvbGRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwiY2hlY2tib3hcIiB0YWJpbmRleD1cIjBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIXJvd0RhdGEuX19pc1BsYWNlaG9sZGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwLXRhYmxlQ2hlY2tib3ggW3ZhbHVlXT1cInJvd0RhdGFcIiBbZGlzYWJsZWRdPVwiZ3JpZExvYWRpbmdcIj48L3AtdGFibGVDaGVja2JveD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwicm93RGF0YS5fX2lzUGxhY2Vob2xkZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxvYWRpbmctY2VsbC1wbGFjZWhvbGRlclwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtwU2VsZWN0YWJsZVJvd109XCJyb3dEYXRhLl9faXNQbGFjZWhvbGRlciA/IG51bGwgOiByb3dEYXRhXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcFNlbGVjdGFibGVSb3dJbmRleF09XCJyb3dJbmRleFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGNvbCBvZiBjb2x1bW5zXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImNvbHVtblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFiaW5kZXg9XCIwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cIiFyb3dEYXRhLl9faXNQbGFjZWhvbGRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgZ3JpZEZpZWxkVmFsdWVzTWFwW2NvbC5maWVsZF0gPyBncmlkRmllbGRWYWx1ZXNNYXBbY29sLmZpZWxkXShyb3dEYXRhKSA6IHJvd0RhdGFbY29sLmZpZWxkXSB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibG9hZGluZy10ZXh0LXBsYWNlaG9sZGVyXCIgKm5nSWY9XCJyb3dEYXRhLl9faXNQbGFjZWhvbGRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgcm93RGF0YVtjb2wuZmllbGRdIHx8ICdwbGFjZWhvbGRlcicgfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwicGFnaW5hdG9ycmlnaHRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+e3sgZ3JpZFRvdGFsUmVjb3JkcyB9fSByZWdpc3Ryb3MgZW5jb250cmFkb3M8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgICAgIDwvcC10YWJsZT5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZG9udEhhdmVBbnlJbnZvaWNlXCI+XHJcbiAgICAgICAgPHMtZW1wdHktc3RhdGVcclxuICAgICAgICAgICAgaWNvbkNsYXNzPVwiZmEgZmEtZXhjbGFtYXRpb24tdHJpYW5nbGVcIlxyXG4gICAgICAgICAgICB0aXRsZT1cInt7ICdhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5hZGRfcGpfaW52b2ljZV9tb2RhbF9ub19pbnZvaWNlc19mb3VuZCcgfCBsaWJUcmFuc2xhdGUgfX1cIlxyXG4gICAgICAgICAgICBwcmltYXJ5QWN0aW9uTGFiZWw9XCJ7eyAnYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXJyb3Jfc2VydmVyX3RyeV9hZ2FpbicgfCBsaWJUcmFuc2xhdGUgfX1cIlxyXG4gICAgICAgICAgICAocHJpbWFyeUFjdGlvbik9XCJ0cnlUb1NlYXJjaEFnYWluKClcIlxyXG4gICAgICAgICAgICBkZXNjcmlwdGlvbj1cInt7ICdhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ub19yZWdpc3Rlcl9mb3VuZF9mb3JfZXh0ZXJuYWxfaW52b2ljZXNfc3VtbWFyeScgfCBsaWJUcmFuc2xhdGUgfX1cIlxyXG4gICAgICAgID5cclxuICAgICAgICA8L3MtZW1wdHktc3RhdGU+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiZm9vdGVyXCIgKm5nSWY9XCIhZG9udEhhdmVBbnlJbnZvaWNlXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImZvb3RlclwiPlxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaW52ZXJ0Rm9vdGVyQWN0aW9uczsgZWxzZSBkZWZhdWx0Rm9vdGVyQWN0aW9uc1wiPlxyXG4gICAgICAgICAgICAgICAgPHMtYnV0dG9uXHJcbiAgICAgICAgICAgICAgICAgICAgW3ByaW9yaXR5XT1cIkJ1dHRvblByaW9yaXR5LkxpbmtcIlxyXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsPVwie3sgJ2Fncm8uYW5ndWxhcl9jb21wb25lbnRzLmNhbmNlbCcgfCBsaWJUcmFuc2xhdGUgfX1cIlxyXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJjYW5jZWwoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgKGtleWRvd24uZW50ZXIpPVwiY2FuY2VsKClcIlxyXG4gICAgICAgICAgICAgICAgPjwvcy1idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8cy1idXR0b25cclxuICAgICAgICAgICAgICAgICAgICBbcHJpb3JpdHldPVwiQnV0dG9uUHJpb3JpdHkuUHJpbWFyeVwiXHJcbiAgICAgICAgICAgICAgICAgICAgbGFiZWw9XCJ7eyAnYWdyby5hbmd1bGFyX2NvbXBvbmVudHMucGFuZWxfdGl0bGVfZXh0ZXJuYWxfaW52b2ljZV9hZGRfZXh0ZXJuYWxfaW52b2ljZScgfCBsaWJUcmFuc2xhdGUgfX1cIlxyXG4gICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJncmlkTG9hZGluZyB8fCAhc2VsZWN0ZWQubGVuZ3RoXCJcclxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiYWRkKClcIlxyXG4gICAgICAgICAgICAgICAgICAgIChrZXlkb3duLmVudGVyKT1cImFkZCgpXCJcclxuICAgICAgICAgICAgICAgID48L3MtYnV0dG9uPlxyXG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNkZWZhdWx0Rm9vdGVyQWN0aW9ucz5cclxuICAgICAgICAgICAgPHMtYnV0dG9uXHJcbiAgICAgICAgICAgICAgICBbcHJpb3JpdHldPVwiQnV0dG9uUHJpb3JpdHkuUHJpbWFyeVwiXHJcbiAgICAgICAgICAgICAgICBsYWJlbD1cInt7ICdhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5wYW5lbF90aXRsZV9leHRlcm5hbF9pbnZvaWNlX2FkZF9leHRlcm5hbF9pbnZvaWNlJyB8IGxpYlRyYW5zbGF0ZSB9fVwiXHJcbiAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiZ3JpZExvYWRpbmcgfHwgIXNlbGVjdGVkLmxlbmd0aFwiXHJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiYWRkKClcIlxyXG4gICAgICAgICAgICAgICAgKGtleWRvd24uZW50ZXIpPVwiYWRkKClcIlxyXG4gICAgICAgICAgICA+PC9zLWJ1dHRvbj5cclxuICAgICAgICAgICAgPHMtYnV0dG9uXHJcbiAgICAgICAgICAgICAgICBbcHJpb3JpdHldPVwiQnV0dG9uUHJpb3JpdHkuTGlua1wiXHJcbiAgICAgICAgICAgICAgICBsYWJlbD1cInt7ICdhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5jYW5jZWwnIHwgbGliVHJhbnNsYXRlIH19XCJcclxuICAgICAgICAgICAgICAgIChjbGljayk9XCJjYW5jZWwoKVwiXHJcbiAgICAgICAgICAgICAgICAoa2V5ZG93bi5lbnRlcik9XCJjYW5jZWwoKVwiXHJcbiAgICAgICAgICAgICAgICA+PC9zLWJ1dHRvbj5cclxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcbjwvcC1kaWFsb2c+XHJcbiJdfQ==