@colijnit/transaction 12.1.193 → 12.1.194

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 (41) hide show
  1. package/bundles/colijnit-transaction.umd.js +92 -66
  2. package/bundles/colijnit-transaction.umd.js.map +1 -1
  3. package/colijnit-transaction-12.1.193.tgz +0 -0
  4. package/colijnit-transaction.metadata.json +1 -1
  5. package/esm2015/lib/component/relation/relation-contact-details/relation-contact-details.component.js +1 -14
  6. package/esm2015/lib/component/relation/relation-general/relation-general.component.js +3 -3
  7. package/esm2015/lib/component/transaction-header/transaction-header-popup/transaction-header-popup-relation.component.js +15 -2
  8. package/esm2015/lib/component/transaction-header/transaction-header-popup/transaction-header-popup.module.js +4 -2
  9. package/esm2015/lib/component/transaction-header/transaction-header-relation/transaction-header-relation.component.js +3 -1
  10. package/esm2015/lib/component/transaction-line/transaction-purchase-line/transaction-purchase-line.component.js +1 -4
  11. package/esm2015/lib/component/transaction-line/transaction-purchase-order-line/transaction-purchase-order-line.component.js +73 -53
  12. package/esm2015/lib/component/transaction-line/transaction-purchase-order-line/transaction-purchase-order-line.module.js +4 -2
  13. package/esm2015/lib/component/transaction-line-fields/transaction-line-confirmed-price/transaction-line-confirmed-price.component.js +2 -2
  14. package/esm2015/lib/component/transaction-line-fields/transaction-line-warehouse-location-button.component.js +36 -4
  15. package/esm2015/lib/component/transaction-line-fields/transaction-line-warehouse-location.component.js +2 -1
  16. package/esm2015/lib/component/transaction-search/service/transaction-search.service.js +1 -1
  17. package/esm2015/lib/res/dictionary/dictionaries.js +2 -2
  18. package/esm2015/lib/service/transaction-connector-adapter.service.js +3 -3
  19. package/esm2015/lib/service/transaction-connector.service.js +1 -1
  20. package/esm2015/lib/service/transaction.service.js +1 -1
  21. package/esm2015/lib/transaction-version.js +3 -3
  22. package/fesm2015/colijnit-transaction.js +163 -109
  23. package/fesm2015/colijnit-transaction.js.map +1 -1
  24. package/lib/component/shopping-cart-preview/style/_layout.scss +16 -1
  25. package/lib/component/shopping-cart-preview/style/_material-definition.scss +1 -1
  26. package/lib/component/transaction-header/transaction-header-popup/style/_material-definition.scss +2 -0
  27. package/lib/component/transaction-header/transaction-header-popup/transaction-header-popup-relation.component.d.ts +3 -1
  28. package/lib/component/transaction-header/transaction-header-relation/style/_layout.scss +7 -0
  29. package/lib/component/transaction-internal/style/_material-definition.scss +1 -1
  30. package/lib/component/transaction-line/transaction-line/style/_layout.scss +11 -11
  31. package/lib/component/transaction-line/transaction-overview-line/style/_layout.scss +1 -1
  32. package/lib/component/transaction-line-fields/transaction-line-warehouse-location-button.component.d.ts +9 -1
  33. package/lib/component/transaction-line-fields/transaction-line-warehouse-location.component.d.ts +1 -0
  34. package/lib/component/transaction-lines/style/_layout.scss +28 -2
  35. package/lib/component/transaction-lines/style/_material-definition.scss +2 -1
  36. package/lib/component/transaction-search/service/transaction-search.service.d.ts +2 -2
  37. package/lib/res/dictionary/dictionaries.d.ts +1 -0
  38. package/lib/service/transaction-connector-adapter.service.d.ts +2 -2
  39. package/lib/service/transaction-connector.service.d.ts +2 -2
  40. package/lib/service/transaction.service.d.ts +2 -2
  41. package/package.json +1 -1
@@ -163,4 +163,4 @@ TransactionSearchService.ctorParameters = () => [
163
163
  { type: TransactionConnectorService },
164
164
  { type: TransactionSettingsService }
165
165
  ];
