@colijnit/sharedcomponents 1.0.69 → 253.1.1

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 (205) hide show
  1. package/bundles/colijnit-sharedcomponents.umd.js +3863 -56
  2. package/bundles/colijnit-sharedcomponents.umd.js.map +1 -1
  3. package/colijnit-sharedcomponents.d.ts +38 -0
  4. package/colijnit-sharedcomponents.metadata.json +1 -1
  5. package/esm2015/colijnit-sharedcomponents.js +39 -1
  6. package/esm2015/lib/components/activity-list-header/activity-list-header.component.js +67 -0
  7. package/esm2015/lib/components/activity-list-header/activity-list-header.module.js +28 -0
  8. package/esm2015/lib/components/activity-list-header/components/period-filter/period-filter-popup.component.js +55 -0
  9. package/esm2015/lib/components/activity-list-header/components/period-filter/period-filter.component.js +103 -0
  10. package/esm2015/lib/components/activity-list-header/components/period-filter/period-filter.module.js +34 -0
  11. package/esm2015/lib/components/activity-overview-component/component-activity-overview.component.js +130 -0
  12. package/esm2015/lib/components/activity-overview-component/component-activity-overview.module.js +26 -0
  13. package/esm2015/lib/components/activity-overview-component/components/base-activity-overview.component.js +278 -0
  14. package/esm2015/lib/components/modify-task-form/components/activity-summary-block/activity-summary-block.component.js +100 -0
  15. package/esm2015/lib/components/modify-task-form/components/activity-summary-block/activity-summary-block.module.js +25 -0
  16. package/esm2015/lib/components/modify-task-form/components/base-activity-summary.component.js +132 -0
  17. package/esm2015/lib/components/modify-task-form/components/creation-summary-block/creation-summary-block.component.js +118 -0
  18. package/esm2015/lib/components/modify-task-form/components/creation-summary-block/creation-summary-block.module.js +27 -0
  19. package/esm2015/lib/components/modify-task-form/components/executive-summary-block/executive-summary-block.component.js +88 -0
  20. package/esm2015/lib/components/modify-task-form/components/executive-summary-block/executive-summary-block.module.js +24 -0
  21. package/esm2015/lib/components/modify-task-form/components/notification-summary-block/notification-summary-block.component.js +77 -0
  22. package/esm2015/lib/components/modify-task-form/components/notification-summary-block/notification-summary-block.module.js +24 -0
  23. package/esm2015/lib/components/modify-task-form/components/status-summary-block/status-summary-block.component.js +74 -0
  24. package/esm2015/lib/components/modify-task-form/components/status-summary-block/status-summary-block.module.js +25 -0
  25. package/esm2015/lib/components/modify-task-form/components/task-details/task-details.component.js +105 -0
  26. package/esm2015/lib/components/modify-task-form/components/task-details/task-details.module.js +25 -0
  27. package/esm2015/lib/components/modify-task-form/modify-task-form.component.js +284 -0
  28. package/esm2015/lib/components/modify-task-form/modify-task-form.module.js +40 -0
  29. package/esm2015/lib/components/open-activity-list/component-activity-list.component.js +278 -0
  30. package/esm2015/lib/components/open-activity-list/component-activity-list.module.js +30 -0
  31. package/esm2015/lib/components/open-activity-list/components/base-open-activity-list.component.js +266 -0
  32. package/esm2015/lib/components/open-activity-list/components/personal-activity-overview/personal-activity-overview.component.js +41 -0
  33. package/esm2015/lib/components/open-activity-list/components/personal-activity-overview/personal-activity-overview.module..js +19 -0
  34. package/esm2015/lib/components/simple-tags/simple-tags.component.js +5 -147
  35. package/esm2015/lib/components/simple-tags/simple-tags.module.js +4 -2
  36. package/esm2015/lib/components/simple-tags-form/simple-tags-form.component.js +196 -0
  37. package/esm2015/lib/components/simple-tags-form/simple-tags-form.module.js +26 -0
  38. package/esm2015/lib/components/stock/components/stock-location/components/stock-location-popup/stock-location-popup.component.js +3 -3
  39. package/esm2015/lib/components/stock/components/stock-location/stock-location.component.js +28 -2
  40. package/esm2015/lib/components/stock/localization/translation.js +3 -1
  41. package/esm2015/lib/components/stock/stock-tabs/stock-tabs.component.js +7 -2
  42. package/esm2015/lib/components/stock/stock-transfer/stock-transfer.component.js +144 -85
  43. package/esm2015/lib/components/stock/stock.component.js +11 -42
  44. package/esm2015/lib/components/stock/stock.module.js +4 -3
  45. package/esm2015/lib/components/task-modifyer/task-modifier.component.js +270 -0
  46. package/esm2015/lib/components/task-modifyer/task-modifyer.module..js +31 -0
  47. package/esm2015/lib/components/workflow-info-tiles/components/workflow-info-tile.component.js +45 -0
  48. package/esm2015/lib/components/workflow-info-tiles/components/workflow-info-tile.module.js +22 -0
  49. package/esm2015/lib/components/workflow-info-tiles/workflow-info-tiles.component.js +55 -0
  50. package/esm2015/lib/components/workflow-info-tiles/workflow-info-tiles.module.js +22 -0
  51. package/esm2015/lib/components/workflow-notification-toggle/workflow-notification-toggle-popup.js +53 -0
  52. package/esm2015/lib/components/workflow-notification-toggle/workflow-notification-toggle.component.js +81 -0
  53. package/esm2015/lib/components/workflow-notification-toggle/workflow-notification-toggle.module.js +34 -0
  54. package/esm2015/lib/directives/absolute-overlay-template.directive.js +29 -0
  55. package/esm2015/lib/directives/align-with.directive.js +174 -0
  56. package/esm2015/lib/directives/click-outside.directive.js +25 -0
  57. package/esm2015/lib/directives/directives.module.js +22 -0
  58. package/esm2015/lib/enum/activity-cfg-name.enum.js +29 -0
  59. package/esm2015/lib/enum/app-button-type.enum.js +11 -0
  60. package/esm2015/lib/enum/icon.enum.js +13 -1
  61. package/esm2015/lib/interface/activities-task-config-names.js +2 -0
  62. package/esm2015/lib/interface/operation-callback-activity.js +5 -0
  63. package/esm2015/lib/interface/operation-callback-function-with-validation.js +5 -0
  64. package/esm2015/lib/model/icon-svg.js +13 -1
  65. package/esm2015/lib/service/app-absolute-overlay-outlet.service.js +20 -0
  66. package/esm2015/lib/service/shared-connector.service.js +213 -1
  67. package/esm2015/lib/service/shared.service.js +93 -1
  68. package/esm2015/lib/utils/browser-utils.js +100 -0
  69. package/esm2015/lib/utils/event-utils.js +59 -0
  70. package/esm2015/lib/utils/string-utils.js +5 -1
  71. package/esm2015/public-api.js +7 -1
  72. package/fesm2015/colijnit-sharedcomponents.js +4044 -228
  73. package/fesm2015/colijnit-sharedcomponents.js.map +1 -1
  74. package/lib/components/activity-list-header/activity-list-header.component.d.ts +25 -0
  75. package/lib/components/activity-list-header/activity-list-header.module.d.ts +2 -0
  76. package/lib/components/activity-list-header/components/period-filter/period-filter-popup.component.d.ts +11 -0
  77. package/lib/components/activity-list-header/components/period-filter/period-filter.component.d.ts +26 -0
  78. package/lib/components/activity-list-header/components/period-filter/period-filter.module.d.ts +2 -0
  79. package/lib/components/activity-list-header/components/period-filter/style/_layout.scss +62 -0
  80. package/lib/components/activity-list-header/components/period-filter/style/_material-definition.scss +1 -0
  81. package/lib/components/activity-list-header/components/period-filter/style/_theme.scss +5 -0
  82. package/lib/components/activity-list-header/components/period-filter/style/material.scss +4 -0
  83. package/lib/components/activity-list-header/style/_layout.scss +84 -0
  84. package/lib/components/activity-list-header/style/_material-definition.scss +1 -0
  85. package/lib/components/activity-list-header/style/_theme.scss +5 -0
  86. package/lib/components/activity-list-header/style/material.scss +4 -0
  87. package/lib/components/activity-overview-component/component-activity-overview.component.d.ts +15 -0
  88. package/lib/components/activity-overview-component/component-activity-overview.module.d.ts +2 -0
  89. package/lib/components/activity-overview-component/components/base-activity-overview.component.d.ts +79 -0
  90. package/lib/components/activity-overview-component/style/_layout.scss +107 -0
  91. package/lib/components/activity-overview-component/style/_material-definition.scss +1 -0
  92. package/lib/components/activity-overview-component/style/_theme.scss +5 -0
  93. package/lib/components/activity-overview-component/style/material.scss +4 -0
  94. package/lib/components/modify-task-form/components/activity-summary-block/activity-summary-block.component.d.ts +31 -0
  95. package/lib/components/modify-task-form/components/activity-summary-block/activity-summary-block.module.d.ts +2 -0
  96. package/lib/components/modify-task-form/components/activity-summary-block/style/_layout.scss +139 -0
  97. package/lib/components/modify-task-form/components/activity-summary-block/style/_material-definition.scss +0 -0
  98. package/lib/components/modify-task-form/components/activity-summary-block/style/_theme.scss +5 -0
  99. package/lib/components/modify-task-form/components/activity-summary-block/style/material.scss +4 -0
  100. package/lib/components/modify-task-form/components/base-activity-summary.component.d.ts +52 -0
  101. package/lib/components/modify-task-form/components/creation-summary-block/creation-summary-block.component.d.ts +28 -0
  102. package/lib/components/modify-task-form/components/creation-summary-block/creation-summary-block.module.d.ts +2 -0
  103. package/lib/components/modify-task-form/components/creation-summary-block/style/_layout.scss +5 -0
  104. package/lib/components/modify-task-form/components/creation-summary-block/style/_material-definition.scss +0 -0
  105. package/lib/components/modify-task-form/components/creation-summary-block/style/_theme.scss +5 -0
  106. package/lib/components/modify-task-form/components/creation-summary-block/style/material.scss +4 -0
  107. package/lib/components/modify-task-form/components/executive-summary-block/executive-summary-block.component.d.ts +24 -0
  108. package/lib/components/modify-task-form/components/executive-summary-block/executive-summary-block.module.d.ts +2 -0
  109. package/lib/components/modify-task-form/components/executive-summary-block/style/_layout.scss +5 -0
  110. package/lib/components/modify-task-form/components/executive-summary-block/style/_material-definition.scss +0 -0
  111. package/lib/components/modify-task-form/components/executive-summary-block/style/_theme.scss +5 -0
  112. package/lib/components/modify-task-form/components/executive-summary-block/style/material.scss +4 -0
  113. package/lib/components/modify-task-form/components/notification-summary-block/notification-summary-block.component.d.ts +23 -0
  114. package/lib/components/modify-task-form/components/notification-summary-block/notification-summary-block.module.d.ts +2 -0
  115. package/lib/components/modify-task-form/components/notification-summary-block/style/_layout.scss +161 -0
  116. package/lib/components/modify-task-form/components/notification-summary-block/style/_material-definition.scss +0 -0
  117. package/lib/components/modify-task-form/components/notification-summary-block/style/_theme.scss +5 -0
  118. package/lib/components/modify-task-form/components/notification-summary-block/style/material.scss +4 -0
  119. package/lib/components/modify-task-form/components/status-summary-block/status-summary-block.component.d.ts +17 -0
  120. package/lib/components/modify-task-form/components/status-summary-block/status-summary-block.module.d.ts +2 -0
  121. package/lib/components/modify-task-form/components/status-summary-block/style/_layout.scss +18 -0
  122. package/lib/components/modify-task-form/components/status-summary-block/style/_material-definition.scss +0 -0
  123. package/lib/components/modify-task-form/components/status-summary-block/style/_theme.scss +5 -0
  124. package/lib/components/modify-task-form/components/status-summary-block/style/material.scss +4 -0
  125. package/lib/components/modify-task-form/components/task-details/style/_layout.scss +142 -0
  126. package/lib/components/modify-task-form/components/task-details/style/_material-definition.scss +0 -0
  127. package/lib/components/modify-task-form/components/task-details/style/_theme.scss +5 -0
  128. package/lib/components/modify-task-form/components/task-details/style/material.scss +4 -0
  129. package/lib/components/modify-task-form/components/task-details/task-details.component.d.ts +23 -0
  130. package/lib/components/modify-task-form/components/task-details/task-details.module.d.ts +2 -0
  131. package/lib/components/modify-task-form/modify-task-form.component.d.ts +54 -0
  132. package/lib/components/modify-task-form/modify-task-form.module.d.ts +2 -0
  133. package/lib/components/modify-task-form/style/_layout.scss +139 -0
  134. package/lib/components/modify-task-form/style/_material-definition.scss +0 -0
  135. package/lib/components/modify-task-form/style/_theme.scss +5 -0
  136. package/lib/components/modify-task-form/style/material.scss +4 -0
  137. package/lib/components/open-activity-list/component-activity-list.component.d.ts +67 -0
  138. package/lib/components/open-activity-list/component-activity-list.module.d.ts +2 -0
  139. package/lib/components/open-activity-list/components/base-open-activity-list.component.d.ts +48 -0
  140. package/lib/components/open-activity-list/components/personal-activity-overview/personal-activity-overview.component.d.ts +4 -0
  141. package/lib/components/open-activity-list/components/personal-activity-overview/personal-activity-overview.module..d.ts +2 -0
  142. package/lib/components/open-activity-list/components/personal-activity-overview/style/_layout.scss +105 -0
  143. package/lib/components/open-activity-list/components/personal-activity-overview/style/_material-definition.scss +0 -0
  144. package/lib/components/open-activity-list/components/personal-activity-overview/style/_theme.scss +4 -0
  145. package/lib/components/open-activity-list/components/personal-activity-overview/style/material.scss +4 -0
  146. package/lib/components/open-activity-list/style/_layout.scss +26 -0
  147. package/lib/components/open-activity-list/style/_material-definition.scss +0 -0
  148. package/lib/components/open-activity-list/style/_theme.scss +4 -0
  149. package/lib/components/open-activity-list/style/material.scss +4 -0
  150. package/lib/components/simple-tags/simple-tags.component.d.ts +1 -8
  151. package/lib/components/simple-tags-form/simple-tags-form.component.d.ts +29 -0
  152. package/lib/components/simple-tags-form/simple-tags-form.module.d.ts +2 -0
  153. package/lib/components/simple-tags-form/style/_layout.scss +257 -0
  154. package/lib/components/simple-tags-form/style/_material-definition.scss +39 -0
  155. package/lib/components/simple-tags-form/style/_theme.scss +4 -0
  156. package/lib/components/simple-tags-form/style/material.scss +4 -0
  157. package/lib/components/stock/components/stock-location/stock-location.component.d.ts +7 -1
  158. package/lib/components/stock/localization/translation.d.ts +2 -0
  159. package/lib/components/stock/stock-tabs/stock-tabs.component.d.ts +2 -0
  160. package/lib/components/stock/stock-transfer/stock-transfer.component.d.ts +19 -6
  161. package/lib/components/stock/stock.component.d.ts +3 -0
  162. package/lib/components/stock/style/_layout.scss +64 -31
  163. package/lib/components/task-modifyer/style/_layout.scss +5 -0
  164. package/lib/components/task-modifyer/style/_material-definition.scss +0 -0
  165. package/lib/components/task-modifyer/style/_theme.scss +4 -0
  166. package/lib/components/task-modifyer/style/material.scss +4 -0
  167. package/lib/components/task-modifyer/task-modifier.component.d.ts +65 -0
  168. package/lib/components/task-modifyer/task-modifyer.module..d.ts +2 -0
  169. package/lib/components/workflow-info-tiles/components/style/_layout.scss +49 -0
  170. package/lib/components/workflow-info-tiles/components/style/_material-definition.scss +0 -0
  171. package/lib/components/workflow-info-tiles/components/style/_theme.scss +4 -0
  172. package/lib/components/workflow-info-tiles/components/style/material.scss +4 -0
  173. package/lib/components/workflow-info-tiles/components/workflow-info-tile.component.d.ts +15 -0
  174. package/lib/components/workflow-info-tiles/components/workflow-info-tile.module.d.ts +2 -0
  175. package/lib/components/workflow-info-tiles/style/_layout.scss +16 -0
  176. package/lib/components/workflow-info-tiles/style/_material-definition.scss +0 -0
  177. package/lib/components/workflow-info-tiles/style/_theme.scss +4 -0
  178. package/lib/components/workflow-info-tiles/style/material.scss +4 -0
  179. package/lib/components/workflow-info-tiles/workflow-info-tiles.component.d.ts +21 -0
  180. package/lib/components/workflow-info-tiles/workflow-info-tiles.module.d.ts +2 -0
  181. package/lib/components/workflow-notification-toggle/style/_layout.scss +59 -0
  182. package/lib/components/workflow-notification-toggle/style/_material-definition.scss +0 -0
  183. package/lib/components/workflow-notification-toggle/style/_theme.scss +4 -0
  184. package/lib/components/workflow-notification-toggle/style/material.scss +4 -0
  185. package/lib/components/workflow-notification-toggle/workflow-notification-toggle-popup.d.ts +15 -0
  186. package/lib/components/workflow-notification-toggle/workflow-notification-toggle.component.d.ts +28 -0
  187. package/lib/components/workflow-notification-toggle/workflow-notification-toggle.module.d.ts +2 -0
  188. package/lib/directives/absolute-overlay-template.directive.d.ts +9 -0
  189. package/lib/directives/align-with.directive.d.ts +35 -0
  190. package/lib/directives/click-outside.directive.d.ts +7 -0
  191. package/lib/directives/directives.module.d.ts +2 -0
  192. package/lib/enum/activity-cfg-name.enum.d.ts +27 -0
  193. package/lib/enum/app-button-type.enum.d.ts +9 -0
  194. package/lib/enum/icon.enum.d.ts +12 -0
  195. package/lib/interface/activities-task-config-names.d.ts +12 -0
  196. package/lib/interface/operation-callback-activity.d.ts +5 -0
  197. package/lib/interface/operation-callback-function-with-validation.d.ts +5 -0
  198. package/lib/service/app-absolute-overlay-outlet.service.d.ts +9 -0
  199. package/lib/service/shared-connector.service.d.ts +28 -0
  200. package/lib/service/shared.service.d.ts +28 -0
  201. package/lib/utils/browser-utils.d.ts +15 -0
  202. package/lib/utils/event-utils.d.ts +12 -0
  203. package/lib/utils/string-utils.d.ts +1 -0
  204. package/package.json +7 -5
  205. package/public-api.d.ts +6 -0
@@ -11,6 +11,7 @@ import { ArticleExtendedRequest } from "@colijnit/articleapi/build/model/article
11
11
  import { SharedConnectorService } from "../../service/shared-connector.service";
12
12
  import { Icon } from "../../enum/icon.enum";
13
13
  import { IconCacheService } from "../../service/icon-cache.service";
