@hitsoft/ovolt 0.0.2 → 0.0.3

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.
Files changed (40) hide show
  1. package/config/providers/fuel-integration-log-route.provider.d.ts +9 -0
  2. package/esm2020/config/ovolt-config.module.mjs +3 -1
  3. package/esm2020/config/providers/fuel-integration-log-route.provider.mjs +19 -0
  4. package/esm2020/lib/components/hit-fuel-integration-logs/components/hit-fuel-integration-log.component.mjs +150 -0
  5. package/esm2020/lib/components/hit-fuel-integration-logs/hit-fuel-integration-log-routing.module.mjs +26 -0
  6. package/esm2020/lib/components/hit-fuel-integration-logs/hit-fuel-integration-log.module.mjs +71 -0
  7. package/esm2020/lib/components/hit-proxy/hit-fuel-integration-logs/hit-fuel-integration-log.service.mjs +40 -0
  8. package/esm2020/lib/components/hit-proxy/hit-fuel-integration-logs/models.mjs +2 -0
  9. package/esm2020/lib/components/hit-system-parameters/components/hit-system-parameter.component.mjs +10 -10
  10. package/esm2020/lib/fuel-integration-logs/fuel-integration-log/components/fuel-integration-log.component.mjs +103 -0
  11. package/esm2020/lib/fuel-integration-logs/fuel-integration-log/fuel-integration-log-routing.module.mjs +26 -0
  12. package/esm2020/lib/fuel-integration-logs/fuel-integration-log/fuel-integration-log.module.mjs +52 -0
  13. package/esm2020/lib/ovolt-routing.module.mjs +3 -1
  14. package/esm2020/lib/proxy/fuel-integration-logs/fuel-integration-log.service.mjs +41 -0
  15. package/esm2020/lib/proxy/fuel-integration-logs/models.mjs +2 -0
  16. package/esm2020/lib/proxy/general-transactions/rest-company-type.enum.mjs +1 -1
  17. package/esm2020/lib/proxy/rest-company-type.enum.mjs +8 -0
  18. package/esm2020/lib/proxy/system-parameters/models.mjs +1 -1
  19. package/esm2020/lib/proxy/system-parameters/system-parameter.service.mjs +2 -2
  20. package/fesm2015/hitsoft-ovolt-config.mjs +25 -7
  21. package/fesm2015/hitsoft-ovolt-config.mjs.map +1 -1
  22. package/fesm2015/hitsoft-ovolt.mjs +317 -25
  23. package/fesm2015/hitsoft-ovolt.mjs.map +1 -1
  24. package/fesm2020/hitsoft-ovolt-config.mjs +25 -7
  25. package/fesm2020/hitsoft-ovolt-config.mjs.map +1 -1
  26. package/fesm2020/hitsoft-ovolt.mjs +316 -25
  27. package/fesm2020/hitsoft-ovolt.mjs.map +1 -1
  28. package/lib/components/hit-fuel-integration-logs/components/hit-fuel-integration-log.component.d.ts +39 -0
  29. package/lib/components/hit-fuel-integration-logs/hit-fuel-integration-log-routing.module.d.ts +7 -0
  30. package/lib/components/hit-fuel-integration-logs/hit-fuel-integration-log.module.d.ts +16 -0
  31. package/lib/components/hit-proxy/hit-fuel-integration-logs/hit-fuel-integration-log.service.d.ts +16 -0
  32. package/lib/components/hit-proxy/hit-fuel-integration-logs/models.d.ts +3 -0
  33. package/lib/fuel-integration-logs/fuel-integration-log/components/fuel-integration-log.component.d.ts +33 -0
  34. package/lib/fuel-integration-logs/fuel-integration-log/fuel-integration-log-routing.module.d.ts +7 -0
  35. package/lib/fuel-integration-logs/fuel-integration-log/fuel-integration-log.module.d.ts +15 -0
  36. package/lib/proxy/fuel-integration-logs/fuel-integration-log.service.d.ts +16 -0
  37. package/lib/proxy/fuel-integration-logs/models.d.ts +42 -0
  38. package/lib/proxy/rest-company-type.enum.d.ts +5 -0
  39. package/lib/proxy/system-parameters/models.d.ts +17 -17
  40. package/package.json +1 -1
@@ -26,7 +26,7 @@ export class HitSystemParameterComponent {
26
26
  this.fields = [
27
27
  'sharzNetCustomerSeries', 'upEnerjiCustomerSeries', 'sharzNetCustomerGroupCode', 'upEnerjiCustomerGroupCode',
28
28
  'sharzNetCustomerDebitorAccount', 'upEnerjiCustomerDebitorAccount', 'vendorSeries', 'vendorGroupCode',
29
- 'itemCode', 'vatGroup', 'warehouseCode', 'cogsCostingCode1', 'cogsCostingCode2', 'cogsCostingCode3'
29
+ 'transactionItemCode', 'cogsCostingCode', 'cogsCostingCode2', 'cogsCostingCode3', 'bplId', 'purchaseOrderItemCode'
30
30
  ];
31
31
  this.fieldLocalizationMap = {
32
32
  sharzNetCustomerSeries: 'SharzNetCustomerSeries',
@@ -37,12 +37,12 @@ export class HitSystemParameterComponent {
37
37
  upEnerjiCustomerDebitorAccount: 'UpEnerjiCustomerDebitorAccount',
38
38
  vendorSeries: 'VendorSeries',
39
39
  vendorGroupCode: 'VendorGroupCode',
40
- itemCode: 'ItemCode',
41
- vatGroup: 'VatGroup',
42
- warehouseCode: 'WarehouseCode',
43
- cogsCostingCode1: 'COGSCostingCode1',
40
+ transactionItemCode: 'TransactionItemCode',
41
+ cogsCostingCode: 'COGSCostingCode',
44
42
  cogsCostingCode2: 'COGSCostingCode2',
45
43
  cogsCostingCode3: 'COGSCostingCode3',
44
+ bplId: 'BPLId',
45
+ purchaseOrderItemCode: 'PurchaseOrderItemCode',
46
46
  };
47
47
  }
48
48
  ngOnInit() {
@@ -60,13 +60,13 @@ export class HitSystemParameterComponent {
60
60
  upEnerjiCustomerDebitorAccount: [null, [Validators.required]],
61
61
  vendorSeries: [null, [Validators.required]],
62
62
  vendorGroupCode: [null, [Validators.required]],
63
- itemCode: [null, [Validators.required]],
64
- vatGroup: [null, [Validators.required]],
65
- warehouseCode: [null, [Validators.required, Validators.min(1)]],
66
- cogsCostingCode1: [null],
63
+ transactionItemCode: [null, [Validators.required]],
64
+ cogsCostingCode: [null],
67
65
  cogsCostingCode2: [null],
68
66
  cogsCostingCode3: [null],
69
67
  poKey: [null, [Validators.required]],
68
+ bplId: [null, [Validators.required]],
69
+ purchaseOrderItemCode: [null, [Validators.required]],
70
70
  });
71
71
  }
72
72
  loadData() {
@@ -119,4 +119,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
119
119
  type: Component,
120
120
  args: [{ selector: 'lib-hit-system-parameter', changeDetection: ChangeDetectionStrategy.Default, providers: [ListService, { provide: NgbDateAdapter, useClass: DateAdapter }], template: "<abp-page [title]=\"'Ovolt::SystemParameters' | abpLocalization\">\r\n <div class=\"card\">\r\n <div class=\"card-body\">\r\n <form [formGroup]=\"form\" (ngSubmit)=\"save()\">\r\n\r\n <!-- Rest Company Select -->\r\n <div class=\"row mb-2\">\r\n <div class=\"col-md-6\">\r\n <label class=\"form-label\" for=\"system-parameter-selected-rest-company\">\r\n {{ 'Ovolt::SelectedRestCompany' | abpLocalization }}\r\n </label>\r\n <select id=\"selectedRestCompany\" formControlName=\"selectedRestCompany\" class=\"form-select\">\r\n <option *ngFor=\"let option of restCompanyTypeOptions; trackBy: track.by('key')\"\r\n [value]=\"option.key\">\r\n {{ 'Ovolt::Enum:RestCompanyType.' + option.key | abpLocalization }}\r\n </option>\r\n </select>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <label class=\"form-label\" for=\"system-parameter-pokey\">\r\n {{ 'Ovolt::POKey' | abpLocalization }}\r\n </label>\r\n <input id=\"system-parameter-pokey\" formControlName=\"poKey\" class=\"form-control\" />\r\n </div>\r\n </div>\r\n\r\n\r\n <!-- Di\u011Fer Alanlar Grid -->\r\n <div class=\"row\">\r\n <div class=\"col-md-6 mb-2\" *ngFor=\"let field of fields\">\r\n <label>{{ ('Ovolt::' + fieldLocalizationMap[field]) | abpLocalization }}</label>\r\n <input [type]=\"(field.includes('GroupCode') ) ? 'number' : 'text'\"\r\n class=\"form-control\" [formControlName]=\"field\" />\r\n <div *ngIf=\"form.get(field)?.touched && form.get(field)?.invalid\" class=\"text-danger\">\r\n {{ 'Ovolt::FieldRequiredOrInvalid' | abpLocalization }}\r\n </div>\r\n </div>\r\n </div>\r\n\r\n\r\n <div class=\"text-end mt-4\">\r\n <button type=\"submit\" class=\"btn btn-primary\" [disabled]=\"isBusy\">\r\n {{ 'AbpUi::Save' | abpLocalization }}\r\n </button>\r\n </div>\r\n </form>\r\n </div>\r\n </div>\r\n</abp-page>" }]
121
121
  }], ctorParameters: function () { return [{ type: i1.FormBuilder }, { type: i2.SystemParameterService }, { type: i3.HitSystemParameterService }, { type: i4.ToasterService }, { type: i5.TrackByService }]; } });
