@colijnit/transaction 12.1.15 → 12.1.18

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 (161) hide show
  1. package/bundles/colijnit-transaction.umd.js +1755 -518
  2. package/bundles/colijnit-transaction.umd.js.map +1 -1
  3. package/colijnit-transaction.d.ts +146 -136
  4. package/colijnit-transaction.metadata.json +1 -1
  5. package/esm2015/colijnit-transaction.js +147 -137
  6. package/esm2015/lib/assets/dictionary/text.properties.js +37 -2
  7. package/esm2015/lib/component/avatar/avatar.component.js +9 -6
  8. package/esm2015/lib/component/checkout/checkout.component.js +8 -7
  9. package/esm2015/lib/component/core/base/transaction-grid-base.component.js +5 -2
  10. package/esm2015/lib/component/core/relation/customer-groups.component.js +3 -3
  11. package/esm2015/lib/component/payment/payment.component.js +112 -30
  12. package/esm2015/lib/component/payment/payment.module.js +7 -3
  13. package/esm2015/lib/component/payment-tile/payment-tile.component.js +4 -2
  14. package/esm2015/lib/component/relation-address/relation-address.component.js +3 -3
  15. package/esm2015/lib/component/transaction/transaction.component.js +7 -3
  16. package/esm2015/lib/component/transaction-confirmation-history/transaction-confirmation-history.component.js +2 -2
  17. package/esm2015/lib/component/transaction-grid/transaction-base-grid/transaction-base-grid.component.js +7 -2
  18. package/esm2015/lib/component/transaction-grid/transaction-grid/transaction-grid.component.js +3 -1
  19. package/esm2015/lib/component/transaction-grid/transaction-history-grid/transaction-history-grid.component.js +31 -14
  20. package/esm2015/lib/component/transaction-grid/transaction-history-grid/transaction-history-grid.module.js +4 -3
  21. package/esm2015/lib/component/transaction-grid/transaction-received-goods-grid/transaction-received-goods-grid.component.js +131 -17
  22. package/esm2015/lib/component/transaction-grid/transaction-received-goods-grid/transaction-received-goods-grid.module.js +5 -3
  23. package/esm2015/lib/component/transaction-header/transaction-header-delivery/transaction-header-delivery.component.js +2 -2
  24. package/esm2015/lib/component/transaction-header/transaction-header-order/transaction-header-order.component.js +6 -2
  25. package/esm2015/lib/component/transaction-header/transaction-header-payment/transaction-header-payment.component.js +19 -2
  26. package/esm2015/lib/component/transaction-header/transaction-header-payment/transaction-header-payment.module.js +6 -3
  27. package/esm2015/lib/component/transaction-history-grid-status/transaction-history-grid-status.component.js +16 -3
  28. package/esm2015/lib/component/transaction-line-side-panel/transaction-line-side-panel.component.js +20 -8
  29. package/esm2015/lib/component/transaction-line-side-panel-purchase/transaction-line-side-panel-purchase.component.js +49 -6
  30. package/esm2015/lib/component/transaction-quick-access/transaction-quick-access/transaction-quick-access.component.js +1 -1
  31. package/esm2015/lib/component/transaction-quick-access/transaction-quick-access-received-goods/transaction-quick-access-received-goods.component.js +48 -10
  32. package/esm2015/lib/component/transaction-quick-access/transaction-quick-access-received-goods/transaction-quick-access-received-goods.module.js +4 -3
  33. package/esm2015/lib/component/transaction-receiving-goods-details/transaction-receiving-goods-details.component.js +131 -19
  34. package/esm2015/lib/component/transaction-receiving-goods-details/transaction-receiving-goods-details.module.js +5 -2
  35. package/esm2015/lib/component/transaction-receiving-goods-history/transaction-receiving-goods-history.component.js +57 -11
  36. package/esm2015/lib/component/transaction-receiving-goods-history/transaction-receiving-goods-history.module.js +6 -3
  37. package/esm2015/lib/component/transaction-search/service/filter-request.service.js +65 -22
  38. package/esm2015/lib/component/transaction-search/service/transaction-search.service.js +1 -1
  39. package/esm2015/lib/component/transaction-search/transaction-filter/transaction-filter.component.js +4 -7
  40. package/esm2015/lib/component/transaction-search/transaction-filter-content-article/transaction-filter-content-article.component.js +83 -44
  41. package/esm2015/lib/component/transaction-search/transaction-filter-content-logistics/transaction-filter-content-logistics.component.js +101 -112
  42. package/esm2015/lib/component/transaction-search/transaction-filter-content-logistics/transaction-filter-content-logistics.module.js +6 -3
  43. package/esm2015/lib/component/transaction-search/transaction-filter-content-order/transaction-filter-content-order.component.js +86 -70
  44. package/esm2015/lib/component/transaction-search/transaction-filter-historic-state/transaction-filter-historic-state.component.js +60 -0
  45. package/esm2015/lib/component/transaction-search/transaction-filter-historic-state/transaction-filter-historic-state.module.js +24 -0
  46. package/esm2015/lib/component/transaction-search/transaction-search-result/transaction-search-result.component.js +16 -6
  47. package/esm2015/lib/component/transaction-search/transaction-search-result/transaction-search-result.module.js +4 -2
  48. package/esm2015/lib/component/transaction-search/transaction-search.component.js +5 -6
  49. package/esm2015/lib/component/transaction-search/transaction-tile/transaction-tile.component.js +2 -5
  50. package/esm2015/lib/component/transaction-search-grid/transaction-search-grid.component.js +86 -0
  51. package/esm2015/lib/component/transaction-search-grid/transaction-search-grid.module.js +26 -0
  52. package/esm2015/lib/component/view-mode-buttons/view-mode-buttons.component.js +5 -3
  53. package/esm2015/lib/enum/icon.enum.js +4 -1
  54. package/esm2015/lib/enum/position-grid-row.enum.js +6 -0
  55. package/esm2015/lib/enum/status-type.enum.js +3 -1
  56. package/esm2015/lib/model/icon-svg.js +4 -1
  57. package/esm2015/lib/model/payment.viewmodel.js +6 -0
  58. package/esm2015/lib/model/received-goods-view-model.js +11 -0
  59. package/esm2015/lib/service/article-connector.service.js +113 -0
  60. package/esm2015/lib/service/article.service.js +25 -0
  61. package/esm2015/lib/service/options.service.js +3 -1
  62. package/esm2015/lib/service/payment.service.js +51 -0
  63. package/esm2015/lib/service/pending-reason.service.js +10 -6
  64. package/esm2015/lib/service/shared-connector.service.js +53 -0
  65. package/esm2015/lib/service/shared.service.js +38 -0
  66. package/esm2015/lib/service/transaction-connector.service.js +1051 -0
  67. package/esm2015/lib/service/transaction-event.service.js +29 -0
  68. package/esm2015/lib/service/transaction-image.service.js +5 -5
  69. package/esm2015/lib/service/transaction-mapping.service.js +2 -2
  70. package/esm2015/lib/service/transaction.service.js +36 -8
  71. package/fesm2015/colijnit-transaction.js +1707 -492
  72. package/fesm2015/colijnit-transaction.js.map +1 -1
  73. package/lib/component/avatar/avatar.component.d.ts +4 -2
  74. package/lib/component/core/base/components/transaction-header-block/style/_layout.scss +3 -3
  75. package/lib/component/core/base/components/transaction-header-block/style/_material-definition.scss +2 -2
  76. package/lib/component/core/base/transaction-grid-base.component.d.ts +2 -0
  77. package/lib/component/core/relation/customer-groups.component.d.ts +2 -2
  78. package/lib/component/payment/payment.component.d.ts +22 -5
  79. package/lib/component/payment/style/_layout.scss +23 -1
  80. package/lib/component/payment/style/_material-definition.scss +0 -1
  81. package/lib/component/payment/style/_theme.scss +24 -0
  82. package/lib/component/payment-tile/payment-tile.component.d.ts +1 -0
  83. package/lib/component/payment-tile/style/_layout.scss +2 -1
  84. package/lib/component/relation-address/relation-address.component.d.ts +2 -2
  85. package/lib/component/transaction/style/_material-definition.scss +1 -1
  86. package/lib/component/transaction/transaction.component.d.ts +2 -2
  87. package/lib/component/transaction-button-bar/style/_layout.scss +6 -3
  88. package/lib/component/transaction-button-bar/style/_material-definition.scss +4 -3
  89. package/lib/component/transaction-grid/transaction-base-grid/style/_theme.scss +6 -0
  90. package/lib/component/transaction-grid/transaction-grid/transaction-grid.component.d.ts +1 -0
  91. package/lib/component/transaction-grid/transaction-history-grid/style/_layout.scss +8 -0
  92. package/lib/component/transaction-grid/transaction-history-grid/style/_material-definition.scss +1 -0
  93. package/lib/component/transaction-grid/transaction-history-grid/transaction-history-grid.component.d.ts +10 -5
  94. package/lib/component/transaction-grid/transaction-received-goods-grid/transaction-received-goods-grid.component.d.ts +34 -1
  95. package/lib/component/transaction-header/transaction-header-delivery/style/_layout.scss +5 -0
  96. package/lib/component/transaction-header/transaction-header-delivery/style/_material-definition.scss +1 -0
  97. package/lib/component/transaction-header/transaction-header-delivery/style/_theme.scss +8 -0
  98. package/lib/component/transaction-header/transaction-header-order/style/_layout.scss +5 -0
  99. package/lib/component/transaction-header/transaction-header-payment/style/_layout.scss +1 -0
  100. package/lib/component/transaction-header/transaction-header-payment/transaction-header-payment.component.d.ts +2 -0
  101. package/lib/component/transaction-history-grid-status/style/_layout.scss +7 -7
  102. package/lib/component/transaction-history-grid-status/style/_material-definition.scss +8 -0
  103. package/lib/component/transaction-history-grid-status/transaction-history-grid-status.component.d.ts +2 -0
  104. package/lib/component/transaction-line/style/_layout.scss +2 -1
  105. package/lib/component/transaction-line/style/_material-definition.scss +4 -3
  106. package/lib/component/transaction-line/style/_theme.scss +5 -0
  107. package/lib/component/transaction-line-side-panel/style/_layout.scss +7 -4
  108. package/lib/component/transaction-line-side-panel/style/_material-definition.scss +1 -1
  109. package/lib/component/transaction-line-side-panel/transaction-line-side-panel.component.d.ts +8 -3
  110. package/lib/component/transaction-line-side-panel-default/style/_layout.scss +3 -0
  111. package/lib/component/transaction-line-side-panel-purchase/transaction-line-side-panel-purchase.component.d.ts +14 -1
  112. package/lib/component/transaction-quick-access/transaction-quick-access-received-goods/transaction-quick-access-received-goods.component.d.ts +24 -1
  113. package/lib/component/transaction-receiving-goods-details/style/_layout.scss +4 -4
  114. package/lib/component/transaction-receiving-goods-details/style/_material-definition.scss +3 -1
  115. package/lib/component/transaction-receiving-goods-details/transaction-receiving-goods-details.component.d.ts +27 -3
  116. package/lib/component/transaction-receiving-goods-history/transaction-receiving-goods-history.component.d.ts +14 -1
  117. package/lib/component/transaction-search/service/filter-request.service.d.ts +15 -5
  118. package/lib/component/transaction-search/style/_material-definition.scss +3 -1
  119. package/lib/component/transaction-search/transaction-filter-content-article/transaction-filter-content-article.component.d.ts +32 -9
  120. package/lib/component/transaction-search/transaction-filter-content-logistics/style/material.scss +1 -0
  121. package/lib/component/transaction-search/transaction-filter-content-logistics/transaction-filter-content-logistics.component.d.ts +11 -12
  122. package/lib/component/transaction-search/transaction-filter-content-order/transaction-filter-content-order.component.d.ts +17 -19
  123. package/lib/component/transaction-search/transaction-filter-historic-state/style/_layout.scss +9 -0
  124. package/lib/component/transaction-search/transaction-filter-historic-state/style/_material-definition.scss +0 -0
  125. package/lib/component/transaction-search/transaction-filter-historic-state/style/_theme.scss +4 -0
  126. package/lib/component/transaction-search/transaction-filter-historic-state/style/material.scss +4 -0
  127. package/lib/component/transaction-search/transaction-filter-historic-state/transaction-filter-historic-state.component.d.ts +22 -0
  128. package/lib/component/transaction-search/transaction-filter-historic-state/transaction-filter-historic-state.module.d.ts +2 -0
  129. package/lib/component/transaction-search/transaction-search-result/style/_layout.scss +6 -2
  130. package/lib/component/transaction-search/transaction-search-result/style/_theme.scss +4 -0
  131. package/lib/component/transaction-search/transaction-search-result/transaction-search-result.component.d.ts +6 -2
  132. package/lib/component/transaction-search-grid/style/_layout.scss +6 -0
  133. package/lib/component/transaction-search-grid/style/_material-definition.scss +1 -0
  134. package/lib/component/transaction-search-grid/style/_theme.scss +6 -0
  135. package/lib/component/transaction-search-grid/style/material.scss +7 -0
  136. package/lib/component/transaction-search-grid/transaction-search-grid.component.d.ts +13 -0
  137. package/lib/component/transaction-search-grid/transaction-search-grid.module.d.ts +2 -0
  138. package/lib/component/view-mode-buttons/style/_material-definition.scss +1 -1
  139. package/lib/component/view-mode-buttons/view-mode-buttons.component.d.ts +4 -3
  140. package/lib/enum/icon.enum.d.ts +3 -0
  141. package/lib/enum/position-grid-row.enum.d.ts +4 -0
  142. package/lib/enum/status-type.enum.d.ts +3 -1
  143. package/lib/model/payment.viewmodel.d.ts +6 -0
  144. package/lib/model/received-goods-view-model.d.ts +10 -0
  145. package/lib/service/article-connector.service.d.ts +20 -0
  146. package/lib/service/article.service.d.ts +6 -0
  147. package/lib/service/options.service.d.ts +1 -0
  148. package/lib/service/payment.service.d.ts +9 -0
  149. package/lib/service/pending-reason.service.d.ts +5 -3
  150. package/lib/service/shared-connector.service.d.ts +12 -0
  151. package/lib/service/shared.service.d.ts +13 -0
  152. package/lib/service/{ione-connector-adapter.service.d.ts → transaction-connector.service.d.ts} +12 -2
  153. package/lib/service/transaction-event.service.d.ts +65 -0
  154. package/lib/service/transaction-image.service.d.ts +2 -2
  155. package/lib/service/transaction.service.d.ts +15 -2
  156. package/lib/style/_variables.scss +2 -0
  157. package/lib/style/transaction-globals.scss +2 -0
  158. package/package.json +3 -3
  159. package/esm2015/lib/enum/tab-category.enum.js +0 -10
  160. package/esm2015/lib/service/ione-connector-adapter.service.js +0 -970
  161. package/lib/enum/tab-category.enum.d.ts +0 -8