166
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tc2VhcmNoLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cmFuc2FjdGlvbi9zcmMvbGliL2NvbXBvbmVudC90cmFuc2FjdGlvbi1zZWFyY2gvc2VydmljZS90cmFuc2FjdGlvbi1zZWFyY2guc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sMkRBQTJELENBQUM7QUFDMUYsT0FBTyxFQUFDLDRCQUE0QixFQUFDLE1BQU0sc0VBQXNFLENBQUM7QUFFbEgsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ25FLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHdDQUF3QyxDQUFDO0FBRXpFLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBQ3hFLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHVEQUF1RCxDQUFDO0FBQ3ZGLE9BQU8sRUFBQywwQkFBMEIsRUFBQyxNQUFNLCtDQUErQyxDQUFDO0FBQ3pGLE9BQU8sRUFBQyxlQUFlLEVBQWUsTUFBTSxNQUFNLENBQUM7QUFDbkQsT0FBTyxFQUFDLDJCQUEyQixFQUFDLE1BQU0sZ0RBQWdELENBQUM7Ozs7O0FBTTNGLE1BQU0sT0FBTyx3QkFBd0I7SUF5RG5DLFlBQ1ksbUJBQXVDLEVBQ3ZDLDRCQUF5RCxFQUN6RCxnQkFBNEM7UUFGNUMsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFvQjtRQUN2QyxpQ0FBNEIsR0FBNUIsNEJBQTRCLENBQTZCO1FBQ3pELHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBNEI7UUExRGpELGtCQUFhLEdBQWlDLElBQUksNEJBQTRCLEVBQUUsQ0FBQztRQUNqRiwwQkFBcUIsR0FBaUMsSUFBSSw0QkFBNEIs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Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbmplY3RhYmxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtUcmFuc2FjdGlvbktpbmR9IGZyb20gJ0Bjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9lbnVtL3RyYW5zYWN0aW9uLWtpbmQuZW51bSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25TZWFyY2hWaWV3UmVxdWVzdH0gZnJvbSAnQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3RyYW5zYWN0aW9uLXNlYXJjaC12aWV3LXJlcXVlc3QnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uU2VhcmNoVmlld30gZnJvbSAnQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3RyYW5zYWN0aW9uLXNlYXJjaC12aWV3LmJvJztcclxuaW1wb3J0IHtTZWFyY2hWaWV3TW9kZX0gZnJvbSAnLi4vLi4vLi4vZW51bS9zZWFyY2gtdmlldy1tb2RlLmVudW0nO1xyXG5pbXBvcnQge1NlYXJjaGJhclZpZXdNb2RlfSBmcm9tICcuLi8uLi8uLi9lbnVtL3NlYXJjaGJhci12aWV3LW1vZGUuZW51bSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25TZWFyY2hSZXN1bHR9IGZyb20gJy4uLy4uLy4uL21vZGVsL3RyYW5zYWN0aW9uLXNlYXJjaC1yZXN1bHQnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHtQYWdpbmdQYXJhbWV0ZXJzfSBmcm9tICdAY29saWpuaXQvaW9uZWNvbm5lY3Rvci9idWlsZC9tb2RlbC9wYWdpbmctcGFyYW1ldGVycyc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25TZXR0aW5nc1NlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24tc2V0dGluZ3Muc2VydmljZSc7XHJcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBTdWJzY3JpcHRpb259IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uQ29ubmVjdG9yU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi1jb25uZWN0b3Iuc2VydmljZSc7XHJcbmltcG9ydCB7UGRmU2FsZXNPcmRlcnNTZWFyY2hPdmVydmlld1Jlc3BvbnNlfSBmcm9tICdAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvcGRmLXNhbGVzLW9yZGVycy1zZWFyY2gtb3ZlcnZpZXctcmVzcG9uc2UnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46IFwicm9vdFwiXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvblNlYXJjaFNlcnZpY2Uge1xyXG5cclxuICBwdWJsaWMgc2VhcmNoUmVxdWVzdDogVHJhbnNhY3Rpb25TZWFyY2hWaWV3UmVxdWVzdCA9IG5ldyBUcmFuc2FjdGlvblNlYXJjaFZpZXdSZXF1ZXN0KCk7XHJcbiAgcHVibGljIHByZXZpb3VzU2VhcmNoUmVxdWVzdDogVHJhbnNhY3Rpb25TZWFyY2hWaWV3UmVxdWVzdCA9IG5ldyBUcmFuc2FjdGlvblNlYXJjaFZpZXdSZXF1ZXN0KCk7XHJcblxyXG4gIHB1YmxpYyBhY3RpdmVTZWFyY2hWaWV3TW9kZTogU2VhcmNoVmlld01vZGUgPSBTZWFyY2hWaWV3TW9kZS5GdWxsU2NyZWVuO1xyXG4gIHB1YmxpYyBhY3RpdmVTZWFyY2hCYXJWaWV3TW9kZTogU2VhcmNoYmFyVmlld01vZGUgPSBTZWFyY2hiYXJWaWV3TW9kZS5FeHBhbmRlZDtcclxuICBwdWJsaWMgc2hvd0ZpbHRlclNpZGViYXI6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgc2VhcmNoUGxhY2Vob2xkZXI6IHN0cmluZztcclxuXHJcbiAgcHVibGljIHRyYW5zYWN0aW9uczogVHJhbnNhY3Rpb25TZWFyY2hWaWV3W10gPSBbXTtcclxuICBwdWJsaWMgc2VhcmNoUmVxdWVzdFNldDogQmVoYXZpb3JTdWJqZWN0PFRyYW5zYWN0aW9uU2VhcmNoVmlld1JlcXVlc3Q+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxUcmFuc2FjdGlvblNlYXJjaFZpZXdSZXF1ZXN0Pih1bmRlZmluZWQpO1xyXG5cclxuICBwdWJsaWMgc2V0IHRyYW5zYWN0aW9uVHlwZSh2YWx1ZTogVHJhbnNhY3Rpb25LaW5kKSB7XHJcbiAgICBpZiAodGhpcy5fdHJhbnNhY3Rpb25UeXBlICE9PSB2YWx1ZSkge1xyXG4gICAgICB0aGlzLl9yZXNldFJlcXVlc3QoKTtcclxuICAgICAgdGhpcy50cmFuc2FjdGlvbnMubGVuZ3RoID0gMDtcclxuICAgIH1cclxuICAgIHRoaXMuX3RyYW5zYWN0aW9uVHlwZSA9IHZhbHVlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCB0cmFuc2FjdGlvblR5cGUoKTogVHJhbnNhY3Rpb25LaW5kIHtcclxuICAgIHJldHVybiB0aGlzLl90cmFuc2FjdGlvblR5cGU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgbGFiZWxCYXNlZE9uVHJhbnNhY3Rpb25UeXBlOiBNYXA8c3RyaW5nLCBzdHJpbmc+ID0gbmV3IE1hcDxzdHJpbmcsIHN0cmluZz4oW1xyXG4gICAgW1RyYW5zYWN0aW9uS2luZC5TYWxlc09yZGVyLCBcIlNBTEVTT1JERVJTXCJdLFxyXG4gICAgW1RyYW5zYWN0aW9uS2luZC5QdXJjaGFzZU9yZGVyLCBcIlBVUkNIQVNFT1JERVJTXCJdLFxyXG4gICAgW1RyYW5zYWN0aW9uS2luZC5TZXJ2aWNlT3JkZXIsIFwiU0VSVklDRU9SREVSU1wiXSxcclxuICAgIFtUcmFuc2FjdGlvbktpbmQuU2FsZXNRdW90YXRpb24sIFwiU0FMRVNfUVVPVEFUSU9OU1wiXSxcclxuICAgIFtUcmFuc2FjdGlvbktpbmQuQ2FzaERlc2ssIFwiUE9TX09SREVSU1wiXVxyXG4gIF0pXHJcblxyXG4gIHB1YmxpYyBwbGFjZWhvbGRlckJhc2VkT25UcmFuc2FjdGlvblR5cGU6IE1hcDxzdHJpbmcsIHN0cmluZz4gPSBuZXcgTWFwPHN0cmluZywgc3RyaW5nPihbXHJcbiAgICBbVHJhbnNhY3Rpb25LaW5kLlNhbGVzT3JkZXIsIFwiU0VBUkNIX05VTUJFUl9PUl9DVVNUT01FUlwiXSxcclxuICAgIFtUcmFuc2FjdGlvbktpbmQuUHVyY2hhc2VPcmRlciwgXCJTRUFSQ0hfTlVNQkVSX09SX1NVUFBMSUVSXCJdLFxyXG4gICAgW1RyYW5zYWN0aW9uS2luZC5TZXJ2aWNlT3JkZXIsIFwiU0VBUkNIX05VTUJFUl9PUl9DVVNUT01FUlwiXSxcclxuICAgIFtUcmFuc2FjdGlvbktpbmQuU2FsZXNRdW90YXRpb24sIFwiU0VBUkNIX05VTUJFUl9PUl9DVVNUT01FUlwiXSxcclxuICAgIFtUcmFuc2FjdGlvbktpbmQuQ2FzaERlc2ssIFwiU0VBUkNIX05VTUJFUl9PUl9DVVNUT01FUlwiXVxyXG4gIF0pXHJcblxyXG4gIHB1YmxpYyB0cmFuc2FjdGlvbnNQZXJQYWdlOiBudW1iZXIgPSAyMDtcclxuICBwdWJsaWMgcmVzdWx0Q291bnQ6IG51bWJlcjtcclxuXHJcbiAgcHVibGljIGdldCBjdXJyZW50UGFnZSgpOiBudW1iZXIge1xyXG4gICAgcmV0dXJuIHRoaXMuX2N1cnJlbnRQYWdlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldCBjdXJyZW50UGFnZSh2YWx1ZTogbnVtYmVyKSB7XHJcbiAgICB0aGlzLl9jdXJyZW50UGFnZSA9IHZhbHVlO1xyXG4gICAgdGhpcy5zZWFyY2hUcmFuc2FjdGlvbnMoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2N1cnJlbnRQYWdlID0gMTtcclxuICBwcml2YXRlIF90cmFuc2FjdGlvblR5cGU6IFRyYW5zYWN0aW9uS2luZCA9IFRyYW5zYWN0aW9uS2luZC5TYWxlc09yZGVyO1xyXG4gIHByaXZhdGUgX3N1YnM6IFN1YnNjcmlwdGlvbltdID0gW107XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgICBwcml2YXRlIF90cmFuc2FjdGlvblNlcnZpY2U6IFRyYW5zYWN0aW9uU2VydmljZSxcclxuICAgICAgcHJpdmF0ZSBfdHJhbnNhY3Rpb25Db25uZWN0b3JTZXJ2aWNlOiBUcmFuc2FjdGlvbkNvbm5lY3RvclNlcnZpY2UsXHJcbiAgICAgIHByaXZhdGUgX3NldHRpbmdzU2VydmljZTogVHJhbnNhY3Rpb25TZXR0aW5nc1NlcnZpY2VcclxuICApIHtcclxuICAgIHRoaXMuX3N1YnMucHVzaChcclxuICAgICAgICB0aGlzLl9zZXR0aW5nc1NlcnZpY2Uuc2V0dGluZ3NMb2FkZWQuc3Vic2NyaWJlKChsb2FkZWQ6IGJvb2xlYW4pID0+IHtcclxuICAgICAgICAgIGlmIChsb2FkZWQpIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuX3NldHRpbmdzU2VydmljZS5zZXR0aW5ncy50ZW1wVHJhbnNhY3Rpb25QYXJhbWV0ZXJzKSB7XHJcbiAgICAgICAgICAgICAgdGhpcy5zZWFyY2hSZXF1ZXN0ID0gdGhpcy5fc2V0dGluZ3NTZXJ2aWNlLnNldHRpbmdzLnRlbXBUcmFuc2FjdGlvblBhcmFtZXRlcnM7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgdGhpcy5zZWFyY2hSZXF1ZXN0ID0gdGhpcy5fc2V0dGluZ3NTZXJ2aWNlLnNldHRpbmdzLnRyYW5zYWN0aW9uUGFyYW1ldGVycztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pLFxyXG4gICAgICAgIHRoaXMuX3RyYW5zYWN0aW9uQ29ubmVjdG9yU2VydmljZS5jb25uZWN0aW9uSW5pdGlhbGl6ZWQuc3Vic2NyaWJlKChpbml0aWFsaXplZDogYm9vbGVhbikgPT4ge1xyXG4gICAgICAgICAgaWYgKGluaXRpYWxpemVkKSB7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLl9zZXR0aW5nc1NlcnZpY2Uuc2V0dGluZ3Mub3B0aW9ucy5zZWFyY2hPblN0YXJ0KSB7XHJcbiAgICAgICAgICAgICAgaWYgKHRoaXMuX3NldHRpbmdzU2VydmljZS5zZXR0aW5ncy5vcHRpb25zLnNlYXJjaE9uU3RhcnRPbmNlKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLl9zZXR0aW5nc1NlcnZpY2Uuc2V0dGluZ3Mub3B0aW9ucy5zZWFyY2hPblN0YXJ0ID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIHRoaXMuc2VhcmNoVHJhbnNhY3Rpb25zKCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9KSxcclxuICAgICAgICB0aGlzLl90cmFuc2FjdGlvblNlcnZpY2UubG9nb3V0LnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLl9yZXNldENhY2hlKCk7XHJcbiAgICAgICAgfSlcclxuICAgIClcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBzZWFyY2hUcmFuc2FjdGlvbnMoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICB0aGlzLnNlYXJjaFJlcXVlc3QudHJhbnNhY3Rpb25LaW5kID0gdGhpcy50cmFuc2FjdGlvblR5cGU7XHJcblxyXG4gICAgaWYgKHRoaXMuaXNOZXdHZW5lcmFsU2VhcmNoKCkpIHtcclxuICAgICAgdGhpcy5fY3VycmVudFBhZ2UgPSAxO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IGxvd2VyQm91bmQ6IG51bWJlciA9ICgodGhpcy5jdXJyZW50UGFnZSAtIDEpICogdGhpcy50cmFuc2FjdGlvbnNQZXJQYWdlKSArIDE7XHJcbiAgICB0aGlzLnNlYXJjaFJlcXVlc3QucGFnaW5nID0gbmV3IFBhZ2luZ1BhcmFtZXRlcnMobG93ZXJCb3VuZCwgbG93ZXJCb3VuZCArIHRoaXMudHJhbnNhY3Rpb25zUGVyUGFnZSAtIDEsIHRoaXMudHJhbnNhY3Rpb25zUGVyUGFnZSk7XHJcbiAgICB0aGlzLnNlYXJjaFJlcXVlc3RTZXQubmV4dCh0aGlzLnNlYXJjaFJlcXVlc3QpO1xyXG4gICAgdGhpcy5fdHJhbnNhY3Rpb25TZXJ2aWNlLnNlYXJjaFRyYW5zYWN0aW9ucyh0aGlzLnNlYXJjaFJlcXVlc3QpLnRoZW4oKHJlc3VsdDogVHJhbnNhY3Rpb25TZWFyY2hSZXN1bHQpID0+IHtcclxuICAgICAgdGhpcy50cmFuc2FjdGlvbnMgPSByZXN1bHQudHJhbnNhY3Rpb25zID8/IFtdO1xyXG4gICAgICB0aGlzLnJlc3VsdENvdW50ID0gcmVzdWx0LmNvdW50ID8/IHVuZGVmaW5lZDtcclxuICAgIH0pO1xyXG4gICAgdGhpcy5zZXRQcmV2aW91c1NlYXJjaFJlcXVlc3QoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRMYWJlbEJhc2VkT25UcmFuc2FjdGlvblR5cGUoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLmxhYmVsQmFzZWRPblRyYW5zYWN0aW9uVHlwZS5nZXQodGhpcy5fdHJhbnNhY3Rpb25UeXBlKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRTZWFyY2hQbGFjZWhvbGRlckJhc2VkT25UcmFuc2FjdGlvblR5cGUoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLnBsYWNlaG9sZGVyQmFzZWRPblRyYW5zYWN0aW9uVHlwZS5nZXQodGhpcy5fdHJhbnNhY3Rpb25UeXBlKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyByZXNldEZpbHRlcnMoKTogdm9pZCB7XHJcbiAgICB0aGlzLnNldFByZXZpb3VzU2VhcmNoUmVxdWVzdCgpO1xyXG5cclxuICAgIHRoaXMuX3Jlc2V0UmVxdWVzdCgpO1xyXG4gICAgdGhpcy5zZWFyY2hSZXF1ZXN0LmdlbmVyYWwgPSB0aGlzLnByZXZpb3VzU2VhcmNoUmVxdWVzdC5nZW5lcmFsO1xyXG4gICAgdGhpcy5zZWFyY2hUcmFuc2FjdGlvbnMoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzZXRQcmV2aW91c1NlYXJjaFJlcXVlc3QoKTogdm9pZCB7XHJcbiAgICB0aGlzLnByZXZpb3VzU2VhcmNoUmVxdWVzdCA9IHsuLi50aGlzLnNlYXJjaFJlcXVlc3R9O1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGlzTmV3R2VuZXJhbFNlYXJjaCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLnByZXZpb3VzU2VhcmNoUmVxdWVzdCAmJiB0aGlzLnByZXZpb3VzU2VhcmNoUmVxdWVzdC5nZW5lcmFsICE9PSB0aGlzLnNlYXJjaFJlcXVlc3QuZ2VuZXJhbDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgZnVsbHNjcmVlbigpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLmFjdGl2ZVNlYXJjaFZpZXdNb2RlID09PSBTZWFyY2hWaWV3TW9kZS5GdWxsU2NyZWVuO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBjb2xsYXBzZWQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5hY3RpdmVTZWFyY2hCYXJWaWV3TW9kZSA9PT0gU2VhcmNoYmFyVmlld01vZGUuQ29sbGFwc2VkO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHRvZ2dsZUZpbHRlcigpOiB2b2lkIHtcclxuICAgIHRoaXMuc2hvd0ZpbHRlclNpZGViYXIgPSAhdGhpcy5zaG93RmlsdGVyU2lkZWJhcjtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVIaWRlRmlsdGVyKCk6IHZvaWQge1xyXG4gICAgdGhpcy5zaG93RmlsdGVyU2lkZWJhciA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZVJlc2V0RmlsdGVyKCk6IHZvaWQge1xyXG4gICAgdGhpcy5yZXNldEZpbHRlcnMoKTtcclxuICAgIHRoaXMuc2hvd0ZpbHRlclNpZGViYXIgPSBmYWxzZTtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICB0aGlzLnNob3dGaWx0ZXJTaWRlYmFyID0gdHJ1ZVxyXG4gICAgfSwgMTApO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHByaW50U2FsZXNPcmRlcnNPdmVydmlldygpOiBQcm9taXNlPFBkZlNhbGVzT3JkZXJzU2VhcmNoT3ZlcnZpZXdSZXNwb25zZT4ge1xyXG4gICAgaWYgKHRoaXMuc2VhcmNoUmVxdWVzdCkge1xyXG4gICAgICByZXR1cm4gdGhpcy5fdHJhbnNhY3Rpb25TZXJ2aWNlLnByaW50U2FsZXNPcmRlcnNPdmVydmlldyh0aGlzLnNlYXJjaFJlcXVlc3QpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfcmVzZXRDYWNoZSgpOiB2b2lkIHtcclxuICAgIHRoaXMuc2VhcmNoUmVxdWVzdCA9IG5ldyBUcmFuc2FjdGlvblNlYXJjaFZpZXdSZXF1ZXN0KCk7XHJcbiAgICB0aGlzLl9zZXR0aW5nc1NlcnZpY2Uuc2V0dGluZ3MudHJhbnNhY3Rpb25QYXJhbWV0ZXJzID0gbmV3IFRyYW5zYWN0aW9uU2VhcmNoVmlld1JlcXVlc3QoKTtcclxuICAgIHRoaXMuX3NldHRpbmdzU2VydmljZS5zZXR0aW5ncy50ZW1wVHJhbnNhY3Rpb25QYXJhbWV0ZXJzID0gdW5kZWZpbmVkO1xyXG4gICAgdGhpcy50cmFuc2FjdGlvbnMubGVuZ3RoID0gMDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3Jlc2V0UmVxdWVzdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuc2VhcmNoUmVxdWVzdCA9IHRoaXMuX3NldHRpbmdzU2VydmljZS5zZXR0aW5ncy50cmFuc2FjdGlvblBhcmFtZXRlcnM7XHJcbiAgICB0aGlzLl9zZXR0aW5nc1NlcnZpY2Uuc2V0dGluZ3MudGVtcFRyYW5zYWN0aW9uUGFyYW1ldGVycyA9IHVuZGVmaW5lZDtcclxuICB9XHJcbn1cclxuIl19
166
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tc2VhcmNoLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cmFuc2FjdGlvbi9zcmMvbGliL2NvbXBvbmVudC90cmFuc2FjdGlvbi1zZWFyY2gvc2VydmljZS90cmFuc2FjdGlvbi1zZWFyY2guc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sMkRBQTJELENBQUM7QUFDMUYsT0FBTyxFQUFDLDRCQUE0QixFQUFDLE1BQU0sc0VBQXNFLENBQUM7QUFFbEgsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ25FLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHdDQUF3QyxDQUFDO0FBRXpFLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBQ3hFLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHVEQUF1RCxDQUFDO0FBQ3ZGLE9BQU8sRUFBQywwQkFBMEIsRUFBQyxNQUFNLCtDQUErQyxDQUFDO0FBQ3pGLE9BQU8sRUFBQyxlQUFlLEVBQWUsTUFBTSxNQUFNLENBQUM7QUFDbkQsT0FBTyxFQUFDLDJCQUEyQixFQUFDLE1BQU0sZ0RBQWdELENBQUM7Ozs7O0FBUTNGLE1BQU0sT0FBTyx3QkFBd0I7SUF5RG5DLFlBQ1ksbUJBQXVDLEVBQ3ZDLDRCQUF5RCxFQUN6RCxnQkFBNEM7UUFGNUMsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFvQjtRQUN2QyxpQ0FBNEIsR0FBNUIsNEJBQTRCLENBQTZCO1FBQ3pELHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBNEI7UUExRGpELGtCQUFhLEdBQWlDLElBQUksNEJBQTRCLEVBQUUsQ0FBQztRQUNqRiwwQkFBcUIsR0FBaUMsSUFBSSw0QkFBNEIs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Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbmplY3RhYmxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtUcmFuc2FjdGlvbktpbmR9IGZyb20gJ0Bjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9lbnVtL3RyYW5zYWN0aW9uLWtpbmQuZW51bSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25TZWFyY2hWaWV3UmVxdWVzdH0gZnJvbSAnQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3RyYW5zYWN0aW9uLXNlYXJjaC12aWV3LXJlcXVlc3QnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uU2VhcmNoVmlld30gZnJvbSAnQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3RyYW5zYWN0aW9uLXNlYXJjaC12aWV3LmJvJztcclxuaW1wb3J0IHtTZWFyY2hWaWV3TW9kZX0gZnJvbSAnLi4vLi4vLi4vZW51bS9zZWFyY2gtdmlldy1tb2RlLmVudW0nO1xyXG5pbXBvcnQge1NlYXJjaGJhclZpZXdNb2RlfSBmcm9tICcuLi8uLi8uLi9lbnVtL3NlYXJjaGJhci12aWV3LW1vZGUuZW51bSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25TZWFyY2hSZXN1bHR9IGZyb20gJy4uLy4uLy4uL21vZGVsL3RyYW5zYWN0aW9uLXNlYXJjaC1yZXN1bHQnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHtQYWdpbmdQYXJhbWV0ZXJzfSBmcm9tICdAY29saWpuaXQvaW9uZWNvbm5lY3Rvci9idWlsZC9tb2RlbC9wYWdpbmctcGFyYW1ldGVycyc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25TZXR0aW5nc1NlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24tc2V0dGluZ3Muc2VydmljZSc7XHJcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBTdWJzY3JpcHRpb259IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uQ29ubmVjdG9yU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi1jb25uZWN0b3Iuc2VydmljZSc7XHJcbmltcG9ydCB7XHJcbiAgUGRmVHJhbnNhY3Rpb25TZWFyY2hPdmVydmlld1Jlc3BvbnNlXHJcbn0gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9wZGYtdHJhbnNhY3Rpb24tc2VhcmNoLW92ZXJ2aWV3LXJlc3BvbnNlXCI7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogXCJyb290XCJcclxufSlcclxuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uU2VhcmNoU2VydmljZSB7XHJcblxyXG4gIHB1YmxpYyBzZWFyY2hSZXF1ZXN0OiBUcmFuc2FjdGlvblNlYXJjaFZpZXdSZXF1ZXN0ID0gbmV3IFRyYW5zYWN0aW9uU2VhcmNoVmlld1JlcXVlc3QoKTtcclxuICBwdWJsaWMgcHJldmlvdXNTZWFyY2hSZXF1ZXN0OiBUcmFuc2FjdGlvblNlYXJjaFZpZXdSZXF1ZXN0ID0gbmV3IFRyYW5zYWN0aW9uU2VhcmNoVmlld1JlcXVlc3QoKTtcclxuXHJcbiAgcHVibGljIGFjdGl2ZVNlYXJjaFZpZXdNb2RlOiBTZWFyY2hWaWV3TW9kZSA9IFNlYXJjaFZpZXdNb2RlLkZ1bGxTY3JlZW47XHJcbiAgcHVibGljIGFjdGl2ZVNlYXJjaEJhclZpZXdNb2RlOiBTZWFyY2hiYXJWaWV3TW9kZSA9IFNlYXJjaGJhclZpZXdNb2RlLkV4cGFuZGVkO1xyXG4gIHB1YmxpYyBzaG93RmlsdGVyU2lkZWJhcjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHB1YmxpYyBzZWFyY2hQbGFjZWhvbGRlcjogc3RyaW5nO1xyXG5cclxuICBwdWJsaWMgdHJhbnNhY3Rpb25zOiBUcmFuc2FjdGlvblNlYXJjaFZpZXdbXSA9IFtdO1xyXG4gIHB1YmxpYyBzZWFyY2hSZXF1ZXN0U2V0OiBCZWhhdmlvclN1YmplY3Q8VHJhbnNhY3Rpb25TZWFyY2hWaWV3UmVxdWVzdD4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFRyYW5zYWN0aW9uU2VhcmNoVmlld1JlcXVlc3Q+KHVuZGVmaW5lZCk7XHJcblxyXG4gIHB1YmxpYyBzZXQgdHJhbnNhY3Rpb25UeXBlKHZhbHVlOiBUcmFuc2FjdGlvbktpbmQpIHtcclxuICAgIGlmICh0aGlzLl90cmFuc2FjdGlvblR5cGUgIT09IHZhbHVlKSB7XHJcbiAgICAgIHRoaXMuX3Jlc2V0UmVxdWVzdCgpO1xyXG4gICAgICB0aGlzLnRyYW5zYWN0aW9ucy5sZW5ndGggPSAwO1xyXG4gICAgfVxyXG4gICAgdGhpcy5fdHJhbnNhY3Rpb25UeXBlID0gdmFsdWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IHRyYW5zYWN0aW9uVHlwZSgpOiBUcmFuc2FjdGlvbktpbmQge1xyXG4gICAgcmV0dXJuIHRoaXMuX3RyYW5zYWN0aW9uVHlwZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBsYWJlbEJhc2VkT25UcmFuc2FjdGlvblR5cGU6IE1hcDxzdHJpbmcsIHN0cmluZz4gPSBuZXcgTWFwPHN0cmluZywgc3RyaW5nPihbXHJcbiAgICBbVHJhbnNhY3Rpb25LaW5kLlNhbGVzT3JkZXIsIFwiU0FMRVNPUkRFUlNcIl0sXHJcbiAgICBbVHJhbnNhY3Rpb25LaW5kLlB1cmNoYXNlT3JkZXIsIFwiUFVSQ0hBU0VPUkRFUlNcIl0sXHJcbiAgICBbVHJhbnNhY3Rpb25LaW5kLlNlcnZpY2VPcmRlciwgXCJTRVJWSUNFT1JERVJTXCJdLFxyXG4gICAgW1RyYW5zYWN0aW9uS2luZC5TYWxlc1F1b3RhdGlvbiwgXCJTQUxFU19RVU9UQVRJT05TXCJdLFxyXG4gICAgW1RyYW5zYWN0aW9uS2luZC5DYXNoRGVzaywgXCJQT1NfT1JERVJTXCJdXHJcbiAgXSlcclxuXHJcbiAgcHVibGljIHBsYWNlaG9sZGVyQmFzZWRPblRyYW5zYWN0aW9uVHlwZTogTWFwPHN0cmluZywgc3RyaW5nPiA9IG5ldyBNYXA8c3RyaW5nLCBzdHJpbmc+KFtcclxuICAgIFtUcmFuc2FjdGlvbktpbmQuU2FsZXNPcmRlciwgXCJTRUFSQ0hfTlVNQkVSX09SX0NVU1RPTUVSXCJdLFxyXG4gICAgW1RyYW5zYWN0aW9uS2luZC5QdXJjaGFzZU9yZGVyLCBcIlNFQVJDSF9OVU1CRVJfT1JfU1VQUExJRVJcIl0sXHJcbiAgICBbVHJhbnNhY3Rpb25LaW5kLlNlcnZpY2VPcmRlciwgXCJTRUFSQ0hfTlVNQkVSX09SX0NVU1RPTUVSXCJdLFxyXG4gICAgW1RyYW5zYWN0aW9uS2luZC5TYWxlc1F1b3RhdGlvbiwgXCJTRUFSQ0hfTlVNQkVSX09SX0NVU1RPTUVSXCJdLFxyXG4gICAgW1RyYW5zYWN0aW9uS2luZC5DYXNoRGVzaywgXCJTRUFSQ0hfTlVNQkVSX09SX0NVU1RPTUVSXCJdXHJcbiAgXSlcclxuXHJcbiAgcHVibGljIHRyYW5zYWN0aW9uc1BlclBhZ2U6IG51bWJlciA9IDIwO1xyXG4gIHB1YmxpYyByZXN1bHRDb3VudDogbnVtYmVyO1xyXG5cclxuICBwdWJsaWMgZ2V0IGN1cnJlbnRQYWdlKCk6IG51bWJlciB7XHJcbiAgICByZXR1cm4gdGhpcy5fY3VycmVudFBhZ2U7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0IGN1cnJlbnRQYWdlKHZhbHVlOiBudW1iZXIpIHtcclxuICAgIHRoaXMuX2N1cnJlbnRQYWdlID0gdmFsdWU7XHJcbiAgICB0aGlzLnNlYXJjaFRyYW5zYWN0aW9ucygpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfY3VycmVudFBhZ2UgPSAxO1xyXG4gIHByaXZhdGUgX3RyYW5zYWN0aW9uVHlwZTogVHJhbnNhY3Rpb25LaW5kID0gVHJhbnNhY3Rpb25LaW5kLlNhbGVzT3JkZXI7XHJcbiAgcHJpdmF0ZSBfc3ViczogU3Vic2NyaXB0aW9uW10gPSBbXTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICAgIHByaXZhdGUgX3RyYW5zYWN0aW9uU2VydmljZTogVHJhbnNhY3Rpb25TZXJ2aWNlLFxyXG4gICAgICBwcml2YXRlIF90cmFuc2FjdGlvbkNvbm5lY3RvclNlcnZpY2U6IFRyYW5zYWN0aW9uQ29ubmVjdG9yU2VydmljZSxcclxuICAgICAgcHJpdmF0ZSBfc2V0dGluZ3NTZXJ2aWNlOiBUcmFuc2FjdGlvblNldHRpbmdzU2VydmljZVxyXG4gICkge1xyXG4gICAgdGhpcy5fc3Vicy5wdXNoKFxyXG4gICAgICAgIHRoaXMuX3NldHRpbmdzU2VydmljZS5zZXR0aW5nc0xvYWRlZC5zdWJzY3JpYmUoKGxvYWRlZDogYm9vbGVhbikgPT4ge1xyXG4gICAgICAgICAgaWYgKGxvYWRlZCkge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5fc2V0dGluZ3NTZXJ2aWNlLnNldHRpbmdzLnRlbXBUcmFuc2FjdGlvblBhcmFtZXRlcnMpIHtcclxuICAgICAgICAgICAgICB0aGlzLnNlYXJjaFJlcXVlc3QgPSB0aGlzLl9zZXR0aW5nc1NlcnZpY2Uuc2V0dGluZ3MudGVtcFRyYW5zYWN0aW9uUGFyYW1ldGVycztcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICB0aGlzLnNlYXJjaFJlcXVlc3QgPSB0aGlzLl9zZXR0aW5nc1NlcnZpY2Uuc2V0dGluZ3MudHJhbnNhY3Rpb25QYXJhbWV0ZXJzO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSksXHJcbiAgICAgICAgdGhpcy5fdHJhbnNhY3Rpb25Db25uZWN0b3JTZXJ2aWNlLmNvbm5lY3Rpb25Jbml0aWFsaXplZC5zdWJzY3JpYmUoKGluaXRpYWxpemVkOiBib29sZWFuKSA9PiB7XHJcbiAgICAgICAgICBpZiAoaW5pdGlhbGl6ZWQpIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuX3NldHRpbmdzU2VydmljZS5zZXR0aW5ncy5vcHRpb25zLnNlYXJjaE9uU3RhcnQpIHtcclxuICAgICAgICAgICAgICBpZiAodGhpcy5fc2V0dGluZ3NTZXJ2aWNlLnNldHRpbmdzLm9wdGlvbnMuc2VhcmNoT25TdGFydE9uY2UpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuX3NldHRpbmdzU2VydmljZS5zZXR0aW5ncy5vcHRpb25zLnNlYXJjaE9uU3RhcnQgPSBmYWxzZTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgdGhpcy5zZWFyY2hUcmFuc2FjdGlvbnMoKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pLFxyXG4gICAgICAgIHRoaXMuX3RyYW5zYWN0aW9uU2VydmljZS5sb2dvdXQuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICAgIHRoaXMuX3Jlc2V0Q2FjaGUoKTtcclxuICAgICAgICB9KVxyXG4gICAgKVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIHNlYXJjaFRyYW5zYWN0aW9ucygpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIHRoaXMuc2VhcmNoUmVxdWVzdC50cmFuc2FjdGlvbktpbmQgPSB0aGlzLnRyYW5zYWN0aW9uVHlwZTtcclxuXHJcbiAgICBpZiAodGhpcy5pc05ld0dlbmVyYWxTZWFyY2goKSkge1xyXG4gICAgICB0aGlzLl9jdXJyZW50UGFnZSA9IDE7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgbG93ZXJCb3VuZDogbnVtYmVyID0gKCh0aGlzLmN1cnJlbnRQYWdlIC0gMSkgKiB0aGlzLnRyYW5zYWN0aW9uc1BlclBhZ2UpICsgMTtcclxuICAgIHRoaXMuc2VhcmNoUmVxdWVzdC5wYWdpbmcgPSBuZXcgUGFnaW5nUGFyYW1ldGVycyhsb3dlckJvdW5kLCBsb3dlckJvdW5kICsgdGhpcy50cmFuc2FjdGlvbnNQZXJQYWdlIC0gMSwgdGhpcy50cmFuc2FjdGlvbnNQZXJQYWdlKTtcclxuICAgIHRoaXMuc2VhcmNoUmVxdWVzdFNldC5uZXh0KHRoaXMuc2VhcmNoUmVxdWVzdCk7XHJcbiAgICB0aGlzLl90cmFuc2FjdGlvblNlcnZpY2Uuc2VhcmNoVHJhbnNhY3Rpb25zKHRoaXMuc2VhcmNoUmVxdWVzdCkudGhlbigocmVzdWx0OiBUcmFuc2FjdGlvblNlYXJjaFJlc3VsdCkgPT4ge1xyXG4gICAgICB0aGlzLnRyYW5zYWN0aW9ucyA9IHJlc3VsdC50cmFuc2FjdGlvbnMgPz8gW107XHJcbiAgICAgIHRoaXMucmVzdWx0Q291bnQgPSByZXN1bHQuY291bnQgPz8gdW5kZWZpbmVkO1xyXG4gICAgfSk7XHJcbiAgICB0aGlzLnNldFByZXZpb3VzU2VhcmNoUmVxdWVzdCgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldExhYmVsQmFzZWRPblRyYW5zYWN0aW9uVHlwZSgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMubGFiZWxCYXNlZE9uVHJhbnNhY3Rpb25UeXBlLmdldCh0aGlzLl90cmFuc2FjdGlvblR5cGUpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldFNlYXJjaFBsYWNlaG9sZGVyQmFzZWRPblRyYW5zYWN0aW9uVHlwZSgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMucGxhY2Vob2xkZXJCYXNlZE9uVHJhbnNhY3Rpb25UeXBlLmdldCh0aGlzLl90cmFuc2FjdGlvblR5cGUpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHJlc2V0RmlsdGVycygpOiB2b2lkIHtcclxuICAgIHRoaXMuc2V0UHJldmlvdXNTZWFyY2hSZXF1ZXN0KCk7XHJcblxyXG4gICAgdGhpcy5fcmVzZXRSZXF1ZXN0KCk7XHJcbiAgICB0aGlzLnNlYXJjaFJlcXVlc3QuZ2VuZXJhbCA9IHRoaXMucHJldmlvdXNTZWFyY2hSZXF1ZXN0LmdlbmVyYWw7XHJcbiAgICB0aGlzLnNlYXJjaFRyYW5zYWN0aW9ucygpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldFByZXZpb3VzU2VhcmNoUmVxdWVzdCgpOiB2b2lkIHtcclxuICAgIHRoaXMucHJldmlvdXNTZWFyY2hSZXF1ZXN0ID0gey4uLnRoaXMuc2VhcmNoUmVxdWVzdH07XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaXNOZXdHZW5lcmFsU2VhcmNoKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMucHJldmlvdXNTZWFyY2hSZXF1ZXN0ICYmIHRoaXMucHJldmlvdXNTZWFyY2hSZXF1ZXN0LmdlbmVyYWwgIT09IHRoaXMuc2VhcmNoUmVxdWVzdC5nZW5lcmFsO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBmdWxsc2NyZWVuKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuYWN0aXZlU2VhcmNoVmlld01vZGUgPT09IFNlYXJjaFZpZXdNb2RlLkZ1bGxTY3JlZW47XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGNvbGxhcHNlZCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLmFjdGl2ZVNlYXJjaEJhclZpZXdNb2RlID09PSBTZWFyY2hiYXJWaWV3TW9kZS5Db2xsYXBzZWQ7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgdG9nZ2xlRmlsdGVyKCk6IHZvaWQge1xyXG4gICAgdGhpcy5zaG93RmlsdGVyU2lkZWJhciA9ICF0aGlzLnNob3dGaWx0ZXJTaWRlYmFyO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZUhpZGVGaWx0ZXIoKTogdm9pZCB7XHJcbiAgICB0aGlzLnNob3dGaWx0ZXJTaWRlYmFyID0gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlUmVzZXRGaWx0ZXIoKTogdm9pZCB7XHJcbiAgICB0aGlzLnJlc2V0RmlsdGVycygpO1xyXG4gICAgdGhpcy5zaG93RmlsdGVyU2lkZWJhciA9IGZhbHNlO1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIHRoaXMuc2hvd0ZpbHRlclNpZGViYXIgPSB0cnVlXHJcbiAgICB9LCAxMCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcHJpbnRTYWxlc09yZGVyc092ZXJ2aWV3KCk6IFByb21pc2U8UGRmVHJhbnNhY3Rpb25TZWFyY2hPdmVydmlld1Jlc3BvbnNlPiB7XHJcbiAgICBpZiAodGhpcy5zZWFyY2hSZXF1ZXN0KSB7XHJcbiAgICAgIHJldHVybiB0aGlzLl90cmFuc2FjdGlvblNlcnZpY2UucHJpbnRTYWxlc09yZGVyc092ZXJ2aWV3KHRoaXMuc2VhcmNoUmVxdWVzdCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9yZXNldENhY2hlKCk6IHZvaWQge1xyXG4gICAgdGhpcy5zZWFyY2hSZXF1ZXN0ID0gbmV3IFRyYW5zYWN0aW9uU2VhcmNoVmlld1JlcXVlc3QoKTtcclxuICAgIHRoaXMuX3NldHRpbmdzU2VydmljZS5zZXR0aW5ncy50cmFuc2FjdGlvblBhcmFtZXRlcnMgPSBuZXcgVHJhbnNhY3Rpb25TZWFyY2hWaWV3UmVxdWVzdCgpO1xyXG4gICAgdGhpcy5fc2V0dGluZ3NTZXJ2aWNlLnNldHRpbmdzLnRlbXBUcmFuc2FjdGlvblBhcmFtZXRlcnMgPSB1bmRlZmluZWQ7XHJcbiAgICB0aGlzLnRyYW5zYWN0aW9ucy5sZW5ndGggPSAwO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfcmVzZXRSZXF1ZXN0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5zZWFyY2hSZXF1ZXN0ID0gdGhpcy5fc2V0dGluZ3NTZXJ2aWNlLnNldHRpbmdzLnRyYW5zYWN0aW9uUGFyYW1ldGVycztcclxuICAgIHRoaXMuX3NldHRpbmdzU2VydmljZS5zZXR0aW5ncy50ZW1wVHJhbnNhY3Rpb25QYXJhbWV0ZXJzID0gdW5kZWZpbmVkO1xyXG4gIH1cclxufVxyXG4iXX0=