@colijnit/transaction 12.1.153 → 12.1.155

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 (52) hide show
  1. package/bundles/colijnit-transaction.umd.js +175 -32
  2. package/bundles/colijnit-transaction.umd.js.map +1 -1
  3. package/colijnit-transaction-12.1.153.tgz +0 -0
  4. package/colijnit-transaction.metadata.json +1 -1
  5. package/esm2015/lib/cache/service/business-object-cache-manager.service.js +7 -1
  6. package/esm2015/lib/cache/service/select-single-cache.service.js +7 -4
  7. package/esm2015/lib/component/checkout/checkout.component.js +5 -1
  8. package/esm2015/lib/component/core/base/transaction-base.component.js +14 -1
  9. package/esm2015/lib/component/deposit-payment/deposit-payment.component.js +4 -3
  10. package/esm2015/lib/component/payment/payment.component.js +54 -37
  11. package/esm2015/lib/component/payment/payment.module.js +4 -3
  12. package/esm2015/lib/component/transaction/transaction.component.js +4 -1
  13. package/esm2015/lib/component/transaction-header/transaction-header-payment/transaction-header-payment.component.js +8 -5
  14. package/esm2015/lib/component/transaction-line/transaction-base-line/transaction-base-line.component.js +2 -1
  15. package/esm2015/lib/component/transaction-line/transaction-purchase-order-line/transaction-purchase-order-line-base.component.js +4 -1
  16. package/esm2015/lib/component/transaction-line/transaction-purchase-order-line/transaction-purchase-order-line.component.js +2 -6
  17. package/esm2015/lib/component/transaction-line-action-buttons/transaction-line-action-buttons-popup.component.js +14 -1
  18. package/esm2015/lib/component/transaction-line-action-buttons/transaction-line-action-buttons.component.js +26 -2
  19. package/esm2015/lib/component/transaction-line-fields/transaction-line-delivery-date-button.component.js +2 -2
  20. package/esm2015/lib/component/transaction-line-fields/transaction-line-supplier-delivery-date-button.component.js +36 -6
  21. package/esm2015/lib/component/transaction-line-purchase-confirmation/transaction-line-purchase-confirmation.component.js +5 -5
  22. package/esm2015/lib/component/transaction-quick-access/transaction-quick-access-order-confirmation/transaction-quick-access-order-confirmation.component.js +3 -3
  23. package/esm2015/lib/service/relation.service.js +19 -11
  24. package/esm2015/lib/service/transaction-base.service.js +9 -1
  25. package/esm2015/lib/service/transaction-event.service.js +2 -1
  26. package/esm2015/lib/transaction-version.js +3 -3
  27. package/fesm2015/colijnit-transaction.js +206 -72
  28. package/fesm2015/colijnit-transaction.js.map +1 -1
  29. package/lib/cache/service/business-object-cache-manager.service.d.ts +3 -0
  30. package/lib/cache/service/select-single-cache.service.d.ts +5 -5
  31. package/lib/component/checkout/checkout.component.d.ts +4 -0
  32. package/lib/component/core/base/transaction-base.component.d.ts +5 -0
  33. package/lib/component/deposit-payment/style/_layout.scss +3 -1
  34. package/lib/component/deposit-payment/style/_material-definition.scss +2 -2
  35. package/lib/component/payment/payment.component.d.ts +4 -1
  36. package/lib/component/payment/style/_layout.scss +64 -35
  37. package/lib/component/payment/style/_material-definition.scss +1 -1
  38. package/lib/component/payment/style/_theme.scss +0 -3
  39. package/lib/component/payment-tile/style/_layout.scss +5 -3
  40. package/lib/component/payment-to-pay/style/_layout.scss +6 -5
  41. package/lib/component/payment-to-pay/style/_material-definition.scss +4 -4
  42. package/lib/component/stepper/style/_material-definition.scss +4 -4
  43. package/lib/component/transaction/style/_layout.scss +1 -1
  44. package/lib/component/transaction/transaction.component.d.ts +2 -0
  45. package/lib/component/transaction-header/transaction-header-payment/style/_layout.scss +17 -0
  46. package/lib/component/transaction-line-action-buttons/transaction-line-action-buttons-popup.component.d.ts +3 -0
  47. package/lib/component/transaction-line-action-buttons/transaction-line-action-buttons.component.d.ts +7 -0
  48. package/lib/component/transaction-line-fields/transaction-line-delivery-date-button.component.d.ts +2 -2
  49. package/lib/component/transaction-line-fields/transaction-line-supplier-delivery-date-button.component.d.ts +6 -1
  50. package/lib/service/transaction-base.service.d.ts +2 -0
  51. package/lib/service/transaction-event.service.d.ts +2 -0
  52. package/package.json +1 -1
@@ -1,8 +1,8 @@
1
- import { ChangeDetectorRef, Component, ElementRef, forwardRef, HostBinding, ViewEncapsulation } from '@angular/core';
1
+ import { ChangeDetectorRef, Component, ElementRef, forwardRef, HostBinding, ViewChild, ViewEncapsulation } from '@angular/core';
2
2
  import { Icon } from '../../enum/icon.enum';
3
3
  import { IconCacheService } from '../../service/icon-cache.service';
4
4
  import { TransactionBaseComponent } from '../core/base/transaction-base.component';
5
- import { OverlayService, SCREEN_CONFIG_ADAPTER_COMPONENT_INTERFACE_NAME } from '@colijnit/corecomponents_v12';
5
+ import { CalendarComponent, OverlayService, SCREEN_CONFIG_ADAPTER_COMPONENT_INTERFACE_NAME } from '@colijnit/corecomponents_v12';
6
6
  import { TransactionEventService } from '../../service/transaction-event.service';
7
7
  import { TransactionService } from '../../service/transaction.service';
8
8
  import { DictionaryService } from '../../service/dictionary.service';
@@ -21,24 +21,53 @@ export class TransactionLineSupplierDeliveryDateButtonComponent extends Transact
21
21
  this._overlayService = _overlayService;
22
22
  this._elementRef = _elementRef;
23
23
  this.icons = Icon;
24
+ this.showCalender = false;
24
25
  }
25
26
  showClass() {
26
27
  return true;
27
28
  }
28
- handleShowDialog(event) {
29
+ handleShowHideClick() {
30
+ this.showCalender = !this.showCalender;
31
+ if (this.showCalender) {
32
+ this._showPopup();
33
+ }
34
+ else {
35
+ this._hidePopup();
36
+ }
37
+ }
38
+ _showPopup() {
39
+ this.showCalender = true;
40
+ this._calendarPopupComponentRef = this._overlayService.createComponent(CalendarComponent, {
41
+ parentForOverlay: this.parentComponent,
42
+ selectedDate: new Date(this.transactionLine.purchasePortalLine.deliveryDateConfirmed
43
+ ? this.transactionLine.purchasePortalLine.deliveryDateConfirmed
44
+ : new Date())
45
+ }, {
46
+ dateSelected: (date) => this._handleDateChanged(date),
47
+ clickedOutside: () => this.handleShowHideClick()
48
+ });
49
+ }
50
+ _handleDateChanged(date) {
51
+ this.transactionLine.purchasePortalLine.deliveryDateConfirmed = date.toDateString();
52
+ this.handleShowHideClick();
53
+ this.detectChanges();
54
+ }
55
+ _hidePopup() {
56
+ this.showCalender = false;
57
+ this._overlayService.removeComponent(this._calendarPopupComponentRef);
29
58
  }
30
59
  }