122
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGl0LXN5c3RlbS1wYXJhbWV0ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb3ZvbHQvc3JjL2xpYi9jb21wb25lbnRzL2hpdC1zeXN0ZW0tcGFyYW1ldGVycy9jb21wb25lbnRzL2hpdC1zeXN0ZW0tcGFyYW1ldGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL292b2x0L3NyYy9saWIvY29tcG9uZW50cy9oaXQtc3lzdGVtLXBhcmFtZXRlcnMvY29tcG9uZW50cy9oaXQtc3lzdGVtLXBhcmFtZXRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQU8sV0FBVyxFQUFrQyxNQUFNLGNBQWMsQ0FBQztBQUVoRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDOUQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUMzRSxPQUFPLEVBQTBCLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUM1RCxPQUFPLEVBQVUsUUFBUSxFQUFrQixNQUFNLGdCQUFnQixDQUFDO0FBUWxFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDREQUE0RCxDQUFDOzs7Ozs7Ozs7O0FBUXBHLE1BQU0sT0FBTywyQkFBMkI7SUE4QnBDLFlBQW9CLEVBQWUsRUFDdkIsT0FBK0IsRUFDL0IsVUFBcUMsRUFDckMsT0FBdUIsRUFDZixLQUFxQjtRQUpyQixPQUFFLEdBQUYsRUFBRSxDQUFhO1FBQ3ZCLFlBQU8sR0FBUCxPQUFPLENBQXdCO1FBQy9CLGVBQVUsR0FBVixVQUFVLENBQTJCO1FBQ3JDLFlBQU8sR0FBUCxPQUFPLENBQWdCO1FBQ2YsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7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LENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVuQyxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQzthQUM5QyxTQUFTLENBQUM7WUFDUCxJQUFJLEVBQUUsQ0FBQyxHQUFHLEVBQUUsRUFBRTtnQkFDVixJQUFJLENBQUMsUUFBUSxHQUFHLEdBQUcsQ0FBQztnQkFDcEIsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQzFCLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQ3ZDLENBQUM7WUFDRCxLQUFLLEVBQUUsQ0FBQyxHQUFHLEVBQUUsRUFBRTtnQkFDWCxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUNuQixJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO1lBQzFELENBQUM7U0FDSixDQUFDLENBQUM7SUFDWCxDQUFDOzt3SEE3R1EsMkJBQTJCOzRHQUEzQiwyQkFBMkIsbURBSnpCLENBQUMsV0FBVyxFQUFFLEVBQUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLENBQUMsMEJDbEJoRix3aUZBZ0RXOzJGRDFCRSwyQkFBMkI7a0JBUHZDLFNBQVM7K0JBQ0ksMEJBQTBCLG1CQUNuQix1QkFBdUIsQ0FBQyxPQUFPLGFBQ3JDLENBQUMsV0FBVyxFQUFFLEVBQUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBQlAsIExpc3RTZXJ2aWNlLCBQYWdlZFJlc3VsdER0bywgVHJhY2tCeVNlcnZpY2UgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xyXG5pbXBvcnQgeyBDb25maXJtYXRpb24sIENvbmZpcm1hdGlvblNlcnZpY2UsIFRvYXN0ZXJTZXJ2aWNlIH0gZnJvbSAnQGFicC9uZy50aGVtZS5zaGFyZWQnO1xyXG5pbXBvcnQgeyBEYXRlQWRhcHRlciB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkL2V4dGVuc2lvbnMnO1xyXG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTmdiRGF0ZUFkYXB0ZXIgfSBmcm9tICdAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcCc7XHJcbmltcG9ydCB7IGZpbHRlciwgZmluYWxpemUsIHN3aXRjaE1hcCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgdHlwZSB7XHJcbiAgICBHZXRTeXN0ZW1QYXJhbWV0ZXJzSW5wdXQsXHJcbiAgICBTeXN0ZW1QYXJhbWV0ZXJEdG8sXHJcbn0gZnJvbSAnLi4vLi4vLi4vcHJveHkvc3lzdGVtLXBhcmFtZXRlcnMvbW9kZWxzJztcclxuaW1wb3J0IHsgU3lzdGVtUGFyYW1ldGVyU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3Byb3h5L3N5c3RlbS1wYXJhbWV0ZXJzL3N5c3RlbS1wYXJhbWV0ZXIuc2VydmljZSc7XHJcbmltcG9ydCB7IEhpdFN5c3RlbVBhcmFtZXRlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9oaXQtcHJveHkvaGl0LXN5c3RlbS1wYXJhbWV0ZXJzL2hpdC1zeXN0ZW0tcGFyYW1ldGVyLnNlcnZpY2UnO1xyXG5cclxuaW1wb3J0IHsgcmVzdENvbXBhbnlUeXBlT3B0aW9ucyB9IGZyb20gJy4uLy4uLy4uL3Byb3h5L2dlbmVyYWwtdHJhbnNhY3Rpb25zL3Jlc3QtY29tcGFueS10eXBlLmVudW0nO1xyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnbGliLWhpdC1zeXN0ZW0tcGFyYW1ldGVyJyxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuRGVmYXVsdCxcclxuICAgIHByb3ZpZGVyczogW0xpc3RTZXJ2aWNlLCB7IHByb3ZpZGU6IE5nYkRhdGVBZGFwdGVyLCB1c2VDbGFzczogRGF0ZUFkYXB0ZXIgfV0sXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vaGl0LXN5c3RlbS1wYXJhbWV0ZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVzOiBbXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEhpdFN5c3RlbVBhcmFtZXRlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgICBmb3JtOiBGb3JtR3JvdXA7XHJcbiAgICBzZWxlY3RlZD86IFN5c3RlbVBhcmFtZXRlckR0bztcclxuICAgIGlzQnVzeSA9IGZhbHNlO1xyXG5cclxuICAgIHJlc3RDb21wYW55VHlwZU9wdGlvbnMgPSByZXN0Q29tcGFueVR5cGVPcHRpb25zO1xyXG5cclxuICAgIGZpZWxkcyA9IFtcclxuICAgICAgICAnc2hhcnpOZXRDdXN0b21lclNlcmllcycsICd1cEVuZXJqaUN1c3RvbWVyU2VyaWVzJywgJ3NoYXJ6TmV0Q3VzdG9tZXJHcm91cENvZGUnLCAndXBFbmVyamlDdXN0b21lckdyb3VwQ29kZScsXHJcbiAgICAgICAgJ3NoYXJ6TmV0Q3VzdG9tZXJEZWJpdG9yQWNjb3VudCcsICd1cEVuZXJqaUN1c3RvbWVyRGViaXRvckFjY291bnQnLCAndmVuZG9yU2VyaWVzJywgJ3ZlbmRvckdyb3VwQ29kZScsXHJcbiAgICAgICAgJ2l0ZW1Db2RlJywgJ3ZhdEdyb3VwJywgJ3dhcmVob3VzZUNvZGUnLCAnY29nc0Nvc3RpbmdDb2RlMScsICdjb2dzQ29zdGluZ0NvZGUyJywgJ2NvZ3NDb3N0aW5nQ29kZTMnXHJcbiAgICBdO1xyXG5cclxuICAgIGZpZWxkTG9jYWxpemF0aW9uTWFwOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9ID0ge1xyXG4gICAgICAgIHNoYXJ6TmV0Q3VzdG9tZXJTZXJpZXM6ICdTaGFyek5ldEN1c3RvbWVyU2VyaWVzJyxcclxuICAgICAgICB1cEVuZXJqaUN1c3RvbWVyU2VyaWVzOiAnVXBFbmVyamlDdXN0b21lclNlcmllcycsXHJcbiAgICAgICAgc2hhcnpOZXRDdXN0b21lckdyb3VwQ29kZTogJ1NoYXJ6TmV0Q3VzdG9tZXJHcm91cENvZGUnLFxyXG4gICAgICAgIHVwRW5lcmppQ3VzdG9tZXJHcm91cENvZGU6ICdVcEVuZXJqaUN1c3RvbWVyR3JvdXBDb2RlJyxcclxuICAgICAgICBzaGFyek5ldEN1c3RvbWVyRGViaXRvckFjY291bnQ6ICdTaGFyek5ldEN1c3RvbWVyRGViaXRvckFjY291bnQnLFxyXG4gICAgICAgIHVwRW5lcmppQ3VzdG9tZXJEZWJpdG9yQWNjb3VudDogJ1VwRW5lcmppQ3VzdG9tZXJEZWJpdG9yQWNjb3VudCcsXHJcbiAgICAgICAgdmVuZG9yU2VyaWVzOiAnVmVuZG9yU2VyaWVzJyxcclxuICAgICAgICB2ZW5kb3JHcm91cENvZGU6ICdWZW5kb3JHcm91cENvZGUnLFxyXG4gICAgICAgIGl0ZW1Db2RlOiAnSXRlbUNvZGUnLFxyXG4gICAgICAgIHZhdEdyb3VwOiAnVmF0R3JvdXAnLFxyXG4gICAgICAgIHdhcmVob3VzZUNvZGU6ICdXYXJlaG91c2VDb2RlJyxcclxuICAgICAgICBjb2dzQ29zdGluZ0NvZGUxOiAnQ09HU0Nvc3RpbmdDb2RlMScsXHJcbiAgICAgICAgY29nc0Nvc3RpbmdDb2RlMjogJ0NPR1NDb3N0aW5nQ29kZTInLFxyXG4gICAgICAgIGNvZ3NDb3N0aW5nQ29kZTM6ICdDT0dTQ29zdGluZ0NvZGUzJyxcclxuICAgIH07XHJcblxyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBmYjogRm9ybUJ1aWxkZXIsXHJcbiAgICAgICAgcHJpdmF0ZSBzZXJ2aWNlOiBTeXN0ZW1QYXJhbWV0ZXJTZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgaGl0U2VydmljZTogSGl0U3lzdGVtUGFyYW1ldGVyU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIHRvYXN0ZXI6IFRvYXN0ZXJTZXJ2aWNlLFxyXG4gICAgICAgIHB1YmxpYyByZWFkb25seSB0cmFjazogVHJhY2tCeVNlcnZpY2UsXHJcbiAgICApIHsgfVxyXG5cclxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuYnVpbGRGb3JtKCk7XHJcbiAgICAgICAgdGhpcy5sb2FkRGF0YSgpO1xyXG4gICAgfVxyXG5cclxuICAgIGJ1aWxkRm9ybSgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmZvcm0gPSB0aGlzLmZiLmdyb3VwKHtcclxuICAgICAgICAgICAgc2VsZWN0ZWRSZXN0Q29tcGFueTogW251bGwsIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxyXG4gICAgICAgICAgICBzaGFyek5ldEN1c3RvbWVyU2VyaWVzOiBbbnVsbCwgW1ZhbGlkYXRvcnMucmVxdWlyZWRdXSxcclxuICAgICAgICAgICAgdXBFbmVyamlDdXN0b21lclNlcmllczogW251bGwsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXHJcbiAgICAgICAgICAgIHNoYXJ6TmV0Q3VzdG9tZXJHcm91cENvZGU6IFtudWxsLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5taW4oMSldXSxcclxuICAgICAgICAgICAgdXBFbmVyamlDdXN0b21lckdyb3VwQ29kZTogW251bGwsIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLm1pbigxKV1dLFxyXG4gICAgICAgICAgICBzaGFyek5ldEN1c3RvbWVyRGViaXRvckFjY291bnQ6IFtudWxsLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF1dLFxyXG4gICAgICAgICAgICB1cEVuZXJqaUN1c3RvbWVyRGViaXRvckFjY291bnQ6IFtudWxsLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF1dLFxyXG4gICAgICAgICAgICB2ZW5kb3JTZXJpZXM6IFtudWxsLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF1dLFxyXG4gICAgICAgICAgICB2ZW5kb3JHcm91cENvZGU6IFtudWxsLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF1dLFxyXG4gICAgICAgICAgICBpdGVtQ29kZTogW251bGwsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXHJcbiAgICAgICAgICAgIHZhdEdyb3VwOiBbbnVsbCwgW1ZhbGlkYXRvcnMucmVxdWlyZWRdXSxcclxuICAgICAgICAgICAgd2FyZWhvdXNlQ29kZTogW251bGwsIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLm1pbigxKV1dLFxyXG4gICAgICAgICAgICBjb2dzQ29zdGluZ0NvZGUxOiBbbnVsbF0sXHJcbiAgICAgICAgICAgIGNvZ3NDb3N0aW5nQ29kZTI6IFtudWxsXSxcclxuICAgICAgICAgICAgY29nc0Nvc3RpbmdDb2RlMzogW251bGxdLFxyXG4gICAgICAgICAgICBwb0tleTogW251bGwsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgbG9hZERhdGEoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5pc0J1c3kgPSB0cnVlO1xyXG4gICAgICAgIHRoaXMuaGl0U2VydmljZS5nZXRTeXN0ZW1QYXJhbWV0ZXIoKVxyXG4gICAgICAgICAgICAucGlwZShmaW5hbGl6ZSgoKSA9PiAodGhpcy5pc0J1c3kgPSBmYWxzZSkpKVxyXG4gICAgICAgICAgICAuc3Vic2NyaWJlKHtcclxuICAgICAgICAgICAgICAgIG5leHQ6IChyZXN1bHQpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBpZiAocmVzdWx0KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWQgPSByZXN1bHQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZm9ybS5wYXRjaFZhbHVlKHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC4uLnJlc3VsdCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdGVkUmVzdENvbXBhbnk6IHJlc3VsdC5zZWxlY3RlZFJlc3RDb21wYW55IC8vIHphdGVuIFwiT3ZvbHRcIiB2ZXlhIFwiRXZzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIGVycm9yOiAoZXJyKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc29sZS5lcnJvcihlcnIpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMudG9hc3Rlci5lcnJvcignVmVyaSB5w7xrbGVuaXJrZW4gaGF0YSBvbHXFn3R1LicpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBzYXZlKCk6IHZvaWQge1xyXG4gICAgICAgIGlmICh0aGlzLmZvcm0uaW52YWxpZCkge1xyXG4gICAgICAgICAgICB0aGlzLmZvcm0ubWFya0FsbEFzVG91Y2hlZCgpO1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBjb25zdCBwYXlsb2FkID0gdGhpcy5mb3JtLnZhbHVlIGFzIFN5c3RlbVBhcmFtZXRlckR0bztcclxuICAgICAgICB0aGlzLmlzQnVzeSA9IHRydWU7XHJcblxyXG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSB0aGlzLnNlbGVjdGVkPy5pZFxyXG4gICAgICAgICAgICA/IHRoaXMuc2VydmljZS51cGRhdGUodGhpcy5zZWxlY3RlZC5pZCwgcGF5bG9hZClcclxuICAgICAgICAgICAgOiB0aGlzLnNlcnZpY2UuY3JlYXRlKHBheWxvYWQpO1xyXG5cclxuICAgICAgICByZXF1ZXN0LnBpcGUoZmluYWxpemUoKCkgPT4gKHRoaXMuaXNCdXN5ID0gZmFsc2UpKSlcclxuICAgICAgICAgICAgLnN1YnNjcmliZSh7XHJcbiAgICAgICAgICAgICAgICBuZXh0OiAocmVzKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZWxlY3RlZCA9IHJlcztcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmZvcm0ucGF0Y2hWYWx1ZShyZXMpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMudG9hc3Rlci5zdWNjZXNzKCdLYXlkZWRpbGRpJyk7XHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgZXJyb3I6IChlcnIpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKGVycik7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy50b2FzdGVyLmVycm9yKCdLYXlkZXRtZSBzxLFyYXPEsW5kYSBoYXRhIG9sdcWfdHUuJyk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxufSIsIjxhYnAtcGFnZSBbdGl0bGVdPVwiJ092b2x0OjpTeXN0ZW1QYXJhbWV0ZXJzJyB8IGFicExvY2FsaXphdGlvblwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImNhcmRcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5XCI+XHJcbiAgICAgICAgICAgIDxmb3JtIFtmb3JtR3JvdXBdPVwiZm9ybVwiIChuZ1N1Ym1pdCk9XCJzYXZlKClcIj5cclxuXHJcbiAgICAgICAgICAgICAgICA8IS0tIFJlc3QgQ29tcGFueSBTZWxlY3QgLS0+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93IG1iLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTZcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1sYWJlbFwiIGZvcj1cInN5c3RlbS1wYXJhbWV0ZXItc2VsZWN0ZWQtcmVzdC1jb21wYW55XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyAnT3ZvbHQ6OlNlbGVjdGVkUmVzdENvbXBhbnknIHwgYWJwTG9jYWxpemF0aW9uIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzZWxlY3QgaWQ9XCJzZWxlY3RlZFJlc3RDb21wYW55XCIgZm9ybUNvbnRyb2xOYW1lPVwic2VsZWN0ZWRSZXN0Q29tcGFueVwiIGNsYXNzPVwiZm9ybS1zZWxlY3RcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gKm5nRm9yPVwibGV0IG9wdGlvbiBvZiByZXN0Q29tcGFueVR5cGVPcHRpb25zOyB0cmFja0J5OiB0cmFjay5ieSgna2V5JylcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJvcHRpb24ua2V5XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgJ092b2x0OjpFbnVtOlJlc3RDb21wYW55VHlwZS4nICsgb3B0aW9uLmtleSB8IGFicExvY2FsaXphdGlvbiB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9vcHRpb24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VsZWN0PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJmb3JtLWxhYmVsXCIgZm9yPVwic3lzdGVtLXBhcmFtZXRlci1wb2tleVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgJ092b2x0OjpQT0tleScgfCBhYnBMb2NhbGl6YXRpb24gfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IGlkPVwic3lzdGVtLXBhcmFtZXRlci1wb2tleVwiIGZvcm1Db250cm9sTmFtZT1cInBvS2V5XCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG5cclxuICAgICAgICAgICAgICAgIDwhLS0gRGnEn2VyIEFsYW5sYXIgR3JpZCAtLT5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTYgbWItMlwiICpuZ0Zvcj1cImxldCBmaWVsZCBvZiBmaWVsZHNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsPnt7ICgnT3ZvbHQ6OicgKyBmaWVsZExvY2FsaXphdGlvbk1hcFtmaWVsZF0pIHwgYWJwTG9jYWxpemF0aW9uIH19PC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IFt0eXBlXT1cIihmaWVsZC5pbmNsdWRlcygnR3JvdXBDb2RlJykgKSA/ICdudW1iZXInIDogJ3RleHQnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgW2Zvcm1Db250cm9sTmFtZV09XCJmaWVsZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJmb3JtLmdldChmaWVsZCk/LnRvdWNoZWQgJiYgZm9ybS5nZXQoZmllbGQpPy5pbnZhbGlkXCIgY2xhc3M9XCJ0ZXh0LWRhbmdlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgJ092b2x0OjpGaWVsZFJlcXVpcmVkT3JJbnZhbGlkJyB8IGFicExvY2FsaXphdGlvbiB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuXHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1lbmQgbXQtNFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cInN1Ym1pdFwiIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5XCIgW2Rpc2FibGVkXT1cImlzQnVzeVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB7eyAnQWJwVWk6OlNhdmUnIHwgYWJwTG9jYWxpemF0aW9uIH19XHJcbiAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9mb3JtPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbjwvYWJwLXBhZ2U+Il19
122
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGl0LXN5c3RlbS1wYXJhbWV0ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb3ZvbHQvc3JjL2xpYi9jb21wb25lbnRzL2hpdC1zeXN0ZW0tcGFyYW1ldGVycy9jb21wb25lbnRzL2hpdC1zeXN0ZW0tcGFyYW1ldGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL292b2x0L3NyYy9saWIvY29tcG9uZW50cy9oaXQtc3lzdGVtLXBhcmFtZXRlcnMvY29tcG9uZW50cy9oaXQtc3lzdGVtLXBhcmFtZXRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQU8sV0FBVyxFQUFrQyxNQUFNLGNBQWMsQ0FBQztBQUVoRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDOUQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUMzRSxPQUFPLEVBQTBCLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUM1RCxPQUFPLEVBQVUsUUFBUSxFQUFrQixNQUFNLGdCQUFnQixDQUFDO0FBUWxFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDREQUE0RCxDQUFDOzs7Ozs7Ozs7O0FBUXBHLE1BQU0sT0FBTywyQkFBMkI7SUE4QnBDLFlBQW9CLEVBQWUsRUFDdkIsT0FBK0IsRUFDL0IsVUFBcUMsRUFDckMsT0FBdUIsRUFDZixLQUFxQjtRQUpyQixPQUFFLEdBQUYsRUFBRSxDQUFhO1FBQ3ZCLFlBQU8sR0FBUCxPQUFPLENBQXdCO1FBQy9CLGVBQVUsR0FBVixVQUFVLENBQTJCO1FBQ3JDLFlBQU8sR0FBUCxPQUFPLENBQWdCO1FBQ2YsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7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TyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVuQyxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQzthQUM5QyxTQUFTLENBQUM7WUFDUCxJQUFJLEVBQUUsQ0FBQyxHQUFHLEVBQUUsRUFBRTtnQkFDVixJQUFJLENBQUMsUUFBUSxHQUFHLEdBQUcsQ0FBQztnQkFDcEIsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQzFCLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQ3ZDLENBQUM7WUFDRCxLQUFLLEVBQUUsQ0FBQyxHQUFHLEVBQUUsRUFBRTtnQkFDWCxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUNuQixJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO1lBQzFELENBQUM7U0FDSixDQUFDLENBQUM7SUFDWCxDQUFDOzt3SEE3R1EsMkJBQTJCOzRHQUEzQiwyQkFBMkIsbURBSnpCLENBQUMsV0FBVyxFQUFFLEVBQUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLENBQUMsMEJDbEJoRix3aUZBZ0RXOzJGRDFCRSwyQkFBMkI7a0JBUHZDLFNBQVM7K0JBQ0ksMEJBQTBCLG1CQUNuQix1QkFBdUIsQ0FBQyxPQUFPLGFBQ3JDLENBQUMsV0FBVyxFQUFFLEVBQUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBQlAsIExpc3RTZXJ2aWNlLCBQYWdlZFJlc3VsdER0bywgVHJhY2tCeVNlcnZpY2UgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xyXG5pbXBvcnQgeyBDb25maXJtYXRpb24sIENvbmZpcm1hdGlvblNlcnZpY2UsIFRvYXN0ZXJTZXJ2aWNlIH0gZnJvbSAnQGFicC9uZy50aGVtZS5zaGFyZWQnO1xyXG5pbXBvcnQgeyBEYXRlQWRhcHRlciB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkL2V4dGVuc2lvbnMnO1xyXG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTmdiRGF0ZUFkYXB0ZXIgfSBmcm9tICdAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcCc7XHJcbmltcG9ydCB7IGZpbHRlciwgZmluYWxpemUsIHN3aXRjaE1hcCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgdHlwZSB7XHJcbiAgICBHZXRTeXN0ZW1QYXJhbWV0ZXJzSW5wdXQsXHJcbiAgICBTeXN0ZW1QYXJhbWV0ZXJEdG8sXHJcbn0gZnJvbSAnLi4vLi4vLi4vcHJveHkvc3lzdGVtLXBhcmFtZXRlcnMvbW9kZWxzJztcclxuaW1wb3J0IHsgU3lzdGVtUGFyYW1ldGVyU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3Byb3h5L3N5c3RlbS1wYXJhbWV0ZXJzL3N5c3RlbS1wYXJhbWV0ZXIuc2VydmljZSc7XHJcbmltcG9ydCB7IEhpdFN5c3RlbVBhcmFtZXRlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9oaXQtcHJveHkvaGl0LXN5c3RlbS1wYXJhbWV0ZXJzL2hpdC1zeXN0ZW0tcGFyYW1ldGVyLnNlcnZpY2UnO1xyXG5cclxuaW1wb3J0IHsgcmVzdENvbXBhbnlUeXBlT3B0aW9ucyB9IGZyb20gJy4uLy4uLy4uL3Byb3h5L2dlbmVyYWwtdHJhbnNhY3Rpb25zL3Jlc3QtY29tcGFueS10eXBlLmVudW0nO1xyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnbGliLWhpdC1zeXN0ZW0tcGFyYW1ldGVyJyxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuRGVmYXVsdCxcclxuICAgIHByb3ZpZGVyczogW0xpc3RTZXJ2aWNlLCB7IHByb3ZpZGU6IE5nYkRhdGVBZGFwdGVyLCB1c2VDbGFzczogRGF0ZUFkYXB0ZXIgfV0sXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vaGl0LXN5c3RlbS1wYXJhbWV0ZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVzOiBbXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEhpdFN5c3RlbVBhcmFtZXRlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgICBmb3JtOiBGb3JtR3JvdXA7XHJcbiAgICBzZWxlY3RlZD86IFN5c3RlbVBhcmFtZXRlckR0bztcclxuICAgIGlzQnVzeSA9IGZhbHNlO1xyXG5cclxuICAgIHJlc3RDb21wYW55VHlwZU9wdGlvbnMgPSByZXN0Q29tcGFueVR5cGVPcHRpb25zO1xyXG5cclxuICAgIGZpZWxkcyA9IFtcclxuICAgICAgICAnc2hhcnpOZXRDdXN0b21lclNlcmllcycsICd1cEVuZXJqaUN1c3RvbWVyU2VyaWVzJywgJ3NoYXJ6TmV0Q3VzdG9tZXJHcm91cENvZGUnLCAndXBFbmVyamlDdXN0b21lckdyb3VwQ29kZScsXHJcbiAgICAgICAgJ3NoYXJ6TmV0Q3VzdG9tZXJEZWJpdG9yQWNjb3VudCcsICd1cEVuZXJqaUN1c3RvbWVyRGViaXRvckFjY291bnQnLCAndmVuZG9yU2VyaWVzJywgJ3ZlbmRvckdyb3VwQ29kZScsXHJcbiAgICAgICAgJ3RyYW5zYWN0aW9uSXRlbUNvZGUnLCAnY29nc0Nvc3RpbmdDb2RlJywgJ2NvZ3NDb3N0aW5nQ29kZTInLCAnY29nc0Nvc3RpbmdDb2RlMycsJ2JwbElkJywncHVyY2hhc2VPcmRlckl0ZW1Db2RlJ1xyXG4gICAgXTtcclxuXHJcbiAgICBmaWVsZExvY2FsaXphdGlvbk1hcDogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfSA9IHtcclxuICAgICAgICBzaGFyek5ldEN1c3RvbWVyU2VyaWVzOiAnU2hhcnpOZXRDdXN0b21lclNlcmllcycsXHJcbiAgICAgICAgdXBFbmVyamlDdXN0b21lclNlcmllczogJ1VwRW5lcmppQ3VzdG9tZXJTZXJpZXMnLFxyXG4gICAgICAgIHNoYXJ6TmV0Q3VzdG9tZXJHcm91cENvZGU6ICdTaGFyek5ldEN1c3RvbWVyR3JvdXBDb2RlJyxcclxuICAgICAgICB1cEVuZXJqaUN1c3RvbWVyR3JvdXBDb2RlOiAnVXBFbmVyamlDdXN0b21lckdyb3VwQ29kZScsXHJcbiAgICAgICAgc2hhcnpOZXRDdXN0b21lckRlYml0b3JBY2NvdW50OiAnU2hhcnpOZXRDdXN0b21lckRlYml0b3JBY2NvdW50JyxcclxuICAgICAgICB1cEVuZXJqaUN1c3RvbWVyRGViaXRvckFjY291bnQ6ICdVcEVuZXJqaUN1c3RvbWVyRGViaXRvckFjY291bnQnLFxyXG4gICAgICAgIHZlbmRvclNlcmllczogJ1ZlbmRvclNlcmllcycsXHJcbiAgICAgICAgdmVuZG9yR3JvdXBDb2RlOiAnVmVuZG9yR3JvdXBDb2RlJyxcclxuICAgICAgICB0cmFuc2FjdGlvbkl0ZW1Db2RlOiAnVHJhbnNhY3Rpb25JdGVtQ29kZScsXHJcbiAgICAgICAgY29nc0Nvc3RpbmdDb2RlOiAnQ09HU0Nvc3RpbmdDb2RlJyxcclxuICAgICAgICBjb2dzQ29zdGluZ0NvZGUyOiAnQ09HU0Nvc3RpbmdDb2RlMicsXHJcbiAgICAgICAgY29nc0Nvc3RpbmdDb2RlMzogJ0NPR1NDb3N0aW5nQ29kZTMnLFxyXG4gICAgICAgIGJwbElkOiAnQlBMSWQnLFxyXG4gICAgICAgIHB1cmNoYXNlT3JkZXJJdGVtQ29kZTogJ1B1cmNoYXNlT3JkZXJJdGVtQ29kZScsXHJcbiAgICB9O1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyLFxyXG4gICAgICAgIHByaXZhdGUgc2VydmljZTogU3lzdGVtUGFyYW1ldGVyU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIGhpdFNlcnZpY2U6IEhpdFN5c3RlbVBhcmFtZXRlclNlcnZpY2UsXHJcbiAgICAgICAgcHJpdmF0ZSB0b2FzdGVyOiBUb2FzdGVyU2VydmljZSxcclxuICAgICAgICBwdWJsaWMgcmVhZG9ubHkgdHJhY2s6IFRyYWNrQnlTZXJ2aWNlLFxyXG4gICAgKSB7IH1cclxuXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmJ1aWxkRm9ybSgpO1xyXG4gICAgICAgIHRoaXMubG9hZERhdGEoKTtcclxuICAgIH1cclxuXHJcbiAgICBidWlsZEZvcm0oKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5mb3JtID0gdGhpcy5mYi5ncm91cCh7XHJcbiAgICAgICAgICAgIHNlbGVjdGVkUmVzdENvbXBhbnk6IFtudWxsLCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcclxuICAgICAgICAgICAgc2hhcnpOZXRDdXN0b21lclNlcmllczogW251bGwsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXHJcbiAgICAgICAgICAgIHVwRW5lcmppQ3VzdG9tZXJTZXJpZXM6IFtudWxsLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF1dLFxyXG4gICAgICAgICAgICBzaGFyek5ldEN1c3RvbWVyR3JvdXBDb2RlOiBbbnVsbCwgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMubWluKDEpXV0sXHJcbiAgICAgICAgICAgIHVwRW5lcmppQ3VzdG9tZXJHcm91cENvZGU6IFtudWxsLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5taW4oMSldXSxcclxuICAgICAgICAgICAgc2hhcnpOZXRDdXN0b21lckRlYml0b3JBY2NvdW50OiBbbnVsbCwgW1ZhbGlkYXRvcnMucmVxdWlyZWRdXSxcclxuICAgICAgICAgICAgdXBFbmVyamlDdXN0b21lckRlYml0b3JBY2NvdW50OiBbbnVsbCwgW1ZhbGlkYXRvcnMucmVxdWlyZWRdXSxcclxuICAgICAgICAgICAgdmVuZG9yU2VyaWVzOiBbbnVsbCwgW1ZhbGlkYXRvcnMucmVxdWlyZWRdXSxcclxuICAgICAgICAgICAgdmVuZG9yR3JvdXBDb2RlOiBbbnVsbCwgW1ZhbGlkYXRvcnMucmVxdWlyZWRdXSxcclxuICAgICAgICAgICAgdHJhbnNhY3Rpb25JdGVtQ29kZTogW251bGwsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXHJcbiAgICAgICAgICAgIGNvZ3NDb3N0aW5nQ29kZTogW251bGxdLFxyXG4gICAgICAgICAgICBjb2dzQ29zdGluZ0NvZGUyOiBbbnVsbF0sXHJcbiAgICAgICAgICAgIGNvZ3NDb3N0aW5nQ29kZTM6IFtudWxsXSxcclxuICAgICAgICAgICAgcG9LZXk6IFtudWxsLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF1dLFxyXG4gICAgICAgICAgICBicGxJZDogW251bGwsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXHJcbiAgICAgICAgICAgIHB1cmNoYXNlT3JkZXJJdGVtQ29kZTogW251bGwsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgbG9hZERhdGEoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5pc0J1c3kgPSB0cnVlO1xyXG4gICAgICAgIHRoaXMuaGl0U2VydmljZS5nZXRTeXN0ZW1QYXJhbWV0ZXIoKVxyXG4gICAgICAgICAgICAucGlwZShmaW5hbGl6ZSgoKSA9PiAodGhpcy5pc0J1c3kgPSBmYWxzZSkpKVxyXG4gICAgICAgICAgICAuc3Vic2NyaWJlKHtcclxuICAgICAgICAgICAgICAgIG5leHQ6IChyZXN1bHQpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBpZiAocmVzdWx0KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWQgPSByZXN1bHQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZm9ybS5wYXRjaFZhbHVlKHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC4uLnJlc3VsdCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdGVkUmVzdENvbXBhbnk6IHJlc3VsdC5zZWxlY3RlZFJlc3RDb21wYW55IC8vIHphdGVuIFwiT3ZvbHRcIiB2ZXlhIFwiRXZzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIGVycm9yOiAoZXJyKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc29sZS5lcnJvcihlcnIpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMudG9hc3Rlci5lcnJvcignVmVyaSB5w7xrbGVuaXJrZW4gaGF0YSBvbHXFn3R1LicpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBzYXZlKCk6IHZvaWQge1xyXG4gICAgICAgIGlmICh0aGlzLmZvcm0uaW52YWxpZCkge1xyXG4gICAgICAgICAgICB0aGlzLmZvcm0ubWFya0FsbEFzVG91Y2hlZCgpO1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBjb25zdCBwYXlsb2FkID0gdGhpcy5mb3JtLnZhbHVlIGFzIFN5c3RlbVBhcmFtZXRlckR0bztcclxuICAgICAgICB0aGlzLmlzQnVzeSA9IHRydWU7XHJcblxyXG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSB0aGlzLnNlbGVjdGVkPy5pZFxyXG4gICAgICAgICAgICA/IHRoaXMuc2VydmljZS51cGRhdGUodGhpcy5zZWxlY3RlZC5pZCwgcGF5bG9hZClcclxuICAgICAgICAgICAgOiB0aGlzLnNlcnZpY2UuY3JlYXRlKHBheWxvYWQpO1xyXG5cclxuICAgICAgICByZXF1ZXN0LnBpcGUoZmluYWxpemUoKCkgPT4gKHRoaXMuaXNCdXN5ID0gZmFsc2UpKSlcclxuICAgICAgICAgICAgLnN1YnNjcmliZSh7XHJcbiAgICAgICAgICAgICAgICBuZXh0OiAocmVzKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZWxlY3RlZCA9IHJlcztcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmZvcm0ucGF0Y2hWYWx1ZShyZXMpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMudG9hc3Rlci5zdWNjZXNzKCdLYXlkZWRpbGRpJyk7XHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgZXJyb3I6IChlcnIpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKGVycik7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy50b2FzdGVyLmVycm9yKCdLYXlkZXRtZSBzxLFyYXPEsW5kYSBoYXRhIG9sdcWfdHUuJyk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxufSIsIjxhYnAtcGFnZSBbdGl0bGVdPVwiJ092b2x0OjpTeXN0ZW1QYXJhbWV0ZXJzJyB8IGFicExvY2FsaXphdGlvblwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImNhcmRcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5XCI+XHJcbiAgICAgICAgICAgIDxmb3JtIFtmb3JtR3JvdXBdPVwiZm9ybVwiIChuZ1N1Ym1pdCk9XCJzYXZlKClcIj5cclxuXHJcbiAgICAgICAgICAgICAgICA8IS0tIFJlc3QgQ29tcGFueSBTZWxlY3QgLS0+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93IG1iLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTZcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1sYWJlbFwiIGZvcj1cInN5c3RlbS1wYXJhbWV0ZXItc2VsZWN0ZWQtcmVzdC1jb21wYW55XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyAnT3ZvbHQ6OlNlbGVjdGVkUmVzdENvbXBhbnknIHwgYWJwTG9jYWxpemF0aW9uIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzZWxlY3QgaWQ9XCJzZWxlY3RlZFJlc3RDb21wYW55XCIgZm9ybUNvbnRyb2xOYW1lPVwic2VsZWN0ZWRSZXN0Q29tcGFueVwiIGNsYXNzPVwiZm9ybS1zZWxlY3RcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gKm5nRm9yPVwibGV0IG9wdGlvbiBvZiByZXN0Q29tcGFueVR5cGVPcHRpb25zOyB0cmFja0J5OiB0cmFjay5ieSgna2V5JylcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJvcHRpb24ua2V5XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgJ092b2x0OjpFbnVtOlJlc3RDb21wYW55VHlwZS4nICsgb3B0aW9uLmtleSB8IGFicExvY2FsaXphdGlvbiB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9vcHRpb24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VsZWN0PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJmb3JtLWxhYmVsXCIgZm9yPVwic3lzdGVtLXBhcmFtZXRlci1wb2tleVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgJ092b2x0OjpQT0tleScgfCBhYnBMb2NhbGl6YXRpb24gfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IGlkPVwic3lzdGVtLXBhcmFtZXRlci1wb2tleVwiIGZvcm1Db250cm9sTmFtZT1cInBvS2V5XCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG5cclxuICAgICAgICAgICAgICAgIDwhLS0gRGnEn2VyIEFsYW5sYXIgR3JpZCAtLT5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTYgbWItMlwiICpuZ0Zvcj1cImxldCBmaWVsZCBvZiBmaWVsZHNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsPnt7ICgnT3ZvbHQ6OicgKyBmaWVsZExvY2FsaXphdGlvbk1hcFtmaWVsZF0pIHwgYWJwTG9jYWxpemF0aW9uIH19PC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IFt0eXBlXT1cIihmaWVsZC5pbmNsdWRlcygnR3JvdXBDb2RlJykgKSA/ICdudW1iZXInIDogJ3RleHQnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgW2Zvcm1Db250cm9sTmFtZV09XCJmaWVsZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJmb3JtLmdldChmaWVsZCk/LnRvdWNoZWQgJiYgZm9ybS5nZXQoZmllbGQpPy5pbnZhbGlkXCIgY2xhc3M9XCJ0ZXh0LWRhbmdlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgJ092b2x0OjpGaWVsZFJlcXVpcmVkT3JJbnZhbGlkJyB8IGFicExvY2FsaXphdGlvbiB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuXHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1lbmQgbXQtNFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cInN1Ym1pdFwiIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5XCIgW2Rpc2FibGVkXT1cImlzQnVzeVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB7eyAnQWJwVWk6OlNhdmUnIHwgYWJwTG9jYWxpemF0aW9uIH19XHJcbiAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9mb3JtPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbjwvYWJwLXBhZ2U+Il19
@@ -0,0 +1,103 @@
1
+ import { ListService } from '@abp/ng.core';
2
+ import { Confirmation } from '@abp/ng.theme.shared';
3
+ import { DateAdapter } from '@abp/ng.theme.shared/extensions';
4
+ import { ChangeDetectionStrategy, Component } from '@angular/core';
5
+ import { NgbDateAdapter } from '@ng-bootstrap/ng-bootstrap';
6
+ import { filter, finalize, switchMap, tap } from 'rxjs/operators';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "@abp/ng.core";
9
+ import * as i2 from "../../../proxy/fuel-integration-logs/fuel-integration-log.service";
10
+ import * as i3 from "@abp/ng.theme.shared";
11
+ import * as i4 from "@angular/forms";
12
+ import * as i5 from "@angular/common";
13
+ import * as i6 from "@swimlane/ngx-datatable";
14
+ import * as i7 from "@volo/abp.commercial.ng.ui";
15
+ import * as i8 from "@ngx-validate/core";
16
+ import * as i9 from "@ng-bootstrap/ng-bootstrap";
17
+ import * as i10 from "@abp/ng.components/page";
18
+ export class FuelIntegrationLogComponent {
19
+ constructor(list, track, service, confirmation, fb) {
20
+ this.list = list;
21
+ this.track = track;
22
+ this.service = service;
23
+ this.confirmation = confirmation;
24
+ this.fb = fb;
25
+ this.data = {
26
+ items: [],
27
+ totalCount: 0,
28
+ };
29
+ this.filters = {};
30
+ this.isFiltersHidden = true;
31
+ this.isModalBusy = false;
32
+ this.isModalOpen = false;
33
+ }
34
+ ngOnInit() {
35
+ const getData = (query) => this.service.getList({
36
+ ...query,
37
+ ...this.filters,
38
+ filterText: query.filter,
39
+ });
40
+ const setData = (list) => (this.data = list);
41
+ this.list.hookToQuery(getData).subscribe(setData);
42
+ }
43
+ clearFilters() {
44
+ this.filters = {};
45
+ }
46
+ buildForm() {
47
+ const { path, method, requestBody, responseBody, statusCode, requestTime, responseTime } = this.selected || {};
48
+ this.form = this.fb.group({
49
+ path: [path ?? null, []],
50
+ method: [method ?? null, []],
51
+ requestBody: [requestBody ?? null, []],
52
+ responseBody: [responseBody ?? null, []],
53
+ statusCode: [statusCode ?? null, []],
54
+ requestTime: [requestTime ? new Date(requestTime) : null, []],
55
+ responseTime: [responseTime ? new Date(responseTime) : null, []],
56
+ });
57
+ }
58
+ hideForm() {
59
+ this.isModalOpen = false;
60
+ this.form.reset();
61
+ }
62
+ showForm() {
63
+ this.buildForm();
64
+ this.isModalOpen = true;
65
+ }
66
+ submitForm() {
67
+ if (this.form.invalid)
68
+ return;
69
+ const request = this.selected
70
+ ? this.service.update(this.selected.id, {
71
+ ...this.form.value,
72
+ concurrencyStamp: this.selected.concurrencyStamp,
73
+ })
74
+ : this.service.create(this.form.value);
75
+ this.isModalBusy = true;
76
+ request
77
+ .pipe(finalize(() => (this.isModalBusy = false)), tap(() => this.hideForm()))
78
+ .subscribe(this.list.get);
79
+ }
80
+ create() {
81
+ this.selected = undefined;
82
+ this.showForm();
83
+ }
84
+ update(record) {
85
+ this.selected = record;
86
+ this.showForm();
87
+ }
88
+ delete(record) {
89
+ this.confirmation
90
+ .warn('Ovolt::DeleteConfirmationMessage', 'Ovolt::AreYouSure', {
91
+ messageLocalizationParams: [],
92
+ })
93
+ .pipe(filter(status => status === Confirmation.Status.confirm), switchMap(() => this.service.delete(record.id)))
94
+ .subscribe(this.list.get);
95
+ }
96
+ }
97
+ FuelIntegrationLogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FuelIntegrationLogComponent, deps: [{ token: i1.ListService }, { token: i1.TrackByService }, { token: i2.FuelIntegrationLogService }, { token: i3.ConfirmationService }, { token: i4.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
98
+ FuelIntegrationLogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: FuelIntegrationLogComponent, selector: "lib-fuel-integration-log", providers: [ListService, { provide: NgbDateAdapter, useClass: DateAdapter }], ngImport: i0, template: "<abp-page [title]=\"'Ovolt::FuelIntegrationLogs' | abpLocalization\">\n <abp-page-toolbar-container class=\"col\">\n <div class=\"text-lg-end pt-2\">\n <button\n *abpPermission=\"'Ovolt.FuelIntegrationLogs.Create'\"\n class=\"btn btn-primary btn-sm\"\n type=\"button\"\n (click)=\"create()\"\n >\n <i class=\"fa fa-plus me-1\" aria-hidden=\"true\"></i>\n {{ 'Ovolt::NewFuelIntegrationLog' | abpLocalization }}\n </button>\n </div>\n </abp-page-toolbar-container>\n\n <abp-advanced-entity-filters localizationSourceName=\"Ovolt\" [list]=\"list\">\n <abp-advanced-entity-filters-form>\n <form #filterForm (keyup.enter)=\"list.get()\">\n <div class=\"row\">\n <div class=\"col-12 col-sm-auto\">\n <div class=\"mb-3\">\n <label class=\"form-label\" for=\"pathFilter\">\n {{ 'Ovolt::Path' | abpLocalization }}\n </label>\n\n <input\n id=\"pathFilter\"\n class=\"form-control\"\n [(ngModel)]=\"filters.path\"\n [ngModelOptions]=\"{ standalone: true }\"\n />\n </div>\n </div>\n <div class=\"col-12 col-sm-auto\">\n <div class=\"mb-3\">\n <label class=\"form-label\" for=\"methodFilter\">\n {{ 'Ovolt::Method' | abpLocalization }}\n </label>\n\n <input\n id=\"methodFilter\"\n class=\"form-control\"\n [(ngModel)]=\"filters.method\"\n [ngModelOptions]=\"{ standalone: true }\"\n />\n </div>\n </div>\n <div class=\"col-12 col-sm-auto\">\n <div class=\"mb-3\">\n <label class=\"form-label\" for=\"requestBodyFilter\">\n {{ 'Ovolt::RequestBody' | abpLocalization }}\n </label>\n\n <input\n id=\"requestBodyFilter\"\n class=\"form-control\"\n [(ngModel)]=\"filters.requestBody\"\n [ngModelOptions]=\"{ standalone: true }\"\n />\n </div>\n </div>\n <div class=\"col-12 col-sm-auto\">\n <div class=\"mb-3\">\n <label class=\"form-label\" for=\"responseBodyFilter\">\n {{ 'Ovolt::ResponseBody' | abpLocalization }}\n </label>\n\n <input\n id=\"responseBodyFilter\"\n class=\"form-control\"\n [(ngModel)]=\"filters.responseBody\"\n [ngModelOptions]=\"{ standalone: true }\"\n />\n </div>\n </div>\n <div class=\"col-12 col-sm-auto\">\n <div class=\"mb-3\">\n <label class=\"form-label\" for=\"statusCodeFilter\">\n {{ 'Ovolt::StatusCode' | abpLocalization }}\n </label>\n\n <input\n id=\"statusCodeFilter\"\n class=\"form-control\"\n [(ngModel)]=\"filters.statusCode\"\n [ngModelOptions]=\"{ standalone: true }\"\n />\n </div>\n </div>\n <div class=\"col-12 col-sm-auto\">\n <div class=\"mb-3\">\n <label class=\"form-label\" for=\"minRequestTime\">\n {{ 'Ovolt::MinRequestTime' | abpLocalization }}\n </label>\n\n <div class=\"input-group\" validationTarget>\n <input\n id=\"minRequestTime\"\n class=\"form-control\"\n #minRequestTimeInput\n #minRequestTimeDatepicker=\"ngbDatepicker\"\n name=\"minRequestTime\"\n ngbDatepicker\n container=\"body\"\n readonly\n (click)=\"minRequestTimeDatepicker.toggle()\"\n (keyup.space)=\"minRequestTimeDatepicker.toggle()\"\n [(ngModel)]=\"filters.requestTimeMin\"\n [ngModelOptions]=\"{ standalone: true }\"\n />\n <div *ngIf=\"minRequestTimeInput.value\" class=\"input-group-append\">\n <button\n class=\"btn btn-link px-2\"\n type=\"button\"\n [title]=\"'AbpUi::Clear' | abpLocalization\"\n (click)=\"\n minRequestTimeDatepicker.writeValue(null);\n minRequestTimeDatepicker.manualDateChange(null, true)\n \"\n >\n <i class=\"fa fa-times\" aria-hidden=\"true\"></i>\n </button>\n </div>\n </div>\n </div>\n </div>\n\n <div class=\"col-12 col-sm-auto\">\n <div class=\"mb-3\">\n <label class=\"form-label\" for=\"maxRequestTime\">\n {{ 'Ovolt::MaxRequestTime' | abpLocalization }}\n </label>\n\n <div class=\"input-group\" validationTarget>\n <input\n id=\"maxRequestTime\"\n class=\"form-control\"\n #maxRequestTimeInput\n #maxRequestTimeDatepicker=\"ngbDatepicker\"\n name=\"maxRequestTime\"\n ngbDatepicker\n readonly\n (click)=\"maxRequestTimeDatepicker.toggle()\"\n (keyup.space)=\"maxRequestTimeDatepicker.toggle()\"\n [(ngModel)]=\"filters.requestTimeMax\"\n [ngModelOptions]=\"{ standalone: true }\"\n />\n <div *ngIf=\"maxRequestTimeInput.value\" class=\"input-group-append\">\n <button\n class=\"btn btn-link px-2\"\n type=\"button\"\n [title]=\"'AbpUi::Clear' | abpLocalization\"\n (click)=\"\n maxRequestTimeDatepicker.writeValue(null);\n maxRequestTimeDatepicker.manualDateChange(null, true)\n \"\n >\n <i class=\"fa fa-times\" aria-hidden=\"true\"></i>\n </button>\n </div>\n </div>\n </div>\n </div>\n <div class=\"col-12 col-sm-auto\">\n <div class=\"mb-3\">\n <label class=\"form-label\" for=\"minResponseTime\">\n {{ 'Ovolt::MinResponseTime' | abpLocalization }}\n </label>\n\n <div class=\"input-group\" validationTarget>\n <input\n id=\"minResponseTime\"\n class=\"form-control\"\n #minResponseTimeInput\n #minResponseTimeDatepicker=\"ngbDatepicker\"\n name=\"minResponseTime\"\n ngbDatepicker\n container=\"body\"\n readonly\n (click)=\"minResponseTimeDatepicker.toggle()\"\n (keyup.space)=\"minResponseTimeDatepicker.toggle()\"\n [(ngModel)]=\"filters.responseTimeMin\"\n [ngModelOptions]=\"{ standalone: true }\"\n />\n <div *ngIf=\"minResponseTimeInput.value\" class=\"input-group-append\">\n <button\n class=\"btn btn-link px-2\"\n type=\"button\"\n [title]=\"'AbpUi::Clear' | abpLocalization\"\n (click)=\"\n minResponseTimeDatepicker.writeValue(null);\n minResponseTimeDatepicker.manualDateChange(null, true)\n \"\n >\n <i class=\"fa fa-times\" aria-hidden=\"true\"></i>\n </button>\n </div>\n </div>\n </div>\n </div>\n\n <div class=\"col-12 col-sm-auto\">\n <div class=\"mb-3\">\n <label class=\"form-label\" for=\"maxResponseTime\">\n {{ 'Ovolt::MaxResponseTime' | abpLocalization }}\n </label>\n\n <div class=\"input-group\" validationTarget>\n <input\n id=\"maxResponseTime\"\n class=\"form-control\"\n #maxResponseTimeInput\n #maxResponseTimeDatepicker=\"ngbDatepicker\"\n name=\"maxResponseTime\"\n ngbDatepicker\n readonly\n (click)=\"maxResponseTimeDatepicker.toggle()\"\n (keyup.space)=\"maxResponseTimeDatepicker.toggle()\"\n [(ngModel)]=\"filters.responseTimeMax\"\n [ngModelOptions]=\"{ standalone: true }\"\n />\n <div *ngIf=\"maxResponseTimeInput.value\" class=\"input-group-append\">\n <button\n class=\"btn btn-link px-2\"\n type=\"button\"\n [title]=\"'AbpUi::Clear' | abpLocalization\"\n (click)=\"\n maxResponseTimeDatepicker.writeValue(null);\n maxResponseTimeDatepicker.manualDateChange(null, true)\n \"\n >\n <i class=\"fa fa-times\" aria-hidden=\"true\"></i>\n </button>\n </div>\n </div>\n </div>\n </div>\n\n <div class=\"col-12 col-sm-auto align-self-end mb-3\">\n <div class=\"row\">\n <div class=\"col-6 col-sm-auto d-grid\">\n <button type=\"button\" class=\"btn btn-outline-primary\" (click)=\"clearFilters()\">\n <span>{{ 'AbpUi::Clear' | abpLocalization }}</span>\n </button>\n </div>\n <div class=\"col-6 col-sm-auto d-grid\">\n <button type=\"button\" class=\"btn btn-primary\" (click)=\"list.get()\">\n <span>{{ 'AbpUi::Refresh' | abpLocalization }}</span>\n </button>\n </div>\n </div>\n </div>\n </div>\n </form>\n </abp-advanced-entity-filters-form>\n </abp-advanced-entity-filters>\n\n <div class=\"card\">\n <div class=\"card-body\">\n <ngx-datatable [rows]=\"data.items\" [count]=\"data.totalCount\" [list]=\"list\" default>\n <ngx-datatable-column\n [name]=\"'AbpUi::Actions' | abpLocalization\"\n [maxWidth]=\"150\"\n [width]=\"150\"\n [sortable]=\"false\"\n >\n <ng-template let-row=\"row\" let-i=\"rowIndex\" ngx-datatable-cell-template>\n <div ngbDropdown container=\"body\" class=\"d-inline-block\">\n <button\n class=\"btn btn-primary btn-sm dropdown-toggle\"\n data-toggle=\"dropdown\"\n aria-haspopup=\"true\"\n ngbDropdownToggle\n >\n <i class=\"fa fa-cog me-1\" aria-hidden=\"true\"></i>\n {{ 'AbpUi::Actions' | abpLocalization }}\n </button>\n\n <div ngbDropdownMenu>\n <button\n ngbDropdownItem\n *abpPermission=\"'Ovolt.FuelIntegrationLogs.Edit'\"\n (click)=\"update(row)\"\n >\n {{ 'AbpUi::Edit' | abpLocalization }}\n </button>\n\n <button\n ngbDropdownItem\n *abpPermission=\"'Ovolt.FuelIntegrationLogs.Delete'\"\n (click)=\"delete(row)\"\n >\n {{ 'AbpUi::Delete' | abpLocalization }}\n </button>\n </div>\n </div>\n </ng-template>\n </ngx-datatable-column>\n\n <ngx-datatable-column name=\"{{ 'Ovolt::Path' | abpLocalization }}\" prop=\"path\">\n <ng-template let-row=\"row\" ngx-datatable-cell-template>\n {{ row.path }}\n </ng-template>\n </ngx-datatable-column>\n\n <ngx-datatable-column name=\"{{ 'Ovolt::Method' | abpLocalization }}\" prop=\"method\">\n <ng-template let-row=\"row\" ngx-datatable-cell-template>\n {{ row.method }}\n </ng-template>\n </ngx-datatable-column>\n\n <ngx-datatable-column\n name=\"{{ 'Ovolt::RequestBody' | abpLocalization }}\"\n prop=\"requestBody\"\n >\n <ng-template let-row=\"row\" ngx-datatable-cell-template>\n {{ row.requestBody }}\n </ng-template>\n </ngx-datatable-column>\n\n <ngx-datatable-column\n name=\"{{ 'Ovolt::ResponseBody' | abpLocalization }}\"\n prop=\"responseBody\"\n >\n <ng-template let-row=\"row\" ngx-datatable-cell-template>\n {{ row.responseBody }}\n </ng-template>\n </ngx-datatable-column>\n\n <ngx-datatable-column name=\"{{ 'Ovolt::StatusCode' | abpLocalization }}\" prop=\"statusCode\">\n <ng-template let-row=\"row\" ngx-datatable-cell-template>\n {{ row.statusCode }}\n </ng-template>\n </ngx-datatable-column>\n\n <ngx-datatable-column\n name=\"{{ 'Ovolt::RequestTime' | abpLocalization }}\"\n prop=\"requestTime\"\n >\n <ng-template let-row=\"row\" ngx-datatable-cell-template>\n {{ row.requestTime | date }}\n </ng-template>\n </ngx-datatable-column>\n\n <ngx-datatable-column\n name=\"{{ 'Ovolt::ResponseTime' | abpLocalization }}\"\n prop=\"responseTime\"\n >\n <ng-template let-row=\"row\" ngx-datatable-cell-template>\n {{ row.responseTime | date }}\n </ng-template>\n </ngx-datatable-column>\n </ngx-datatable>\n </div>\n </div>\n</abp-page>\n\n<abp-modal [busy]=\"isModalBusy\" [(visible)]=\"isModalOpen\">\n <ng-template #abpHeader>\n <h3>\n {{ (selected ? 'AbpUi::Edit' : 'Ovolt::NewFuelIntegrationLog') | abpLocalization }}\n </h3>\n </ng-template>\n\n <ng-template #abpBody>\n <form [formGroup]=\"form\" id=\"fuel-integration-log\" (ngSubmit)=\"submitForm()\" validateOnSubmit>\n <div class=\"mt-2 fade-in-top\">\n <div class=\"mb-3\">\n <label class=\"form-label\" for=\"fuel-integration-log-path\">\n {{ 'Ovolt::Path' | abpLocalization }}\n </label>\n\n <input\n id=\"fuel-integration-log-path\"\n formControlName=\"path\"\n class=\"form-control\"\n autofocus\n />\n </div>\n <div class=\"mb-3\">\n <label class=\"form-label\" for=\"fuel-integration-log-method\">\n {{ 'Ovolt::Method' | abpLocalization }}\n </label>\n\n <input id=\"fuel-integration-log-method\" formControlName=\"method\" class=\"form-control\" />\n </div>\n <div class=\"mb-3\">\n <label class=\"form-label\" for=\"fuel-integration-log-request-body\">\n {{ 'Ovolt::RequestBody' | abpLocalization }}\n </label>\n\n <input\n id=\"fuel-integration-log-request-body\"\n formControlName=\"requestBody\"\n class=\"form-control\"\n />\n </div>\n <div class=\"mb-3\">\n <label class=\"form-label\" for=\"fuel-integration-log-response-body\">\n {{ 'Ovolt::ResponseBody' | abpLocalization }}\n </label>\n\n <input\n id=\"fuel-integration-log-response-body\"\n formControlName=\"responseBody\"\n class=\"form-control\"\n />\n </div>\n <div class=\"mb-3\">\n <label class=\"form-label\" for=\"fuel-integration-log-status-code\">\n {{ 'Ovolt::StatusCode' | abpLocalization }}\n </label>\n\n <input\n id=\"fuel-integration-log-status-code\"\n formControlName=\"statusCode\"\n class=\"form-control\"\n />\n </div>\n <div class=\"mb-3\">\n <label class=\"form-label\" for=\"fuel-integration-log-request-time\">\n {{ 'Ovolt::RequestTime' | abpLocalization }}\n </label>\n\n <div class=\"input-group\" validationTarget>\n <input\n readonly\n id=\"fuel-integration-log-request-time\"\n formControlName=\"requestTime\"\n class=\"form-control\"\n ngbDatepicker\n #requestTimeInput\n #requestTimeDatepicker=\"ngbDatepicker\"\n (click)=\"requestTimeDatepicker.open()\"\n (keyup.space)=\"requestTimeDatepicker.open()\"\n />\n <div *ngIf=\"requestTimeInput.value\" class=\"input-group-append\">\n <button\n class=\"btn btn-link px-2\"\n type=\"button\"\n [title]=\"'AbpUi::Clear' | abpLocalization\"\n (click)=\"\n requestTimeDatepicker.writeValue(null);\n requestTimeDatepicker.manualDateChange(null, true)\n \"\n >\n <i class=\"fa fa-times\" aria-hidden=\"true\"></i>\n </button>\n </div>\n </div>\n </div>\n <div class=\"mb-3\">\n <label class=\"form-label\" for=\"fuel-integration-log-response-time\">\n {{ 'Ovolt::ResponseTime' | abpLocalization }}\n </label>\n\n <div class=\"input-group\" validationTarget>\n <input\n readonly\n id=\"fuel-integration-log-response-time\"\n formControlName=\"responseTime\"\n class=\"form-control\"\n ngbDatepicker\n #responseTimeInput\n #responseTimeDatepicker=\"ngbDatepicker\"\n (click)=\"responseTimeDatepicker.open()\"\n (keyup.space)=\"responseTimeDatepicker.open()\"\n />\n <div *ngIf=\"responseTimeInput.value\" class=\"input-group-append\">\n <button\n class=\"btn btn-link px-2\"\n type=\"button\"\n [title]=\"'AbpUi::Clear' | abpLocalization\"\n (click)=\"\n responseTimeDatepicker.writeValue(null);\n responseTimeDatepicker.manualDateChange(null, true)\n \"\n >\n <i class=\"fa fa-times\" aria-hidden=\"true\"></i>\n </button>\n </div>\n </div>\n </div>\n </div>\n </form>\n </ng-template>\n\n <ng-template #abpFooter>\n <button type=\"button\" class=\"btn btn-secondary\" abpClose>\n {{ 'AbpUi::Cancel' | abpLocalization }}\n </button>\n\n <abp-button iconClass=\"fa fa-check\" buttonType=\"submit\" formName=\"fuel-integration-log\">\n {{ 'AbpUi::Save' | abpLocalization }}\n </abp-button>\n </ng-template>\n</abp-modal>\n", dependencies: [{ kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i4.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: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i4.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1.AutofocusDirective, selector: "[autofocus]", inputs: ["autofocus"] }, { kind: "directive", type: i1.FormSubmitDirective, selector: "form[ngSubmit][formGroup]", inputs: ["debounce", "notValidateOnSubmit", "markAsDirtyWhenSubmit"], outputs: ["ngSubmit"] }, { kind: "directive", type: i1.PermissionDirective, selector: "[abpPermission]", inputs: ["abpPermission", "abpPermissionRunChangeDetection"] }, { kind: "component", type: i6.DatatableComponent, selector: "ngx-datatable", inputs: ["targetMarkerTemplate", "rows", "groupRowsBy", "groupedRows", "columns", "selected", "scrollbarV", "scrollbarH", "rowHeight", "columnMode", "headerHeight", "footerHeight", "externalPaging", "externalSorting", "limit", "count", "offset", "loadingIndicator", "selectionType", "reorderable", "swapColumns", "sortType", "sorts", "cssClasses", "messages", "rowClass", "selectCheck", "displayCheck", "groupExpansionDefault", "trackByProp", "selectAllRowsOnPage", "virtualization", "treeFromRelation", "treeToRelation", "summaryRow", "summaryHeight", "summaryPosition", "rowIdentity"], outputs: ["scroll", "activate", "select", "sort", "page", "reorder", "resize", "tableContextmenu", "treeAction"] }, { kind: "directive", type: i6.DataTableColumnDirective, selector: "ngx-datatable-column", inputs: ["name", "prop", "frozenLeft", "frozenRight", "flexGrow", "resizeable", "comparator", "pipe", "sortable", "draggable", "canAutoResize", "minWidth", "width", "maxWidth", "checkboxable", "headerCheckboxable", "headerClass", "cellClass", "isTreeColumn", "treeLevelIndent", "summaryFunc", "summaryTemplate", "cellTemplate", "headerTemplate", "treeToggleTemplate"] }, { kind: "directive", type: i6.DataTableColumnCellDirective, selector: "[ngx-datatable-cell-template]" }, { kind: "component", type: i3.ButtonComponent, selector: "abp-button", inputs: ["buttonId", "buttonClass", "buttonType", "formName", "iconClass", "loading", "disabled", "attributes"], outputs: ["click", "focus", "blur", "abpClick", "abpFocus", "abpBlur"] }, { kind: "component", type: i3.ModalComponent, selector: "abp-modal", inputs: ["visible", "busy", "options", "suppressUnsavedChangesWarning"], outputs: ["visibleChange", "init", "appear", "disappear"] }, { kind: "directive", type: i3.NgxDatatableDefaultDirective, selector: "ngx-datatable[default]", inputs: ["class"], exportAs: ["ngxDatatableDefault"] }, { kind: "directive", type: i3.NgxDatatableListDirective, selector: "ngx-datatable[list]", inputs: ["list"], exportAs: ["ngxDatatableList"] }, { kind: "directive", type: i3.ModalCloseDirective, selector: "[abpClose]" }, { kind: "component", type: i7.AdvancedEntityFiltersComponent, selector: "abp-advanced-entity-filters", inputs: ["list", "localizationSourceName", "entityFilterPlaceholder"] }, { kind: "component", type: i7.AdvancedEntityFiltersFormComponent, selector: "abp-advanced-entity-filters-form" }, { kind: "directive", type: i8.ValidationGroupDirective, selector: "[formGroup],[formGroupName]", exportAs: ["validationGroup"] }, { kind: "directive", type: i8.ValidationTargetDirective, selector: "[validationTarget]", exportAs: ["validationTarget"] }, { kind: "directive", type: i8.ValidationDirective, selector: "[formControl],[formControlName]", exportAs: ["validationDirective"] }, { kind: "directive", type: i9.NgbInputDatepicker, selector: "input[ngbDatepicker]", inputs: ["autoClose", "datepickerClass", "dayTemplate", "dayTemplateData", "displayMonths", "firstDayOfWeek", "footerTemplate", "markDisabled", "minDate", "maxDate", "navigation", "outsideDays", "placement", "restoreFocus", "showWeekNumbers", "startDate", "container", "positionTarget", "weekdays", "disabled"], outputs: ["dateSelect", "navigate", "closed"], exportAs: ["ngbDatepicker"] }, { kind: "directive", type: i9.NgbDropdown, selector: "[ngbDropdown]", inputs: ["autoClose", "dropdownClass", "open", "placement", "container", "display"], outputs: ["openChange"], exportAs: ["ngbDropdown"] }, { kind: "directive", type: i9.NgbDropdownToggle, selector: "[ngbDropdownToggle]" }, { kind: "directive", type: i9.NgbDropdownMenu, selector: "[ngbDropdownMenu]" }, { kind: "directive", type: i9.NgbDropdownItem, selector: "[ngbDropdownItem]", inputs: ["disabled"] }, { kind: "component", type: i10.PageComponent, selector: "abp-page", inputs: ["title", "toolbar", "breadcrumb"] }, { kind: "component", type: i10.PageToolbarContainerComponent, selector: "abp-page-toolbar-container" }, { kind: "pipe", type: i5.DatePipe, name: "date" }, { kind: "pipe", type: i1.LocalizationPipe, name: "abpLocalization" }], changeDetection: i0.ChangeDetectionStrategy.Default });
99
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FuelIntegrationLogComponent, decorators: [{
100
+ type: Component,
101
+ args: [{ selector: 'lib-fuel-integration-log', changeDetection: ChangeDetectionStrategy.Default, providers: [ListService, { provide: NgbDateAdapter, useClass: DateAdapter }], template: "<abp-page [title]=\"'Ovolt::FuelIntegrationLogs' | abpLocalization\">\n <abp-page-toolbar-container class=\"col\">\n <div class=\"text-lg-end pt-2\">\n <button\n *abpPermission=\"'Ovolt.FuelIntegrationLogs.Create'\"\n class=\"btn btn-primary btn-sm\"\n type=\"button\"\n (click)=\"create()\"\n >\n <i class=\"fa fa-plus me-1\" aria-hidden=\"true\"></i>\n {{ 'Ovolt::NewFuelIntegrationLog' | abpLocalization }}\n </button>\n </div>\n </abp-page-toolbar-container>\n\n <abp-advanced-entity-filters localizationSourceName=\"Ovolt\" [list]=\"list\">\n <abp-advanced-entity-filters-form>\n <form #filterForm (keyup.enter)=\"list.get()\">\n <div class=\"row\">\n <div class=\"col-12 col-sm-auto\">\n <div class=\"mb-3\">\n <label class=\"form-label\" for=\"pathFilter\">\n {{ 'Ovolt::Path' | abpLocalization }}\n </label>\n\n <input\n id=\"pathFilter\"\n class=\"form-control\"\n [(ngModel)]=\"filters.path\"\n [ngModelOptions]=\"{ standalone: true }\"\n />\n </div>\n </div>\n <div class=\"col-12 col-sm-auto\">\n <div class=\"mb-3\">\n <label class=\"form-label\" for=\"methodFilter\">\n {{ 'Ovolt::Method' | abpLocalization }}\n </label>\n\n <input\n id=\"methodFilter\"\n class=\"form-control\"\n [(ngModel)]=\"filters.method\"\n [ngModelOptions]=\"{ standalone: true }\"\n />\n </div>\n </div>\n <div class=\"col-12 col-sm-auto\">\n <div class=\"mb-3\">\n <label class=\"form-label\" for=\"requestBodyFilter\">\n {{ 'Ovolt::RequestBody' | abpLocalization }}\n </label>\n\n <input\n id=\"requestBodyFilter\"\n class=\"form-control\"\n [(ngModel)]=\"filters.requestBody\"\n [ngModelOptions]=\"{ standalone: true }\"\n />\n </div>\n </div>\n <div class=\"col-12 col-sm-auto\">\n <div class=\"mb-3\">\n <label class=\"form-label\" for=\"responseBodyFilter\">\n {{ 'Ovolt::ResponseBody' | abpLocalization }}\n </label>\n\n <input\n id=\"responseBodyFilter\"\n class=\"form-control\"\n [(ngModel)]=\"filters.responseBody\"\n [ngModelOptions]=\"{ standalone: true }\"\n />\n </div>\n </div>\n <div class=\"col-12 col-sm-auto\">\n <div class=\"mb-3\">\n <label class=\"form-label\" for=\"statusCodeFilter\">\n {{ 'Ovolt::StatusCode' | abpLocalization }}\n </label>\n\n <input\n id=\"statusCodeFilter\"\n class=\"form-control\"\n [(ngModel)]=\"filters.statusCode\"\n [ngModelOptions]=\"{ standalone: true }\"\n />\n </div>\n </div>\n <div class=\"col-12 col-sm-auto\">\n <div class=\"mb-3\">\n <label class=\"form-label\" for=\"minRequestTime\">\n {{ 'Ovolt::MinRequestTime' | abpLocalization }}\n </label>\n\n <div class=\"input-group\" validationTarget>\n <input\n id=\"minRequestTime\"\n class=\"form-control\"\n #minRequestTimeInput\n #minRequestTimeDatepicker=\"ngbDatepicker\"\n name=\"minRequestTime\"\n ngbDatepicker\n container=\"body\"\n readonly\n (click)=\"minRequestTimeDatepicker.toggle()\"\n (keyup.space)=\"minRequestTimeDatepicker.toggle()\"\n [(ngModel)]=\"filters.requestTimeMin\"\n [ngModelOptions]=\"{ standalone: true }\"\n />\n <div *ngIf=\"minRequestTimeInput.value\" class=\"input-group-append\">\n <button\n class=\"btn btn-link px-2\"\n type=\"button\"\n [title]=\"'AbpUi::Clear' | abpLocalization\"\n (click)=\"\n minRequestTimeDatepicker.writeValue(null);\n minRequestTimeDatepicker.manualDateChange(null, true)\n \"\n >\n <i class=\"fa fa-times\" aria-hidden=\"true\"></i>\n </button>\n </div>\n </div>\n </div>\n </div>\n\n <div class=\"col-12 col-sm-auto\">\n <div class=\"mb-3\">\n <label class=\"form-label\" for=\"maxRequestTime\">\n {{ 'Ovolt::MaxRequestTime' | abpLocalization }}\n </label>\n\n <div class=\"input-group\" validationTarget>\n <input\n id=\"maxRequestTime\"\n class=\"form-control\"\n #maxRequestTimeInput\n #maxRequestTimeDatepicker=\"ngbDatepicker\"\n name=\"maxRequestTime\"\n ngbDatepicker\n readonly\n (click)=\"maxRequestTimeDatepicker.toggle()\"\n (keyup.space)=\"maxRequestTimeDatepicker.toggle()\"\n [(ngModel)]=\"filters.requestTimeMax\"\n [ngModelOptions]=\"{ standalone: true }\"\n />\n <div *ngIf=\"maxRequestTimeInput.value\" class=\"input-group-append\">\n <button\n class=\"btn btn-link px-2\"\n type=\"button\"\n [title]=\"'AbpUi::Clear' | abpLocalization\"\n (click)=\"\n maxRequestTimeDatepicker.writeValue(null);\n maxRequestTimeDatepicker.manualDateChange(null, true)\n \"\n >\n <i class=\"fa fa-times\" aria-hidden=\"true\"></i>\n </button>\n </div>\n </div>\n </div>\n </div>\n <div class=\"col-12 col-sm-auto\">\n <div class=\"mb-3\">\n <label class=\"form-label\" for=\"minResponseTime\">\n {{ 'Ovolt::MinResponseTime' | abpLocalization }}\n </label>\n\n <div class=\"input-group\" validationTarget>\n <input\n id=\"minResponseTime\"\n class=\"form-control\"\n #minResponseTimeInput\n #minResponseTimeDatepicker=\"ngbDatepicker\"\n name=\"minResponseTime\"\n ngbDatepicker\n container=\"body\"\n readonly\n (click)=\"minResponseTimeDatepicker.toggle()\"\n (keyup.space)=\"minResponseTimeDatepicker.toggle()\"\n [(ngModel)]=\"filters.responseTimeMin\"\n [ngModelOptions]=\"{ standalone: true }\"\n />\n <div *ngIf=\"minResponseTimeInput.value\" class=\"input-group-append\">\n <button\n class=\"btn btn-link px-2\"\n type=\"button\"\n [title]=\"'AbpUi::Clear' | abpLocalization\"\n (click)=\"\n minResponseTimeDatepicker.writeValue(null);\n minResponseTimeDatepicker.manualDateChange(null, true)\n \"\n >\n <i class=\"fa fa-times\" aria-hidden=\"true\"></i>\n </button>\n </div>\n </div>\n </div>\n </div>\n\n <div class=\"col-12 col-sm-auto\">\n <div class=\"mb-3\">\n <label class=\"form-label\" for=\"maxResponseTime\">\n {{ 'Ovolt::MaxResponseTime' | abpLocalization }}\n </label>\n\n <div class=\"input-group\" validationTarget>\n <input\n id=\"maxResponseTime\"\n class=\"form-control\"\n #maxResponseTimeInput\n #maxResponseTimeDatepicker=\"ngbDatepicker\"\n name=\"maxResponseTime\"\n ngbDatepicker\n readonly\n (click)=\"maxResponseTimeDatepicker.toggle()\"\n (keyup.space)=\"maxResponseTimeDatepicker.toggle()\"\n [(ngModel)]=\"filters.responseTimeMax\"\n [ngModelOptions]=\"{ standalone: true }\"\n />\n <div *ngIf=\"maxResponseTimeInput.value\" class=\"input-group-append\">\n <button\n class=\"btn btn-link px-2\"\n type=\"button\"\n [title]=\"'AbpUi::Clear' | abpLocalization\"\n (click)=\"\n maxResponseTimeDatepicker.writeValue(null);\n maxResponseTimeDatepicker.manualDateChange(null, true)\n \"\n >\n <i class=\"fa fa-times\" aria-hidden=\"true\"></i>\n </button>\n </div>\n </div>\n </div>\n </div>\n\n <div class=\"col-12 col-sm-auto align-self-end mb-3\">\n <div class=\"row\">\n <div class=\"col-6 col-sm-auto d-grid\">\n <button type=\"button\" class=\"btn btn-outline-primary\" (click)=\"clearFilters()\">\n <span>{{ 'AbpUi::Clear' | abpLocalization }}</span>\n </button>\n </div>\n <div class=\"col-6 col-sm-auto d-grid\">\n <button type=\"button\" class=\"btn btn-primary\" (click)=\"list.get()\">\n <span>{{ 'AbpUi::Refresh' | abpLocalization }}</span>\n </button>\n </div>\n </div>\n </div>\n </div>\n </form>\n </abp-advanced-entity-filters-form>\n </abp-advanced-entity-filters>\n\n <div class=\"card\">\n <div class=\"card-body\">\n <ngx-datatable [rows]=\"data.items\" [count]=\"data.totalCount\" [list]=\"list\" default>\n <ngx-datatable-column\n [name]=\"'AbpUi::Actions' | abpLocalization\"\n [maxWidth]=\"150\"\n [width]=\"150\"\n [sortable]=\"false\"\n >\n <ng-template let-row=\"row\" let-i=\"rowIndex\" ngx-datatable-cell-template>\n <div ngbDropdown container=\"body\" class=\"d-inline-block\">\n <button\n class=\"btn btn-primary btn-sm dropdown-toggle\"\n data-toggle=\"dropdown\"\n aria-haspopup=\"true\"\n ngbDropdownToggle\n >\n <i class=\"fa fa-cog me-1\" aria-hidden=\"true\"></i>\n {{ 'AbpUi::Actions' | abpLocalization }}\n </button>\n\n <div ngbDropdownMenu>\n <button\n ngbDropdownItem\n *abpPermission=\"'Ovolt.FuelIntegrationLogs.Edit'\"\n (click)=\"update(row)\"\n >\n {{ 'AbpUi::Edit' | abpLocalization }}\n </button>\n\n <button\n ngbDropdownItem\n *abpPermission=\"'Ovolt.FuelIntegrationLogs.Delete'\"\n (click)=\"delete(row)\"\n >\n {{ 'AbpUi::Delete' | abpLocalization }}\n </button>\n </div>\n </div>\n </ng-template>\n </ngx-datatable-column>\n\n <ngx-datatable-column name=\"{{ 'Ovolt::Path' | abpLocalization }}\" prop=\"path\">\n <ng-template let-row=\"row\" ngx-datatable-cell-template>\n {{ row.path }}\n </ng-template>\n </ngx-datatable-column>\n\n <ngx-datatable-column name=\"{{ 'Ovolt::Method' | abpLocalization }}\" prop=\"method\">\n <ng-template let-row=\"row\" ngx-datatable-cell-template>\n {{ row.method }}\n </ng-template>\n </ngx-datatable-column>\n\n <ngx-datatable-column\n name=\"{{ 'Ovolt::RequestBody' | abpLocalization }}\"\n prop=\"requestBody\"\n >\n <ng-template let-row=\"row\" ngx-datatable-cell-template>\n {{ row.requestBody }}\n </ng-template>\n </ngx-datatable-column>\n\n <ngx-datatable-column\n name=\"{{ 'Ovolt::ResponseBody' | abpLocalization }}\"\n prop=\"responseBody\"\n >\n <ng-template let-row=\"row\" ngx-datatable-cell-template>\n {{ row.responseBody }}\n </ng-template>\n </ngx-datatable-column>\n\n <ngx-datatable-column name=\"{{ 'Ovolt::StatusCode' | abpLocalization }}\" prop=\"statusCode\">\n <ng-template let-row=\"row\" ngx-datatable-cell-template>\n {{ row.statusCode }}\n </ng-template>\n </ngx-datatable-column>\n\n <ngx-datatable-column\n name=\"{{ 'Ovolt::RequestTime' | abpLocalization }}\"\n prop=\"requestTime\"\n >\n <ng-template let-row=\"row\" ngx-datatable-cell-template>\n {{ row.requestTime | date }}\n </ng-template>\n </ngx-datatable-column>\n\n <ngx-datatable-column\n name=\"{{ 'Ovolt::ResponseTime' | abpLocalization }}\"\n prop=\"responseTime\"\n >\n <ng-template let-row=\"row\" ngx-datatable-cell-template>\n {{ row.responseTime | date }}\n </ng-template>\n </ngx-datatable-column>\n </ngx-datatable>\n </div>\n </div>\n</abp-page>\n\n<abp-modal [busy]=\"isModalBusy\" [(visible)]=\"isModalOpen\">\n <ng-template #abpHeader>\n <h3>\n {{ (selected ? 'AbpUi::Edit' : 'Ovolt::NewFuelIntegrationLog') | abpLocalization }}\n </h3>\n </ng-template>\n\n <ng-template #abpBody>\n <form [formGroup]=\"form\" id=\"fuel-integration-log\" (ngSubmit)=\"submitForm()\" validateOnSubmit>\n <div class=\"mt-2 fade-in-top\">\n <div class=\"mb-3\">\n <label class=\"form-label\" for=\"fuel-integration-log-path\">\n {{ 'Ovolt::Path' | abpLocalization }}\n </label>\n\n <input\n id=\"fuel-integration-log-path\"\n formControlName=\"path\"\n class=\"form-control\"\n autofocus\n />\n </div>\n <div class=\"mb-3\">\n <label class=\"form-label\" for=\"fuel-integration-log-method\">\n {{ 'Ovolt::Method' | abpLocalization }}\n </label>\n\n <input id=\"fuel-integration-log-method\" formControlName=\"method\" class=\"form-control\" />\n </div>\n <div class=\"mb-3\">\n <label class=\"form-label\" for=\"fuel-integration-log-request-body\">\n {{ 'Ovolt::RequestBody' | abpLocalization }}\n </label>\n\n <input\n id=\"fuel-integration-log-request-body\"\n formControlName=\"requestBody\"\n class=\"form-control\"\n />\n </div>\n <div class=\"mb-3\">\n <label class=\"form-label\" for=\"fuel-integration-log-response-body\">\n {{ 'Ovolt::ResponseBody' | abpLocalization }}\n </label>\n\n <input\n id=\"fuel-integration-log-response-body\"\n formControlName=\"responseBody\"\n class=\"form-control\"\n />\n </div>\n <div class=\"mb-3\">\n <label class=\"form-label\" for=\"fuel-integration-log-status-code\">\n {{ 'Ovolt::StatusCode' | abpLocalization }}\n </label>\n\n <input\n id=\"fuel-integration-log-status-code\"\n formControlName=\"statusCode\"\n class=\"form-control\"\n />\n </div>\n <div class=\"mb-3\">\n <label class=\"form-label\" for=\"fuel-integration-log-request-time\">\n {{ 'Ovolt::RequestTime' | abpLocalization }}\n </label>\n\n <div class=\"input-group\" validationTarget>\n <input\n readonly\n id=\"fuel-integration-log-request-time\"\n formControlName=\"requestTime\"\n class=\"form-control\"\n ngbDatepicker\n #requestTimeInput\n #requestTimeDatepicker=\"ngbDatepicker\"\n (click)=\"requestTimeDatepicker.open()\"\n (keyup.space)=\"requestTimeDatepicker.open()\"\n />\n <div *ngIf=\"requestTimeInput.value\" class=\"input-group-append\">\n <button\n class=\"btn btn-link px-2\"\n type=\"button\"\n [title]=\"'AbpUi::Clear' | abpLocalization\"\n (click)=\"\n requestTimeDatepicker.writeValue(null);\n requestTimeDatepicker.manualDateChange(null, true)\n \"\n >\n <i class=\"fa fa-times\" aria-hidden=\"true\"></i>\n </button>\n </div>\n </div>\n </div>\n <div class=\"mb-3\">\n <label class=\"form-label\" for=\"fuel-integration-log-response-time\">\n {{ 'Ovolt::ResponseTime' | abpLocalization }}\n </label>\n\n <div class=\"input-group\" validationTarget>\n <input\n readonly\n id=\"fuel-integration-log-response-time\"\n formControlName=\"responseTime\"\n class=\"form-control\"\n ngbDatepicker\n #responseTimeInput\n #responseTimeDatepicker=\"ngbDatepicker\"\n (click)=\"responseTimeDatepicker.open()\"\n (keyup.space)=\"responseTimeDatepicker.open()\"\n />\n <div *ngIf=\"responseTimeInput.value\" class=\"input-group-append\">\n <button\n class=\"btn btn-link px-2\"\n type=\"button\"\n [title]=\"'AbpUi::Clear' | abpLocalization\"\n (click)=\"\n responseTimeDatepicker.writeValue(null);\n responseTimeDatepicker.manualDateChange(null, true)\n \"\n >\n <i class=\"fa fa-times\" aria-hidden=\"true\"></i>\n </button>\n </div>\n </div>\n </div>\n </div>\n </form>\n </ng-template>\n\n <ng-template #abpFooter>\n <button type=\"button\" class=\"btn btn-secondary\" abpClose>\n {{ 'AbpUi::Cancel' | abpLocalization }}\n </button>\n\n <abp-button iconClass=\"fa fa-check\" buttonType=\"submit\" formName=\"fuel-integration-log\">\n {{ 'AbpUi::Save' | abpLocalization }}\n </abp-button>\n </ng-template>\n</abp-modal>\n" }]
102
+ }], ctorParameters: function () { return [{ type: i1.ListService }, { type: i1.TrackByService }, { type: i2.FuelIntegrationLogService }, { type: i3.ConfirmationService }, { type: i4.FormBuilder }]; } });
103
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVlbC1pbnRlZ3JhdGlvbi1sb2cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb3ZvbHQvc3JjL2xpYi9mdWVsLWludGVncmF0aW9uLWxvZ3MvZnVlbC1pbnRlZ3JhdGlvbi1sb2cvY29tcG9uZW50cy9mdWVsLWludGVncmF0aW9uLWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vdm9sdC9zcmMvbGliL2Z1ZWwtaW50ZWdyYXRpb24tbG9ncy9mdWVsLWludGVncmF0aW9uLWxvZy9jb21wb25lbnRzL2Z1ZWwtaW50ZWdyYXRpb24tbG9nLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBTyxXQUFXLEVBQWtDLE1BQU0sY0FBYyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxZQUFZLEVBQXVCLE1BQU0sc0JBQXNCLENBQUM7QUFDekUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzlELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFFM0UsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzVELE9BQU8sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7Ozs7O0FBYWxFLE1BQU0sT0FBTywyQkFBMkI7SUFrQnRDLFlBQ2tCLElBQWlCLEVBQ2pCLEtBQXFCLEVBQ3JCLE9BQWtDLEVBQzFDLFlBQWlDLEVBQ2pDLEVBQWU7UUFKUCxTQUFJLEdBQUosSUFBSSxDQUFhO1FBQ2pCLFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQ3JCLFlBQU8sR0FBUCxPQUFPLENBQTJCO1FBQzFDLGlCQUFZLEdBQVosWUFBWSxDQUFxQjtRQUNqQyxPQUFFLEdBQUYsRUFB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RkQ5ZGEsMkJBQTJCO2tCQVB2QyxTQUFTOytCQUNFLDBCQUEwQixtQkFDbkIsdUJBQXVCLENBQUMsT0FBTyxhQUNyQyxDQUFDLFdBQVcsRUFBRSxFQUFFLE9BQU8sRUFBRSxjQUFjLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQUJQLCBMaXN0U2VydmljZSwgUGFnZWRSZXN1bHREdG8sIFRyYWNrQnlTZXJ2aWNlIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcbmltcG9ydCB7IENvbmZpcm1hdGlvbiwgQ29uZmlybWF0aW9uU2VydmljZSB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkJztcbmltcG9ydCB7IERhdGVBZGFwdGVyIH0gZnJvbSAnQGFicC9uZy50aGVtZS5zaGFyZWQvZXh0ZW5zaW9ucyc7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBOZ2JEYXRlQWRhcHRlciB9IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwJztcbmltcG9ydCB7IGZpbHRlciwgZmluYWxpemUsIHN3aXRjaE1hcCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHR5cGUge1xuICBHZXRGdWVsSW50ZWdyYXRpb25Mb2dzSW5wdXQsXG4gIEZ1ZWxJbnRlZ3JhdGlvbkxvZ0R0byxcbn0gZnJvbSAnLi4vLi4vLi4vcHJveHkvZnVlbC1pbnRlZ3JhdGlvbi1sb2dzL21vZGVscyc7XG5pbXBvcnQgeyBGdWVsSW50ZWdyYXRpb25Mb2dTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vcHJveHkvZnVlbC1pbnRlZ3JhdGlvbi1sb2dzL2Z1ZWwtaW50ZWdyYXRpb24tbG9nLnNlcnZpY2UnO1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbGliLWZ1ZWwtaW50ZWdyYXRpb24tbG9nJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5EZWZhdWx0LFxuICBwcm92aWRlcnM6IFtMaXN0U2VydmljZSwgeyBwcm92aWRlOiBOZ2JEYXRlQWRhcHRlciwgdXNlQ2xhc3M6IERhdGVBZGFwdGVyIH1dLFxuICB0ZW1wbGF0ZVVybDogJy4vZnVlbC1pbnRlZ3JhdGlvbi1sb2cuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZXM6IFtdLFxufSlcbmV4cG9ydCBjbGFzcyBGdWVsSW50ZWdyYXRpb25Mb2dDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBkYXRhOiBQYWdlZFJlc3VsdER0bzxGdWVsSW50ZWdyYXRpb25Mb2dEdG8+ID0ge1xuICAgIGl0ZW1zOiBbXSxcbiAgICB0b3RhbENvdW50OiAwLFxuICB9O1xuXG4gIGZpbHRlcnMgPSB7fSBhcyBHZXRGdWVsSW50ZWdyYXRpb25Mb2dzSW5wdXQ7XG5cbiAgZm9ybTogRm9ybUdyb3VwO1xuXG4gIGlzRmlsdGVyc0hpZGRlbiA9IHRydWU7XG5cbiAgaXNNb2RhbEJ1c3kgPSBmYWxzZTtcblxuICBpc01vZGFsT3BlbiA9IGZhbHNlO1xuXG4gIHNlbGVjdGVkPzogRnVlbEludGVncmF0aW9uTG9nRHRvO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyByZWFkb25seSBsaXN0OiBMaXN0U2VydmljZSxcbiAgICBwdWJsaWMgcmVhZG9ubHkgdHJhY2s6IFRyYWNrQnlTZXJ2aWNlLFxuICAgIHB1YmxpYyByZWFkb25seSBzZXJ2aWNlOiBGdWVsSW50ZWdyYXRpb25Mb2dTZXJ2aWNlLFxuICAgIHByaXZhdGUgY29uZmlybWF0aW9uOiBDb25maXJtYXRpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyXG4gICkge31cblxuICBuZ09uSW5pdCgpIHtcbiAgICBjb25zdCBnZXREYXRhID0gKHF1ZXJ5OiBBQlAuUGFnZVF1ZXJ5UGFyYW1zKSA9PlxuICAgICAgdGhpcy5zZXJ2aWNlLmdldExpc3Qoe1xuICAgICAgICAuLi5xdWVyeSxcbiAgICAgICAgLi4udGhpcy5maWx0ZXJzLFxuICAgICAgICBmaWx0ZXJUZXh0OiBxdWVyeS5maWx0ZXIsXG4gICAgICB9KTtcblxuICAgIGNvbnN0IHNldERhdGEgPSAobGlzdDogUGFnZWRSZXN1bHREdG88RnVlbEludGVncmF0aW9uTG9nRHRvPikgPT4gKHRoaXMuZGF0YSA9IGxpc3QpO1xuXG4gICAgdGhpcy5saXN0Lmhvb2tUb1F1ZXJ5KGdldERhdGEpLnN1YnNjcmliZShzZXREYXRhKTtcbiAgfVxuXG4gIGNsZWFyRmlsdGVycygpIHtcbiAgICB0aGlzLmZpbHRlcnMgPSB7fSBhcyBHZXRGdWVsSW50ZWdyYXRpb25Mb2dzSW5wdXQ7XG4gIH1cblxuICBidWlsZEZvcm0oKSB7XG4gICAgY29uc3QgeyBwYXRoLCBtZXRob2QsIHJlcXVlc3RCb2R5LCByZXNwb25zZUJvZHksIHN0YXR1c0NvZGUsIHJlcXVlc3RUaW1lLCByZXNwb25zZVRpbWUgfSA9XG4gICAgICB0aGlzLnNlbGVjdGVkIHx8IHt9O1xuXG4gICAgdGhpcy5mb3JtID0gdGhpcy5mYi5ncm91cCh7XG4gICAgICBwYXRoOiBbcGF0aCA/PyBudWxsLCBbXV0sXG4gICAgICBtZXRob2Q6IFttZXRob2QgPz8gbnVsbCwgW11dLFxuICAgICAgcmVxdWVzdEJvZHk6IFtyZXF1ZXN0Qm9keSA/PyBudWxsLCBbXV0sXG4gICAgICByZXNwb25zZUJvZHk6IFtyZXNwb25zZUJvZHkgPz8gbnVsbCwgW11dLFxuICAgICAgc3RhdHVzQ29kZTogW3N0YXR1c0NvZGUgPz8gbnVsbCwgW11dLFxuICAgICAgcmVxdWVzdFRpbWU6IFtyZXF1ZXN0VGltZSA/IG5ldyBEYXRlKHJlcXVlc3RUaW1lKSA6IG51bGwsIFtdXSxcbiAgICAgIHJlc3BvbnNlVGltZTogW3Jlc3BvbnNlVGltZSA/IG5ldyBEYXRlKHJlc3BvbnNlVGltZSkgOiBudWxsLCBbXV0sXG4gICAgfSk7XG4gIH1cblxuICBoaWRlRm9ybSgpIHtcbiAgICB0aGlzLmlzTW9kYWxPcGVuID0gZmFsc2U7XG4gICAgdGhpcy5mb3JtLnJlc2V0KCk7XG4gIH1cblxuICBzaG93Rm9ybSgpIHtcbiAgICB0aGlzLmJ1aWxkRm9ybSgpO1xuICAgIHRoaXMuaXNNb2RhbE9wZW4gPSB0cnVlO1xuICB9XG5cbiAgc3VibWl0Rm9ybSgpIHtcbiAgICBpZiAodGhpcy5mb3JtLmludmFsaWQpIHJldHVybjtcblxuICAgIGNvbnN0IHJlcXVlc3QgPSB0aGlzLnNlbGVjdGVkXG4gICAgICA/IHRoaXMuc2VydmljZS51cGRhdGUodGhpcy5zZWxlY3RlZC5pZCwge1xuICAgICAgICAgIC4uLnRoaXMuZm9ybS52YWx1ZSxcbiAgICAgICAgICBjb25jdXJyZW5jeVN0YW1wOiB0aGlzLnNlbGVjdGVkLmNvbmN1cnJlbmN5U3RhbXAsXG4gICAgICAgIH0pXG4gICAgICA6IHRoaXMuc2VydmljZS5jcmVhdGUodGhpcy5mb3JtLnZhbHVlKTtcblxuICAgIHRoaXMuaXNNb2RhbEJ1c3kgPSB0cnVlO1xuXG4gICAgcmVxdWVzdFxuICAgICAgLnBpcGUoXG4gICAgICAgIGZpbmFsaXplKCgpID0+ICh0aGlzLmlzTW9kYWxCdXN5ID0gZmFsc2UpKSxcbiAgICAgICAgdGFwKCgpID0+IHRoaXMuaGlkZUZvcm0oKSlcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUodGhpcy5saXN0LmdldCk7XG4gIH1cblxuICBjcmVhdGUoKSB7XG4gICAgdGhpcy5zZWxlY3RlZCA9IHVuZGVmaW5lZDtcbiAgICB0aGlzLnNob3dGb3JtKCk7XG4gIH1cblxuICB1cGRhdGUocmVjb3JkOiBGdWVsSW50ZWdyYXRpb25Mb2dEdG8pIHtcbiAgICB0aGlzLnNlbGVjdGVkID0gcmVjb3JkO1xuICAgIHRoaXMuc2hvd0Zvcm0oKTtcbiAgfVxuXG4gIGRlbGV0ZShyZWNvcmQ6IEZ1ZWxJbnRlZ3JhdGlvbkxvZ0R0bykge1xuICAgIHRoaXMuY29uZmlybWF0aW9uXG4gICAgICAud2FybignT3ZvbHQ6OkRlbGV0ZUNvbmZpcm1hdGlvbk1lc3NhZ2UnLCAnT3ZvbHQ6OkFyZVlvdVN1cmUnLCB7XG4gICAgICAgIG1lc3NhZ2VMb2NhbGl6YXRpb25QYXJhbXM6IFtdLFxuICAgICAgfSlcbiAgICAgIC5waXBlKFxuICAgICAgICBmaWx0ZXIoc3RhdHVzID0+IHN0YXR1cyA9PT0gQ29uZmlybWF0aW9uLlN0YXR1cy5jb25maXJtKSxcbiAgICAgICAgc3dpdGNoTWFwKCgpID0+IHRoaXMuc2VydmljZS5kZWxldGUocmVjb3JkLmlkKSlcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUodGhpcy5saXN0LmdldCk7XG4gIH1cbn1cbiIsIjxhYnAtcGFnZSBbdGl0bGVdPVwiJ092b2x0OjpGdWVsSW50ZWdyYXRpb25Mb2dzJyB8IGFicExvY2FsaXphdGlvblwiPlxuICA8YWJwLXBhZ2UtdG9vbGJhci1jb250YWluZXIgY2xhc3M9XCJjb2xcIj5cbiAgICA8ZGl2IGNsYXNzPVwidGV4dC1sZy1lbmQgcHQtMlwiPlxuICAgICAgPGJ1dHRvblxuICAgICAgICAqYWJwUGVybWlzc2lvbj1cIidPdm9sdC5GdWVsSW50ZWdyYXRpb25Mb2dzLkNyZWF0ZSdcIlxuICAgICAgICBjbGFzcz1cImJ0biBidG4tcHJpbWFyeSBidG4tc21cIlxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgKGNsaWNrKT1cImNyZWF0ZSgpXCJcbiAgICAgID5cbiAgICAgICAgPGkgY2xhc3M9XCJmYSBmYS1wbHVzIG1lLTFcIiBhcmlhLWhpZGRlbj1cInRydWVcIj48L2k+XG4gICAgICAgIHt7ICdPdm9sdDo6TmV3RnVlbEludGVncmF0aW9uTG9nJyB8IGFicExvY2FsaXphdGlvbiB9fVxuICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvYWJwLXBhZ2UtdG9vbGJhci1jb250YWluZXI+XG5cbiAgPGFicC1hZHZhbmNlZC1lbnRpdHktZmlsdGVycyBsb2NhbGl6YXRpb25Tb3VyY2VOYW1lPVwiT3ZvbHRcIiBbbGlzdF09XCJsaXN0XCI+XG4gICAgPGFicC1hZHZhbmNlZC1lbnRpdHktZmlsdGVycy1mb3JtPlxuICAgICAgPGZvcm0gI2ZpbHRlckZvcm0gKGtleXVwLmVudGVyKT1cImxpc3QuZ2V0KClcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtMTIgY29sLXNtLWF1dG9cIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYi0zXCI+XG4gICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tbGFiZWxcIiBmb3I9XCJwYXRoRmlsdGVyXCI+XG4gICAgICAgICAgICAgICAge3sgJ092b2x0OjpQYXRoJyB8IGFicExvY2FsaXphdGlvbiB9fVxuICAgICAgICAgICAgICA8L2xhYmVsPlxuXG4gICAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICAgIGlkPVwicGF0aEZpbHRlclwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxuICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiZmlsdGVycy5wYXRoXCJcbiAgICAgICAgICAgICAgICBbbmdNb2RlbE9wdGlvbnNdPVwieyBzdGFuZGFsb25lOiB0cnVlIH1cIlxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMiBjb2wtc20tYXV0b1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1iLTNcIj5cbiAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1sYWJlbFwiIGZvcj1cIm1ldGhvZEZpbHRlclwiPlxuICAgICAgICAgICAgICAgIHt7ICdPdm9sdDo6TWV0aG9kJyB8IGFicExvY2FsaXphdGlvbiB9fVxuICAgICAgICAgICAgICA8L2xhYmVsPlxuXG4gICAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICAgIGlkPVwibWV0aG9kRmlsdGVyXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbFwiXG4gICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJmaWx0ZXJzLm1ldGhvZFwiXG4gICAgICAgICAgICAgICAgW25nTW9kZWxPcHRpb25zXT1cInsgc3RhbmRhbG9uZTogdHJ1ZSB9XCJcbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtMTIgY29sLXNtLWF1dG9cIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYi0zXCI+XG4gICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tbGFiZWxcIiBmb3I9XCJyZXF1ZXN0Qm9keUZpbHRlclwiPlxuICAgICAgICAgICAgICAgIHt7ICdPdm9sdDo6UmVxdWVzdEJvZHknIHwgYWJwTG9jYWxpemF0aW9uIH19XG4gICAgICAgICAgICAgIDwvbGFiZWw+XG5cbiAgICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgaWQ9XCJyZXF1ZXN0Qm9keUZpbHRlclwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxuICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiZmlsdGVycy5yZXF1ZXN0Qm9keVwiXG4gICAgICAgICAgICAgICAgW25nTW9kZWxPcHRpb25zXT1cInsgc3RhbmRhbG9uZTogdHJ1ZSB9XCJcbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtMTIgY29sLXNtLWF1dG9cIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYi0zXCI+XG4gICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tbGFiZWxcIiBmb3I9XCJyZXNwb25zZUJvZHlGaWx0ZXJcIj5cbiAgICAgICAgICAgICAgICB7eyAnT3ZvbHQ6OlJlc3BvbnNlQm9keScgfCBhYnBMb2NhbGl6YXRpb24gfX1cbiAgICAgICAgICAgICAgPC9sYWJlbD5cblxuICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICBpZD1cInJlc3BvbnNlQm9keUZpbHRlclwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxuICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiZmlsdGVycy5yZXNwb25zZUJvZHlcIlxuICAgICAgICAgICAgICAgIFtuZ01vZGVsT3B0aW9uc109XCJ7IHN0YW5kYWxvbmU6IHRydWUgfVwiXG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIGNvbC1zbS1hdXRvXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWItM1wiPlxuICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJmb3JtLWxhYmVsXCIgZm9yPVwic3RhdHVzQ29kZUZpbHRlclwiPlxuICAgICAgICAgICAgICAgIHt7ICdPdm9sdDo6U3RhdHVzQ29kZScgfCBhYnBMb2NhbGl6YXRpb24gfX1cbiAgICAgICAgICAgICAgPC9sYWJlbD5cblxuICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICBpZD1cInN0YXR1c0NvZGVGaWx0ZXJcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cImZpbHRlcnMuc3RhdHVzQ29kZVwiXG4gICAgICAgICAgICAgICAgW25nTW9kZWxPcHRpb25zXT1cInsgc3RhbmRhbG9uZTogdHJ1ZSB9XCJcbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtMTIgY29sLXNtLWF1dG9cIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYi0zXCI+XG4gICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tbGFiZWxcIiBmb3I9XCJtaW5SZXF1ZXN0VGltZVwiPlxuICAgICAgICAgICAgICAgIHt7ICdPdm9sdDo6TWluUmVxdWVzdFRpbWUnIHwgYWJwTG9jYWxpemF0aW9uIH19XG4gICAgICAgICAgICAgIDwvbGFiZWw+XG5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImlucHV0LWdyb3VwXCIgdmFsaWRhdGlvblRhcmdldD5cbiAgICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICAgIGlkPVwibWluUmVxdWVzdFRpbWVcIlxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxuICAgICAgICAgICAgICAgICAgI21pblJlcXVlc3RUaW1lSW5wdXRcbiAgICAgICAgICAgICAgICAgICNtaW5SZXF1ZXN0VGltZURhdGVwaWNrZXI9XCJuZ2JEYXRlcGlja2VyXCJcbiAgICAgICAgICAgICAgICAgIG5hbWU9XCJtaW5SZXF1ZXN0VGltZVwiXG4gICAgICAgICAgICAgICAgICBuZ2JEYXRlcGlja2VyXG4gICAgICAgICAgICAgICAgICBjb250YWluZXI9XCJib2R5XCJcbiAgICAgICAgICAgICAgICAgIHJlYWRvbmx5XG4gICAgICAgICAgICAgICAgICAoY2xpY2spPVwibWluUmVxdWVzdFRpbWVEYXRlcGlja2VyLnRvZ2dsZSgpXCJcbiAgICAgICAgICAgICAgICAgIChrZXl1cC5zcGFjZSk9XCJtaW5SZXF1ZXN0VGltZURhdGVwaWNrZXIudG9nZ2xlKClcIlxuICAgICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJmaWx0ZXJzLnJlcXVlc3RUaW1lTWluXCJcbiAgICAgICAgICAgICAgICAgIFtuZ01vZGVsT3B0aW9uc109XCJ7IHN0YW5kYWxvbmU6IHRydWUgfVwiXG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwibWluUmVxdWVzdFRpbWVJbnB1dC52YWx1ZVwiIGNsYXNzPVwiaW5wdXQtZ3JvdXAtYXBwZW5kXCI+XG4gICAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1saW5rIHB4LTJcIlxuICAgICAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgICAgW3RpdGxlXT1cIidBYnBVaTo6Q2xlYXInIHwgYWJwTG9jYWxpemF0aW9uXCJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIlxuICAgICAgICAgICAgICAgICAgICAgIG1pblJlcXVlc3RUaW1lRGF0ZXBpY2tlci53cml0ZVZhbHVlKG51bGwpO1xuICAgICAgICAgICAgICAgICAgICAgIG1pblJlcXVlc3RUaW1lRGF0ZXBpY2tlci5tYW51YWxEYXRlQ2hhbmdlKG51bGwsIHRydWUpXG4gICAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiZmEgZmEtdGltZXNcIiBhcmlhLWhpZGRlbj1cInRydWVcIj48L2k+XG4gICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtMTIgY29sLXNtLWF1dG9cIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYi0zXCI+XG4gICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tbGFiZWxcIiBmb3I9XCJtYXhSZXF1ZXN0VGltZVwiPlxuICAgICAgICAgICAgICAgIHt7ICdPdm9sdDo6TWF4UmVxdWVzdFRpbWUnIHwgYWJwTG9jYWxpemF0aW9uIH19XG4gICAgICAgICAgICAgIDwvbGFiZWw+XG5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImlucHV0LWdyb3VwXCIgdmFsaWRhdGlvblRhcmdldD5cbiAgICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICAgIGlkPVwibWF4UmVxdWVzdFRpbWVcIlxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxuICAgICAgICAgICAgICAgICAgI21heFJlcXVlc3RUaW1lSW5wdXRcbiAgICAgICAgICAgICAgICAgICNtYXhSZXF1ZXN0VGltZURhdGVwaWNrZXI9XCJuZ2JEYXRlcGlja2VyXCJcbiAgICAgICAgICAgICAgICAgIG5hbWU9XCJtYXhSZXF1ZXN0VGltZVwiXG4gICAgICAgICAgICAgICAgICBuZ2JEYXRlcGlja2VyXG4gICAgICAgICAgICAgICAgICByZWFkb25seVxuICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm1heFJlcXVlc3RUaW1lRGF0ZXBpY2tlci50b2dnbGUoKVwiXG4gICAgICAgICAgICAgICAgICAoa2V5dXAuc3BhY2UpPVwibWF4UmVxdWVzdFRpbWVEYXRlcGlja2VyLnRvZ2dsZSgpXCJcbiAgICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiZmlsdGVycy5yZXF1ZXN0VGltZU1heFwiXG4gICAgICAgICAgICAgICAgICBbbmdNb2RlbE9wdGlvbnNdPVwieyBzdGFuZGFsb25lOiB0cnVlIH1cIlxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIm1heFJlcXVlc3RUaW1lSW5wdXQudmFsdWVcIiBjbGFzcz1cImlucHV0LWdyb3VwLWFwcGVuZFwiPlxuICAgICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG4tbGluayBweC0yXCJcbiAgICAgICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgIFt0aXRsZV09XCInQWJwVWk6OkNsZWFyJyB8IGFicExvY2FsaXphdGlvblwiXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJcbiAgICAgICAgICAgICAgICAgICAgICBtYXhSZXF1ZXN0VGltZURhdGVwaWNrZXIud3JpdGVWYWx1ZShudWxsKTtcbiAgICAgICAgICAgICAgICAgICAgICBtYXhSZXF1ZXN0VGltZURhdGVwaWNrZXIubWFudWFsRGF0ZUNoYW5nZShudWxsLCB0cnVlKVxuICAgICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImZhIGZhLXRpbWVzXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9pPlxuICAgICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMiBjb2wtc20tYXV0b1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1iLTNcIj5cbiAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1sYWJlbFwiIGZvcj1cIm1pblJlc3BvbnNlVGltZVwiPlxuICAgICAgICAgICAgICAgIHt7ICdPdm9sdDo6TWluUmVzcG9uc2VUaW1lJyB8IGFicExvY2FsaXphdGlvbiB9fVxuICAgICAgICAgICAgICA8L2xhYmVsPlxuXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbnB1dC1ncm91cFwiIHZhbGlkYXRpb25UYXJnZXQ+XG4gICAgICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgICBpZD1cIm1pblJlc3BvbnNlVGltZVwiXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbFwiXG4gICAgICAgICAgICAgICAgICAjbWluUmVzcG9uc2VUaW1lSW5wdXRcbiAgICAgICAgICAgICAgICAgICNtaW5SZXNwb25zZVRpbWVEYXRlcGlja2VyPVwibmdiRGF0ZXBpY2tlclwiXG4gICAgICAgICAgICAgICAgICBuYW1lPVwibWluUmVzcG9uc2VUaW1lXCJcbiAgICAgICAgICAgICAgICAgIG5nYkRhdGVwaWNrZXJcbiAgICAgICAgICAgICAgICAgIGNvbnRhaW5lcj1cImJvZHlcIlxuICAgICAgICAgICAgICAgICAgcmVhZG9ubHlcbiAgICAgICAgICAgICAgICAgIChjbGljayk9XCJtaW5SZXNwb25zZVRpbWVEYXRlcGlja2VyLnRvZ2dsZSgpXCJcbiAgICAgICAgICAgICAgICAgIChrZXl1cC5zcGFjZSk9XCJtaW5SZXNwb25zZVRpbWVEYXRlcGlja2VyLnRvZ2dsZSgpXCJcbiAgICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiZmlsdGVycy5yZXNwb25zZVRpbWVNaW5cIlxuICAgICAgICAgICAgICAgICAgW25nTW9kZWxPcHRpb25zXT1cInsgc3RhbmRhbG9uZTogdHJ1ZSB9XCJcbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJtaW5SZXNwb25zZVRpbWVJbnB1dC52YWx1ZVwiIGNsYXNzPVwiaW5wdXQtZ3JvdXAtYXBwZW5kXCI+XG4gICAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1saW5rIHB4LTJcIlxuICAgICAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgICAgW3RpdGxlXT1cIidBYnBVaTo6Q2xlYXInIHwgYWJwTG9jYWxpemF0aW9uXCJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIlxuICAgICAgICAgICAgICAgICAgICAgIG1pblJlc3BvbnNlVGltZURhdGVwaWNrZXIud3JpdGVWYWx1ZShudWxsKTtcbiAgICAgICAgICAgICAgICAgICAgICBtaW5SZXNwb25zZVRpbWVEYXRlcGlja2VyLm1hbnVhbERhdGVDaGFuZ2UobnVsbCwgdHJ1ZSlcbiAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYSBmYS10aW1lc1wiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPjwvaT5cbiAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMiBjb2wtc20tYXV0b1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1iLTNcIj5cbiAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1sYWJlbFwiIGZvcj1cIm1heFJlc3BvbnNlVGltZVwiPlxuICAgICAgICAgICAgICAgIHt7ICdPdm9sdDo6TWF4UmVzcG9uc2VUaW1lJyB8IGFicExvY2FsaXphdGlvbiB9fVxuICAgICAgICAgICAgICA8L2xhYmVsPlxuXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbnB1dC1ncm91cFwiIHZhbGlkYXRpb25UYXJnZXQ+XG4gICAgICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgICBpZD1cIm1heFJlc3BvbnNlVGltZVwiXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbFwiXG4gICAgICAgICAgICAgICAgICAjbWF4UmVzcG9uc2VUaW1lSW5wdXRcbiAgICAgICAgICAgICAgICAgICNtYXhSZXNwb25zZVRpbWVEYXRlcGlja2VyPVwibmdiRGF0ZXBpY2tlclwiXG4gICAgICAgICAgICAgICAgICBuYW1lPVwibWF4UmVzcG9uc2VUaW1lXCJcbiAgICAgICAgICAgICAgICAgIG5nYkRhdGVwaWNrZXJcbiAgICAgICAgICAgICAgICAgIHJlYWRvbmx5XG4gICAgICAgICAgICAgICAgICAoY2xpY2spPVwibWF4UmVzcG9uc2VUaW1lRGF0ZXBpY2tlci50b2dnbGUoKVwiXG4gICAgICAgICAgICAgICAgICAoa2V5dXAuc3BhY2UpPVwibWF4UmVzcG9uc2VUaW1lRGF0ZXBpY2tlci50b2dnbGUoKVwiXG4gICAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cImZpbHRlcnMucmVzcG9uc2VUaW1lTWF4XCJcbiAgICAgICAgICAgICAgICAgIFtuZ01vZGVsT3B0aW9uc109XCJ7IHN0YW5kYWxvbmU6IHRydWUgfVwiXG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwibWF4UmVzcG9uc2VUaW1lSW5wdXQudmFsdWVcIiBjbGFzcz1cImlucHV0LWdyb3VwLWFwcGVuZFwiPlxuICAgICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG4tbGluayBweC0yXCJcbiAgICAgICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgIFt0aXRsZV09XCInQWJwVWk6OkNsZWFyJyB8IGFicExvY2FsaXphdGlvblwiXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJcbiAgICAgICAgICAgICAgICAgICAgICBtYXhSZXNwb25zZVRpbWVEYXRlcGlja2VyLndyaXRlVmFsdWUobnVsbCk7XG4gICAgICAgICAgICAgICAgICAgICAgbWF4UmVzcG9uc2VUaW1lRGF0ZXBpY2tlci5tYW51YWxEYXRlQ2hhbmdlKG51bGwsIHRydWUpXG4gICAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiZmEgZmEtdGltZXNcIiBhcmlhLWhpZGRlbj1cInRydWVcIj48L2k+XG4gICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtMTIgY29sLXNtLWF1dG8gYWxpZ24tc2VsZi1lbmQgbWItM1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTYgY29sLXNtLWF1dG8gZC1ncmlkXCI+XG4gICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLW91dGxpbmUtcHJpbWFyeVwiIChjbGljayk9XCJjbGVhckZpbHRlcnMoKVwiPlxuICAgICAgICAgICAgICAgICAgPHNwYW4+e3sgJ0FicFVpOjpDbGVhcicgfCBhYnBMb2NhbGl6YXRpb24gfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTYgY29sLXNtLWF1dG8gZC1ncmlkXCI+XG4gICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLXByaW1hcnlcIiAoY2xpY2spPVwibGlzdC5nZXQoKVwiPlxuICAgICAgICAgICAgICAgICAgPHNwYW4+e3sgJ0FicFVpOjpSZWZyZXNoJyB8IGFicExvY2FsaXphdGlvbiB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Zvcm0+XG4gICAgPC9hYnAtYWR2YW5jZWQtZW50aXR5LWZpbHRlcnMtZm9ybT5cbiAgPC9hYnAtYWR2YW5jZWQtZW50aXR5LWZpbHRlcnM+XG5cbiAgPGRpdiBjbGFzcz1cImNhcmRcIj5cbiAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5XCI+XG4gICAgICA8bmd4LWRhdGF0YWJsZSBbcm93c109XCJkYXRhLml0ZW1zXCIgW2NvdW50XT1cImRhdGEudG90YWxDb3VudFwiIFtsaXN0XT1cImxpc3RcIiBkZWZhdWx0PlxuICAgICAgICA8bmd4LWRhdGF0YWJsZS1jb2x1bW5cbiAgICAgICAgICBbbmFtZV09XCInQWJwVWk6OkFjdGlvbnMnIHwgYWJwTG9jYWxpemF0aW9uXCJcbiAgICAgICAgICBbbWF4V2lkdGhdPVwiMTUwXCJcbiAgICAgICAgICBbd2lkdGhdPVwiMTUwXCJcbiAgICAgICAgICBbc29ydGFibGVdPVwiZmFsc2VcIlxuICAgICAgICA+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIGxldC1yb3c9XCJyb3dcIiBsZXQtaT1cInJvd0luZGV4XCIgbmd4LWRhdGF0YWJsZS1jZWxsLXRlbXBsYXRlPlxuICAgICAgICAgICAgPGRpdiBuZ2JEcm9wZG93biBjb250YWluZXI9XCJib2R5XCIgY2xhc3M9XCJkLWlubGluZS1ibG9ja1wiPlxuICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJidG4gYnRuLXByaW1hcnkgYnRuLXNtIGRyb3Bkb3duLXRvZ2dsZVwiXG4gICAgICAgICAgICAgICAgZGF0YS10b2dnbGU9XCJkcm9wZG93blwiXG4gICAgICAgICAgICAgICAgYXJpYS1oYXNwb3B1cD1cInRydWVcIlxuICAgICAgICAgICAgICAgIG5nYkRyb3Bkb3duVG9nZ2xlXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImZhIGZhLWNvZyBtZS0xXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9pPlxuICAgICAgICAgICAgICAgIHt7ICdBYnBVaTo6QWN0aW9ucycgfCBhYnBMb2NhbGl6YXRpb24gfX1cbiAgICAgICAgICAgICAgPC9idXR0b24+XG5cbiAgICAgICAgICAgICAgPGRpdiBuZ2JEcm9wZG93bk1lbnU+XG4gICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgbmdiRHJvcGRvd25JdGVtXG4gICAgICAgICAgICAgICAgICAqYWJwUGVybWlzc2lvbj1cIidPdm9sdC5GdWVsSW50ZWdyYXRpb25Mb2dzLkVkaXQnXCJcbiAgICAgICAgICAgICAgICAgIChjbGljayk9XCJ1cGRhdGUocm93KVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge3sgJ0FicFVpOjpFZGl0JyB8IGFicExvY2FsaXphdGlvbiB9fVxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuXG4gICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgbmdiRHJvcGRvd25JdGVtXG4gICAgICAgICAgICAgICAgICAqYWJwUGVybWlzc2lvbj1cIidPdm9sdC5GdWVsSW50ZWdyYXRpb25Mb2dzLkRlbGV0ZSdcIlxuICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImRlbGV0ZShyb3cpXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7eyAnQWJwVWk6OkRlbGV0ZScgfCBhYnBMb2NhbGl6YXRpb24gfX1cbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8L25neC1kYXRhdGFibGUtY29sdW1uPlxuXG4gICAgICAgIDxuZ3gtZGF0YXRhYmxlLWNvbHVtbiBuYW1lPVwie3sgJ092b2x0OjpQYXRoJyB8IGFicExvY2FsaXphdGlvbiB9fVwiIHByb3A9XCJwYXRoXCI+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIGxldC1yb3c9XCJyb3dcIiBuZ3gtZGF0YXRhYmxlLWNlbGwtdGVtcGxhdGU+XG4gICAgICAgICAgICB7eyByb3cucGF0aCB9fVxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvbmd4LWRhdGF0YWJsZS1jb2x1bW4+XG5cbiAgICAgICAgPG5neC1kYXRhdGFibGUtY29sdW1uIG5hbWU9XCJ7eyAnT3ZvbHQ6Ok1ldGhvZCcgfCBhYnBMb2NhbGl6YXRpb24gfX1cIiBwcm9wPVwibWV0aG9kXCI+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIGxldC1yb3c9XCJyb3dcIiBuZ3gtZGF0YXRhYmxlLWNlbGwtdGVtcGxhdGU+XG4gICAgICAgICAgICB7eyByb3cubWV0aG9kIH19XG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9uZ3gtZGF0YXRhYmxlLWNvbHVtbj5cblxuICAgICAgICA8bmd4LWRhdGF0YWJsZS1jb2x1bW5cbiAgICAgICAgICBuYW1lPVwie3sgJ092b2x0OjpSZXF1ZXN0Qm9keScgfCBhYnBMb2NhbGl6YXRpb24gfX1cIlxuICAgICAgICAgIHByb3A9XCJyZXF1ZXN0Qm9keVwiXG4gICAgICAgID5cbiAgICAgICAgICA8bmctdGVtcGxhdGUgbGV0LXJvdz1cInJvd1wiIG5neC1kYXRhdGFibGUtY2VsbC10ZW1wbGF0ZT5cbiAgICAgICAgICAgIHt7IHJvdy5yZXF1ZXN0Qm9keSB9fVxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvbmd4LWRhdGF0YWJsZS1jb2x1bW4+XG5cbiAgICAgICAgPG5neC1kYXRhdGFibGUtY29sdW1uXG4gICAgICAgICAgbmFtZT1cInt7ICdPdm9sdDo6UmVzcG9uc2VCb2R5JyB8IGFicExvY2FsaXphdGlvbiB9fVwiXG4gICAgICAgICAgcHJvcD1cInJlc3BvbnNlQm9keVwiXG4gICAgICAgID5cbiAgICAgICAgICA8bmctdGVtcGxhdGUgbGV0LXJvdz1cInJvd1wiIG5neC1kYXRhdGFibGUtY2VsbC10ZW1wbGF0ZT5cbiAgICAgICAgICAgIHt7IHJvdy5yZXNwb25zZUJvZHkgfX1cbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8L25neC1kYXRhdGFibGUtY29sdW1uPlxuXG4gICAgICAgIDxuZ3gtZGF0YXRhYmxlLWNvbHVtbiBuYW1lPVwie3sgJ092b2x0OjpTdGF0dXNDb2RlJyB8IGFicExvY2FsaXphdGlvbiB9fVwiIHByb3A9XCJzdGF0dXNDb2RlXCI+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIGxldC1yb3c9XCJyb3dcIiBuZ3gtZGF0YXRhYmxlLWNlbGwtdGVtcGxhdGU+XG4gICAgICAgICAgICB7eyByb3cuc3RhdHVzQ29kZSB9fVxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvbmd4LWRhdGF0YWJsZS1jb2x1bW4+XG5cbiAgICAgICAgPG5neC1kYXRhdGFibGUtY29sdW1uXG4gICAgICAgICAgbmFtZT1cInt7ICdPdm9sdDo6UmVxdWVzdFRpbWUnIHwgYWJwTG9jYWxpemF0aW9uIH19XCJcbiAgICAgICAgICBwcm9wPVwicmVxdWVzdFRpbWVcIlxuICAgICAgICA+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIGxldC1yb3c9XCJyb3dcIiBuZ3gtZGF0YXRhYmxlLWNlbGwtdGVtcGxhdGU+XG4gICAgICAgICAgICB7eyByb3cucmVxdWVzdFRpbWUgfCBkYXRlIH19XG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9uZ3gtZGF0YXRhYmxlLWNvbHVtbj5cblxuICAgICAgICA8bmd4LWRhdGF0YWJsZS1jb2x1bW5cbiAgICAgICAgICBuYW1lPVwie3sgJ092b2x0OjpSZXNwb25zZVRpbWUnIHwgYWJwTG9jYWxpemF0aW9uIH19XCJcbiAgICAgICAgICBwcm9wPVwicmVzcG9uc2VUaW1lXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSBsZXQtcm93PVwicm93XCIgbmd4LWRhdGF0YWJsZS1jZWxsLXRlbXBsYXRlPlxuICAgICAgICAgICAge3sgcm93LnJlc3BvbnNlVGltZSB8IGRhdGUgfX1cbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8L25neC1kYXRhdGFibGUtY29sdW1uPlxuICAgICAgPC9uZ3gtZGF0YXRhYmxlPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvYWJwLXBhZ2U+XG5cbjxhYnAtbW9kYWwgW2J1c3ldPVwiaXNNb2RhbEJ1c3lcIiBbKHZpc2libGUpXT1cImlzTW9kYWxPcGVuXCI+XG4gIDxuZy10ZW1wbGF0ZSAjYWJwSGVhZGVyPlxuICAgIDxoMz5cbiAgICAgIHt7IChzZWxlY3RlZCA/ICdBYnBVaTo6RWRpdCcgOiAnT3ZvbHQ6Ok5ld0Z1ZWxJbnRlZ3JhdGlvbkxvZycpIHwgYWJwTG9jYWxpemF0aW9uIH19XG4gICAgPC9oMz5cbiAgPC9uZy10ZW1wbGF0ZT5cblxuICA8bmctdGVtcGxhdGUgI2FicEJvZHk+XG4gICAgPGZvcm0gW2Zvcm1Hcm91cF09XCJmb3JtXCIgaWQ9XCJmdWVsLWludGVncmF0aW9uLWxvZ1wiIChuZ1N1Ym1pdCk9XCJzdWJtaXRGb3JtKClcIiB2YWxpZGF0ZU9uU3VibWl0PlxuICAgICAgPGRpdiBjbGFzcz1cIm10LTIgZmFkZS1pbi10b3BcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm1iLTNcIj5cbiAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJmb3JtLWxhYmVsXCIgZm9yPVwiZnVlbC1pbnRlZ3JhdGlvbi1sb2ctcGF0aFwiPlxuICAgICAgICAgICAge3sgJ092b2x0OjpQYXRoJyB8IGFicExvY2FsaXphdGlvbiB9fVxuICAgICAgICAgIDwvbGFiZWw+XG5cbiAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgIGlkPVwiZnVlbC1pbnRlZ3JhdGlvbi1sb2ctcGF0aFwiXG4gICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJwYXRoXCJcbiAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgICAgICAgIGF1dG9mb2N1c1xuICAgICAgICAgIC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwibWItM1wiPlxuICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tbGFiZWxcIiBmb3I9XCJmdWVsLWludGVncmF0aW9uLWxvZy1tZXRob2RcIj5cbiAgICAgICAgICAgIHt7ICdPdm9sdDo6TWV0aG9kJyB8IGFicExvY2FsaXphdGlvbiB9fVxuICAgICAgICAgIDwvbGFiZWw+XG5cbiAgICAgICAgICA8aW5wdXQgaWQ9XCJmdWVsLWludGVncmF0aW9uLWxvZy1tZXRob2RcIiBmb3JtQ29udHJvbE5hbWU9XCJtZXRob2RcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwibWItM1wiPlxuICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tbGFiZWxcIiBmb3I9XCJmdWVsLWludGVncmF0aW9uLWxvZy1yZXF1ZXN0LWJvZHlcIj5cbiAgICAgICAgICAgIHt7ICdPdm9sdDo6UmVxdWVzdEJvZHknIHwgYWJwTG9jYWxpemF0aW9uIH19XG4gICAgICAgICAgPC9sYWJlbD5cblxuICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgaWQ9XCJmdWVsLWludGVncmF0aW9uLWxvZy1yZXF1ZXN0LWJvZHlcIlxuICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwicmVxdWVzdEJvZHlcIlxuICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxuICAgICAgICAgIC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwibWItM1wiPlxuICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tbGFiZWxcIiBmb3I9XCJmdWVsLWludGVncmF0aW9uLWxvZy1yZXNwb25zZS1ib2R5XCI+XG4gICAgICAgICAgICB7eyAnT3ZvbHQ6OlJlc3BvbnNlQm9keScgfCBhYnBMb2NhbGl6YXRpb24gfX1cbiAgICAgICAgICA8L2xhYmVsPlxuXG4gICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICBpZD1cImZ1ZWwtaW50ZWdyYXRpb24tbG9nLXJlc3BvbnNlLWJvZHlcIlxuICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwicmVzcG9uc2VCb2R5XCJcbiAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgICAgICAvPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm1iLTNcIj5cbiAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJmb3JtLWxhYmVsXCIgZm9yPVwiZnVlbC1pbnRlZ3JhdGlvbi1sb2ctc3RhdHVzLWNvZGVcIj5cbiAgICAgICAgICAgIHt7ICdPdm9sdDo6U3RhdHVzQ29kZScgfCBhYnBMb2NhbGl6YXRpb24gfX1cbiAgICAgICAgICA8L2xhYmVsPlxuXG4gICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICBpZD1cImZ1ZWwtaW50ZWdyYXRpb24tbG9nLXN0YXR1cy1jb2RlXCJcbiAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInN0YXR1c0NvZGVcIlxuICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxuICAgICAgICAgIC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwibWItM1wiPlxuICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tbGFiZWxcIiBmb3I9XCJmdWVsLWludGVncmF0aW9uLWxvZy1yZXF1ZXN0LXRpbWVcIj5cbiAgICAgICAgICAgIHt7ICdPdm9sdDo6UmVxdWVzdFRpbWUnIHwgYWJwTG9jYWxpemF0aW9uIH19XG4gICAgICAgICAgPC9sYWJlbD5cblxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbnB1dC1ncm91cFwiIHZhbGlkYXRpb25UYXJnZXQ+XG4gICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgcmVhZG9ubHlcbiAgICAgICAgICAgICAgaWQ9XCJmdWVsLWludGVncmF0aW9uLWxvZy1yZXF1ZXN0LXRpbWVcIlxuICAgICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJyZXF1ZXN0VGltZVwiXG4gICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgICAgICAgICAgbmdiRGF0ZXBpY2tlclxuICAgICAgICAgICAgICAjcmVxdWVzdFRpbWVJbnB1dFxuICAgICAgICAgICAgICAjcmVxdWVzdFRpbWVEYXRlcGlja2VyPVwibmdiRGF0ZXBpY2tlclwiXG4gICAgICAgICAgICAgIChjbGljayk9XCJyZXF1ZXN0VGltZURhdGVwaWNrZXIub3BlbigpXCJcbiAgICAgICAgICAgICAgKGtleXVwLnNwYWNlKT1cInJlcXVlc3RUaW1lRGF0ZXBpY2tlci5vcGVuKClcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJyZXF1ZXN0VGltZUlucHV0LnZhbHVlXCIgY2xhc3M9XCJpbnB1dC1ncm91cC1hcHBlbmRcIj5cbiAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1saW5rIHB4LTJcIlxuICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgIFt0aXRsZV09XCInQWJwVWk6OkNsZWFyJyB8IGFicExvY2FsaXphdGlvblwiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cIlxuICAgICAgICAgICAgICAgICAgcmVxdWVzdFRpbWVEYXRlcGlja2VyLndyaXRlVmFsdWUobnVsbCk7XG4gICAgICAgICAgICAgICAgICByZXF1ZXN0VGltZURhdGVwaWNrZXIubWFudWFsRGF0ZUNoYW5nZShudWxsLCB0cnVlKVxuICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImZhIGZhLXRpbWVzXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9pPlxuICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm1iLTNcIj5cbiAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJmb3JtLWxhYmVsXCIgZm9yPVwiZnVlbC1pbnRlZ3JhdGlvbi1sb2ctcmVzcG9uc2UtdGltZVwiPlxuICAgICAgICAgICAge3sgJ092b2x0OjpSZXNwb25zZVRpbWUnIHwgYWJwTG9jYWxpemF0aW9uIH19XG4gICAgICAgICAgPC9sYWJlbD5cblxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbnB1dC1ncm91cFwiIHZhbGlkYXRpb25UYXJnZXQ+XG4gICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgcmVhZG9ubHlcbiAgICAgICAgICAgICAgaWQ9XCJmdWVsLWludGVncmF0aW9uLWxvZy1yZXNwb25zZS10aW1lXCJcbiAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwicmVzcG9uc2VUaW1lXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxuICAgICAgICAgICAgICBuZ2JEYXRlcGlja2VyXG4gICAgICAgICAgICAgICNyZXNwb25zZVRpbWVJbnB1dFxuICAgICAgICAgICAgICAjcmVzcG9uc2VUaW1lRGF0ZXBpY2tlcj1cIm5nYkRhdGVwaWNrZXJcIlxuICAgICAgICAgICAgICAoY2xpY2spPVwicmVzcG9uc2VUaW1lRGF0ZXBpY2tlci5vcGVuKClcIlxuICAgICAgICAgICAgICAoa2V5dXAuc3BhY2UpPVwicmVzcG9uc2VUaW1lRGF0ZXBpY2tlci5vcGVuKClcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJyZXNwb25zZVRpbWVJbnB1dC52YWx1ZVwiIGNsYXNzPVwiaW5wdXQtZ3JvdXAtYXBwZW5kXCI+XG4gICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG4tbGluayBweC0yXCJcbiAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICBbdGl0bGVdPVwiJ0FicFVpOjpDbGVhcicgfCBhYnBMb2NhbGl6YXRpb25cIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJcbiAgICAgICAgICAgICAgICAgIHJlc3BvbnNlVGltZURhdGVwaWNrZXIud3JpdGVWYWx1ZShudWxsKTtcbiAgICAgICAgICAgICAgICAgIHJlc3BvbnNlVGltZURhdGVwaWNrZXIubWFudWFsRGF0ZUNoYW5nZShudWxsLCB0cnVlKVxuICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImZhIGZhLXRpbWVzXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9pPlxuICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZm9ybT5cbiAgPC9uZy10ZW1wbGF0ZT5cblxuICA8bmctdGVtcGxhdGUgI2FicEZvb3Rlcj5cbiAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tc2Vjb25kYXJ5XCIgYWJwQ2xvc2U+XG4gICAgICB7eyAnQWJwVWk6OkNhbmNlbCcgfCBhYnBMb2NhbGl6YXRpb24gfX1cbiAgICA8L2J1dHRvbj5cblxuICAgIDxhYnAtYnV0dG9uIGljb25DbGFzcz1cImZhIGZhLWNoZWNrXCIgYnV0dG9uVHlwZT1cInN1Ym1pdFwiIGZvcm1OYW1lPVwiZnVlbC1pbnRlZ3JhdGlvbi1sb2dcIj5cbiAgICAgIHt7ICdBYnBVaTo6U2F2ZScgfCBhYnBMb2NhbGl6YXRpb24gfX1cbiAgICA8L2FicC1idXR0b24+XG4gIDwvbmctdGVtcGxhdGU+XG48L2FicC1tb2RhbD5cbiJdfQ==
@@ -0,0 +1,26 @@
1
+ import { AuthGuard, PermissionGuard } from '@abp/ng.core';
2
+ import { NgModule } from '@angular/core';
3
+ import { RouterModule } from '@angular/router';
4
+ import { FuelIntegrationLogComponent } from './components/fuel-integration-log.component';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/router";
7
+ const routes = [
8
+ {
9
+ path: '',
10
+ component: FuelIntegrationLogComponent,
11
+ canActivate: [AuthGuard, PermissionGuard],
12
+ },
13
+ ];
14
+ export class FuelIntegrationLogRoutingModule {
15
+ }
16
+ FuelIntegrationLogRoutingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FuelIntegrationLogRoutingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
17
+ FuelIntegrationLogRoutingModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: FuelIntegrationLogRoutingModule, imports: [i1.RouterModule], exports: [RouterModule] });
18
+ FuelIntegrationLogRoutingModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FuelIntegrationLogRoutingModule, imports: [RouterModule.forChild(routes), RouterModule] });
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FuelIntegrationLogRoutingModule, decorators: [{
20
+ type: NgModule,
21
+ args: [{
22
+ imports: [RouterModule.forChild(routes)],
23
+ exports: [RouterModule],
24
+ }]
25
+ }] });
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVlbC1pbnRlZ3JhdGlvbi1sb2ctcm91dGluZy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vdm9sdC9zcmMvbGliL2Z1ZWwtaW50ZWdyYXRpb24tbG9ncy9mdWVsLWludGVncmF0aW9uLWxvZy9mdWVsLWludGVncmF0aW9uLWxvZy1yb3V0aW5nLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMxRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQVUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQzs7O0FBRTFGLE1BQU0sTUFBTSxHQUFXO0lBQ3JCO1FBQ0UsSUFBSSxFQUFFLEVBQUU7UUFDUixTQUFTLEVBQUUsMkJBQTJCO1FBQ3RDLFdBQVcsRUFBRSxDQUFDLFNBQVMsRUFBRSxlQUFlLENBQUM7S0FDMUM7Q0FDRixDQUFDO0FBTUYsTUFBTSxPQUFPLCtCQUErQjs7NEhBQS9CLCtCQUErQjs2SEFBL0IsK0JBQStCLHdDQUZoQyxZQUFZOzZIQUVYLCtCQUErQixZQUhoQyxZQUFZLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUM3QixZQUFZOzJGQUVYLCtCQUErQjtrQkFKM0MsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO29CQUN4QyxPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7aUJBQ3hCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXV0aEd1YXJkLCBQZXJtaXNzaW9uR3VhcmQgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlck1vZHVsZSwgUm91dGVzIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IEZ1ZWxJbnRlZ3JhdGlvbkxvZ0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9mdWVsLWludGVncmF0aW9uLWxvZy5jb21wb25lbnQnO1xuXG5jb25zdCByb3V0ZXM6IFJvdXRlcyA9IFtcbiAge1xuICAgIHBhdGg6ICcnLFxuICAgIGNvbXBvbmVudDogRnVlbEludGVncmF0aW9uTG9nQ29tcG9uZW50LFxuICAgIGNhbkFjdGl2YXRlOiBbQXV0aEd1YXJkLCBQZXJtaXNzaW9uR3VhcmRdLFxuICB9LFxuXTtcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1JvdXRlck1vZHVsZS5mb3JDaGlsZChyb3V0ZXMpXSxcbiAgZXhwb3J0czogW1JvdXRlck1vZHVsZV0sXG59KVxuZXhwb3J0IGNsYXNzIEZ1ZWxJbnRlZ3JhdGlvbkxvZ1JvdXRpbmdNb2R1bGUge31cbiJdfQ==
@@ -0,0 +1,52 @@
1
+ import { CoreModule } from '@abp/ng.core';
2
+ import { ThemeSharedModule } from '@abp/ng.theme.shared';
3
+ import { NgModule } from '@angular/core';
4
+ import { NgbCollapseModule, NgbDatepickerModule, NgbDropdownModule, } from '@ng-bootstrap/ng-bootstrap';
5
+ import { NgxValidateCoreModule } from '@ngx-validate/core';
6
+ import { CommercialUiModule } from '@volo/abp.commercial.ng.ui';
7
+ import { PageModule } from '@abp/ng.components/page';
8
+ import { FuelIntegrationLogComponent } from './components/fuel-integration-log.component';
9
+ import { FuelIntegrationLogRoutingModule } from './fuel-integration-log-routing.module';
10
+ import * as i0 from "@angular/core";
11
+ export class FuelIntegrationLogModule {
12
+ }
13
+ FuelIntegrationLogModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FuelIntegrationLogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
14
+ FuelIntegrationLogModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: FuelIntegrationLogModule, declarations: [FuelIntegrationLogComponent], imports: [FuelIntegrationLogRoutingModule,
15
+ CoreModule,
16
+ ThemeSharedModule,
17
+ CommercialUiModule,
18
+ NgxValidateCoreModule,
19
+ NgbCollapseModule,
20
+ NgbDatepickerModule,
21
+ NgbDropdownModule,
22
+ PageModule] });
23
+ FuelIntegrationLogModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FuelIntegrationLogModule, imports: [FuelIntegrationLogRoutingModule,
24
+ CoreModule,
25
+ ThemeSharedModule,
26
+ CommercialUiModule,
27
+ NgxValidateCoreModule,
28
+ NgbCollapseModule,
29
+ NgbDatepickerModule,
30
+ NgbDropdownModule,
31
+ PageModule] });
32
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FuelIntegrationLogModule, decorators: [{
33
+ type: NgModule,
34
+ args: [{
35
+ declarations: [FuelIntegrationLogComponent],
36
+ imports: [
37
+ FuelIntegrationLogRoutingModule,
38
+ CoreModule,
39
+ ThemeSharedModule,
40
+ CommercialUiModule,
41
+ NgxValidateCoreModule,
42
+ NgbCollapseModule,
43
+ NgbDatepickerModule,
44
+ NgbDropdownModule,
45
+ PageModule,
46
+ ],
47
+ }]
48
+ }] });
49
+ export function loadFuelIntegrationLogModuleAsChild() {
50
+ return Promise.resolve(FuelIntegrationLogModule);
51
+ }
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVlbC1pbnRlZ3JhdGlvbi1sb2cubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb3ZvbHQvc3JjL2xpYi9mdWVsLWludGVncmF0aW9uLWxvZ3MvZnVlbC1pbnRlZ3JhdGlvbi1sb2cvZnVlbC1pbnRlZ3JhdGlvbi1sb2cubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDMUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLG1CQUFtQixFQUNuQixpQkFBaUIsR0FDbEIsTUFBTSw0QkFBNEIsQ0FBQztBQUNwQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUMzRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDckQsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDMUYsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7O0FBaUJ4RixNQUFNLE9BQU8sd0JBQXdCOztxSEFBeEIsd0JBQXdCO3NIQUF4Qix3QkFBd0IsaUJBZHBCLDJCQUEyQixhQUV4QywrQkFBK0I7UUFDL0IsVUFBVTtRQUNWLGlCQUFpQjtRQUNqQixrQkFBa0I7UUFDbEIscUJBQXFCO1FBQ3JCLGlCQUFpQjtRQUNqQixtQkFBbUI7UUFDbkIsaUJBQWlCO1FBRWpCLFVBQVU7c0hBR0Qsd0JBQXdCLFlBWmpDLCtCQUErQjtRQUMvQixVQUFVO1FBQ1YsaUJBQWlCO1FBQ2pCLGtCQUFrQjtRQUNsQixxQkFBcUI7UUFDckIsaUJBQWlCO1FBQ2pCLG1CQUFtQjtRQUNuQixpQkFBaUI7UUFFakIsVUFBVTsyRkFHRCx3QkFBd0I7a0JBZnBDLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsMkJBQTJCLENBQUM7b0JBQzNDLE9BQU8sRUFBRTt3QkFDUCwrQkFBK0I7d0JBQy9CLFVBQVU7d0JBQ1YsaUJBQWlCO3dCQUNqQixrQkFBa0I7d0JBQ2xCLHFCQUFxQjt3QkFDckIsaUJBQWlCO3dCQUNqQixtQkFBbUI7d0JBQ25CLGlCQUFpQjt3QkFFakIsVUFBVTtxQkFDWDtpQkFDRjs7QUFHRCxNQUFNLFVBQVUsbUNBQW1DO0lBQ2pELE9BQU8sT0FBTyxDQUFDLE9BQU8sQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO0FBQ25ELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb3JlTW9kdWxlIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcbmltcG9ydCB7IFRoZW1lU2hhcmVkTW9kdWxlIH0gZnJvbSAnQGFicC9uZy50aGVtZS5zaGFyZWQnO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIE5nYkNvbGxhcHNlTW9kdWxlLFxuICBOZ2JEYXRlcGlja2VyTW9kdWxlLFxuICBOZ2JEcm9wZG93bk1vZHVsZSxcbn0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xuaW1wb3J0IHsgTmd4VmFsaWRhdGVDb3JlTW9kdWxlIH0gZnJvbSAnQG5neC12YWxpZGF0ZS9jb3JlJztcbmltcG9ydCB7IENvbW1lcmNpYWxVaU1vZHVsZSB9IGZyb20gJ0B2b2xvL2FicC5jb21tZXJjaWFsLm5nLnVpJztcbmltcG9ydCB7IFBhZ2VNb2R1bGUgfSBmcm9tICdAYWJwL25nLmNvbXBvbmVudHMvcGFnZSc7XG5pbXBvcnQgeyBGdWVsSW50ZWdyYXRpb25Mb2dDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZnVlbC1pbnRlZ3JhdGlvbi1sb2cuY29tcG9uZW50JztcbmltcG9ydCB7IEZ1ZWxJbnRlZ3JhdGlvbkxvZ1JvdXRpbmdNb2R1bGUgfSBmcm9tICcuL2Z1ZWwtaW50ZWdyYXRpb24tbG9nLXJvdXRpbmcubW9kdWxlJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbRnVlbEludGVncmF0aW9uTG9nQ29tcG9uZW50XSxcbiAgaW1wb3J0czogW1xuICAgIEZ1ZWxJbnRlZ3JhdGlvbkxvZ1JvdXRpbmdNb2R1bGUsXG4gICAgQ29yZU1vZHVsZSxcbiAgICBUaGVtZVNoYXJlZE1vZHVsZSxcbiAgICBDb21tZXJjaWFsVWlNb2R1bGUsXG4gICAgTmd4VmFsaWRhdGVDb3JlTW9kdWxlLFxuICAgIE5nYkNvbGxhcHNlTW9kdWxlLFxuICAgIE5nYkRhdGVwaWNrZXJNb2R1bGUsXG4gICAgTmdiRHJvcGRvd25Nb2R1bGUsXG5cbiAgICBQYWdlTW9kdWxlLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBGdWVsSW50ZWdyYXRpb25Mb2dNb2R1bGUge31cblxuZXhwb3J0IGZ1bmN0aW9uIGxvYWRGdWVsSW50ZWdyYXRpb25Mb2dNb2R1bGVBc0NoaWxkKCkge1xuICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKEZ1ZWxJbnRlZ3JhdGlvbkxvZ01vZHVsZSk7XG59XG4iXX0=
@@ -3,6 +3,7 @@ import { RouterModule } from '@angular/router';
3
3
  import { OvoltComponent } from './components/ovolt.component';