@@ -58,16 +58,13 @@ TransactionFilterComponent.decorators = [
58
58
  </div>
59
59
  <div #filterItems class="transaction-category-filter-wrapper" data-ride="carousel">
60
60
  <div #orderFilter class="transaction-filter-category-content">
61
- <co-transaction-filter-content-order [(searchRequest)]="searchService.searchRequest"
62
- (searchRequestChange)="searchService.searchRequest = $event"></co-transaction-filter-content-order>
61
+ <co-transaction-filter-content-order></co-transaction-filter-content-order>
63
62
  </div>
64
63
  <div #logisticsFilter class="transaction-filter-category-content">
65
- <co-transaction-filter-content-logistics [(searchRequest)]="searchService.searchRequest"
66
- (searchRequestChange)="searchService.searchRequest = $event"></co-transaction-filter-content-logistics>
64
+ <co-transaction-filter-content-logistics></co-transaction-filter-content-logistics>
67
65
  </div>
68
66
  <div #articleFilter class="transaction-filter-category-content">
69
- <co-transaction-filter-content-article [(searchRequest)]="searchService.searchRequest"
70
- (searchRequestChange)="searchService.searchRequest = $event"></co-transaction-filter-content-article>
67
+ <co-transaction-filter-content-article></co-transaction-filter-content-article>
71
68
  </div>
72
69
  </div>
73
70
  `,
@@ -87,4 +84,4 @@ TransactionFilterComponent.propDecorators = {
87
84
  resetFilterClick: [{ type: Output }],
88
85
  showClass: [{ type: HostBinding, args: ["class.co-transaction-filter",] }]
89
86
  };
90
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tZmlsdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L3RyYW5zYWN0aW9uLXNlYXJjaC90cmFuc2FjdGlvbi1maWx0ZXIvdHJhbnNhY3Rpb24tZmlsdGVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkgsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQy9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBcUNqRixNQUFNLE9BQU8sMEJBQTBCO0lBZ0NyQyxZQUNTLGdCQUFrQyxFQUNsQyxhQUF1QztRQUR2QyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLGtCQUFhLEdBQWIsYUFBYSxDQUEwQjtRQWpDaEMsU0FBSSxHQUFnQixJQUFJLENBQUM7UUFlbEMscUJBQWdCLEdBQXVCLElBQUksWUFBWSxFQUFRLENBQUM7UUFHaEUscUJBQWdCLEdBQXVCLElBQUksWUFBWSxFQUFRLENBQUM7UUFPaEUscUJBQWdCLEdBQWE7WUFDbEMsT0FBTztZQUNQLFdBQVc7WUFDWCxTQUFTO1NBQ1YsQ0FBQTtJQU1ELENBQUM7SUFkTSxTQUFTO1FBQ2QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBY00sbUJBQW1CLENBQUMsR0FBVztRQUNwQyxJQUFJLEdBQUcsS0FBSyxPQUFPLEVBQUU7WUFDbkIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUM7U0FDbkk7YUFBTSxJQUFJLEdBQUcsS0FBSyxXQUFXLEVBQUU7WUFDOUIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsYUFBYSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUM7U0FDdkk7YUFBTTtZQUNMLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDO1NBQ3JJO0lBQ0gsQ0FBQztJQUVNLGtCQUFrQjtRQUN2QixJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUVNLFlBQVk7UUFDakIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNsQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDL0IsQ0FBQzs7O1lBMUZGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsdUJBQXVCO2dCQUNqQyxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQThCVDtnQkFDRCxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTthQUN0Qzs7O1lBckNRLGdCQUFnQjtZQUNoQix3QkFBd0I7OzswQkF3QzlCLFNBQVMsU0FBQyxhQUFhLEVBQUUsRUFBQyxJQUFJLEVBQUUsVUFBVSxFQUFDOzBCQUczQyxTQUFTLFNBQUMsYUFBYSxFQUFFLEVBQUMsSUFBSSxFQUFFLFVBQVUsRUFBQzs4QkFHM0MsU0FBUyxTQUFDLGlCQUFpQixFQUFFLEVBQUMsSUFBSSxFQUFFLFVBQVUsRUFBQzs0QkFHL0MsU0FBUyxTQUFDLGVBQWUsRUFBRSxFQUFDLElBQUksRUFBRSxVQUFVLEVBQUM7K0JBRzdDLE1BQU07K0JBR04sTUFBTTt3QkFHTixXQUFXLFNBQUMsNkJBQTZCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIEhvc3RCaW5kaW5nLCBPdXRwdXQsIFZpZXdDaGlsZCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBJY29uIH0gZnJvbSBcIi4uLy4uLy4uL2VudW0vaWNvbi5lbnVtXCI7XHJcbmltcG9ydCB7IEljb25DYWNoZVNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vLi4vc2VydmljZS9pY29uLWNhY2hlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgVHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlIH0gZnJvbSBcIi4uL3NlcnZpY2UvdHJhbnNhY3Rpb24tc2VhcmNoLnNlcnZpY2VcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnY28tdHJhbnNhY3Rpb24tZmlsdGVyJyxcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPGRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLWZpbHRlci1oZWFkZXItd3JhcHBlclwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24tZmlsdGVyLWhlYWRlclwiPlxyXG4gICAgICAgIDxzcGFuIFt0ZXh0Q29udGVudF09XCInRmlsdGVycydcIj48L3NwYW4+XHJcbiAgICAgICAgPGNvLWljb24gY2xhc3M9XCJmaWx0ZXItcmVzZXQtaWNvbiBjbGlja2FibGVcIlxyXG4gICAgICAgICAgICAgICAgIFtpY29uRGF0YV09XCJpY29uQ2FjaGVTZXJ2aWNlLmdldEljb24oaWNvbi5TeW5jQWx0KVwiXHJcbiAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInJlc2V0RmlsdGVycygpXCJcclxuICAgICAgICA+PC9jby1pY29uPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGNvLWljb24gY2xhc3M9XCJjbGlja2FibGVcIiBbaWNvbkRhdGFdPVwiaWNvbkNhY2hlU2VydmljZS5nZXRJY29uKGljb24uQ2FuY2VsKVwiXHJcbiAgICAgICAgICAgICAgIChjbGljayk9XCJvbkNsb3NlQnV0dG9uQ2xpY2soKVwiPjwvY28taWNvbj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLWZpbHRlci1jYXRlZ29yaWVzXCI+XHJcbiAgICAgIDxjby10cmFuc2FjdGlvbi1maWx0ZXItY2F0ZWdvcmllcyBbY2F0ZWdvcmllc109XCJmaWx0ZXJDYXRlZ29yaWVzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjYXRlZ29yeUNsaWNrKT1cImhhbmRsZUNhdGVnb3J5Q2xpY2soJGV2ZW50KVwiPjwvY28tdHJhbnNhY3Rpb24tZmlsdGVyLWNhdGVnb3JpZXM+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgI2ZpbHRlckl0ZW1zIGNsYXNzPVwidHJhbnNhY3Rpb24tY2F0ZWdvcnktZmlsdGVyLXdyYXBwZXJcIiBkYXRhLXJpZGU9XCJjYXJvdXNlbFwiPlxyXG4gICAgICA8ZGl2ICNvcmRlckZpbHRlciBjbGFzcz1cInRyYW5zYWN0aW9uLWZpbHRlci1jYXRlZ29yeS1jb250ZW50XCI+XHJcbiAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWZpbHRlci1jb250ZW50LW9yZGVyIFsoc2VhcmNoUmVxdWVzdCldPVwic2VhcmNoU2VydmljZS5zZWFyY2hSZXF1ZXN0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHNlYXJjaFJlcXVlc3RDaGFuZ2UpPVwic2VhcmNoU2VydmljZS5zZWFyY2hSZXF1ZXN0ID0gJGV2ZW50XCI+PC9jby10cmFuc2FjdGlvbi1maWx0ZXItY29udGVudC1vcmRlcj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgI2xvZ2lzdGljc0ZpbHRlciBjbGFzcz1cInRyYW5zYWN0aW9uLWZpbHRlci1jYXRlZ29yeS1jb250ZW50XCI+XHJcbiAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWZpbHRlci1jb250ZW50LWxvZ2lzdGljcyBbKHNlYXJjaFJlcXVlc3QpXT1cInNlYXJjaFNlcnZpY2Uuc2VhcmNoUmVxdWVzdFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoc2VhcmNoUmVxdWVzdENoYW5nZSk9XCJzZWFyY2hTZXJ2aWNlLnNlYXJjaFJlcXVlc3QgPSAkZXZlbnRcIj48L2NvLXRyYW5zYWN0aW9uLWZpbHRlci1jb250ZW50LWxvZ2lzdGljcz5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgI2FydGljbGVGaWx0ZXIgY2xhc3M9XCJ0cmFuc2FjdGlvbi1maWx0ZXItY2F0ZWdvcnktY29udGVudFwiPlxyXG4gICAgICAgIDxjby10cmFuc2FjdGlvbi1maWx0ZXItY29udGVudC1hcnRpY2xlIFsoc2VhcmNoUmVxdWVzdCldPVwic2VhcmNoU2VydmljZS5zZWFyY2hSZXF1ZXN0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoc2VhcmNoUmVxdWVzdENoYW5nZSk9XCJzZWFyY2hTZXJ2aWNlLnNlYXJjaFJlcXVlc3QgPSAkZXZlbnRcIj48L2NvLXRyYW5zYWN0aW9uLWZpbHRlci1jb250ZW50LWFydGljbGU+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgYCxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvbkZpbHRlckNvbXBvbmVudCB7XHJcbiAgcHVibGljIHJlYWRvbmx5IGljb246IHR5cGVvZiBJY29uID0gSWNvbjtcclxuXHJcbiAgQFZpZXdDaGlsZCgnZmlsdGVySXRlbXMnLCB7cmVhZDogRWxlbWVudFJlZn0pXHJcbiAgcHVibGljIGZpbHRlckl0ZW1zOiBFbGVtZW50UmVmO1xyXG5cclxuICBAVmlld0NoaWxkKCdvcmRlckZpbHRlcicsIHtyZWFkOiBFbGVtZW50UmVmfSlcclxuICBwdWJsaWMgb3JkZXJGaWx0ZXI6IEVsZW1lbnRSZWY7XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ2xvZ2lzdGljc0ZpbHRlcicsIHtyZWFkOiBFbGVtZW50UmVmfSlcclxuICBwdWJsaWMgbG9naXN0aWNzRmlsdGVyOiBFbGVtZW50UmVmO1xyXG5cclxuICBAVmlld0NoaWxkKCdhcnRpY2xlRmlsdGVyJywge3JlYWQ6IEVsZW1lbnRSZWZ9KVxyXG4gIHB1YmxpYyBhcnRpY2xlRmlsdGVyOiBFbGVtZW50UmVmO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgY2xvc2VCdXR0b25DbGljazogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgcmVzZXRGaWx0ZXJDbGljazogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG5cclxuICBASG9zdEJpbmRpbmcoXCJjbGFzcy5jby10cmFuc2FjdGlvbi1maWx0ZXJcIilcclxuICBwdWJsaWMgc2hvd0NsYXNzKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZmlsdGVyQ2F0ZWdvcmllczogc3RyaW5nW10gPSBbXHJcbiAgICAnT3JkZXInLFxyXG4gICAgJ0xvZ2lzdGllaycsXHJcbiAgICAnQXJ0aWtlbCdcclxuICBdXHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIGljb25DYWNoZVNlcnZpY2U6IEljb25DYWNoZVNlcnZpY2UsXHJcbiAgICBwdWJsaWMgc2VhcmNoU2VydmljZTogVHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlLFxyXG4gICkge1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZUNhdGVnb3J5Q2xpY2soY2F0OiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGlmIChjYXQgPT09ICdPcmRlcicpIHtcclxuICAgICAgdGhpcy5maWx0ZXJJdGVtcy5uYXRpdmVFbGVtZW50LnNjcm9sbExlZnQgPSB0aGlzLm9yZGVyRmlsdGVyLm5hdGl2ZUVsZW1lbnQub2Zmc2V0TGVmdCAtIHRoaXMuZmlsdGVySXRlbXMubmF0aXZlRWxlbWVudC5vZmZzZXRMZWZ0O1xyXG4gICAgfSBlbHNlIGlmIChjYXQgPT09ICdMb2dpc3RpZWsnKSB7XHJcbiAgICAgIHRoaXMuZmlsdGVySXRlbXMubmF0aXZlRWxlbWVudC5zY3JvbGxMZWZ0ID0gdGhpcy5sb2dpc3RpY3NGaWx0ZXIubmF0aXZlRWxlbWVudC5vZmZzZXRMZWZ0IC0gdGhpcy5maWx0ZXJJdGVtcy5uYXRpdmVFbGVtZW50Lm9mZnNldExlZnQ7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmZpbHRlckl0ZW1zLm5hdGl2ZUVsZW1lbnQuc2Nyb2xsTGVmdCA9IHRoaXMuYXJ0aWNsZUZpbHRlci5uYXRpdmVFbGVtZW50Lm9mZnNldExlZnQgLSB0aGlzLmZpbHRlckl0ZW1zLm5hdGl2ZUVsZW1lbnQub2Zmc2V0TGVmdDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBvbkNsb3NlQnV0dG9uQ2xpY2soKSB7XHJcbiAgICB0aGlzLmNsb3NlQnV0dG9uQ2xpY2suZW1pdCgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHJlc2V0RmlsdGVycygpIHtcclxuICAgIHRoaXMuc2VhcmNoU2VydmljZS5yZXNldEZpbHRlcnMoKTtcclxuICAgIHRoaXMucmVzZXRGaWx0ZXJDbGljay5lbWl0KCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
87
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tZmlsdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L3RyYW5zYWN0aW9uLXNlYXJjaC90cmFuc2FjdGlvbi1maWx0ZXIvdHJhbnNhY3Rpb24tZmlsdGVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkgsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQy9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBa0NqRixNQUFNLE9BQU8sMEJBQTBCO0lBZ0NyQyxZQUNTLGdCQUFrQyxFQUNsQyxhQUF1QztRQUR2QyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLGtCQUFhLEdBQWIsYUFBYSxDQUEwQjtRQWpDaEMsU0FBSSxHQUFnQixJQUFJLENBQUM7UUFlbEMscUJBQWdCLEdBQXVCLElBQUksWUFBWSxFQUFRLENBQUM7UUFHaEUscUJBQWdCLEdBQXVCLElBQUksWUFBWSxFQUFRLENBQUM7UUFPaEUscUJBQWdCLEdBQWE7WUFDbEMsT0FBTztZQUNQLFdBQVc7WUFDWCxTQUFTO1NBQ1YsQ0FBQTtJQU1ELENBQUM7SUFkTSxTQUFTO1FBQ2QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBY00sbUJBQW1CLENBQUMsR0FBVztRQUNwQyxJQUFJLEdBQUcsS0FBSyxPQUFPLEVBQUU7WUFDbkIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUM7U0FDbkk7YUFBTSxJQUFJLEdBQUcsS0FBSyxXQUFXLEVBQUU7WUFDOUIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsYUFBYSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUM7U0FDdkk7YUFBTTtZQUNMLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDO1NBQ3JJO0lBQ0gsQ0FBQztJQUVNLGtCQUFrQjtRQUN2QixJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUVNLFlBQVk7UUFDakIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNsQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDL0IsQ0FBQzs7O1lBdkZGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsdUJBQXVCO2dCQUNqQyxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTJCVDtnQkFDRCxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTthQUN0Qzs7O1lBbENRLGdCQUFnQjtZQUNoQix3QkFBd0I7OzswQkFxQzlCLFNBQVMsU0FBQyxhQUFhLEVBQUUsRUFBQyxJQUFJLEVBQUUsVUFBVSxFQUFDOzBCQUczQyxTQUFTLFNBQUMsYUFBYSxFQUFFLEVBQUMsSUFBSSxFQUFFLFVBQVUsRUFBQzs4QkFHM0MsU0FBUyxTQUFDLGlCQUFpQixFQUFFLEVBQUMsSUFBSSxFQUFFLFVBQVUsRUFBQzs0QkFHL0MsU0FBUyxTQUFDLGVBQWUsRUFBRSxFQUFDLElBQUksRUFBRSxVQUFVLEVBQUM7K0JBRzdDLE1BQU07K0JBR04sTUFBTTt3QkFHTixXQUFXLFNBQUMsNkJBQTZCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIEhvc3RCaW5kaW5nLCBPdXRwdXQsIFZpZXdDaGlsZCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBJY29uIH0gZnJvbSBcIi4uLy4uLy4uL2VudW0vaWNvbi5lbnVtXCI7XHJcbmltcG9ydCB7IEljb25DYWNoZVNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vLi4vc2VydmljZS9pY29uLWNhY2hlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgVHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlIH0gZnJvbSBcIi4uL3NlcnZpY2UvdHJhbnNhY3Rpb24tc2VhcmNoLnNlcnZpY2VcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnY28tdHJhbnNhY3Rpb24tZmlsdGVyJyxcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPGRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLWZpbHRlci1oZWFkZXItd3JhcHBlclwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24tZmlsdGVyLWhlYWRlclwiPlxyXG4gICAgICAgIDxzcGFuIFt0ZXh0Q29udGVudF09XCInRmlsdGVycydcIj48L3NwYW4+XHJcbiAgICAgICAgPGNvLWljb24gY2xhc3M9XCJmaWx0ZXItcmVzZXQtaWNvbiBjbGlja2FibGVcIlxyXG4gICAgICAgICAgICAgICAgIFtpY29uRGF0YV09XCJpY29uQ2FjaGVTZXJ2aWNlLmdldEljb24oaWNvbi5TeW5jQWx0KVwiXHJcbiAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInJlc2V0RmlsdGVycygpXCJcclxuICAgICAgICA+PC9jby1pY29uPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGNvLWljb24gY2xhc3M9XCJjbGlja2FibGVcIiBbaWNvbkRhdGFdPVwiaWNvbkNhY2hlU2VydmljZS5nZXRJY29uKGljb24uQ2FuY2VsKVwiXHJcbiAgICAgICAgICAgICAgIChjbGljayk9XCJvbkNsb3NlQnV0dG9uQ2xpY2soKVwiPjwvY28taWNvbj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLWZpbHRlci1jYXRlZ29yaWVzXCI+XHJcbiAgICAgIDxjby10cmFuc2FjdGlvbi1maWx0ZXItY2F0ZWdvcmllcyBbY2F0ZWdvcmllc109XCJmaWx0ZXJDYXRlZ29yaWVzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjYXRlZ29yeUNsaWNrKT1cImhhbmRsZUNhdGVnb3J5Q2xpY2soJGV2ZW50KVwiPjwvY28tdHJhbnNhY3Rpb24tZmlsdGVyLWNhdGVnb3JpZXM+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgI2ZpbHRlckl0ZW1zIGNsYXNzPVwidHJhbnNhY3Rpb24tY2F0ZWdvcnktZmlsdGVyLXdyYXBwZXJcIiBkYXRhLXJpZGU9XCJjYXJvdXNlbFwiPlxyXG4gICAgICA8ZGl2ICNvcmRlckZpbHRlciBjbGFzcz1cInRyYW5zYWN0aW9uLWZpbHRlci1jYXRlZ29yeS1jb250ZW50XCI+XHJcbiAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWZpbHRlci1jb250ZW50LW9yZGVyPjwvY28tdHJhbnNhY3Rpb24tZmlsdGVyLWNvbnRlbnQtb3JkZXI+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2ICNsb2dpc3RpY3NGaWx0ZXIgY2xhc3M9XCJ0cmFuc2FjdGlvbi1maWx0ZXItY2F0ZWdvcnktY29udGVudFwiPlxyXG4gICAgICAgIDxjby10cmFuc2FjdGlvbi1maWx0ZXItY29udGVudC1sb2dpc3RpY3M+PC9jby10cmFuc2FjdGlvbi1maWx0ZXItY29udGVudC1sb2dpc3RpY3M+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2ICNhcnRpY2xlRmlsdGVyIGNsYXNzPVwidHJhbnNhY3Rpb24tZmlsdGVyLWNhdGVnb3J5LWNvbnRlbnRcIj5cclxuICAgICAgICA8Y28tdHJhbnNhY3Rpb24tZmlsdGVyLWNvbnRlbnQtYXJ0aWNsZT48L2NvLXRyYW5zYWN0aW9uLWZpbHRlci1jb250ZW50LWFydGljbGU+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgYCxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvbkZpbHRlckNvbXBvbmVudCB7XHJcbiAgcHVibGljIHJlYWRvbmx5IGljb246IHR5cGVvZiBJY29uID0gSWNvbjtcclxuXHJcbiAgQFZpZXdDaGlsZCgnZmlsdGVySXRlbXMnLCB7cmVhZDogRWxlbWVudFJlZn0pXHJcbiAgcHVibGljIGZpbHRlckl0ZW1zOiBFbGVtZW50UmVmO1xyXG5cclxuICBAVmlld0NoaWxkKCdvcmRlckZpbHRlcicsIHtyZWFkOiBFbGVtZW50UmVmfSlcclxuICBwdWJsaWMgb3JkZXJGaWx0ZXI6IEVsZW1lbnRSZWY7XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ2xvZ2lzdGljc0ZpbHRlcicsIHtyZWFkOiBFbGVtZW50UmVmfSlcclxuICBwdWJsaWMgbG9naXN0aWNzRmlsdGVyOiBFbGVtZW50UmVmO1xyXG5cclxuICBAVmlld0NoaWxkKCdhcnRpY2xlRmlsdGVyJywge3JlYWQ6IEVsZW1lbnRSZWZ9KVxyXG4gIHB1YmxpYyBhcnRpY2xlRmlsdGVyOiBFbGVtZW50UmVmO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgY2xvc2VCdXR0b25DbGljazogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgcmVzZXRGaWx0ZXJDbGljazogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG5cclxuICBASG9zdEJpbmRpbmcoXCJjbGFzcy5jby10cmFuc2FjdGlvbi1maWx0ZXJcIilcclxuICBwdWJsaWMgc2hvd0NsYXNzKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZmlsdGVyQ2F0ZWdvcmllczogc3RyaW5nW10gPSBbXHJcbiAgICAnT3JkZXInLFxyXG4gICAgJ0xvZ2lzdGllaycsXHJcbiAgICAnQXJ0aWtlbCdcclxuICBdXHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIGljb25DYWNoZVNlcnZpY2U6IEljb25DYWNoZVNlcnZpY2UsXHJcbiAgICBwdWJsaWMgc2VhcmNoU2VydmljZTogVHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlLFxyXG4gICkge1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZUNhdGVnb3J5Q2xpY2soY2F0OiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGlmIChjYXQgPT09ICdPcmRlcicpIHtcclxuICAgICAgdGhpcy5maWx0ZXJJdGVtcy5uYXRpdmVFbGVtZW50LnNjcm9sbExlZnQgPSB0aGlzLm9yZGVyRmlsdGVyLm5hdGl2ZUVsZW1lbnQub2Zmc2V0TGVmdCAtIHRoaXMuZmlsdGVySXRlbXMubmF0aXZlRWxlbWVudC5vZmZzZXRMZWZ0O1xyXG4gICAgfSBlbHNlIGlmIChjYXQgPT09ICdMb2dpc3RpZWsnKSB7XHJcbiAgICAgIHRoaXMuZmlsdGVySXRlbXMubmF0aXZlRWxlbWVudC5zY3JvbGxMZWZ0ID0gdGhpcy5sb2dpc3RpY3NGaWx0ZXIubmF0aXZlRWxlbWVudC5vZmZzZXRMZWZ0IC0gdGhpcy5maWx0ZXJJdGVtcy5uYXRpdmVFbGVtZW50Lm9mZnNldExlZnQ7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmZpbHRlckl0ZW1zLm5hdGl2ZUVsZW1lbnQuc2Nyb2xsTGVmdCA9IHRoaXMuYXJ0aWNsZUZpbHRlci5uYXRpdmVFbGVtZW50Lm9mZnNldExlZnQgLSB0aGlzLmZpbHRlckl0ZW1zLm5hdGl2ZUVsZW1lbnQub2Zmc2V0TGVmdDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBvbkNsb3NlQnV0dG9uQ2xpY2soKTogdm9pZCB7XHJcbiAgICB0aGlzLmNsb3NlQnV0dG9uQ2xpY2suZW1pdCgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHJlc2V0RmlsdGVycygpOiB2b2lkIHtcclxuICAgIHRoaXMuc2VhcmNoU2VydmljZS5yZXNldEZpbHRlcnMoKTtcclxuICAgIHRoaXMucmVzZXRGaWx0ZXJDbGljay5lbWl0KCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -1,38 +1,70 @@
1
- import { Component, EventEmitter, HostBinding, Input, Output } from "@angular/core";
1
+ import { Component, HostBinding } from "@angular/core";
2
+ import { RelationKind } from "@colijnit/transactionapi/build/enum/relation-kind.enum";
3
+ import { RelationRequest } from "@colijnit/transactionapi/build/model/relation-request";
4
+ import { FilterViewmodel } from "../../../model/filter-viewmodel";
2
5
  import { TransactionService } from "../../../service/transaction.service";
3
6
  import { FilterRequestService } from "../service/filter-request.service";
4
7
  import { TransactionSearchService } from "../service/transaction-search.service";
8
+ import { ArticleExtendedRequest } from "@colijnit/articleapi/build/model/article-extended-request";
5
9
  export class TransactionFilterContentArticleComponent {
6
- constructor(searchService, _transactionService, _filterRequestService) {
10
+ constructor(searchService, filterRequestService, _transactionService) {
7
11
  this.searchService = searchService;
12
+ this.filterRequestService = filterRequestService;
8
13
  this._transactionService = _transactionService;
9
- this._filterRequestService = _filterRequestService;
10
- this.searchRequestChange = new EventEmitter();
14
+ this.searchRequest = this.searchService.searchRequest;
11
15
  this.searchPlaceholder = "SEARCH_IN_COLLECTION";
16
+ this.showMoreLabel = "SHOW_MORE";
17
+ this.showLessLabel = "SHOW_LESS";
12
18
  this.articleNumberFields = { text: "description", value: "code" };
19
+ this.exceedanceCodeFields = { text: "description", value: "code" };
20
+ this.turnoverGroupFields = { text: "description", value: "turnovergroupNr" };
21
+ this.mainArticleFields = { text: "description", value: "articlenumber" };
22
+ this.supplierFields = { text: "displayName", value: "relationId" };
23
+ this.getArticles = (text) => {
24
+ const request = new ArticleExtendedRequest();
25
+ request.articleNumber = text;
26
+ return this._transactionService.getArticles(request).then((articles) => {
27
+ return new FilterViewmodel(articles, { text: 'articleNumber', value: 'articleNumber' }).filterItems;
28
+ });
29
+ };
13
30
  }
14
31
  showClass() {
15
32
  return true;
16
33
  }
17
34
  ngOnInit() {
18
- this._getArticleNumbers();
35
+ this._setExceedanceCodes();
36
+ this._setSuppliers();
37
+ this._setTurnoverGroups();
38
+ this._setMainArticles();
19
39
  }
20
- //Artikelnummer
21
- _getArticleNumbers() {
40
+ onFilterButtonClick() {
41
+ this.searchService.searchTransactions();
22
42
  }
23
- handleCollectionChangeForRange(collection, model) {
24
- this.searchRequest[model] = this._filterRequestService.getFilterRequestForCollectionRange(collection);
43
+ handleCollectionChangeArticleNumber(collection) {
44
+ const checkedItem = collection.find(c => c.checked);
45
+ this.filterRequestService.handleCollectionChangeForSingleValue(checkedItem ? checkedItem.code + "" : "", 'articleNr');
25
46
  }
26
- handleCollectionChangeForArray(collection, model) {
27
- this.searchRequest[model] = this._filterRequestService.getFilterRequestForCollectionArray(collection);
47
+ _setExceedanceCodes() {
48
+ this._transactionService.getInOutCollection("NL").then((exceedanceCodes) => {
49
+ this.exceedanceCodes = new FilterViewmodel(exceedanceCodes, this.exceedanceCodeFields).filterItems;
50
+ });
28
51
  }
29
- handleDateRangeChange(dates, model) {
30
- let startDate = dates[0];
31
- let endDate = dates[1];
32
- this.searchRequest[model] = this._filterRequestService.getFilterRequestForDateRange(startDate, endDate);
52
+ _setTurnoverGroups() {
53
+ this._transactionService.getTurnoverGroups().then((turnoverGroups) => {
54
+ this.turnoverGroups = new FilterViewmodel(turnoverGroups, this.turnoverGroupFields).filterItems;
55
+ });
33
56
  }
34
- onFilterButtonClick() {
35
- this.searchService.searchTransactions();
57
+ _setMainArticles() {
58
+ this._transactionService.getMainArticles().then((articles) => {
59
+ this.mainArticles = new FilterViewmodel(articles, this.mainArticleFields).filterItems;
60
+ });
61
+ }
62
+ _setSuppliers() {
63
+ const request = new RelationRequest();
64
+ request.relationType = RelationKind.Supplier;
65
+ this._transactionService.getRelationListObjects(request).then((relationListObjects) => {
66
+ this.suppliers = new FilterViewmodel(relationListObjects, this.supplierFields).filterItems;
67
+ });
36
68
  }
37
69
  }
38
70
  TransactionFilterContentArticleComponent.decorators = [
@@ -41,48 +73,57 @@ TransactionFilterContentArticleComponent.decorators = [
41
73
  template: `
42
74
  <div class="transaction-filter-content-article-wrapper">
43
75
 
44
- <!--Artikelnummer: nog geen call in de API? -->
76
+ <!--Artikelnummer-->
45
77
  <co-filter-item
46
78
  [placeholder]="'ARTICLE_NR' | localize"
47
79
  [expanded]="true"
80
+ [singleSelect]="true"
81
+ [minSearchCharsToLoadCollection]="3"
82
+ [collectionLoadFn]="getArticles"
83
+ (collectionChange)="handleCollectionChangeArticleNumber($event)"
48
84
  >
49
-
50
85
  </co-filter-item>
51
86
 
52
- <!--Omzetgroep: nog geen call in de API? -->
87
+ <!--Omzetgroep-->
53
88
  <co-filter-item
54
89
  [placeholder]="'TURNOVER_GROUP' | localize"
55
- [customContent]="true"
56
- [expanded]="true">
57
- <co-input-text [(model)]="searchRequest.rangeTurnoverGroup"
58
- [placeholder]="'TURNOVER_GROUP' | localize"></co-input-text>
90
+ [expanded]="true"
91
+ [collection]="turnoverGroups"
92
+ (collectionChange)="filterRequestService.handleCollectionChangeForRange($event, 'rangeTurnoverGroup')"
93
+ >
59
94
  </co-filter-item>
60
95
 
61
- <!--Hoofdartikel: nog geen call in de API? -->
96
+ <!--Hoofdartikel-->
62
97
  <co-filter-item
63
98
  [placeholder]="'MAIN_ARTICLE' | localize"
64
- [customContent]="true"
65
- [expanded]="true">
66
- <co-input-text [(model)]="searchRequest.mainArticleNrRange"
67
- [placeholder]="'MAIN_ARTICLE' | localize"></co-input-text>
99
+ [expanded]="true"
100
+ [collection]="mainArticles"
101
+ (collectionChange)="filterRequestService.handleCollectionChangeForRange($event, 'mainArticleNrRange')"
102
+ >
68
103
  </co-filter-item>
69
104
 
70
- <!--Uitloopcode: nog geen call in de API? -->
105
+ <!--Uitloopcode -->
71
106
  <co-filter-item
72
107
  [placeholder]="'EXCEEDENCE_CODE' | localize"
73
- [customContent]="true"
74
- [expanded]="true">
75
- <co-input-text [(model)]="searchRequest.exceedanceCodes"
76
- [placeholder]="'EXCEEDENCE_CODE' | localize"></co-input-text>
108
+ [expanded]="true"
109
+ [collection]="exceedanceCodes"
110
+ [searchPlaceholder]="searchPlaceholder | localize"
111
+ [showMoreLabel]="showMoreLabel | localize"
112
+ [showLessLabel]="showLessLabel | localize"
113
+ (collectionChange)="filterRequestService.handleCollectionChangeForArray($event, 'exceedanceCodes')"
114
+ >
77
115
  </co-filter-item>
78
116
 
79
- <!--Leverancier: nog geen call in de API? -->
117
+ <!--Leverancier-->
80
118
  <co-filter-item
81
119
  [placeholder]="'SUPPLIER' | localize"
82
- [customContent]="true"
83
- [expanded]="true">
84
- <co-input-text [(model)]="searchRequest.rangeSupplier"
85
- [placeholder]="'SUPPLIER' | localize"></co-input-text>
120
+ [expanded]="true"
121
+ [collection]="suppliers"
122
+ [searchPlaceholder]="searchPlaceholder | localize"
123
+ [showMoreLabel]="showMoreLabel | localize"
124
+ [showLessLabel]="showLessLabel | localize"
125
+ (collectionChange)="filterRequestService.handleCollectionChangeForRange($event, 'rangeSupplier')"
126
+ >
86
127
  </co-filter-item>
87
128
  <div class="filter-button-container">
88
129
  <co-button class="clickable" [label]="'Filter'" (click)="onFilterButtonClick()"></co-button>
@@ -93,12 +134,10 @@ TransactionFilterContentArticleComponent.decorators = [
93
134
  ];
94
135
  TransactionFilterContentArticleComponent.ctorParameters = () => [
95
136
  { type: TransactionSearchService },
96
- { type: TransactionService },
97
- { type: FilterRequestService }
137
+ { type: FilterRequestService },
138
+ { type: TransactionService }
98
139
  ];
99
140
  TransactionFilterContentArticleComponent.propDecorators = {
100
- searchRequest: [{ type: Input }],
101
- searchRequestChange: [{ type: Output }],
102
141
  showClass: [{ type: HostBinding, args: ["class.co-transaction-filter-content-article",] }]
103
142
  };
104
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tZmlsdGVyLWNvbnRlbnQtYXJ0aWNsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cmFuc2FjdGlvbi9zcmMvbGliL2NvbXBvbmVudC90cmFuc2FjdGlvbi1zZWFyY2gvdHJhbnNhY3Rpb24tZmlsdGVyLWNvbnRlbnQtYXJ0aWNsZS90cmFuc2FjdGlvbi1maWx0ZXItY29udGVudC1hcnRpY2xlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQU81RixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQXdEakYsTUFBTSxPQUFPLHdDQUF3QztJQWtCbkQsWUFDUyxhQUF1QyxFQUN0QyxtQkFBdUMsRUFDdkMscUJBQTJDO1FBRjVDLGtCQUFhLEdBQWIsYUFBYSxDQUEwQjtRQUN0Qyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQW9CO1FBQ3ZDLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBc0I7UUFmOUMsd0JBQW1CLEdBQXNCLElBQUksWUFBWSxFQUFnQyxDQUFDO1FBTzFGLHNCQUFpQixHQUFXLHNCQUFzQixDQUFDO1FBR25ELHdCQUFtQixHQUFvQixFQUFDLElBQUksRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBQyxDQUFDO0lBT25GLENBQUM7SUFkTSxTQUFTO1FBQ2QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBY00sUUFBUTtRQUNiLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFRCxlQUFlO0lBQ1Asa0JBQWtCO0lBRTFCLENBQUM7SUFFTSw4QkFBOEIsQ0FBQyxVQUFpQyxFQUFFLEtBQWE7UUFDcEYsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsa0NBQWtDLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDeEcsQ0FBQztJQUVNLDhCQUE4QixDQUFDLFVBQWlDLEVBQUUsS0FBYTtRQUNwRixJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxrQ0FBa0MsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUN4RyxDQUFDO0lBRU0scUJBQXFCLENBQUMsS0FBYSxFQUFFLEtBQWE7UUFDdkQsSUFBSSxTQUFTLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3pCLElBQUksT0FBTyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUV2QixJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyw0QkFBNEIsQ0FBQyxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDMUcsQ0FBQztJQUVNLG1CQUFtQjtRQUN4QixJQUFJLENBQUMsYUFBYSxDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDMUMsQ0FBQzs7O1lBekdGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsdUNBQXVDO2dCQUNqRCxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBa0RUO2FBQ0Y7OztZQXZEUSx3QkFBd0I7WUFGeEIsa0JBQWtCO1lBQ2xCLG9CQUFvQjs7OzRCQTJEMUIsS0FBSztrQ0FHTCxNQUFNO3dCQUdOLFdBQVcsU0FBQyw2Q0FBNkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IEFydGljbGVGdWxsT2JqZWN0IH0gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLWZ1bGwtb2JqZWN0XCI7XHJcbmltcG9ydCB7IFNhbGVzUGVyc29uIH0gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9zYWxlcy1wZXJzb24uYm9cIjtcclxuaW1wb3J0IHsgVHJhbnNhY3Rpb25TZWFyY2hWaWV3UmVxdWVzdCB9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvdHJhbnNhY3Rpb24tc2VhcmNoLXZpZXctcmVxdWVzdFwiO1xyXG5pbXBvcnQgeyBXYXJlaG91c2UgfSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3dhcmVob3VzZS5ib1wiO1xyXG5pbXBvcnQgeyBGaWx0ZXJJdGVtVmlld21vZGVsIH0gZnJvbSBcIi4uLy4uLy4uL21vZGVsL2ZpbHRlci1pdGVtLnZpZXdtb2RlbFwiO1xyXG5pbXBvcnQgeyBGaWx0ZXJWaWV3bW9kZWwgfSBmcm9tIFwiLi4vLi4vLi4vbW9kZWwvZmlsdGVyLXZpZXdtb2RlbFwiO1xyXG5pbXBvcnQgeyBUcmFuc2FjdGlvblNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IEZpbHRlclJlcXVlc3RTZXJ2aWNlIH0gZnJvbSBcIi4uL3NlcnZpY2UvZmlsdGVyLXJlcXVlc3Quc2VydmljZVwiO1xyXG5pbXBvcnQgeyBUcmFuc2FjdGlvblNlYXJjaFNlcnZpY2UgfSBmcm9tIFwiLi4vc2VydmljZS90cmFuc2FjdGlvbi1zZWFyY2guc2VydmljZVwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdjby10cmFuc2FjdGlvbi1maWx0ZXItY29udGVudC1hcnRpY2xlJyxcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPGRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLWZpbHRlci1jb250ZW50LWFydGljbGUtd3JhcHBlclwiPlxyXG5cclxuICAgICAgPCEtLUFydGlrZWxudW1tZXI6IG5vZyBnZWVuIGNhbGwgaW4gZGUgQVBJPyAtLT5cclxuICAgICAgPGNvLWZpbHRlci1pdGVtXHJcbiAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidBUlRJQ0xFX05SJyB8IGxvY2FsaXplXCJcclxuICAgICAgICBbZXhwYW5kZWRdPVwidHJ1ZVwiXHJcbiAgICAgID5cclxuXHJcbiAgICAgIDwvY28tZmlsdGVyLWl0ZW0+XHJcblxyXG4gICAgICA8IS0tT216ZXRncm9lcDogbm9nIGdlZW4gY2FsbCBpbiBkZSBBUEk/IC0tPlxyXG4gICAgICA8Y28tZmlsdGVyLWl0ZW1cclxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ1RVUk5PVkVSX0dST1VQJyB8IGxvY2FsaXplXCJcclxuICAgICAgICBbY3VzdG9tQ29udGVudF09XCJ0cnVlXCJcclxuICAgICAgICBbZXhwYW5kZWRdPVwidHJ1ZVwiPlxyXG4gICAgICAgIDxjby1pbnB1dC10ZXh0IFsobW9kZWwpXT1cInNlYXJjaFJlcXVlc3QucmFuZ2VUdXJub3Zlckdyb3VwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ1RVUk5PVkVSX0dST1VQJyB8IGxvY2FsaXplXCI+PC9jby1pbnB1dC10ZXh0PlxyXG4gICAgICA8L2NvLWZpbHRlci1pdGVtPlxyXG5cclxuICAgICAgPCEtLUhvb2ZkYXJ0aWtlbDogbm9nIGdlZW4gY2FsbCBpbiBkZSBBUEk/IC0tPlxyXG4gICAgICA8Y28tZmlsdGVyLWl0ZW1cclxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ01BSU5fQVJUSUNMRScgfCBsb2NhbGl6ZVwiXHJcbiAgICAgICAgW2N1c3RvbUNvbnRlbnRdPVwidHJ1ZVwiXHJcbiAgICAgICAgW2V4cGFuZGVkXT1cInRydWVcIj5cclxuICAgICAgICA8Y28taW5wdXQtdGV4dCBbKG1vZGVsKV09XCJzZWFyY2hSZXF1ZXN0Lm1haW5BcnRpY2xlTnJSYW5nZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidNQUlOX0FSVElDTEUnIHwgbG9jYWxpemVcIj48L2NvLWlucHV0LXRleHQ+XHJcbiAgICAgIDwvY28tZmlsdGVyLWl0ZW0+XHJcblxyXG4gICAgICA8IS0tVWl0bG9vcGNvZGU6IG5vZyBnZWVuIGNhbGwgaW4gZGUgQVBJPyAtLT5cclxuICAgICAgPGNvLWZpbHRlci1pdGVtXHJcbiAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidFWENFRURFTkNFX0NPREUnIHwgbG9jYWxpemVcIlxyXG4gICAgICAgIFtjdXN0b21Db250ZW50XT1cInRydWVcIlxyXG4gICAgICAgIFtleHBhbmRlZF09XCJ0cnVlXCI+XHJcbiAgICAgICAgPGNvLWlucHV0LXRleHQgWyhtb2RlbCldPVwic2VhcmNoUmVxdWVzdC5leGNlZWRhbmNlQ29kZXNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInRVhDRUVERU5DRV9DT0RFJyB8IGxvY2FsaXplXCI+PC9jby1pbnB1dC10ZXh0PlxyXG4gICAgICA8L2NvLWZpbHRlci1pdGVtPlxyXG5cclxuICAgICAgPCEtLUxldmVyYW5jaWVyOiBub2cgZ2VlbiBjYWxsIGluIGRlIEFQST8gLS0+XHJcbiAgICAgIDxjby1maWx0ZXItaXRlbVxyXG4gICAgICAgIFtwbGFjZWhvbGRlcl09XCInU1VQUExJRVInIHwgbG9jYWxpemVcIlxyXG4gICAgICAgIFtjdXN0b21Db250ZW50XT1cInRydWVcIlxyXG4gICAgICAgIFtleHBhbmRlZF09XCJ0cnVlXCI+XHJcbiAgICAgICAgPGNvLWlucHV0LXRleHQgWyhtb2RlbCldPVwic2VhcmNoUmVxdWVzdC5yYW5nZVN1cHBsaWVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ1NVUFBMSUVSJyB8IGxvY2FsaXplXCI+PC9jby1pbnB1dC10ZXh0PlxyXG4gICAgICA8L2NvLWZpbHRlci1pdGVtPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZmlsdGVyLWJ1dHRvbi1jb250YWluZXJcIj5cclxuICAgICAgICA8Y28tYnV0dG9uIGNsYXNzPVwiY2xpY2thYmxlXCIgW2xhYmVsXT1cIidGaWx0ZXInXCIgKGNsaWNrKT1cIm9uRmlsdGVyQnV0dG9uQ2xpY2soKVwiPjwvY28tYnV0dG9uPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIGBcclxufSlcclxuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uRmlsdGVyQ29udGVudEFydGljbGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZWFyY2hSZXF1ZXN0OiBUcmFuc2FjdGlvblNlYXJjaFZpZXdSZXF1ZXN0O1xyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgc2VhcmNoUmVxdWVzdENoYW5nZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPFRyYW5zYWN0aW9uU2VhcmNoVmlld1JlcXVlc3Q+KCk7XHJcblxyXG4gIEBIb3N0QmluZGluZyhcImNsYXNzLmNvLXRyYW5zYWN0aW9uLWZpbHRlci1jb250ZW50LWFydGljbGVcIilcclxuICBwdWJsaWMgc2hvd0NsYXNzKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2VhcmNoUGxhY2Vob2xkZXI6IHN0cmluZyA9IFwiU0VBUkNIX0lOX0NPTExFQ1RJT05cIjtcclxuXHJcbiAgcHVibGljIGFydGljbGVOdW1iZXJzOiBGaWx0ZXJJdGVtVmlld21vZGVsW107XHJcbiAgcHVibGljIGFydGljbGVOdW1iZXJGaWVsZHM6IHsgdGV4dCwgdmFsdWUgfSA9IHt0ZXh0OiBcImRlc2NyaXB0aW9uXCIsIHZhbHVlOiBcImNvZGVcIn07XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIHNlYXJjaFNlcnZpY2U6IFRyYW5zYWN0aW9uU2VhcmNoU2VydmljZSxcclxuICAgIHByaXZhdGUgX3RyYW5zYWN0aW9uU2VydmljZTogVHJhbnNhY3Rpb25TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfZmlsdGVyUmVxdWVzdFNlcnZpY2U6IEZpbHRlclJlcXVlc3RTZXJ2aWNlLFxyXG4gICkge1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5fZ2V0QXJ0aWNsZU51bWJlcnMoKTtcclxuICB9XHJcblxyXG4gIC8vQXJ0aWtlbG51bW1lclxyXG4gIHByaXZhdGUgX2dldEFydGljbGVOdW1iZXJzKCk6IHZvaWQge1xyXG5cclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVDb2xsZWN0aW9uQ2hhbmdlRm9yUmFuZ2UoY29sbGVjdGlvbjogRmlsdGVySXRlbVZpZXdtb2RlbFtdLCBtb2RlbDogc3RyaW5nKSB7XHJcbiAgICB0aGlzLnNlYXJjaFJlcXVlc3RbbW9kZWxdID0gdGhpcy5fZmlsdGVyUmVxdWVzdFNlcnZpY2UuZ2V0RmlsdGVyUmVxdWVzdEZvckNvbGxlY3Rpb25SYW5nZShjb2xsZWN0aW9uKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVDb2xsZWN0aW9uQ2hhbmdlRm9yQXJyYXkoY29sbGVjdGlvbjogRmlsdGVySXRlbVZpZXdtb2RlbFtdLCBtb2RlbDogc3RyaW5nKSB7XHJcbiAgICB0aGlzLnNlYXJjaFJlcXVlc3RbbW9kZWxdID0gdGhpcy5fZmlsdGVyUmVxdWVzdFNlcnZpY2UuZ2V0RmlsdGVyUmVxdWVzdEZvckNvbGxlY3Rpb25BcnJheShjb2xsZWN0aW9uKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVEYXRlUmFuZ2VDaGFuZ2UoZGF0ZXM6IERhdGVbXSwgbW9kZWw6IHN0cmluZykge1xyXG4gICAgbGV0IHN0YXJ0RGF0ZSA9IGRhdGVzWzBdO1xyXG4gICAgbGV0IGVuZERhdGUgPSBkYXRlc1sxXTtcclxuXHJcbiAgICB0aGlzLnNlYXJjaFJlcXVlc3RbbW9kZWxdID0gdGhpcy5fZmlsdGVyUmVxdWVzdFNlcnZpY2UuZ2V0RmlsdGVyUmVxdWVzdEZvckRhdGVSYW5nZShzdGFydERhdGUsIGVuZERhdGUpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uRmlsdGVyQnV0dG9uQ2xpY2soKTogdm9pZCB7XHJcbiAgICB0aGlzLnNlYXJjaFNlcnZpY2Uuc2VhcmNoVHJhbnNhY3Rpb25zKCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
143
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tZmlsdGVyLWNvbnRlbnQtYXJ0aWNsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cmFuc2FjdGlvbi9zcmMvbGliL2NvbXBvbmVudC90cmFuc2FjdGlvbi1zZWFyY2gvdHJhbnNhY3Rpb24tZmlsdGVyLWNvbnRlbnQtYXJ0aWNsZS90cmFuc2FjdGlvbi1maWx0ZXItY29udGVudC1hcnRpY2xlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUMvRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFFdEYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBR3hGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNsRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUNqRixPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSwyREFBMkQsQ0FBQztBQW9FakcsTUFBTSxPQUFPLHdDQUF3QztJQTRCbkQsWUFDUyxhQUF1QyxFQUN2QyxvQkFBMEMsRUFDekMsbUJBQXVDO1FBRnhDLGtCQUFhLEdBQWIsYUFBYSxDQUEwQjtRQUN2Qyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBQ3pDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBb0I7UUF4QjFDLGtCQUFhLEdBQWlDLElBQUksQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDO1FBRS9FLHNCQUFpQixHQUFXLHNCQUFzQixDQUFDO1FBQ25ELGtCQUFhLEdBQVcsV0FBVyxDQUFDO1FBQ3BDLGtCQUFhLEdBQVcsV0FBVyxDQUFBO1FBR25DLHdCQUFtQixHQUFvQixFQUFDLElBQUksRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBQyxDQUFDO1FBRzVFLHlCQUFvQixHQUFvQixFQUFDLElBQUksRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBQyxDQUFDO1FBRzdFLHdCQUFtQixHQUFvQixFQUFDLElBQUksRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLGlCQUFpQixFQUFDLENBQUM7UUFHdkYsc0JBQWlCLEdBQW9CLEVBQUMsSUFBSSxFQUFFLGFBQWEsRUFBRSxLQUFLLEVBQUUsZUFBZSxFQUFDLENBQUM7UUFHbkYsbUJBQWMsR0FBb0IsRUFBQyxJQUFJLEVBQUUsYUFBYSxFQUFFLEtBQUssRUFBRSxZQUFZLEVBQUMsQ0FBQztRQW9CN0UsZ0JBQVcsR0FBRyxDQUFDLElBQVksRUFBRSxFQUFFO1lBQ3BDLE1BQU0sT0FBTyxHQUEyQixJQUFJLHNCQUFzQixFQUFFLENBQUM7WUFDckUsT0FBTyxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUM7WUFDN0IsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLFFBQXdCLEVBQUUsRUFBRTtnQkFDckYsT0FBTyxJQUFJLGVBQWUsQ0FBQyxRQUFRLEVBQUUsRUFBQyxJQUFJLEVBQUUsZUFBZSxFQUFFLEtBQUssRUFBRSxlQUFlLEVBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQztZQUNwRyxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQTtJQW5CRCxDQUFDO0lBOUJNLFNBQVM7UUFDZCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUE4Qk0sUUFBUTtRQUNiLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1FBQzNCLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUNyQixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUMxQixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRU0sbUJBQW1CO1FBQ3hCLElBQUksQ0FBQyxhQUFhLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztJQUMxQyxDQUFDO0lBVU0sbUNBQW1DLENBQUMsVUFBaUM7UUFDMUUsTUFBTSxXQUFXLEdBQXdCLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDekUsSUFBSSxDQUFDLG9CQUFvQixDQUFDLG9DQUFvQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLElBQUksR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxXQUFXLENBQUMsQ0FBQztJQUN4SCxDQUFDO0lBRU8sbUJBQW1CO1FBQ3pCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxlQUFnQyxFQUFFLEVBQUU7WUFDMUYsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLGVBQWUsQ0FBQyxlQUFlLEVBQUUsSUFBSSxDQUFDLG9CQUFvQixDQUFDLENBQUMsV0FBVyxDQUFDO1FBQ3JHLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGtCQUFrQjtRQUN4QixJQUFJLENBQUMsbUJBQW1CLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxjQUFvQyxFQUFFLEVBQUU7WUFDekYsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLGVBQWUsQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDLG1CQUFtQixDQUFDLENBQUMsV0FBVyxDQUFDO1FBQ2xHLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGdCQUFnQjtRQUN0QixJQUFJLENBQUMsbUJBQW1CLENBQUMsZUFBZSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsUUFBdUIsRUFBRSxFQUFFO1lBQzFFLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxlQUFlLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLFdBQVcsQ0FBQztRQUN4RixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxhQUFhO1FBQ25CLE1BQU0sT0FBTyxHQUFvQixJQUFJLGVBQWUsRUFBRSxDQUFDO1FBQ3ZELE9BQU8sQ0FBQyxZQUFZLEdBQUcsWUFBWSxDQUFDLFFBQVEsQ0FBQztRQUM3QyxJQUFJLENBQUMsbUJBQW1CLENBQUMsc0JBQXNCLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsbUJBQW1CLEVBQUUsRUFBRTtZQUNwRixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksZUFBZSxDQUFDLG1CQUFtQixFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxXQUFXLENBQUM7UUFDN0YsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDOzs7WUFsSkYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSx1Q0FBdUM7Z0JBQ2pELFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0EyRFQ7YUFDRjs7O1lBcEVRLHdCQUF3QjtZQUR4QixvQkFBb0I7WUFEcEIsa0JBQWtCOzs7d0JBeUV4QixXQUFXLFNBQUMsNkNBQTZDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBIb3N0QmluZGluZywgT25Jbml0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgUmVsYXRpb25LaW5kIH0gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9lbnVtL3JlbGF0aW9uLWtpbmQuZW51bVwiO1xyXG5pbXBvcnQgeyBDb0RvbWFpblZhbHVlIH0gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9jby1kb21haW4tdmFsdWUuYm9cIjtcclxuaW1wb3J0IHsgUmVsYXRpb25SZXF1ZXN0IH0gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9yZWxhdGlvbi1yZXF1ZXN0XCI7XHJcbmltcG9ydCB7IFRyYW5zYWN0aW9uU2VhcmNoVmlld1JlcXVlc3QgfSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3RyYW5zYWN0aW9uLXNlYXJjaC12aWV3LXJlcXVlc3RcIjtcclxuaW1wb3J0IHsgRmlsdGVySXRlbVZpZXdtb2RlbCB9IGZyb20gXCIuLi8uLi8uLi9tb2RlbC9maWx0ZXItaXRlbS52aWV3bW9kZWxcIjtcclxuaW1wb3J0IHsgRmlsdGVyVmlld21vZGVsIH0gZnJvbSBcIi4uLy4uLy4uL21vZGVsL2ZpbHRlci12aWV3bW9kZWxcIjtcclxuaW1wb3J0IHsgVHJhbnNhY3Rpb25TZXJ2aWNlIH0gZnJvbSBcIi4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24uc2VydmljZVwiO1xyXG5pbXBvcnQgeyBGaWx0ZXJSZXF1ZXN0U2VydmljZSB9IGZyb20gXCIuLi9zZXJ2aWNlL2ZpbHRlci1yZXF1ZXN0LnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgVHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlIH0gZnJvbSBcIi4uL3NlcnZpY2UvdHJhbnNhY3Rpb24tc2VhcmNoLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtBcnRpY2xlRXh0ZW5kZWRSZXF1ZXN0fSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1leHRlbmRlZC1yZXF1ZXN0XCI7XHJcbmltcG9ydCB7QXJ0aWNsZUxpZ2h0fSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1saWdodC5ib1wiO1xyXG5pbXBvcnQge1R1cm5vdmVyR3JvdXBJbWFnZX0gZnJvbSBcIkBjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL3R1cm5vdmVyLWdyb3VwLWltYWdlLmJvXCI7XHJcbmltcG9ydCB7TWFpbkFydGljbGV9IGZyb20gXCJAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9tYWluLWFydGljbGUuYm9cIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnY28tdHJhbnNhY3Rpb24tZmlsdGVyLWNvbnRlbnQtYXJ0aWNsZScsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxkaXYgY2xhc3M9XCJ0cmFuc2FjdGlvbi1maWx0ZXItY29udGVudC1hcnRpY2xlLXdyYXBwZXJcIj5cclxuXHJcbiAgICAgIDwhLS1BcnRpa2VsbnVtbWVyLS0+XHJcbiAgICAgIDxjby1maWx0ZXItaXRlbVxyXG4gICAgICAgIFtwbGFjZWhvbGRlcl09XCInQVJUSUNMRV9OUicgfCBsb2NhbGl6ZVwiXHJcbiAgICAgICAgW2V4cGFuZGVkXT1cInRydWVcIlxyXG4gICAgICAgIFtzaW5nbGVTZWxlY3RdPVwidHJ1ZVwiXHJcbiAgICAgICAgW21pblNlYXJjaENoYXJzVG9Mb2FkQ29sbGVjdGlvbl09XCIzXCJcclxuICAgICAgICBbY29sbGVjdGlvbkxvYWRGbl09XCJnZXRBcnRpY2xlc1wiXHJcbiAgICAgICAgKGNvbGxlY3Rpb25DaGFuZ2UpPVwiaGFuZGxlQ29sbGVjdGlvbkNoYW5nZUFydGljbGVOdW1iZXIoJGV2ZW50KVwiXHJcbiAgICAgID5cclxuICAgICAgPC9jby1maWx0ZXItaXRlbT5cclxuXHJcbiAgICAgIDwhLS1PbXpldGdyb2VwLS0+XHJcbiAgICAgIDxjby1maWx0ZXItaXRlbVxyXG4gICAgICAgIFtwbGFjZWhvbGRlcl09XCInVFVSTk9WRVJfR1JPVVAnIHwgbG9jYWxpemVcIlxyXG4gICAgICAgIFtleHBhbmRlZF09XCJ0cnVlXCJcclxuICAgICAgICBbY29sbGVjdGlvbl09XCJ0dXJub3Zlckdyb3Vwc1wiXHJcbiAgICAgICAgKGNvbGxlY3Rpb25DaGFuZ2UpPVwiZmlsdGVyUmVxdWVzdFNlcnZpY2UuaGFuZGxlQ29sbGVjdGlvbkNoYW5nZUZvclJhbmdlKCRldmVudCwgJ3JhbmdlVHVybm92ZXJHcm91cCcpXCJcclxuICAgICAgPlxyXG4gICAgICA8L2NvLWZpbHRlci1pdGVtPlxyXG5cclxuICAgICAgPCEtLUhvb2ZkYXJ0aWtlbC0tPlxyXG4gICAgICA8Y28tZmlsdGVyLWl0ZW1cclxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ01BSU5fQVJUSUNMRScgfCBsb2NhbGl6ZVwiXHJcbiAgICAgICAgW2V4cGFuZGVkXT1cInRydWVcIlxyXG4gICAgICAgIFtjb2xsZWN0aW9uXT1cIm1haW5BcnRpY2xlc1wiXHJcbiAgICAgICAgKGNvbGxlY3Rpb25DaGFuZ2UpPVwiZmlsdGVyUmVxdWVzdFNlcnZpY2UuaGFuZGxlQ29sbGVjdGlvbkNoYW5nZUZvclJhbmdlKCRldmVudCwgJ21haW5BcnRpY2xlTnJSYW5nZScpXCJcclxuICAgICAgPlxyXG4gICAgICA8L2NvLWZpbHRlci1pdGVtPlxyXG5cclxuICAgICAgPCEtLVVpdGxvb3Bjb2RlIC0tPlxyXG4gICAgICA8Y28tZmlsdGVyLWl0ZW1cclxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ0VYQ0VFREVOQ0VfQ09ERScgfCBsb2NhbGl6ZVwiXHJcbiAgICAgICAgW2V4cGFuZGVkXT1cInRydWVcIlxyXG4gICAgICAgIFtjb2xsZWN0aW9uXT1cImV4Y2VlZGFuY2VDb2Rlc1wiXHJcbiAgICAgICAgW3NlYXJjaFBsYWNlaG9sZGVyXT1cInNlYXJjaFBsYWNlaG9sZGVyIHwgbG9jYWxpemVcIlxyXG4gICAgICAgIFtzaG93TW9yZUxhYmVsXT1cInNob3dNb3JlTGFiZWwgfCBsb2NhbGl6ZVwiXHJcbiAgICAgICAgW3Nob3dMZXNzTGFiZWxdPVwic2hvd0xlc3NMYWJlbCB8IGxvY2FsaXplXCJcclxuICAgICAgICAoY29sbGVjdGlvbkNoYW5nZSk9XCJmaWx0ZXJSZXF1ZXN0U2VydmljZS5oYW5kbGVDb2xsZWN0aW9uQ2hhbmdlRm9yQXJyYXkoJGV2ZW50LCAnZXhjZWVkYW5jZUNvZGVzJylcIlxyXG4gICAgICA+XHJcbiAgICAgIDwvY28tZmlsdGVyLWl0ZW0+XHJcblxyXG4gICAgICA8IS0tTGV2ZXJhbmNpZXItLT5cclxuICAgICAgPGNvLWZpbHRlci1pdGVtXHJcbiAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidTVVBQTElFUicgfCBsb2NhbGl6ZVwiXHJcbiAgICAgICAgW2V4cGFuZGVkXT1cInRydWVcIlxyXG4gICAgICAgIFtjb2xsZWN0aW9uXT1cInN1cHBsaWVyc1wiXHJcbiAgICAgICAgW3NlYXJjaFBsYWNlaG9sZGVyXT1cInNlYXJjaFBsYWNlaG9sZGVyIHwgbG9jYWxpemVcIlxyXG4gICAgICAgIFtzaG93TW9yZUxhYmVsXT1cInNob3dNb3JlTGFiZWwgfCBsb2NhbGl6ZVwiXHJcbiAgICAgICAgW3Nob3dMZXNzTGFiZWxdPVwic2hvd0xlc3NMYWJlbCB8IGxvY2FsaXplXCJcclxuICAgICAgICAoY29sbGVjdGlvbkNoYW5nZSk9XCJmaWx0ZXJSZXF1ZXN0U2VydmljZS5oYW5kbGVDb2xsZWN0aW9uQ2hhbmdlRm9yUmFuZ2UoJGV2ZW50LCAncmFuZ2VTdXBwbGllcicpXCJcclxuICAgICAgPlxyXG4gICAgICA8L2NvLWZpbHRlci1pdGVtPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZmlsdGVyLWJ1dHRvbi1jb250YWluZXJcIj5cclxuICAgICAgICA8Y28tYnV0dG9uIGNsYXNzPVwiY2xpY2thYmxlXCIgW2xhYmVsXT1cIidGaWx0ZXInXCIgKGNsaWNrKT1cIm9uRmlsdGVyQnV0dG9uQ2xpY2soKVwiPjwvY28tYnV0dG9uPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIGBcclxufSlcclxuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uRmlsdGVyQ29udGVudEFydGljbGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBASG9zdEJpbmRpbmcoXCJjbGFzcy5jby10cmFuc2FjdGlvbi1maWx0ZXItY29udGVudC1hcnRpY2xlXCIpXHJcbiAgcHVibGljIHNob3dDbGFzcygpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNlYXJjaFJlcXVlc3Q6IFRyYW5zYWN0aW9uU2VhcmNoVmlld1JlcXVlc3QgPSB0aGlzLnNlYXJjaFNlcnZpY2Uuc2VhcmNoUmVxdWVzdDtcclxuXHJcbiAgcHVibGljIHNlYXJjaFBsYWNlaG9sZGVyOiBzdHJpbmcgPSBcIlNFQVJDSF9JTl9DT0xMRUNUSU9OXCI7XHJcbiAgcHVibGljIHNob3dNb3JlTGFiZWw6IHN0cmluZyA9IFwiU0hPV19NT1JFXCI7XHJcbiAgcHVibGljIHNob3dMZXNzTGFiZWw6IHN0cmluZyA9IFwiU0hPV19MRVNTXCJcclxuXHJcbiAgcHVibGljIGFydGljbGVOdW1iZXJzOiBGaWx0ZXJJdGVtVmlld21vZGVsW107XHJcbiAgcHVibGljIGFydGljbGVOdW1iZXJGaWVsZHM6IHsgdGV4dCwgdmFsdWUgfSA9IHt0ZXh0OiBcImRlc2NyaXB0aW9uXCIsIHZhbHVlOiBcImNvZGVcIn07XHJcblxyXG4gIHB1YmxpYyBleGNlZWRhbmNlQ29kZXM6IEZpbHRlckl0ZW1WaWV3bW9kZWxbXTtcclxuICBwdWJsaWMgZXhjZWVkYW5jZUNvZGVGaWVsZHM6IHsgdGV4dCwgdmFsdWUgfSA9IHt0ZXh0OiBcImRlc2NyaXB0aW9uXCIsIHZhbHVlOiBcImNvZGVcIn07XHJcblxyXG4gIHB1YmxpYyB0dXJub3Zlckdyb3VwczogRmlsdGVySXRlbVZpZXdtb2RlbFtdO1xyXG4gIHB1YmxpYyB0dXJub3Zlckdyb3VwRmllbGRzOiB7IHRleHQsIHZhbHVlIH0gPSB7dGV4dDogXCJkZXNjcmlwdGlvblwiLCB2YWx1ZTogXCJ0dXJub3Zlcmdyb3VwTnJcIn07XHJcblxyXG4gIHB1YmxpYyBtYWluQXJ0aWNsZXM6IEZpbHRlckl0ZW1WaWV3bW9kZWxbXTtcclxuICBwdWJsaWMgbWFpbkFydGljbGVGaWVsZHM6IHsgdGV4dCwgdmFsdWUgfSA9IHt0ZXh0OiBcImRlc2NyaXB0aW9uXCIsIHZhbHVlOiBcImFydGljbGVudW1iZXJcIn07XHJcblxyXG4gIHB1YmxpYyBzdXBwbGllcnM6IEZpbHRlckl0ZW1WaWV3bW9kZWxbXTtcclxuICBwdWJsaWMgc3VwcGxpZXJGaWVsZHM6IHsgdGV4dCwgdmFsdWUgfSA9IHt0ZXh0OiBcImRpc3BsYXlOYW1lXCIsIHZhbHVlOiBcInJlbGF0aW9uSWRcIn07XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIHNlYXJjaFNlcnZpY2U6IFRyYW5zYWN0aW9uU2VhcmNoU2VydmljZSxcclxuICAgIHB1YmxpYyBmaWx0ZXJSZXF1ZXN0U2VydmljZTogRmlsdGVyUmVxdWVzdFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF90cmFuc2FjdGlvblNlcnZpY2U6IFRyYW5zYWN0aW9uU2VydmljZSxcclxuICApIHtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuX3NldEV4Y2VlZGFuY2VDb2RlcygpO1xyXG4gICAgdGhpcy5fc2V0U3VwcGxpZXJzKCk7XHJcbiAgICB0aGlzLl9zZXRUdXJub3Zlckdyb3VwcygpO1xyXG4gICAgdGhpcy5fc2V0TWFpbkFydGljbGVzKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25GaWx0ZXJCdXR0b25DbGljaygpOiB2b2lkIHtcclxuICAgIHRoaXMuc2VhcmNoU2VydmljZS5zZWFyY2hUcmFuc2FjdGlvbnMoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRBcnRpY2xlcyA9ICh0ZXh0OiBzdHJpbmcpID0+IHtcclxuICAgIGNvbnN0IHJlcXVlc3Q6IEFydGljbGVFeHRlbmRlZFJlcXVlc3QgPSBuZXcgQXJ0aWNsZUV4dGVuZGVkUmVxdWVzdCgpO1xyXG4gICAgcmVxdWVzdC5hcnRpY2xlTnVtYmVyID0gdGV4dDtcclxuICAgIHJldHVybiB0aGlzLl90cmFuc2FjdGlvblNlcnZpY2UuZ2V0QXJ0aWNsZXMocmVxdWVzdCkudGhlbigoYXJ0aWNsZXM6IEFydGljbGVMaWdodFtdKSA9PiB7XHJcbiAgICAgIHJldHVybiBuZXcgRmlsdGVyVmlld21vZGVsKGFydGljbGVzLCB7dGV4dDogJ2FydGljbGVOdW1iZXInLCB2YWx1ZTogJ2FydGljbGVOdW1iZXInfSkuZmlsdGVySXRlbXM7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVDb2xsZWN0aW9uQ2hhbmdlQXJ0aWNsZU51bWJlcihjb2xsZWN0aW9uOiBGaWx0ZXJJdGVtVmlld21vZGVsW10pOiB2b2lkIHtcclxuICAgIGNvbnN0IGNoZWNrZWRJdGVtOiBGaWx0ZXJJdGVtVmlld21vZGVsID0gY29sbGVjdGlvbi5maW5kKGMgPT4gYy5jaGVja2VkKTtcclxuICAgIHRoaXMuZmlsdGVyUmVxdWVzdFNlcnZpY2UuaGFuZGxlQ29sbGVjdGlvbkNoYW5nZUZvclNpbmdsZVZhbHVlKGNoZWNrZWRJdGVtID8gY2hlY2tlZEl0ZW0uY29kZSArIFwiXCIgOiBcIlwiLCAnYXJ0aWNsZU5yJyk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9zZXRFeGNlZWRhbmNlQ29kZXMoKTogdm9pZCB7XHJcbiAgICB0aGlzLl90cmFuc2FjdGlvblNlcnZpY2UuZ2V0SW5PdXRDb2xsZWN0aW9uKFwiTkxcIikudGhlbigoZXhjZWVkYW5jZUNvZGVzOiBDb0RvbWFpblZhbHVlW10pID0+IHtcclxuICAgICAgdGhpcy5leGNlZWRhbmNlQ29kZXMgPSBuZXcgRmlsdGVyVmlld21vZGVsKGV4Y2VlZGFuY2VDb2RlcywgdGhpcy5leGNlZWRhbmNlQ29kZUZpZWxkcykuZmlsdGVySXRlbXM7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3NldFR1cm5vdmVyR3JvdXBzKCk6IHZvaWQge1xyXG4gICAgdGhpcy5fdHJhbnNhY3Rpb25TZXJ2aWNlLmdldFR1cm5vdmVyR3JvdXBzKCkudGhlbigodHVybm92ZXJHcm91cHM6IFR1cm5vdmVyR3JvdXBJbWFnZVtdKSA9PiB7XHJcbiAgICAgIHRoaXMudHVybm92ZXJHcm91cHMgPSBuZXcgRmlsdGVyVmlld21vZGVsKHR1cm5vdmVyR3JvdXBzLCB0aGlzLnR1cm5vdmVyR3JvdXBGaWVsZHMpLmZpbHRlckl0ZW1zO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9zZXRNYWluQXJ0aWNsZXMoKTogdm9pZCB7XHJcbiAgICB0aGlzLl90cmFuc2FjdGlvblNlcnZpY2UuZ2V0TWFpbkFydGljbGVzKCkudGhlbigoYXJ0aWNsZXM6IE1haW5BcnRpY2xlW10pID0+IHtcclxuICAgICAgdGhpcy5tYWluQXJ0aWNsZXMgPSBuZXcgRmlsdGVyVmlld21vZGVsKGFydGljbGVzLCB0aGlzLm1haW5BcnRpY2xlRmllbGRzKS5maWx0ZXJJdGVtcztcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfc2V0U3VwcGxpZXJzKCk6IHZvaWQge1xyXG4gICAgY29uc3QgcmVxdWVzdDogUmVsYXRpb25SZXF1ZXN0ID0gbmV3IFJlbGF0aW9uUmVxdWVzdCgpO1xyXG4gICAgcmVxdWVzdC5yZWxhdGlvblR5cGUgPSBSZWxhdGlvbktpbmQuU3VwcGxpZXI7XHJcbiAgICB0aGlzLl90cmFuc2FjdGlvblNlcnZpY2UuZ2V0UmVsYXRpb25MaXN0T2JqZWN0cyhyZXF1ZXN0KS50aGVuKChyZWxhdGlvbkxpc3RPYmplY3RzKSA9PiB7XHJcbiAgICAgIHRoaXMuc3VwcGxpZXJzID0gbmV3IEZpbHRlclZpZXdtb2RlbChyZWxhdGlvbkxpc3RPYmplY3RzLCB0aGlzLnN1cHBsaWVyRmllbGRzKS5maWx0ZXJJdGVtcztcclxuICAgIH0pXHJcbiAgfVxyXG59XHJcbiJdfQ==