14
+ import { ArticleStockManagement } from "@colijnit/articleapi/build/model/article-stock-management";
14
15
  export class StockComponent {
15
16
  constructor(_stockService, _optionsService, _dictionary, _changeDetector, _localizeService, _connector, iconCacheService) {
16
17
  this._stockService = _stockService;
@@ -27,10 +28,12 @@ export class StockComponent {
27
28
  this.okButtonClicked = new EventEmitter();
28
29
  this.cancelButtonClicked = new EventEmitter();
29
30
  this.handleClick = new EventEmitter();
31
+ this.updateGridData = new EventEmitter();
30
32
  this.loaded = false;
31
33
  this.showStockInformationGrid = true;
32
34
  this.showStockTransfer = false;
33
35
  this.stockInformation = [];
36
+ this.articleDetailsInformation = new ArticleStockManagement();
34
37
  this.stockHistory = [];
35
38
  this.allAvailableStock = 0;
36
39
  this.allTechnicalStock = 0;
@@ -78,7 +81,12 @@ export class StockComponent {
78
81
  data.entryDate = new Date;
79
82
  this._stockService.updateArticleDetails(data).then(result => {
80
83
  this.handleClick.emit();
84
+ this._stockService.getArticleDetails(this.articleDetailsInformation).then((details) => {
85
+ this.updateGridData.emit(details);
86
+ });
81
87
  });
88
+ this.loaded = true;
89
+ this.loadData();
82
90
  }
83
91
  backToStock(goodId) {
84
92
  this.loadData();
@@ -167,48 +175,9 @@ StockComponent.decorators = [
167
175
  (transferIconClicked)="handleStockTransferClick($event)"
168
176
  (sendMethodDialogClicked)="handleSendMethodClick($event)"
169
177
  [warehouses]="warehouses"
170
- ></co-stock-tabs>
171
- <div class="stock-transfer-wrapper">
172
- <co-dialog *ngIf="showStockTransfer"
173
- (closeClick)="showStockTransfer = false"
174
- [showCloseIcon]="true"
175
- [modal]="true"
176
- [headerTemplate]="headerTemplate"
177
- [footerTemplate]="footerTemplate">
178
- <ng-template #headerTemplate>
179
- <div class="co-dialog-header-title-wrapper">
180
- <co-icon [iconData]="iconCacheService.getIcon(icons.Cubes)"></co-icon>
181
- <div class="co-dialog-header-title" [textContent]="'TRANSFER_STOCK' | localize"></div>
182
- </div>
183
- </ng-template>
184
- <div class="dialog-wrapper">
185
- <co-stock-transfer (handleClick)="backToStock($event)"
186
- class="stock-transfer-dialog"
187
- [article]="stockTransferArticle"
188
- [articleToTransfer]="stockTransferArticleDetails"
189
- (handleStickerClicked)="handleStickerClicked.emit($event)"
190
- [articleWarehouse]="articleWarehouse"
191
- [allWarehouses]="allWarehouses">
192
- </co-stock-transfer>
193
- </div>
194
- <ng-template #footerTemplate>
195
- <div class="button-wrapper ok-cancel-buttons">
196
- <co-button class="save-button"
197
- (click)="handleOkClick(stockTransferArticleDetails)"
198
- [iconData]="iconCacheService.getIcon(icons.CheckDuotone)">
199
- </co-button>
200
- <co-button class="cancel-button"
201
- (click)="showStockTransfer = false"
202
- [iconData]="iconCacheService.getIcon(icons.CrossSkinny)">
203
- </co-button>
204
- </div>
205
- </ng-template>
206
- </co-dialog>
207
- </div>
178
+ [showStockTransfer]="showStockTransfer"
208
179
 
209
- <co-send-method-dialog *ngIf="showSendMethodDialog">
210
-
211
- </co-send-method-dialog>
180
+ ></co-stock-tabs>
212
181
  </div>
213
182
  `,
214
183
  encapsulation: ViewEncapsulation.None
@@ -234,4 +203,4 @@ StockComponent.propDecorators = {
234
203
  handleClick: [{ type: Output }],
235
204
  showClass: [{ type: HostBinding, args: ["class.co-stock",] }]
236
205
  };
237
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvY2suY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvc3RvY2svc3RvY2suY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osV0FBVyxFQUNYLEtBQUssRUFDTCxNQUFNLEVBRU4saUJBQWlCLEVBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUN6RCxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxzREFBc0QsQ0FBQztBQUV4RixPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sc0RBQXNELENBQUM7QUFDckYsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGdEQUFnRCxDQUFDO0FBRzVFLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQztBQUU3RCxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUduRSxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDcEUsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sMkRBQTJELENBQUM7QUFDakcsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sd0NBQXdDLENBQUM7QUFFOUUsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQzFDLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBaUVsRSxNQUFNLE9BQU8sY0FBYztJQThEekIsWUFDVSxhQUEyQixFQUMzQixlQUErQixFQUMvQixXQUE4QixFQUM5QixlQUFrQyxFQUNsQyxnQkFBaUMsRUFDakMsVUFBa0MsRUFDbkMsZ0JBQWtDO1FBTmpDLGtCQUFhLEdB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QUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDL0Y7UUFDRCxJQUFJLENBQUMsZUFBZSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3BDLElBQUksQ0FBQyxlQUFlLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDdkMsQ0FBQzs7O1lBL09GLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsVUFBVTtnQkFDcEIsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBMERUO2dCQUNELGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2FBQ3RDOzs7WUFqRk8sWUFBWTtZQU9aLGNBQWM7WUFFZCxpQkFBaUI7WUFsQnZCLGlCQUFpQjtZQXFCWCxlQUFlO1lBRWYsc0JBQXNCO1lBR3RCLGdCQUFnQjs7OzBCQW1FckIsS0FBSzttQ0FNTCxNQUFNO3NCQUdOLEtBQUs7K0JBWUwsS0FBSzs0QkFHTCxLQUFLOzhCQUdMLE1BQU07a0NBR04sTUFBTTswQkFFTixNQUFNO3dCQUVOLFdBQVcsU0FBQyxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIENvbXBvbmVudCxcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSG9zdEJpbmRpbmcsXHJcbiAgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LFxyXG4gIE91dHB1dCxcclxuICBWaWV3Q2hpbGQsXHJcbiAgVmlld0VuY2Fwc3VsYXRpb25cclxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge1N0b2NrU2VydmljZX0gZnJvbSBcIi4uLy4uL3NlcnZpY2Uvc3RvY2suc2VydmljZVwiO1xyXG5pbXBvcnQge1ByaW50U3RvY2tTdGlja2Vyc30gZnJvbSBcIkBjb2xpam5pdC9zaGFyZWRhcGkvYnVpbGQvbW9kZWwvcHJpbnQtc3RvY2stc3RpY2tlcnNcIjtcclxuaW1wb3J0IHtBcnRpY2xlU3RvY2sgYXMgQXJ0aWNsZVN0b2NrQm99IGZyb20gXCJAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLXN0b2NrLmJvXCI7XHJcbmltcG9ydCB7QXJ0aWNsZUV4dGVuZGVkfSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1leHRlbmRlZC5ib1wiO1xyXG5pbXBvcnQge0FydGljbGVTdG9ja30gZnJvbSBcIkBjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtc3RvY2tcIjtcclxuaW1wb3J0IHtTdG9ja0hpc3RvcnlCb30gZnJvbSBcIkBjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL3N0b2NrLWhpc3RvcnkuYm9cIjtcclxuaW1wb3J0IHtBcnRpY2xlRGV0YWlsc0JvfSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1kZXRhaWxzLmJvXCI7XHJcbmltcG9ydCB7T3B0aW9uc1NlcnZpY2V9IGZyb20gXCIuLi8uLi9zZXJ2aWNlL29wdGlvbnMuc2VydmljZVwiO1xyXG5pbXBvcnQge1N1YnNjcmlwdGlvbn0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHtEaWN0aW9uYXJ5U2VydmljZX0gZnJvbSBcIi4uLy4uL3NlcnZpY2UvZGljdGlvbmFyeS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7U3RvY2tNYW5hZ2VtZW50V2FyZWhvdXNlc30gZnJvbSBcIkBjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL3N0b2NrLW1hbmFnZW1lbnQtd2FyZWhvdXNlcy5ib1wiO1xyXG5pbXBvcnQge1RyYW5zbGF0aW9ufSBmcm9tICcuL2xvY2FsaXphdGlvbi90cmFuc2xhdGlvbic7XHJcbmltcG9ydCB7TG9jYWxpemVTZXJ2aWNlfSBmcm9tICcuLi8uLi9sb2NhbGl6YXRpb24vbG9jYWxpemUuc2VydmljZSc7XHJcbmltcG9ydCB7QXJ0aWNsZUV4dGVuZGVkUmVxdWVzdH0gZnJvbSBcIkBjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtZXh0ZW5kZWQtcmVxdWVzdFwiO1xyXG5pbXBvcnQge1NoYXJlZENvbm5lY3RvclNlcnZpY2V9IGZyb20gXCIuLi8uLi9zZXJ2aWNlL3NoYXJlZC1jb25uZWN0b3Iuc2VydmljZVwiO1xyXG5pbXBvcnQge0FydGljbGVGbGF0fSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1mbGF0LmJvXCI7XHJcbmltcG9ydCB7SWNvbn0gZnJvbSBcIi4uLy4uL2VudW0vaWNvbi5lbnVtXCI7XHJcbmltcG9ydCB7SWNvbkNhY2hlU2VydmljZX0gZnJvbSBcIi4uLy4uL3NlcnZpY2UvaWNvbi1jYWNoZS5zZXJ2aWNlXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJjby1zdG9ja1wiLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICAgIDxkaXYgY2xhc3M9XCJzdG9jay1pbmZvLWNvbnRhaW5lclwiICpuZ0lmPVwibG9hZGVkICYmIGFydGljbGVFeHRlbmRlZFwiPlxyXG4gICAgICAgIDxjby1zdG9jay1pbmZvcm1hdGlvbiBbYXJ0aWNsZV09XCJhcnRpY2xlRXh0ZW5kZWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXJ0aWNsZVN0b2NrU3RhdGVdPVwiYXJ0aWNsZVN0b2NrU3RhdGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYWxsQXZhaWxhYmxlU3RvY2tJbmZvcm1hdGlvbl09XCJhbGxBdmFpbGFibGVTdG9ja1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthbGxUZWNobmljYWxTdG9ja0luZm9ybWF0aW9uXT1cImFsbFRlY2huaWNhbFN0b2NrXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Vjb25vbWljYWxTdG9ja109XCJlY29ub21pY2FsU3RvY2tcIlxyXG4gICAgICAgID5cclxuICAgICAgICA8L2NvLXN0b2NrLWluZm9ybWF0aW9uPlxyXG4gICAgICAgIDxjby1zdG9jay10YWJzIFtzdG9ja0luZm9ybWF0aW9uXT1cInN0b2NrSW5mb3JtYXRpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIFthcnRpY2xlXT1cImFydGljbGVFeHRlbmRlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgW2FydGljbGVGbGF0XT1cImFydGljbGVGbGF0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAodHJhbnNmZXJJY29uQ2xpY2tlZCk9XCJoYW5kbGVTdG9ja1RyYW5zZmVyQ2xpY2soJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgKHNlbmRNZXRob2REaWFsb2dDbGlja2VkKT1cImhhbmRsZVNlbmRNZXRob2RDbGljaygkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbd2FyZWhvdXNlc109XCJ3YXJlaG91c2VzXCJcclxuICAgICAgICA+PC9jby1zdG9jay10YWJzPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJzdG9jay10cmFuc2Zlci13cmFwcGVyXCI+XHJcbiAgICAgICAgICA8Y28tZGlhbG9nICpuZ0lmPVwic2hvd1N0b2NrVHJhbnNmZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAoY2xvc2VDbGljayk9XCJzaG93U3RvY2tUcmFuc2ZlciA9IGZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgW3Nob3dDbG9zZUljb25dPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgIFttb2RhbF09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgW2hlYWRlclRlbXBsYXRlXT1cImhlYWRlclRlbXBsYXRlXCJcclxuICAgICAgICAgICAgICAgICAgICAgW2Zvb3RlclRlbXBsYXRlXT1cImZvb3RlclRlbXBsYXRlXCI+XHJcbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjaGVhZGVyVGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvLWRpYWxvZy1oZWFkZXItdGl0bGUtd3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgICAgPGNvLWljb24gW2ljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29ucy5DdWJlcylcIj48L2NvLWljb24+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY28tZGlhbG9nLWhlYWRlci10aXRsZVwiIFt0ZXh0Q29udGVudF09XCInVFJBTlNGRVJfU1RPQ0snIHwgbG9jYWxpemVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRpYWxvZy13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgPGNvLXN0b2NrLXRyYW5zZmVyIChoYW5kbGVDbGljayk9XCJiYWNrVG9TdG9jaygkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzdG9jay10cmFuc2Zlci1kaWFsb2dcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXJ0aWNsZV09XCJzdG9ja1RyYW5zZmVyQXJ0aWNsZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthcnRpY2xlVG9UcmFuc2Zlcl09XCJzdG9ja1RyYW5zZmVyQXJ0aWNsZURldGFpbHNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoaGFuZGxlU3RpY2tlckNsaWNrZWQpPVwiaGFuZGxlU3RpY2tlckNsaWNrZWQuZW1pdCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2FydGljbGVXYXJlaG91c2VdPVwiYXJ0aWNsZVdhcmVob3VzZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthbGxXYXJlaG91c2VzXT1cImFsbFdhcmVob3VzZXNcIj5cclxuICAgICAgICAgICAgICA8L2NvLXN0b2NrLXRyYW5zZmVyPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNmb290ZXJUZW1wbGF0ZT5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYnV0dG9uLXdyYXBwZXIgb2stY2FuY2VsLWJ1dHRvbnNcIj5cclxuICAgICAgICAgICAgICAgIDxjby1idXR0b24gY2xhc3M9XCJzYXZlLWJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJoYW5kbGVPa0NsaWNrKHN0b2NrVHJhbnNmZXJBcnRpY2xlRGV0YWlscylcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBbaWNvbkRhdGFdPVwiaWNvbkNhY2hlU2VydmljZS5nZXRJY29uKGljb25zLkNoZWNrRHVvdG9uZSlcIj5cclxuICAgICAgICAgICAgICAgIDwvY28tYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPGNvLWJ1dHRvbiBjbGFzcz1cImNhbmNlbC1idXR0b25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwic2hvd1N0b2NrVHJhbnNmZXIgPSBmYWxzZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpY29uRGF0YV09XCJpY29uQ2FjaGVTZXJ2aWNlLmdldEljb24oaWNvbnMuQ3Jvc3NTa2lubnkpXCI+XHJcbiAgICAgICAgICAgICAgICA8L2NvLWJ1dHRvbj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgIDwvY28tZGlhbG9nPlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8Y28tc2VuZC1tZXRob2QtZGlhbG9nICpuZ0lmPVwic2hvd1NlbmRNZXRob2REaWFsb2dcIj5cclxuXHJcbiAgICAgICAgPC9jby1zZW5kLW1ldGhvZC1kaWFsb2c+XHJcbiAgICAgIDwvZGl2PlxyXG4gIGAsXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU3RvY2tDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3ksIE9uSW5pdCB7XHJcbiAgcHVibGljIHJlYWRvbmx5IGljb25zOiB0eXBlb2YgSWNvbiA9IEljb247XHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2V0IHRyYW5zbGF0aW9uKHZhbHVlOiBUcmFuc2xhdGlvbikge1xyXG4gICAgdGhpcy5fbG9jYWxpemVTZXJ2aWNlLnRyYW5zbGF0aW9uID0gdmFsdWU7XHJcbiAgICB0aGlzLl9jaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcclxuICB9XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyBoYW5kbGVTdGlja2VyQ2xpY2tlZDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNldCBhcnRpY2xlKGFydGljbGVPckdvb2RJZDogQXJ0aWNsZUV4dGVuZGVkIHwgbnVtYmVyKSB7XHJcbiAgICBpZihhcnRpY2xlT3JHb29kSWQgaW5zdGFuY2VvZiBBcnRpY2xlRXh0ZW5kZWQpIHtcclxuICAgICAgdGhpcy5hcnRpY2xlRXh0ZW5kZWQgPSBhcnRpY2xlT3JHb29kSWQ7XHJcbiAgICAgIHRoaXMuX2dvb2RJZCA9IGFydGljbGVPckdvb2RJZC5nb29kSWQ7XHJcblxyXG4gICAgfSBlbHNlIGlmKHR5cGVvZiBhcnRpY2xlT3JHb29kSWQgPT09IFwibnVtYmVyXCIgKSB7XHJcbiAgICAgIHRoaXMuX2dvb2RJZCA9IGFydGljbGVPckdvb2RJZDtcclxuICAgIH1cclxuXHJcbiAgfTtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgYXJ0aWNsZVdhcmVob3VzZTogYW55W10gPSBbXTtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgYWxsV2FyZWhvdXNlczogYW55W10gPSBbXTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIHJlYWRvbmx5IG9rQnV0dG9uQ2xpY2tlZDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyByZWFkb25seSBjYW5jZWxCdXR0b25DbGlja2VkOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgaGFuZGxlQ2xpY2s6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBIb3N0QmluZGluZyhcImNsYXNzLmNvLXN0b2NrXCIpXHJcbiAgcHVibGljIHNob3dDbGFzcygpIHtcclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGxvYWRlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBwdWJsaWMgc2hvd1N0b2NrSW5mb3JtYXRpb25HcmlkOiBib29sZWFuID0gdHJ1ZTtcclxuICBwdWJsaWMgc2hvd1N0b2NrVHJhbnNmZXI6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgc3RvY2tJbmZvcm1hdGlvbjogQXJ0aWNsZVN0b2NrQm9bXSA9IFtdO1xyXG4gIHB1YmxpYyBzdG9ja1RyYW5zZmVyQXJ0aWNsZTogQXJ0aWNsZVN0b2NrQm87XHJcbiAgcHVibGljIHN0b2NrVHJhbnNmZXJBcnRpY2xlRGV0YWlsczogQXJ0aWNsZURldGFpbHNCbztcclxuICBwdWJsaWMgYXJ0aWNsZUV4dGVuZGVkOiBBcnRpY2xlRXh0ZW5kZWQ7XHJcblxyXG4gIHB1YmxpYyBhcnRpY2xlRmxhdDpBcnRpY2xlRmxhdDtcclxuICBwdWJsaWMgc3RvY2tIaXN0b3J5OiBTdG9ja0hpc3RvcnlCb1tdID0gW107XHJcbiAgcHVibGljIGFsbEF2YWlsYWJsZVN0b2NrOiBudW1iZXIgPSAwO1xyXG4gIHB1YmxpYyBhbGxUZWNobmljYWxTdG9jazogbnVtYmVyID0gMDtcclxuICBwdWJsaWMgZWNvbm9taWNhbFN0b2NrOiBudW1iZXIgPSAwO1xyXG4gIHB1YmxpYyBzaG93U2VuZE1ldGhvZERpYWxvZzogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHB1YmxpYyBhcnRpY2xlU3RvY2tTdGF0ZTogbnVtYmVyO1xyXG4gIHB1YmxpYyB3YXJlaG91c2VzOiBTdG9ja01hbmFnZW1lbnRXYXJlaG91c2VzW10gPSBbXTtcclxuXHJcbiAgcHJpdmF0ZSBfc3Vic2NyaXB0aW9uczogU3Vic2NyaXB0aW9uW10gPSBbXTtcclxuICBwcml2YXRlIF9nb29kSWQ6IG51bWJlcjtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIF9zdG9ja1NlcnZpY2U6IFN0b2NrU2VydmljZSxcclxuICAgIHByaXZhdGUgX29wdGlvbnNTZXJ2aWNlOiBPcHRpb25zU2VydmljZSxcclxuICAgIHByaXZhdGUgX2RpY3Rpb25hcnk6IERpY3Rpb25hcnlTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgcHJpdmF0ZSBfbG9jYWxpemVTZXJ2aWNlOiBMb2NhbGl6ZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9jb25uZWN0b3I6IFNoYXJlZENvbm5lY3RvclNlcnZpY2UsXHJcbiAgICBwdWJsaWMgaWNvbkNhY2hlU2VydmljZTogSWNvbkNhY2hlU2VydmljZVxyXG4gICkge1xyXG4gICAgdGhpcy5fc3Vic2NyaXB0aW9ucy5wdXNoKFxyXG4gICAgICB0aGlzLl9vcHRpb25zU2VydmljZS5vcHRpb25zTG9hZGVkLnN1YnNjcmliZShsb2FkZWQgPT4gdGhpcy5faGFuZGxlU2V0dGluZ3NMb2FkZWQobG9hZGVkKSksXHJcbiAgICApXHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuYXJ0aWNsZUV4dGVuZGVkID0gdW5kZWZpbmVkO1xyXG4gICAgdGhpcy5hcnRpY2xlRmxhdCA9IHVuZGVmaW5lZDtcclxuICAgIHRoaXMuX3N1YnNjcmlwdGlvbnMuZm9yRWFjaChzdWJzY3JpcHRpb24gPT4gc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCkpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlU3RvY2tUcmFuc2ZlckNsaWNrKGV2ZW50KTogdm9pZCB7XHJcbiAgICB0aGlzLnN0b2NrVHJhbnNmZXJBcnRpY2xlRGV0YWlscyA9IGV2ZW50O1xyXG4gICAgdGhpcy5zaG93U3RvY2tUcmFuc2ZlciA9ICF0aGlzLnNob3dTdG9ja1RyYW5zZmVyO1xyXG4gICAgdGhpcy5zaG93U3RvY2tJbmZvcm1hdGlvbkdyaWQgPSAhdGhpcy5zaG93U3RvY2tJbmZvcm1hdGlvbkdyaWQ7XHJcbiAgICB0aGlzLl9zdG9ja1NlcnZpY2Uuc3RvY2tTdGlja2VycyA9IG5ldyBQcmludFN0b2NrU3RpY2tlcnMoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVTZW5kTWV0aG9kQ2xpY2soZXZlbnQpOiB2b2lkIHtcclxuICAgIHRoaXMuc2hvd1NlbmRNZXRob2REaWFsb2cgPSB0cnVlO1xyXG4gIH1cclxuICBwdWJsaWMgaGFuZGxlT2tDbGljayhkYXRhOiBBcnRpY2xlRGV0YWlsc0JvKTogdm9pZCB7XHJcbiAgICBkYXRhLnNlbGVjdGVkID0gdHJ1ZTtcclxuICAgIGRhdGEuZW50cnlEYXRlID0gbmV3IERhdGU7XHJcbiAgICB0aGlzLl9zdG9ja1NlcnZpY2UudXBkYXRlQXJ0aWNsZURldGFpbHMoZGF0YSkudGhlbihyZXN1bHQgPT4ge1xyXG4gICAgICB0aGlzLmhhbmRsZUNsaWNrLmVtaXQoKTtcclxuICAgIH0pO1xyXG5cclxuICB9XHJcblxyXG4gIHB1YmxpYyBiYWNrVG9TdG9jayhnb29kSWQ6IG51bWJlcik6IHZvaWQge1xyXG4gICAgdGhpcy5sb2FkRGF0YSgpO1xyXG4gICAgdGhpcy5zaG93U3RvY2tUcmFuc2ZlciA9ICF0aGlzLnNob3dTdG9ja1RyYW5zZmVyO1xyXG4gICAgdGhpcy5zaG93U3RvY2tJbmZvcm1hdGlvbkdyaWQgPSAhdGhpcy5zaG93U3RvY2tJbmZvcm1hdGlvbkdyaWQ7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0U3RvY2tJbmZvcm1hdGlvbihnb29kSWQ6IG51bWJlcik6IHZvaWQge1xyXG4gICAgY29uc3QgYXJ0aWNsZURhdGE6IEFydGljbGVTdG9jayA9IG5ldyBBcnRpY2xlU3RvY2soKTtcclxuICAgIGFydGljbGVEYXRhLmdvb2RJZCA9IGdvb2RJZC50b1N0cmluZygpO1xyXG4gICAgYXJ0aWNsZURhdGEudmlld0tpbmQgPSBcIk1cIjtcclxuICAgIHRoaXMuX3N0b2NrU2VydmljZS5nZXRTdG9ja0luZm9ybWF0aW9uKGFydGljbGVEYXRhKS50aGVuKHJlc3VsdCA9PiB7XHJcbiAgICAgIHRoaXMuc3RvY2tJbmZvcm1hdGlvbiA9IHJlc3VsdDtcclxuICAgICAgdGhpcy5zdG9ja0luZm9ybWF0aW9uLmZvckVhY2goKGFydGljbGVTdG9jaykgPT4gdGhpcy5hbGxBdmFpbGFibGVTdG9jayArPSBhcnRpY2xlU3RvY2suYXZhaWxhYmxlU3RvY2spO1xyXG4gICAgICB0aGlzLnN0b2NrSW5mb3JtYXRpb24uZm9yRWFjaCgoYXJ0aWNsZVN0b2NrKSA9PiB0aGlzLmFsbFRlY2huaWNhbFN0b2NrICs9IGFydGljbGVTdG9jay50ZWNobmljYWxTdG9jayk7XHJcbiAgICAgIHRoaXMuc3RvY2tJbmZvcm1hdGlvbi5mb3JFYWNoKChhcnRpY2xlU3RvY2spID0+IHRoaXMuZWNvbm9taWNhbFN0b2NrICs9IGFydGljbGVTdG9jay5lY29ub21pY2FsU3RvY2spO1xyXG5cclxuICAgIH0pO1xyXG5cclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRBcnRTdG9ja1N0YXR1cygpOiB2b2lkIHtcclxuICAgIHRoaXMuX3N0b2NrU2VydmljZS5nZXRBcnRTdG9ja1N0YXR1cyh0aGlzLmFydGljbGVFeHRlbmRlZCA/IHRoaXMuYXJ0aWNsZUV4dGVuZGVkLmdvb2RJZCA6IHRoaXMuX2dvb2RJZCkudGhlbihyZXN1bHQgPT4ge1xyXG4gICAgICB0aGlzLmFydGljbGVTdG9ja1N0YXRlID0gcmVzdWx0O1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0U3RvY2tNYW5hZ2VtZW50V2FyZWhvdXNlcygpOiB2b2lkIHtcclxuICAgIHRoaXMuX3N0b2NrU2VydmljZS5nZXRTdG9ja01hbmFnZW1lbnRXYXJlaG91c2VzKCkudGhlbigod2FyZWhvdXNlcykgPT4ge1xyXG4gICAgICB0aGlzLndhcmVob3VzZXMgPSB3YXJlaG91c2VzO1xyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXN5bmMgX2hhbmRsZVNldHRpbmdzTG9hZGVkKGxvYWRlZDogYm9vbGVhbik6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgaWYgKGxvYWRlZCkge1xyXG4gICAgICBhd2FpdCB0aGlzLl9pbml0Q29ubmVjdGlvbigpLnRoZW4oKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXN5bmMgX2luaXRDb25uZWN0aW9uKCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgYXdhaXQgdGhpcy5fY29ubmVjdG9yLmNvbm5lY3QoKTtcclxuICAgIGlmICh0aGlzLl9vcHRpb25zU2VydmljZS5vcHRpb25zLnVybCkge1xyXG4gICAgICB0aGlzLl9kaWN0aW9uYXJ5LnJvb3RVcmwgPSB0aGlzLl9vcHRpb25zU2VydmljZS5vcHRpb25zLnVybC5yZXBsYWNlKFwiL2FqYXhzZXJ2aWNlXCIsIFwiXCIpO1xyXG4gICAgfVxyXG4gICAgYXdhaXQgdGhpcy5fZGljdGlvbmFyeS5zZXREaWN0aW9uYXJ5KHRoaXMuX29wdGlvbnNTZXJ2aWNlLm9wdGlvbnMubGFuZ3VhZ2VDb2RlKTtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICB0aGlzLl9jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICB9KTtcclxuICAgIHRoaXMubG9hZGVkID0gdHJ1ZTtcclxuICAgIHRoaXMubG9hZERhdGEoKTtcclxuICB9XHJcblxyXG5cclxuICBwdWJsaWMgbG9hZERhdGEoKSB7XHJcbiAgICBpZih0aGlzLmxvYWRlZCkge1xyXG4gICAgICBpZih0aGlzLl9nb29kSWQgJiYgIXRoaXMuYXJ0aWNsZUV4dGVuZGVkKSB7XHJcbiAgICAgICAgbGV0IHJlcXVlc3Q6IEFydGljbGVFeHRlbmRlZFJlcXVlc3QgPSBuZXcgQXJ0aWNsZUV4dGVuZGVkUmVxdWVzdCgpO1xyXG4gICAgICAgIHJlcXVlc3QuZ29vZElkID0gdGhpcy5fZ29vZElkO1xyXG4gICAgICAgIHRoaXMuX3N0b2NrU2VydmljZS5zZWFyY2hBcnRpY2xlcyhyZXF1ZXN0KS50aGVuKChhcnRpY2xlRXh0ZW5kZWQ6IEFydGljbGVFeHRlbmRlZFtdKSA9PiB7XHJcbiAgICAgICAgICBpZihhcnRpY2xlRXh0ZW5kZWRbMF0pIHtcclxuICAgICAgICAgICAgdGhpcy5hcnRpY2xlRXh0ZW5kZWQgPSBhcnRpY2xlRXh0ZW5kZWRbMF07XHJcbiAgICAgICAgICAgIHRoaXMuX3N0b2NrU2VydmljZS5nZXRBcnRpY2xlRmxhdChhcnRpY2xlRXh0ZW5kZWRbMF0uYXJ0aWNsZU51bWJlcikudGhlbihyZXN1bHQgPT4ge1xyXG4gICAgICAgICAgICAgIHRoaXMuYXJ0aWNsZUZsYXQgPSByZXN1bHQ7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICAgICAgdGhpcy5nZXRBcnRTdG9ja1N0YXR1cygpO1xyXG4gICAgICAgIHRoaXMuZ2V0U3RvY2tNYW5hZ2VtZW50V2FyZWhvdXNlcygpO1xyXG4gICAgICAgIHRoaXMuZ2V0U3RvY2tJbmZvcm1hdGlvbih0aGlzLmFydGljbGVFeHRlbmRlZCA/IHRoaXMuYXJ0aWNsZUV4dGVuZGVkLmdvb2RJZCA6IHRoaXMuX2dvb2RJZCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLl9jaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcclxuICAgIHRoaXMuX2NoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
206
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvY2suY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvc3RvY2svc3RvY2suY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osV0FBVyxFQUNYLEtBQUssRUFDTCxNQUFNLEVBRU4saUJBQWlCLEVBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUN6RCxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxzREFBc0QsQ0FBQztBQUV4RixPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sc0RBQXNELENBQUM7QUFDckYsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGdEQUFnRCxDQUFDO0FBRzVFLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQztBQUU3RCxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUduRSxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDcEUsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sMkRBQTJELENBQUM7QUFDakcsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sd0NBQXdDLENBQUM7QUFFOUUsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQzFDLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQ2xFLE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLDJEQUEyRCxDQUFDO0FBMEJqRyxNQUFNLE9BQU8sY0FBYztJQWlFekIsWUFDVSxhQUEyQixFQUMzQixlQUErQixFQUMvQixXQUE4QixFQUM5QixlQUFrQyxFQUNsQyxn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b3JSZWYsXHJcbiAgQ29tcG9uZW50LFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBIb3N0QmluZGluZyxcclxuICBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsXHJcbiAgT3V0cHV0LFxyXG4gIFZpZXdDaGlsZCxcclxuICBWaWV3RW5jYXBzdWxhdGlvblxyXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7U3RvY2tTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vc2VydmljZS9zdG9jay5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7UHJpbnRTdG9ja1N0aWNrZXJzfSBmcm9tIFwiQGNvbGlqbml0L3NoYXJlZGFwaS9idWlsZC9tb2RlbC9wcmludC1zdG9jay1zdGlja2Vyc1wiO1xyXG5pbXBvcnQge0FydGljbGVTdG9jayBhcyBBcnRpY2xlU3RvY2tCb30gZnJvbSBcIkBjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtc3RvY2suYm9cIjtcclxuaW1wb3J0IHtBcnRpY2xlRXh0ZW5kZWR9IGZyb20gXCJAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLWV4dGVuZGVkLmJvXCI7XHJcbmltcG9ydCB7QXJ0aWNsZVN0b2NrfSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1zdG9ja1wiO1xyXG5pbXBvcnQge1N0b2NrSGlzdG9yeUJvfSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvc3RvY2staGlzdG9yeS5ib1wiO1xyXG5pbXBvcnQge0FydGljbGVEZXRhaWxzQm99IGZyb20gXCJAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLWRldGFpbHMuYm9cIjtcclxuaW1wb3J0IHtPcHRpb25zU2VydmljZX0gZnJvbSBcIi4uLy4uL3NlcnZpY2Uvb3B0aW9ucy5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7U3Vic2NyaXB0aW9ufSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQge0RpY3Rpb25hcnlTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vc2VydmljZS9kaWN0aW9uYXJ5LnNlcnZpY2VcIjtcclxuaW1wb3J0IHtTdG9ja01hbmFnZW1lbnRXYXJlaG91c2VzfSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvc3RvY2stbWFuYWdlbWVudC13YXJlaG91c2VzLmJvXCI7XHJcbmltcG9ydCB7VHJhbnNsYXRpb259IGZyb20gJy4vbG9jYWxpemF0aW9uL3RyYW5zbGF0aW9uJztcclxuaW1wb3J0IHtMb2NhbGl6ZVNlcnZpY2V9IGZyb20gJy4uLy4uL2xvY2FsaXphdGlvbi9sb2NhbGl6ZS5zZXJ2aWNlJztcclxuaW1wb3J0IHtBcnRpY2xlRXh0ZW5kZWRSZXF1ZXN0fSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1leHRlbmRlZC1yZXF1ZXN0XCI7XHJcbmltcG9ydCB7U2hhcmVkQ29ubmVjdG9yU2VydmljZX0gZnJvbSBcIi4uLy4uL3NlcnZpY2Uvc2hhcmVkLWNvbm5lY3Rvci5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7QXJ0aWNsZUZsYXR9IGZyb20gXCJAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLWZsYXQuYm9cIjtcclxuaW1wb3J0IHtJY29ufSBmcm9tIFwiLi4vLi4vZW51bS9pY29uLmVudW1cIjtcclxuaW1wb3J0IHtJY29uQ2FjaGVTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vc2VydmljZS9pY29uLWNhY2hlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtBcnRpY2xlU3RvY2tNYW5hZ2VtZW50fSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1zdG9jay1tYW5hZ2VtZW50XCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJjby1zdG9ja1wiLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICAgIDxkaXYgY2xhc3M9XCJzdG9jay1pbmZvLWNvbnRhaW5lclwiICpuZ0lmPVwibG9hZGVkICYmIGFydGljbGVFeHRlbmRlZFwiPlxyXG4gICAgICAgIDxjby1zdG9jay1pbmZvcm1hdGlvbiBbYXJ0aWNsZV09XCJhcnRpY2xlRXh0ZW5kZWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXJ0aWNsZVN0b2NrU3RhdGVdPVwiYXJ0aWNsZVN0b2NrU3RhdGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYWxsQXZhaWxhYmxlU3RvY2tJbmZvcm1hdGlvbl09XCJhbGxBdmFpbGFibGVTdG9ja1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthbGxUZWNobmljYWxTdG9ja0luZm9ybWF0aW9uXT1cImFsbFRlY2huaWNhbFN0b2NrXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Vjb25vbWljYWxTdG9ja109XCJlY29ub21pY2FsU3RvY2tcIlxyXG4gICAgICAgID5cclxuICAgICAgICA8L2NvLXN0b2NrLWluZm9ybWF0aW9uPlxyXG4gICAgICAgIDxjby1zdG9jay10YWJzIFtzdG9ja0luZm9ybWF0aW9uXT1cInN0b2NrSW5mb3JtYXRpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIFthcnRpY2xlXT1cImFydGljbGVFeHRlbmRlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgW2FydGljbGVGbGF0XT1cImFydGljbGVGbGF0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAodHJhbnNmZXJJY29uQ2xpY2tlZCk9XCJoYW5kbGVTdG9ja1RyYW5zZmVyQ2xpY2soJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgKHNlbmRNZXRob2REaWFsb2dDbGlja2VkKT1cImhhbmRsZVNlbmRNZXRob2RDbGljaygkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbd2FyZWhvdXNlc109XCJ3YXJlaG91c2VzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbc2hvd1N0b2NrVHJhbnNmZXJdPVwic2hvd1N0b2NrVHJhbnNmZXJcIlxyXG5cclxuICAgICAgICA+PC9jby1zdG9jay10YWJzPlxyXG4gICAgICA8L2Rpdj5cclxuICBgLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcclxufSlcclxuZXhwb3J0IGNsYXNzIFN0b2NrQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95LCBPbkluaXQge1xyXG4gIHB1YmxpYyByZWFkb25seSBpY29uczogdHlwZW9mIEljb24gPSBJY29uO1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNldCB0cmFuc2xhdGlvbih2YWx1ZTogVHJhbnNsYXRpb24pIHtcclxuICAgIHRoaXMuX2xvY2FsaXplU2VydmljZS50cmFuc2xhdGlvbiA9IHZhbHVlO1xyXG4gICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XHJcbiAgfVxyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgaGFuZGxlU3RpY2tlckNsaWNrZWQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZXQgYXJ0aWNsZShhcnRpY2xlT3JHb29kSWQ6IEFydGljbGVFeHRlbmRlZCB8IG51bWJlcikge1xyXG4gICAgaWYoYXJ0aWNsZU9yR29vZElkIGluc3RhbmNlb2YgQXJ0aWNsZUV4dGVuZGVkKSB7XHJcbiAgICAgIHRoaXMuYXJ0aWNsZUV4dGVuZGVkID0gYXJ0aWNsZU9yR29vZElkO1xyXG4gICAgICB0aGlzLl9nb29kSWQgPSBhcnRpY2xlT3JHb29kSWQuZ29vZElkO1xyXG5cclxuICAgIH0gZWxzZSBpZih0eXBlb2YgYXJ0aWNsZU9yR29vZElkID09PSBcIm51bWJlclwiICkge1xyXG4gICAgICB0aGlzLl9nb29kSWQgPSBhcnRpY2xlT3JHb29kSWQ7XHJcbiAgICB9XHJcblxyXG4gIH07XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGFydGljbGVXYXJlaG91c2U6IGFueVtdID0gW107XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGFsbFdhcmVob3VzZXM6IGFueVtdID0gW107XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyByZWFkb25seSBva0J1dHRvbkNsaWNrZWQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgcmVhZG9ubHkgY2FuY2VsQnV0dG9uQ2xpY2tlZDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIGhhbmRsZUNsaWNrOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgcHVibGljIHVwZGF0ZUdyaWREYXRhOiBFdmVudEVtaXR0ZXI8QXJ0aWNsZURldGFpbHNCb1tdPiA9IG5ldyBFdmVudEVtaXR0ZXI8QXJ0aWNsZURldGFpbHNCb1tdPigpO1xyXG5cclxuICBASG9zdEJpbmRpbmcoXCJjbGFzcy5jby1zdG9ja1wiKVxyXG4gIHB1YmxpYyBzaG93Q2xhc3MoKSB7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBsb2FkZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgcHVibGljIHNob3dTdG9ja0luZm9ybWF0aW9uR3JpZDogYm9vbGVhbiA9IHRydWU7XHJcbiAgcHVibGljIHNob3dTdG9ja1RyYW5zZmVyOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHVibGljIHN0b2NrSW5mb3JtYXRpb246IEFydGljbGVTdG9ja0JvW10gPSBbXTtcclxuICBwdWJsaWMgc3RvY2tUcmFuc2ZlckFydGljbGU6IEFydGljbGVTdG9ja0JvO1xyXG4gIHB1YmxpYyBzdG9ja1RyYW5zZmVyQXJ0aWNsZURldGFpbHM6IEFydGljbGVEZXRhaWxzQm87XHJcbiAgcHVibGljIGFydGljbGVFeHRlbmRlZDogQXJ0aWNsZUV4dGVuZGVkO1xyXG4gIHB1YmxpYyBhcnRpY2xlRGV0YWlsc0luZm9ybWF0aW9uOiBBcnRpY2xlU3RvY2tNYW5hZ2VtZW50ID0gbmV3IEFydGljbGVTdG9ja01hbmFnZW1lbnQoKTtcclxuICBwdWJsaWMgYXJ0aWNsZUZsYXQ6QXJ0aWNsZUZsYXQ7XHJcbiAgcHVibGljIHN0b2NrSGlzdG9yeTogU3RvY2tIaXN0b3J5Qm9bXSA9IFtdO1xyXG4gIHB1YmxpYyBhbGxBdmFpbGFibGVTdG9jazogbnVtYmVyID0gMDtcclxuICBwdWJsaWMgYWxsVGVjaG5pY2FsU3RvY2s6IG51bWJlciA9IDA7XHJcbiAgcHVibGljIGVjb25vbWljYWxTdG9jazogbnVtYmVyID0gMDtcclxuICBwdWJsaWMgc2hvd1NlbmRNZXRob2REaWFsb2c6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgYXJ0aWNsZVN0b2NrU3RhdGU6IG51bWJlcjtcclxuICBwdWJsaWMgd2FyZWhvdXNlczogU3RvY2tNYW5hZ2VtZW50V2FyZWhvdXNlc1tdID0gW107XHJcblxyXG4gIHByaXZhdGUgX3N1YnNjcmlwdGlvbnM6IFN1YnNjcmlwdGlvbltdID0gW107XHJcbiAgcHJpdmF0ZSBfZ29vZElkOiBudW1iZXI7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBfc3RvY2tTZXJ2aWNlOiBTdG9ja1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9vcHRpb25zU2VydmljZTogT3B0aW9uc1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9kaWN0aW9uYXJ5OiBEaWN0aW9uYXJ5U2VydmljZSxcclxuICAgIHByaXZhdGUgX2NoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIHByaXZhdGUgX2xvY2FsaXplU2VydmljZTogTG9jYWxpemVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfY29ubmVjdG9yOiBTaGFyZWRDb25uZWN0b3JTZXJ2aWNlLFxyXG4gICAgcHVibGljIGljb25DYWNoZVNlcnZpY2U6IEljb25DYWNoZVNlcnZpY2VcclxuICApIHtcclxuICAgIHRoaXMuX3N1YnNjcmlwdGlvbnMucHVzaChcclxuICAgICAgdGhpcy5fb3B0aW9uc1NlcnZpY2Uub3B0aW9uc0xvYWRlZC5zdWJzY3JpYmUobG9hZGVkID0+IHRoaXMuX2hhbmRsZVNldHRpbmdzTG9hZGVkKGxvYWRlZCkpLFxyXG4gICAgKVxyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLmFydGljbGVFeHRlbmRlZCA9IHVuZGVmaW5lZDtcclxuICAgIHRoaXMuYXJ0aWNsZUZsYXQgPSB1bmRlZmluZWQ7XHJcbiAgICB0aGlzLl9zdWJzY3JpcHRpb25zLmZvckVhY2goc3Vic2NyaXB0aW9uID0+IHN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZVN0b2NrVHJhbnNmZXJDbGljayhldmVudCk6IHZvaWQge1xyXG4gICAgdGhpcy5zdG9ja1RyYW5zZmVyQXJ0aWNsZURldGFpbHMgPSBldmVudDtcclxuICAgIHRoaXMuc2hvd1N0b2NrVHJhbnNmZXIgPSAhdGhpcy5zaG93U3RvY2tUcmFuc2ZlcjtcclxuICAgIHRoaXMuc2hvd1N0b2NrSW5mb3JtYXRpb25HcmlkID0gIXRoaXMuc2hvd1N0b2NrSW5mb3JtYXRpb25HcmlkO1xyXG4gICAgdGhpcy5fc3RvY2tTZXJ2aWNlLnN0b2NrU3RpY2tlcnMgPSBuZXcgUHJpbnRTdG9ja1N0aWNrZXJzKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlU2VuZE1ldGhvZENsaWNrKGV2ZW50KTogdm9pZCB7XHJcbiAgICB0aGlzLnNob3dTZW5kTWV0aG9kRGlhbG9nID0gdHJ1ZTtcclxuICB9XHJcbiAgcHVibGljIGhhbmRsZU9rQ2xpY2soZGF0YTogQXJ0aWNsZURldGFpbHNCbyk6IHZvaWQge1xyXG4gICAgZGF0YS5zZWxlY3RlZCA9IHRydWU7XHJcbiAgICBkYXRhLmVudHJ5RGF0ZSA9IG5ldyBEYXRlO1xyXG5cclxuICAgIHRoaXMuX3N0b2NrU2VydmljZS51cGRhdGVBcnRpY2xlRGV0YWlscyhkYXRhKS50aGVuKHJlc3VsdCA9PiB7XHJcbiAgICAgIHRoaXMuaGFuZGxlQ2xpY2suZW1pdCgpO1xyXG4gICAgICB0aGlzLl9zdG9ja1NlcnZpY2UuZ2V0QXJ0aWNsZURldGFpbHModGhpcy5hcnRpY2xlRGV0YWlsc0luZm9ybWF0aW9uKS50aGVuKChkZXRhaWxzKSA9PiB7XHJcbiAgICAgICAgdGhpcy51cGRhdGVHcmlkRGF0YS5lbWl0KGRldGFpbHMpO1xyXG4gICAgICB9KTtcclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMubG9hZGVkID0gdHJ1ZTtcclxuICAgIHRoaXMubG9hZERhdGEoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBiYWNrVG9TdG9jayhnb29kSWQ6IG51bWJlcik6IHZvaWQge1xyXG4gICAgdGhpcy5sb2FkRGF0YSgpO1xyXG4gICAgdGhpcy5zaG93U3RvY2tUcmFuc2ZlciA9ICF0aGlzLnNob3dTdG9ja1RyYW5zZmVyO1xyXG4gICAgdGhpcy5zaG93U3RvY2tJbmZvcm1hdGlvbkdyaWQgPSAhdGhpcy5zaG93U3RvY2tJbmZvcm1hdGlvbkdyaWQ7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0U3RvY2tJbmZvcm1hdGlvbihnb29kSWQ6IG51bWJlcik6IHZvaWQge1xyXG4gICAgY29uc3QgYXJ0aWNsZURhdGE6IEFydGljbGVTdG9jayA9IG5ldyBBcnRpY2xlU3RvY2soKTtcclxuICAgIGFydGljbGVEYXRhLmdvb2RJZCA9IGdvb2RJZC50b1N0cmluZygpO1xyXG4gICAgYXJ0aWNsZURhdGEudmlld0tpbmQgPSBcIk1cIjtcclxuICAgIHRoaXMuX3N0b2NrU2VydmljZS5nZXRTdG9ja0luZm9ybWF0aW9uKGFydGljbGVEYXRhKS50aGVuKHJlc3VsdCA9PiB7XHJcbiAgICAgIHRoaXMuc3RvY2tJbmZvcm1hdGlvbiA9IHJlc3VsdDtcclxuICAgICAgdGhpcy5zdG9ja0luZm9ybWF0aW9uLmZvckVhY2goKGFydGljbGVTdG9jaykgPT4gdGhpcy5hbGxBdmFpbGFibGVTdG9jayArPSBhcnRpY2xlU3RvY2suYXZhaWxhYmxlU3RvY2spO1xyXG4gICAgICB0aGlzLnN0b2NrSW5mb3JtYXRpb24uZm9yRWFjaCgoYXJ0aWNsZVN0b2NrKSA9PiB0aGlzLmFsbFRlY2huaWNhbFN0b2NrICs9IGFydGljbGVTdG9jay50ZWNobmljYWxTdG9jayk7XHJcbiAgICAgIHRoaXMuc3RvY2tJbmZvcm1hdGlvbi5mb3JFYWNoKChhcnRpY2xlU3RvY2spID0+IHRoaXMuZWNvbm9taWNhbFN0b2NrICs9IGFydGljbGVTdG9jay5lY29ub21pY2FsU3RvY2spO1xyXG5cclxuICAgIH0pO1xyXG5cclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRBcnRTdG9ja1N0YXR1cygpOiB2b2lkIHtcclxuICAgIHRoaXMuX3N0b2NrU2VydmljZS5nZXRBcnRTdG9ja1N0YXR1cyh0aGlzLmFydGljbGVFeHRlbmRlZCA/IHRoaXMuYXJ0aWNsZUV4dGVuZGVkLmdvb2RJZCA6IHRoaXMuX2dvb2RJZCkudGhlbihyZXN1bHQgPT4ge1xyXG4gICAgICB0aGlzLmFydGljbGVTdG9ja1N0YXRlID0gcmVzdWx0O1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0U3RvY2tNYW5hZ2VtZW50V2FyZWhvdXNlcygpOiB2b2lkIHtcclxuICAgIHRoaXMuX3N0b2NrU2VydmljZS5nZXRTdG9ja01hbmFnZW1lbnRXYXJlaG91c2VzKCkudGhlbigod2FyZWhvdXNlcykgPT4ge1xyXG4gICAgICB0aGlzLndhcmVob3VzZXMgPSB3YXJlaG91c2VzO1xyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXN5bmMgX2hhbmRsZVNldHRpbmdzTG9hZGVkKGxvYWRlZDogYm9vbGVhbik6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgaWYgKGxvYWRlZCkge1xyXG4gICAgICBhd2FpdCB0aGlzLl9pbml0Q29ubmVjdGlvbigpLnRoZW4oKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXN5bmMgX2luaXRDb25uZWN0aW9uKCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgYXdhaXQgdGhpcy5fY29ubmVjdG9yLmNvbm5lY3QoKTtcclxuICAgIGlmICh0aGlzLl9vcHRpb25zU2VydmljZS5vcHRpb25zLnVybCkge1xyXG4gICAgICB0aGlzLl9kaWN0aW9uYXJ5LnJvb3RVcmwgPSB0aGlzLl9vcHRpb25zU2VydmljZS5vcHRpb25zLnVybC5yZXBsYWNlKFwiL2FqYXhzZXJ2aWNlXCIsIFwiXCIpO1xyXG4gICAgfVxyXG4gICAgYXdhaXQgdGhpcy5fZGljdGlvbmFyeS5zZXREaWN0aW9uYXJ5KHRoaXMuX29wdGlvbnNTZXJ2aWNlLm9wdGlvbnMubGFuZ3VhZ2VDb2RlKTtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICB0aGlzLl9jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICB9KTtcclxuICAgIHRoaXMubG9hZGVkID0gdHJ1ZTtcclxuICAgIHRoaXMubG9hZERhdGEoKTtcclxuICB9XHJcblxyXG5cclxuICBwdWJsaWMgbG9hZERhdGEoKSB7XHJcbiAgICBpZih0aGlzLmxvYWRlZCkge1xyXG4gICAgICBpZih0aGlzLl9nb29kSWQgJiYgIXRoaXMuYXJ0aWNsZUV4dGVuZGVkKSB7XHJcbiAgICAgICAgbGV0IHJlcXVlc3Q6IEFydGljbGVFeHRlbmRlZFJlcXVlc3QgPSBuZXcgQXJ0aWNsZUV4dGVuZGVkUmVxdWVzdCgpO1xyXG4gICAgICAgIHJlcXVlc3QuZ29vZElkID0gdGhpcy5fZ29vZElkO1xyXG4gICAgICAgIHRoaXMuX3N0b2NrU2VydmljZS5zZWFyY2hBcnRpY2xlcyhyZXF1ZXN0KS50aGVuKChhcnRpY2xlRXh0ZW5kZWQ6IEFydGljbGVFeHRlbmRlZFtdKSA9PiB7XHJcbiAgICAgICAgICBpZihhcnRpY2xlRXh0ZW5kZWRbMF0pIHtcclxuICAgICAgICAgICAgdGhpcy5hcnRpY2xlRXh0ZW5kZWQgPSBhcnRpY2xlRXh0ZW5kZWRbMF07XHJcbiAgICAgICAgICAgIHRoaXMuX3N0b2NrU2VydmljZS5nZXRBcnRpY2xlRmxhdChhcnRpY2xlRXh0ZW5kZWRbMF0uYXJ0aWNsZU51bWJlcikudGhlbihyZXN1bHQgPT4ge1xyXG4gICAgICAgICAgICAgIHRoaXMuYXJ0aWNsZUZsYXQgPSByZXN1bHQ7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICAgICAgdGhpcy5nZXRBcnRTdG9ja1N0YXR1cygpO1xyXG4gICAgICAgIHRoaXMuZ2V0U3RvY2tNYW5hZ2VtZW50V2FyZWhvdXNlcygpO1xyXG4gICAgICAgIHRoaXMuZ2V0U3RvY2tJbmZvcm1hdGlvbih0aGlzLmFydGljbGVFeHRlbmRlZCA/IHRoaXMuYXJ0aWNsZUV4dGVuZGVkLmdvb2RJZCA6IHRoaXMuX2dvb2RJZCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLl9jaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcclxuICAgIHRoaXMuX2NoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
@@ -1,6 +1,6 @@
1
1
  import { NgModule } from '@angular/core';
2
2
  import { StockComponent } from './stock.component';
3
- import { ButtonModule, CoDialogModule, CoDialogWizardModule, IconModule, ImageModule, InputNumberPickerModule, InputRadioButtonModule, InputTextareaModule, InputTextModule, ListOfValuesModule, SimpleGridModule, PopupModule, } from '@colijnit/corecomponents_v12';
3
+ import { ButtonModule, CoDialogModule, CoDialogWizardModule, IconModule, ImageModule, InputNumberPickerModule, InputRadioButtonModule, InputTextareaModule, InputTextModule, ListOfValuesModule, SimpleGridModule, PopupModule, InputDatePickerModule, } from '@colijnit/corecomponents_v12';
4
4
  import { CommonModule } from '@angular/common';
5
5
  import { StockInformationComponent } from './stock-information/stock-information.component';
6
6
  import { StockInformationGridComponent } from './stock-information-grid/stock-information-grid.component';
@@ -48,7 +48,8 @@ StockModule.decorators = [
48
48
  StockStatusbarModule,
49
49
  ListOfValuesModule,
50
50
  LocalizationModule,
51
- PopupModule
51
+ PopupModule,
52
+ InputDatePickerModule
52
53
  ],
53
54
  declarations: [
54
55
  StockComponent,
@@ -79,4 +80,4 @@ StockModule.decorators = [
79
80
  ]
80
81
  },] }
81
82
  ];
82
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvY2subW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvc3RvY2svc3RvY2subW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBQ2pELE9BQU8sRUFDTCxZQUFZLEVBQ1osY0FBYyxFQUNkLG9CQUFvQixFQUNwQixVQUFVLEVBQ1YsV0FBVyxFQUNYLHVCQUF1QixFQUN2QixzQkFBc0IsRUFDdEIsbUJBQW1CLEVBQ25CLGVBQWUsRUFDZixrQkFBa0IsRUFDbEIsZ0JBQWdCLEVBQ2hCLFdBQVcsR0FDWixNQUFNLDhCQUE4QixDQUFDO0FBQ3RDLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMseUJBQXlCLEVBQUMsTUFBTSxpREFBaUQsQ0FBQztBQUMxRixPQUFPLEVBQUMsNkJBQTZCLEVBQUMsTUFBTSwyREFBMkQsQ0FBQztBQUN4RyxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFDekQsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFDakYsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0saURBQWlELENBQUM7QUFDdkYsT0FBTyxFQUFDLDBCQUEwQixFQUFDLE1BQU0sZ0RBQWdELENBQUM7QUFDMUYsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sNENBQTRDLENBQUM7QUFDN0UsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sNENBQTRDLENBQUM7QUFDN0UsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFDckUsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sbURBQW1ELENBQUM7QUFDNUYsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sd0RBQXdELENBQUM7QUFDOUYsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sc0RBQXNELENBQUM7QUFDNUYsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sb0RBQW9ELENBQUM7QUFDekYsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQ3ZELE9BQU8sRUFDTCxnQ0FBZ0MsRUFDakMsTUFBTSw4RUFBOEUsQ0FBQztBQUN0RixPQUFPLEVBQ0wsb0NBQW9DLEVBQ3JDLE1BQU0sc0ZBQXNGLENBQUM7QUFDOUYsT0FBTyxFQUFDLDBCQUEwQixFQUFDLE1BQU0sZ0VBQWdFLENBQUM7QUFDMUcsT0FBTyxFQUNMLCtCQUErQixFQUNoQyxNQUFNLDBFQUEwRSxDQUFDO0FBQ2xGLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQztBQUM5RCxPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSwyQ0FBMkMsQ0FBQztBQUMvRSxPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSxzREFBc0QsQ0FBQztBQUM1RixPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQUMxRSxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDcEUsT0FBTyxFQUNMLDJCQUEyQixFQUM1QixNQUFNLDRGQUE0RixDQUFDO0FBbURwRyxNQUFNLE9BQU8sV0FBVzs7O1lBakR2QixRQUFRLFNBQUM7Z0JBQ1IsT0FBTyxFQUFFO29CQUNQLFlBQVk7b0JBQ1osWUFBWTtvQkFDWixzQkFBc0I7b0JBQ3RCLGdCQUFnQjtvQkFDaEIsV0FBVztvQkFDWCxlQUFlO29CQUNmLHNCQUFzQjtvQkFDdEIsVUFBVTtvQkFDVix1QkFBdUI7b0JBQ3ZCLG9CQUFvQjtvQkFDcEIsbUJBQW1CO29CQUNuQixZQUFZO29CQUNaLGNBQWM7b0JBQ2QsZUFBZTtvQkFDZixvQkFBb0I7b0JBQ3BCLGtCQUFrQjtvQkFDbEIsa0JBQWtCO29CQUNsQixXQUFXO2lCQUNaO2dCQUNELFlBQVksRUFBRTtvQkFDWixjQUFjO29CQUNkLHlCQUF5QjtvQkFDekIsNkJBQTZCO29CQUM3QixzQkFBc0I7b0JBQ3RCLDBCQUEwQjtvQkFDMUIsaUJBQWlCO29CQUNqQixpQkFBaUI7b0JBQ2pCLGtCQUFrQjtvQkFDbEIseUJBQXlCO29CQUN6QixzQkFBc0I7b0JBQ3RCLHNCQUFzQjtvQkFDdEIscUJBQXFCO29CQUNyQixnQ0FBZ0M7b0JBQ2hDLG9DQUFvQztvQkFDcEMsMEJBQTBCO29CQUMxQiwrQkFBK0I7b0JBQy9CLHNCQUFzQjtvQkFDdEIsMkJBQTJCO2lCQUM1QjtnQkFDRCxPQUFPLEVBQUU7b0JBQ1AsY0FBYztpQkFDZjtnQkFDRCxTQUFTLEVBQUU7b0JBQ1QsWUFBWTtvQkFDWixlQUFlO2lCQUNoQjthQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7U3RvY2tDb21wb25lbnR9IGZyb20gJy4vc3RvY2suY29tcG9uZW50JztcclxuaW1wb3J0IHtcclxuICBCdXR0b25Nb2R1bGUsXHJcbiAgQ29EaWFsb2dNb2R1bGUsXHJcbiAgQ29EaWFsb2dXaXphcmRNb2R1bGUsXHJcbiAgSWNvbk1vZHVsZSxcclxuICBJbWFnZU1vZHVsZSxcclxuICBJbnB1dE51bWJlclBpY2tlck1vZHVsZSxcclxuICBJbnB1dFJhZGlvQnV0dG9uTW9kdWxlLFxyXG4gIElucHV0VGV4dGFyZWFNb2R1bGUsXHJcbiAgSW5wdXRUZXh0TW9kdWxlLFxyXG4gIExpc3RPZlZhbHVlc01vZHVsZSxcclxuICBTaW1wbGVHcmlkTW9kdWxlLFxyXG4gIFBvcHVwTW9kdWxlLFxyXG59IGZyb20gJ0Bjb2xpam5pdC9jb3JlY29tcG9uZW50c192MTInO1xyXG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHtTdG9ja0luZm9ybWF0aW9uQ29tcG9uZW50fSBmcm9tICcuL3N0b2NrLWluZm9ybWF0aW9uL3N0b2NrLWluZm9ybWF0aW9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7U3RvY2tJbmZvcm1hdGlvbkdyaWRDb21wb25lbnR9IGZyb20gJy4vc3RvY2staW5mb3JtYXRpb24tZ3JpZC9zdG9jay1pbmZvcm1hdGlvbi1ncmlkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7U3RvY2tTZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlL3N0b2NrLnNlcnZpY2UnO1xyXG5pbXBvcnQge1N0b2NrVHJhbnNmZXJDb21wb25lbnR9IGZyb20gJy4vc3RvY2stdHJhbnNmZXIvc3RvY2stdHJhbnNmZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHtTZW5kTWV0aG9kRGlhbG9nTW9kdWxlfSBmcm9tICcuLi9zZW5kLW1ldGhvZC1kaWFsb2cvc2VuZC1tZXRob2QtZGlhbG9nLm1vZHVsZSc7XHJcbmltcG9ydCB7U3RvY2tDaGFuZ2VBbW91bnRDb21wb25lbnR9IGZyb20gJy4vc3RvY2stdHJhbnNmZXIvc3RvY2stY2hhbmdlLWFtb3VudC5jb21wb25lbnQnO1xyXG5pbXBvcnQge1N0b2NrVGFiQ29tcG9uZW50fSBmcm9tICcuL2NvbXBvbmVudHMvc3RvY2stdGFiL3N0b2NrLXRhYi5jb21wb25lbnQnO1xyXG5pbXBvcnQge09yZGVyVGFiQ29tcG9uZW50fSBmcm9tICcuL2NvbXBvbmVudHMvb3JkZXItdGFiL29yZGVyLXRhYi5jb21wb25lbnQnO1xyXG5pbXBvcnQge1N0b2NrVGFic0NvbXBvbmVudH0gZnJvbSAnLi9zdG9jay10YWJzL3N0b2NrLXRhYnMuY29tcG9uZW50JztcclxuaW1wb3J0IHtTdG9ja0hpc3RvcnlUYWJzQ29tcG9uZW50fSBmcm9tICcuL3N0b2NrLWhpc3RvcnktdGFicy9zdG9jay1oaXN0b3J5LXRhYnMuY29tcG9uZW50JztcclxuaW1wb3J0IHtPcmRlclN0b2NrVGFiQ29tcG9uZW50fSBmcm9tICcuL2NvbXBvbmVudHMvb3JkZXItc3RvY2stdGFiL29yZGVyLXN0b2NrLXRhYi5jb21wb25lbnQnO1xyXG5pbXBvcnQge1N0b2NrTG9jYXRpb25Db21wb25lbnR9IGZyb20gJy4vY29tcG9uZW50cy9zdG9jay1sb2NhdGlvbi9zdG9jay1sb2NhdGlvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQge1N0b2NrSGlzdG9yeUNvbXBvbmVudH0gZnJvbSAnLi9jb21wb25lbnRzL3N0b2NrLWhpc3Rvcnkvc3RvY2staGlzdG9yeS5jb21wb25lbnQnO1xyXG5pbXBvcnQge1RhYkJhck1vZHVsZX0gZnJvbSAnLi4vdGFiLWJhci90YWItYmFyLm1vZHVsZSc7XHJcbmltcG9ydCB7XHJcbiAgT3JkZXJTdXBwbHlTdG9ja0hpc3RvcnlDb21wb25lbnRcclxufSBmcm9tICcuL2NvbXBvbmVudHMvb3JkZXItc3VwcGx5LXN0b2NrLWhpc3Rvcnkvb3JkZXItc3VwcGx5LXN0b2NrLWhpc3RvcnkuY29tcG9uZW50JztcclxuaW1wb3J0IHtcclxuICBPcmRlckNvbW1pc3Npb25TdG9ja0hpc3RvcnlDb21wb25lbnRcclxufSBmcm9tICcuL2NvbXBvbmVudHMvb3JkZXItY29tbWlzc2lvbi1zdG9jay1oaXN0b3J5L29yZGVyLWNvbW1pc3Npb24tc3RvY2staGlzdG9yeS5jb21wb25lbnQnO1xyXG5pbXBvcnQge09yZGVyU3RvY2tIaXN0b3J5Q29tcG9uZW50fSBmcm9tICcuL2NvbXBvbmVudHMvb3JkZXItc3RvY2staGlzdG9yeS9vcmRlci1zdG9jay1oaXN0b3J5LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7XHJcbiAgQWxsb2NhdGlvblN0b2NrSGlzdG9yeUNvbXBvbmVudFxyXG59IGZyb20gJy4vY29tcG9uZW50cy9hbGxvY2F0aW9uLXN0b2NrLWhpc3RvcnkvYWxsb2NhdGlvbi1zdG9jay1oaXN0b3J5LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7U3RhdHVzYmFyTW9kdWxlfSBmcm9tICcuLi9zdGF0dXNiYXIvc3RhdHVzYmFyLm1vZHVsZSc7XHJcbmltcG9ydCB7U3RvY2tTdGF0dXNiYXJNb2R1bGV9IGZyb20gJy4uL3N0b2NrLXN0YXR1c2Jhci9zdG9jay1zdGF0dXNiYXIubW9kdWxlJztcclxuaW1wb3J0IHtTdG9ja1Byb2dub3NlQ29tcG9uZW50fSBmcm9tICcuL2NvbXBvbmVudHMvc3RvY2stcHJvZ25vc2Uvc3RvY2stcHJvZ25vc2UuY29tcG9uZW50JztcclxuaW1wb3J0IHtMb2NhbGl6YXRpb25Nb2R1bGV9IGZyb20gJy4uLy4uL2xvY2FsaXphdGlvbi9sb2NhbGl6YXRpb24ubW9kdWxlJztcclxuaW1wb3J0IHtMb2NhbGl6ZVNlcnZpY2V9IGZyb20gJy4uLy4uL2xvY2FsaXphdGlvbi9sb2NhbGl6ZS5zZXJ2aWNlJztcclxuaW1wb3J0IHtcclxuICBTdG9ja0xvY2F0aW9uUG9wdXBDb21wb25lbnRcclxufSBmcm9tIFwiLi9jb21wb25lbnRzL3N0b2NrLWxvY2F0aW9uL2NvbXBvbmVudHMvc3RvY2stbG9jYXRpb24tcG9wdXAvc3RvY2stbG9jYXRpb24tcG9wdXAuY29tcG9uZW50XCI7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGltcG9ydHM6IFtcclxuICAgIEJ1dHRvbk1vZHVsZSxcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIElucHV0UmFkaW9CdXR0b25Nb2R1bGUsXHJcbiAgICBTaW1wbGVHcmlkTW9kdWxlLFxyXG4gICAgSW1hZ2VNb2R1bGUsXHJcbiAgICBJbnB1dFRleHRNb2R1bGUsXHJcbiAgICBTZW5kTWV0aG9kRGlhbG9nTW9kdWxlLFxyXG4gICAgSWNvbk1vZHVsZSxcclxuICAgIElucHV0TnVtYmVyUGlja2VyTW9kdWxlLFxyXG4gICAgQ29EaWFsb2dXaXphcmRNb2R1bGUsXHJcbiAgICBJbnB1dFRleHRhcmVhTW9kdWxlLFxyXG4gICAgVGFiQmFyTW9kdWxlLFxyXG4gICAgQ29EaWFsb2dNb2R1bGUsXHJcbiAgICBTdGF0dXNiYXJNb2R1bGUsXHJcbiAgICBTdG9ja1N0YXR1c2Jhck1vZHVsZSxcclxuICAgIExpc3RPZlZhbHVlc01vZHVsZSxcclxuICAgIExvY2FsaXphdGlvbk1vZHVsZSxcclxuICAgIFBvcHVwTW9kdWxlXHJcbiAgXSxcclxuICBkZWNsYXJhdGlvbnM6IFtcclxuICAgIFN0b2NrQ29tcG9uZW50LFxyXG4gICAgU3RvY2tJbmZvcm1hdGlvbkNvbXBvbmVudCxcclxuICAgIFN0b2NrSW5mb3JtYXRpb25HcmlkQ29tcG9uZW50LFxyXG4gICAgU3RvY2tUcmFuc2ZlckNvbXBvbmVudCxcclxuICAgIFN0b2NrQ2hhbmdlQW1vdW50Q29tcG9uZW50LFxyXG4gICAgU3RvY2tUYWJDb21wb25lbnQsXHJcbiAgICBPcmRlclRhYkNvbXBvbmVudCxcclxuICAgIFN0b2NrVGFic0NvbXBvbmVudCxcclxuICAgIFN0b2NrSGlzdG9yeVRhYnNDb21wb25lbnQsXHJcbiAgICBPcmRlclN0b2NrVGFiQ29tcG9uZW50LFxyXG4gICAgU3RvY2tMb2NhdGlvbkNvbXBvbmVudCxcclxuICAgIFN0b2NrSGlzdG9yeUNvbXBvbmVudCxcclxuICAgIE9yZGVyU3VwcGx5U3RvY2tIaXN0b3J5Q29tcG9uZW50LFxyXG4gICAgT3JkZXJDb21taXNzaW9uU3RvY2tIaXN0b3J5Q29tcG9uZW50LFxyXG4gICAgT3JkZXJTdG9ja0hpc3RvcnlDb21wb25lbnQsXHJcbiAgICBBbGxvY2F0aW9uU3RvY2tIaXN0b3J5Q29tcG9uZW50LFxyXG4gICAgU3RvY2tQcm9nbm9zZUNvbXBvbmVudCxcclxuICAgIFN0b2NrTG9jYXRpb25Qb3B1cENvbXBvbmVudFxyXG4gIF0sXHJcbiAgZXhwb3J0czogW1xyXG4gICAgU3RvY2tDb21wb25lbnRcclxuICBdLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAgU3RvY2tTZXJ2aWNlLFxyXG4gICAgTG9jYWxpemVTZXJ2aWNlXHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU3RvY2tNb2R1bGUge1xyXG59XHJcbiJdfQ==
83
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvY2subW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvc3RvY2svc3RvY2subW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBQ2pELE9BQU8sRUFDTCxZQUFZLEVBQ1osY0FBYyxFQUNkLG9CQUFvQixFQUNwQixVQUFVLEVBQ1YsV0FBVyxFQUNYLHVCQUF1QixFQUN2QixzQkFBc0IsRUFDdEIsbUJBQW1CLEVBQ25CLGVBQWUsRUFDZixrQkFBa0IsRUFDbEIsZ0JBQWdCLEVBQ2hCLFdBQVcsRUFBRSxxQkFBcUIsR0FDbkMsTUFBTSw4QkFBOEIsQ0FBQztBQUN0QyxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0saURBQWlELENBQUM7QUFDMUYsT0FBTyxFQUFDLDZCQUE2QixFQUFDLE1BQU0sMkRBQTJELENBQUM7QUFDeEcsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBQ3pELE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLDJDQUEyQyxDQUFDO0FBQ2pGLE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLGlEQUFpRCxDQUFDO0FBQ3ZGLE9BQU8sRUFBQywwQkFBMEIsRUFBQyxNQUFNLGdEQUFnRCxDQUFDO0FBQzFGLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLDRDQUE0QyxDQUFDO0FBQzdFLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLDRDQUE0QyxDQUFDO0FBQzdFLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBQ3JFLE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLG1EQUFtRCxDQUFDO0FBQzVGLE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLHdEQUF3RCxDQUFDO0FBQzlGLE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLHNEQUFzRCxDQUFDO0FBQzVGLE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLG9EQUFvRCxDQUFDO0FBQ3pGLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUN2RCxPQUFPLEVBQ0wsZ0NBQWdDLEVBQ2pDLE1BQU0sOEVBQThFLENBQUM7QUFDdEYsT0FBTyxFQUNMLG9DQUFvQyxFQUNyQyxNQUFNLHNGQUFzRixDQUFDO0FBQzlGLE9BQU8sRUFBQywwQkFBMEIsRUFBQyxNQUFNLGdFQUFnRSxDQUFDO0FBQzFHLE9BQU8sRUFDTCwrQkFBK0IsRUFDaEMsTUFBTSwwRUFBMEUsQ0FBQztBQUNsRixPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sK0JBQStCLENBQUM7QUFDOUQsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFDL0UsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sc0RBQXNELENBQUM7QUFDNUYsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sd0NBQXdDLENBQUM7QUFDMUUsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ3BFLE9BQU8sRUFDTCwyQkFBMkIsRUFDNUIsTUFBTSw0RkFBNEYsQ0FBQztBQW9EcEcsTUFBTSxPQUFPLFdBQVc7OztZQWxEdkIsUUFBUSxTQUFDO2dCQUNSLE9BQU8sRUFBRTtvQkFDUCxZQUFZO29CQUNaLFlBQVk7b0JBQ1osc0JBQXNCO29CQUN0QixnQkFBZ0I7b0JBQ2hCLFdBQVc7b0JBQ1gsZUFBZTtvQkFDZixzQkFBc0I7b0JBQ3RCLFVBQVU7b0JBQ1YsdUJBQXVCO29CQUN2QixvQkFBb0I7b0JBQ3BCLG1CQUFtQjtvQkFDbkIsWUFBWTtvQkFDWixjQUFjO29CQUNkLGVBQWU7b0JBQ2Ysb0JBQW9CO29CQUNwQixrQkFBa0I7b0JBQ2xCLGtCQUFrQjtvQkFDbEIsV0FBVztvQkFDWCxxQkFBcUI7aUJBQ3RCO2dCQUNELFlBQVksRUFBRTtvQkFDWixjQUFjO29CQUNkLHlCQUF5QjtvQkFDekIsNkJBQTZCO29CQUM3QixzQkFBc0I7b0JBQ3RCLDBCQUEwQjtvQkFDMUIsaUJBQWlCO29CQUNqQixpQkFBaUI7b0JBQ2pCLGtCQUFrQjtvQkFDbEIseUJBQXlCO29CQUN6QixzQkFBc0I7b0JBQ3RCLHNCQUFzQjtvQkFDdEIscUJBQXFCO29CQUNyQixnQ0FBZ0M7b0JBQ2hDLG9DQUFvQztvQkFDcEMsMEJBQTBCO29CQUMxQiwrQkFBK0I7b0JBQy9CLHNCQUFzQjtvQkFDdEIsMkJBQTJCO2lCQUM1QjtnQkFDRCxPQUFPLEVBQUU7b0JBQ1AsY0FBYztpQkFDZjtnQkFDRCxTQUFTLEVBQUU7b0JBQ1QsWUFBWTtvQkFDWixlQUFlO2lCQUNoQjthQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7U3RvY2tDb21wb25lbnR9IGZyb20gJy4vc3RvY2suY29tcG9uZW50JztcclxuaW1wb3J0IHtcclxuICBCdXR0b25Nb2R1bGUsXHJcbiAgQ29EaWFsb2dNb2R1bGUsXHJcbiAgQ29EaWFsb2dXaXphcmRNb2R1bGUsXHJcbiAgSWNvbk1vZHVsZSxcclxuICBJbWFnZU1vZHVsZSxcclxuICBJbnB1dE51bWJlclBpY2tlck1vZHVsZSxcclxuICBJbnB1dFJhZGlvQnV0dG9uTW9kdWxlLFxyXG4gIElucHV0VGV4dGFyZWFNb2R1bGUsXHJcbiAgSW5wdXRUZXh0TW9kdWxlLFxyXG4gIExpc3RPZlZhbHVlc01vZHVsZSxcclxuICBTaW1wbGVHcmlkTW9kdWxlLFxyXG4gIFBvcHVwTW9kdWxlLCBJbnB1dERhdGVQaWNrZXJNb2R1bGUsXHJcbn0gZnJvbSAnQGNvbGlqbml0L2NvcmVjb21wb25lbnRzX3YxMic7XHJcbmltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQge1N0b2NrSW5mb3JtYXRpb25Db21wb25lbnR9IGZyb20gJy4vc3RvY2staW5mb3JtYXRpb24vc3RvY2staW5mb3JtYXRpb24uY29tcG9uZW50JztcclxuaW1wb3J0IHtTdG9ja0luZm9ybWF0aW9uR3JpZENvbXBvbmVudH0gZnJvbSAnLi9zdG9jay1pbmZvcm1hdGlvbi1ncmlkL3N0b2NrLWluZm9ybWF0aW9uLWdyaWQuY29tcG9uZW50JztcclxuaW1wb3J0IHtTdG9ja1NlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2Uvc3RvY2suc2VydmljZSc7XHJcbmltcG9ydCB7U3RvY2tUcmFuc2ZlckNvbXBvbmVudH0gZnJvbSAnLi9zdG9jay10cmFuc2Zlci9zdG9jay10cmFuc2Zlci5jb21wb25lbnQnO1xyXG5pbXBvcnQge1NlbmRNZXRob2REaWFsb2dNb2R1bGV9IGZyb20gJy4uL3NlbmQtbWV0aG9kLWRpYWxvZy9zZW5kLW1ldGhvZC1kaWFsb2cubW9kdWxlJztcclxuaW1wb3J0IHtTdG9ja0NoYW5nZUFtb3VudENvbXBvbmVudH0gZnJvbSAnLi9zdG9jay10cmFuc2Zlci9zdG9jay1jaGFuZ2UtYW1vdW50LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7U3RvY2tUYWJDb21wb25lbnR9IGZyb20gJy4vY29tcG9uZW50cy9zdG9jay10YWIvc3RvY2stdGFiLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7T3JkZXJUYWJDb21wb25lbnR9IGZyb20gJy4vY29tcG9uZW50cy9vcmRlci10YWIvb3JkZXItdGFiLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7U3RvY2tUYWJzQ29tcG9uZW50fSBmcm9tICcuL3N0b2NrLXRhYnMvc3RvY2stdGFicy5jb21wb25lbnQnO1xyXG5pbXBvcnQge1N0b2NrSGlzdG9yeVRhYnNDb21wb25lbnR9IGZyb20gJy4vc3RvY2staGlzdG9yeS10YWJzL3N0b2NrLWhpc3RvcnktdGFicy5jb21wb25lbnQnO1xyXG5pbXBvcnQge09yZGVyU3RvY2tUYWJDb21wb25lbnR9IGZyb20gJy4vY29tcG9uZW50cy9vcmRlci1zdG9jay10YWIvb3JkZXItc3RvY2stdGFiLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7U3RvY2tMb2NhdGlvbkNvbXBvbmVudH0gZnJvbSAnLi9jb21wb25lbnRzL3N0b2NrLWxvY2F0aW9uL3N0b2NrLWxvY2F0aW9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7U3RvY2tIaXN0b3J5Q29tcG9uZW50fSBmcm9tICcuL2NvbXBvbmVudHMvc3RvY2staGlzdG9yeS9zdG9jay1oaXN0b3J5LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7VGFiQmFyTW9kdWxlfSBmcm9tICcuLi90YWItYmFyL3RhYi1iYXIubW9kdWxlJztcclxuaW1wb3J0IHtcclxuICBPcmRlclN1cHBseVN0b2NrSGlzdG9yeUNvbXBvbmVudFxyXG59IGZyb20gJy4vY29tcG9uZW50cy9vcmRlci1zdXBwbHktc3RvY2staGlzdG9yeS9vcmRlci1zdXBwbHktc3RvY2staGlzdG9yeS5jb21wb25lbnQnO1xyXG5pbXBvcnQge1xyXG4gIE9yZGVyQ29tbWlzc2lvblN0b2NrSGlzdG9yeUNvbXBvbmVudFxyXG59IGZyb20gJy4vY29tcG9uZW50cy9vcmRlci1jb21taXNzaW9uLXN0b2NrLWhpc3Rvcnkvb3JkZXItY29tbWlzc2lvbi1zdG9jay1oaXN0b3J5LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7T3JkZXJTdG9ja0hpc3RvcnlDb21wb25lbnR9IGZyb20gJy4vY29tcG9uZW50cy9vcmRlci1zdG9jay1oaXN0b3J5L29yZGVyLXN0b2NrLWhpc3RvcnkuY29tcG9uZW50JztcclxuaW1wb3J0IHtcclxuICBBbGxvY2F0aW9uU3RvY2tIaXN0b3J5Q29tcG9uZW50XHJcbn0gZnJvbSAnLi9jb21wb25lbnRzL2FsbG9jYXRpb24tc3RvY2staGlzdG9yeS9hbGxvY2F0aW9uLXN0b2NrLWhpc3RvcnkuY29tcG9uZW50JztcclxuaW1wb3J0IHtTdGF0dXNiYXJNb2R1bGV9IGZyb20gJy4uL3N0YXR1c2Jhci9zdGF0dXNiYXIubW9kdWxlJztcclxuaW1wb3J0IHtTdG9ja1N0YXR1c2Jhck1vZHVsZX0gZnJvbSAnLi4vc3RvY2stc3RhdHVzYmFyL3N0b2NrLXN0YXR1c2Jhci5tb2R1bGUnO1xyXG5pbXBvcnQge1N0b2NrUHJvZ25vc2VDb21wb25lbnR9IGZyb20gJy4vY29tcG9uZW50cy9zdG9jay1wcm9nbm9zZS9zdG9jay1wcm9nbm9zZS5jb21wb25lbnQnO1xyXG5pbXBvcnQge0xvY2FsaXphdGlvbk1vZHVsZX0gZnJvbSAnLi4vLi4vbG9jYWxpemF0aW9uL2xvY2FsaXphdGlvbi5tb2R1bGUnO1xyXG5pbXBvcnQge0xvY2FsaXplU2VydmljZX0gZnJvbSAnLi4vLi4vbG9jYWxpemF0aW9uL2xvY2FsaXplLnNlcnZpY2UnO1xyXG5pbXBvcnQge1xyXG4gIFN0b2NrTG9jYXRpb25Qb3B1cENvbXBvbmVudFxyXG59IGZyb20gXCIuL2NvbXBvbmVudHMvc3RvY2stbG9jYXRpb24vY29tcG9uZW50cy9zdG9jay1sb2NhdGlvbi1wb3B1cC9zdG9jay1sb2NhdGlvbi1wb3B1cC5jb21wb25lbnRcIjtcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgaW1wb3J0czogW1xyXG4gICAgQnV0dG9uTW9kdWxlLFxyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgSW5wdXRSYWRpb0J1dHRvbk1vZHVsZSxcclxuICAgIFNpbXBsZUdyaWRNb2R1bGUsXHJcbiAgICBJbWFnZU1vZHVsZSxcclxuICAgIElucHV0VGV4dE1vZHVsZSxcclxuICAgIFNlbmRNZXRob2REaWFsb2dNb2R1bGUsXHJcbiAgICBJY29uTW9kdWxlLFxyXG4gICAgSW5wdXROdW1iZXJQaWNrZXJNb2R1bGUsXHJcbiAgICBDb0RpYWxvZ1dpemFyZE1vZHVsZSxcclxuICAgIElucHV0VGV4dGFyZWFNb2R1bGUsXHJcbiAgICBUYWJCYXJNb2R1bGUsXHJcbiAgICBDb0RpYWxvZ01vZHVsZSxcclxuICAgIFN0YXR1c2Jhck1vZHVsZSxcclxuICAgIFN0b2NrU3RhdHVzYmFyTW9kdWxlLFxyXG4gICAgTGlzdE9mVmFsdWVzTW9kdWxlLFxyXG4gICAgTG9jYWxpemF0aW9uTW9kdWxlLFxyXG4gICAgUG9wdXBNb2R1bGUsXHJcbiAgICBJbnB1dERhdGVQaWNrZXJNb2R1bGVcclxuICBdLFxyXG4gIGRlY2xhcmF0aW9uczogW1xyXG4gICAgU3RvY2tDb21wb25lbnQsXHJcbiAgICBTdG9ja0luZm9ybWF0aW9uQ29tcG9uZW50LFxyXG4gICAgU3RvY2tJbmZvcm1hdGlvbkdyaWRDb21wb25lbnQsXHJcbiAgICBTdG9ja1RyYW5zZmVyQ29tcG9uZW50LFxyXG4gICAgU3RvY2tDaGFuZ2VBbW91bnRDb21wb25lbnQsXHJcbiAgICBTdG9ja1RhYkNvbXBvbmVudCxcclxuICAgIE9yZGVyVGFiQ29tcG9uZW50LFxyXG4gICAgU3RvY2tUYWJzQ29tcG9uZW50LFxyXG4gICAgU3RvY2tIaXN0b3J5VGFic0NvbXBvbmVudCxcclxuICAgIE9yZGVyU3RvY2tUYWJDb21wb25lbnQsXHJcbiAgICBTdG9ja0xvY2F0aW9uQ29tcG9uZW50LFxyXG4gICAgU3RvY2tIaXN0b3J5Q29tcG9uZW50LFxyXG4gICAgT3JkZXJTdXBwbHlTdG9ja0hpc3RvcnlDb21wb25lbnQsXHJcbiAgICBPcmRlckNvbW1pc3Npb25TdG9ja0hpc3RvcnlDb21wb25lbnQsXHJcbiAgICBPcmRlclN0b2NrSGlzdG9yeUNvbXBvbmVudCxcclxuICAgIEFsbG9jYXRpb25TdG9ja0hpc3RvcnlDb21wb25lbnQsXHJcbiAgICBTdG9ja1Byb2dub3NlQ29tcG9uZW50LFxyXG4gICAgU3RvY2tMb2NhdGlvblBvcHVwQ29tcG9uZW50XHJcbiAgXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBTdG9ja0NvbXBvbmVudFxyXG4gIF0sXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICBTdG9ja1NlcnZpY2UsXHJcbiAgICBMb2NhbGl6ZVNlcnZpY2VcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTdG9ja01vZHVsZSB7XHJcbn1cclxuIl19
@@ -0,0 +1,270 @@
1
+ import { __awaiter, __decorate } from "tslib";
2
+ import { Component, EventEmitter, forwardRef, HostBinding, Input, Output, ViewChild } from "@angular/core";
3
+ import { CoreDialogService, FormComponent } from "@colijnit/corecomponents_v12";
4
+ import { Activity } from "@colijnit/mainapi/build/model/activity.bo";
5
+ import { InputBoolean } from "../../decorator/input-boolean.decorator";
6
+ import { Icon } from "../../enum/icon.enum";
7
+ import { DictionaryService } from "../../service/dictionary.service";
8
+ import { BusinessObjectFactory } from "@colijnit/ioneconnector/build/service/business-object-factory";
9
+ import { IconCacheService } from "../../service/icon-cache.service";
10
+ import { AppPopupButtonType } from "../../enum/app-button-type.enum";
11
+ import { ModifyTaskFormComponent } from "../modify-task-form/modify-task-form.component";
12
+ import { SharedService } from "../../service/shared.service";
13
+ export class TaskModifierComponent {
14
+ constructor(_dialogService, _boFactory, _dictionary, iconService, sharedService) {
15
+ this._dialogService = _dialogService;
16
+ this._boFactory = _boFactory;
17
+ this._dictionary = _dictionary;
18
+ this.iconService = iconService;
19
+ this.sharedService = sharedService;
20
+ this.icons = Icon;
21
+ this.editingComplete = new EventEmitter();
22
+ this.activitySaved = new EventEmitter();
23
+ this.activityDeleted = new EventEmitter();
24
+ this.closedWithoutComplete = new EventEmitter();
25
+ this.showWorkLog = new EventEmitter();
26
+ this.taskCreated = new EventEmitter();
27
+ this.taskModified = new EventEmitter();
28
+ this.showAfterInsert = false;
29
+ this.showNewForm = false;
30
+ this.showModificationForm = false;
31
+ this.taskEditting = false;
32
+ this.Icon = Icon;
33
+ }
34
+ get readonly() {
35
+ //return this.moduleService.readonly &&
36
+ return false;
37
+ }
38
+ showClass() {
39
+ return true;
40
+ }
41
+ get showForm() {
42
+ return this.showNewForm || this.showModificationForm;
43
+ }
44
+ get header() {
45
+ return (this.showModificationForm) ? "TASK" : "ADD_TASK2";
46
+ }
47
+ get subHeader() {
48
+ return this.currentActivity ? this.currentActivity.task.taskId + "" : "";
49
+ }
50
+ get subSubHeader() {
51
+ var _a, _b, _c, _d, _e, _f;
52
+ if (((_b = (_a = this.currentActivity) === null || _a === void 0 ? void 0 : _a.task) === null || _b === void 0 ? void 0 : _b.lastModifiedBy) && ((_d = (_c = this.currentActivity) === null || _c === void 0 ? void 0 : _c.task) === null || _d === void 0 ? void 0 : _d.lastModifiedDate)) {
53
+ const label = this._dictionary.get('LAST_CHANGE');
54
+ const lastModifiedBy = (_e = this.currentActivity.task) === null || _e === void 0 ? void 0 : _e.lastModifiedDisplayName;
55
+ const lastModifiedDate = (_f = this.currentActivity.task) === null || _f === void 0 ? void 0 : _f.lastModifiedDate.toLocaleString();
56
+ return label + ': ' + lastModifiedBy + ' | ' + lastModifiedDate;
57
+ }
58
+ return "";
59
+ }
60
+ get subHeaderLink() {
61
+ if (this.showModificationForm && this.currentActivity && this.currentActivity.task) {
62
+ if (this.currentActivity.task.workflowCategory && this.currentActivity.task.reference) {
63
+ let activityName;
64
+ activityName = this._dictionary.get("WORKFLOW_CATEGORY_" + this.currentActivity.task.workflowCategory) + " " + this.currentActivity.task.reference + ")";
65
+ return activityName;
66
+ }
67
+ }
68
+ return "";
69
+ }
70
+ get userIsTaskReporter() {
71
+ return this.editActivity &&
72
+ ((this.editActivity.task.reporterUserGroupId && this.editActivity.task.reporterUserGroupId === this.userGroupId) ||
73
+ (this.editActivity.task.reporter && this.editActivity.task.reporter.relationId === this.relationId));
74
+ }
75
+ ngOnDestroy() {
76
+ }
77
+ handleSaveForm() {
78
+ this.mainForm.submit();
79
+ }
80
+ onValid() {
81
+ return __awaiter(this, void 0, void 0, function* () {
82
+ if (this.editActivity) {
83
+ const newActivity = this.editActivity.isNew;
84
+ const result = yield this.sharedService.updateActivity(this.editActivity);
85
+ if (result) {
86
+ this.activitySaved.next(this.editActivity);
87
+ this.editingComplete.next(this.editActivity);
88
+ if (newActivity) {
89
+ this.taskCreated.next(this.editActivity.task);
90
+ }
91
+ else {
92
+ this.taskModified.next(this.editActivity.task);
93
+ }
94
+ if (this.showAfterInsert) {
95
+ this.startModifyingTask(this.editActivity);
96
+ }
97
+ }
98
+ this.hide();
99
+ }
100
+ });
101
+ }
102
+ handleCancelForm() {
103
+ this._createClone();
104
+ //TODO: is this needed?
105
+ //this.moduleService.cancelEdit();
106
+ this.closedWithoutComplete.next(true);
107
+ this.hide();
108
+ }
109
+ onPopupClose() {
110
+ this.forceReadonly = false;
111
+ this.hide();
112
+ this.closedWithoutComplete.next(true);
113
+ }
114
+ //TODO figure out routing from external component
115
+ /*public openReferenceInModule(): void {
116
+ if (this.currentActivity && this.currentActivity.task) {
117
+ if (this.currentActivity.task.workflowCategory === WorkflowCategoryType.AbsenceFile || this.currentActivity.task.workflowCategory === WorkflowCategoryType.PreventiveAbsenceFile) {
118
+ this._appNavigator.navigateToIOneModule(IOneModuleName.AbsenceFile, this.currentActivity.task.referenceId);
119
+ }
120
+ }
121
+
122
+ }*/
123
+ hide() {
124
+ this.showNewForm = false;
125
+ this.showModificationForm = false;
126
+ }
127
+ deleteTask() {
128
+ return __awaiter(this, void 0, void 0, function* () {
129
+ const doDelete = yield this._dialogService.showYesNo("DELETE_TASK", "DELETE_TASK", false);
130
+ if (doDelete.button === AppPopupButtonType.Yes) {
131
+ yield this.sharedService.deleteActivity(this.editActivity);
132
+ this.activityDeleted.next(this.editActivity);
133
+ this.hide();
134
+ }
135
+ });
136
+ }
137
+ createNewTask(standalone = true) {
138
+ return __awaiter(this, void 0, void 0, function* () {
139
+ if (this.showForm) {
140
+ return;
141
+ }
142
+ this.showAfterInsert = false;
143
+ this.currentActivity = yield this.createTaskOperation({ standalone: standalone, workflowCategory: this.workflowCategory, reference: this.reference, referenceId: this.referenceId });
144
+ this._createClone();
145
+ this.showNewForm = true;
146
+ });
147
+ }
148
+ startModifyingTask(activity) {
149
+ return __awaiter(this, void 0, void 0, function* () {
150
+ if (this.showForm || !activity.IsTask) {
151
+ return;
152
+ }
153
+ this.showAfterInsert = false;
154
+ yield this.sharedService.lockTask(activity.task.taskId);
155
+ activity.task = activity.task;
156
+ this.currentActivity = activity;
157
+ this._createClone();
158
+ this.showModificationForm = true;
159
+ });
160
+ }
161
+ startModifyingTaskAndWorkLog(activity) {
162
+ return __awaiter(this, void 0, void 0, function* () {
163
+ yield this.startModifyingTask(activity);
164
+ setTimeout(() => {
165
+ /*if (this.modifyTaskForm) {
166
+ this.modifyTaskForm.handleRegisterWork();
167
+ }*/
168
+ });
169
+ });
170
+ }
171
+ _createClone() {
172
+ this.editActivity = this._boFactory.makeWithRawBackendData(Activity, this.currentActivity);
173
+ }
174
+ doHandleStatusChange(editting) {
175
+ this.taskEditting = editting;
176
+ }
177
+ updateEditActivity(activity) {
178
+ this.editActivity = this._boFactory.makeWithRawBackendData(Activity, activity);
179
+ }
180
+ }
181
+ TaskModifierComponent.decorators = [
182
+ { type: Component, args: [{
183
+ selector: "co-task-modifier",
184
+ template: `
185
+ <co-dialog *ngIf="showForm"
186
+ (closeClick)="onPopupClose()"
187
+ class="task-popup"
188
+ cssId="task_modifier_popup"
189
+ noClickOutside contentSize>
190
+ <!--
191
+ [header]="header"
192
+ [subHeader]="subHeader"
193
+ [subHeaderLink]="subHeaderLink"
194
+ [subSubHeader]="subSubHeader"
195
+ [headerIcon]="icons.Task"
196
+ (openLink)="openReferenceInModule()"-->
197
+ <!-- <ng-template>-->
198
+ <div class="popup-wrapper"
199
+ [ngClass]="(showNewForm) ? 'new-task-popup' : ''">
200
+ <div class="form-wrapper mini-scrollbar">
201
+ <co-form #mainForm (validSubmit)="onValid()">
202
+ <!--
203
+ <new-task-form *ngIf="showNewForm" [activity]="editActivity" [myCfgNames]="taskCfgNames" [taskKey]="referenceId" [taskWorkflowCategory]="workflowCategory"></new-task-form>
204
+ -->
205
+ <co-modify-task-form #modifyTaskForm *ngIf="showModificationForm"
206
+ [activity]="editActivity"
207
+ [readonly]="readonly"
208
+ [popupContext]="true"
209
+ (statusChange)="doHandleStatusChange($event)"
210
+ (showWorkLog)="showWorkLog.emit()"
211
+ (activityChange)="updateEditActivity($event)"
212
+ ></co-modify-task-form>
213
+ </co-form>
214
+ </div>
215
+ </div>
216
+ <div class="popup-buttons" fxLayout="column">
217
+ <div *ngIf="showNewForm" fxLayout="row" class="popup-thumb">
218
+ <span [textContent]="'SHOW_AFTER_INSERT' | localize"></span>
219
+ <!-- <thumb [(active)]=showAfterInsert"></thumb>-->
220
+ </div>
221
+ <div class="ok-cancel-buttons">
222
+ <div class="button-left">
223
+ <co-button [disabled]="readonly || taskEditting" [textContent]="'SAVE' | localize" (click)="handleSaveForm()"></co-button>
224
+ </div>
225
+ <div class="button-middle">
226
+ <co-button *ngIf="showNewForm" [textContent]="'CANCEL' | localize" (click)="handleCancelForm()"></co-button>
227
+ </div>
228
+ <div class="button-right">
229
+ <co-button *ngIf="showModificationForm && !readonly"
230
+ [iconData]="iconService.getIcon(icons.Trashbin)" class="delete light"
231
+ [disabled]="readonly || taskEditting"
232
+ (click)="deleteTask()"></co-button>
233
+ </div>
234
+ </div>
235
+ </div>
236
+ <!-- </ng-template>-->
237
+ </co-dialog>
238
+ `
239
+ },] }
240
+ ];
241
+ TaskModifierComponent.ctorParameters = () => [
242
+ { type: CoreDialogService },
243
+ { type: BusinessObjectFactory },
244
+ { type: DictionaryService },
245
+ { type: IconCacheService },
246
+ { type: SharedService }
247
+ ];
248
+ TaskModifierComponent.propDecorators = {
249
+ mainForm: [{ type: ViewChild, args: [FormComponent,] }],
250
+ modifyTaskForm: [{ type: ViewChild, args: [forwardRef(() => ModifyTaskFormComponent),] }],
251
+ workflowCategory: [{ type: Input }],
252
+ reference: [{ type: Input }],
253
+ referenceId: [{ type: Input }],
254
+ userGroupId: [{ type: Input }],
255
+ relationId: [{ type: Input }],
256
+ createTaskOperation: [{ type: Input }],
257
+ forceReadonly: [{ type: Input }],
258
+ editingComplete: [{ type: Output }],
259
+ activitySaved: [{ type: Output }],
260
+ activityDeleted: [{ type: Output }],
261
+ closedWithoutComplete: [{ type: Output }],
262
+ showWorkLog: [{ type: Output }],
263
+ taskCreated: [{ type: Output }],
264
+ taskModified: [{ type: Output }],
265
+ showClass: [{ type: HostBinding, args: ["class.co-task-modifier",] }]
266
+ };
267
+ __decorate([
268
+ InputBoolean()
269
+ ], TaskModifierComponent.prototype, "forceReadonly", void 0);
270
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFzay1tb2RpZmllci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWRjb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy90YXNrLW1vZGlmeWVyL3Rhc2stbW9kaWZpZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBYSxNQUFNLEVBQUUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3BILE9BQU8sRUFDTCxpQkFBaUIsRUFFakIsYUFBYSxFQUNkLE1BQU0sOEJBQThCLENBQUM7QUFDdEMsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLDJDQUEyQyxDQUFDO0FBQ25FLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUVyRSxPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDMUMsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDbkUsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sK0RBQStELENBQUM7QUFJcEcsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDbEUsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFDbkUsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sZ0RBQWdELENBQUM7QUFDdkYsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBNkQzRCxNQUFNLE9BQU8scUJBQXFCO0lBaUg5QixZQUNZLGNBQWlDLEVBQ2pDLFVBQWlDLEVBQ3hCLFdBQThCLEVBQ3hDLFdBQTZCLEVBQzFCLGFBQTRCO1FBSjlCLG1CQUFjLEdBQWQsY0FBYyxDQUFtQjtRQUNqQyxlQUFVLEdBQVYsVUFBVSxD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SG9zdEJpbmRpbmcsIElucHV0LCBPbkRlc3Ryb3ksIE91dHB1dCwgVmlld0NoaWxkfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge1xyXG4gIENvcmVEaWFsb2dTZXJ2aWNlLFxyXG4gIERpYWxvZ1Jlc3BvbnNlSW50ZXJmYWNlLFxyXG4gIEZvcm1Db21wb25lbnRcclxufSBmcm9tIFwiQGNvbGlqbml0L2NvcmVjb21wb25lbnRzX3YxMlwiO1xyXG5pbXBvcnQge0FjdGl2aXR5fSBmcm9tIFwiQGNvbGlqbml0L21haW5hcGkvYnVpbGQvbW9kZWwvYWN0aXZpdHkuYm9cIjtcclxuaW1wb3J0IHtJbnB1dEJvb2xlYW59IGZyb20gXCIuLi8uLi9kZWNvcmF0b3IvaW5wdXQtYm9vbGVhbi5kZWNvcmF0b3JcIjtcclxuaW1wb3J0IHtXb3JrZmxvd0NhdGVnb3J5VHlwZX0gZnJvbSBcIkBjb2xpam5pdC9tYWluYXBpL2J1aWxkL2VudW0vd29ya2Zsb3ctY2F0ZWdvcnkuZW51bVwiO1xyXG5pbXBvcnQge0ljb259IGZyb20gXCIuLi8uLi9lbnVtL2ljb24uZW51bVwiO1xyXG5pbXBvcnQge0RpY3Rpb25hcnlTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vc2VydmljZS9kaWN0aW9uYXJ5LnNlcnZpY2VcIjtcclxuaW1wb3J0IHtCdXNpbmVzc09iamVjdEZhY3Rvcnl9IGZyb20gXCJAY29saWpuaXQvaW9uZWNvbm5lY3Rvci9idWlsZC9zZXJ2aWNlL2J1c2luZXNzLW9iamVjdC1mYWN0b3J5XCI7XHJcbmltcG9ydCB7T3BlcmF0aW9uQ2FsbGJhY2tTaW1wbGVGdW5jdGlvbn0gZnJvbSBcIi4uLy4uL2ludGVyZmFjZS9vcGVyYXRpb24tY2FsbGJhY2stc2ltcGxlLWZ1bmN0aW9uXCI7XHJcbmltcG9ydCB7VGFza30gZnJvbSBcIkBjb2xpam5pdC9tYWluYXBpL2J1aWxkL21vZGVsL3Rhc2suYm9cIjtcclxuaW1wb3J0IHtPcGVyYXRpb25DYWxsYmFja0FjdGl2aXR5fSBmcm9tIFwiLi4vLi4vaW50ZXJmYWNlL29wZXJhdGlvbi1jYWxsYmFjay1hY3Rpdml0eVwiO1xyXG5pbXBvcnQge0ljb25DYWNoZVNlcnZpY2V9IGZyb20gXCIuLi8uLi9zZXJ2aWNlL2ljb24tY2FjaGUuc2VydmljZVwiO1xyXG5pbXBvcnQge0FwcFBvcHVwQnV0dG9uVHlwZX0gZnJvbSBcIi4uLy4uL2VudW0vYXBwLWJ1dHRvbi10eXBlLmVudW1cIjtcclxuaW1wb3J0IHtNb2RpZnlUYXNrRm9ybUNvbXBvbmVudH0gZnJvbSBcIi4uL21vZGlmeS10YXNrLWZvcm0vbW9kaWZ5LXRhc2stZm9ybS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHtTaGFyZWRTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vc2VydmljZS9zaGFyZWQuc2VydmljZVwiO1xyXG5cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6IFwiY28tdGFzay1tb2RpZmllclwiLFxyXG4gICAgdGVtcGxhdGU6IGBcclxuICAgICAgICA8Y28tZGlhbG9nICAqbmdJZj1cInNob3dGb3JtXCJcclxuICAgICAgICAgICAgICAgICAgICAoY2xvc2VDbGljayk9XCJvblBvcHVwQ2xvc2UoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0YXNrLXBvcHVwXCJcclxuICAgICAgICAgICAgICAgICAgICBjc3NJZD1cInRhc2tfbW9kaWZpZXJfcG9wdXBcIlxyXG4gICAgICAgICAgICAgICAgICAgIG5vQ2xpY2tPdXRzaWRlIGNvbnRlbnRTaXplPlxyXG48IS0tXHJcbiAgICAgICAgICBbaGVhZGVyXT1cImhlYWRlclwiXHJcbiAgICAgICAgICBbc3ViSGVhZGVyXT1cInN1YkhlYWRlclwiXHJcbiAgICAgICAgICBbc3ViSGVhZGVyTGlua109XCJzdWJIZWFkZXJMaW5rXCJcclxuICAgICAgICAgIFtzdWJTdWJIZWFkZXJdPVwic3ViU3ViSGVhZGVyXCJcclxuICAgICAgICAgIFtoZWFkZXJJY29uXT1cImljb25zLlRhc2tcIlxyXG4gICAgICAgICAgKG9wZW5MaW5rKT1cIm9wZW5SZWZlcmVuY2VJbk1vZHVsZSgpXCItLT5cclxuICAgICAgPCEtLSAgICAgIDxuZy10ZW1wbGF0ZT4tLT5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwb3B1cC13cmFwcGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwiKHNob3dOZXdGb3JtKSA/ICduZXctdGFzay1wb3B1cCcgOiAnJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLXdyYXBwZXIgbWluaS1zY3JvbGxiYXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGNvLWZvcm0gI21haW5Gb3JtICh2YWxpZFN1Ym1pdCk9XCJvblZhbGlkKClcIj5cclxuPCEtLVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5ldy10YXNrLWZvcm0gKm5nSWY9XCJzaG93TmV3Rm9ybVwiIFthY3Rpdml0eV09XCJlZGl0QWN0aXZpdHlcIiBbbXlDZmdOYW1lc109XCJ0YXNrQ2ZnTmFtZXNcIiBbdGFza0tleV09XCJyZWZlcmVuY2VJZFwiIFt0YXNrV29ya2Zsb3dDYXRlZ29yeV09XCJ3b3JrZmxvd0NhdGVnb3J5XCI+PC9uZXctdGFzay1mb3JtPlxyXG4tLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjby1tb2RpZnktdGFzay1mb3JtICNtb2RpZnlUYXNrRm9ybSAqbmdJZj1cInNob3dNb2RpZmljYXRpb25Gb3JtXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthY3Rpdml0eV09XCJlZGl0QWN0aXZpdHlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtwb3B1cENvbnRleHRdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoc3RhdHVzQ2hhbmdlKT1cImRvSGFuZGxlU3RhdHVzQ2hhbmdlKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHNob3dXb3JrTG9nKT1cInNob3dXb3JrTG9nLmVtaXQoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoYWN0aXZpdHlDaGFuZ2UpPVwidXBkYXRlRWRpdEFjdGl2aXR5KCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvY28tbW9kaWZ5LXRhc2stZm9ybT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9jby1mb3JtPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicG9wdXAtYnV0dG9uc1wiIGZ4TGF5b3V0PVwiY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cInNob3dOZXdGb3JtXCIgZnhMYXlvdXQ9XCJyb3dcIiBjbGFzcz1cInBvcHVwLXRodW1iXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIFt0ZXh0Q29udGVudF09XCInU0hPV19BRlRFUl9JTlNFUlQnIHwgbG9jYWxpemVcIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgIDwhLS0gICAgICAgICA8dGh1bWIgWyhhY3RpdmUpXT1zaG93QWZ0ZXJJbnNlcnRcIj48L3RodW1iPi0tPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJvay1jYW5jZWwtYnV0dG9uc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJ1dHRvbi1sZWZ0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxjby1idXR0b24gW2Rpc2FibGVkXT1cInJlYWRvbmx5IHx8IHRhc2tFZGl0dGluZ1wiIFt0ZXh0Q29udGVudF09XCInU0FWRScgfCBsb2NhbGl6ZVwiIChjbGljayk9XCJoYW5kbGVTYXZlRm9ybSgpXCI+PC9jby1idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJidXR0b24tbWlkZGxlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxjby1idXR0b24gKm5nSWY9XCJzaG93TmV3Rm9ybVwiIFt0ZXh0Q29udGVudF09XCInQ0FOQ0VMJyB8IGxvY2FsaXplXCIgKGNsaWNrKT1cImhhbmRsZUNhbmNlbEZvcm0oKVwiPjwvY28tYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYnV0dG9uLXJpZ2h0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8Y28tYnV0dG9uICpuZ0lmPVwic2hvd01vZGlmaWNhdGlvbkZvcm0gJiYgIXJlYWRvbmx5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpY29uRGF0YV09XCJpY29uU2VydmljZS5nZXRJY29uKGljb25zLlRyYXNoYmluKVwiIGNsYXNzPVwiZGVsZXRlIGxpZ2h0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJyZWFkb25seSB8fCB0YXNrRWRpdHRpbmdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImRlbGV0ZVRhc2soKVwiPjwvY28tYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICA8IS0tIDwvbmctdGVtcGxhdGU+LS0+XHJcbiAgICAgICAgPC9jby1kaWFsb2c+XHJcbiAgICBgLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVGFza01vZGlmaWVyQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcclxuICAgIHB1YmxpYyByZWFkb25seSBpY29uczogdHlwZW9mIEljb24gPSBJY29uO1xyXG5cclxuICAgIEBWaWV3Q2hpbGQoRm9ybUNvbXBvbmVudClcclxuICAgIHB1YmxpYyBtYWluRm9ybTogRm9ybUNvbXBvbmVudDtcclxuXHJcbiAgICBAVmlld0NoaWxkKGZvcndhcmRSZWYoKCkgPT4gTW9kaWZ5VGFza0Zvcm1Db21wb25lbnQpKVxyXG4gICAgcHVibGljIG1vZGlmeVRhc2tGb3JtOiBNb2RpZnlUYXNrRm9ybUNvbXBvbmVudDtcclxuXHJcbiAgICBwdWJsaWMgZ2V0IHJlYWRvbmx5KCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIC8vcmV0dXJuIHRoaXMubW9kdWxlU2VydmljZS5yZWFkb25seSAmJlxyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4vKiAgICBASW5wdXQoKVxyXG4gICAgcHVibGljIHRhc2tDZmdOYW1lczogQWN0aXZpdGllc1Rhc2tDb25maWdOYW1lczsqL1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBwdWJsaWMgd29ya2Zsb3dDYXRlZ29yeTogV29ya2Zsb3dDYXRlZ29yeVR5cGU7XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyByZWZlcmVuY2U6IHN0cmluZztcclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgcHVibGljIHJlZmVyZW5jZUlkOiBzdHJpbmc7XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyB1c2VyR3JvdXBJZDogbnVtYmVyO1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBwdWJsaWMgcmVsYXRpb25JZDogbnVtYmVyO1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBwdWJsaWMgY3JlYXRlVGFza09wZXJhdGlvbjogT3BlcmF0aW9uQ2FsbGJhY2tBY3Rpdml0eTtcclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgQElucHV0Qm9vbGVhbigpXHJcbiAgICBwdWJsaWMgZm9yY2VSZWFkb25seTogYm9vbGVhbjtcclxuXHJcbiAgICBAT3V0cHV0KClcclxuICAgIHB1YmxpYyByZWFkb25seSBlZGl0aW5nQ29tcGxldGU6IEV2ZW50RW1pdHRlcjxBY3Rpdml0eT4gPSBuZXcgRXZlbnRFbWl0dGVyPEFjdGl2aXR5PigpO1xyXG5cclxuICAgIEBPdXRwdXQoKVxyXG4gICAgcHVibGljIHJlYWRvbmx5IGFjdGl2aXR5U2F2ZWQ6IEV2ZW50RW1pdHRlcjxBY3Rpdml0eT4gPSBuZXcgRXZlbnRFbWl0dGVyPEFjdGl2aXR5PigpO1xyXG5cclxuICAgIEBPdXRwdXQoKVxyXG4gICAgcHVibGljIHJlYWRvbmx5IGFjdGl2aXR5RGVsZXRlZDogRXZlbnRFbWl0dGVyPEFjdGl2aXR5PiA9IG5ldyBFdmVudEVtaXR0ZXI8QWN0aXZpdHk+KCk7XHJcblxyXG4gICAgQE91dHB1dCgpXHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgY2xvc2VkV2l0aG91dENvbXBsZXRlOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XHJcblxyXG4gICAgQE91dHB1dCgpXHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgc2hvd1dvcmtMb2c6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuXHJcbiAgICBAT3V0cHV0KClcclxuICAgIHB1YmxpYyByZWFkb25seSB0YXNrQ3JlYXRlZDogRXZlbnRFbWl0dGVyPFRhc2s+ID0gbmV3IEV2ZW50RW1pdHRlcjxUYXNrPigpO1xyXG5cclxuICAgIEBPdXRwdXQoKVxyXG4gICAgcHVibGljIHJlYWRvbmx5IHRhc2tNb2RpZmllZDogRXZlbnRFbWl0dGVyPFRhc2s+ID0gbmV3IEV2ZW50RW1pdHRlcjxUYXNrPigpO1xyXG5cclxuICBASG9zdEJpbmRpbmcoXCJjbGFzcy5jby10YXNrLW1vZGlmaWVyXCIpXHJcbiAgICBwdWJsaWMgc2hvd0NsYXNzKCkge1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0IHNob3dGb3JtKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLnNob3dOZXdGb3JtIHx8IHRoaXMuc2hvd01vZGlmaWNhdGlvbkZvcm07XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGdldCBoZWFkZXIoKTogc3RyaW5nIHtcclxuICAgICAgICByZXR1cm4gKHRoaXMuc2hvd01vZGlmaWNhdGlvbkZvcm0pID8gXCJUQVNLXCIgOiBcIkFERF9UQVNLMlwiO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXQgc3ViSGVhZGVyKCk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuY3VycmVudEFjdGl2aXR5ID8gdGhpcy5jdXJyZW50QWN0aXZpdHkudGFzay50YXNrSWQgKyBcIlwiIDogXCJcIjtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0IHN1YlN1YkhlYWRlcigpOiBzdHJpbmcge1xyXG4gICAgICAgIGlmICh0aGlzLmN1cnJlbnRBY3Rpdml0eT8udGFzaz8ubGFzdE1vZGlmaWVkQnkgJiYgdGhpcy5jdXJyZW50QWN0aXZpdHk/LnRhc2s/Lmxhc3RNb2RpZmllZERhdGUpIHtcclxuICAgICAgICAgICAgY29uc3QgbGFiZWwgPSB0aGlzLl9kaWN0aW9uYXJ5LmdldCgnTEFTVF9DSEFOR0UnKTtcclxuICAgICAgICAgICAgY29uc3QgbGFzdE1vZGlmaWVkQnk6IHN0cmluZyA9IHRoaXMuY3VycmVudEFjdGl2aXR5LnRhc2s/Lmxhc3RNb2RpZmllZERpc3BsYXlOYW1lO1xyXG4gICAgICAgICAgICBjb25zdCBsYXN0TW9kaWZpZWREYXRlOiBzdHJpbmcgPSB0aGlzLmN1cnJlbnRBY3Rpdml0eS50YXNrPy5sYXN0TW9kaWZpZWREYXRlLnRvTG9jYWxlU3RyaW5nKCk7XHJcblxyXG4gICAgICAgICAgICByZXR1cm4gbGFiZWwgKyAnOiAnICsgbGFzdE1vZGlmaWVkQnkgKyAnIHwgJyArIGxhc3RNb2RpZmllZERhdGU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBcIlwiO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXQgc3ViSGVhZGVyTGluaygpOiBzdHJpbmcge1xyXG4gICAgICAgIGlmICh0aGlzLnNob3dNb2RpZmljYXRpb25Gb3JtICYmIHRoaXMuY3VycmVudEFjdGl2aXR5ICYmIHRoaXMuY3VycmVudEFjdGl2aXR5LnRhc2spIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuY3VycmVudEFjdGl2aXR5LnRhc2sud29ya2Zsb3dDYXRlZ29yeSAmJiB0aGlzLmN1cnJlbnRBY3Rpdml0eS50YXNrLnJlZmVyZW5jZSkge1xyXG4gICAgICAgICAgICAgICAgbGV0IGFjdGl2aXR5TmFtZTogc3RyaW5nO1xyXG4gICAgICAgICAgICAgICAgYWN0aXZpdHlOYW1lID0gdGhpcy5fZGljdGlvbmFyeS5nZXQoXCJXT1JLRkxPV19DQVRFR09SWV9cIiArIHRoaXMuY3VycmVudEFjdGl2aXR5LnRhc2sud29ya2Zsb3dDYXRlZ29yeSkgKyBcIiBcIiArIHRoaXMuY3VycmVudEFjdGl2aXR5LnRhc2sucmVmZXJlbmNlICsgXCIpXCI7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gYWN0aXZpdHlOYW1lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBcIlwiO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXQgdXNlcklzVGFza1JlcG9ydGVyKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmVkaXRBY3Rpdml0eSAmJlxyXG4gICAgICAgICAgICAoKHRoaXMuZWRpdEFjdGl2aXR5LnRhc2sucmVwb3J0ZXJVc2VyR3JvdXBJZCAmJiB0aGlzLmVkaXRBY3Rpdml0eS50YXNrLnJlcG9ydGVyVXNlckdyb3VwSWQgPT09IHRoaXMudXNlckdyb3VwSWQpIHx8XHJcbiAgICAgICAgICAgICAgICAodGhpcy5lZGl0QWN0aXZpdHkudGFzay5yZXBvcnRlciAmJiB0aGlzLmVkaXRBY3Rpdml0eS50YXNrLnJlcG9ydGVyLnJlbGF0aW9uSWQgPT09IHRoaXMucmVsYXRpb25JZCkpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBzaG93QWZ0ZXJJbnNlcnQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIHB1YmxpYyBzaG93TmV3Rm9ybTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgcHVibGljIHNob3dNb2RpZmljYXRpb25Gb3JtOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBwdWJsaWMgY3VycmVudEFjdGl2aXR5OiBBY3Rpdml0eTtcclxuICAgIHB1YmxpYyBlZGl0QWN0aXZpdHk6IEFjdGl2aXR5O1xyXG5cclxuICAgIHB1YmxpYyB0YXNrRWRpdHRpbmc6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcml2YXRlIF9kaWFsb2dTZXJ2aWNlOiBDb3JlRGlhbG9nU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIF9ib0ZhY3Rvcnk6IEJ1c2luZXNzT2JqZWN0RmFjdG9yeSxcclxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IF9kaWN0aW9uYXJ5OiBEaWN0aW9uYXJ5U2VydmljZSxcclxuICAgICAgICBwdWJsaWMgaWNvblNlcnZpY2U6IEljb25DYWNoZVNlcnZpY2UsXHJcbiAgICAgICAgcHJvdGVjdGVkIHNoYXJlZFNlcnZpY2U6IFNoYXJlZFNlcnZpY2VcclxuICAgICkge1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBoYW5kbGVTYXZlRm9ybSgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLm1haW5Gb3JtLnN1Ym1pdCgpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBhc3luYyBvblZhbGlkKCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgICAgIGlmICh0aGlzLmVkaXRBY3Rpdml0eSkge1xyXG4gICAgICAgICAgICBjb25zdCBuZXdBY3Rpdml0eTogYm9vbGVhbiA9IHRoaXMuZWRpdEFjdGl2aXR5LmlzTmV3O1xyXG4gICAgICAgICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0aGlzLnNoYXJlZFNlcnZpY2UudXBkYXRlQWN0aXZpdHkodGhpcy5lZGl0QWN0aXZpdHkpO1xyXG4gICAgICAgICAgICBpZiAocmVzdWx0KVxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmFjdGl2aXR5U2F2ZWQubmV4dCh0aGlzLmVkaXRBY3Rpdml0eSk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmVkaXRpbmdDb21wbGV0ZS5uZXh0KHRoaXMuZWRpdEFjdGl2aXR5KTtcclxuICAgICAgICAgICAgICAgIGlmIChuZXdBY3Rpdml0eSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMudGFza0NyZWF0ZWQubmV4dCh0aGlzLmVkaXRBY3Rpdml0eS50YXNrKVxyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnRhc2tNb2RpZmllZC5uZXh0KHRoaXMuZWRpdEFjdGl2aXR5LnRhc2spO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuc2hvd0FmdGVySW5zZXJ0KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zdGFydE1vZGlmeWluZ1Rhc2sodGhpcy5lZGl0QWN0aXZpdHkpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0aGlzLmhpZGUoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGhhbmRsZUNhbmNlbEZvcm0oKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fY3JlYXRlQ2xvbmUoKTtcclxuICAgICAgICAvL1RPRE86IGlzIHRoaXMgbmVlZGVkP1xyXG4gICAgICAgIC8vdGhpcy5tb2R1bGVTZXJ2aWNlLmNhbmNlbEVkaXQoKTtcclxuICAgICAgICB0aGlzLmNsb3NlZFdpdGhvdXRDb21wbGV0ZS5uZXh0KHRydWUpO1xyXG4gICAgICAgIHRoaXMuaGlkZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBvblBvcHVwQ2xvc2UoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5mb3JjZVJlYWRvbmx5ID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5oaWRlKCk7XHJcbiAgICAgICAgdGhpcy5jbG9zZWRXaXRob3V0Q29tcGxldGUubmV4dCh0cnVlKTtcclxuICAgIH1cclxuXHJcbiAgICAvL1RPRE8gZmlndXJlIG91dCByb3V0aW5nIGZyb20gZXh0ZXJuYWwgY29tcG9uZW50XHJcbiAgICAvKnB1YmxpYyBvcGVuUmVmZXJlbmNlSW5Nb2R1bGUoKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHRoaXMuY3VycmVudEFjdGl2aXR5ICYmIHRoaXMuY3VycmVudEFjdGl2aXR5LnRhc2spIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuY3VycmVudEFjdGl2aXR5LnRhc2sud29ya2Zsb3dDYXRlZ29yeSA9PT0gV29ya2Zsb3dDYXRlZ29yeVR5cGUuQWJzZW5jZUZpbGUgfHwgdGhpcy5jdXJyZW50QWN0aXZpdHkudGFzay53b3JrZmxvd0NhdGVnb3J5ID09PSBXb3JrZmxvd0NhdGVnb3J5VHlwZS5QcmV2ZW50aXZlQWJzZW5jZUZpbGUpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuX2FwcE5hdmlnYXRvci5uYXZpZ2F0ZVRvSU9uZU1vZHVsZShJT25lTW9kdWxlTmFtZS5BYnNlbmNlRmlsZSwgdGhpcy5jdXJyZW50QWN0aXZpdHkudGFzay5yZWZlcmVuY2VJZCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgfSovXHJcblxyXG4gICAgcHVibGljIGhpZGUoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5zaG93TmV3Rm9ybSA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuc2hvd01vZGlmaWNhdGlvbkZvcm0gPSBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgYXN5bmMgZGVsZXRlVGFzaygpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgICAgICBjb25zdCBkb0RlbGV0ZTogRGlhbG9nUmVzcG9uc2VJbnRlcmZhY2UgPSBhd2FpdCB0aGlzLl9kaWFsb2dTZXJ2aWNlLnNob3dZZXNObyhcIkRFTEVURV9UQVNLXCIsXCJERUxFVEVfVEFTS1wiLGZhbHNlKTtcclxuICAgICAgICBpZiAoZG9EZWxldGUuYnV0dG9uID09PSBBcHBQb3B1cEJ1dHRvblR5cGUuWWVzKSB7XHJcbiAgICAgICAgICAgIGF3YWl0IHRoaXMuc2hhcmVkU2VydmljZS5kZWxldGVBY3Rpdml0eSh0aGlzLmVkaXRBY3Rpdml0eSk7XHJcbiAgICAgICAgICAgIHRoaXMuYWN0aXZpdHlEZWxldGVkLm5leHQodGhpcy5lZGl0QWN0aXZpdHkpO1xyXG4gICAgICAgICAgICB0aGlzLmhpZGUoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGFzeW5jIGNyZWF0ZU5ld1Rhc2soc3RhbmRhbG9uZTogYm9vbGVhbiA9IHRydWUpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgICAgICBpZiAodGhpcy5zaG93Rm9ybSkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLnNob3dBZnRlckluc2VydCA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuY3VycmVudEFjdGl2aXR5ID0gYXdhaXQgdGhpcy5jcmVhdGVUYXNrT3BlcmF0aW9uKHtzdGFuZGFsb25lOiBzdGFuZGFsb25lLCB3b3JrZmxvd0NhdGVnb3J5OiB0aGlzLndvcmtmbG93Q2F0ZWdvcnksIHJlZmVyZW5jZTogdGhpcy5yZWZlcmVuY2UsIHJlZmVyZW5jZUlkOiB0aGlzLnJlZmVyZW5jZUlkfSk7XHJcbiAgICAgICAgdGhpcy5fY3JlYXRlQ2xvbmUoKTtcclxuICAgICAgICB0aGlzLnNob3dOZXdGb3JtID0gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgYXN5bmMgc3RhcnRNb2RpZnlpbmdUYXNrKGFjdGl2aXR5OiBBY3Rpdml0eSk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgICAgIGlmICh0aGlzLnNob3dGb3JtIHx8ICFhY3Rpdml0eS5Jc1Rhc2spIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5zaG93QWZ0ZXJJbnNlcnQgPSBmYWxzZTtcclxuICAgICAgICBhd2FpdCB0aGlzLnNoYXJlZFNlcnZpY2UubG9ja1Rhc2soYWN0aXZpdHkudGFzay50YXNrSWQpO1xyXG4gICAgICAgIGFjdGl2aXR5LnRhc2sgPSBhY3Rpdml0eS50YXNrO1xyXG4gICAgICAgIHRoaXMuY3VycmVudEFjdGl2aXR5ID0gYWN0aXZpdHk7XHJcbiAgICAgICAgdGhpcy5fY3JlYXRlQ2xvbmUoKTtcclxuICAgICAgICB0aGlzLnNob3dNb2RpZmljYXRpb25Gb3JtID0gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgYXN5bmMgc3RhcnRNb2RpZnlpbmdUYXNrQW5kV29ya0xvZyhhY3Rpdml0eTogQWN0aXZpdHkpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgICAgICBhd2FpdCB0aGlzLnN0YXJ0TW9kaWZ5aW5nVGFzayhhY3Rpdml0eSk7XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIC8qaWYgKHRoaXMubW9kaWZ5VGFza0Zvcm0pIHtcclxuICAgICAgICAgICAgICAgIHRoaXMubW9kaWZ5VGFza0Zvcm0uaGFuZGxlUmVnaXN0ZXJXb3JrKCk7XHJcbiAgICAgICAgICAgIH0qL1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBfY3JlYXRlQ2xvbmUoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5lZGl0QWN0aXZpdHkgPSB0aGlzLl9ib0ZhY3RvcnkubWFrZVdpdGhSYXdCYWNrZW5kRGF0YShBY3Rpdml0eSwgdGhpcy5jdXJyZW50QWN0aXZpdHkpYXMgQWN0aXZpdHk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGRvSGFuZGxlU3RhdHVzQ2hhbmdlKGVkaXR0aW5nOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy50YXNrRWRpdHRpbmcgPSBlZGl0dGluZztcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgdXBkYXRlRWRpdEFjdGl2aXR5KGFjdGl2aXR5OiBBY3Rpdml0eSk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuZWRpdEFjdGl2aXR5ID0gdGhpcy5fYm9GYWN0b3J5Lm1ha2VXaXRoUmF3QmFja2VuZERhdGEoQWN0aXZpdHksIGFjdGl2aXR5KSBhcyBBY3Rpdml0eTtcclxuICAgIH1cclxuXHJcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IEljb24gPSBJY29uO1xyXG59XHJcbiJdfQ==
@@ -0,0 +1,31 @@
1
+ import { NgModule } from "@angular/core";
2
+ import { TaskModifierComponent } from "./task-modifier.component";
3
+ import { ButtonModule, CoDialogModule, FormModule } from "@colijnit/corecomponents_v12";
4
+ import { LocalizationModule } from "../../localization/localization.module";
5
+ import { CommonModule } from "@angular/common";
6
+ import { ModifyTaskFormModule } from "../modify-task-form/modify-task-form.module";
7
+ import { BusinessObjectFactory } from "@colijnit/ioneconnector/build/service/business-object-factory";
8
+ export class TaskModifyerModule {
9
+ }
10
+ TaskModifyerModule.decorators = [
11
+ { type: NgModule, args: [{
12
+ imports: [
13
+ FormModule,
14
+ CoDialogModule,
15
+ LocalizationModule,
16
+ CommonModule,
17
+ ButtonModule,
18
+ ModifyTaskFormModule
19
+ ],
20
+ declarations: [
21
+ TaskModifierComponent
22
+ ],
23
+ exports: [
24
+ TaskModifierComponent
25
+ ],
26
+ providers: [
27
+ BusinessObjectFactory
28
+ ]
29
+ },] }
30
+ ];
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFzay1tb2RpZnllci5tb2R1bGUuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvdGFzay1tb2RpZnllci90YXNrLW1vZGlmeWVyLm1vZHVsZS4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUNoRSxPQUFPLEVBQUMsWUFBWSxFQUFFLGNBQWMsRUFBRSxVQUFVLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUN0RixPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQUMxRSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sNkNBQTZDLENBQUM7QUFDakYsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sK0RBQStELENBQUM7QUFzQnBHLE1BQU0sT0FBTyxrQkFBa0I7OztZQW5COUIsUUFBUSxTQUFDO2dCQUNOLE9BQU8sRUFBRTtvQkFDTCxVQUFVO29CQUNWLGNBQWM7b0JBQ2Qsa0JBQWtCO29CQUNsQixZQUFZO29CQUNaLFlBQVk7b0JBQ1osb0JBQW9CO2lCQUN2QjtnQkFDSCxZQUFZLEVBQUU7b0JBQ1oscUJBQXFCO2lCQUN0QjtnQkFDRCxPQUFPLEVBQUU7b0JBQ1AscUJBQXFCO2lCQUN0QjtnQkFDRCxTQUFTLEVBQUU7b0JBQ1QscUJBQXFCO2lCQUN0QjthQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtUYXNrTW9kaWZpZXJDb21wb25lbnR9IGZyb20gXCIuL3Rhc2stbW9kaWZpZXIuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7QnV0dG9uTW9kdWxlLCBDb0RpYWxvZ01vZHVsZSwgRm9ybU1vZHVsZX0gZnJvbSBcIkBjb2xpam5pdC9jb3JlY29tcG9uZW50c192MTJcIjtcclxuaW1wb3J0IHtMb2NhbGl6YXRpb25Nb2R1bGV9IGZyb20gXCIuLi8uLi9sb2NhbGl6YXRpb24vbG9jYWxpemF0aW9uLm1vZHVsZVwiO1xyXG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xyXG5pbXBvcnQge01vZGlmeVRhc2tGb3JtTW9kdWxlfSBmcm9tIFwiLi4vbW9kaWZ5LXRhc2stZm9ybS9tb2RpZnktdGFzay1mb3JtLm1vZHVsZVwiO1xyXG5pbXBvcnQge0J1c2luZXNzT2JqZWN0RmFjdG9yeX0gZnJvbSBcIkBjb2xpam5pdC9pb25lY29ubmVjdG9yL2J1aWxkL3NlcnZpY2UvYnVzaW5lc3Mtb2JqZWN0LWZhY3RvcnlcIjtcclxuXHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gICAgaW1wb3J0czogW1xyXG4gICAgICAgIEZvcm1Nb2R1bGUsXHJcbiAgICAgICAgQ29EaWFsb2dNb2R1bGUsXHJcbiAgICAgICAgTG9jYWxpemF0aW9uTW9kdWxlLFxyXG4gICAgICAgIENvbW1vbk1vZHVsZSxcclxuICAgICAgICBCdXR0b25Nb2R1bGUsXHJcbiAgICAgICAgTW9kaWZ5VGFza0Zvcm1Nb2R1bGVcclxuICAgIF0sXHJcbiAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICBUYXNrTW9kaWZpZXJDb21wb25lbnRcclxuICBdLFxyXG4gIGV4cG9ydHM6IFtcclxuICAgIFRhc2tNb2RpZmllckNvbXBvbmVudFxyXG4gIF0sXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICBCdXNpbmVzc09iamVjdEZhY3RvcnlcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUYXNrTW9kaWZ5ZXJNb2R1bGUge1xyXG5cclxufVxyXG4iXX0=