4
4
  import { loadHitProcessLogModuleAsChild } from './components/hit-process-logs/hit-process-log.module';
5
5
  import { loadHitSystemParameterModuleAsChild } from './components/hit-system-parameters/hit-system-parameter.module';
6
+ import { loadHitFuelIntegrationLogModuleAsChild } from './components/hit-fuel-integration-logs/hit-fuel-integration-log.module';
6
7
  import * as i0 from "@angular/core";
7
8
  import * as i1 from "@angular/router";
8
9
  const routes = [
@@ -13,6 +14,7 @@ const routes = [
13
14
  },
14
15
  { path: 'process-logs', loadChildren: loadHitProcessLogModuleAsChild },
15
16
  { path: 'system-parameters', loadChildren: loadHitSystemParameterModuleAsChild },
17
+ { path: 'fuel-integration-logs', loadChildren: loadHitFuelIntegrationLogModuleAsChild },
16
18
  ];
17
19
  export class OvoltRoutingModule {
18
20
  }
@@ -26,4 +28,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
26
28
  exports: [RouterModule],
27
29
  }]
28
30
  }] });
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZvbHQtcm91dGluZy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9vdm9sdC9zcmMvbGliL292b2x0LXJvdXRpbmcubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBVSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUU5RCxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUN0RyxPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSxnRUFBZ0UsQ0FBQzs7O0FBRXJILE1BQU0sTUFBTSxHQUFXO0lBQ3JCO1FBQ0UsSUFBSSxFQUFFLEVBQUU7UUFDUixTQUFTLEVBQUUsTUFBTTtRQUNqQixTQUFTLEVBQUUsY0FBYztLQUMxQjtJQUNELEVBQUUsSUFBSSxFQUFFLGNBQWMsRUFBRSxZQUFZLEVBQUUsOEJBQThCLEVBQUU7SUFDdEUsRUFBRSxJQUFJLEVBQUUsbUJBQW1CLEVBQUUsWUFBWSxFQUFFLG1DQUFtQyxFQUFFO0NBQ2pGLENBQUM7QUFNRixNQUFNLE9BQU8sa0JBQWtCOzsrR0FBbEIsa0JBQWtCO2dIQUFsQixrQkFBa0Isd0NBRm5CLFlBQVk7Z0hBRVgsa0JBQWtCLFlBSG5CLFlBQVksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEVBQzdCLFlBQVk7MkZBRVgsa0JBQWtCO2tCQUo5QixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUM7b0JBQ3hDLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztpQkFDeEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyTW9kdWxlLCBSb3V0ZXMgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgT3ZvbHRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvb3ZvbHQuY29tcG9uZW50JztcbmltcG9ydCB7IGxvYWRQcm9jZXNzTG9nTW9kdWxlQXNDaGlsZCB9IGZyb20gJy4vcHJvY2Vzcy1sb2dzL3Byb2Nlc3MtbG9nL3Byb2Nlc3MtbG9nLm1vZHVsZSc7XG5pbXBvcnQgeyBsb2FkSGl0UHJvY2Vzc0xvZ01vZHVsZUFzQ2hpbGQgfSBmcm9tICcuL2NvbXBvbmVudHMvaGl0LXByb2Nlc3MtbG9ncy9oaXQtcHJvY2Vzcy1sb2cubW9kdWxlJztcbmltcG9ydCB7IGxvYWRIaXRTeXN0ZW1QYXJhbWV0ZXJNb2R1bGVBc0NoaWxkIH0gZnJvbSAnLi9jb21wb25lbnRzL2hpdC1zeXN0ZW0tcGFyYW1ldGVycy9oaXQtc3lzdGVtLXBhcmFtZXRlci5tb2R1bGUnO1xuXG5jb25zdCByb3V0ZXM6IFJvdXRlcyA9IFtcbiAge1xuICAgIHBhdGg6ICcnLFxuICAgIHBhdGhNYXRjaDogJ2Z1bGwnLFxuICAgIGNvbXBvbmVudDogT3ZvbHRDb21wb25lbnQsXG4gIH0sXG4gIHsgcGF0aDogJ3Byb2Nlc3MtbG9ncycsIGxvYWRDaGlsZHJlbjogbG9hZEhpdFByb2Nlc3NMb2dNb2R1bGVBc0NoaWxkIH0sXG4gIHsgcGF0aDogJ3N5c3RlbS1wYXJhbWV0ZXJzJywgbG9hZENoaWxkcmVuOiBsb2FkSGl0U3lzdGVtUGFyYW1ldGVyTW9kdWxlQXNDaGlsZCB9LFxuXTtcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1JvdXRlck1vZHVsZS5mb3JDaGlsZChyb3V0ZXMpXSxcbiAgZXhwb3J0czogW1JvdXRlck1vZHVsZV0sXG59KVxuZXhwb3J0IGNsYXNzIE92b2x0Um91dGluZ01vZHVsZSB7fVxuIl19
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZvbHQtcm91dGluZy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9vdm9sdC9zcmMvbGliL292b2x0LXJvdXRpbmcubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBVSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUU5RCxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUN0RyxPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSxnRUFBZ0UsQ0FBQztBQUVySCxPQUFPLEVBQUUsc0NBQXNDLEVBQUUsTUFBTSx3RUFBd0UsQ0FBQzs7O0FBRWhJLE1BQU0sTUFBTSxHQUFXO0lBQ3JCO1FBQ0UsSUFBSSxFQUFFLEVBQUU7UUFDUixTQUFTLEVBQUUsTUFBTTtRQUNqQixTQUFTLEVBQUUsY0FBYztLQUMxQjtJQUNELEVBQUUsSUFBSSxFQUFFLGNBQWMsRUFBRSxZQUFZLEVBQUUsOEJBQThCLEVBQUU7SUFDdEUsRUFBRSxJQUFJLEVBQUUsbUJBQW1CLEVBQUUsWUFBWSxFQUFFLG1DQUFtQyxFQUFFO0lBQ2hGLEVBQUUsSUFBSSxFQUFFLHVCQUF1QixFQUFFLFlBQVksRUFBRSxzQ0FBc0MsRUFBRTtDQUN4RixDQUFDO0FBTUYsTUFBTSxPQUFPLGtCQUFrQjs7K0dBQWxCLGtCQUFrQjtnSEFBbEIsa0JBQWtCLHdDQUZuQixZQUFZO2dIQUVYLGtCQUFrQixZQUhuQixZQUFZLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUM3QixZQUFZOzJGQUVYLGtCQUFrQjtrQkFKOUIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO29CQUN4QyxPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7aUJBQ3hCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlck1vZHVsZSwgUm91dGVzIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IE92b2x0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL292b2x0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBsb2FkUHJvY2Vzc0xvZ01vZHVsZUFzQ2hpbGQgfSBmcm9tICcuL3Byb2Nlc3MtbG9ncy9wcm9jZXNzLWxvZy9wcm9jZXNzLWxvZy5tb2R1bGUnO1xuaW1wb3J0IHsgbG9hZEhpdFByb2Nlc3NMb2dNb2R1bGVBc0NoaWxkIH0gZnJvbSAnLi9jb21wb25lbnRzL2hpdC1wcm9jZXNzLWxvZ3MvaGl0LXByb2Nlc3MtbG9nLm1vZHVsZSc7XG5pbXBvcnQgeyBsb2FkSGl0U3lzdGVtUGFyYW1ldGVyTW9kdWxlQXNDaGlsZCB9IGZyb20gJy4vY29tcG9uZW50cy9oaXQtc3lzdGVtLXBhcmFtZXRlcnMvaGl0LXN5c3RlbS1wYXJhbWV0ZXIubW9kdWxlJztcbmltcG9ydCB7IGxvYWRGdWVsSW50ZWdyYXRpb25Mb2dNb2R1bGVBc0NoaWxkIH0gZnJvbSAnLi9mdWVsLWludGVncmF0aW9uLWxvZ3MvZnVlbC1pbnRlZ3JhdGlvbi1sb2cvZnVlbC1pbnRlZ3JhdGlvbi1sb2cubW9kdWxlJztcbmltcG9ydCB7IGxvYWRIaXRGdWVsSW50ZWdyYXRpb25Mb2dNb2R1bGVBc0NoaWxkIH0gZnJvbSAnLi9jb21wb25lbnRzL2hpdC1mdWVsLWludGVncmF0aW9uLWxvZ3MvaGl0LWZ1ZWwtaW50ZWdyYXRpb24tbG9nLm1vZHVsZSc7XG5cbmNvbnN0IHJvdXRlczogUm91dGVzID0gW1xuICB7XG4gICAgcGF0aDogJycsXG4gICAgcGF0aE1hdGNoOiAnZnVsbCcsXG4gICAgY29tcG9uZW50OiBPdm9sdENvbXBvbmVudCxcbiAgfSxcbiAgeyBwYXRoOiAncHJvY2Vzcy1sb2dzJywgbG9hZENoaWxkcmVuOiBsb2FkSGl0UHJvY2Vzc0xvZ01vZHVsZUFzQ2hpbGQgfSxcbiAgeyBwYXRoOiAnc3lzdGVtLXBhcmFtZXRlcnMnLCBsb2FkQ2hpbGRyZW46IGxvYWRIaXRTeXN0ZW1QYXJhbWV0ZXJNb2R1bGVBc0NoaWxkIH0sXG4gIHsgcGF0aDogJ2Z1ZWwtaW50ZWdyYXRpb24tbG9ncycsIGxvYWRDaGlsZHJlbjogbG9hZEhpdEZ1ZWxJbnRlZ3JhdGlvbkxvZ01vZHVsZUFzQ2hpbGQgfSxcbl07XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtSb3V0ZXJNb2R1bGUuZm9yQ2hpbGQocm91dGVzKV0sXG4gIGV4cG9ydHM6IFtSb3V0ZXJNb2R1bGVdLFxufSlcbmV4cG9ydCBjbGFzcyBPdm9sdFJvdXRpbmdNb2R1bGUge31cbiJdfQ==