31
60
  TransactionLineSupplierDeliveryDateButtonComponent.decorators = [
32
61
  { type: Component, args: [{
33
62
  selector: 'co-transaction-line-supplier-delivery-date-button',
34
63
  template: `
35
- <co-transaction-button class="big center-align"
64
+ <co-transaction-button #parentComponent class="big center-align"
36
65
  [hidden]="hidden"
37
66
  [readonly]="readonly"
38
67
  [iconData]="iconCacheService.getIcon(icons.RegularIndustryClock)"
39
68
  [label]="transactionLine.purchasePortalLine.deliveryDateConfirmed | date:'d MMM yyyy'"
40
69
  [rightIconData]="iconCacheService.getIcon(icons.CalendarDayRegular)"
41
- (click)="handleShowDialog($event)"
70
+ (click)="handleShowHideClick()"
42
71
  ></co-transaction-button>
43
72
  `,
44
73
  providers: [
@@ -63,6 +92,7 @@ TransactionLineSupplierDeliveryDateButtonComponent.ctorParameters = () => [
63
92
  { type: ElementRef }
64
93
  ];
65
94
  TransactionLineSupplierDeliveryDateButtonComponent.propDecorators = {
95
+ parentComponent: [{ type: ViewChild, args: ['parentComponent', { read: ElementRef },] }],
66
96
  showClass: [{ type: HostBinding, args: ['class.co-transaction-line-supplier-delivery-date-button',] }]
67
97
  };
68
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tbGluZS1zdXBwbGllci1kZWxpdmVyeS1kYXRlLWJ1dHRvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cmFuc2FjdGlvbi9zcmMvbGliL2NvbXBvbmVudC90cmFuc2FjdGlvbi1saW5lLWZpZWxkcy90cmFuc2FjdGlvbi1saW5lLXN1cHBsaWVyLWRlbGl2ZXJ5LWRhdGUtYnV0dG9uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsaUJBQWlCLEVBQUUsU0FBUyxFQUFnQixVQUFVLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNqSSxPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDMUMsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDbEUsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFDakYsT0FBTyxFQUFDLGNBQWMsRUFBRSw4Q0FBOEMsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQzVHLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLHlDQUF5QyxDQUFDO0FBQ2hGLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBQ3JFLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQ25FLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLHlDQUF5QyxDQUFDO0FBQ2hGLE9BQU8sRUFBQyxxQ0FBcUMsRUFBQyxNQUFNLHdEQUF3RCxDQUFDO0FBdUI3RyxNQUFNLE9BQU8sa0RBQW1ELFNBQVEsd0JBQXdCO0lBVTVGLFlBQ1csdUJBQWdELEVBQ2hELE9BQTJCLEVBQzNCLGdCQUFrQyxFQUNsQyxxQ0FBNEUsRUFDekUsaUJBQW9DLEVBQ3BDLFlBQXFDLEVBQ3JDLGNBQWlDLEVBQ25DLGVBQStCLEVBQy9CLFdBQXVCO1FBRS9CLEtBQUssQ0FBQyx1QkFBdUIsRUFBRSxnQkFBZ0IsRUFBRSxxQ0FBcUMsRUFBRSxZQUFZLEVBQUUsaUJBQWlCLEVBQUUsT0FBTyxFQUFFLGNBQWMsQ0FBQyxDQUFDO1FBVjNJLDRCQUF1QixHQUF2Qix1QkFBdUIsQ0FBeUI7UUFDaEQsWUFBTyxHQUFQLE9BQU8sQ0FBb0I7UUFDM0IscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQywwQ0FBcUMsR0FBckMscUNBQXFDLENBQXVDO1FBQ3pFLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFDcEMsaUJBQVksR0FBWixZQUFZLENBQXlCO1FBQ3JDLG1CQUFjLEdBQWQsY0FBYyxDQUFtQjtRQUNuQyxvQkFBZSxHQUFmLGVBQWUsQ0FBZ0I7UUFDL0IsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFsQm5CLFVBQUssR0FBZ0IsSUFBSSxDQUFDO0lBcUIxQyxDQUFDO0lBbEJNLFNBQVM7UUFDWixPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBa0JNLGdCQUFnQixDQUFDLEtBQWlCO0lBQ3pDLENBQUM7OztZQTlDSixTQUFTLFNBQUM7Z0JBQ1AsUUFBUSxFQUFFLG1EQUFtRDtnQkFDN0QsUUFBUSxFQUFFOzs7Ozs7Ozs7S0FTVDtnQkFDRCxTQUFTLEVBQUU7b0JBQ1AsY0FBYztvQkFDZDt3QkFDSSxPQUFPLEVBQUUsOENBQThDO3dCQUN2RCxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGtEQUFrRCxDQUFDO3FCQUNwRjtpQkFDSjtnQkFDRCxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTthQUN4Qzs7O1lBMUJPLHVCQUF1QjtZQUN2QixrQkFBa0I7WUFKbEIsZ0JBQWdCO1lBT2hCLHFDQUFxQztZQUZyQyxpQkFBaUI7WUFDakIsdUJBQXVCO1lBUnZCLGlCQUFpQjtZQUlqQixjQUFjO1lBSjhCLFVBQVU7Ozt3QkFtQ3pELFdBQVcsU0FBQyx5REFBeUQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIENvbXBvbmVudFJlZiwgRWxlbWVudFJlZiwgZm9yd2FyZFJlZiwgSG9zdEJpbmRpbmcsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtJY29ufSBmcm9tICcuLi8uLi9lbnVtL2ljb24uZW51bSc7XHJcbmltcG9ydCB7SWNvbkNhY2hlU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZS9pY29uLWNhY2hlLnNlcnZpY2UnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uQmFzZUNvbXBvbmVudH0gZnJvbSAnLi4vY29yZS9iYXNlL3RyYW5zYWN0aW9uLWJhc2UuY29tcG9uZW50JztcclxuaW1wb3J0IHtPdmVybGF5U2VydmljZSwgU0NSRUVOX0NPTkZJR19BREFQVEVSX0NPTVBPTkVOVF9JTlRFUkZBQ0VfTkFNRX0gZnJvbSAnQGNvbGlqbml0L2NvcmVjb21wb25lbnRzX3YxMic7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25FdmVudFNlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24tZXZlbnQuc2VydmljZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25TZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQge0RpY3Rpb25hcnlTZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlL2RpY3Rpb25hcnkuc2VydmljZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25JbWFnZVNlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24taW1hZ2Uuc2VydmljZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25TY3JlZW5Db25maWd1cmF0aW9uU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi1zY3JlZW4tY29uZmlndXJhdGlvbi5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdjby10cmFuc2FjdGlvbi1saW5lLXN1cHBsaWVyLWRlbGl2ZXJ5LWRhdGUtYnV0dG9uJyxcclxuICAgIHRlbXBsYXRlOiBgXHJcbiAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWJ1dHRvbiBjbGFzcz1cImJpZyBjZW50ZXItYWxpZ25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2hpZGRlbl09XCJoaWRkZW5cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpY29uRGF0YV09XCJpY29uQ2FjaGVTZXJ2aWNlLmdldEljb24oaWNvbnMuUmVndWxhckluZHVzdHJ5Q2xvY2spXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCJ0cmFuc2FjdGlvbkxpbmUucHVyY2hhc2VQb3J0YWxMaW5lLmRlbGl2ZXJ5RGF0ZUNvbmZpcm1lZCB8IGRhdGU6J2QgTU1NIHl5eXknXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyaWdodEljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29ucy5DYWxlbmRhckRheVJlZ3VsYXIpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJoYW5kbGVTaG93RGlhbG9nKCRldmVudClcIlxyXG4gICAgICAgID48L2NvLXRyYW5zYWN0aW9uLWJ1dHRvbj5cclxuICAgIGAsXHJcbiAgICBwcm92aWRlcnM6IFtcclxuICAgICAgICBPdmVybGF5U2VydmljZSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICAgIHByb3ZpZGU6IFNDUkVFTl9DT05GSUdfQURBUFRFUl9DT01QT05FTlRfSU5URVJGQUNFX05BTUUsXHJcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFRyYW5zYWN0aW9uTGluZVN1cHBsaWVyRGVsaXZlcnlEYXRlQnV0dG9uQ29tcG9uZW50KVxyXG4gICAgICAgIH1cclxuICAgIF0sXHJcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvbkxpbmVTdXBwbGllckRlbGl2ZXJ5RGF0ZUJ1dHRvbkNvbXBvbmVudCBleHRlbmRzIFRyYW5zYWN0aW9uQmFzZUNvbXBvbmVudCB7XHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgaWNvbnM6IHR5cGVvZiBJY29uID0gSWNvbjtcclxuXHJcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmNvLXRyYW5zYWN0aW9uLWxpbmUtc3VwcGxpZXItZGVsaXZlcnktZGF0ZS1idXR0b24nKVxyXG4gICAgcHVibGljIHNob3dDbGFzcygpIHtcclxuICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9jYWxlbmRhclBvcHVwQ29tcG9uZW50UmVmOiBDb21wb25lbnRSZWY8YW55PjtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwdWJsaWMgdHJhbnNhY3Rpb25FdmVudFNlcnZpY2U6IFRyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlLFxyXG4gICAgICAgIHB1YmxpYyBzZXJ2aWNlOiBUcmFuc2FjdGlvblNlcnZpY2UsXHJcbiAgICAgICAgcHVibGljIGljb25DYWNoZVNlcnZpY2U6IEljb25DYWNoZVNlcnZpY2UsXHJcbiAgICAgICAgcHVibGljIHRyYW5zYWN0aW9uU2NyZWVuQ29uZmlndXJhdGlvblNlcnZpY2U6IFRyYW5zYWN0aW9uU2NyZWVuQ29uZmlndXJhdGlvblNlcnZpY2UsXHJcbiAgICAgICAgcHJvdGVjdGVkIGRpY3Rpb25hcnlTZXJ2aWNlOiBEaWN0aW9uYXJ5U2VydmljZSxcclxuICAgICAgICBwcm90ZWN0ZWQgaW1hZ2VTZXJ2aWNlOiBUcmFuc2FjdGlvbkltYWdlU2VydmljZSxcclxuICAgICAgICBwcm90ZWN0ZWQgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgICAgIHByaXZhdGUgX292ZXJsYXlTZXJ2aWNlOiBPdmVybGF5U2VydmljZSxcclxuICAgICAgICBwcml2YXRlIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmXHJcbiAgICApIHtcclxuICAgICAgICBzdXBlcih0cmFuc2FjdGlvbkV2ZW50U2VydmljZSwgaWNvbkNhY2hlU2VydmljZSwgdHJhbnNhY3Rpb25TY3JlZW5Db25maWd1cmF0aW9uU2VydmljZSwgaW1hZ2VTZXJ2aWNlLCBkaWN0aW9uYXJ5U2VydmljZSwgc2VydmljZSwgY2hhbmdlRGV0ZWN0b3IpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBoYW5kbGVTaG93RGlhbG9nKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XHJcbiAgICB9XHJcbn1cclxuIl19
98
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tbGluZS1zdXBwbGllci1kZWxpdmVyeS1kYXRlLWJ1dHRvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cmFuc2FjdGlvbi9zcmMvbGliL2NvbXBvbmVudC90cmFuc2FjdGlvbi1saW5lLWZpZWxkcy90cmFuc2FjdGlvbi1saW5lLXN1cHBsaWVyLWRlbGl2ZXJ5LWRhdGUtYnV0dG9uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsaUJBQWlCLEVBQUUsU0FBUyxFQUFnQixVQUFVLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDNUksT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQzFDLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQ2xFLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLHlDQUF5QyxDQUFDO0FBQ2pGLE9BQU8sRUFBQyxpQkFBaUIsRUFBRSxjQUFjLEVBQUUsOENBQThDLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUMvSCxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUNoRixPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUNyRSxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUNuRSxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUNoRixPQUFPLEVBQUMscUNBQXFDLEVBQUMsTUFBTSx3REFBd0QsQ0FBQztBQXVCN0csTUFBTSxPQUFPLGtEQUFtRCxTQUFRLHdCQUF3QjtJQWM1RixZQUNXLHVCQUFnRCxFQUNoRCxPQUEyQixFQUMzQixnQkFBa0MsRUFDbEMscUNBQTRFLEVB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QUFpQjtZQUlFLGNBQWM7WUFKVyxVQUFVOzs7OEJBbUN6RCxTQUFTLFNBQUMsaUJBQWlCLEVBQUUsRUFBQyxJQUFJLEVBQUUsVUFBVSxFQUFDO3dCQUcvQyxXQUFXLFNBQUMseURBQXlEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBDb21wb25lbnRSZWYsIEVsZW1lbnRSZWYsIGZvcndhcmRSZWYsIEhvc3RCaW5kaW5nLCBWaWV3Q2hpbGQsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtJY29ufSBmcm9tICcuLi8uLi9lbnVtL2ljb24uZW51bSc7XHJcbmltcG9ydCB7SWNvbkNhY2hlU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZS9pY29uLWNhY2hlLnNlcnZpY2UnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uQmFzZUNvbXBvbmVudH0gZnJvbSAnLi4vY29yZS9iYXNlL3RyYW5zYWN0aW9uLWJhc2UuY29tcG9uZW50JztcclxuaW1wb3J0IHtDYWxlbmRhckNvbXBvbmVudCwgT3ZlcmxheVNlcnZpY2UsIFNDUkVFTl9DT05GSUdfQURBUFRFUl9DT01QT05FTlRfSU5URVJGQUNFX05BTUV9IGZyb20gJ0Bjb2xpam5pdC9jb3JlY29tcG9uZW50c192MTInO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLWV2ZW50LnNlcnZpY2UnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHtEaWN0aW9uYXJ5U2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZS9kaWN0aW9uYXJ5LnNlcnZpY2UnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uSW1hZ2VTZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLWltYWdlLnNlcnZpY2UnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uU2NyZWVuQ29uZmlndXJhdGlvblNlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24tc2NyZWVuLWNvbmZpZ3VyYXRpb24uc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnY28tdHJhbnNhY3Rpb24tbGluZS1zdXBwbGllci1kZWxpdmVyeS1kYXRlLWJ1dHRvbicsXHJcbiAgICB0ZW1wbGF0ZTogYFxyXG4gICAgICAgIDxjby10cmFuc2FjdGlvbi1idXR0b24gI3BhcmVudENvbXBvbmVudCBjbGFzcz1cImJpZyBjZW50ZXItYWxpZ25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2hpZGRlbl09XCJoaWRkZW5cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpY29uRGF0YV09XCJpY29uQ2FjaGVTZXJ2aWNlLmdldEljb24oaWNvbnMuUmVndWxhckluZHVzdHJ5Q2xvY2spXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCJ0cmFuc2FjdGlvbkxpbmUucHVyY2hhc2VQb3J0YWxMaW5lLmRlbGl2ZXJ5RGF0ZUNvbmZpcm1lZCB8IGRhdGU6J2QgTU1NIHl5eXknXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyaWdodEljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29ucy5DYWxlbmRhckRheVJlZ3VsYXIpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJoYW5kbGVTaG93SGlkZUNsaWNrKClcIlxyXG4gICAgICAgID48L2NvLXRyYW5zYWN0aW9uLWJ1dHRvbj5cclxuICAgIGAsXHJcbiAgICBwcm92aWRlcnM6IFtcclxuICAgICAgICBPdmVybGF5U2VydmljZSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICAgIHByb3ZpZGU6IFNDUkVFTl9DT05GSUdfQURBUFRFUl9DT01QT05FTlRfSU5URVJGQUNFX05BTUUsXHJcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFRyYW5zYWN0aW9uTGluZVN1cHBsaWVyRGVsaXZlcnlEYXRlQnV0dG9uQ29tcG9uZW50KVxyXG4gICAgICAgIH1cclxuICAgIF0sXHJcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvbkxpbmVTdXBwbGllckRlbGl2ZXJ5RGF0ZUJ1dHRvbkNvbXBvbmVudCBleHRlbmRzIFRyYW5zYWN0aW9uQmFzZUNvbXBvbmVudCB7XHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgaWNvbnM6IHR5cGVvZiBJY29uID0gSWNvbjtcclxuXHJcbiAgICBAVmlld0NoaWxkKCdwYXJlbnRDb21wb25lbnQnLCB7cmVhZDogRWxlbWVudFJlZn0pXHJcbiAgICBwdWJsaWMgcGFyZW50Q29tcG9uZW50OiBFbGVtZW50UmVmO1xyXG5cclxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuY28tdHJhbnNhY3Rpb24tbGluZS1zdXBwbGllci1kZWxpdmVyeS1kYXRlLWJ1dHRvbicpXHJcbiAgICBwdWJsaWMgc2hvd0NsYXNzKCkge1xyXG4gICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBzaG93Q2FsZW5kZXI6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIHByaXZhdGUgX2NhbGVuZGFyUG9wdXBDb21wb25lbnRSZWY6IENvbXBvbmVudFJlZjxhbnk+O1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHB1YmxpYyB0cmFuc2FjdGlvbkV2ZW50U2VydmljZTogVHJhbnNhY3Rpb25FdmVudFNlcnZpY2UsXHJcbiAgICAgICAgcHVibGljIHNlcnZpY2U6IFRyYW5zYWN0aW9uU2VydmljZSxcclxuICAgICAgICBwdWJsaWMgaWNvbkNhY2hlU2VydmljZTogSWNvbkNhY2hlU2VydmljZSxcclxuICAgICAgICBwdWJsaWMgdHJhbnNhY3Rpb25TY3JlZW5Db25maWd1cmF0aW9uU2VydmljZTogVHJhbnNhY3Rpb25TY3JlZW5Db25maWd1cmF0aW9uU2VydmljZSxcclxuICAgICAgICBwcm90ZWN0ZWQgZGljdGlvbmFyeVNlcnZpY2U6IERpY3Rpb25hcnlTZXJ2aWNlLFxyXG4gICAgICAgIHByb3RlY3RlZCBpbWFnZVNlcnZpY2U6IFRyYW5zYWN0aW9uSW1hZ2VTZXJ2aWNlLFxyXG4gICAgICAgIHByb3RlY3RlZCBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICAgICAgcHJpdmF0ZSBfb3ZlcmxheVNlcnZpY2U6IE92ZXJsYXlTZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWZcclxuICAgICkge1xyXG4gICAgICAgIHN1cGVyKHRyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlLCBpY29uQ2FjaGVTZXJ2aWNlLCB0cmFuc2FjdGlvblNjcmVlbkNvbmZpZ3VyYXRpb25TZXJ2aWNlLCBpbWFnZVNlcnZpY2UsIGRpY3Rpb25hcnlTZXJ2aWNlLCBzZXJ2aWNlLCBjaGFuZ2VEZXRlY3Rvcik7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGhhbmRsZVNob3dIaWRlQ2xpY2soKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5zaG93Q2FsZW5kZXIgPSAhdGhpcy5zaG93Q2FsZW5kZXI7XHJcbiAgICAgICAgaWYgKHRoaXMuc2hvd0NhbGVuZGVyKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX3Nob3dQb3B1cCgpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMuX2hpZGVQb3B1cCgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9zaG93UG9wdXAoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5zaG93Q2FsZW5kZXIgPSB0cnVlO1xyXG4gICAgICAgIHRoaXMuX2NhbGVuZGFyUG9wdXBDb21wb25lbnRSZWYgPSB0aGlzLl9vdmVybGF5U2VydmljZS5jcmVhdGVDb21wb25lbnQoQ2FsZW5kYXJDb21wb25lbnQsXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIHBhcmVudEZvck92ZXJsYXk6IHRoaXMucGFyZW50Q29tcG9uZW50LFxyXG4gICAgICAgICAgICAgICAgc2VsZWN0ZWREYXRlOiBuZXcgRGF0ZSh0aGlzLnRyYW5zYWN0aW9uTGluZS5wdXJjaGFzZVBvcnRhbExpbmUuZGVsaXZlcnlEYXRlQ29uZmlybWVkXHJcbiAgICAgICAgICAgICAgICAgICAgPyB0aGlzLnRyYW5zYWN0aW9uTGluZS5wdXJjaGFzZVBvcnRhbExpbmUuZGVsaXZlcnlEYXRlQ29uZmlybWVkXHJcbiAgICAgICAgICAgICAgICAgICAgOiBuZXcgRGF0ZSgpKVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICBkYXRlU2VsZWN0ZWQ6IChkYXRlKSA9PiB0aGlzLl9oYW5kbGVEYXRlQ2hhbmdlZChkYXRlKSxcclxuICAgICAgICAgICAgICAgIGNsaWNrZWRPdXRzaWRlOiAoKSA9PiB0aGlzLmhhbmRsZVNob3dIaWRlQ2xpY2soKVxyXG4gICAgICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9oYW5kbGVEYXRlQ2hhbmdlZChkYXRlOiBEYXRlKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy50cmFuc2FjdGlvbkxpbmUucHVyY2hhc2VQb3J0YWxMaW5lLmRlbGl2ZXJ5RGF0ZUNvbmZpcm1lZCA9IGRhdGUudG9EYXRlU3RyaW5nKCk7XHJcbiAgICAgICAgdGhpcy5oYW5kbGVTaG93SGlkZUNsaWNrKCk7XHJcbiAgICAgICAgdGhpcy5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBfaGlkZVBvcHVwKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuc2hvd0NhbGVuZGVyID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5fb3ZlcmxheVNlcnZpY2UucmVtb3ZlQ29tcG9uZW50KHRoaXMuX2NhbGVuZGFyUG9wdXBDb21wb25lbnRSZWYpO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -38,8 +38,6 @@ export class TransactionLinePurchaseConfirmationComponent extends TransactionBas
38
38
  existingBatch.docAmount = this.docDeliveryBatch.docAmount;
39
39
  existingBatch.docDate = this.docDeliveryBatch.docDate;
40
40
  existingBatch.reference = this.docDeliveryBatch.reference;
41
- existingBatch.docAmountOrg = this.docDeliveryBatch.docAmountOrg;
42
- existingBatch.docDateOrg = this.docDeliveryBatch.docDateOrg;
43
41
  }
44
42
  else { // or create a new one
45
43
  this.docDeliveryBatch.deleteLine = 'F';
@@ -69,7 +67,7 @@ export class TransactionLinePurchaseConfirmationComponent extends TransactionBas
69
67
  }
70
68
  handleSelectHistoryRow(row) {
71
69
  this.docDeliveryBatch = row;
72
- // this.docDeliveryBatch.docDate = new Date(row.docDate);
70
+ this.docDeliveryBatch.docDate = new Date(row.docDate);
73
71
  }
74
72
  handleCancelClick() {
75
73
  this._initNewDocDeliveryBatch();
@@ -82,7 +80,9 @@ export class TransactionLinePurchaseConfirmationComponent extends TransactionBas
82
80
  }
83
81
  _initNewDocDeliveryBatch() {
84
82
  this.docDeliveryBatch = new DocDeliveryBatch();
85
- this.docDeliveryBatch.docAmount = +this.transactionLine.purchasePortalLine.amountOrdered;
83
+ this.docDeliveryBatch.docAmount = this.transactionLine.purchasePortalLine.docBatchArray.length === 0
84
+ ? +this.transactionLine.amount
85
+ : +this.transactionLine.purchasePortalLine.amountOrdered;
86
86
  this.docDeliveryBatch.confirmedPrice = +this.transactionLine.purchasePortalLine.netOrderPrice;
87
87
  }
88
88
  }
@@ -157,4 +157,4 @@ TransactionLinePurchaseConfirmationComponent.decorators = [
157
157
  TransactionLinePurchaseConfirmationComponent.propDecorators = {
158
158
  showClass: [{ type: HostBinding, args: ['class.co-transaction-line-purchase-confirmation',] }]
159
159
  };
160
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tbGluZS1wdXJjaGFzZS1jb25maXJtYXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJhbnNhY3Rpb24vc3JjL2xpYi9jb21wb25lbnQvdHJhbnNhY3Rpb24tbGluZS1wdXJjaGFzZS1jb25maXJtYXRpb24vdHJhbnNhY3Rpb24tbGluZS1wdXJjaGFzZS1jb25maXJtYXRpb24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFdBQVcsRUFBcUIsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDM0YsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFDakYsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDL0QsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sNERBQTRELENBQUM7QUFFNUYsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFxRWxGLE1BQU0sT0FBTyw0Q0FBNkMsU0FBUSx3QkFBd0I7SUFsRTFGOztRQW1Fa0IsNEJBQXVCLEdBQW1DLHVCQUF1QixDQUFDO1FBTzNGLHFCQUFnQixHQUFxQixJQUFJLGdCQUFnQixFQUFFLENBQUM7UUFDNUQsMEJBQXFCLEdBQXVCLEVBQUUsQ0FBQztRQUU5QyxVQUFLLEdBQW1CLEVBQUUsQ0FBQztJQTRFckMsQ0FBQztJQW5GUSxTQUFTO1FBQ2QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBT0QsUUFBUTtRQUNOLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUNiLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxzQkFBc0IsQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUF5QixFQUFFLEVBQUU7WUFDMUYsSUFBSSxJQUFJLENBQUMsTUFBTSxLQUFLLElBQUksQ0FBQyxlQUFl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QVcsU0FBQyxpREFBaUQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSG9zdEJpbmRpbmcsIE9uRGVzdHJveSwgT25Jbml0LCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25CYXNlQ29tcG9uZW50fSBmcm9tICcuLi9jb3JlL2Jhc2UvdHJhbnNhY3Rpb24tYmFzZS5jb21wb25lbnQnO1xyXG5pbXBvcnQge0Zvcm1NYXN0ZXJTZXJ2aWNlfSBmcm9tICdAY29saWpuaXQvY29yZWNvbXBvbmVudHNfdjEyJztcclxuaW1wb3J0IHtEb2NEZWxpdmVyeUJhdGNofSBmcm9tICdAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvZG9jLWRlbGl2ZXJ5LWJhdGNoLmJvJztcclxuaW1wb3J0IHtTdWJzY3JpcHRpb259IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uVHlwZUNhdGVnb3J5fSBmcm9tICcuLi8uLi9lbnVtL3RyYW5zYWN0aW9uLXR5cGUtY2F0ZWdvcnkuZW51bSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25MaW5lSW5mb30gZnJvbSAnQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3RyYW5zYWN0aW9uLWxpbmUtaW5mby5ibyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2NvLXRyYW5zYWN0aW9uLWxpbmUtcHVyY2hhc2UtY29uZmlybWF0aW9uJyxcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPGRpdiBjbGFzcz1cImNvbmZpcm1hdGlvbi1kZXRhaWxzLXdyYXBwZXIgZm9ybS1hbmQtYnV0dG9uc1wiPlxyXG4gICAgICA8Y28tZm9ybT5cclxuICAgICAgICA8IS0tZGl2IGNsYXNzPVwiaGVhZGVyLXdyYXBwZXJcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdGF0dXMtaGVhZGVyXCI+XHJcbiAgICAgICAgICAgIDxzcGFuIFt0ZXh0Q29udGVudF09XCInU1RBVEUnIHwgbG9jYWxpemVcIj48L3NwYW4+XHJcbiAgICAgICAgICAgIDxjby10cmFuc2FjdGlvbi1saW5lLXN0YXR1c2JhciBjbGFzcz1cInN0YXR1cy1iYXItd3JhcHBlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdHJhbnNhY3Rpb25JbmZvXT1cInRyYW5zYWN0aW9uSW5mb1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdHJhbnNhY3Rpb25MaW5lXT1cInRyYW5zYWN0aW9uTGluZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYWN0aXZlQ2F0ZWdvcnldPVwidHJhbnNhY3Rpb25UeXBlQ2F0ZWdvcnkuUHVyY2hhc2VPcmRlck9yZGVyQ29uZmlybWF0aW9uXCJcclxuICAgICAgICAgICAgPjwvY28tdHJhbnNhY3Rpb24tbGluZS1zdGF0dXNiYXI+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdi0tPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJzaWRlLXBhbmVsLWlucHV0LXJvd1wiPlxyXG4gICAgICAgICAgPGNvLWlucHV0LW51bWJlci1waWNrZXIgY2xhc3M9XCJzaWRlLXBhbmVsLWlucHV0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsobW9kZWwpXT1cImRvY0RlbGl2ZXJ5QmF0Y2guZG9jQW1vdW50XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFttaW5dPVwiMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbWF4XT1cIit0cmFuc2FjdGlvbkxpbmUucHVyY2hhc2VQb3J0YWxMaW5lLmFtb3VudE9yZGVyZWRcIlxyXG4gICAgICAgICAgPjwvY28taW5wdXQtbnVtYmVyLXBpY2tlcj5cclxuICAgICAgICAgIDxjby1pbnB1dC1kYXRlIGNsYXNzPVwic2lkZS1wYW5lbC1pbnB1dFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ0NPTkZJUk1FRF9EQVRFJyB8IGxvY2FsaXplXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFsobW9kZWwpXT1cImRvY0RlbGl2ZXJ5QmF0Y2guZG9jRGF0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlZFxyXG4gICAgICAgICAgPjwvY28taW5wdXQtZGF0ZT5cclxuICAgICAgICAgIDxjby10cmFuc2FjdGlvbi1sYWJlbGVkLXByaWNlLWlucHV0IGNsYXNzPVwic2lkZS1wYW5lbC1pbnB1dFwiXHJcbiAgICAgICAgICAgIFsobW9kZWwpXT1cImRvY0RlbGl2ZXJ5QmF0Y2guY29uZmlybWVkUHJpY2VcIlxyXG4gICAgICAgICAgICBbZGVmYXVsdEVkaXRNb2RlXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidDT05GSVJNRURfUFJJQ0UnIHwgbG9jYWxpemVcIlxyXG4gICAgICAgICAgICBbcmVxdWlyZWRdPVwidHJ1ZVwiXHJcbiAgICAgICAgICA+PC9jby10cmFuc2FjdGlvbi1sYWJlbGVkLXByaWNlLWlucHV0PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJzaWRlLXBhbmVsLWlucHV0LXJvd1wiPlxyXG4gICAgICAgICAgICA8Y28taW5wdXQtdGV4dCBjbGFzcz1cInNpZGUtcGFuZWwtaW5wdXRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBbKG1vZGVsKV09XCJkb2NEZWxpdmVyeUJhdGNoLnJlZmVyZW5jZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInUkVGRVJFTkNFJyB8IGxvY2FsaXplXCJcclxuICAgICAgICAgICAgPjwvY28taW5wdXQtdGV4dD5cclxuICAgICAgICAgICAgPGNvLWlucHV0LXRleHQgY2xhc3M9XCJzaWRlLXBhbmVsLWlucHV0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwiZG9jRGVsaXZlcnlCYXRjaC5kZWxpdmVyeUJhdGNoXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidERUxJVkVSWV9CQVRDSCcgfCBsb2NhbGl6ZVwiXHJcbiAgICAgICAgICAgID48L2NvLWlucHV0LXRleHQ+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvY28tZm9ybT5cclxuXHJcbiAgICAgIDxkaXYgY2xhc3M9XCJzYXZlLWNhbmNlbC13cmFwcGVyXCI+XHJcbiAgICAgICAgPGNvLWJ1dHRvbiBbaWNvbkRhdGFdPVwiaWNvbkNhY2hlU2VydmljZS5nZXRJY29uKGljb25zLkNoZWNrRHVvdG9uZSlcIlxyXG4gICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImhhbmRsZVNhdmVEZXRhaWxzRWRpdCgpXCJcclxuICAgICAgICA+PC9jby1idXR0b24+XHJcbiAgICAgICAgPGNvLWJ1dHRvbiBjbGFzcz1cImNhbmNlbC1idXR0b25cIlxyXG4gICAgICAgICAgICAgICAgICAgW2ljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29ucy5Dcm9zc3NraW5ueSlcIlxyXG4gICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImhhbmRsZUNhbmNlbENsaWNrKClcIlxyXG4gICAgICAgID48L2NvLWJ1dHRvbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxjby10cmFuc2FjdGlvbi1jb25maXJtYXRpb24taGlzdG9yeVxyXG4gICAgICBbY29sbGVjdGlvbl09XCJmaWx0ZXJlZERvY0JhdGNoQXJyYXlcIlxyXG4gICAgICAoZGVsZXRlUm93KT1cImhhbmRsZURlbGV0ZUhpc3RvcnlSb3coJGV2ZW50KVwiXHJcbiAgICAgIChzZWxlY3RSb3cpPVwiaGFuZGxlU2VsZWN0SGlzdG9yeVJvdygkZXZlbnQpXCJcclxuICAgID48L2NvLXRyYW5zYWN0aW9uLWNvbmZpcm1hdGlvbi1oaXN0b3J5PlxyXG4gIGAsXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICBGb3JtTWFzdGVyU2VydmljZVxyXG4gIF0sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25MaW5lUHVyY2hhc2VDb25maXJtYXRpb25Db21wb25lbnQgZXh0ZW5kcyBUcmFuc2FjdGlvbkJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgcHVibGljIHJlYWRvbmx5IHRyYW5zYWN0aW9uVHlwZUNhdGVnb3J5OiB0eXBlb2YgVHJhbnNhY3Rpb25UeXBlQ2F0ZWdvcnkgPSBUcmFuc2FjdGlvblR5cGVDYXRlZ29yeTtcclxuXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5jby10cmFuc2FjdGlvbi1saW5lLXB1cmNoYXNlLWNvbmZpcm1hdGlvbicpXHJcbiAgcHVibGljIHNob3dDbGFzcygpIHtcclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGRvY0RlbGl2ZXJ5QmF0Y2g6IERvY0RlbGl2ZXJ5QmF0Y2ggPSBuZXcgRG9jRGVsaXZlcnlCYXRjaCgpO1xyXG4gIHB1YmxpYyBmaWx0ZXJlZERvY0JhdGNoQXJyYXk6IERvY0RlbGl2ZXJ5QmF0Y2hbXSA9IFtdO1xyXG5cclxuICBwcml2YXRlIF9zdWJzOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuX3N1YnMucHVzaChcclxuICAgICAgdGhpcy50cmFuc2FjdGlvbkV2ZW50U2VydmljZS50cmFuc2FjdGlvbkxpbmVDaGFuZ2VkLnN1YnNjcmliZSgobGluZTogVHJhbnNhY3Rpb25MaW5lSW5mbykgPT4ge1xyXG4gICAgICAgIGlmIChsaW5lLmxpbmVOciA9PT0gdGhpcy50cmFuc2FjdGlvbkxpbmUubGluZU5yKSB7XHJcbiAgICAgICAgICB0aGlzLl91cGRhdGVCYXRjaEFycmF5KCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICAgIHRoaXMuX2luaXROZXdEb2NEZWxpdmVyeUJhdGNoKCk7XHJcbiAgICB0aGlzLl91cGRhdGVCYXRjaEFycmF5KCk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XHJcbiAgICB0aGlzLl9zdWJzLmZvckVhY2gocyA9PiBzLnVuc3Vic2NyaWJlKCkpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIGhhbmRsZVNhdmVEZXRhaWxzRWRpdCgpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGlmICh0aGlzLmRvY0RlbGl2ZXJ5QmF0Y2guZG9jQW1vdW50ICYmIHRoaXMuZG9jRGVsaXZlcnlCYXRjaC5jb25maXJtZWRQcmljZSkge1xyXG4gICAgICAvLyBjaGVjayBpZiB0aGVyZSBpcyBhIGNvcnJlc3BvbmRpbmcgXCJHIHJlY29yZFwiXHJcbiAgICAgIGNvbnN0IGV4aXN0aW5nQmF0Y2ggPSB0aGlzLnRyYW5zYWN0aW9uTGluZS5wdXJjaGFzZVBvcnRhbExpbmUuZG9jQmF0Y2hBcnJheS5maW5kKGJhID0+IGJhLmRlbGl2ZXJ5QmF0Y2ggPT09IHRoaXMuZG9jRGVsaXZlcnlCYXRjaC5kZWxpdmVyeUJhdGNoICYmIGJhLmhpc3RvcmljYWwgPT09IFwiR1wiKTtcclxuICAgICAgaWYgKGV4aXN0aW5nQmF0Y2gpIHsgLy8gY2hhbmdlIHRoYXQgb25lXHJcbiAgICAgICAgZXhpc3RpbmdCYXRjaC5jb25maXJtZWRQcmljZSA9IHRoaXMuZG9jRGVsaXZlcnlCYXRjaC5jb25maXJtZWRQcmljZTtcclxuICAgICAgICBleGlzdGluZ0JhdGNoLmRvY0Ftb3VudCA9IHRoaXMuZG9jRGVsaXZlcnlCYXRjaC5kb2NBbW91bnQ7XHJcbiAgICAgICAgZXhpc3RpbmdCYXRjaC5kb2NEYXRlID0gdGhpcy5kb2NEZWxpdmVyeUJhdGNoLmRvY0RhdGU7XHJcbiAgICAgICAgZXhpc3RpbmdCYXRjaC5yZWZlcmVuY2UgPSB0aGlzLmRvY0RlbGl2ZXJ5QmF0Y2gucmVmZXJlbmNlO1xyXG4gICAgICAgIGV4aXN0aW5nQmF0Y2guZG9jQW1vdW50T3JnID0gdGhpcy5kb2NEZWxpdmVyeUJhdGNoLmRvY0Ftb3VudE9yZztcclxuICAgICAgICBleGlzdGluZ0JhdGNoLmRvY0RhdGVPcmcgPSB0aGlzLmRvY0RlbGl2ZXJ5QmF0Y2guZG9jRGF0ZU9yZztcclxuICAgICAgfSBlbHNlIHsgLy8gb3IgY3JlYXRlIGEgbmV3IG9uZVxyXG4gICAgICAgIHRoaXMuZG9jRGVsaXZlcnlCYXRjaC5kZWxldGVMaW5lID0gJ0YnO1xyXG4gICAgICAgIHRoaXMuZG9jRGVsaXZlcnlCYXRjaC5oaXN0b3JpY2FsID0gJ0cnO1xyXG4gICAgICAgIHRoaXMudHJhbnNhY3Rpb25MaW5lLnB1cmNoYXNlUG9ydGFsTGluZS5kb2NCYXRjaEFycmF5LnB1c2godGhpcy5kb2NEZWxpdmVyeUJhdGNoKTtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLnRyYW5zYWN0aW9uTGluZS5wdXJjaGFzZVBvcnRhbExpbmUuZG9jS2luZCA9ICdJQic7XHJcbiAgICAgIGNvbnN0IHN1Y2Nlc3M6IGJvb2xlYW4gPSBhd2FpdCB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS51cGRhdGVQdXJjaGFzZVBvcnRhbExpbmVzKHRoaXMudHJhbnNhY3Rpb25JbmZvLmlkLCB0aGlzLnRyYW5zYWN0aW9uSW5mby52ZXJzaW9uLCB0aGlzLnRyYW5zYWN0aW9uTGluZS5wdXJjaGFzZVBvcnRhbExpbmUpO1xyXG4gICAgICBpZiAoc3VjY2Vzcykge1xyXG4gICAgICAgIHRoaXMuX2luaXROZXdEb2NEZWxpdmVyeUJhdGNoKCk7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBoYW5kbGVEZWxldGVIaXN0b3J5Um93KHJvdzogRG9jRGVsaXZlcnlCYXRjaCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgcm93LmRlbGV0ZUxpbmUgPSAnVCc7XHJcbiAgICB0aGlzLnRyYW5zYWN0aW9uTGluZS5wdXJjaGFzZVBvcnRhbExpbmUuZG9jS2luZCA9ICdJQic7XHJcbiAgICBjb25zdCBzdWNjZXNzOiBib29sZWFuID0gYXdhaXQgdGhpcy50cmFuc2FjdGlvblNlcnZpY2UudXBkYXRlUHVyY2hhc2VQb3J0YWxMaW5lcyh0aGlzLnRyYW5zYWN0aW9uSW5mby5pZCwgdGhpcy50cmFuc2FjdGlvbkluZm8udmVyc2lvbiwgdGhpcy50cmFuc2FjdGlvbkxpbmUucHVyY2hhc2VQb3J0YWxMaW5lKTtcclxuICAgIGlmIChzdWNjZXNzKSB7XHJcbiAgICAgIHRoaXMuX2luaXROZXdEb2NEZWxpdmVyeUJhdGNoKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlU2VsZWN0SGlzdG9yeVJvdyhyb3c6IERvY0RlbGl2ZXJ5QmF0Y2gpOiB2b2lkIHtcclxuICAgIHRoaXMuZG9jRGVsaXZlcnlCYXRjaCA9IHJvdztcclxuICAgIC8vIHRoaXMuZG9jRGVsaXZlcnlCYXRjaC5kb2NEYXRlID0gbmV3IERhdGUocm93LmRvY0RhdGUpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZUNhbmNlbENsaWNrKCk6IHZvaWQge1xyXG4gICAgdGhpcy5faW5pdE5ld0RvY0RlbGl2ZXJ5QmF0Y2goKTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCB0cmFuc2FjdGlvbkxpbmVTZXQoKSB7XHJcbiAgICBzdXBlci50cmFuc2FjdGlvbkxpbmVTZXQoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3VwZGF0ZUJhdGNoQXJyYXkoKTogdm9pZCB7XHJcbiAgICB0aGlzLmZpbHRlcmVkRG9jQmF0Y2hBcnJheSA9IHRoaXMudHJhbnNhY3Rpb25MaW5lLnB1cmNoYXNlUG9ydGFsTGluZS5kb2NCYXRjaEFycmF5LmZpbHRlcih2YWx1ZSA9PiB2YWx1ZS5oaXN0b3JpY2FsLnRvTG93ZXJDYXNlKCkgPT09ICdoJyAmJiB2YWx1ZS5kb2NBbW91bnQgPj0gMCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9pbml0TmV3RG9jRGVsaXZlcnlCYXRjaCgpOiB2b2lkIHtcclxuICAgIHRoaXMuZG9jRGVsaXZlcnlCYXRjaCA9IG5ldyBEb2NEZWxpdmVyeUJhdGNoKCk7XHJcbiAgICB0aGlzLmRvY0RlbGl2ZXJ5QmF0Y2guZG9jQW1vdW50ID0gK3RoaXMudHJhbnNhY3Rpb25MaW5lLnB1cmNoYXNlUG9ydGFsTGluZS5hbW91bnRPcmRlcmVkO1xyXG4gICAgdGhpcy5kb2NEZWxpdmVyeUJhdGNoLmNvbmZpcm1lZFByaWNlID0gK3RoaXMudHJhbnNhY3Rpb25MaW5lLnB1cmNoYXNlUG9ydGFsTGluZS5uZXRPcmRlclByaWNlO1xyXG4gIH1cclxufVxyXG4iXX0=
160
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tbGluZS1wdXJjaGFzZS1jb25maXJtYXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJhbnNhY3Rpb24vc3JjL2xpYi9jb21wb25lbnQvdHJhbnNhY3Rpb24tbGluZS1wdXJjaGFzZS1jb25maXJtYXRpb24vdHJhbnNhY3Rpb24tbGluZS1wdXJjaGFzZS1jb25maXJtYXRpb24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFdBQVcsRUFBcUIsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDM0YsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFDakYsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDL0QsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sNERBQTRELENBQUM7QUFFNUYsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFxRWxGLE1BQU0sT0FBTyw0Q0FBNkMsU0FBUSx3QkFBd0I7SUFsRTFGOztRQW1Fa0IsNEJBQXVCLEdBQW1DLHVCQUF1QixDQUFDO1FBTzNGLHFCQUFnQixHQUFxQixJQUFJLGdCQUFnQixFQUFFLENBQUM7UUFDNUQsMEJBQXFCLEdBQXVCLEVBQUUsQ0FBQztRQUU5QyxVQUFLLEdBQW1CLEVBQUUsQ0FBQztJQTRFckMsQ0FBQztJQW5GUSxTQUFTO1FBQ2QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBT0QsUUFBUTtRQUNOLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUNiLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxzQkFBc0IsQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUF5QixFQUFFLEVBQUU7WUFDMUYsSUFBSSxJQUFJLENBQUMsTUFBTSxLQUFLLElBQUksQ0FBQyxlQUFl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Q1QsaUJBQWlCO2lCQUNsQjtnQkFDRCxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTthQUN0Qzs7O3dCQUlFLFdBQVcsU0FBQyxpREFBaUQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSG9zdEJpbmRpbmcsIE9uRGVzdHJveSwgT25Jbml0LCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25CYXNlQ29tcG9uZW50fSBmcm9tICcuLi9jb3JlL2Jhc2UvdHJhbnNhY3Rpb24tYmFzZS5jb21wb25lbnQnO1xyXG5pbXBvcnQge0Zvcm1NYXN0ZXJTZXJ2aWNlfSBmcm9tICdAY29saWpuaXQvY29yZWNvbXBvbmVudHNfdjEyJztcclxuaW1wb3J0IHtEb2NEZWxpdmVyeUJhdGNofSBmcm9tICdAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvZG9jLWRlbGl2ZXJ5LWJhdGNoLmJvJztcclxuaW1wb3J0IHtTdWJzY3JpcHRpb259IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uVHlwZUNhdGVnb3J5fSBmcm9tICcuLi8uLi9lbnVtL3RyYW5zYWN0aW9uLXR5cGUtY2F0ZWdvcnkuZW51bSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25MaW5lSW5mb30gZnJvbSAnQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3RyYW5zYWN0aW9uLWxpbmUtaW5mby5ibyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2NvLXRyYW5zYWN0aW9uLWxpbmUtcHVyY2hhc2UtY29uZmlybWF0aW9uJyxcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPGRpdiBjbGFzcz1cImNvbmZpcm1hdGlvbi1kZXRhaWxzLXdyYXBwZXIgZm9ybS1hbmQtYnV0dG9uc1wiPlxyXG4gICAgICA8Y28tZm9ybT5cclxuICAgICAgICA8IS0tZGl2IGNsYXNzPVwiaGVhZGVyLXdyYXBwZXJcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdGF0dXMtaGVhZGVyXCI+XHJcbiAgICAgICAgICAgIDxzcGFuIFt0ZXh0Q29udGVudF09XCInU1RBVEUnIHwgbG9jYWxpemVcIj48L3NwYW4+XHJcbiAgICAgICAgICAgIDxjby10cmFuc2FjdGlvbi1saW5lLXN0YXR1c2JhciBjbGFzcz1cInN0YXR1cy1iYXItd3JhcHBlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdHJhbnNhY3Rpb25JbmZvXT1cInRyYW5zYWN0aW9uSW5mb1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdHJhbnNhY3Rpb25MaW5lXT1cInRyYW5zYWN0aW9uTGluZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYWN0aXZlQ2F0ZWdvcnldPVwidHJhbnNhY3Rpb25UeXBlQ2F0ZWdvcnkuUHVyY2hhc2VPcmRlck9yZGVyQ29uZmlybWF0aW9uXCJcclxuICAgICAgICAgICAgPjwvY28tdHJhbnNhY3Rpb24tbGluZS1zdGF0dXNiYXI+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdi0tPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJzaWRlLXBhbmVsLWlucHV0LXJvd1wiPlxyXG4gICAgICAgICAgPGNvLWlucHV0LW51bWJlci1waWNrZXIgY2xhc3M9XCJzaWRlLXBhbmVsLWlucHV0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsobW9kZWwpXT1cImRvY0RlbGl2ZXJ5QmF0Y2guZG9jQW1vdW50XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFttaW5dPVwiMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbWF4XT1cIit0cmFuc2FjdGlvbkxpbmUucHVyY2hhc2VQb3J0YWxMaW5lLmFtb3VudE9yZGVyZWRcIlxyXG4gICAgICAgICAgPjwvY28taW5wdXQtbnVtYmVyLXBpY2tlcj5cclxuICAgICAgICAgIDxjby1pbnB1dC1kYXRlIGNsYXNzPVwic2lkZS1wYW5lbC1pbnB1dFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ0NPTkZJUk1FRF9EQVRFJyB8IGxvY2FsaXplXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFsobW9kZWwpXT1cImRvY0RlbGl2ZXJ5QmF0Y2guZG9jRGF0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlZFxyXG4gICAgICAgICAgPjwvY28taW5wdXQtZGF0ZT5cclxuICAgICAgICAgIDxjby10cmFuc2FjdGlvbi1sYWJlbGVkLXByaWNlLWlucHV0IGNsYXNzPVwic2lkZS1wYW5lbC1pbnB1dFwiXHJcbiAgICAgICAgICAgIFsobW9kZWwpXT1cImRvY0RlbGl2ZXJ5QmF0Y2guY29uZmlybWVkUHJpY2VcIlxyXG4gICAgICAgICAgICBbZGVmYXVsdEVkaXRNb2RlXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidDT05GSVJNRURfUFJJQ0UnIHwgbG9jYWxpemVcIlxyXG4gICAgICAgICAgICBbcmVxdWlyZWRdPVwidHJ1ZVwiXHJcbiAgICAgICAgICA+PC9jby10cmFuc2FjdGlvbi1sYWJlbGVkLXByaWNlLWlucHV0PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJzaWRlLXBhbmVsLWlucHV0LXJvd1wiPlxyXG4gICAgICAgICAgICA8Y28taW5wdXQtdGV4dCBjbGFzcz1cInNpZGUtcGFuZWwtaW5wdXRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBbKG1vZGVsKV09XCJkb2NEZWxpdmVyeUJhdGNoLnJlZmVyZW5jZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInUkVGRVJFTkNFJyB8IGxvY2FsaXplXCJcclxuICAgICAgICAgICAgPjwvY28taW5wdXQtdGV4dD5cclxuICAgICAgICAgICAgPGNvLWlucHV0LXRleHQgY2xhc3M9XCJzaWRlLXBhbmVsLWlucHV0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwiZG9jRGVsaXZlcnlCYXRjaC5kZWxpdmVyeUJhdGNoXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidERUxJVkVSWV9CQVRDSCcgfCBsb2NhbGl6ZVwiXHJcbiAgICAgICAgICAgID48L2NvLWlucHV0LXRleHQ+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvY28tZm9ybT5cclxuXHJcbiAgICAgIDxkaXYgY2xhc3M9XCJzYXZlLWNhbmNlbC13cmFwcGVyXCI+XHJcbiAgICAgICAgPGNvLWJ1dHRvbiBbaWNvbkRhdGFdPVwiaWNvbkNhY2hlU2VydmljZS5nZXRJY29uKGljb25zLkNoZWNrRHVvdG9uZSlcIlxyXG4gICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImhhbmRsZVNhdmVEZXRhaWxzRWRpdCgpXCJcclxuICAgICAgICA+PC9jby1idXR0b24+XHJcbiAgICAgICAgPGNvLWJ1dHRvbiBjbGFzcz1cImNhbmNlbC1idXR0b25cIlxyXG4gICAgICAgICAgICAgICAgICAgW2ljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29ucy5Dcm9zc3NraW5ueSlcIlxyXG4gICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImhhbmRsZUNhbmNlbENsaWNrKClcIlxyXG4gICAgICAgID48L2NvLWJ1dHRvbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxjby10cmFuc2FjdGlvbi1jb25maXJtYXRpb24taGlzdG9yeVxyXG4gICAgICBbY29sbGVjdGlvbl09XCJmaWx0ZXJlZERvY0JhdGNoQXJyYXlcIlxyXG4gICAgICAoZGVsZXRlUm93KT1cImhhbmRsZURlbGV0ZUhpc3RvcnlSb3coJGV2ZW50KVwiXHJcbiAgICAgIChzZWxlY3RSb3cpPVwiaGFuZGxlU2VsZWN0SGlzdG9yeVJvdygkZXZlbnQpXCJcclxuICAgID48L2NvLXRyYW5zYWN0aW9uLWNvbmZpcm1hdGlvbi1oaXN0b3J5PlxyXG4gIGAsXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICBGb3JtTWFzdGVyU2VydmljZVxyXG4gIF0sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25MaW5lUHVyY2hhc2VDb25maXJtYXRpb25Db21wb25lbnQgZXh0ZW5kcyBUcmFuc2FjdGlvbkJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgcHVibGljIHJlYWRvbmx5IHRyYW5zYWN0aW9uVHlwZUNhdGVnb3J5OiB0eXBlb2YgVHJhbnNhY3Rpb25UeXBlQ2F0ZWdvcnkgPSBUcmFuc2FjdGlvblR5cGVDYXRlZ29yeTtcclxuXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5jby10cmFuc2FjdGlvbi1saW5lLXB1cmNoYXNlLWNvbmZpcm1hdGlvbicpXHJcbiAgcHVibGljIHNob3dDbGFzcygpIHtcclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGRvY0RlbGl2ZXJ5QmF0Y2g6IERvY0RlbGl2ZXJ5QmF0Y2ggPSBuZXcgRG9jRGVsaXZlcnlCYXRjaCgpO1xyXG4gIHB1YmxpYyBmaWx0ZXJlZERvY0JhdGNoQXJyYXk6IERvY0RlbGl2ZXJ5QmF0Y2hbXSA9IFtdO1xyXG5cclxuICBwcml2YXRlIF9zdWJzOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuX3N1YnMucHVzaChcclxuICAgICAgdGhpcy50cmFuc2FjdGlvbkV2ZW50U2VydmljZS50cmFuc2FjdGlvbkxpbmVDaGFuZ2VkLnN1YnNjcmliZSgobGluZTogVHJhbnNhY3Rpb25MaW5lSW5mbykgPT4ge1xyXG4gICAgICAgIGlmIChsaW5lLmxpbmVOciA9PT0gdGhpcy50cmFuc2FjdGlvbkxpbmUubGluZU5yKSB7XHJcbiAgICAgICAgICB0aGlzLl91cGRhdGVCYXRjaEFycmF5KCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICAgIHRoaXMuX2luaXROZXdEb2NEZWxpdmVyeUJhdGNoKCk7XHJcbiAgICB0aGlzLl91cGRhdGVCYXRjaEFycmF5KCk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XHJcbiAgICB0aGlzLl9zdWJzLmZvckVhY2gocyA9PiBzLnVuc3Vic2NyaWJlKCkpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIGhhbmRsZVNhdmVEZXRhaWxzRWRpdCgpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGlmICh0aGlzLmRvY0RlbGl2ZXJ5QmF0Y2guZG9jQW1vdW50ICYmIHRoaXMuZG9jRGVsaXZlcnlCYXRjaC5jb25maXJtZWRQcmljZSkge1xyXG4gICAgICAvLyBjaGVjayBpZiB0aGVyZSBpcyBhIGNvcnJlc3BvbmRpbmcgXCJHIHJlY29yZFwiXHJcbiAgICAgIGNvbnN0IGV4aXN0aW5nQmF0Y2ggPSB0aGlzLnRyYW5zYWN0aW9uTGluZS5wdXJjaGFzZVBvcnRhbExpbmUuZG9jQmF0Y2hBcnJheS5maW5kKGJhID0+IGJhLmRlbGl2ZXJ5QmF0Y2ggPT09IHRoaXMuZG9jRGVsaXZlcnlCYXRjaC5kZWxpdmVyeUJhdGNoICYmIGJhLmhpc3RvcmljYWwgPT09IFwiR1wiKTtcclxuICAgICAgaWYgKGV4aXN0aW5nQmF0Y2gpIHsgLy8gY2hhbmdlIHRoYXQgb25lXHJcbiAgICAgICAgZXhpc3RpbmdCYXRjaC5jb25maXJtZWRQcmljZSA9IHRoaXMuZG9jRGVsaXZlcnlCYXRjaC5jb25maXJtZWRQcmljZTtcclxuICAgICAgICBleGlzdGluZ0JhdGNoLmRvY0Ftb3VudCA9IHRoaXMuZG9jRGVsaXZlcnlCYXRjaC5kb2NBbW91bnQ7XHJcbiAgICAgICAgZXhpc3RpbmdCYXRjaC5kb2NEYXRlID0gdGhpcy5kb2NEZWxpdmVyeUJhdGNoLmRvY0RhdGU7XHJcbiAgICAgICAgZXhpc3RpbmdCYXRjaC5yZWZlcmVuY2UgPSB0aGlzLmRvY0RlbGl2ZXJ5QmF0Y2gucmVmZXJlbmNlO1xyXG4gICAgICB9IGVsc2UgeyAvLyBvciBjcmVhdGUgYSBuZXcgb25lXHJcbiAgICAgICAgdGhpcy5kb2NEZWxpdmVyeUJhdGNoLmRlbGV0ZUxpbmUgPSAnRic7XHJcbiAgICAgICAgdGhpcy5kb2NEZWxpdmVyeUJhdGNoLmhpc3RvcmljYWwgPSAnRyc7XHJcbiAgICAgICAgdGhpcy50cmFuc2FjdGlvbkxpbmUucHVyY2hhc2VQb3J0YWxMaW5lLmRvY0JhdGNoQXJyYXkucHVzaCh0aGlzLmRvY0RlbGl2ZXJ5QmF0Y2gpO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMudHJhbnNhY3Rpb25MaW5lLnB1cmNoYXNlUG9ydGFsTGluZS5kb2NLaW5kID0gJ0lCJztcclxuICAgICAgY29uc3Qgc3VjY2VzczogYm9vbGVhbiA9IGF3YWl0IHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLnVwZGF0ZVB1cmNoYXNlUG9ydGFsTGluZXModGhpcy50cmFuc2FjdGlvbkluZm8uaWQsIHRoaXMudHJhbnNhY3Rpb25JbmZvLnZlcnNpb24sIHRoaXMudHJhbnNhY3Rpb25MaW5lLnB1cmNoYXNlUG9ydGFsTGluZSk7XHJcbiAgICAgIGlmIChzdWNjZXNzKSB7XHJcbiAgICAgICAgdGhpcy5faW5pdE5ld0RvY0RlbGl2ZXJ5QmF0Y2goKTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIGhhbmRsZURlbGV0ZUhpc3RvcnlSb3cocm93OiBEb2NEZWxpdmVyeUJhdGNoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICByb3cuZGVsZXRlTGluZSA9ICdUJztcclxuICAgIHRoaXMudHJhbnNhY3Rpb25MaW5lLnB1cmNoYXNlUG9ydGFsTGluZS5kb2NLaW5kID0gJ0lCJztcclxuICAgIGNvbnN0IHN1Y2Nlc3M6IGJvb2xlYW4gPSBhd2FpdCB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS51cGRhdGVQdXJjaGFzZVBvcnRhbExpbmVzKHRoaXMudHJhbnNhY3Rpb25JbmZvLmlkLCB0aGlzLnRyYW5zYWN0aW9uSW5mby52ZXJzaW9uLCB0aGlzLnRyYW5zYWN0aW9uTGluZS5wdXJjaGFzZVBvcnRhbExpbmUpO1xyXG4gICAgaWYgKHN1Y2Nlc3MpIHtcclxuICAgICAgdGhpcy5faW5pdE5ld0RvY0RlbGl2ZXJ5QmF0Y2goKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVTZWxlY3RIaXN0b3J5Um93KHJvdzogRG9jRGVsaXZlcnlCYXRjaCk6IHZvaWQge1xyXG4gICAgdGhpcy5kb2NEZWxpdmVyeUJhdGNoID0gcm93O1xyXG4gICAgdGhpcy5kb2NEZWxpdmVyeUJhdGNoLmRvY0RhdGUgPSBuZXcgRGF0ZShyb3cuZG9jRGF0ZSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlQ2FuY2VsQ2xpY2soKTogdm9pZCB7XHJcbiAgICB0aGlzLl9pbml0TmV3RG9jRGVsaXZlcnlCYXRjaCgpO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIHRyYW5zYWN0aW9uTGluZVNldCgpIHtcclxuICAgIHN1cGVyLnRyYW5zYWN0aW9uTGluZVNldCgpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfdXBkYXRlQmF0Y2hBcnJheSgpOiB2b2lkIHtcclxuICAgIHRoaXMuZmlsdGVyZWREb2NCYXRjaEFycmF5ID0gdGhpcy50cmFuc2FjdGlvbkxpbmUucHVyY2hhc2VQb3J0YWxMaW5lLmRvY0JhdGNoQXJyYXkuZmlsdGVyKHZhbHVlID0+IHZhbHVlLmhpc3RvcmljYWwudG9Mb3dlckNhc2UoKSA9PT0gJ2gnICYmIHZhbHVlLmRvY0Ftb3VudCA+PSAwKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2luaXROZXdEb2NEZWxpdmVyeUJhdGNoKCk6IHZvaWQge1xyXG4gICAgdGhpcy5kb2NEZWxpdmVyeUJhdGNoID0gbmV3IERvY0RlbGl2ZXJ5QmF0Y2goKTtcclxuICAgIHRoaXMuZG9jRGVsaXZlcnlCYXRjaC5kb2NBbW91bnQgPSB0aGlzLnRyYW5zYWN0aW9uTGluZS5wdXJjaGFzZVBvcnRhbExpbmUuZG9jQmF0Y2hBcnJheS5sZW5ndGggPT09IDBcclxuICAgICAgICA/ICt0aGlzLnRyYW5zYWN0aW9uTGluZS5hbW91bnRcclxuICAgICAgICA6ICt0aGlzLnRyYW5zYWN0aW9uTGluZS5wdXJjaGFzZVBvcnRhbExpbmUuYW1vdW50T3JkZXJlZFxyXG4gICAgdGhpcy5kb2NEZWxpdmVyeUJhdGNoLmNvbmZpcm1lZFByaWNlID0gK3RoaXMudHJhbnNhY3Rpb25MaW5lLnB1cmNoYXNlUG9ydGFsTGluZS5uZXRPcmRlclByaWNlO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -48,8 +48,8 @@ export class TransactionQuickAccessOrderConfirmationComponent extends Transactio
48
48
  .map((line) => {
49
49
  const details = new PurchaseOrderConfirmationLineDetails();
50
50
  details.lineNumber = line.lineNr;
51
- details.amountConfirmed = line.quantityPurchaseToConfirm;
52
- details.confirmedDate = this.purchaseOrderConfirmation.confirmationDate;
51
+ details.amountConfirmed = +line.purchasePortalLine.amountToBeConfirmed;
52
+ details.confirmedDate = line.purchasePortalLine.deliveryDateConfirmed ? new Date(line.purchasePortalLine.deliveryDateConfirmed) : this.purchaseOrderConfirmation.confirmationDate;
53
53
  details.confirmedPrice = +line.purchasePortalLine.confirmedPrice;
54
54
  return details;
55
55
  });
@@ -102,4 +102,4 @@ TransactionQuickAccessOrderConfirmationComponent.decorators = [
102
102
  TransactionQuickAccessOrderConfirmationComponent.propDecorators = {
103
103
  showClass: [{ type: HostBinding, args: ['class.co-transaction-quick-access-order-confirmation',] }]
104
104
  };
105
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tcXVpY2stYWNjZXNzLW9yZGVyLWNvbmZpcm1hdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cmFuc2FjdGlvbi9zcmMvbGliL2NvbXBvbmVudC90cmFuc2FjdGlvbi1xdWljay1hY2Nlc3MvdHJhbnNhY3Rpb24tcXVpY2stYWNjZXNzLW9yZGVyLWNvbmZpcm1hdGlvbi90cmFuc2FjdGlvbi1xdWljay1hY2Nlc3Mtb3JkZXItY29uZmlybWF0aW9uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxXQUFXLEVBQVUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDaEYsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sNENBQTRDLENBQUM7QUFDcEYsT0FBTyxFQUFDLDRCQUE0QixFQUFDLE1BQU0sc0VBQXNFLENBQUM7QUFDbEgsT0FBTyxFQUFDLG9DQUFvQyxFQUFDLE1BQU0sK0VBQStFLENBQUM7QUE0Q25JLE1BQU0sT0FBTyxnREFBaUQsU0FBUSx3QkFBd0I7SUExQzlGOztRQTRDVyw4QkFBeUIsR0FBaUMsSUFBSSw0QkFBNEIsRUFBRSxDQUFDO1FBTzdGLG1CQUFjLEdBQVksS0FBSyxDQUFDO1FBQ2hDLGdCQUFXLEdBQVksSUFBSSxDQUFDO1FBRTVCLGdDQUEyQixHQUFZLEtBQUssQ0FBQztJQTRDeEQsQ0FBQztJQW5EVSxTQUFTO1FBQ1osT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQU9NLFFBQVE7UUFDWCxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDakIsSUFBSSxDQUFDLHNCQUFzQixHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxrQ0FBa0MsQ0FBQztRQUN6RixJQUFJLENBQUMseUJBQXlCLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztJQUNqRSxDQUFDO0lBRU0sb0JBQW9CLENBQUMsS0FBYztRQUN0QyxJQUFJLENBQUMsdUJBQXVCLENBQUMsbUNBQW1DLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pGLENBQUM7SUFFWSxpQkFBaUIsQ0FBQyxLQUFpQjs7WUFDNUMsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7WUFDekIsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUM7WUFDM0IsSUFBSSxPQUFPLEdBQVksS0FBSyxDQUFDO1lBQzdCLElBQUksSUFBSSxDQUFDLHlCQUF5QixDQUFDLFNBQVMsRUFBRTtnQkFDMUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7Z0JBQ3hCLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxFQUFFLENBQUM7Z0JBQ2pFLE9BQU8sR0FBRyxNQUFNLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMseUJBQXlCLENBQUMsQ0FBQztnQkFDekosSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO2FBQ3hCO1lBQ0QsSUFBSSxDQUFDLGNBQWMsR0FBRyxLQUFLLENBQUM7WUFDNUIsSUFBSSxDQUFDLFdBQVcsR0FBRyxPQUFPLENBQUM7WUFDM0IsSUFBSSxDQUFDLDJCQUEyQixHQUFHLEtBQUssQ0FBQztRQUM3QyxDQUFDO0tBQUE7SUFFTSxnQ0FBZ0M7UUFDbkMsSUFBSSxDQUFDLDJCQUEyQixHQUFHLElBQUksQ0FBQztRQUN4QyxJQUFJLENBQUMsdUJBQXVCLENBQUMsa0RBQWtELENBQUMsSUFBSSxFQUFFLENBQUM7SUFDM0YsQ0FBQztJQUVPLGdCQUFnQjtRQUNwQixJQUFJLENBQUMseUJBQXlCLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxnQkFBZ0I7YUFDdkQsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO2FBQy9CLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQ1YsTUFBTSxPQUFPLEdBQXlDLElBQUksb0NBQW9DLEVBQUUsQ0FBQztZQUNqRyxPQUFPLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7WUFDakMsT0FBTyxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMseUJBQXlCLENBQUM7WUFDekQsT0FBTyxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMseUJBQXlCLENBQUMsZ0JBQWdCLENBQUM7WUFDeEUsT0FBTyxDQUFDLGNBQWMsR0FBRyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLENBQUM7WUFDakUsT0FBTyxPQUFPLENBQUM7UUFDbkIsQ0FBQyxDQUFDLENBQUM7SUFDWCxDQUFDOzs7WUFqR0osU0FBUyxTQUFDO2dCQUNQLFFBQVEsRUFBRSxnREFBZ0Q7Z0JBQzFELFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLQXFDVDtnQkFDRCxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTthQUN4Qzs7O3dCQUtJLFdBQVcsU0FBQyxzREFBc0QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSG9zdEJpbmRpbmcsIE9uSW5pdCwgVmlld0VuY2Fwc3VsYXRpb259IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uQmFzZUNvbXBvbmVudH0gZnJvbSAnLi4vLi4vY29yZS9iYXNlL3RyYW5zYWN0aW9uLWJhc2UuY29tcG9uZW50JztcclxuaW1wb3J0IHtHZXRQdXJjaGFzZU9yZGVyQ29uZmlybWF0aW9ufSBmcm9tICdAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvZ2V0LXB1cmNoYXNlLW9yZGVyLWNvbmZpcm1hdGlvbic7XHJcbmltcG9ydCB7UHVyY2hhc2VPcmRlckNvbmZpcm1hdGlvbkxpbmVEZXRhaWxzfSBmcm9tICdAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvcHVyY2hhc2Utb3JkZXItY29uZmlybWF0aW9uLWxpbmUtZGV0YWlscyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnY28tdHJhbnNhY3Rpb24tcXVpY2stYWNjZXNzLW9yZGVyLWNvbmZpcm1hdGlvbicsXHJcbiAgICB0ZW1wbGF0ZTogYFxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJxdWljay1hY2Nlc3Mtd3JhcHBlclwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29uZmlybS1pbnB1dHNcIiAqbmdJZj1cIiFoaWRlUXVpY2tBY2Nlc3NDb250ZW50IHx8IGZvcmNlU2hvd0NvbmZpcm1hdGlvbklucHV0c1wiPlxyXG4gICAgICAgICAgICAgICAgPGNvLWlucHV0LWNoZWNrYm94IChtb2RlbENoYW5nZSk9XCJoYW5kbGVTZWxlY3RBbGxMaW5lcygkZXZlbnQpXCI+PC9jby1pbnB1dC1jaGVja2JveD5cclxuICAgICAgICAgICAgICAgIDxjby1pbnB1dC1kYXRlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFsobW9kZWwpXT1cInB1cmNoYXNlT3JkZXJDb25maXJtYXRpb24uY29uZmlybWF0aW9uRGF0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInQ09ORklSTUVEX0RBVEUnIHwgbG9jYWxpemVcIlxyXG4gICAgICAgICAgICAgICAgPjwvY28taW5wdXQtZGF0ZT5cclxuICAgICAgICAgICAgICAgIDxjby1pbnB1dC10ZXh0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFsobW9kZWwpXT1cInB1cmNoYXNlT3JkZXJDb25maXJtYXRpb24ucmVmZXJlbmNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidSRUZFUkVOQ0UnIHwgbG9jYWxpemVcIlxyXG4gICAgICAgICAgICAgICAgPjwvY28taW5wdXQtdGV4dD5cclxuPCEtLVxyXG4gICAgICAgICAgICAgICAgPGNvLWlucHV0LXRleHRcclxuICAgICAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwicHVyY2hhc2VPcmRlckNvbmZpcm1hdGlvbi5sZXZlckJhdGNoXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidCQVRDSCcgfCBsb2NhbGl6ZVwiXHJcbiAgICAgICAgICAgICAgICA+PC9jby1pbnB1dC10ZXh0PlxyXG4tLT5cclxuICAgICAgICAgICAgICAgIDxjby1xdWljay1zZW5kLWJ1dHRvblxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbdGl0bGVdPVwiJ1BST0NFU1MnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2ljb25dPVwiaWNvbnMuQ2hlY2tEdW90b25lXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW3Nob3dTZW5kTWV0aG9kSWNvbl09XCJmYWxzZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtzaG93U2VuZE1ldGhvZERpYWxvZ0ljb25dPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbc2hvd0xvYWRlcl09XCJhd2FpdGluZ1Jlc3VsdFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChzZW5kSWNvbkNsaWNrZWQpPVwiaGFuZGxlQ29tbWl0RXZlbnQoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICA+PC9jby1xdWljay1zZW5kLWJ1dHRvbj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICA8IS0tICAgICAgPGRpdiBjbGFzcz1cInNob3ctY29uZmlybWF0aW9uLWlucHV0cy13cmFwcGVyXCIgKm5nSWY9XCJoaWRlUXVpY2tBY2Nlc3NDb250ZW50ICYmICFmb3JjZVNob3dDb25maXJtYXRpb25JbnB1dHNcIj4tLT5cclxuICAgICAgICAgICAgPCEtLSAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWJ1dHRvbi0tPlxyXG4gICAgICAgICAgICA8IS0tICAgICAgICAgIGNsYXNzPVwibmV3LWNvbmZpcm1hdGlvbi1idXR0b24gY3VzdG9tLXdpZHRoXCItLT5cclxuICAgICAgICAgICAgPCEtLSAgICAgICAgICBbaWNvbkRhdGFdPVwiaWNvbkNhY2hlU2VydmljZS5nZXRJY29uKGljb25zLlBsdXNTaW1wbGUpXCItLT5cclxuICAgICAgICAgICAgPCEtLSAgICAgICAgICBbbGFiZWxdPVwiJ05FV19DT05GSVJNQVRJT04nIHwgbG9jYWxpemVcIi0tPlxyXG4gICAgICAgICAgICA8IS0tICAgICAgICAgIChjbGljayk9XCJoYW5kbGVOZXdDb25maXJtYXRpb25CdXR0b25DbGljaygpXCItLT5cclxuICAgICAgICAgICAgPCEtLSAgICAgICAgPjwvY28tdHJhbnNhY3Rpb24tYnV0dG9uPi0tPlxyXG4gICAgICAgICAgICA8IS0tICAgICAgPC9kaXY+LS0+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICBgLFxyXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25RdWlja0FjY2Vzc09yZGVyQ29uZmlybWF0aW9uQ29tcG9uZW50IGV4dGVuZHMgVHJhbnNhY3Rpb25CYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgICBwdWJsaWMgcHVyY2hhc2VPcmRlckNvbmZpcm1hdGlvbjogR2V0UHVyY2hhc2VPcmRlckNvbmZpcm1hdGlvbiA9IG5ldyBHZXRQdXJjaGFzZU9yZGVyQ29uZmlybWF0aW9uKCk7XHJcblxyXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5jby10cmFuc2FjdGlvbi1xdWljay1hY2Nlc3Mtb3JkZXItY29uZmlybWF0aW9uJylcclxuICAgIHB1YmxpYyBzaG93Q2xhc3MoKSB7XHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGF3YWl0aW5nUmVzdWx0OiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBwdWJsaWMgaWNvblZpc2libGU6IGJvb2xlYW4gPSB0cnVlO1xyXG4gICAgcHVibGljIGhpZGVRdWlja0FjY2Vzc0NvbnRlbnQ6IGJvb2xlYW47XHJcbiAgICBwdWJsaWMgZm9yY2VTaG93Q29uZmlybWF0aW9uSW5wdXRzOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gICAgcHVibGljIG5nT25Jbml0KCkge1xyXG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XHJcbiAgICAgICAgdGhpcy5oaWRlUXVpY2tBY2Nlc3NDb250ZW50ID0gdGhpcy50cmFuc2FjdGlvblNlcnZpY2UucHVyY2hhc2VPcmRlckNvbmZpcm1hdGlvbkNvbXBsZXRlZDtcclxuICAgICAgICB0aGlzLnB1cmNoYXNlT3JkZXJDb25maXJtYXRpb24uY29uZmlybWF0aW9uRGF0ZSA9IG5ldyBEYXRlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGhhbmRsZVNlbGVjdEFsbExpbmVzKHZhbHVlOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy50cmFuc2FjdGlvbkV2ZW50U2VydmljZS5zZWxlY3RBbGxTYWxlc09yZGVyTGluZXNGb3JQdXJjaGFzZS5uZXh0KHZhbHVlKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgYXN5bmMgaGFuZGxlQ29tbWl0RXZlbnQoZXZlbnQ6IE1vdXNlRXZlbnQpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgICAgICB0aGlzLmljb25WaXNpYmxlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5hd2FpdGluZ1Jlc3VsdCA9IHRydWU7XHJcbiAgICAgICAgbGV0IHN1Y2Nlc3M6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgICAgICBpZiAodGhpcy5wdXJjaGFzZU9yZGVyQ29uZmlybWF0aW9uLnJlZmVyZW5jZSkge1xyXG4gICAgICAgICAgICB0aGlzLl9zZXRSZXF1ZXN0TGluZXMoKTtcclxuICAgICAgICAgICAgdGhpcy5wdXJjaGFzZU9yZGVyQ29uZmlybWF0aW9uLnRyYW5zSWQgPSB0aGlzLnRyYW5zYWN0aW9uSW5mby5pZDtcclxuICAgICAgICAgICAgc3VjY2VzcyA9IGF3YWl0IHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLnB1cmNoYXNlT3JkZXJDb25maXJtYXRpb24odGhpcy50cmFuc2FjdGlvbkluZm8uaWQsIHRoaXMudHJhbnNhY3Rpb25JbmZvLnZlcnNpb24sIHRoaXMucHVyY2hhc2VPcmRlckNvbmZpcm1hdGlvbik7XHJcbiAgICAgICAgICAgIHRoaXMuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmF3YWl0aW5nUmVzdWx0ID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5pY29uVmlzaWJsZSA9IHN1Y2Nlc3M7XHJcbiAgICAgICAgdGhpcy5mb3JjZVNob3dDb25maXJtYXRpb25JbnB1dHMgPSBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgaGFuZGxlTmV3Q29uZmlybWF0aW9uQnV0dG9uQ2xpY2soKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5mb3JjZVNob3dDb25maXJtYXRpb25JbnB1dHMgPSB0cnVlO1xyXG4gICAgICAgIHRoaXMudHJhbnNhY3Rpb25FdmVudFNlcnZpY2Uub3ZlcndyaXRlUHVyY2hhc2VPcmRlckNvbmZpcm1hdGlvbkNvbXBsZXRlZENoYW5nZWQubmV4dCgpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX3NldFJlcXVlc3RMaW5lcygpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLnB1cmNoYXNlT3JkZXJDb25maXJtYXRpb24ubGluZXMgPSB0aGlzLnRyYW5zYWN0aW9uTGluZXNcclxuICAgICAgICAgICAgLmZpbHRlcigobGluZSkgPT4gbGluZS5zZWxlY3RlZClcclxuICAgICAgICAgICAgLm1hcCgobGluZSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgZGV0YWlsczogUHVyY2hhc2VPcmRlckNvbmZpcm1hdGlvbkxpbmVEZXRhaWxzID0gbmV3IFB1cmNoYXNlT3JkZXJDb25maXJtYXRpb25MaW5lRGV0YWlscygpO1xyXG4gICAgICAgICAgICAgICAgZGV0YWlscy5saW5lTnVtYmVyID0gbGluZS5saW5lTnI7XHJcbiAgICAgICAgICAgICAgICBkZXRhaWxzLmFtb3VudENvbmZpcm1lZCA9IGxpbmUucXVhbnRpdHlQdXJjaGFzZVRvQ29uZmlybTtcclxuICAgICAgICAgICAgICAgIGRldGFpbHMuY29uZmlybWVkRGF0ZSA9IHRoaXMucHVyY2hhc2VPcmRlckNvbmZpcm1hdGlvbi5jb25maXJtYXRpb25EYXRlO1xyXG4gICAgICAgICAgICAgICAgZGV0YWlscy5jb25maXJtZWRQcmljZSA9ICtsaW5lLnB1cmNoYXNlUG9ydGFsTGluZS5jb25maXJtZWRQcmljZTtcclxuICAgICAgICAgICAgICAgIHJldHVybiBkZXRhaWxzO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgIH1cclxufVxyXG4iXX0=
105
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tcXVpY2stYWNjZXNzLW9yZGVyLWNvbmZpcm1hdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cmFuc2FjdGlvbi9zcmMvbGliL2NvbXBvbmVudC90cmFuc2FjdGlvbi1xdWljay1hY2Nlc3MvdHJhbnNhY3Rpb24tcXVpY2stYWNjZXNzLW9yZGVyLWNvbmZpcm1hdGlvbi90cmFuc2FjdGlvbi1xdWljay1hY2Nlc3Mtb3JkZXItY29uZmlybWF0aW9uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxXQUFXLEVBQVUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDaEYsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sNENBQTRDLENBQUM7QUFDcEYsT0FBTyxFQUFDLDRCQUE0QixFQUFDLE1BQU0sc0VBQXNFLENBQUM7QUFDbEgsT0FBTyxFQUFDLG9DQUFvQyxFQUFDLE1BQU0sK0VBQStFLENBQUM7QUE0Q25JLE1BQU0sT0FBTyxnREFBaUQsU0FBUSx3QkFBd0I7SUExQzlGOztRQTRDVyw4QkFBeUIsR0FBaUMsSUFBSSw0QkFBNEIsRUFBRSxDQUFDO1FBTzdGLG1CQUFjLEdBQVksS0FBSyxDQUFDO1FBQ2hDLGdCQUFXLEdBQVksSUFBSSxDQUFDO1FBRTVCLGdDQUEyQixHQUFZLEtBQUssQ0FBQztJQTRDeEQsQ0FBQztJQW5EVSxTQUFTO1FBQ1osT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQU9NLFFBQVE7UUFDWCxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDakIsSUFBSSxDQUFDLHNCQUFzQixHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxrQ0FBa0MsQ0FBQztRQUN6RixJQUFJLENBQUMseUJBQXlCLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztJQUNqRSxDQUFDO0lBRU0sb0JBQW9CLENBQUMsS0FBYztRQUN0QyxJQUFJLENBQUMsdUJBQXVCLENBQUMsbUNBQW1DLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pGLENBQUM7SUFFWSxpQkFBaUIsQ0FBQyxLQUFpQjs7WUFDNUMsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7WUFDekIsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUM7WUFDM0IsSUFBSSxPQUFPLEdBQVksS0FBSyxDQUFDO1lBQzdCLElBQUksSUFBSSxDQUFDLHlCQUF5QixDQUFDLFNBQVMsRUFBRTtnQkFDMUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7Z0JBQ3hCLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxFQUFFLENBQUM7Z0JBQ2pFLE9BQU8sR0FBRyxNQUFNLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMseUJBQXlCLENBQUMsQ0FBQztnQkFDekosSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO2FBQ3hCO1lBQ0QsSUFBSSxDQUFDLGNBQWMsR0FBRyxLQUFLLENBQUM7WUFDNUIsSUFBSSxDQUFDLFdBQVcsR0FBRyxPQUFPLENBQUM7WUFDM0IsSUFBSSxDQUFDLDJCQUEyQixHQUFHLEtBQUssQ0FBQztRQUM3QyxDQUFDO0tBQUE7SUFFTSxnQ0FBZ0M7UUFDbkMsSUFBSSxDQUFDLDJCQUEyQixHQUFHLElBQUksQ0FBQztRQUN4QyxJQUFJLENBQUMsdUJBQXVCLENBQUMsa0RBQWtELENBQUMsSUFBSSxFQUFFLENBQUM7SUFDM0YsQ0FBQztJQUVPLGdCQUFnQjtRQUNwQixJQUFJLENBQUMseUJBQXlCLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxnQkFBZ0I7YUFDdkQsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO2FBQy9CLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQ1YsTUFBTSxPQUFPLEdBQXlDLElBQUksb0NBQW9DLEVBQUUsQ0FBQztZQUNqRyxPQUFPLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7WUFDakMsT0FBTyxDQUFDLGVBQWUsR0FBRyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxtQkFBbUIsQ0FBQztZQUN2RSxPQUFPLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLHFCQUFxQixDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxnQkFBZ0IsQ0FBQztZQUNsTCxPQUFPLENBQUMsY0FBYyxHQUFHLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGNBQWMsQ0FBQztZQUNqRSxPQUFPLE9BQU8sQ0FBQztRQUNuQixDQUFDLENBQUMsQ0FBQztJQUNYLENBQUM7OztZQWpHSixTQUFTLFNBQUM7Z0JBQ1AsUUFBUSxFQUFFLGdEQUFnRDtnQkFDMUQsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tBcUNUO2dCQUNELGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2FBQ3hDOzs7d0JBS0ksV0FBVyxTQUFDLHNEQUFzRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBIb3N0QmluZGluZywgT25Jbml0LCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25CYXNlQ29tcG9uZW50fSBmcm9tICcuLi8uLi9jb3JlL2Jhc2UvdHJhbnNhY3Rpb24tYmFzZS5jb21wb25lbnQnO1xyXG5pbXBvcnQge0dldFB1cmNoYXNlT3JkZXJDb25maXJtYXRpb259IGZyb20gJ0Bjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9nZXQtcHVyY2hhc2Utb3JkZXItY29uZmlybWF0aW9uJztcclxuaW1wb3J0IHtQdXJjaGFzZU9yZGVyQ29uZmlybWF0aW9uTGluZURldGFpbHN9IGZyb20gJ0Bjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9wdXJjaGFzZS1vcmRlci1jb25maXJtYXRpb24tbGluZS1kZXRhaWxzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdjby10cmFuc2FjdGlvbi1xdWljay1hY2Nlc3Mtb3JkZXItY29uZmlybWF0aW9uJyxcclxuICAgIHRlbXBsYXRlOiBgXHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInF1aWNrLWFjY2Vzcy13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb25maXJtLWlucHV0c1wiICpuZ0lmPVwiIWhpZGVRdWlja0FjY2Vzc0NvbnRlbnQgfHwgZm9yY2VTaG93Q29uZmlybWF0aW9uSW5wdXRzXCI+XHJcbiAgICAgICAgICAgICAgICA8Y28taW5wdXQtY2hlY2tib3ggKG1vZGVsQ2hhbmdlKT1cImhhbmRsZVNlbGVjdEFsbExpbmVzKCRldmVudClcIj48L2NvLWlucHV0LWNoZWNrYm94PlxyXG4gICAgICAgICAgICAgICAgPGNvLWlucHV0LWRhdGVcclxuICAgICAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwicHVyY2hhc2VPcmRlckNvbmZpcm1hdGlvbi5jb25maXJtYXRpb25EYXRlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidDT05GSVJNRURfREFURScgfCBsb2NhbGl6ZVwiXHJcbiAgICAgICAgICAgICAgICA+PC9jby1pbnB1dC1kYXRlPlxyXG4gICAgICAgICAgICAgICAgPGNvLWlucHV0LXRleHRcclxuICAgICAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwicHVyY2hhc2VPcmRlckNvbmZpcm1hdGlvbi5yZWZlcmVuY2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ1JFRkVSRU5DRScgfCBsb2NhbGl6ZVwiXHJcbiAgICAgICAgICAgICAgICA+PC9jby1pbnB1dC10ZXh0PlxyXG48IS0tXHJcbiAgICAgICAgICAgICAgICA8Y28taW5wdXQtdGV4dFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbKG1vZGVsKV09XCJwdXJjaGFzZU9yZGVyQ29uZmlybWF0aW9uLmxldmVyQmF0Y2hcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ0JBVENIJyB8IGxvY2FsaXplXCJcclxuICAgICAgICAgICAgICAgID48L2NvLWlucHV0LXRleHQ+XHJcbi0tPlxyXG4gICAgICAgICAgICAgICAgPGNvLXF1aWNrLXNlbmQtYnV0dG9uXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFt0aXRsZV09XCInUFJPQ0VTUydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbaWNvbl09XCJpY29ucy5DaGVja0R1b3RvbmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbc2hvd1NlbmRNZXRob2RJY29uXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW3Nob3dTZW5kTWV0aG9kRGlhbG9nSWNvbl09XCJmYWxzZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtzaG93TG9hZGVyXT1cImF3YWl0aW5nUmVzdWx0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgKHNlbmRJY29uQ2xpY2tlZCk9XCJoYW5kbGVDb21taXRFdmVudCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgID48L2NvLXF1aWNrLXNlbmQtYnV0dG9uPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgIDwhLS0gICAgICA8ZGl2IGNsYXNzPVwic2hvdy1jb25maXJtYXRpb24taW5wdXRzLXdyYXBwZXJcIiAqbmdJZj1cImhpZGVRdWlja0FjY2Vzc0NvbnRlbnQgJiYgIWZvcmNlU2hvd0NvbmZpcm1hdGlvbklucHV0c1wiPi0tPlxyXG4gICAgICAgICAgICA8IS0tICAgICAgICA8Y28tdHJhbnNhY3Rpb24tYnV0dG9uLS0+XHJcbiAgICAgICAgICAgIDwhLS0gICAgICAgICAgY2xhc3M9XCJuZXctY29uZmlybWF0aW9uLWJ1dHRvbiBjdXN0b20td2lkdGhcIi0tPlxyXG4gICAgICAgICAgICA8IS0tICAgICAgICAgIFtpY29uRGF0YV09XCJpY29uQ2FjaGVTZXJ2aWNlLmdldEljb24oaWNvbnMuUGx1c1NpbXBsZSlcIi0tPlxyXG4gICAgICAgICAgICA8IS0tICAgICAgICAgIFtsYWJlbF09XCInTkVXX0NPTkZJUk1BVElPTicgfCBsb2NhbGl6ZVwiLS0+XHJcbiAgICAgICAgICAgIDwhLS0gICAgICAgICAgKGNsaWNrKT1cImhhbmRsZU5ld0NvbmZpcm1hdGlvbkJ1dHRvbkNsaWNrKClcIi0tPlxyXG4gICAgICAgICAgICA8IS0tICAgICAgICA+PC9jby10cmFuc2FjdGlvbi1idXR0b24+LS0+XHJcbiAgICAgICAgICAgIDwhLS0gICAgICA8L2Rpdj4tLT5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIGAsXHJcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvblF1aWNrQWNjZXNzT3JkZXJDb25maXJtYXRpb25Db21wb25lbnQgZXh0ZW5kcyBUcmFuc2FjdGlvbkJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICAgIHB1YmxpYyBwdXJjaGFzZU9yZGVyQ29uZmlybWF0aW9uOiBHZXRQdXJjaGFzZU9yZGVyQ29uZmlybWF0aW9uID0gbmV3IEdldFB1cmNoYXNlT3JkZXJDb25maXJtYXRpb24oKTtcclxuXHJcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmNvLXRyYW5zYWN0aW9uLXF1aWNrLWFjY2Vzcy1vcmRlci1jb25maXJtYXRpb24nKVxyXG4gICAgcHVibGljIHNob3dDbGFzcygpIHtcclxuICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgYXdhaXRpbmdSZXN1bHQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIHB1YmxpYyBpY29uVmlzaWJsZTogYm9vbGVhbiA9IHRydWU7XHJcbiAgICBwdWJsaWMgaGlkZVF1aWNrQWNjZXNzQ29udGVudDogYm9vbGVhbjtcclxuICAgIHB1YmxpYyBmb3JjZVNob3dDb25maXJtYXRpb25JbnB1dHM6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgICBwdWJsaWMgbmdPbkluaXQoKSB7XHJcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcclxuICAgICAgICB0aGlzLmhpZGVRdWlja0FjY2Vzc0NvbnRlbnQgPSB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5wdXJjaGFzZU9yZGVyQ29uZmlybWF0aW9uQ29tcGxldGVkO1xyXG4gICAgICAgIHRoaXMucHVyY2hhc2VPcmRlckNvbmZpcm1hdGlvbi5jb25maXJtYXRpb25EYXRlID0gbmV3IERhdGUoKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgaGFuZGxlU2VsZWN0QWxsTGluZXModmFsdWU6IGJvb2xlYW4pOiB2b2lkIHtcclxuICAgICAgICB0aGlzLnRyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlLnNlbGVjdEFsbFNhbGVzT3JkZXJMaW5lc0ZvclB1cmNoYXNlLm5leHQodmFsdWUpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBhc3luYyBoYW5kbGVDb21taXRFdmVudChldmVudDogTW91c2VFdmVudCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgICAgIHRoaXMuaWNvblZpc2libGUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmF3YWl0aW5nUmVzdWx0ID0gdHJ1ZTtcclxuICAgICAgICBsZXQgc3VjY2VzczogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgICAgIGlmICh0aGlzLnB1cmNoYXNlT3JkZXJDb25maXJtYXRpb24ucmVmZXJlbmNlKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX3NldFJlcXVlc3RMaW5lcygpO1xyXG4gICAgICAgICAgICB0aGlzLnB1cmNoYXNlT3JkZXJDb25maXJtYXRpb24udHJhbnNJZCA9IHRoaXMudHJhbnNhY3Rpb25JbmZvLmlkO1xyXG4gICAgICAgICAgICBzdWNjZXNzID0gYXdhaXQgdGhpcy50cmFuc2FjdGlvblNlcnZpY2UucHVyY2hhc2VPcmRlckNvbmZpcm1hdGlvbih0aGlzLnRyYW5zYWN0aW9uSW5mby5pZCwgdGhpcy50cmFuc2FjdGlvbkluZm8udmVyc2lvbiwgdGhpcy5wdXJjaGFzZU9yZGVyQ29uZmlybWF0aW9uKTtcclxuICAgICAgICAgICAgdGhpcy5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuYXdhaXRpbmdSZXN1bHQgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmljb25WaXNpYmxlID0gc3VjY2VzcztcclxuICAgICAgICB0aGlzLmZvcmNlU2hvd0NvbmZpcm1hdGlvbklucHV0cyA9IGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBoYW5kbGVOZXdDb25maXJtYXRpb25CdXR0b25DbGljaygpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmZvcmNlU2hvd0NvbmZpcm1hdGlvbklucHV0cyA9IHRydWU7XHJcbiAgICAgICAgdGhpcy50cmFuc2FjdGlvbkV2ZW50U2VydmljZS5vdmVyd3JpdGVQdXJjaGFzZU9yZGVyQ29uZmlybWF0aW9uQ29tcGxldGVkQ2hhbmdlZC5uZXh0KCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBfc2V0UmVxdWVzdExpbmVzKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMucHVyY2hhc2VPcmRlckNvbmZpcm1hdGlvbi5saW5lcyA9IHRoaXMudHJhbnNhY3Rpb25MaW5lc1xyXG4gICAgICAgICAgICAuZmlsdGVyKChsaW5lKSA9PiBsaW5lLnNlbGVjdGVkKVxyXG4gICAgICAgICAgICAubWFwKChsaW5lKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBkZXRhaWxzOiBQdXJjaGFzZU9yZGVyQ29uZmlybWF0aW9uTGluZURldGFpbHMgPSBuZXcgUHVyY2hhc2VPcmRlckNvbmZpcm1hdGlvbkxpbmVEZXRhaWxzKCk7XHJcbiAgICAgICAgICAgICAgICBkZXRhaWxzLmxpbmVOdW1iZXIgPSBsaW5lLmxpbmVOcjtcclxuICAgICAgICAgICAgICAgIGRldGFpbHMuYW1vdW50Q29uZmlybWVkID0gK2xpbmUucHVyY2hhc2VQb3J0YWxMaW5lLmFtb3VudFRvQmVDb25maXJtZWQ7XHJcbiAgICAgICAgICAgICAgICBkZXRhaWxzLmNvbmZpcm1lZERhdGUgPSBsaW5lLnB1cmNoYXNlUG9ydGFsTGluZS5kZWxpdmVyeURhdGVDb25maXJtZWQgPyBuZXcgRGF0ZShsaW5lLnB1cmNoYXNlUG9ydGFsTGluZS5kZWxpdmVyeURhdGVDb25maXJtZWQpIDogdGhpcy5wdXJjaGFzZU9yZGVyQ29uZmlybWF0aW9uLmNvbmZpcm1hdGlvbkRhdGU7XHJcbiAgICAgICAgICAgICAgICBkZXRhaWxzLmNvbmZpcm1lZFByaWNlID0gK2xpbmUucHVyY2hhc2VQb3J0YWxMaW5lLmNvbmZpcm1lZFByaWNlO1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIGRldGFpbHM7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -50,14 +50,14 @@ export class RelationService {
50
50
  this._boFactory = new BusinessObjectFactory();
51
51
  }
52
52
  getCustomerFullObject(relationNo) {
53
- // return this._selectSingleCacheService.requestCache<CustomerFullObject>(CustomerFullObject, relationNo, () => {
54
- return this._adapterService.getCustomerFullObject(relationNo);
55
- // }).getValue();
53
+ return this._selectSingleCacheService.requestCache(CustomerFullObject, relationNo, () => {
54
+ return this._adapterService.getCustomerFullObject(relationNo);
55
+ }).getValue();
56
56
  }
57
57
  getSupplierFullObject(relationNo) {
58
- // return this._selectSingleCacheService.requestCache<SupplierFullObject>(SupplierFullObject, relationNo, () => {
59
- return this._adapterService.getSupplierFullObject(relationNo);
60
- // }).getValue();
58
+ return this._selectSingleCacheService.requestCache(SupplierFullObject, relationNo, () => {
59
+ return this._adapterService.getSupplierFullObject(relationNo);
60
+ }).getValue();
61
61
  }
62
62
  insertAddress(address) {
63
63
  return this._adapterService.insertAddress(address);
@@ -66,19 +66,27 @@ export class RelationService {
66
66
  return this._adapterService.updateAddress(address);
67
67
  }
68
68
  insertCustomer(relation) {
69
- return this._adapterService.insertCustomer(relation);
69
+ return this._selectSingleCacheService.requestCache(CustomerFullObject, relation.relationNumber, () => {
70
+ return this._adapterService.insertCustomer(relation);
71
+ }, true).getValue();
70
72
  }
71
73
  updateCustomer(relation) {
72
74
  return __awaiter(this, void 0, void 0, function* () {
73
- return this._adapterService.updateCustomer(relation);
75
+ return this._selectSingleCacheService.requestCache(CustomerFullObject, relation.relationNumber, () => {
76
+ return this._adapterService.updateCustomer(relation);
77
+ }, true).getValue();
74
78
  });
75
79
  }
76
80
  insertSupplier(relation) {
77
- return this._adapterService.insertSupplier(relation);
81
+ return this._selectSingleCacheService.requestCache(SupplierFullObject, relation.relationNumber, () => {
82
+ return this._adapterService.insertSupplier(relation);
83
+ }, true).getValue();
78
84
  }
79
85
  updateSupplier(relation) {
80
86
  return __awaiter(this, void 0, void 0, function* () {
81
- return this._adapterService.updateSupplier(relation);
87
+ return this._selectSingleCacheService.requestCache(SupplierFullObject, relation.relationNumber, () => {
88
+ return this._adapterService.updateSupplier(relation);
89
+ }, true).getValue();
82
90
  });
83
91
  }
84
92
  getRelationListObjects(relationRequest) {
@@ -194,4 +202,4 @@ RelationService.ctorParameters = () => [
194
202
  { type: SelectSingleCacheService },
195
203
  { type: SelectMultipleParameterizedCacheService }
196
204
  ];
197
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVsYXRpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvc2VydmljZS9yZWxhdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBQywwQkFBMEIsRUFBQyxNQUFNLGdEQUFnRCxDQUFDO0FBQzFGLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQ3RFLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxvREFBb0QsQ0FBQztBQUNoRixPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSx1REFBdUQsQ0FBQztBQUN2RixPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSwyREFBMkQsQ0FBQztBQUM3RixPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sb0RBQW9ELENBQUM7QUFDbkYsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sMkRBQTJELENBQUM7QUFDN0YsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGlEQUFpRCxDQUFDO0FBQzFFLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDJEQUEyRCxDQUFDO0FBQzdGLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLDhDQUE4QyxDQUFDO0FBQ3RGLE9BQU8sRUFBQyx1Q0FBdUMsRUFBQyxNQUFNLDhEQUE4RCxDQUFDO0FBQ3JILE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSwrQ0FBK0MsQ0FBQztBQUd2RSxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSwrREFBK0QsQ0FBQztBQUNwRyxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sTUFBTSxDQUFDOzs7Ozs7QUFXN0IsTUFBTSxPQUFPLGVBQWU7SUErQjFCLFlBQ1UsZUFBeUMsRUFDekMsMkJBQXVELEVBQ3ZELHlCQUFtRCxFQUNu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QUFVLFNBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkI7OztZQXhCTyx3QkFBd0I7WUFEeEIsMEJBQTBCO1lBUzFCLHdCQUF3QjtZQUN4Qix1Q0FBdUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1NlbGVjdE11bHRpcGxlQ2FjaGVTZXJ2aWNlfSBmcm9tICcuLi9jYWNoZS9zZXJ2aWNlL3NlbGVjdC1tdWx0aXBsZS1jYWNoZS5zZXJ2aWNlJztcclxuaW1wb3J0IHtSZWxhdGlvbkNvbm5lY3RvclNlcnZpY2V9IGZyb20gJy4vcmVsYXRpb24tY29ubmVjdG9yLnNlcnZpY2UnO1xyXG5pbXBvcnQge1JlbGF0aW9uS2luZH0gZnJvbSAnQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvZW51bS9yZWxhdGlvbi1raW5kLmVudW0nO1xyXG5pbXBvcnQge1ZhbGlkYXRpb25SZXN1bHR9IGZyb20gJ0Bjb2xpam5pdC9pb25lY29ubmVjdG9yL2J1aWxkL21vZGVsL3ZhbGlkYXRpb24tcmVzdWx0JztcclxuaW1wb3J0IHtDdXN0b21lckZ1bGxPYmplY3R9IGZyb20gJ0Bjb2xpam5pdC9yZWxhdGlvbmFwaS9idWlsZC9tb2RlbC9jdXN0b21lci1mdWxsLW9iamVjdC5ibyc7XHJcbmltcG9ydCB7UmVsYXRpb25SZXF1ZXN0fSBmcm9tICdAY29saWpuaXQvcmVsYXRpb25hcGkvYnVpbGQvbW9kZWwvcmVsYXRpb24tcmVxdWVzdCc7XHJcbmltcG9ydCB7UmVsYXRpb25MaXN0T2JqZWN0fSBmcm9tICdAY29saWpuaXQvcmVsYXRpb25hcGkvYnVpbGQvbW9kZWwvcmVsYXRpb24tbGlzdC1vYmplY3QuYm8nO1xyXG5pbXBvcnQge0JyYW5jaExvdn0gZnJvbSAnQGNvbGlqbml0L3JlbGF0aW9uYXBpL2J1aWxkL21vZGVsL2JyYW5jaC1sb3YuYm8nO1xyXG5pbXBvcnQge1N1cHBsaWVyRnVsbE9iamVjdH0gZnJvbSAnQGNvbGlqbml0L3JlbGF0aW9uYXBpL2J1aWxkL21vZGVsL3N1cHBsaWVyLWZ1bGwtb2JqZWN0LmJvJztcclxuaW1wb3J0IHtTZWxlY3RTaW5nbGVDYWNoZVNlcnZpY2V9IGZyb20gJy4uL2NhY2hlL3NlcnZpY2Uvc2VsZWN0LXNpbmdsZS1jYWNoZS5zZXJ2aWNlJztcclxuaW1wb3J0IHtTZWxlY3RNdWx0aXBsZVBhcmFtZXRlcml6ZWRDYWNoZVNlcnZpY2V9IGZyb20gJy4uL2NhY2hlL3NlcnZpY2Uvc2VsZWN0LW11bHRpcGxlLXBhcmFtZXRlcml6ZWQtY2FjaGUuc2VydmljZSc7XHJcbmltcG9ydCB7UmVsYXRpb259IGZyb20gJ0Bjb2xpam5pdC9yZWxhdGlvbmFwaS9idWlsZC9tb2RlbC9yZWxhdGlvbi5ibyc7XHJcbmltcG9ydCB7UmVsYXRpb25BbnlUeXBlfSBmcm9tICdAY29saWpuaXQvcmVsYXRpb25hcGkvYnVpbGQvbW9kZWwvcmVsYXRpb24tYW55LXR5cGUnO1xyXG5pbXBvcnQge0FkZHJlc3N9IGZyb20gJ0Bjb2xpam5pdC9yZWxhdGlvbmFwaS9idWlsZC9tb2RlbC9hZGRyZXNzLmJvJztcclxuaW1wb3J0IHtCdXNpbmVzc09iamVjdEZhY3Rvcnl9IGZyb20gJ0Bjb2xpam5pdC9pb25lY29ubmVjdG9yL2J1aWxkL3NlcnZpY2UvYnVzaW5lc3Mtb2JqZWN0LWZhY3RvcnknO1xyXG5pbXBvcnQge1N1YmplY3R9IGZyb20gJ3J4anMnO1xyXG5cclxudHlwZSBMb2NrRm5IZWFkZXIgPSAocmVsYXRpb25OcjogbnVtYmVyKSA9PiBQcm9taXNlPFZhbGlkYXRpb25SZXN1bHQ+O1xyXG50eXBlIEdldFJlbGF0aW9uRm5IZWFkZXIgPSAocmVsYXRpb25OcjogbnVtYmVyKSA9PiBQcm9taXNlPFJlbGF0aW9uQW55VHlwZT47XHJcbnR5cGUgSW5zZXJ0UmVsYXRpb25GbiA9IChyZWxhdGlvbjogUmVsYXRpb25BbnlUeXBlKSA9PiBQcm9taXNlPFJlbGF0aW9uQW55VHlwZT47XHJcbnR5cGUgVXBkYXRlUmVsYXRpb25GbiA9IChyZWxhdGlvbjogUmVsYXRpb25BbnlUeXBlKSA9PiBQcm9taXNlPFJlbGF0aW9uQW55VHlwZT47XHJcblxyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46IFwicm9vdFwiXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBSZWxhdGlvblNlcnZpY2Uge1xyXG4gIHB1YmxpYyByZWxhdGlvblN1Z2dlc3Rpb25zUmVxdWVzdENsZWFyOiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuXHJcbiAgcHJpdmF0ZSByZWFkb25seSBfbG9ja01ldGhvZHM6IE1hcDxSZWxhdGlvbktpbmQsIExvY2tGbkhlYWRlcj4gPSBuZXcgTWFwPFJlbGF0aW9uS2luZCwgTG9ja0ZuSGVhZGVyPihbXHJcbiAgICBbUmVsYXRpb25LaW5kLkN1c3RvbWVyLCAocmVsYXRpb25OcjogbnVtYmVyKSA9PiB0aGlzLl9sb2NrQ3VzdG9tZXJGdWxsT2JqZWN0KHJlbGF0aW9uTnIpXSxcclxuICAgIFtSZWxhdGlvbktpbmQuU3VwcGxpZXIsIChyZWxhdGlvbk5yOiBudW1iZXIpID0+IHRoaXMuX2xvY2tTdXBwbGllckZ1bGxPYmplY3QocmVsYXRpb25OcildLFxyXG4gICAgW1JlbGF0aW9uS2luZC5QZXJzb25uZWwsIChyZWxhdGlvbk5yOiBudW1iZXIpID0+IHRoaXMuX2xvY2tFbXBsb3llZUZ1bGxPYmplY3QocmVsYXRpb25OcildLFxyXG4gICAgW1JlbGF0aW9uS2luZC5CcmFuY2gsIChyZWxhdGlvbk5yOiBudW1iZXIpID0+IHRoaXMuX2xvY2tCcmFuY2hGdWxsT2JqZWN0KHJlbGF0aW9uTnIpXSxcclxuICAgIFtSZWxhdGlvbktpbmQuQ29tcGFueSwgKHJlbGF0aW9uTnI6IG51bWJlcikgPT4gdGhpcy5fbG9ja0NvbXBhbnlGdWxsT2JqZWN0KHJlbGF0aW9uTnIpXSxcclxuICAgIFtSZWxhdGlvbktpbmQuQ29udGFjdFBlcnNvbiwgKHJlbGF0aW9uTnI6IG51bWJlcikgPT4gdGhpcy5fbG9ja0NvbnRhY3RQZXJzb24ocmVsYXRpb25OcildLFxyXG4gIF0pO1xyXG5cclxuICBwcml2YXRlIHJlYWRvbmx5IF9nZXRNZXRob2RzOiBNYXA8UmVsYXRpb25LaW5kLCBHZXRSZWxhdGlvbkZuSGVhZGVyPiA9IG5ldyBNYXA8UmVsYXRpb25LaW5kLCBHZXRSZWxhdGlvbkZuSGVhZGVyPihbXHJcbiAgICBbUmVsYXRpb25LaW5kLkN1c3RvbWVyLCAocmVsYXRpb25OcjogbnVtYmVyKSA9PiB0aGlzLmdldEN1c3RvbWVyRnVsbE9iamVjdChyZWxhdGlvbk5yKV0sXHJcbiAgICBbUmVsYXRpb25LaW5kLlN1cHBsaWVyLCAocmVsYXRpb25OcjogbnVtYmVyKSA9PiB0aGlzLmdldFN1cHBsaWVyRnVsbE9iamVjdChyZWxhdGlvbk5yKV1cclxuICBdKTtcclxuXHJcbiAgcHJpdmF0ZSByZWFkb25seSBfdXBkYXRlTWV0aG9kczogTWFwPFJlbGF0aW9uS2luZCwgVXBkYXRlUmVsYXRpb25Gbj4gPSBuZXcgTWFwPFJlbGF0aW9uS2luZCwgVXBkYXRlUmVsYXRpb25Gbj4oW1xyXG4gICAgW1JlbGF0aW9uS2luZC5DdXN0b21lciwgKHJlbGF0aW9uOiBDdXN0b21lckZ1bGxPYmplY3QpID0+IHRoaXMudXBkYXRlQ3VzdG9tZXIocmVsYXRpb24pXSxcclxuICAgIFtSZWxhdGlvbktpbmQuU3VwcGxpZXIsIChyZWxhdGlvbjogU3VwcGxpZXJGdWxsT2JqZWN0KSA9PiB0aGlzLnVwZGF0ZVN1cHBsaWVyKHJlbGF0aW9uKV1cclxuICBdKTtcclxuXHJcbiAgcHJpdmF0ZSByZWFkb25seSBfaW5zZXJ0TWV0aG9kczogTWFwPFJlbGF0aW9uS2luZCwgSW5zZXJ0UmVsYXRpb25Gbj4gPSBuZXcgTWFwPFJlbGF0aW9uS2luZCwgSW5zZXJ0UmVsYXRpb25Gbj4oW1xyXG4gICAgW1JlbGF0aW9uS2luZC5DdXN0b21lciwgKHJlbGF0aW9uOiBDdXN0b21lckZ1bGxPYmplY3QpID0+IHRoaXMuaW5zZXJ0Q3VzdG9tZXIocmVsYXRpb24pXSxcclxuICAgIFtSZWxhdGlvbktpbmQuU3VwcGxpZXIsIChyZWxhdGlvbjogU3VwcGxpZXJGdWxsT2JqZWN0KSA9PiB0aGlzLmluc2VydFN1cHBsaWVyKHJlbGF0aW9uKV1cclxuICBdKVxyXG5cclxuICBwdWJsaWMgcmVsYXRpb25Mb2NrZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgcHJpdmF0ZSBfYm9GYWN0b3J5OiBCdXNpbmVzc09iamVjdEZhY3RvcnkgPSBuZXcgQnVzaW5lc3NPYmplY3RGYWN0b3J5KCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBfYWRhcHRlclNlcnZpY2U6IFJlbGF0aW9uQ29ubmVjdG9yU2VydmljZSxcclxuICAgIHByaXZhdGUgX3NlbGVjdE11bHRpcGxlQ2FjaGVTZXJ2aWNlOiBTZWxlY3RNdWx0aXBsZUNhY2hlU2VydmljZSxcclxuICAgIHByaXZhdGUgX3NlbGVjdFNpbmdsZUNhY2hlU2VydmljZTogU2VsZWN0U2luZ2xlQ2FjaGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfc2VsZWN0TXVsdGlwbGVQYXJhbWV0ZXJpemVkQ2FjaGVTZXJ2aWNlOiBTZWxlY3RNdWx0aXBsZVBhcmFtZXRlcml6ZWRDYWNoZVNlcnZpY2VcclxuICApIHt9XHJcblxyXG4gIHB1YmxpYyBnZXRDdXN0b21lckZ1bGxPYmplY3QocmVsYXRpb25ObzogbnVtYmVyKTogUHJvbWlzZTxDdXN0b21lckZ1bGxPYmplY3Q+IHtcclxuICAgIC8vIHJldHVybiB0aGlzLl9zZWxlY3RTaW5nbGVDYWNoZVNlcnZpY2UucmVxdWVzdENhY2hlPEN1c3RvbWVyRnVsbE9iamVjdD4oQ3VzdG9tZXJGdWxsT2JqZWN0LCByZWxhdGlvbk5vLCAoKSA9PiB7XHJcbiAgICAgIHJldHVybiB0aGlzLl9hZGFwdGVyU2VydmljZS5nZXRDdXN0b21lckZ1bGxPYmplY3QocmVsYXRpb25Obyk7XHJcbiAgICAvLyB9KS5nZXRWYWx1ZSgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldFN1cHBsaWVyRnVsbE9iamVjdChyZWxhdGlvbk5vOiBudW1iZXIpOiBQcm9taXNlPFN1cHBsaWVyRnVsbE9iamVjdD4ge1xyXG4gICAgLy8gcmV0dXJuIHRoaXMuX3NlbGVjdFNpbmdsZUNhY2hlU2VydmljZS5yZXF1ZXN0Q2FjaGU8U3VwcGxpZXJGdWxsT2JqZWN0PihTdXBwbGllckZ1bGxPYmplY3QsIHJlbGF0aW9uTm8sICgpID0+IHtcclxuICAgICAgcmV0dXJuIHRoaXMuX2FkYXB0ZXJTZXJ2aWNlLmdldFN1cHBsaWVyRnVsbE9iamVjdChyZWxhdGlvbk5vKTtcclxuICAgIC8vIH0pLmdldFZhbHVlKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaW5zZXJ0QWRkcmVzcyhhZGRyZXNzOiBBZGRyZXNzKTogUHJvbWlzZTxBZGRyZXNzPiB7XHJcbiAgICByZXR1cm4gdGhpcy5fYWRhcHRlclNlcnZpY2UuaW5zZXJ0QWRkcmVzcyhhZGRyZXNzKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyB1cGRhdGVBZGRyZXNzKGFkZHJlc3M6IEFkZHJlc3MpOiBQcm9taXNlPEFkZHJlc3M+IHtcclxuICAgIHJldHVybiB0aGlzLl9hZGFwdGVyU2VydmljZS51cGRhdGVBZGRyZXNzKGFkZHJlc3MpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGluc2VydEN1c3RvbWVyKHJlbGF0aW9uOiBDdXN0b21lckZ1bGxPYmplY3QpOiBQcm9taXNlPEN1c3RvbWVyRnVsbE9iamVjdD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2FkYXB0ZXJTZXJ2aWNlLmluc2VydEN1c3RvbWVyKHJlbGF0aW9uKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyB1cGRhdGVDdXN0b21lcihyZWxhdGlvbjogQ3VzdG9tZXJGdWxsT2JqZWN0KTogUHJvbWlzZTxDdXN0b21lckZ1bGxPYmplY3Q+IHtcclxuICAgIHJldHVybiB0aGlzLl9hZGFwdGVyU2VydmljZS51cGRhdGVDdXN0b21lcihyZWxhdGlvbik7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaW5zZXJ0U3VwcGxpZXIocmVsYXRpb246IFN1cHBsaWVyRnVsbE9iamVjdCk6IFByb21pc2U8U3VwcGxpZXJGdWxsT2JqZWN0PiB7XHJcbiAgICByZXR1cm4gdGhpcy5fYWRhcHRlclNlcnZpY2UuaW5zZXJ0U3VwcGxpZXIocmVsYXRpb24pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIHVwZGF0ZVN1cHBsaWVyKHJlbGF0aW9uOiBTdXBwbGllckZ1bGxPYmplY3QpOiBQcm9taXNlPFN1cHBsaWVyRnVsbE9iamVjdD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2FkYXB0ZXJTZXJ2aWNlLnVwZGF0ZVN1cHBsaWVyKHJlbGF0aW9uKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRSZWxhdGlvbkxpc3RPYmplY3RzKHJlbGF0aW9uUmVxdWVzdDogUmVsYXRpb25SZXF1ZXN0KTogUHJvbWlzZTxSZWxhdGlvbkxpc3RPYmplY3RbXT4ge1xyXG4gICAgLy8gcmV0dXJuIHRoaXMuX3NlbGVjdE11bHRpcGxlUGFyYW1ldGVyaXplZENhY2hlU2VydmljZS5yZXF1ZXN0Q2FjaGU8UmVsYXRpb25MaXN0T2JqZWN0PihSZWxhdGlvbkxpc3RPYmplY3QsIChyZWxhdGlvblJlcXVlc3QpID0+IHtcclxuICAgICAgcmV0dXJuIHRoaXMuX2FkYXB0ZXJTZXJ2aWNlLmdldFJlbGF0aW9uTGlzdE9iamVjdHMocmVsYXRpb25SZXF1ZXN0KTtcclxuICAgIC8vIH0pLmdldFZhbHVlKHJlbGF0aW9uUmVxdWVzdCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0UmVsYXRpb25CeUlkKGlkOiBudW1iZXIpOiBQcm9taXNlPFJlbGF0aW9uTGlzdE9iamVjdFtdPiB7XHJcbiAgICByZXR1cm4gdGhpcy5fc2VsZWN0TXVsdGlwbGVQYXJhbWV0ZXJpemVkQ2FjaGVTZXJ2aWNlLnJlcXVlc3RDYWNoZTxSZWxhdGlvbkxpc3RPYmplY3Q+KFJlbGF0aW9uTGlzdE9iamVjdCwgKGlkOiBudW1iZXIpID0+IHtcclxuICAgICAgY29uc3QgcmVxdWVzdDogUmVsYXRpb25SZXF1ZXN0ID0gbmV3IFJlbGF0aW9uUmVxdWVzdCgpO1xyXG4gICAgICByZXF1ZXN0LnJlbGF0aW9uSWQgPSBpZDtcclxuICAgICAgcmV0dXJuIHRoaXMuZ2V0UmVsYXRpb25MaXN0T2JqZWN0cyhyZXF1ZXN0KTtcclxuICAgIH0pLmdldFZhbHVlKGlkKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRSZWxhdGlvbk51bWJlcihyZWxhdGlvbklkOiBudW1iZXIpOiBQcm9taXNlPHN0cmluZz4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2FkYXB0ZXJTZXJ2aWNlLmdldFJlbGF0aW9uTnVtYmVyKHJlbGF0aW9uSWQpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldEJyYW5jaGVzKGJyYW5jaE5yPzogc3RyaW5nKTogUHJvbWlzZTxCcmFuY2hMb3ZbXT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3NlbGVjdE11bHRpcGxlUGFyYW1ldGVyaXplZENhY2hlU2VydmljZS5yZXF1ZXN0Q2FjaGU8QnJhbmNoTG92PihCcmFuY2hMb3YsIChicmFuY2hOcj86IHN0cmluZykgPT4ge1xyXG4gICAgICByZXR1cm4gdGhpcy5fYWRhcHRlclNlcnZpY2UuZ2V0QnJhbmNoZXMoYnJhbmNoTnIpXHJcbiAgICB9KS5nZXRWYWx1ZShicmFuY2hOcik7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaW5zZXJ0UmVsYXRpb24ocmVsYXRpb25LaW5kOiBSZWxhdGlvbktpbmQsIHJlbGF0aW9uOiBSZWxhdGlvbik6IFByb21pc2U8UmVsYXRpb24+IHtcclxuICAgIGNvbnN0IGluc2VydE1ldGhvZDogSW5zZXJ0UmVsYXRpb25GbiA9IHRoaXMuX2luc2VydE1ldGhvZHMuZ2V0KHJlbGF0aW9uS2luZCk7XHJcbiAgICBpZiAoaW5zZXJ0TWV0aG9kKSB7XHJcbiAgICAgIHJldHVybiBpbnNlcnRNZXRob2QuY2FsbCh0aGlzLCByZWxhdGlvbik7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBjb25zdCByZXN1bHQ6IFJlbGF0aW9uID0gbmV3IFJlbGF0aW9uKCk7XHJcbiAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUocmVzdWx0KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyB1cGRhdGVSZWxhdGlvbihyZWxhdGlvbktpbmQ6IFJlbGF0aW9uS2luZCwgcmVsYXRpb246IFJlbGF0aW9uKTogUHJvbWlzZTxSZWxhdGlvbj4ge1xyXG4gICAgY29uc3QgdXBkYXRlTWV0aG9kOiBVcGRhdGVSZWxhdGlvbkZuID0gdGhpcy5fdXBkYXRlTWV0aG9kcy5nZXQocmVsYXRpb25LaW5kKTtcclxuICAgIGlmICh1cGRhdGVNZXRob2QpIHtcclxuICAgICAgdGhpcy5yZWxhdGlvbkxvY2tlZCA9IGZhbHNlO1xyXG4gICAgICByZXR1cm4gdXBkYXRlTWV0aG9kLmNhbGwodGhpcywgcmVsYXRpb24pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgY29uc3QgcmVzdWx0OiBSZWxhdGlvbiA9IG5ldyBSZWxhdGlvbigpO1xyXG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHJlc3VsdCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgbG9ja1JlbGF0aW9uKHJlbGF0aW9uS2luZDogUmVsYXRpb25LaW5kLCByZWxhdGlvbk5yOiBudW1iZXIpOiBQcm9taXNlPFZhbGlkYXRpb25SZXN1bHQ+IHtcclxuICAgIGNvbnN0IGxvY2tNZXRob2Q6IExvY2tGbkhlYWRlciA9IHRoaXMuX2xvY2tNZXRob2RzLmdldChyZWxhdGlvbktpbmQpO1xyXG4gICAgaWYgKGxvY2tNZXRob2QpIHtcclxuICAgICAgY29uc3QgcmVzcG9uc2U6IFZhbGlkYXRpb25SZXN1bHQgPSBhd2FpdCBsb2NrTWV0aG9kLmNhbGwodGhpcywgcmVsYXRpb25Ocik7XHJcbiAgICAgIGlmIChyZXNwb25zZS5zdWNjZXNzKSB7XHJcbiAgICAgICAgdGhpcy5yZWxhdGlvbkxvY2tlZCA9IHRydWU7XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIHJlc3BvbnNlO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgY29uc3QgcmVzdWx0OiBWYWxpZGF0aW9uUmVzdWx0ID0gbmV3IFZhbGlkYXRpb25SZXN1bHQoKTtcclxuICAgICAgcmVzdWx0LnN1Y2Nlc3MgPSBmYWxzZTtcclxuICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShyZXN1bHQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldFJlbGF0aW9uKHJlbGF0aW9uS2luZDogUmVsYXRpb25LaW5kLCByZWxhdGlvbk5yOiBudW1iZXIpOiBQcm9taXNlPFJlbGF0aW9uQW55VHlwZT4ge1xyXG4gICAgY29uc3QgZ2V0TWV0aG9kOiBHZXRSZWxhdGlvbkZuSGVhZGVyID0gdGhpcy5fZ2V0TWV0aG9kcy5nZXQocmVsYXRpb25LaW5kKTtcclxuICAgIGlmIChnZXRNZXRob2QpIHtcclxuICAgICAgcmV0dXJuIGdldE1ldGhvZC5jYWxsKHRoaXMsIHJlbGF0aW9uTnIpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgY29uc3QgcmVzdWx0OiBWYWxpZGF0aW9uUmVzdWx0ID0gbmV3IFZhbGlkYXRpb25SZXN1bHQoKTtcclxuICAgICAgcmVzdWx0LnN1Y2Nlc3MgPSBmYWxzZTtcclxuICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShudWxsKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBjbG9uZVJlbGF0aW9uKHJlbGF0aW9uOiBSZWxhdGlvbkFueVR5cGUpOiBSZWxhdGlvbkFueVR5cGUge1xyXG4gICAgc3dpdGNoIChyZWxhdGlvbi5yZWxhdGlvblR5cGUpIHtcclxuICAgICAgY2FzZSBSZWxhdGlvbktpbmQuQ3VzdG9tZXI6XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2JvRmFjdG9yeS5tYWtlV2l0aFJhd0JhY2tlbmREYXRhKEN1c3RvbWVyRnVsbE9iamVjdCwgcmVsYXRpb24pIGFzIEN1c3RvbWVyRnVsbE9iamVjdDtcclxuICAgICAgY2FzZSBSZWxhdGlvbktpbmQuU3VwcGxpZXI6XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2JvRmFjdG9yeS5tYWtlV2l0aFJhd0JhY2tlbmREYXRhKFN1cHBsaWVyRnVsbE9iamVjdCwgcmVsYXRpb24pIGFzIFN1cHBsaWVyRnVsbE9iamVjdDtcclxuICAgICAgZGVmYXVsdDpcclxuICAgICAgICByZXR1cm4gdGhpcy5fYm9GYWN0b3J5Lm1ha2VXaXRoUmF3QmFja2VuZERhdGEoQ3VzdG9tZXJGdWxsT2JqZWN0LCByZWxhdGlvbikgYXMgQ3VzdG9tZXJGdWxsT2JqZWN0O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGNvbW1pdCgpOiBQcm9taXNlPGJvb2xlYW4+IHtcclxuICAgIHJldHVybiB0aGlzLl9hZGFwdGVyU2VydmljZS5jb21taXQoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2xvY2tDdXN0b21lckZ1bGxPYmplY3QocmVsYXRpb25OcjogbnVtYmVyKTogUHJvbWlzZTxWYWxpZGF0aW9uUmVzdWx0PiB7XHJcbiAgICByZXR1cm4gdGhpcy5fYWRhcHRlclNlcnZpY2UubG9ja0N1c3RvbWVyRnVsbE9iamVjdChyZWxhdGlvbk5yKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2xvY2tTdXBwbGllckZ1bGxPYmplY3QocmVsYXRpb25OcjogbnVtYmVyKTogUHJvbWlzZTxWYWxpZGF0aW9uUmVzdWx0PiB7XHJcbiAgICByZXR1cm4gdGhpcy5fYWRhcHRlclNlcnZpY2UubG9ja1N1cHBsaWVyRnVsbE9iamVjdChyZWxhdGlvbk5yKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2xvY2tFbXBsb3llZUZ1bGxPYmplY3QocmVsYXRpb25OcjogbnVtYmVyKTogUHJvbWlzZTxWYWxpZGF0aW9uUmVzdWx0PiB7XHJcbiAgICByZXR1cm4gdGhpcy5fYWRhcHRlclNlcnZpY2UubG9ja0VtcGxveWVlRnVsbE9iamVjdChyZWxhdGlvbk5yKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2xvY2tCcmFuY2hGdWxsT2JqZWN0KHJlbGF0aW9uTnI6IG51bWJlcik6IFByb21pc2U8VmFsaWRhdGlvblJlc3VsdD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2FkYXB0ZXJTZXJ2aWNlLmxvY2tCcmFuY2hGdWxsT2JqZWN0KHJlbGF0aW9uTnIpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfbG9ja0NvbXBhbnlGdWxsT2JqZWN0KHJlbGF0aW9uTnI6IG51bWJlcik6IFByb21pc2U8VmFsaWRhdGlvblJlc3VsdD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2FkYXB0ZXJTZXJ2aWNlLmxvY2tDb21wYW55RnVsbE9iamVjdChyZWxhdGlvbk5yKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2xvY2tDb250YWN0UGVyc29uKHJlbGF0aW9uTnI6IG51bWJlcik6IFByb21pc2U8VmFsaWRhdGlvblJlc3VsdD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2FkYXB0ZXJTZXJ2aWNlLmxvY2tDb250YWN0UGVyc29uKHJlbGF0aW9uTnIpO1xyXG4gIH1cclxufVxyXG4iXX0=
205
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVsYXRpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvc2VydmljZS9yZWxhdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBQywwQkFBMEIsRUFBQyxNQUFNLGdEQUFnRCxDQUFDO0FBQzFGLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQ3RFLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxvREFBb0QsQ0FBQztBQUNoRixPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSx1REFBdUQsQ0FBQztBQUN2RixPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSwyREFBMkQsQ0FBQztBQUM3RixPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sb0RBQW9ELENBQUM7QUFDbkYsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sMkRBQTJELENBQUM7QUFDN0YsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGlEQUFpRCxDQUFDO0FBQzFFLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDJEQUEyRCxDQUFDO0FBQzdGLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLDhDQUE4QyxDQUFDO0FBQ3RGLE9BQU8sRUFBQyx1Q0FBdUMsRUFBQyxNQUFNLDhEQUE4RCxDQUFDO0FBQ3JILE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSwrQ0FBK0MsQ0FBQztBQUd2RSxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSwrREFBK0QsQ0FBQztBQUNwRyxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sTUFBTSxDQUFDOzs7Ozs7QUFXN0IsTUFBTSxPQUFPLGVBQWU7SUErQjFCLFlBQ1UsZUFBeUMsRUFDekMsMkJBQXVELEVBQ3ZELHlCQUFtRCxFQUNu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QUksQ0FBQyxVQUFVLENBQUMsc0JBQXNCLENBQUMsa0JBQWtCLEVBQUUsUUFBUSxDQUF1QixDQUFDO1NBQ3JHO0lBQ0gsQ0FBQztJQUVNLE1BQU07UUFDWCxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDdkMsQ0FBQztJQUVPLHVCQUF1QixDQUFDLFVBQWtCO1FBQ2hELE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxzQkFBc0IsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNqRSxDQUFDO0lBRU8sdUJBQXVCLENBQUMsVUFBa0I7UUFDaEQsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLHNCQUFzQixDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFFTyx1QkFBdUIsQ0FBQyxVQUFrQjtRQUNoRCxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsc0JBQXNCLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDakUsQ0FBQztJQUVPLHFCQUFxQixDQUFDLFVBQWtCO1FBQzlDLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxvQkFBb0IsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRU8sc0JBQXNCLENBQUMsVUFBa0I7UUFDL0MsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLHFCQUFxQixDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFFTyxrQkFBa0IsQ0FBQyxVQUFrQjtRQUMzQyxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsaUJBQWlCLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDNUQsQ0FBQzs7OztZQWpNRixVQUFVLFNBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkI7OztZQXhCTyx3QkFBd0I7WUFEeEIsMEJBQTBCO1lBUzFCLHdCQUF3QjtZQUN4Qix1Q0FBdUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1NlbGVjdE11bHRpcGxlQ2FjaGVTZXJ2aWNlfSBmcm9tICcuLi9jYWNoZS9zZXJ2aWNlL3NlbGVjdC1tdWx0aXBsZS1jYWNoZS5zZXJ2aWNlJztcclxuaW1wb3J0IHtSZWxhdGlvbkNvbm5lY3RvclNlcnZpY2V9IGZyb20gJy4vcmVsYXRpb24tY29ubmVjdG9yLnNlcnZpY2UnO1xyXG5pbXBvcnQge1JlbGF0aW9uS2luZH0gZnJvbSAnQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvZW51bS9yZWxhdGlvbi1raW5kLmVudW0nO1xyXG5pbXBvcnQge1ZhbGlkYXRpb25SZXN1bHR9IGZyb20gJ0Bjb2xpam5pdC9pb25lY29ubmVjdG9yL2J1aWxkL21vZGVsL3ZhbGlkYXRpb24tcmVzdWx0JztcclxuaW1wb3J0IHtDdXN0b21lckZ1bGxPYmplY3R9IGZyb20gJ0Bjb2xpam5pdC9yZWxhdGlvbmFwaS9idWlsZC9tb2RlbC9jdXN0b21lci1mdWxsLW9iamVjdC5ibyc7XHJcbmltcG9ydCB7UmVsYXRpb25SZXF1ZXN0fSBmcm9tICdAY29saWpuaXQvcmVsYXRpb25hcGkvYnVpbGQvbW9kZWwvcmVsYXRpb24tcmVxdWVzdCc7XHJcbmltcG9ydCB7UmVsYXRpb25MaXN0T2JqZWN0fSBmcm9tICdAY29saWpuaXQvcmVsYXRpb25hcGkvYnVpbGQvbW9kZWwvcmVsYXRpb24tbGlzdC1vYmplY3QuYm8nO1xyXG5pbXBvcnQge0JyYW5jaExvdn0gZnJvbSAnQGNvbGlqbml0L3JlbGF0aW9uYXBpL2J1aWxkL21vZGVsL2JyYW5jaC1sb3YuYm8nO1xyXG5pbXBvcnQge1N1cHBsaWVyRnVsbE9iamVjdH0gZnJvbSAnQGNvbGlqbml0L3JlbGF0aW9uYXBpL2J1aWxkL21vZGVsL3N1cHBsaWVyLWZ1bGwtb2JqZWN0LmJvJztcclxuaW1wb3J0IHtTZWxlY3RTaW5nbGVDYWNoZVNlcnZpY2V9IGZyb20gJy4uL2NhY2hlL3NlcnZpY2Uvc2VsZWN0LXNpbmdsZS1jYWNoZS5zZXJ2aWNlJztcclxuaW1wb3J0IHtTZWxlY3RNdWx0aXBsZVBhcmFtZXRlcml6ZWRDYWNoZVNlcnZpY2V9IGZyb20gJy4uL2NhY2hlL3NlcnZpY2Uvc2VsZWN0LW11bHRpcGxlLXBhcmFtZXRlcml6ZWQtY2FjaGUuc2VydmljZSc7XHJcbmltcG9ydCB7UmVsYXRpb259IGZyb20gJ0Bjb2xpam5pdC9yZWxhdGlvbmFwaS9idWlsZC9tb2RlbC9yZWxhdGlvbi5ibyc7XHJcbmltcG9ydCB7UmVsYXRpb25BbnlUeXBlfSBmcm9tICdAY29saWpuaXQvcmVsYXRpb25hcGkvYnVpbGQvbW9kZWwvcmVsYXRpb24tYW55LXR5cGUnO1xyXG5pbXBvcnQge0FkZHJlc3N9IGZyb20gJ0Bjb2xpam5pdC9yZWxhdGlvbmFwaS9idWlsZC9tb2RlbC9hZGRyZXNzLmJvJztcclxuaW1wb3J0IHtCdXNpbmVzc09iamVjdEZhY3Rvcnl9IGZyb20gJ0Bjb2xpam5pdC9pb25lY29ubmVjdG9yL2J1aWxkL3NlcnZpY2UvYnVzaW5lc3Mtb2JqZWN0LWZhY3RvcnknO1xyXG5pbXBvcnQge1N1YmplY3R9IGZyb20gJ3J4anMnO1xyXG5cclxudHlwZSBMb2NrRm5IZWFkZXIgPSAocmVsYXRpb25OcjogbnVtYmVyKSA9PiBQcm9taXNlPFZhbGlkYXRpb25SZXN1bHQ+O1xyXG50eXBlIEdldFJlbGF0aW9uRm5IZWFkZXIgPSAocmVsYXRpb25OcjogbnVtYmVyKSA9PiBQcm9taXNlPFJlbGF0aW9uQW55VHlwZT47XHJcbnR5cGUgSW5zZXJ0UmVsYXRpb25GbiA9IChyZWxhdGlvbjogUmVsYXRpb25BbnlUeXBlKSA9PiBQcm9taXNlPFJlbGF0aW9uQW55VHlwZT47XHJcbnR5cGUgVXBkYXRlUmVsYXRpb25GbiA9IChyZWxhdGlvbjogUmVsYXRpb25BbnlUeXBlKSA9PiBQcm9taXNlPFJlbGF0aW9uQW55VHlwZT47XHJcblxyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46IFwicm9vdFwiXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBSZWxhdGlvblNlcnZpY2Uge1xyXG4gIHB1YmxpYyByZWxhdGlvblN1Z2dlc3Rpb25zUmVxdWVzdENsZWFyOiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuXHJcbiAgcHJpdmF0ZSByZWFkb25seSBfbG9ja01ldGhvZHM6IE1hcDxSZWxhdGlvbktpbmQsIExvY2tGbkhlYWRlcj4gPSBuZXcgTWFwPFJlbGF0aW9uS2luZCwgTG9ja0ZuSGVhZGVyPihbXHJcbiAgICBbUmVsYXRpb25LaW5kLkN1c3RvbWVyLCAocmVsYXRpb25OcjogbnVtYmVyKSA9PiB0aGlzLl9sb2NrQ3VzdG9tZXJGdWxsT2JqZWN0KHJlbGF0aW9uTnIpXSxcclxuICAgIFtSZWxhdGlvbktpbmQuU3VwcGxpZXIsIChyZWxhdGlvbk5yOiBudW1iZXIpID0+IHRoaXMuX2xvY2tTdXBwbGllckZ1bGxPYmplY3QocmVsYXRpb25OcildLFxyXG4gICAgW1JlbGF0aW9uS2luZC5QZXJzb25uZWwsIChyZWxhdGlvbk5yOiBudW1iZXIpID0+IHRoaXMuX2xvY2tFbXBsb3llZUZ1bGxPYmplY3QocmVsYXRpb25OcildLFxyXG4gICAgW1JlbGF0aW9uS2luZC5CcmFuY2gsIChyZWxhdGlvbk5yOiBudW1iZXIpID0+IHRoaXMuX2xvY2tCcmFuY2hGdWxsT2JqZWN0KHJlbGF0aW9uTnIpXSxcclxuICAgIFtSZWxhdGlvbktpbmQuQ29tcGFueSwgKHJlbGF0aW9uTnI6IG51bWJlcikgPT4gdGhpcy5fbG9ja0NvbXBhbnlGdWxsT2JqZWN0KHJlbGF0aW9uTnIpXSxcclxuICAgIFtSZWxhdGlvbktpbmQuQ29udGFjdFBlcnNvbiwgKHJlbGF0aW9uTnI6IG51bWJlcikgPT4gdGhpcy5fbG9ja0NvbnRhY3RQZXJzb24ocmVsYXRpb25OcildLFxyXG4gIF0pO1xyXG5cclxuICBwcml2YXRlIHJlYWRvbmx5IF9nZXRNZXRob2RzOiBNYXA8UmVsYXRpb25LaW5kLCBHZXRSZWxhdGlvbkZuSGVhZGVyPiA9IG5ldyBNYXA8UmVsYXRpb25LaW5kLCBHZXRSZWxhdGlvbkZuSGVhZGVyPihbXHJcbiAgICBbUmVsYXRpb25LaW5kLkN1c3RvbWVyLCAocmVsYXRpb25OcjogbnVtYmVyKSA9PiB0aGlzLmdldEN1c3RvbWVyRnVsbE9iamVjdChyZWxhdGlvbk5yKV0sXHJcbiAgICBbUmVsYXRpb25LaW5kLlN1cHBsaWVyLCAocmVsYXRpb25OcjogbnVtYmVyKSA9PiB0aGlzLmdldFN1cHBsaWVyRnVsbE9iamVjdChyZWxhdGlvbk5yKV1cclxuICBdKTtcclxuXHJcbiAgcHJpdmF0ZSByZWFkb25seSBfdXBkYXRlTWV0aG9kczogTWFwPFJlbGF0aW9uS2luZCwgVXBkYXRlUmVsYXRpb25Gbj4gPSBuZXcgTWFwPFJlbGF0aW9uS2luZCwgVXBkYXRlUmVsYXRpb25Gbj4oW1xyXG4gICAgW1JlbGF0aW9uS2luZC5DdXN0b21lciwgKHJlbGF0aW9uOiBDdXN0b21lckZ1bGxPYmplY3QpID0+IHRoaXMudXBkYXRlQ3VzdG9tZXIocmVsYXRpb24pXSxcclxuICAgIFtSZWxhdGlvbktpbmQuU3VwcGxpZXIsIChyZWxhdGlvbjogU3VwcGxpZXJGdWxsT2JqZWN0KSA9PiB0aGlzLnVwZGF0ZVN1cHBsaWVyKHJlbGF0aW9uKV1cclxuICBdKTtcclxuXHJcbiAgcHJpdmF0ZSByZWFkb25seSBfaW5zZXJ0TWV0aG9kczogTWFwPFJlbGF0aW9uS2luZCwgSW5zZXJ0UmVsYXRpb25Gbj4gPSBuZXcgTWFwPFJlbGF0aW9uS2luZCwgSW5zZXJ0UmVsYXRpb25Gbj4oW1xyXG4gICAgW1JlbGF0aW9uS2luZC5DdXN0b21lciwgKHJlbGF0aW9uOiBDdXN0b21lckZ1bGxPYmplY3QpID0+IHRoaXMuaW5zZXJ0Q3VzdG9tZXIocmVsYXRpb24pXSxcclxuICAgIFtSZWxhdGlvbktpbmQuU3VwcGxpZXIsIChyZWxhdGlvbjogU3VwcGxpZXJGdWxsT2JqZWN0KSA9PiB0aGlzLmluc2VydFN1cHBsaWVyKHJlbGF0aW9uKV1cclxuICBdKVxyXG5cclxuICBwdWJsaWMgcmVsYXRpb25Mb2NrZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgcHJpdmF0ZSBfYm9GYWN0b3J5OiBCdXNpbmVzc09iamVjdEZhY3RvcnkgPSBuZXcgQnVzaW5lc3NPYmplY3RGYWN0b3J5KCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBfYWRhcHRlclNlcnZpY2U6IFJlbGF0aW9uQ29ubmVjdG9yU2VydmljZSxcclxuICAgIHByaXZhdGUgX3NlbGVjdE11bHRpcGxlQ2FjaGVTZXJ2aWNlOiBTZWxlY3RNdWx0aXBsZUNhY2hlU2VydmljZSxcclxuICAgIHByaXZhdGUgX3NlbGVjdFNpbmdsZUNhY2hlU2VydmljZTogU2VsZWN0U2luZ2xlQ2FjaGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfc2VsZWN0TXVsdGlwbGVQYXJhbWV0ZXJpemVkQ2FjaGVTZXJ2aWNlOiBTZWxlY3RNdWx0aXBsZVBhcmFtZXRlcml6ZWRDYWNoZVNlcnZpY2VcclxuICApIHt9XHJcblxyXG4gIHB1YmxpYyBnZXRDdXN0b21lckZ1bGxPYmplY3QocmVsYXRpb25ObzogbnVtYmVyKTogUHJvbWlzZTxDdXN0b21lckZ1bGxPYmplY3Q+IHtcclxuICAgIHJldHVybiB0aGlzLl9zZWxlY3RTaW5nbGVDYWNoZVNlcnZpY2UucmVxdWVzdENhY2hlPEN1c3RvbWVyRnVsbE9iamVjdD4oQ3VzdG9tZXJGdWxsT2JqZWN0LCByZWxhdGlvbk5vLCAoKSA9PiB7XHJcbiAgICAgIHJldHVybiB0aGlzLl9hZGFwdGVyU2VydmljZS5nZXRDdXN0b21lckZ1bGxPYmplY3QocmVsYXRpb25Obyk7XHJcbiAgICB9KS5nZXRWYWx1ZSgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldFN1cHBsaWVyRnVsbE9iamVjdChyZWxhdGlvbk5vOiBudW1iZXIpOiBQcm9taXNlPFN1cHBsaWVyRnVsbE9iamVjdD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3NlbGVjdFNpbmdsZUNhY2hlU2VydmljZS5yZXF1ZXN0Q2FjaGU8U3VwcGxpZXJGdWxsT2JqZWN0PihTdXBwbGllckZ1bGxPYmplY3QsIHJlbGF0aW9uTm8sICgpID0+IHtcclxuICAgICAgcmV0dXJuIHRoaXMuX2FkYXB0ZXJTZXJ2aWNlLmdldFN1cHBsaWVyRnVsbE9iamVjdChyZWxhdGlvbk5vKTtcclxuICAgIH0pLmdldFZhbHVlKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaW5zZXJ0QWRkcmVzcyhhZGRyZXNzOiBBZGRyZXNzKTogUHJvbWlzZTxBZGRyZXNzPiB7XHJcbiAgICByZXR1cm4gdGhpcy5fYWRhcHRlclNlcnZpY2UuaW5zZXJ0QWRkcmVzcyhhZGRyZXNzKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyB1cGRhdGVBZGRyZXNzKGFkZHJlc3M6IEFkZHJlc3MpOiBQcm9taXNlPEFkZHJlc3M+IHtcclxuICAgIHJldHVybiB0aGlzLl9hZGFwdGVyU2VydmljZS51cGRhdGVBZGRyZXNzKGFkZHJlc3MpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGluc2VydEN1c3RvbWVyKHJlbGF0aW9uOiBDdXN0b21lckZ1bGxPYmplY3QpOiBQcm9taXNlPEN1c3RvbWVyRnVsbE9iamVjdD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3NlbGVjdFNpbmdsZUNhY2hlU2VydmljZS5yZXF1ZXN0Q2FjaGU8Q3VzdG9tZXJGdWxsT2JqZWN0PihDdXN0b21lckZ1bGxPYmplY3QsIHJlbGF0aW9uLnJlbGF0aW9uTnVtYmVyLCAoKSA9PiB7XHJcbiAgICAgIHJldHVybiB0aGlzLl9hZGFwdGVyU2VydmljZS5pbnNlcnRDdXN0b21lcihyZWxhdGlvbik7XHJcbiAgICB9LCB0cnVlKS5nZXRWYWx1ZSgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIHVwZGF0ZUN1c3RvbWVyKHJlbGF0aW9uOiBDdXN0b21lckZ1bGxPYmplY3QpOiBQcm9taXNlPEN1c3RvbWVyRnVsbE9iamVjdD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3NlbGVjdFNpbmdsZUNhY2hlU2VydmljZS5yZXF1ZXN0Q2FjaGU8Q3VzdG9tZXJGdWxsT2JqZWN0PihDdXN0b21lckZ1bGxPYmplY3QsIHJlbGF0aW9uLnJlbGF0aW9uTnVtYmVyLCAoKSA9PiB7XHJcbiAgICAgIHJldHVybiB0aGlzLl9hZGFwdGVyU2VydmljZS51cGRhdGVDdXN0b21lcihyZWxhdGlvbik7XHJcbiAgICB9LCB0cnVlKS5nZXRWYWx1ZSgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGluc2VydFN1cHBsaWVyKHJlbGF0aW9uOiBTdXBwbGllckZ1bGxPYmplY3QpOiBQcm9taXNlPFN1cHBsaWVyRnVsbE9iamVjdD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3NlbGVjdFNpbmdsZUNhY2hlU2VydmljZS5yZXF1ZXN0Q2FjaGU8U3VwcGxpZXJGdWxsT2JqZWN0PihTdXBwbGllckZ1bGxPYmplY3QsIHJlbGF0aW9uLnJlbGF0aW9uTnVtYmVyLCAoKSA9PiB7XHJcbiAgICAgIHJldHVybiB0aGlzLl9hZGFwdGVyU2VydmljZS5pbnNlcnRTdXBwbGllcihyZWxhdGlvbik7XHJcbiAgICB9LCB0cnVlKS5nZXRWYWx1ZSgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIHVwZGF0ZVN1cHBsaWVyKHJlbGF0aW9uOiBTdXBwbGllckZ1bGxPYmplY3QpOiBQcm9taXNlPFN1cHBsaWVyRnVsbE9iamVjdD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3NlbGVjdFNpbmdsZUNhY2hlU2VydmljZS5yZXF1ZXN0Q2FjaGU8U3VwcGxpZXJGdWxsT2JqZWN0PihTdXBwbGllckZ1bGxPYmplY3QsIHJlbGF0aW9uLnJlbGF0aW9uTnVtYmVyLCAoKSA9PiB7XHJcbiAgICAgIHJldHVybiB0aGlzLl9hZGFwdGVyU2VydmljZS51cGRhdGVTdXBwbGllcihyZWxhdGlvbik7XHJcbiAgICB9LCB0cnVlKS5nZXRWYWx1ZSgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldFJlbGF0aW9uTGlzdE9iamVjdHMocmVsYXRpb25SZXF1ZXN0OiBSZWxhdGlvblJlcXVlc3QpOiBQcm9taXNlPFJlbGF0aW9uTGlzdE9iamVjdFtdPiB7XHJcbiAgICAvLyByZXR1cm4gdGhpcy5fc2VsZWN0TXVsdGlwbGVQYXJhbWV0ZXJpemVkQ2FjaGVTZXJ2aWNlLnJlcXVlc3RDYWNoZTxSZWxhdGlvbkxpc3RPYmplY3Q+KFJlbGF0aW9uTGlzdE9iamVjdCwgKHJlbGF0aW9uUmVxdWVzdCkgPT4ge1xyXG4gICAgICByZXR1cm4gdGhpcy5fYWRhcHRlclNlcnZpY2UuZ2V0UmVsYXRpb25MaXN0T2JqZWN0cyhyZWxhdGlvblJlcXVlc3QpO1xyXG4gICAgLy8gfSkuZ2V0VmFsdWUocmVsYXRpb25SZXF1ZXN0KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRSZWxhdGlvbkJ5SWQoaWQ6IG51bWJlcik6IFByb21pc2U8UmVsYXRpb25MaXN0T2JqZWN0W10+IHtcclxuICAgIHJldHVybiB0aGlzLl9zZWxlY3RNdWx0aXBsZVBhcmFtZXRlcml6ZWRDYWNoZVNlcnZpY2UucmVxdWVzdENhY2hlPFJlbGF0aW9uTGlzdE9iamVjdD4oUmVsYXRpb25MaXN0T2JqZWN0LCAoaWQ6IG51bWJlcikgPT4ge1xyXG4gICAgICBjb25zdCByZXF1ZXN0OiBSZWxhdGlvblJlcXVlc3QgPSBuZXcgUmVsYXRpb25SZXF1ZXN0KCk7XHJcbiAgICAgIHJlcXVlc3QucmVsYXRpb25JZCA9IGlkO1xyXG4gICAgICByZXR1cm4gdGhpcy5nZXRSZWxhdGlvbkxpc3RPYmplY3RzKHJlcXVlc3QpO1xyXG4gICAgfSkuZ2V0VmFsdWUoaWQpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldFJlbGF0aW9uTnVtYmVyKHJlbGF0aW9uSWQ6IG51bWJlcik6IFByb21pc2U8c3RyaW5nPiB7XHJcbiAgICByZXR1cm4gdGhpcy5fYWRhcHRlclNlcnZpY2UuZ2V0UmVsYXRpb25OdW1iZXIocmVsYXRpb25JZCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0QnJhbmNoZXMoYnJhbmNoTnI/OiBzdHJpbmcpOiBQcm9taXNlPEJyYW5jaExvdltdPiB7XHJcbiAgICByZXR1cm4gdGhpcy5fc2VsZWN0TXVsdGlwbGVQYXJhbWV0ZXJpemVkQ2FjaGVTZXJ2aWNlLnJlcXVlc3RDYWNoZTxCcmFuY2hMb3Y+KEJyYW5jaExvdiwgKGJyYW5jaE5yPzogc3RyaW5nKSA9PiB7XHJcbiAgICAgIHJldHVybiB0aGlzLl9hZGFwdGVyU2VydmljZS5nZXRCcmFuY2hlcyhicmFuY2hOcilcclxuICAgIH0pLmdldFZhbHVlKGJyYW5jaE5yKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBpbnNlcnRSZWxhdGlvbihyZWxhdGlvbktpbmQ6IFJlbGF0aW9uS2luZCwgcmVsYXRpb246IFJlbGF0aW9uKTogUHJvbWlzZTxSZWxhdGlvbj4ge1xyXG4gICAgY29uc3QgaW5zZXJ0TWV0aG9kOiBJbnNlcnRSZWxhdGlvbkZuID0gdGhpcy5faW5zZXJ0TWV0aG9kcy5nZXQocmVsYXRpb25LaW5kKTtcclxuICAgIGlmIChpbnNlcnRNZXRob2QpIHtcclxuICAgICAgcmV0dXJuIGluc2VydE1ldGhvZC5jYWxsKHRoaXMsIHJlbGF0aW9uKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGNvbnN0IHJlc3VsdDogUmVsYXRpb24gPSBuZXcgUmVsYXRpb24oKTtcclxuICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShyZXN1bHQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIHVwZGF0ZVJlbGF0aW9uKHJlbGF0aW9uS2luZDogUmVsYXRpb25LaW5kLCByZWxhdGlvbjogUmVsYXRpb24pOiBQcm9taXNlPFJlbGF0aW9uPiB7XHJcbiAgICBjb25zdCB1cGRhdGVNZXRob2Q6IFVwZGF0ZVJlbGF0aW9uRm4gPSB0aGlzLl91cGRhdGVNZXRob2RzLmdldChyZWxhdGlvbktpbmQpO1xyXG4gICAgaWYgKHVwZGF0ZU1ldGhvZCkge1xyXG4gICAgICB0aGlzLnJlbGF0aW9uTG9ja2VkID0gZmFsc2U7XHJcbiAgICAgIHJldHVybiB1cGRhdGVNZXRob2QuY2FsbCh0aGlzLCByZWxhdGlvbik7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBjb25zdCByZXN1bHQ6IFJlbGF0aW9uID0gbmV3IFJlbGF0aW9uKCk7XHJcbiAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUocmVzdWx0KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBsb2NrUmVsYXRpb24ocmVsYXRpb25LaW5kOiBSZWxhdGlvbktpbmQsIHJlbGF0aW9uTnI6IG51bWJlcik6IFByb21pc2U8VmFsaWRhdGlvblJlc3VsdD4ge1xyXG4gICAgY29uc3QgbG9ja01ldGhvZDogTG9ja0ZuSGVhZGVyID0gdGhpcy5fbG9ja01ldGhvZHMuZ2V0KHJlbGF0aW9uS2luZCk7XHJcbiAgICBpZiAobG9ja01ldGhvZCkge1xyXG4gICAgICBjb25zdCByZXNwb25zZTogVmFsaWRhdGlvblJlc3VsdCA9IGF3YWl0IGxvY2tNZXRob2QuY2FsbCh0aGlzLCByZWxhdGlvbk5yKTtcclxuICAgICAgaWYgKHJlc3BvbnNlLnN1Y2Nlc3MpIHtcclxuICAgICAgICB0aGlzLnJlbGF0aW9uTG9ja2VkID0gdHJ1ZTtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gcmVzcG9uc2U7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBjb25zdCByZXN1bHQ6IFZhbGlkYXRpb25SZXN1bHQgPSBuZXcgVmFsaWRhdGlvblJlc3VsdCgpO1xyXG4gICAgICByZXN1bHQuc3VjY2VzcyA9IGZhbHNlO1xyXG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHJlc3VsdCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0UmVsYXRpb24ocmVsYXRpb25LaW5kOiBSZWxhdGlvbktpbmQsIHJlbGF0aW9uTnI6IG51bWJlcik6IFByb21pc2U8UmVsYXRpb25BbnlUeXBlPiB7XHJcbiAgICBjb25zdCBnZXRNZXRob2Q6IEdldFJlbGF0aW9uRm5IZWFkZXIgPSB0aGlzLl9nZXRNZXRob2RzLmdldChyZWxhdGlvbktpbmQpO1xyXG4gICAgaWYgKGdldE1ldGhvZCkge1xyXG4gICAgICByZXR1cm4gZ2V0TWV0aG9kLmNhbGwodGhpcywgcmVsYXRpb25Ocik7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBjb25zdCByZXN1bHQ6IFZhbGlkYXRpb25SZXN1bHQgPSBuZXcgVmFsaWRhdGlvblJlc3VsdCgpO1xyXG4gICAgICByZXN1bHQuc3VjY2VzcyA9IGZhbHNlO1xyXG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKG51bGwpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGNsb25lUmVsYXRpb24ocmVsYXRpb246IFJlbGF0aW9uQW55VHlwZSk6IFJlbGF0aW9uQW55VHlwZSB7XHJcbiAgICBzd2l0Y2ggKHJlbGF0aW9uLnJlbGF0aW9uVHlwZSkge1xyXG4gICAgICBjYXNlIFJlbGF0aW9uS2luZC5DdXN0b21lcjpcclxuICAgICAgICByZXR1cm4gdGhpcy5fYm9GYWN0b3J5Lm1ha2VXaXRoUmF3QmFja2VuZERhdGEoQ3VzdG9tZXJGdWxsT2JqZWN0LCByZWxhdGlvbikgYXMgQ3VzdG9tZXJGdWxsT2JqZWN0O1xyXG4gICAgICBjYXNlIFJlbGF0aW9uS2luZC5TdXBwbGllcjpcclxuICAgICAgICByZXR1cm4gdGhpcy5fYm9GYWN0b3J5Lm1ha2VXaXRoUmF3QmFja2VuZERhdGEoU3VwcGxpZXJGdWxsT2JqZWN0LCByZWxhdGlvbikgYXMgU3VwcGxpZXJGdWxsT2JqZWN0O1xyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIHJldHVybiB0aGlzLl9ib0ZhY3RvcnkubWFrZVdpdGhSYXdCYWNrZW5kRGF0YShDdXN0b21lckZ1bGxPYmplY3QsIHJlbGF0aW9uKSBhcyBDdXN0b21lckZ1bGxPYmplY3Q7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgY29tbWl0KCk6IFByb21pc2U8Ym9vbGVhbj4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2FkYXB0ZXJTZXJ2aWNlLmNvbW1pdCgpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfbG9ja0N1c3RvbWVyRnVsbE9iamVjdChyZWxhdGlvbk5yOiBudW1iZXIpOiBQcm9taXNlPFZhbGlkYXRpb25SZXN1bHQ+IHtcclxuICAgIHJldHVybiB0aGlzLl9hZGFwdGVyU2VydmljZS5sb2NrQ3VzdG9tZXJGdWxsT2JqZWN0KHJlbGF0aW9uTnIpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfbG9ja1N1cHBsaWVyRnVsbE9iamVjdChyZWxhdGlvbk5yOiBudW1iZXIpOiBQcm9taXNlPFZhbGlkYXRpb25SZXN1bHQ+IHtcclxuICAgIHJldHVybiB0aGlzLl9hZGFwdGVyU2VydmljZS5sb2NrU3VwcGxpZXJGdWxsT2JqZWN0KHJlbGF0aW9uTnIpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfbG9ja0VtcGxveWVlRnVsbE9iamVjdChyZWxhdGlvbk5yOiBudW1iZXIpOiBQcm9taXNlPFZhbGlkYXRpb25SZXN1bHQ+IHtcclxuICAgIHJldHVybiB0aGlzLl9hZGFwdGVyU2VydmljZS5sb2NrRW1wbG95ZWVGdWxsT2JqZWN0KHJlbGF0aW9uTnIpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfbG9ja0JyYW5jaEZ1bGxPYmplY3QocmVsYXRpb25OcjogbnVtYmVyKTogUHJvbWlzZTxWYWxpZGF0aW9uUmVzdWx0PiB7XHJcbiAgICByZXR1cm4gdGhpcy5fYWRhcHRlclNlcnZpY2UubG9ja0JyYW5jaEZ1bGxPYmplY3QocmVsYXRpb25Ocik7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9sb2NrQ29tcGFueUZ1bGxPYmplY3QocmVsYXRpb25OcjogbnVtYmVyKTogUHJvbWlzZTxWYWxpZGF0aW9uUmVzdWx0PiB7XHJcbiAgICByZXR1cm4gdGhpcy5fYWRhcHRlclNlcnZpY2UubG9ja0NvbXBhbnlGdWxsT2JqZWN0KHJlbGF0aW9uTnIpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfbG9ja0NvbnRhY3RQZXJzb24ocmVsYXRpb25OcjogbnVtYmVyKTogUHJvbWlzZTxWYWxpZGF0aW9uUmVzdWx0PiB7XHJcbiAgICByZXR1cm4gdGhpcy5fYWRhcHRlclNlcnZpY2UubG9ja0NvbnRhY3RQZXJzb24ocmVsYXRpb25Ocik7XHJcbiAgfVxyXG59XHJcbiJdfQ==