@seniorsistemas/yms-integration 1.16.1 → 1.18.0

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 (93) hide show
  1. package/bundles/seniorsistemas-yms-integration.umd.js +127 -56
  2. package/bundles/seniorsistemas-yms-integration.umd.js.map +1 -1
  3. package/bundles/seniorsistemas-yms-integration.umd.min.js +1 -1
  4. package/bundles/seniorsistemas-yms-integration.umd.min.js.map +1 -1
  5. package/esm2015/src/erp-senior/core/entities/agenda/agenda.module.js +2 -2
  6. package/esm2015/src/erp-senior/core/entities/cidade/cidade.module.js +2 -2
  7. package/esm2015/src/erp-senior/core/entities/contrato-compra/contrato-compra.module.js +2 -2
  8. package/esm2015/src/erp-senior/core/entities/contrato-compra-item/contrato-compra-item.module.js +2 -2
  9. package/esm2015/src/erp-senior/core/entities/derivacao/derivacao.module.js +2 -2
  10. package/esm2015/src/erp-senior/core/entities/devolucao/devolucao.module.js +2 -2
  11. package/esm2015/src/erp-senior/core/entities/empresa/empresa.module.js +2 -2
  12. package/esm2015/src/erp-senior/core/entities/estado/estado.module.js +2 -2
  13. package/esm2015/src/erp-senior/core/entities/expedicao/expedicao.module.js +2 -2
  14. package/esm2015/src/erp-senior/core/entities/familia-produto/familia-produto.module.js +2 -2
  15. package/esm2015/src/erp-senior/core/entities/filial/filial.module.js +2 -2
  16. package/esm2015/src/erp-senior/core/entities/log-integracao/log-integracao.module.js +2 -2
  17. package/esm2015/src/erp-senior/core/entities/ordem-compra/ordem-compra.module.js +7 -2
  18. package/esm2015/src/erp-senior/core/entities/pais/pais.module.js +2 -2
  19. package/esm2015/src/erp-senior/core/entities/pedido-venda/pedido-venda.module.js +2 -2
  20. package/esm2015/src/erp-senior/core/entities/pedido-venda-item/pedido-venda-item.module.js +2 -2
  21. package/esm2015/src/erp-senior/core/entities/pessoa/pessoa.module.js +2 -2
  22. package/esm2015/src/erp-senior/core/entities/pessoa-endereco/pessoa-endereco.module.js +2 -2
  23. package/esm2015/src/erp-senior/core/entities/pessoa-fisica/pessoa-fisica.module.js +2 -2
  24. package/esm2015/src/erp-senior/core/entities/pessoa-juridica/pessoa-juridica.module.js +2 -2
  25. package/esm2015/src/erp-senior/core/entities/processo-avulso/processo-avulso.module.js +7 -2
  26. package/esm2015/src/erp-senior/core/entities/produto/produto.module.js +2 -2
  27. package/esm2015/src/erp-senior/core/entities/recebimento-contrato/recebimento.module.js +7 -2
  28. package/esm2015/src/erp-senior/core/entities/recebimento-ordem-compra/recebimento-ordem-compra.module.js +7 -2
  29. package/esm2015/src/erp-senior/core/entities/royalty/royalty.module.js +2 -2
  30. package/esm2015/src/erp-senior/core/entities/safra/safra.module.js +2 -2
  31. package/esm2015/src/erp-senior/core/entities/transportadora/transportadora.module.js +2 -2
  32. package/esm2015/src/erp-senior/core/entities/unidade-medida/unidade-medida.module.js +2 -2
  33. package/esm2015/src/erp-senior/devolucao/form/devolucao-form.component.js +7 -2
  34. package/esm2015/src/erp-senior/expedicao/form/expedicao-form.component.js +15 -15
  35. package/esm2015/src/erp-senior/processo-avulso/form/processo-avulso-form.component.js +7 -2
  36. package/esm2015/src/erp-senior/recebimento/contrato-form/contrato-form.component.js +20 -4
  37. package/esm2015/src/erp-senior/recebimento/form/recebimento-form.component.js +3 -3
  38. package/esm2015/src/erp-senior/recebimento-ordem-compra/form/recebimento-ordem-compra-form.component.js +7 -2
  39. package/esm2015/src/erp-senior/recebimento-ordem-compra/ordem-compra-form/ordem-compra-form.component.js +13 -4
  40. package/esm2015/src/sam-senior/components/credencial-form/credencial-form.component.js +5 -2
  41. package/esm2015/src/sam-senior/components/scheduling/scheduling.component.js +3 -2
  42. package/esm2015/src/sam-senior/components/visitor-edit/visitor-edit-form/visitante-form/visitor-edit-form.component.js +5 -2
  43. package/esm2015/src/sam-senior/components/visitor-edit/visitor-edit-list/visitor-edit-list.component.js +7 -2
  44. package/esm5/src/erp-senior/core/entities/agenda/agenda.module.js +2 -2
  45. package/esm5/src/erp-senior/core/entities/cidade/cidade.module.js +2 -2
  46. package/esm5/src/erp-senior/core/entities/contrato-compra/contrato-compra.module.js +2 -2
  47. package/esm5/src/erp-senior/core/entities/contrato-compra-item/contrato-compra-item.module.js +2 -2
  48. package/esm5/src/erp-senior/core/entities/derivacao/derivacao.module.js +2 -2
  49. package/esm5/src/erp-senior/core/entities/devolucao/devolucao.module.js +2 -2
  50. package/esm5/src/erp-senior/core/entities/empresa/empresa.module.js +2 -2
  51. package/esm5/src/erp-senior/core/entities/estado/estado.module.js +2 -2
  52. package/esm5/src/erp-senior/core/entities/expedicao/expedicao.module.js +2 -2
  53. package/esm5/src/erp-senior/core/entities/familia-produto/familia-produto.module.js +2 -2
  54. package/esm5/src/erp-senior/core/entities/filial/filial.module.js +2 -2
  55. package/esm5/src/erp-senior/core/entities/log-integracao/log-integracao.module.js +2 -2
  56. package/esm5/src/erp-senior/core/entities/ordem-compra/ordem-compra.module.js +7 -2
  57. package/esm5/src/erp-senior/core/entities/pais/pais.module.js +2 -2
  58. package/esm5/src/erp-senior/core/entities/pedido-venda/pedido-venda.module.js +2 -2
  59. package/esm5/src/erp-senior/core/entities/pedido-venda-item/pedido-venda-item.module.js +2 -2
  60. package/esm5/src/erp-senior/core/entities/pessoa/pessoa.module.js +2 -2
  61. package/esm5/src/erp-senior/core/entities/pessoa-endereco/pessoa-endereco.module.js +2 -2
  62. package/esm5/src/erp-senior/core/entities/pessoa-fisica/pessoa-fisica.module.js +2 -2
  63. package/esm5/src/erp-senior/core/entities/pessoa-juridica/pessoa-juridica.module.js +2 -2
  64. package/esm5/src/erp-senior/core/entities/processo-avulso/processo-avulso.module.js +7 -2
  65. package/esm5/src/erp-senior/core/entities/produto/produto.module.js +2 -2
  66. package/esm5/src/erp-senior/core/entities/recebimento-contrato/recebimento.module.js +7 -2
  67. package/esm5/src/erp-senior/core/entities/recebimento-ordem-compra/recebimento-ordem-compra.module.js +7 -2
  68. package/esm5/src/erp-senior/core/entities/royalty/royalty.module.js +2 -2
  69. package/esm5/src/erp-senior/core/entities/safra/safra.module.js +2 -2
  70. package/esm5/src/erp-senior/core/entities/transportadora/transportadora.module.js +2 -2
  71. package/esm5/src/erp-senior/core/entities/unidade-medida/unidade-medida.module.js +2 -2
  72. package/esm5/src/erp-senior/devolucao/form/devolucao-form.component.js +7 -2
  73. package/esm5/src/erp-senior/expedicao/form/expedicao-form.component.js +15 -15
  74. package/esm5/src/erp-senior/processo-avulso/form/processo-avulso-form.component.js +7 -2
  75. package/esm5/src/erp-senior/recebimento/contrato-form/contrato-form.component.js +21 -4
  76. package/esm5/src/erp-senior/recebimento/form/recebimento-form.component.js +2 -2
  77. package/esm5/src/erp-senior/recebimento-ordem-compra/form/recebimento-ordem-compra-form.component.js +7 -2
  78. package/esm5/src/erp-senior/recebimento-ordem-compra/ordem-compra-form/ordem-compra-form.component.js +14 -4
  79. package/esm5/src/sam-senior/components/credencial-form/credencial-form.component.js +5 -2
  80. package/esm5/src/sam-senior/components/scheduling/scheduling.component.js +3 -2
  81. package/esm5/src/sam-senior/components/visitor-edit/visitor-edit-form/visitante-form/visitor-edit-form.component.js +5 -2
  82. package/esm5/src/sam-senior/components/visitor-edit/visitor-edit-list/visitor-edit-list.component.js +7 -2
  83. package/fesm2015/seniorsistemas-yms-integration.js +126 -57
  84. package/fesm2015/seniorsistemas-yms-integration.js.map +1 -1
  85. package/fesm5/seniorsistemas-yms-integration.js +127 -56
  86. package/fesm5/seniorsistemas-yms-integration.js.map +1 -1
  87. package/package.json +1 -1
  88. package/seniorsistemas-yms-integration.metadata.json +1 -1
  89. package/src/erp-senior/devolucao/form/devolucao-form.component.d.ts +2 -0
  90. package/src/erp-senior/processo-avulso/form/processo-avulso-form.component.d.ts +2 -0
  91. package/src/erp-senior/recebimento/contrato-form/contrato-form.component.d.ts +10 -4
  92. package/src/erp-senior/recebimento-ordem-compra/form/recebimento-ordem-compra-form.component.d.ts +2 -0
  93. package/src/erp-senior/recebimento-ordem-compra/ordem-compra-form/ordem-compra-form.component.d.ts +6 -2
@@ -8,17 +8,21 @@ import { Subject } from 'rxjs';
8
8
  import * as _moment from "moment";
9
9
  import { OrdemCompraService } from "../../core/entities/ordem-compra/ordem-compra.service";
10
10
  import { OrdemCompra } from "../../core/entities/ordem-compra/ordem-compra";
11
+ import { ActivatedRoute } from "@angular/router";
12
+ import { takeUntil } from "rxjs/operators";
11
13
  const moment = _moment;
12
14
  let OrdemCompraFormComponent = class OrdemCompraFormComponent {
13
- constructor(dialogRef, dialogConfig, ordemCompraService, translate, fb) {
15
+ constructor(dialogRef, dialogConfig, ordemCompraService, translate, fb, route) {
14
16
  this.dialogRef = dialogRef;
15
17
  this.dialogConfig = dialogConfig;
16
18
  this.ordemCompraService = ordemCompraService;
17
19
  this.translate = translate;
18
20
  this.fb = fb;
21
+ this.route = route;
19
22
  this.ordemCompraLookupDisplayFields = ["codigo", "empresa.nome"];
20
23
  this.ordemCompraAdvancedDisplayFields = ["id", "codigo", "empresa.nome", "filial.nome", "pessoa.nome"];
21
24
  this.ordemCompraLookupSeparator = " - ";
25
+ this.permissions = {};
22
26
  this.ngUnsubscribe = new Subject();
23
27
  }
24
28
  ngOnInit() {
@@ -30,6 +34,10 @@ let OrdemCompraFormComponent = class OrdemCompraFormComponent {
30
34
  this.formGroup = this.getForm();
31
35
  this.ordemCompraSearchFields = this.getOrdemCompraFields();
32
36
  this.ordemCompraSearchGridFields = this.getOrdemCompraGridFields();
37
+ this.route.data.pipe(takeUntil(this.ngUnsubscribe)).subscribe((dataChanges) => this.onRouteDataChange(dataChanges));
38
+ }
39
+ onRouteDataChange(dataChanges) {
40
+ this.permissions = dataChanges.allPermissions.agenda;
33
41
  }
34
42
  ngOnDestroy() {
35
43
  this.ngUnsubscribe.next();
@@ -174,13 +182,14 @@ let OrdemCompraFormComponent = class OrdemCompraFormComponent {
174
182
  };
175
183
  OrdemCompraFormComponent = tslib_1.__decorate([
176
184
  Component({
177
- template: "<form [formGroup]=\"formGroup\">\n <div class=\"ui-g ui-fluid\">\n <div class=\"ui-g-12 ui-md-6\">\n <label for=\"ordemCompra\">Ordem Compra</label>\n <s-lookup dataKey=\"id\" name=\"ordemCompra\"\n formControlName=\"ordemCompra\" [searchFields]=\"ordemCompraSearchFields\"\n [searchGridFields]=\"ordemCompraSearchGridFields\"\n [searchGridData]=\"ordemCompraSearchGridData\" [multiple]=\"false\"\n [lookupSuggestions]=\"ordemCompraLookupSuggestions\"\n (onLookupRequest)=\"onOrdemCompraLookupRequest($event)\"\n (onSearchRequest)=\"onOrdemCompraSearchRequest($event)\"\n lookupDisplayField=\"label\" [searchTotalRecords]=\"ordemCompraSearchTotalRecords\"\n [searchTitle]=\"'yms.erp.recebimento_ordem_compra_search_title' | translate\"\n [searchEmptyTitle]=\"'yms.erp.nothing_found' | translate\"\n [filterLabel]=\"'yms.erp.filter' | translate\" [clearLabel]=\"'yms.erp.clear' | translate\"\n [cancelLabel]=\"'yms.erp.cancel' | translate\" [selectLabel]=\"'yms.erp.select' | translate\"\n [searchTotalRecordsLabel]=\"'yms.erp.total_records' | translate: {value: ordemCompraSearchTotalRecords}\">\n </s-lookup>\n </div>\n </div>\n \n <div style=\"margin-top: 10px;\">\n <div class=\"separator\"></div>\n <s-button style=\"float: right;\" [label]=\"'save' | translate\" priority=\"primary\" (onClick)=\"save()\"></s-button>\n <s-button style=\"float: right;\" [label]=\"'cancel' | translate\" priority=\"link\" (onClick)=\"close()\"></s-button>\n </div>\n</form>"
185
+ template: "<form [formGroup]=\"formGroup\">\n <div class=\"ui-g ui-fluid\">\n <div class=\"ui-g-12 ui-md-6\">\n <label for=\"ordemCompra\">Ordem Compra</label>\n <s-lookup dataKey=\"id\" name=\"ordemCompra\"\n formControlName=\"ordemCompra\" [searchFields]=\"ordemCompraSearchFields\"\n [searchGridFields]=\"ordemCompraSearchGridFields\"\n [searchGridData]=\"ordemCompraSearchGridData\" [multiple]=\"false\"\n [lookupSuggestions]=\"ordemCompraLookupSuggestions\"\n (onLookupRequest)=\"onOrdemCompraLookupRequest($event)\"\n (onSearchRequest)=\"onOrdemCompraSearchRequest($event)\"\n lookupDisplayField=\"label\" [searchTotalRecords]=\"ordemCompraSearchTotalRecords\"\n [searchTitle]=\"'yms.erp.recebimento_ordem_compra_search_title' | translate\"\n [searchEmptyTitle]=\"'yms.erp.nothing_found' | translate\"\n [filterLabel]=\"'yms.erp.filter' | translate\" [clearLabel]=\"'yms.erp.clear' | translate\"\n [cancelLabel]=\"'yms.erp.cancel' | translate\" [selectLabel]=\"'yms.erp.select' | translate\"\n [searchTotalRecordsLabel]=\"'yms.erp.total_records' | translate: {value: ordemCompraSearchTotalRecords}\">\n </s-lookup>\n </div>\n </div>\n \n <div style=\"margin-top: 10px;\">\n <div class=\"separator\"></div>\n <s-button style=\"float: right;\" [label]=\"'save' | translate\" priority=\"primary\" (onClick)=\"save()\"\n [disabled]=\"!permissions.editar\"></s-button>\n <s-button style=\"float: right;\" [label]=\"'cancel' | translate\" priority=\"link\" (onClick)=\"close()\"></s-button>\n </div>\n</form>"
178
186
  }),
179
187
  tslib_1.__metadata("design:paramtypes", [DynamicDialogRef,
180
188
  DynamicDialogConfig,
181
189
  OrdemCompraService,
182
190
  TranslateService,
183
- FormBuilder])
191
+ FormBuilder,
192
+ ActivatedRoute])
184
193
  ], OrdemCompraFormComponent);
185
194
  export { OrdemCompraFormComponent };
186
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JkZW0tY29tcHJhLWZvcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNlbmlvcnNpc3RlbWFzL3ltcy1pbnRlZ3JhdGlvbi8iLCJzb3VyY2VzIjpbInNyYy9lcnAtc2VuaW9yL3JlY2ViaW1lbnRvLW9yZGVtLWNvbXByYS9vcmRlbS1jb21wcmEtZm9ybS9vcmRlbS1jb21wcmEtZm9ybS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDNUYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLG1CQUFtQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDMUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdkQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEtBQUssT0FBTyxNQUFNLFFBQVEsQ0FBQztBQUNsQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx1REFBdUQsQ0FBQztBQUkzRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDNUUsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDO0FBS3ZCLElBQWEsd0JBQXdCLEdBQXJDLE1BQWEsd0JBQXdCO0lBa0JqQyxZQUNZLFNBQTJCLEVBQzNCLFlBQWlDLEVBQ2pDLGtCQUFzQyxFQUN0QyxTQUEyQixFQUMzQixFQUFlO1FBSmYsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFDM0IsaUJBQVksR0FBWixZQUFZLENBQXFCO1FBQ2pDLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFDdEMs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U0FBUyxDQUFDO1FBQ1AsdXNEQUFpRDtLQUNwRCxDQUFDOzZDQW9CeUIsZ0JBQWdCO1FBQ2IsbUJBQW1CO1FBQ2Isa0JBQWtCO1FBQzNCLGdCQUFnQjtRQUN2QixXQUFXO0dBdkJsQix3QkFBd0IsQ0FvTnBDO1NBcE5ZLHdCQUF3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBPbkRlc3Ryb3kgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgRm9ybUdyb3VwLCBGb3JtQnVpbGRlciwgRm9ybUFycmF5LCBWYWxpZGF0b3JzLCBGb3JtQ29udHJvbCB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xuaW1wb3J0IHsgRHluYW1pY0RpYWxvZ1JlZiwgRHluYW1pY0RpYWxvZ0NvbmZpZyB9IGZyb20gXCJwcmltZW5nL2FwaVwiO1xuaW1wb3J0IHsgRm9ybUZpZWxkLCBGaWVsZFR5cGUgfSBmcm9tIFwiQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50c1wiO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gXCJAbmd4LXRyYW5zbGF0ZS9jb3JlXCI7XG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgKiBhcyBfbW9tZW50IGZyb20gXCJtb21lbnRcIjtcbmltcG9ydCB7IE9yZGVtQ29tcHJhU2VydmljZSB9IGZyb20gXCIuLi8uLi9jb3JlL2VudGl0aWVzL29yZGVtLWNvbXByYS9vcmRlbS1jb21wcmEuc2VydmljZVwiO1xuaW1wb3J0IHsgUGVzc29hIH0gZnJvbSAnLi8uLi8uLi9jb3JlL2VudGl0aWVzL3Blc3NvYS9wZXNzb2EnO1xuaW1wb3J0IHsgRmlsaWFsIH0gZnJvbSAnLi8uLi8uLi9jb3JlL2VudGl0aWVzL2ZpbGlhbC9maWxpYWwnO1xuaW1wb3J0IHsgQWdlbmRhIH0gZnJvbSBcIi4uLy4uL2NvcmUvZW50aXRpZXMvYWdlbmRhL2FnZW5kYVwiO1xuaW1wb3J0IHsgT3JkZW1Db21wcmEgfSBmcm9tIFwiLi4vLi4vY29yZS9lbnRpdGllcy9vcmRlbS1jb21wcmEvb3JkZW0tY29tcHJhXCI7XG5jb25zdCBtb21lbnQgPSBfbW9tZW50O1xuXG5AQ29tcG9uZW50KHtcbiAgICB0ZW1wbGF0ZVVybDogJy4vb3JkZW0tY29tcHJhLWZvcm0uY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIE9yZGVtQ29tcHJhRm9ybUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgICBwdWJsaWMgZm9ybUdyb3VwOiBGb3JtR3JvdXA7XG5cbiAgICBwdWJsaWMgb3JkZW1Db21wcmFTZWFyY2hGaWVsZHM6IEZvcm1GaWVsZFtdO1xuICAgIHB1YmxpYyBvcmRlbUNvbXByYVNlYXJjaEdyaWRGaWVsZHM6IEZvcm1GaWVsZFtdO1xuICAgIHB1YmxpYyBvcmRlbUNvbXByYVNlYXJjaEdyaWREYXRhOiBPcmRlbUNvbXByYVtdO1xuICAgIHB1YmxpYyBvcmRlbUNvbXByYUxvb2t1cERpc3BsYXlGaWVsZHMgPSBbXCJjb2RpZ29cIiwgXCJlbXByZXNhLm5vbWVcIl07XG4gICAgcHVibGljIG9yZGVtQ29tcHJhQWR2YW5jZWREaXNwbGF5RmllbGRzID0gW1wiaWRcIiwgXCJjb2RpZ29cIiwgXCJlbXByZXNhLm5vbWVcIiwgXCJmaWxpYWwubm9tZVwiLCBcInBlc3NvYS5ub21lXCJdO1xuICAgIHB1YmxpYyBvcmRlbUNvbXByYUxvb2t1cFNlcGFyYXRvciA9IFwiIC0gXCI7XG4gICAgcHVibGljIG9yZGVtQ29tcHJhTG9va3VwU3VnZ2VzdGlvbnM6IE9yZGVtQ29tcHJhW107XG4gICAgcHVibGljIG9yZGVtQ29tcHJhU2VhcmNoVG90YWxSZWNvcmRzOiBudW1iZXI7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IG5nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICAgIHByaXZhdGUgYWdlbmRhOiBBZ2VuZGE7XG4gICAgcHJpdmF0ZSBmaWxpYWw6IEZpbGlhbDtcbiAgICBwcml2YXRlIGZvcm5lY2Vkb3I6IFBlc3NvYTtcbiAgICBwcml2YXRlIG9yZGVuc0NvbXByYTogc3RyaW5nW107XG5cbiAgICBjb25zdHJ1Y3RvciAoXG4gICAgICAgIHByaXZhdGUgZGlhbG9nUmVmOiBEeW5hbWljRGlhbG9nUmVmLFxuICAgICAgICBwcml2YXRlIGRpYWxvZ0NvbmZpZzogRHluYW1pY0RpYWxvZ0NvbmZpZyxcbiAgICAgICAgcHJpdmF0ZSBvcmRlbUNvbXByYVNlcnZpY2U6IE9yZGVtQ29tcHJhU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyXG4gICAgKSB7IH1cbiAgIFxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBjb25zdCB7IGRhdGEgfSA9IHRoaXMuZGlhbG9nQ29uZmlnO1xuICAgICAgICB0aGlzLmFnZW5kYSA9IGRhdGEuYWdlbmRhO1xuICAgICAgICB0aGlzLmZpbGlhbCA9IGRhdGEuZmlsaWFsO1xuICAgICAgICB0aGlzLmZvcm5lY2Vkb3IgPSBkYXRhLmZvcm5lY2Vkb3I7XG4gICAgICAgIHRoaXMub3JkZW5zQ29tcHJhID0gZGF0YS5vcmRlbnMubWFwKCh7IG9yZGVtQ29tcHJhOiBvcmRlbUNvbXByYSB9OiBhbnkpID0+ICEhb3JkZW1Db21wcmEgPyBvcmRlbUNvbXByYS5pZCA6IHVuZGVmaW5lZCkuZmlsdGVyKCh2YWw6IGFueSkgPT4gISF2YWwpO1xuXG4gICAgICAgIHRoaXMuZm9ybUdyb3VwID0gdGhpcy5nZXRGb3JtKCk7XG5cbiAgICAgICAgdGhpcy5vcmRlbUNvbXByYVNlYXJjaEZpZWxkcyA9IHRoaXMuZ2V0T3JkZW1Db21wcmFGaWVsZHMoKTtcbiAgICAgICAgdGhpcy5vcmRlbUNvbXByYVNlYXJjaEdyaWRGaWVsZHMgPSB0aGlzLmdldE9yZGVtQ29tcHJhR3JpZEZpZWxkcygpO1xuICAgIH1cbiAgICBcbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5uZ1Vuc3Vic2NyaWJlLm5leHQoKTtcbiAgICAgICAgdGhpcy5uZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKCk7XG4gICAgfVxuXG4gICAgcHVibGljIG9uT3JkZW1Db21wcmFMb29rdXBSZXF1ZXN0KHZhbHVlOiBzdHJpbmcpIHtcbiAgICAgICAgY29uc3Qgc29ydCA9IHRoaXMub3JkZW1Db21wcmFMb29rdXBEaXNwbGF5RmllbGRzLm1hcCgoZmllbGQ6IGFueSkgPT4gKHsgZmllbGQsIG9yZGVyOiAnQXNjJyB9KSlbMF07XG5cbiAgICAgICAgY29uc3QgZmlsdGVyOiBhbnkgPSB7XG4gICAgICAgICAgICBudW1lcm86ICt2YWx1ZS5yZXBsYWNlKC9cXEQvZywgXCJcIilcbiAgICAgICAgfTtcblxuICAgICAgICBjb25zdCBmaWxpYWwgPSB0aGlzLmZpbGlhbDtcbiAgICAgICAgaWYgKGZpbGlhbCAmJiBmaWxpYWwuZW1wcmVzYSAmJiBmaWxpYWwuZW1wcmVzYS5pZCkge1xuICAgICAgICAgICAgZmlsdGVyLmVtcHJlc2FJZCA9IGZpbGlhbC5lbXByZXNhLmlkO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5vcmRlbUNvbXByYVNlcnZpY2VcbiAgICAgICAgICAgIC5saXN0T3JkZW5zQ29tcHJhKHtcbiAgICAgICAgICAgICAgICAuLi5maWx0ZXIsXG4gICAgICAgICAgICAgICAgcGVzc29hSWQ6ICh0aGlzLmZvcm5lY2Vkb3IgfHwge2lkOiB1bmRlZmluZWR9KS5pZCxcbiAgICAgICAgICAgICAgICBmaWxpYWxJZDogKGZpbGlhbCB8fCB7aWQ6IHVuZGVmaW5lZH0pLmlkLFxuICAgICAgICAgICAgICAgIHRpcG9BZ2VuZGFtZW50b0lkOiB0aGlzLmFnZW5kYSAmJiB0aGlzLmFnZW5kYS50aXBvQWdlbmRhbWVudG8gPyB0aGlzLmFnZW5kYS50aXBvQWdlbmRhbWVudG8uaWQgOiBudWxsLFxuICAgICAgICAgICAgICAgIG9yZGVuc0NvbXByYVNlbGVjaW9uYWRvczogdGhpcy5vcmRlbnNDb21wcmEsXG4gICAgICAgICAgICAgICAgcGFnaW5hOiB7XG4gICAgICAgICAgICAgICAgICAgIGxpbWl0OiAzMCxcbiAgICAgICAgICAgICAgICAgICAgb2Zmc2V0OiAwLFxuICAgICAgICAgICAgICAgICAgICBsaXN0YU9yZGVuYWNhbzogW1xuICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhbXBvOiBzb3J0LmZpZWxkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9yZGVuYWNhbzogc29ydC5vcmRlclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGxpc3Q6IGFueSkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMub3JkZW1Db21wcmFMb29rdXBTdWdnZXN0aW9ucyA9IGxpc3QuY29udGVudHMubWFwKE9yZGVtQ29tcHJhLmZyb21EdG8pO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIG9uT3JkZW1Db21wcmFTZWFyY2hSZXF1ZXN0KGV2ZW50OiBhbnkpIHtcbiAgICAgICAgY29uc3QgeyBmaXJzdCwgcm93cywgbXVsdGlTb3J0TWV0YSwgZmlsdGVyRGF0YSB9ID0gZXZlbnQ7XG4gICAgICAgIGNvbnN0IHBhZ2UgPSBmaXJzdCAvIHJvd3M7XG4gICAgICAgIGNvbnN0IGZpbHRlciA9IHRoaXMuZ2V0T3JkZW1Db21wcmFGaWVsZHMoKVxuICAgICAgICAgICAgLmZpbHRlcigoeyBuYW1lIH0pID0+IGZpbHRlckRhdGFbbmFtZV0gIT0gdW5kZWZpbmVkICYmIGZpbHRlckRhdGFbbmFtZV0gIT0gXCJcIilcbiAgICAgICAgICAgIC5yZWR1Y2UoKGEsIGI6IGFueSkgPT4ge1xuICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgIC4uLmEsXG4gICAgICAgICAgICAgICAgICAgIFtiLm5hbWVdOiBmaWx0ZXJEYXRhW2IubmFtZV1cbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfSwge30gYXMgYW55KTtcblxuICAgICAgICBjb25zdCBmaWxpYWwgPSB0aGlzLmZpbGlhbDtcbiAgICAgICAgaWYgKGZpbGlhbCAmJiBmaWxpYWwuZW1wcmVzYSAmJiBmaWxpYWwuZW1wcmVzYS5pZCkge1xuICAgICAgICAgICAgZmlsdGVyLmVtcHJlc2FJZCA9IGZpbGlhbC5lbXByZXNhLmlkO1xuICAgICAgICB9XG5cbiAgICAgICAgZmlsdGVyLmRhdGFFbWlzc2FvID0gZmlsdGVyLmRhdGFFbWlzc2FvICYmIG1vbWVudChmaWx0ZXIuZGF0YUVtaXNzYW8pLmZvcm1hdChcIllZWVktTU0tRERcIik7XG4gICAgICAgIGNvbnN0IHNvcnQgPSAobXVsdGlTb3J0TWV0YSB8fCBbXSkubGVuZ3RoID8geyBmaWVsZDogbXVsdGlTb3J0TWV0YVswXS5maWVsZCwgb3JkZXI6IG11bHRpU29ydE1ldGFbMF0ub3JkZXIgPT09IDEgPyAnQXNjJyA6ICdEZXNjJyB9IDogeyBmaWVsZDogJ251bWVybycsIG9yZGVyOiAnQXNjJyB9O1xuXG4gICAgICAgIHRoaXMub3JkZW1Db21wcmFTZXJ2aWNlXG4gICAgICAgICAgICAubGlzdE9yZGVuc0NvbXByYSh7XG4gICAgICAgICAgICAgICAgLi4uZmlsdGVyLFxuICAgICAgICAgICAgICAgIHBlc3NvYUlkOiAodGhpcy5mb3JuZWNlZG9yIHx8IHtpZDogdW5kZWZpbmVkfSkuaWQsXG4gICAgICAgICAgICAgICAgZmlsaWFsSWQ6IChmaWxpYWwgfHwge2lkOiB1bmRlZmluZWR9KS5pZCxcbiAgICAgICAgICAgICAgICB0aXBvQWdlbmRhbWVudG9JZDogdGhpcy5hZ2VuZGEgJiYgdGhpcy5hZ2VuZGEudGlwb0FnZW5kYW1lbnRvID8gdGhpcy5hZ2VuZGEudGlwb0FnZW5kYW1lbnRvLmlkIDogbnVsbCxcbiAgICAgICAgICAgICAgICBvcmRlbnNDb21wcmFTZWxlY2lvbmFkb3M6IHRoaXMub3JkZW5zQ29tcHJhLFxuICAgICAgICAgICAgICAgIHBhZ2luYToge1xuICAgICAgICAgICAgICAgICAgICBsaW1pdDogcm93cyxcbiAgICAgICAgICAgICAgICAgICAgb2Zmc2V0OiBwYWdlLFxuICAgICAgICAgICAgICAgICAgICBsaXN0YU9yZGVuYWNhbzogW1xuICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhbXBvOiBzb3J0LmZpZWxkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9yZGVuYWNhbzogc29ydC5vcmRlclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGxpc3Q6IGFueSkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMub3JkZW1Db21wcmFTZWFyY2hHcmlkRGF0YSA9IGxpc3QuY29udGVudHMubWFwKE9yZGVtQ29tcHJhLmZyb21EdG8pO1xuICAgICAgICAgICAgICAgIHRoaXMub3JkZW1Db21wcmFTZWFyY2hUb3RhbFJlY29yZHMgPSBsaXN0LnRvdGFsRWxlbWVudHM7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0UmVjUGFnaW5hKGZpcnN0OiBudW1iZXIsIHJvd3M6IG51bWJlciwgc29ydDogYW55KSB7XG4gICAgICAgIGNvbnN0IHBhZ2UgPSBmaXJzdCAvIHJvd3M7XG4gICAgICAgIGNvbnN0IG9yZGVyQnkgPSBzb3J0ICYmIHNvcnQubGVuZ3RoIFxuICAgICAgICAgICAgPyBzb3J0Lm1hcCgoczogYW55KSA9PiAgKHsgY2FtcG86IHMuZmllbGQsIG9yZGVuYWNhbzogcy5vcmRlciA9PT0gMSA/ICdBc2MnIDogJ0Rlc2MnIH0pKSBcbiAgICAgICAgICAgIDogW107XG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIG9mZnNldDogcGFnZSxcbiAgICAgICAgICAgIGxpbWl0OiByb3dzLFxuICAgICAgICAgICAgbGlzdGFPcmRlbmFjYW86IG9yZGVyQnlcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgdmFsaWRhdGVBbGxGb3JtRmllbGRzKGZvcm1Hcm91cDogRm9ybUdyb3VwKSB7XG4gICAgICAgIE9iamVjdC5rZXlzKGZvcm1Hcm91cC5jb250cm9scykuZm9yRWFjaChmaWVsZCA9PiB7XG4gICAgICAgICAgICBjb25zdCBjb250cm9sID0gZm9ybUdyb3VwLmdldChmaWVsZCk7XG4gICAgICAgICAgICBpZiAoY29udHJvbCBpbnN0YW5jZW9mIEZvcm1Db250cm9sKSB7XG4gICAgICAgICAgICAgICAgY29udHJvbC5tYXJrQXNEaXJ0eSh7IG9ubHlTZWxmOiB0cnVlIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoY29udHJvbCBpbnN0YW5jZW9mIEZvcm1Hcm91cCl7XG4gICAgICAgICAgICAgICAgdGhpcy52YWxpZGF0ZUFsbEZvcm1GaWVsZHMoY29udHJvbCk7XG4gICAgICAgICAgICB9IFxuICAgICAgICAgICAgZWxzZSBpZiAoY29udHJvbCBpbnN0YW5jZW9mIEZvcm1BcnJheSkge1xuICAgICAgICAgICAgICAgIGNvbnRyb2wuY29udHJvbHMuZm9yRWFjaCgoZm9ybTogRm9ybUdyb3VwKSA9PiB0aGlzLnZhbGlkYXRlQWxsRm9ybUZpZWxkcyhmb3JtKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBzYXZlKCkge1xuICAgICAgICBpZiAoIXRoaXMuZm9ybUdyb3VwLnZhbGlkKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy52YWxpZGF0ZUFsbEZvcm1GaWVsZHModGhpcy5mb3JtR3JvdXApO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuY2xvc2UodGhpcy5mb3JtR3JvdXAuZ2V0KCdvcmRlbUNvbXByYScpLnZhbHVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgY2xvc2UoZGF0YT86IGFueSkge1xuICAgICAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZShkYXRhKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldEZvcm0oKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmZiLmdyb3VwKHtcbiAgICAgICAgICAgIG9yZGVtQ29tcHJhOiBbdW5kZWZpbmVkLCBWYWxpZGF0b3JzLnJlcXVpcmVkXVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldE9yZGVtQ29tcHJhRmllbGRzKCkge1xuICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgbmV3IEZvcm1GaWVsZCh7XG4gICAgICAgICAgICAgICAgbmFtZTogXCJjb2RpZ29cIixcbiAgICAgICAgICAgICAgICB0eXBlOiBGaWVsZFR5cGUuU3RyaW5nLFxuICAgICAgICAgICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFwieW1zLmVycC5vcmRlbV9jb21wcmFfY29kaWdvXCIpXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIG5ldyBGb3JtRmllbGQoe1xuICAgICAgICAgICAgICAgIG5hbWU6IFwiZW1wcmVzYS5ub21lXCIsXG4gICAgICAgICAgICAgICAgdHlwZTogRmllbGRUeXBlLlN0cmluZyxcbiAgICAgICAgICAgICAgICBsYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcInltcy5lcnAuZW1wcmVzYVwiKVxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBuZXcgRm9ybUZpZWxkKHtcbiAgICAgICAgICAgICAgICBuYW1lOiBcImZpbGlhbC5ub21lXCIsXG4gICAgICAgICAgICAgICAgdHlwZTogRmllbGRUeXBlLlN0cmluZyxcbiAgICAgICAgICAgICAgICBsYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcInltcy5lcnAuZmlsaWFsXCIpXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgXTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldE9yZGVtQ29tcHJhR3JpZEZpZWxkcygpIHtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgIG5ldyBGb3JtRmllbGQoe1xuICAgICAgICAgICAgICAgIG5hbWU6IFwiY29kaWdvXCIsXG4gICAgICAgICAgICAgICAgdHlwZTogRmllbGRUeXBlLkludGVnZXIsXG4gICAgICAgICAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoXCJ5bXMuZXJwLm9yZGVtX2NvbXByYV9jb2RpZ29cIilcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgbmV3IEZvcm1GaWVsZCh7XG4gICAgICAgICAgICAgICAgbmFtZTogXCJlbXByZXNhLm5vbWVcIixcbiAgICAgICAgICAgICAgICB0eXBlOiBGaWVsZFR5cGUuU3RyaW5nLFxuICAgICAgICAgICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFwieW1zLmVycC5lbXByZXNhXCIpXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIG5ldyBGb3JtRmllbGQoe1xuICAgICAgICAgICAgICAgIG5hbWU6IFwiZmlsaWFsLm5vbWVcIixcbiAgICAgICAgICAgICAgICB0eXBlOiBGaWVsZFR5cGUuU3RyaW5nLFxuICAgICAgICAgICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFwieW1zLmVycC5maWxpYWxcIilcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgbmV3IEZvcm1GaWVsZCh7XG4gICAgICAgICAgICAgICAgbmFtZTogXCJwZXNzb2Eubm9tZVwiLFxuICAgICAgICAgICAgICAgIHR5cGU6IEZpZWxkVHlwZS5TdHJpbmcsXG4gICAgICAgICAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoXCJ5bXMuZXJwLnBlc3NvYV9ub21lXCIpXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgXTtcbiAgICB9XG59Il19
195
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JkZW0tY29tcHJhLWZvcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNlbmlvcnNpc3RlbWFzL3ltcy1pbnRlZ3JhdGlvbi8iLCJzb3VyY2VzIjpbInNyYy9lcnAtc2VuaW9yL3JlY2ViaW1lbnRvLW9yZGVtLWNvbXByYS9vcmRlbS1jb21wcmEtZm9ybS9vcmRlbS1jb21wcmEtZm9ybS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDNUYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLG1CQUFtQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDMUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdkQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEtBQUssT0FBTyxNQUFNLFFBQVEsQ0FBQztBQUNsQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx1REFBdUQsQ0FBQztBQUkzRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDNUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUM7QUFLdkIsSUFBYSx3QkFBd0IsR0FBckMsTUFBYSx3QkFBd0I7SUFtQmpDLFlBQ1ksU0FBMkIsRUFDM0IsWUFBaUMsRUFDakMsa0JBQXNDLEVBQ3RDLFNBQTJCLEVBQ2xCLEVBQWUsRUFDZixL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QkFDdEIsS0FBSyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLGlCQUFpQixDQUFDO2FBQ25ELENBQUM7WUFDRixJQUFJLFNBQVMsQ0FBQztnQkFDVixJQUFJLEVBQUUsYUFBYTtnQkFDbkIsSUFBSSxFQUFFLFNBQVMsQ0FBQyxNQUFNO2dCQUN0QixLQUFLLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUM7YUFDbEQsQ0FBQztZQUNGLElBQUksU0FBUyxDQUFDO2dCQUNWLElBQUksRUFBRSxhQUFhO2dCQUNuQixJQUFJLEVBQUUsU0FBUyxDQUFDLE1BQU07Z0JBQ3RCLEtBQUssRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxxQkFBcUIsQ0FBQzthQUN2RCxDQUFDO1NBQ0wsQ0FBQztJQUNOLENBQUM7Q0FDSixDQUFBO0FBM05ZLHdCQUF3QjtJQUhwQyxTQUFTLENBQUM7UUFDUCx1dkRBQWlEO0tBQ3BELENBQUM7NkNBcUJ5QixnQkFBZ0I7UUFDYixtQkFBbUI7UUFDYixrQkFBa0I7UUFDM0IsZ0JBQWdCO1FBQ2QsV0FBVztRQUNSLGNBQWM7R0F6QmpDLHdCQUF3QixDQTJOcEM7U0EzTlksd0JBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIE9uRGVzdHJveSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBGb3JtR3JvdXAsIEZvcm1CdWlsZGVyLCBGb3JtQXJyYXksIFZhbGlkYXRvcnMsIEZvcm1Db250cm9sIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XG5pbXBvcnQgeyBEeW5hbWljRGlhbG9nUmVmLCBEeW5hbWljRGlhbG9nQ29uZmlnIH0gZnJvbSBcInByaW1lbmcvYXBpXCI7XG5pbXBvcnQgeyBGb3JtRmllbGQsIEZpZWxkVHlwZSB9IGZyb20gXCJAc2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzXCI7XG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSBcIkBuZ3gtdHJhbnNsYXRlL2NvcmVcIjtcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCAqIGFzIF9tb21lbnQgZnJvbSBcIm1vbWVudFwiO1xuaW1wb3J0IHsgT3JkZW1Db21wcmFTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL2NvcmUvZW50aXRpZXMvb3JkZW0tY29tcHJhL29yZGVtLWNvbXByYS5zZXJ2aWNlXCI7XG5pbXBvcnQgeyBQZXNzb2EgfSBmcm9tICcuLy4uLy4uL2NvcmUvZW50aXRpZXMvcGVzc29hL3Blc3NvYSc7XG5pbXBvcnQgeyBGaWxpYWwgfSBmcm9tICcuLy4uLy4uL2NvcmUvZW50aXRpZXMvZmlsaWFsL2ZpbGlhbCc7XG5pbXBvcnQgeyBBZ2VuZGEgfSBmcm9tIFwiLi4vLi4vY29yZS9lbnRpdGllcy9hZ2VuZGEvYWdlbmRhXCI7XG5pbXBvcnQgeyBPcmRlbUNvbXByYSB9IGZyb20gXCIuLi8uLi9jb3JlL2VudGl0aWVzL29yZGVtLWNvbXByYS9vcmRlbS1jb21wcmFcIjtcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlIH0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XG5jb25zdCBtb21lbnQgPSBfbW9tZW50O1xuXG5AQ29tcG9uZW50KHtcbiAgICB0ZW1wbGF0ZVVybDogJy4vb3JkZW0tY29tcHJhLWZvcm0uY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIE9yZGVtQ29tcHJhRm9ybUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgICBwdWJsaWMgZm9ybUdyb3VwOiBGb3JtR3JvdXA7XG5cbiAgICBwdWJsaWMgb3JkZW1Db21wcmFTZWFyY2hGaWVsZHM6IEZvcm1GaWVsZFtdO1xuICAgIHB1YmxpYyBvcmRlbUNvbXByYVNlYXJjaEdyaWRGaWVsZHM6IEZvcm1GaWVsZFtdO1xuICAgIHB1YmxpYyBvcmRlbUNvbXByYVNlYXJjaEdyaWREYXRhOiBPcmRlbUNvbXByYVtdO1xuICAgIHB1YmxpYyBvcmRlbUNvbXByYUxvb2t1cERpc3BsYXlGaWVsZHMgPSBbXCJjb2RpZ29cIiwgXCJlbXByZXNhLm5vbWVcIl07XG4gICAgcHVibGljIG9yZGVtQ29tcHJhQWR2YW5jZWREaXNwbGF5RmllbGRzID0gW1wiaWRcIiwgXCJjb2RpZ29cIiwgXCJlbXByZXNhLm5vbWVcIiwgXCJmaWxpYWwubm9tZVwiLCBcInBlc3NvYS5ub21lXCJdO1xuICAgIHB1YmxpYyBvcmRlbUNvbXByYUxvb2t1cFNlcGFyYXRvciA9IFwiIC0gXCI7XG4gICAgcHVibGljIG9yZGVtQ29tcHJhTG9va3VwU3VnZ2VzdGlvbnM6IE9yZGVtQ29tcHJhW107XG4gICAgcHVibGljIG9yZGVtQ29tcHJhU2VhcmNoVG90YWxSZWNvcmRzOiBudW1iZXI7XG4gICAgcHVibGljIHBlcm1pc3Npb25zOiBhbnkgPSB7fTtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gICAgcHJpdmF0ZSBhZ2VuZGE6IEFnZW5kYTtcbiAgICBwcml2YXRlIGZpbGlhbDogRmlsaWFsO1xuICAgIHByaXZhdGUgZm9ybmVjZWRvcjogUGVzc29hO1xuICAgIHByaXZhdGUgb3JkZW5zQ29tcHJhOiBzdHJpbmdbXTtcblxuICAgIGNvbnN0cnVjdG9yIChcbiAgICAgICAgcHJpdmF0ZSBkaWFsb2dSZWY6IER5bmFtaWNEaWFsb2dSZWYsXG4gICAgICAgIHByaXZhdGUgZGlhbG9nQ29uZmlnOiBEeW5hbWljRGlhbG9nQ29uZmlnLFxuICAgICAgICBwcml2YXRlIG9yZGVtQ29tcHJhU2VydmljZTogT3JkZW1Db21wcmFTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBmYjogRm9ybUJ1aWxkZXIsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgICkgeyB9XG4gICBcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgeyBkYXRhIH0gPSB0aGlzLmRpYWxvZ0NvbmZpZztcbiAgICAgICAgdGhpcy5hZ2VuZGEgPSBkYXRhLmFnZW5kYTtcbiAgICAgICAgdGhpcy5maWxpYWwgPSBkYXRhLmZpbGlhbDtcbiAgICAgICAgdGhpcy5mb3JuZWNlZG9yID0gZGF0YS5mb3JuZWNlZG9yO1xuICAgICAgICB0aGlzLm9yZGVuc0NvbXByYSA9IGRhdGEub3JkZW5zLm1hcCgoeyBvcmRlbUNvbXByYTogb3JkZW1Db21wcmEgfTogYW55KSA9PiAhIW9yZGVtQ29tcHJhID8gb3JkZW1Db21wcmEuaWQgOiB1bmRlZmluZWQpLmZpbHRlcigodmFsOiBhbnkpID0+ICEhdmFsKTtcblxuICAgICAgICB0aGlzLmZvcm1Hcm91cCA9IHRoaXMuZ2V0Rm9ybSgpO1xuXG4gICAgICAgIHRoaXMub3JkZW1Db21wcmFTZWFyY2hGaWVsZHMgPSB0aGlzLmdldE9yZGVtQ29tcHJhRmllbGRzKCk7XG4gICAgICAgIHRoaXMub3JkZW1Db21wcmFTZWFyY2hHcmlkRmllbGRzID0gdGhpcy5nZXRPcmRlbUNvbXByYUdyaWRGaWVsZHMoKTtcbiAgICAgICAgdGhpcy5yb3V0ZS5kYXRhLnBpcGUodGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSkpLnN1YnNjcmliZSgoZGF0YUNoYW5nZXM6IGFueSkgPT4gdGhpcy5vblJvdXRlRGF0YUNoYW5nZShkYXRhQ2hhbmdlcykpO1xuICAgIH1cblxuICAgIHB1YmxpYyBvblJvdXRlRGF0YUNoYW5nZShkYXRhQ2hhbmdlczogYW55KSB7XG4gICAgICAgIHRoaXMucGVybWlzc2lvbnMgPSBkYXRhQ2hhbmdlcy5hbGxQZXJtaXNzaW9ucy5hZ2VuZGE7XG4gICAgfVxuICAgIFxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLm5nVW5zdWJzY3JpYmUubmV4dCgpO1xuICAgICAgICB0aGlzLm5nVW5zdWJzY3JpYmUuY29tcGxldGUoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb25PcmRlbUNvbXByYUxvb2t1cFJlcXVlc3QodmFsdWU6IHN0cmluZykge1xuICAgICAgICBjb25zdCBzb3J0ID0gdGhpcy5vcmRlbUNvbXByYUxvb2t1cERpc3BsYXlGaWVsZHMubWFwKChmaWVsZDogYW55KSA9PiAoeyBmaWVsZCwgb3JkZXI6ICdBc2MnIH0pKVswXTtcblxuICAgICAgICBjb25zdCBmaWx0ZXI6IGFueSA9IHtcbiAgICAgICAgICAgIG51bWVybzogK3ZhbHVlLnJlcGxhY2UoL1xcRC9nLCBcIlwiKVxuICAgICAgICB9O1xuXG4gICAgICAgIGNvbnN0IGZpbGlhbCA9IHRoaXMuZmlsaWFsO1xuICAgICAgICBpZiAoZmlsaWFsICYmIGZpbGlhbC5lbXByZXNhICYmIGZpbGlhbC5lbXByZXNhLmlkKSB7XG4gICAgICAgICAgICBmaWx0ZXIuZW1wcmVzYUlkID0gZmlsaWFsLmVtcHJlc2EuaWQ7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLm9yZGVtQ29tcHJhU2VydmljZVxuICAgICAgICAgICAgLmxpc3RPcmRlbnNDb21wcmEoe1xuICAgICAgICAgICAgICAgIC4uLmZpbHRlcixcbiAgICAgICAgICAgICAgICBwZXNzb2FJZDogKHRoaXMuZm9ybmVjZWRvciB8fCB7aWQ6IHVuZGVmaW5lZH0pLmlkLFxuICAgICAgICAgICAgICAgIGZpbGlhbElkOiAoZmlsaWFsIHx8IHtpZDogdW5kZWZpbmVkfSkuaWQsXG4gICAgICAgICAgICAgICAgdGlwb0FnZW5kYW1lbnRvSWQ6IHRoaXMuYWdlbmRhICYmIHRoaXMuYWdlbmRhLnRpcG9BZ2VuZGFtZW50byA/IHRoaXMuYWdlbmRhLnRpcG9BZ2VuZGFtZW50by5pZCA6IG51bGwsXG4gICAgICAgICAgICAgICAgb3JkZW5zQ29tcHJhU2VsZWNpb25hZG9zOiB0aGlzLm9yZGVuc0NvbXByYSxcbiAgICAgICAgICAgICAgICBwYWdpbmE6IHtcbiAgICAgICAgICAgICAgICAgICAgbGltaXQ6IDMwLFxuICAgICAgICAgICAgICAgICAgICBvZmZzZXQ6IDAsXG4gICAgICAgICAgICAgICAgICAgIGxpc3RhT3JkZW5hY2FvOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FtcG86IHNvcnQuZmllbGQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3JkZW5hY2FvOiBzb3J0Lm9yZGVyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLnN1YnNjcmliZSgobGlzdDogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5vcmRlbUNvbXByYUxvb2t1cFN1Z2dlc3Rpb25zID0gbGlzdC5jb250ZW50cy5tYXAoT3JkZW1Db21wcmEuZnJvbUR0byk7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb25PcmRlbUNvbXByYVNlYXJjaFJlcXVlc3QoZXZlbnQ6IGFueSkge1xuICAgICAgICBjb25zdCB7IGZpcnN0LCByb3dzLCBtdWx0aVNvcnRNZXRhLCBmaWx0ZXJEYXRhIH0gPSBldmVudDtcbiAgICAgICAgY29uc3QgcGFnZSA9IGZpcnN0IC8gcm93cztcbiAgICAgICAgY29uc3QgZmlsdGVyID0gdGhpcy5nZXRPcmRlbUNvbXByYUZpZWxkcygpXG4gICAgICAgICAgICAuZmlsdGVyKCh7IG5hbWUgfSkgPT4gZmlsdGVyRGF0YVtuYW1lXSAhPSB1bmRlZmluZWQgJiYgZmlsdGVyRGF0YVtuYW1lXSAhPSBcIlwiKVxuICAgICAgICAgICAgLnJlZHVjZSgoYSwgYjogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgLi4uYSxcbiAgICAgICAgICAgICAgICAgICAgW2IubmFtZV06IGZpbHRlckRhdGFbYi5uYW1lXVxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9LCB7fSBhcyBhbnkpO1xuXG4gICAgICAgIGNvbnN0IGZpbGlhbCA9IHRoaXMuZmlsaWFsO1xuICAgICAgICBpZiAoZmlsaWFsICYmIGZpbGlhbC5lbXByZXNhICYmIGZpbGlhbC5lbXByZXNhLmlkKSB7XG4gICAgICAgICAgICBmaWx0ZXIuZW1wcmVzYUlkID0gZmlsaWFsLmVtcHJlc2EuaWQ7XG4gICAgICAgIH1cblxuICAgICAgICBmaWx0ZXIuZGF0YUVtaXNzYW8gPSBmaWx0ZXIuZGF0YUVtaXNzYW8gJiYgbW9tZW50KGZpbHRlci5kYXRhRW1pc3NhbykuZm9ybWF0KFwiWVlZWS1NTS1ERFwiKTtcbiAgICAgICAgY29uc3Qgc29ydCA9IChtdWx0aVNvcnRNZXRhIHx8IFtdKS5sZW5ndGggPyB7IGZpZWxkOiBtdWx0aVNvcnRNZXRhWzBdLmZpZWxkLCBvcmRlcjogbXVsdGlTb3J0TWV0YVswXS5vcmRlciA9PT0gMSA/ICdBc2MnIDogJ0Rlc2MnIH0gOiB7IGZpZWxkOiAnbnVtZXJvJywgb3JkZXI6ICdBc2MnIH07XG5cbiAgICAgICAgdGhpcy5vcmRlbUNvbXByYVNlcnZpY2VcbiAgICAgICAgICAgIC5saXN0T3JkZW5zQ29tcHJhKHtcbiAgICAgICAgICAgICAgICAuLi5maWx0ZXIsXG4gICAgICAgICAgICAgICAgcGVzc29hSWQ6ICh0aGlzLmZvcm5lY2Vkb3IgfHwge2lkOiB1bmRlZmluZWR9KS5pZCxcbiAgICAgICAgICAgICAgICBmaWxpYWxJZDogKGZpbGlhbCB8fCB7aWQ6IHVuZGVmaW5lZH0pLmlkLFxuICAgICAgICAgICAgICAgIHRpcG9BZ2VuZGFtZW50b0lkOiB0aGlzLmFnZW5kYSAmJiB0aGlzLmFnZW5kYS50aXBvQWdlbmRhbWVudG8gPyB0aGlzLmFnZW5kYS50aXBvQWdlbmRhbWVudG8uaWQgOiBudWxsLFxuICAgICAgICAgICAgICAgIG9yZGVuc0NvbXByYVNlbGVjaW9uYWRvczogdGhpcy5vcmRlbnNDb21wcmEsXG4gICAgICAgICAgICAgICAgcGFnaW5hOiB7XG4gICAgICAgICAgICAgICAgICAgIGxpbWl0OiByb3dzLFxuICAgICAgICAgICAgICAgICAgICBvZmZzZXQ6IHBhZ2UsXG4gICAgICAgICAgICAgICAgICAgIGxpc3RhT3JkZW5hY2FvOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FtcG86IHNvcnQuZmllbGQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3JkZW5hY2FvOiBzb3J0Lm9yZGVyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLnN1YnNjcmliZSgobGlzdDogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5vcmRlbUNvbXByYVNlYXJjaEdyaWREYXRhID0gbGlzdC5jb250ZW50cy5tYXAoT3JkZW1Db21wcmEuZnJvbUR0byk7XG4gICAgICAgICAgICAgICAgdGhpcy5vcmRlbUNvbXByYVNlYXJjaFRvdGFsUmVjb3JkcyA9IGxpc3QudG90YWxFbGVtZW50cztcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRSZWNQYWdpbmEoZmlyc3Q6IG51bWJlciwgcm93czogbnVtYmVyLCBzb3J0OiBhbnkpIHtcbiAgICAgICAgY29uc3QgcGFnZSA9IGZpcnN0IC8gcm93cztcbiAgICAgICAgY29uc3Qgb3JkZXJCeSA9IHNvcnQgJiYgc29ydC5sZW5ndGggXG4gICAgICAgICAgICA/IHNvcnQubWFwKChzOiBhbnkpID0+ICAoeyBjYW1wbzogcy5maWVsZCwgb3JkZW5hY2FvOiBzLm9yZGVyID09PSAxID8gJ0FzYycgOiAnRGVzYycgfSkpIFxuICAgICAgICAgICAgOiBbXTtcblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgb2Zmc2V0OiBwYWdlLFxuICAgICAgICAgICAgbGltaXQ6IHJvd3MsXG4gICAgICAgICAgICBsaXN0YU9yZGVuYWNhbzogb3JkZXJCeVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB2YWxpZGF0ZUFsbEZvcm1GaWVsZHMoZm9ybUdyb3VwOiBGb3JtR3JvdXApIHtcbiAgICAgICAgT2JqZWN0LmtleXMoZm9ybUdyb3VwLmNvbnRyb2xzKS5mb3JFYWNoKGZpZWxkID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGNvbnRyb2wgPSBmb3JtR3JvdXAuZ2V0KGZpZWxkKTtcbiAgICAgICAgICAgIGlmIChjb250cm9sIGluc3RhbmNlb2YgRm9ybUNvbnRyb2wpIHtcbiAgICAgICAgICAgICAgICBjb250cm9sLm1hcmtBc0RpcnR5KHsgb25seVNlbGY6IHRydWUgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmIChjb250cm9sIGluc3RhbmNlb2YgRm9ybUdyb3VwKXtcbiAgICAgICAgICAgICAgICB0aGlzLnZhbGlkYXRlQWxsRm9ybUZpZWxkcyhjb250cm9sKTtcbiAgICAgICAgICAgIH0gXG4gICAgICAgICAgICBlbHNlIGlmIChjb250cm9sIGluc3RhbmNlb2YgRm9ybUFycmF5KSB7XG4gICAgICAgICAgICAgICAgY29udHJvbC5jb250cm9scy5mb3JFYWNoKChmb3JtOiBGb3JtR3JvdXApID0+IHRoaXMudmFsaWRhdGVBbGxGb3JtRmllbGRzKGZvcm0pKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIHNhdmUoKSB7XG4gICAgICAgIGlmICghdGhpcy5mb3JtR3JvdXAudmFsaWQpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnZhbGlkYXRlQWxsRm9ybUZpZWxkcyh0aGlzLmZvcm1Hcm91cCk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jbG9zZSh0aGlzLmZvcm1Hcm91cC5nZXQoJ29yZGVtQ29tcHJhJykudmFsdWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBjbG9zZShkYXRhPzogYW55KSB7XG4gICAgICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKGRhdGEpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0Rm9ybSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZmIuZ3JvdXAoe1xuICAgICAgICAgICAgb3JkZW1Db21wcmE6IFt1bmRlZmluZWQsIFZhbGlkYXRvcnMucmVxdWlyZWRdXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0T3JkZW1Db21wcmFGaWVsZHMoKSB7XG4gICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICBuZXcgRm9ybUZpZWxkKHtcbiAgICAgICAgICAgICAgICBuYW1lOiBcImNvZGlnb1wiLFxuICAgICAgICAgICAgICAgIHR5cGU6IEZpZWxkVHlwZS5TdHJpbmcsXG4gICAgICAgICAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoXCJ5bXMuZXJwLm9yZGVtX2NvbXByYV9jb2RpZ29cIilcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgbmV3IEZvcm1GaWVsZCh7XG4gICAgICAgICAgICAgICAgbmFtZTogXCJlbXByZXNhLm5vbWVcIixcbiAgICAgICAgICAgICAgICB0eXBlOiBGaWVsZFR5cGUuU3RyaW5nLFxuICAgICAgICAgICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFwieW1zLmVycC5lbXByZXNhXCIpXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIG5ldyBGb3JtRmllbGQoe1xuICAgICAgICAgICAgICAgIG5hbWU6IFwiZmlsaWFsLm5vbWVcIixcbiAgICAgICAgICAgICAgICB0eXBlOiBGaWVsZFR5cGUuU3RyaW5nLFxuICAgICAgICAgICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFwieW1zLmVycC5maWxpYWxcIilcbiAgICAgICAgICAgIH0pLFxuICAgICAgICBdO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0T3JkZW1Db21wcmFHcmlkRmllbGRzKCkge1xuICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgbmV3IEZvcm1GaWVsZCh7XG4gICAgICAgICAgICAgICAgbmFtZTogXCJjb2RpZ29cIixcbiAgICAgICAgICAgICAgICB0eXBlOiBGaWVsZFR5cGUuSW50ZWdlcixcbiAgICAgICAgICAgICAgICBsYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcInltcy5lcnAub3JkZW1fY29tcHJhX2NvZGlnb1wiKVxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBuZXcgRm9ybUZpZWxkKHtcbiAgICAgICAgICAgICAgICBuYW1lOiBcImVtcHJlc2Eubm9tZVwiLFxuICAgICAgICAgICAgICAgIHR5cGU6IEZpZWxkVHlwZS5TdHJpbmcsXG4gICAgICAgICAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoXCJ5bXMuZXJwLmVtcHJlc2FcIilcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgbmV3IEZvcm1GaWVsZCh7XG4gICAgICAgICAgICAgICAgbmFtZTogXCJmaWxpYWwubm9tZVwiLFxuICAgICAgICAgICAgICAgIHR5cGU6IEZpZWxkVHlwZS5TdHJpbmcsXG4gICAgICAgICAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoXCJ5bXMuZXJwLmZpbGlhbFwiKVxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBuZXcgRm9ybUZpZWxkKHtcbiAgICAgICAgICAgICAgICBuYW1lOiBcInBlc3NvYS5ub21lXCIsXG4gICAgICAgICAgICAgICAgdHlwZTogRmllbGRUeXBlLlN0cmluZyxcbiAgICAgICAgICAgICAgICBsYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcInltcy5lcnAucGVzc29hX25vbWVcIilcbiAgICAgICAgICAgIH0pLFxuICAgICAgICBdO1xuICAgIH1cbn0iXX0=
@@ -104,13 +104,16 @@ let CredencialFormComponent = class CredencialFormComponent {
104
104
  else if (control instanceof FormGroup) {
105
105
  this.validateAllFormFields(control);
106
106
  }
107
+ else {
108
+ throw 'Instance fot found';
109
+ }
107
110
  });
108
111
  formGroup.markAsDirty({ onlySelf: true });
109
112
  }
110
113
  };
111
114
  CredencialFormComponent = tslib_1.__decorate([
112
115
  Component({
113
- template: "<form [formGroup]=\"formGroup\">\n <div class=\"ui-g ui-fluid\">\n <div class=\"ui-g-12 required\">\n <label for=\"tecnologiaCracha\">{{\n \"yms.patio.motorista_tecnologiaCracha\" | translate\n }}</label>\n <p-dropdown\n inputId=\"tecnologiaCracha\"\n name=\"tecnologiaCracha\"\n [options]=\"this.technologies\"\n formControlName=\"tecnologiaCracha\"\n [autoWidth]=\"false\"\n placeholder=\"{{\n 'yms.patio.visitante_credencial_tecnologia_cracha_place_holder' | translate\n }}\"\n ></p-dropdown>\n <s-control-errors\n [control]=\"formGroup.controls['tecnologiaCracha']\"\n [errorMessages]=\"{ required: 'error_required' | translate }\"\n ></s-control-errors>\n </div>\n <div class=\"ui-g-12 required\">\n <label for=\"numero\">{{ \"yms.patio.visitante_credencial_numero\" | translate }}</label>\n <input\n type=\"text\"\n name=\"numero\"\n pInputText\n formControlName=\"numero\"\n autocomplete=\"off\"\n />\n <s-control-errors\n [control]=\"formGroup.controls['numero']\"\n [errorMessages]=\"{ required: 'error_required' | translate }\"\n ></s-control-errors>\n </div>\n <div class=\"ui-g-12 ui-md-6 required\">\n <label for=\"validadeCredencial\">{{\n \"yms.patio.visitante_validade_credencial\" | translate\n }}</label>\n <input\n type=\"text\"\n name=\"validadeCredencial\"\n pInputText\n formControlName=\"validadeCredencial\"\n autocomplete=\"off\"\n />\n <s-control-errors\n [control]=\"formGroup.controls['numero']\"\n [errorMessages]=\"{ required: 'error_required' | translate }\"\n ></s-control-errors>\n </div>\n <div class=\"ui-g-12 ui-md-6 required\">\n <label for=\"hora\">{{ \"yms.patio.visitante_credecnial_hora\" | translate }}</label>\n <p-calendar\n id=\"hora\"\n name=\"hora\"\n formControlName=\"hora\"\n [locale]=\"localeConfig.calendar\"\n inputId=\"hora\"\n [showTime]=\"true\"\n [hourFormat]=\"localeConfig.calendar.hourFormat\"\n [timeOnly]=\"true\"\n >\n </p-calendar>\n <s-control-errors\n [control]=\"formGroup.controls['numero']\"\n [errorMessages]=\"{ required: 'error_required' | translate }\"\n ></s-control-errors>\n </div>\n </div>\n\n <s-button\n [label]=\"'yms.patio.visitante_button_cancelar' | translate\"\n (onClick)=\"close()\"\n priority=\"link\"\n ></s-button>\n <s-button\n [label]=\"'yms.patio.visitante_button_gerar' | translate\"\n (onClick)=\"gerar()\"\n ></s-button>\n</form>\n",
116
+ template: "<form [formGroup]=\"formGroup\">\n <div class=\"ui-g ui-fluid\">\n <div class=\"ui-g-12 required\">\n <label for=\"tecnologiaCracha\">{{\n \"yms.patio.motorista_tecnologiaCracha\" | translate\n }}</label>\n <p-dropdown\n inputId=\"tecnologiaCracha\"\n name=\"tecnologiaCracha\"\n [options]=\"this.technologies\"\n formControlName=\"tecnologiaCracha\"\n [autoWidth]=\"false\"\n placeholder=\"{{\n 'yms.patio.visitante_credencial_tecnologia_cracha_place_holder' | translate\n }}\"\n ></p-dropdown>\n <s-control-errors\n [control]=\"formGroup.controls['tecnologiaCracha']\"\n [errorMessages]=\"{ required: 'error_required' | translate }\"\n ></s-control-errors>\n </div>\n <div class=\"ui-g-12 required\">\n <label for=\"numero\">{{ \"yms.patio.visitante_credencial_numero\" | translate }}</label>\n <input\n id=\"numero\"\n type=\"text\"\n name=\"numero\"\n pInputText\n formControlName=\"numero\"\n autocomplete=\"off\"\n />\n <s-control-errors\n [control]=\"formGroup.controls['numero']\"\n [errorMessages]=\"{ required: 'error_required' | translate }\"\n ></s-control-errors>\n </div>\n <div class=\"ui-g-12 ui-md-6 required\">\n <label for=\"validadeCredencial\">{{\n \"yms.patio.visitante_validade_credencial\" | translate\n }}</label>\n <input\n id=\"validadeCredencial\"\n type=\"text\"\n name=\"validadeCredencial\"\n pInputText\n formControlName=\"validadeCredencial\"\n autocomplete=\"off\"\n />\n <s-control-errors\n [control]=\"formGroup.controls['numero']\"\n [errorMessages]=\"{ required: 'error_required' | translate }\"\n ></s-control-errors>\n </div>\n <div class=\"ui-g-12 ui-md-6 required\">\n <label for=\"hora\">{{ \"yms.patio.visitante_credecnial_hora\" | translate }}</label>\n <p-calendar\n id=\"hora\"\n name=\"hora\"\n formControlName=\"hora\"\n [locale]=\"localeConfig.calendar\"\n inputId=\"hora\"\n [showTime]=\"true\"\n [hourFormat]=\"localeConfig.calendar.hourFormat\"\n [timeOnly]=\"true\"\n >\n </p-calendar>\n <s-control-errors\n [control]=\"formGroup.controls['numero']\"\n [errorMessages]=\"{ required: 'error_required' | translate }\"\n ></s-control-errors>\n </div>\n </div>\n\n <s-button\n [label]=\"'yms.patio.visitante_button_cancelar' | translate\"\n (onClick)=\"close()\"\n priority=\"link\"\n ></s-button>\n <s-button\n [label]=\"'yms.patio.visitante_button_gerar' | translate\"\n (onClick)=\"gerar()\"\n ></s-button>\n</form>\n",
114
117
  providers: [ConfirmationService]
115
118
  }),
116
119
  tslib_1.__metadata("design:paramtypes", [FormBuilder,
@@ -120,4 +123,4 @@ CredencialFormComponent = tslib_1.__decorate([
120
123
  DynamicDialogConfig])
121
124
  ], CredencialFormComponent);
122
125
  export { CredencialFormComponent };
123
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlZGVuY2lhbC1mb3JtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzZW5pb3JzaXN0ZW1hcy95bXMtaW50ZWdyYXRpb24vIiwic291cmNlcyI6WyJzcmMvc2FtLXNlbmlvci9jb21wb25lbnRzL2NyZWRlbmNpYWwtZm9ybS9jcmVkZW5jaWFsLWZvcm0uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsU0FBUyxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDakYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLG1CQUFtQixFQUFFLGdCQUFnQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEtBQUssT0FBTyxNQUFNLFFBQVEsQ0FBQztBQUNsQyxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUM7QUFDdkIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBT3BFLElBQWEsdUJBQXVCLEdBQXBDLE1BQWEsdUJBQXVCO0lBT2hDLFlBQ1ksRUFBZSxFQUNmLFNBQTJCLEVBQzNCLFNBQTJCLEVBQzNCLEtBQXFCLEVBQ3JCLFlBQWlDO1FBSmpDLE9BQUUsR0FBRixFQUFFLENBQWE7UUFDZixjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQUMzQixjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQUMzQixVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUNyQixpQkFBWSxHQUFaLFlB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Q25DLENBQUM7NkNBU2tCLFdBQVc7UUFDSixnQkFBZ0I7UUFDaEIsZ0JBQWdCO1FBQ3BCLGNBQWM7UUFDUCxtQkFBbUI7R0FacEMsdUJBQXVCLENBaUluQztTQWpJWSx1QkFBdUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlIH0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xuaW1wb3J0IHsgQ29uZmlybWF0aW9uU2VydmljZSwgRHluYW1pY0RpYWxvZ0NvbmZpZywgRHluYW1pY0RpYWxvZ1JlZiB9IGZyb20gXCJwcmltZW5nL2FwaVwiO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XG5pbXBvcnQgKiBhcyBfbW9tZW50IGZyb20gXCJtb21lbnRcIjtcbmNvbnN0IG1vbWVudCA9IF9tb21lbnQ7XG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSBcIkBuZ3gtdHJhbnNsYXRlL2NvcmVcIjtcbmltcG9ydCB7IENhcmRUZWNobm9sb2d5IH0gZnJvbSBcIi4uLy4uL2VudGl0aWVzL2NyZWRlbnRpYWwtY2FyZC1kdG9cIjtcbmltcG9ydCB7IFZpc2l0b3IgfSBmcm9tIFwiLi4vLi4vbW9kZWxzL3Zpc2l0b3JcIjtcblxuQENvbXBvbmVudCh7XG4gICAgdGVtcGxhdGVVcmw6IFwiLi9jcmVkZW5jaWFsLWZvcm0uY29tcG9uZW50Lmh0bWxcIixcbiAgICBwcm92aWRlcnM6IFtDb25maXJtYXRpb25TZXJ2aWNlXSxcbn0pXG5leHBvcnQgY2xhc3MgQ3JlZGVuY2lhbEZvcm1Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gICAgZm9ybUdyb3VwOiBGb3JtR3JvdXA7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IHVuc3Vic2NyaWJlJCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gICAgcHVibGljIHRlY2hub2xvZ2llczogYW55W10gPSBbXTtcbiAgICBwdWJsaWMgbG9jYWxlQ29uZmlnOiBhbnkgPSB7fTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGZiOiBGb3JtQnVpbGRlcixcbiAgICAgICAgcHJpdmF0ZSBkaWFsb2dSZWY6IER5bmFtaWNEaWFsb2dSZWYsXG4gICAgICAgIHByaXZhdGUgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICAgICAgcHJpdmF0ZSBkaWFsb2dDb25maWc6IER5bmFtaWNEaWFsb2dDb25maWdcbiAgICApIHt9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgdGhpcy5mb3JtR3JvdXAgPSB0aGlzLmZiLmdyb3VwKHtcbiAgICAgICAgICAgIHRlY25vbG9naWFDcmFjaGE6IFt1bmRlZmluZWQsIFZhbGlkYXRvcnMuY29tcG9zZShbVmFsaWRhdG9ycy5yZXF1aXJlZF0pXSxcbiAgICAgICAgICAgIG51bWVybzogW3VuZGVmaW5lZCwgVmFsaWRhdG9ycy5jb21wb3NlKFtWYWxpZGF0b3JzLnJlcXVpcmVkXSldLFxuICAgICAgICAgICAgdmFsaWRhZGVDcmVkZW5jaWFsOiBbdW5kZWZpbmVkLCBWYWxpZGF0b3JzLmNvbXBvc2UoW1ZhbGlkYXRvcnMucmVxdWlyZWRdKV0sXG4gICAgICAgICAgICBob3JhOiBbdW5kZWZpbmVkLCBWYWxpZGF0b3JzLmNvbXBvc2UoW1ZhbGlkYXRvcnMucmVxdWlyZWRdKV0sXG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMucm91dGUuZGF0YS5waXBlKHRha2VVbnRpbCh0aGlzLnVuc3Vic2NyaWJlJCkpLnN1YnNjcmliZSgoZGF0YTogYW55KSA9PiB7XG4gICAgICAgICAgICB0aGlzLmxvY2FsZUNvbmZpZyA9IGRhdGEubG9jYWxlQ29uZmlnO1xuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLnRlY25vbG9naWFDcmFjaGEoXG4gICAgICAgICAgICBDYXJkVGVjaG5vbG9neS5CQVJDT0RFX0NBUkQsXG4gICAgICAgICAgICBDYXJkVGVjaG5vbG9neS5SRklEX0NBUkQsXG4gICAgICAgICAgICBDYXJkVGVjaG5vbG9neS5TTUFSVF9DQVJEXG4gICAgICAgICk7XG5cbiAgICAgICAgdGhpcy5mb3JtYXRhRGF0YUVIb3JhRGFDcmVkZW5jaWFsKCk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKSB7XG4gICAgICAgIHRoaXMudW5zdWJzY3JpYmUkLm5leHQoKTtcbiAgICAgICAgdGhpcy51bnN1YnNjcmliZSQuY29tcGxldGUoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2VyYXIoKSB7XG4gICAgICAgIGlmICghdGhpcy5mb3JtR3JvdXAudmFsaWQpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnZhbGlkYXRlQWxsRm9ybUZpZWxkcyh0aGlzLmZvcm1Hcm91cCk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBlbmREYXRlID0gdGhpcy5nZXREYXRhSG9yYSgpO1xuICAgICAgICBjb25zdCB2aXNpdGFudGUgPSB0aGlzLmRpYWxvZ0NvbmZpZy5kYXRhLnZpc2l0YW50ZTtcblxuICAgICAgICBjb25zdCB2aXNpdG9yQ3JlZGVudGlhbENhcmRMaXN0ID0gdGhpcy5nZXJhckNyZWRlbmNpYWwodmlzaXRhbnRlLCBlbmREYXRlKTtcbiAgICAgICAgdGhpcy5jbG9zZSh2aXNpdG9yQ3JlZGVudGlhbENhcmRMaXN0KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgdGVjbm9sb2dpYUNyYWNoYSguLi5jYXJkVGVjaG5vbG9naWVzOiBDYXJkVGVjaG5vbG9neVtdKSB7XG4gICAgICAgIHRoaXMudGVjaG5vbG9naWVzID0gW107XG5cbiAgICAgICAgZm9yIChjb25zdCBjYXJkVGVjaG5vbG9neSBvZiBjYXJkVGVjaG5vbG9naWVzKSB7XG4gICAgICAgICAgICB0aGlzLnRlY2hub2xvZ2llcy5wdXNoKHtcbiAgICAgICAgICAgICAgICBsYWJlbDogdGhpcy5nZXRUZWNub2xvZ2lhQ3JhY2hhVHJhZHV6aWRhKGNhcmRUZWNobm9sb2d5KSxcbiAgICAgICAgICAgICAgICB2YWx1ZTogY2FyZFRlY2hub2xvZ3ksXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0VGVjbm9sb2dpYUNyYWNoYVRyYWR1emlkYShjYXJkVGVjaG5vbG9neTogQ2FyZFRlY2hub2xvZ3kpOiBzdHJpbmcge1xuICAgICAgICBpZiAoY2FyZFRlY2hub2xvZ3kgPT09IENhcmRUZWNobm9sb2d5LkJBUkNPREVfQ0FSRCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoXCJ5bXMucGF0aW8uY2FydGFvX2NyZWRlbmNpYWxfY29kaWdvX2JhcnJhc1wiKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChjYXJkVGVjaG5vbG9neSA9PT0gQ2FyZFRlY2hub2xvZ3kuUkZJRF9DQVJEKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy50cmFuc2xhdGUuaW5zdGFudChcInltcy5wYXRpby5jYXJ0YW9fY3JlZGVuY2lhbF9yZmlkXCIpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGNhcmRUZWNobm9sb2d5ID09PSBDYXJkVGVjaG5vbG9neS5TTUFSVF9DQVJEKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy50cmFuc2xhdGUuaW5zdGFudChcInltcy5wYXRpby5jYXJ0YW9fY3JlZGVuY2lhbF9zbWFydFwiKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBmb3JtYXRhRGF0YUVIb3JhRGFDcmVkZW5jaWFsKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBkYXRhID0gbW9tZW50KCkuYWRkKDEsIFwiaG91clwiKTtcbiAgICAgICAgdGhpcy5mb3JtR3JvdXAuZ2V0KFwidmFsaWRhZGVDcmVkZW5jaWFsXCIpLmRpc2FibGUoKTtcblxuICAgICAgICB0aGlzLmRlZmluaVZhbG9yKFwidmFsaWRhZGVDcmVkZW5jaWFsXCIsIGRhdGEuZm9ybWF0KFwiREQvTU0vWVlZWVwiKSk7XG4gICAgICAgIHRoaXMuZGVmaW5pVmFsb3IoXCJob3JhXCIsIGRhdGEuZm9ybWF0KFwiSEg6bW1cIikpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0RGF0YUhvcmEoKTogRGF0ZSB7XG4gICAgICAgIGNvbnN0IGRhdGFIb3JhOiBEYXRlID0gbmV3IERhdGUoKTtcbiAgICAgICAgY29uc3QgaG9yYVZhbHVlID0gdGhpcy5mb3JtR3JvdXAuZ2V0KFwiaG9yYVwiKS52YWx1ZTtcblxuICAgICAgICBjb25zdCBob3JhczogbnVtYmVyID0gbW9tZW50KCkuZGF0ZShob3JhVmFsdWUpLmFkZCgxLCBcImhvdXJcIikuaG91cnMoKTtcbiAgICAgICAgY29uc3QgbWludXRvczogbnVtYmVyID0gbW9tZW50KCkuZGF0ZShob3JhVmFsdWUpLm1pbnV0ZXMoKTtcblxuICAgICAgICBkYXRhSG9yYS5zZXRIb3Vycyhob3Jhcyk7XG4gICAgICAgIGRhdGFIb3JhLnNldE1pbnV0ZXMobWludXRvcyk7XG5cbiAgICAgICAgcmV0dXJuIGRhdGFIb3JhO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2VyYXJDcmVkZW5jaWFsKHZpc2l0YW50ZTogVmlzaXRvciwgZW5kRGF0ZTogRGF0ZSkge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgdmlzaXRvcjogdmlzaXRhbnRlLFxuICAgICAgICAgICAgY2FyZFRlY2hub2xvZ3k6IHRoaXMuZm9ybUdyb3VwLmdldChcInRlY25vbG9naWFDcmFjaGFcIikudmFsdWUsXG4gICAgICAgICAgICBjYXJkTnVtYmVyOiB0aGlzLmZvcm1Hcm91cC5nZXQoXCJudW1lcm9cIikudmFsdWUsXG4gICAgICAgICAgICBlbmREYXRlOiBlbmREYXRlLFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIHByaXZhdGUgZGVmaW5pVmFsb3IoY2FtcG86IHN0cmluZywgdmFsb3I6IGFueSk6IHZvaWQge1xuICAgICAgICByZXR1cm4gdGhpcy5mb3JtR3JvdXAuZ2V0KGNhbXBvKS5zZXRWYWx1ZSh2YWxvcik7XG4gICAgfVxuXG4gICAgcHVibGljIGNsb3NlKGRhdGE/OiBhbnkpIHtcbiAgICAgICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UoZGF0YSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB2YWxpZGF0ZUFsbEZvcm1GaWVsZHMoZm9ybUdyb3VwOiBGb3JtR3JvdXApIHtcbiAgICAgICAgT2JqZWN0LmtleXMoZm9ybUdyb3VwLmNvbnRyb2xzKS5mb3JFYWNoKChmaWVsZCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgY29udHJvbCA9IGZvcm1Hcm91cC5nZXQoZmllbGQpO1xuXG4gICAgICAgICAgICBpZiAoY29udHJvbCBpbnN0YW5jZW9mIEZvcm1Db250cm9sKSB7XG4gICAgICAgICAgICAgICAgY29udHJvbC5tYXJrQXNEaXJ0eSh7IG9ubHlTZWxmOiB0cnVlIH0pO1xuICAgICAgICAgICAgfSBlbHNlIGlmIChjb250cm9sIGluc3RhbmNlb2YgRm9ybUdyb3VwKSB7XG4gICAgICAgICAgICAgICAgdGhpcy52YWxpZGF0ZUFsbEZvcm1GaWVsZHMoY29udHJvbCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGZvcm1Hcm91cC5tYXJrQXNEaXJ0eSh7IG9ubHlTZWxmOiB0cnVlIH0pO1xuICAgIH1cbn0iXX0=
126
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlZGVuY2lhbC1mb3JtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzZW5pb3JzaXN0ZW1hcy95bXMtaW50ZWdyYXRpb24vIiwic291cmNlcyI6WyJzcmMvc2FtLXNlbmlvci9jb21wb25lbnRzL2NyZWRlbmNpYWwtZm9ybS9jcmVkZW5jaWFsLWZvcm0uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsU0FBUyxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDakYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLG1CQUFtQixFQUFFLGdCQUFnQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEtBQUssT0FBTyxNQUFNLFFBQVEsQ0FBQztBQUNsQyxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUM7QUFDdkIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBT3BFLElBQWEsdUJBQXVCLEdBQXBDLE1BQWEsdUJBQXVCO0lBT2hDLFlBQ1ksRUFBZSxFQUNmLFNBQTJCLEVBQzNCLFNBQTJCLEVBQzNCLEtBQXFCLEVBQ3JCLFlBQWlDO1FBSmpDLE9BQUUsR0FBRixFQUFFLENBQWE7UUFDZixjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQUMzQixjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQUMzQixVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUNyQixpQkFBWSxHQUFaLFlB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UUFDL0MsU0FBUyxFQUFFLENBQUMsbUJBQW1CLENBQUM7S0FDbkMsQ0FBQzs2Q0FTa0IsV0FBVztRQUNKLGdCQUFnQjtRQUNoQixnQkFBZ0I7UUFDcEIsY0FBYztRQUNQLG1CQUFtQjtHQVpwQyx1QkFBdUIsQ0FtSW5DO1NBbklZLHVCQUF1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFN1YmplY3QgfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUgfSBmcm9tIFwiQGFuZ3VsYXIvcm91dGVyXCI7XG5pbXBvcnQgeyBDb21wb25lbnQsIE9uRGVzdHJveSwgT25Jbml0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtQ29udHJvbCwgRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XG5pbXBvcnQgeyBDb25maXJtYXRpb25TZXJ2aWNlLCBEeW5hbWljRGlhbG9nQ29uZmlnLCBEeW5hbWljRGlhbG9nUmVmIH0gZnJvbSBcInByaW1lbmcvYXBpXCI7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcbmltcG9ydCAqIGFzIF9tb21lbnQgZnJvbSBcIm1vbWVudFwiO1xuY29uc3QgbW9tZW50ID0gX21vbWVudDtcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tIFwiQG5neC10cmFuc2xhdGUvY29yZVwiO1xuaW1wb3J0IHsgQ2FyZFRlY2hub2xvZ3kgfSBmcm9tIFwiLi4vLi4vZW50aXRpZXMvY3JlZGVudGlhbC1jYXJkLWR0b1wiO1xuaW1wb3J0IHsgVmlzaXRvciB9IGZyb20gXCIuLi8uLi9tb2RlbHMvdmlzaXRvclwiO1xuXG5AQ29tcG9uZW50KHtcbiAgICB0ZW1wbGF0ZVVybDogXCIuL2NyZWRlbmNpYWwtZm9ybS5jb21wb25lbnQuaHRtbFwiLFxuICAgIHByb3ZpZGVyczogW0NvbmZpcm1hdGlvblNlcnZpY2VdLFxufSlcbmV4cG9ydCBjbGFzcyBDcmVkZW5jaWFsRm9ybUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgICBmb3JtR3JvdXA6IEZvcm1Hcm91cDtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgdW5zdWJzY3JpYmUkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgICBwdWJsaWMgdGVjaG5vbG9naWVzOiBhbnlbXSA9IFtdO1xuICAgIHB1YmxpYyBsb2NhbGVDb25maWc6IGFueSA9IHt9O1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyLFxuICAgICAgICBwcml2YXRlIGRpYWxvZ1JlZjogRHluYW1pY0RpYWxvZ1JlZixcbiAgICAgICAgcHJpdmF0ZSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgICAgICBwcml2YXRlIGRpYWxvZ0NvbmZpZzogRHluYW1pY0RpYWxvZ0NvbmZpZ1xuICAgICkge31cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICB0aGlzLmZvcm1Hcm91cCA9IHRoaXMuZmIuZ3JvdXAoe1xuICAgICAgICAgICAgdGVjbm9sb2dpYUNyYWNoYTogW3VuZGVmaW5lZCwgVmFsaWRhdG9ycy5jb21wb3NlKFtWYWxpZGF0b3JzLnJlcXVpcmVkXSldLFxuICAgICAgICAgICAgbnVtZXJvOiBbdW5kZWZpbmVkLCBWYWxpZGF0b3JzLmNvbXBvc2UoW1ZhbGlkYXRvcnMucmVxdWlyZWRdKV0sXG4gICAgICAgICAgICB2YWxpZGFkZUNyZWRlbmNpYWw6IFt1bmRlZmluZWQsIFZhbGlkYXRvcnMuY29tcG9zZShbVmFsaWRhdG9ycy5yZXF1aXJlZF0pXSxcbiAgICAgICAgICAgIGhvcmE6IFt1bmRlZmluZWQsIFZhbGlkYXRvcnMuY29tcG9zZShbVmFsaWRhdG9ycy5yZXF1aXJlZF0pXSxcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5yb3V0ZS5kYXRhLnBpcGUodGFrZVVudGlsKHRoaXMudW5zdWJzY3JpYmUkKSkuc3Vic2NyaWJlKChkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgICAgIHRoaXMubG9jYWxlQ29uZmlnID0gZGF0YS5sb2NhbGVDb25maWc7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMudGVjbm9sb2dpYUNyYWNoYShcbiAgICAgICAgICAgIENhcmRUZWNobm9sb2d5LkJBUkNPREVfQ0FSRCxcbiAgICAgICAgICAgIENhcmRUZWNobm9sb2d5LlJGSURfQ0FSRCxcbiAgICAgICAgICAgIENhcmRUZWNobm9sb2d5LlNNQVJUX0NBUkRcbiAgICAgICAgKTtcblxuICAgICAgICB0aGlzLmZvcm1hdGFEYXRhRUhvcmFEYUNyZWRlbmNpYWwoKTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgdGhpcy51bnN1YnNjcmliZSQubmV4dCgpO1xuICAgICAgICB0aGlzLnVuc3Vic2NyaWJlJC5jb21wbGV0ZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXJhcigpIHtcbiAgICAgICAgaWYgKCF0aGlzLmZvcm1Hcm91cC52YWxpZCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMudmFsaWRhdGVBbGxGb3JtRmllbGRzKHRoaXMuZm9ybUdyb3VwKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGVuZERhdGUgPSB0aGlzLmdldERhdGFIb3JhKCk7XG4gICAgICAgIGNvbnN0IHZpc2l0YW50ZSA9IHRoaXMuZGlhbG9nQ29uZmlnLmRhdGEudmlzaXRhbnRlO1xuXG4gICAgICAgIGNvbnN0IHZpc2l0b3JDcmVkZW50aWFsQ2FyZExpc3QgPSB0aGlzLmdlcmFyQ3JlZGVuY2lhbCh2aXNpdGFudGUsIGVuZERhdGUpO1xuICAgICAgICB0aGlzLmNsb3NlKHZpc2l0b3JDcmVkZW50aWFsQ2FyZExpc3QpO1xuICAgIH1cblxuICAgIHB1YmxpYyB0ZWNub2xvZ2lhQ3JhY2hhKC4uLmNhcmRUZWNobm9sb2dpZXM6IENhcmRUZWNobm9sb2d5W10pIHtcbiAgICAgICAgdGhpcy50ZWNobm9sb2dpZXMgPSBbXTtcblxuICAgICAgICBmb3IgKGNvbnN0IGNhcmRUZWNobm9sb2d5IG9mIGNhcmRUZWNobm9sb2dpZXMpIHtcbiAgICAgICAgICAgIHRoaXMudGVjaG5vbG9naWVzLnB1c2goe1xuICAgICAgICAgICAgICAgIGxhYmVsOiB0aGlzLmdldFRlY25vbG9naWFDcmFjaGFUcmFkdXppZGEoY2FyZFRlY2hub2xvZ3kpLFxuICAgICAgICAgICAgICAgIHZhbHVlOiBjYXJkVGVjaG5vbG9neSxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRUZWNub2xvZ2lhQ3JhY2hhVHJhZHV6aWRhKGNhcmRUZWNobm9sb2d5OiBDYXJkVGVjaG5vbG9neSk6IHN0cmluZyB7XG4gICAgICAgIGlmIChjYXJkVGVjaG5vbG9neSA9PT0gQ2FyZFRlY2hub2xvZ3kuQkFSQ09ERV9DQVJEKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy50cmFuc2xhdGUuaW5zdGFudChcInltcy5wYXRpby5jYXJ0YW9fY3JlZGVuY2lhbF9jb2RpZ29fYmFycmFzXCIpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGNhcmRUZWNobm9sb2d5ID09PSBDYXJkVGVjaG5vbG9neS5SRklEX0NBUkQpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFwieW1zLnBhdGlvLmNhcnRhb19jcmVkZW5jaWFsX3JmaWRcIik7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoY2FyZFRlY2hub2xvZ3kgPT09IENhcmRUZWNobm9sb2d5LlNNQVJUX0NBUkQpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFwieW1zLnBhdGlvLmNhcnRhb19jcmVkZW5jaWFsX3NtYXJ0XCIpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGZvcm1hdGFEYXRhRUhvcmFEYUNyZWRlbmNpYWwoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGRhdGEgPSBtb21lbnQoKS5hZGQoMSwgXCJob3VyXCIpO1xuICAgICAgICB0aGlzLmZvcm1Hcm91cC5nZXQoXCJ2YWxpZGFkZUNyZWRlbmNpYWxcIikuZGlzYWJsZSgpO1xuXG4gICAgICAgIHRoaXMuZGVmaW5pVmFsb3IoXCJ2YWxpZGFkZUNyZWRlbmNpYWxcIiwgZGF0YS5mb3JtYXQoXCJERC9NTS9ZWVlZXCIpKTtcbiAgICAgICAgdGhpcy5kZWZpbmlWYWxvcihcImhvcmFcIiwgZGF0YS5mb3JtYXQoXCJISDptbVwiKSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXREYXRhSG9yYSgpOiBEYXRlIHtcbiAgICAgICAgY29uc3QgZGF0YUhvcmE6IERhdGUgPSBuZXcgRGF0ZSgpO1xuICAgICAgICBjb25zdCBob3JhVmFsdWUgPSB0aGlzLmZvcm1Hcm91cC5nZXQoXCJob3JhXCIpLnZhbHVlO1xuXG4gICAgICAgIGNvbnN0IGhvcmFzOiBudW1iZXIgPSBtb21lbnQoKS5kYXRlKGhvcmFWYWx1ZSkuYWRkKDEsIFwiaG91clwiKS5ob3VycygpO1xuICAgICAgICBjb25zdCBtaW51dG9zOiBudW1iZXIgPSBtb21lbnQoKS5kYXRlKGhvcmFWYWx1ZSkubWludXRlcygpO1xuXG4gICAgICAgIGRhdGFIb3JhLnNldEhvdXJzKGhvcmFzKTtcbiAgICAgICAgZGF0YUhvcmEuc2V0TWludXRlcyhtaW51dG9zKTtcblxuICAgICAgICByZXR1cm4gZGF0YUhvcmE7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXJhckNyZWRlbmNpYWwodmlzaXRhbnRlOiBWaXNpdG9yLCBlbmREYXRlOiBEYXRlKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICB2aXNpdG9yOiB2aXNpdGFudGUsXG4gICAgICAgICAgICBjYXJkVGVjaG5vbG9neTogdGhpcy5mb3JtR3JvdXAuZ2V0KFwidGVjbm9sb2dpYUNyYWNoYVwiKS52YWx1ZSxcbiAgICAgICAgICAgIGNhcmROdW1iZXI6IHRoaXMuZm9ybUdyb3VwLmdldChcIm51bWVyb1wiKS52YWx1ZSxcbiAgICAgICAgICAgIGVuZERhdGU6IGVuZERhdGUsXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBkZWZpbmlWYWxvcihjYW1wbzogc3RyaW5nLCB2YWxvcjogYW55KTogdm9pZCB7XG4gICAgICAgIHJldHVybiB0aGlzLmZvcm1Hcm91cC5nZXQoY2FtcG8pLnNldFZhbHVlKHZhbG9yKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgY2xvc2UoZGF0YT86IGFueSkge1xuICAgICAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZShkYXRhKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHZhbGlkYXRlQWxsRm9ybUZpZWxkcyhmb3JtR3JvdXA6IEZvcm1Hcm91cCkge1xuICAgICAgICBPYmplY3Qua2V5cyhmb3JtR3JvdXAuY29udHJvbHMpLmZvckVhY2goKGZpZWxkKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBjb250cm9sID0gZm9ybUdyb3VwLmdldChmaWVsZCk7XG5cbiAgICAgICAgICAgIGlmIChjb250cm9sIGluc3RhbmNlb2YgRm9ybUNvbnRyb2wpIHtcbiAgICAgICAgICAgICAgICBjb250cm9sLm1hcmtBc0RpcnR5KHsgb25seVNlbGY6IHRydWUgfSk7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKGNvbnRyb2wgaW5zdGFuY2VvZiBGb3JtR3JvdXApIHtcbiAgICAgICAgICAgICAgICB0aGlzLnZhbGlkYXRlQWxsRm9ybUZpZWxkcyhjb250cm9sKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgJ0luc3RhbmNlIGZvdCBmb3VuZCc7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGZvcm1Hcm91cC5tYXJrQXNEaXJ0eSh7IG9ubHlTZWxmOiB0cnVlIH0pO1xuICAgIH1cbn0iXX0=
@@ -116,8 +116,9 @@ let SchedulingComponent = class SchedulingComponent {
116
116
  .saveScheduling(this.schedulingVisitors)
117
117
  .pipe(takeUntil(this.ngUnsubscribe), mergeMap((res) => {
118
118
  this.schedulingVisitors = res;
119
- if (start)
119
+ if (start) {
120
120
  return this.schedulingService.startScheduling(this.schedulingVisitors.scheduling.idYMS);
121
+ }
121
122
  this.loading = false;
122
123
  return NEVER;
123
124
  }), finalize(() => (this.loading = false)))
@@ -187,4 +188,4 @@ SchedulingComponent = tslib_1.__decorate([
187
188
  SchedulingService])
188
189
  ], SchedulingComponent);
189
190
  export { SchedulingComponent };
190
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZWR1bGluZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yc2lzdGVtYXMveW1zLWludGVncmF0aW9uLyIsInNvdXJjZXMiOlsic3JjL3NhbS1zZW5pb3IvY29tcG9uZW50cy9zY2hlZHVsaW5nL3NjaGVkdWxpbmcuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekcsT0FBTyxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2pGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUcvRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDM0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNoRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFNOUQsSUFBYSxtQkFBbUIsR0FBaEMsTUFBYSxtQkFBbUI7SUFlNUIsWUFDcUIsRUFBZSxFQUNmLEtBQXFCLEVBQ3JCLFNBQTJCLEVBQzNCLGNBQThCLEVBQzlCLFlBQTBCLEVBQzFCLGlCQUFvQztRQUxwQyxPQUFFLEdBQUYsRUFBRSxDQUFhO1FBQ2YsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFDckIsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFDM0IsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFuQi9DLGlCQUFZLEdBQTBCLElBQUksWUFBWSxFQUFFLENBQUM7UUFDbkUsdUJBQWtCLEdBQXVCLElBQUksa0JBQWtCLEVBQUUsQ0FBQztRQUVsRSxtQkFBYyxHQUFZLEtBQUssQ0FBQztRQUNoQyxZQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ2hCLGlCQUFZLEdBQVEsRUFBRSxDQUFDO1FBSU4sa0JBQWEsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO0lBV2xELENBQUM7SUFFSixRQUFRO1FBQ0osSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBRWxCLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUUzRSxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQVMsRUFBRSxFQUFFO1lBQ3hFLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQztRQUMxQyxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFFLENBQUM7SUFDbEYsQ0FBQztJQUVELGVBQWU7UUFDWCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsUUFBUSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQXNCLENBQUM7SUFDbEYsQ0FBQztJQUVELFdBQVc7UUFDUCxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQzFCLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDbEMsQ0FBQztJQUVELFdBQVc7UUFDUCxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFO1lBQ2hCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1lBRXBCLElBQUksQ0FBQyxpQkFBaUI7aUJBQ2pCLGtCQUFrQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO2lCQUNsQyxJQUFJLENBQ0QsU0FBUyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsRUFDN0IsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUN6QztpQkFDQSxTQUFTLENBQUMsQ0FBQyxHQUFRLEVBQUUsRUFBRTtnQkFDcEIsSUFBSSxHQUFHLENBQUMsVUFBVSxFQUFFO29CQUNoQixNQUFNLFVBQVUsR0FBRyxHQUFHLENBQUMsVUFBVSxDQUFDO29CQUNsQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsVUFBVSxHQUFJLFVBQVUsQ0FBQztvQkFDakQsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFFBQVEsR0FBRyxHQUFHLENBQUMsUUFBUSxDQUFDO29CQUNoRCxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsQ0FBQyxRQUFRLENBQzVDLFVBQVUsQ0FBQyxXQUFXLENBQ3pCLENBQUM7b0JBQ0YsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUMsUUFBUSxDQUN6QyxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsZUFBZSxDQUFDLENBQ3ZDLENBQUM7b0JBQ0YsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUMsUUFBUSxDQUN6QyxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsZUFBZSxDQUFDLENBQ3ZDLENBQUM7b0JBQ0YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUMxQyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQ3RELENBQUM7aUJBQ0w7cUJBQU07b0JBQ0gsTUFBTSxTQUFTLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztvQkFDN0IsU0FBUyxDQUFDLFFBQVEsQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO29CQUM5QyxJQUFJLENBQUMsa0JBQWtCLENBQUMsVUFBVSxHQUFHLElBQUksYUFBYSxFQUFFLENBQUM7b0JBQ3pELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO29CQUN0QyxJQUFJLENBQUMsa0JBQWtCLENBQUMsVUFBVSxDQUFDLGNBQWMsR0FBRyxjQUFjLENBQUMsT0FBTyxDQUFDO29CQUMzRSxJQUFJLENBQUMsa0JBQWtCLENBQUMsVUFBVSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQztvQkFDdkUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFVBQVUsQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO29CQUNsRSxJQUFJLENBQUMsa0JBQWtCLENBQUMsVUFBVSxDQUFDLGVBQWUsR0FBRyxTQUFTLENBQUM7b0JBQy9ELElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxDQUFDO29CQUNqRyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFVBQVUsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO29CQUNwRyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsQ0FBQztpQkFDckc7WUFDTCxDQUFDLENBQUMsQ0FBQztZQUVQLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1NBQzNCO0lBQ0wsQ0FBQztJQUVPLFFBQVEsQ0FBQyxVQUFzQjtRQUNuQyxJQUFJLFVBQVUsQ0FBQyxVQUFVLEVBQUU7WUFDdkIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLENBQUM7U0FDdkQ7SUFDTCxDQUFDO0lBRU8sZ0JBQWdCO1FBQ3BCLE1BQU0sWUFBWSxHQUFHLEdBQUcsQ0FBQztRQUN6QixVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ1osSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQztZQUN4QyxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDaEQsQ0FBQyxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxPQUFPO1FBQ0gsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUU7WUFDekQsT0FBTyxLQUFLLENBQUM7U0FDaEI7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQWU7UUFFcEIsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRTtZQUMxQixJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQzNDLE9BQU87U0FDUjtRQUNELElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDO1FBRTVCLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxVQUFVLENBQUM7UUFFdEQsVUFBVSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUNsQyxVQUFVLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxDQUFDLEtBQUssQ0FBQztRQUV2RSxVQUFVLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUUxQyxNQUFNLFNBQVMsR0FBUyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQyxLQUFLLENBQUM7UUFDbkUsTUFBTSxTQUFTLEdBQVMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUMsS0FBSyxDQUFDO1FBQ25FLFVBQVUsQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFFaEUsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLENBQUMsS0FBSyxDQUFDO1FBQzNELElBQUksUUFBUSxFQUFFO1lBQ1osVUFBVSxDQUFDLFVBQVUsR0FBRyxRQUFRLENBQUMsRUFBRSxDQUFDO1NBQ3JDO1FBRUQsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFDcEIsSUFBSSxDQUFDLGlCQUFpQjthQUNuQixjQUFjLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDO2FBQ3ZDLElBQUksQ0FDSCxTQUFTLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxFQUM3QixRQUFRLENBQUMsQ0FBQyxHQUF1QixFQUFFLEVBQUU7WUFDbkMsSUFBSSxDQUFDLGtCQUFrQixHQUFHLEdBQUcsQ0FBQztZQUM5QixJQUFJLEtBQUs7Z0JBQ1AsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsZUFBZSxDQUMzQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FDekMsQ0FBQztZQUNKLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1lBQ3JCLE9BQU8sS0FBSyxDQUFDO1FBQ2YsQ0FBQyxDQUFDLEVBQ0YsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUN2QzthQUNBLFNBQVMsQ0FBQyxDQUFDLE9BQVksRUFBRSxFQUFFO1lBQzFCLElBQUksT0FBTyxJQUFJLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtnQkFDckMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEtBQUssRUFBRSxDQUFDO2FBQ2hDO1lBQ0QsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7UUFDdkIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU8scUJBQXFCLENBQUMsU0FBb0I7UUFDOUMsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDOUMsTUFBTSxPQUFPLEdBQUcsU0FBUyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNyQyxJQUFJLE9BQU8sWUFBWSxXQUFXLEVBQUU7Z0JBQ2hDLE9BQU8sQ0FBQyxXQUFXLENBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQzthQUMzQztpQkFBTSxJQUFJLE9BQU8sWUFBWSxTQUFTLEVBQUU7Z0JBQ3JDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxPQUFPLENBQUMsQ0FBQzthQUN2QztpQkFBTTtnQkFDSixlQUFlO2FBQ2pCO1FBRUwsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU8sT0FBTyxDQUFDLElBQVUsRUFBRSxJQUFVO1FBQ2xDLE9BQU8sSUFBSSxJQUFJLENBQ1gsSUFBSSxDQUFDLFdBQVcsRUFBRSxFQUNsQixJQUFJLENBQUMsUUFBUSxFQUFFLEVBQ2YsSUFBSSxDQUFDLE9BQU8sRUFBRSxFQUNkLElBQUksQ0FBQyxRQUFRLEVBQUUsRUFDZixJQUFJLENBQUMsVUFBVSxFQUFFLENBQ3BCLENBQUM7SUFDTixDQUFDO0lBRUQsS0FBSztRQUNELElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxtQkFBTSxJQUFJLENBQUMsV0FBVyxFQUFHLENBQUM7SUFDdkQsQ0FBQztJQUVPLFVBQVU7UUFDZCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDO1lBQzNCLFlBQVksRUFBRSxDQUFDLFNBQVMsRUFBRSxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7WUFDcEUsUUFBUSxFQUFFLENBQUMsU0FBUyxFQUFFLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztZQUNoRSxTQUFTLEVBQUUsQ0FBQyxTQUFTLEVBQUUsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1lBQ2pFLFNBQVMsRUFBRSxDQUFDLFNBQVMsRUFBRSxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7U0FDcEUsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVPLGNBQWM7UUFDbEIsT0FBTztZQUNILElBQUksU0FBUyxDQUFDO2dCQUNWLElBQUksRUFBRSxNQUFNO2dCQUNaLElBQUksRUFBRSxTQUFTLENBQUMsTUFBTTtnQkFDdEIsS0FBSyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLGtDQUFrQyxDQUFDO2FBQ3BFLENBQUM7U0FDTCxDQUFDO0lBQ04sQ0FBQztDQUNKLENBQUE7QUE3TVk7SUFBUixLQUFLLEVBQUU7O21EQUFhO0FBQ1g7SUFBVCxNQUFNLEVBQUU7c0NBQWUsWUFBWTt5REFBK0I7QUFGMUQsbUJBQW1CO0lBSi9CLFNBQVMsQ0FBQztRQUNQLFFBQVEsRUFBRSxZQUFZO1FBQ3RCLDAwSkFBMEM7S0FDN0MsQ0FBQzs2Q0FpQjJCLFdBQVc7UUFDUixjQUFjO1FBQ1YsZ0JBQWdCO1FBQ1gsY0FBYztRQUNoQixZQUFZO1FBQ1AsaUJBQWlCO0dBckJoRCxtQkFBbUIsQ0E4TS9CO1NBOU1ZLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPbkluaXQsIE91dHB1dCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtQ29udHJvbCwgRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlIH0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSBcIkBuZ3gtdHJhbnNsYXRlL2NvcmVcIjtcclxuaW1wb3J0IHsgRmllbGRUeXBlLCBGb3JtRmllbGQgfSBmcm9tIFwiQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50c1wiO1xyXG5pbXBvcnQgeyBNZXNzYWdlU2VydmljZSB9IGZyb20gXCJwcmltZW5nL2NvbXBvbmVudHMvY29tbW9uL21lc3NhZ2VzZXJ2aWNlXCI7XHJcbmltcG9ydCB7IFN1YmplY3QsIE5FVkVSIH0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHsgZmluYWxpemUsIHRha2VVbnRpbCwgbWVyZ2VNYXAgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcclxuaW1wb3J0IHsgTG9iYnlEdG8gfSBmcm9tIFwiLi8uLi8uLi9lbnRpdGllcy9sb2JieS1kdG9cIjtcclxuaW1wb3J0IHsgU2NoZWR1bGluZyB9IGZyb20gXCIuLy4uLy4uL2VudGl0aWVzL3NjaGVkdWxpbmdcIjtcclxuaW1wb3J0IHsgU2NoZWR1bGluZ1NlcnZpY2UgfSBmcm9tIFwiLi9zaGVjaHVsaW5nLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgTG9va3VwIH0gZnJvbSBcIi4uLy4uL2NvcmUvbG9va3VwXCI7XHJcbmltcG9ydCB7IExvYmJ5U2VydmljZSB9IGZyb20gXCIuL2xvYmJ5LnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgU2NoZWR1bGluZ1Zpc2l0b3JzIH0gZnJvbSBcIi4vLi4vLi4vZW50aXRpZXMvc2NoZWR1bGluZy12aXNpdG9yc1wiO1xyXG5pbXBvcnQgeyBTY2hlZHVsaW5nRHRvIH0gZnJvbSBcIi4vLi4vLi4vZW50aXRpZXMvc2NoZWR1bGluZy1kdG9cIjtcclxuaW1wb3J0IHsgVmlzaXRTaXR1YXRpb24gfSBmcm9tIFwiLi4vLi4vbW9kZWxzL3Zpc2l0LXNpdHVhdGlvblwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogXCJzY2hlZHVsaW5nXCIsXHJcbiAgICB0ZW1wbGF0ZVVybDogXCIuL3NjaGVkdWxpbmcuY29tcG9uZW50Lmh0bWxcIixcclxufSlcclxuZXhwb3J0IGNsYXNzIFNjaGVkdWxpbmdDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgQWZ0ZXJWaWV3SW5pdCB7XHJcbiAgICBASW5wdXQoKSBhZ2VuZGE6IGFueTtcclxuICAgIEBPdXRwdXQoKSBub3RTYXZlZERhdGE6IEV2ZW50RW1pdHRlcjxib29sZWFuPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICAgIHNjaGVkdWxpbmdWaXNpdG9yczogU2NoZWR1bGluZ1Zpc2l0b3JzID0gbmV3IFNjaGVkdWxpbmdWaXNpdG9ycygpO1xyXG4gICAgZm9ybUdyb3VwOiBGb3JtR3JvdXA7XHJcbiAgICBpc0Zvcm1Nb2RpZmllZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgbG9hZGluZyA9IGZhbHNlOyAgICBcclxuICAgIGxvY2FsZUNvbmZpZzogYW55ID0ge307XHJcbiAgICBwb3J0YXJpYUxvb2t1cDogTG9va3VwPExvYmJ5RHRvPjtcclxuXHJcbiAgICBwcml2YXRlIGFjdHVhbFZhbHVlOiBhbnk7XHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IG5nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xyXG5cclxuICAgIHNhdmVBbmRJbml0QnV0dG9uOiBIVE1MQnV0dG9uRWxlbWVudDtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGZiOiBGb3JtQnVpbGRlcixcclxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcclxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGxvYmJ5U2VydmljZTogTG9iYnlTZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgc2NoZWR1bGluZ1NlcnZpY2U6IFNjaGVkdWxpbmdTZXJ2aWNlXHJcbiAgICApIHt9XHJcblxyXG4gICAgbmdPbkluaXQoKSB7XHJcbiAgICAgICAgdGhpcy5jcmVhdGVGb3JtKCk7XHJcblxyXG4gICAgICAgIHRoaXMucG9ydGFyaWFMb29rdXAgPSBuZXcgTG9va3VwKHRoaXMuZ2V0TG9iYnlGaWVsZHMoKSwgdGhpcy5sb2JieVNlcnZpY2UpO1xyXG5cclxuICAgICAgICB0aGlzLnJvdXRlLmRhdGEucGlwZSh0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSkuc3Vic2NyaWJlKChkYXRhOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5sb2NhbGVDb25maWcgPSBkYXRhLmxvY2FsZUNvbmZpZztcclxuICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgdGhpcy5mb3JtR3JvdXAudmFsdWVDaGFuZ2VzLnN1YnNjcmliZShjaGFuZ2VzID0+IHRoaXMuaXNGb3JtTW9kaWZpZWQgPSB0cnVlICk7XHJcbiAgICB9XHJcblxyXG4gICAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgICAgIHRoaXMuc2F2ZUFuZEluaXRCdXR0b24gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnaW5pdCcpIGFzIEhUTUxCdXR0b25FbGVtZW50O1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25EZXN0cm95KCkge1xyXG4gICAgICAgIHRoaXMubmdVbnN1YnNjcmliZS5uZXh0KCk7XHJcbiAgICAgICAgdGhpcy5uZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkNoYW5nZXMoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuYWdlbmRhLmlkKSB7XHJcbiAgICAgICAgICAgIHRoaXMubG9hZGluZyA9IHRydWU7XHJcblxyXG4gICAgICAgICAgICB0aGlzLnNjaGVkdWxpbmdTZXJ2aWNlXHJcbiAgICAgICAgICAgICAgICAuZ2V0U2NoZWR1bGluZ0J5WW1zKHRoaXMuYWdlbmRhLmlkKVxyXG4gICAgICAgICAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSksXHJcbiAgICAgICAgICAgICAgICAgICAgZmluYWxpemUoKCkgPT4gKHRoaXMubG9hZGluZyA9IGZhbHNlKSlcclxuICAgICAgICAgICAgICAgIClcclxuICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKHJlcy5zY2hlZHVsaW5nKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHNjaGVkdWxpbmcgPSByZXMuc2NoZWR1bGluZztcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zY2hlZHVsaW5nVmlzaXRvcnMuc2NoZWR1bGluZyAgPSBzY2hlZHVsaW5nO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNjaGVkdWxpbmdWaXNpdG9ycy52aXNpdG9ycyA9IHJlcy52aXNpdG9ycztcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5mb3JtR3JvdXAuY29udHJvbHNbXCJtb3Rpdm9WaXNpdGFcIl0uc2V0VmFsdWUoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzY2hlZHVsaW5nLmRlc2NyaXB0aW9uXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzW1wiZGF0YVNhaWRhXCJdLnNldFZhbHVlKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3IERhdGUoc2NoZWR1bGluZy5leHBlY3RlZEVuZERhdGUpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzW1wiaG9yYVNhaWRhXCJdLnNldFZhbHVlKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3IERhdGUoc2NoZWR1bGluZy5leHBlY3RlZEVuZERhdGUpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZ2V0TG9iYnkoc2NoZWR1bGluZykuc3Vic2NyaWJlKChsb2JieSkgPT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzW1wicG9ydGFyaWFcIl0uc2V0VmFsdWUobG9iYnkpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZGF0YVNhaWRhID0gbmV3IERhdGUoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVNhaWRhLnNldEhvdXJzKG5ldyBEYXRlKCkuZ2V0SG91cnMoKSArIDEpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNjaGVkdWxpbmdWaXNpdG9ycy5zY2hlZHVsaW5nID0gbmV3IFNjaGVkdWxpbmdEdG8oKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zY2hlZHVsaW5nVmlzaXRvcnMudmlzaXRvcnMgPSBbXTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zY2hlZHVsaW5nVmlzaXRvcnMuc2NoZWR1bGluZy52aXNpdFNpdHVhdGlvbiA9IFZpc2l0U2l0dWF0aW9uLlBFTkRJTkc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2NoZWR1bGluZ1Zpc2l0b3JzLnNjaGVkdWxpbmcuZGVzY3JpcHRpb24gPSB0aGlzLmFnZW5kYS5kZXNjcmljYW87XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2NoZWR1bGluZ1Zpc2l0b3JzLnNjaGVkdWxpbmcuZXhwZWN0ZWRTdGFydERhdGUgPSBuZXcgRGF0ZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNjaGVkdWxpbmdWaXNpdG9ycy5zY2hlZHVsaW5nLmV4cGVjdGVkRW5kRGF0ZSA9IGRhdGFTYWlkYTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5mb3JtR3JvdXAuY29udHJvbHNbXCJtb3Rpdm9WaXNpdGFcIl0uc2V0VmFsdWUodGhpcy5zY2hlZHVsaW5nVmlzaXRvcnMuc2NoZWR1bGluZy5kZXNjcmlwdGlvbik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzW1wiZGF0YVNhaWRhXCJdLnNldFZhbHVlKHRoaXMuc2NoZWR1bGluZ1Zpc2l0b3JzLnNjaGVkdWxpbmcuZXhwZWN0ZWRTdGFydERhdGUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1tcImhvcmFTYWlkYVwiXS5zZXRWYWx1ZSh0aGlzLnNjaGVkdWxpbmdWaXNpdG9ycy5zY2hlZHVsaW5nLmV4cGVjdGVkRW5kRGF0ZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSk7XHJcblxyXG4gICAgICAgICAgICB0aGlzLnBhdGNoQWN0dWFsVmFsdWUoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBnZXRMb2JieShzY2hlZHVsaW5nOiBTY2hlZHVsaW5nKSB7XHJcbiAgICAgICAgaWYgKHNjaGVkdWxpbmcubG9iYnlJZFNBTSkge1xyXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5sb2JieVNlcnZpY2UuZ2V0KHNjaGVkdWxpbmcubG9iYnlJZFNBTSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgcGF0Y2hBY3R1YWxWYWx1ZSgpIHtcclxuICAgICAgICBjb25zdCB0aW1lb3V0UGF0Y2ggPSA1MDA7XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuYWN0dWFsVmFsdWUgPSB0aGlzLmZvcm1Hcm91cC52YWx1ZTtcclxuICAgICAgICAgICAgdGhpcy5mb3JtR3JvdXAucGF0Y2hWYWx1ZSh0aGlzLmFjdHVhbFZhbHVlKTtcclxuICAgICAgICB9LCB0aW1lb3V0UGF0Y2gpO1xyXG4gICAgfVxyXG5cclxuICAgIGNhblNhdmUoKSB7XHJcbiAgICAgICAgaWYgKCF0aGlzLmFnZW5kYSB8fCAhdGhpcy5hZ2VuZGEuaWQgfHwgIXRoaXMuaXNGb3JtTW9kaWZpZWQpIHtcclxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICBvblNhdmUoc3RhcnQ/OiBib29sZWFuKSB7XHJcblxyXG4gICAgICBpZiAodGhpcy5mb3JtR3JvdXAuaW52YWxpZCkge1xyXG4gICAgICAgIHRoaXMudmFsaWRhdGVBbGxGb3JtRmllbGRzKHRoaXMuZm9ybUdyb3VwKTtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5pc0Zvcm1Nb2RpZmllZCA9IGZhbHNlO1xyXG5cclxuICAgICAgY29uc3Qgc2NoZWR1bGluZyA9IHRoaXMuc2NoZWR1bGluZ1Zpc2l0b3JzLnNjaGVkdWxpbmc7XHJcblxyXG4gICAgICBzY2hlZHVsaW5nLmlkWU1TID0gdGhpcy5hZ2VuZGEuaWQ7XHJcbiAgICAgIHNjaGVkdWxpbmcuZGVzY3JpcHRpb24gPSB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1snbW90aXZvVmlzaXRhJ10udmFsdWU7XHJcblxyXG4gICAgICBzY2hlZHVsaW5nLmV4cGVjdGVkU3RhcnREYXRlID0gbmV3IERhdGUoKTtcclxuXHJcbiAgICAgIGNvbnN0IGRhdGFTYWlkYTogRGF0ZSA9IHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzWydkYXRhU2FpZGEnXS52YWx1ZTtcclxuICAgICAgY29uc3QgaG9yYVNhaWRhOiBEYXRlID0gdGhpcy5mb3JtR3JvdXAuY29udHJvbHNbJ2hvcmFTYWlkYSddLnZhbHVlO1xyXG4gICAgICBzY2hlZHVsaW5nLmV4cGVjdGVkRW5kRGF0ZSA9IHRoaXMuZ2V0RGF0ZShkYXRhU2FpZGEsIGhvcmFTYWlkYSk7XHJcblxyXG4gICAgICBjb25zdCBwb3J0YXJpYSA9IHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzWydwb3J0YXJpYSddLnZhbHVlO1xyXG4gICAgICBpZiAocG9ydGFyaWEpIHtcclxuICAgICAgICBzY2hlZHVsaW5nLmxvYmJ5SWRTQU0gPSBwb3J0YXJpYS5pZDtcclxuICAgICAgfVxyXG5cclxuICAgICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcclxuICAgICAgdGhpcy5zY2hlZHVsaW5nU2VydmljZVxyXG4gICAgICAgIC5zYXZlU2NoZWR1bGluZyh0aGlzLnNjaGVkdWxpbmdWaXNpdG9ycylcclxuICAgICAgICAucGlwZShcclxuICAgICAgICAgIHRha2VVbnRpbCh0aGlzLm5nVW5zdWJzY3JpYmUpLFxyXG4gICAgICAgICAgbWVyZ2VNYXAoKHJlczogU2NoZWR1bGluZ1Zpc2l0b3JzKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuc2NoZWR1bGluZ1Zpc2l0b3JzID0gcmVzO1xyXG4gICAgICAgICAgICBpZiAoc3RhcnQpXHJcbiAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuc2NoZWR1bGluZ1NlcnZpY2Uuc3RhcnRTY2hlZHVsaW5nKFxyXG4gICAgICAgICAgICAgICAgdGhpcy5zY2hlZHVsaW5nVmlzaXRvcnMuc2NoZWR1bGluZy5pZFlNU1xyXG4gICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICByZXR1cm4gTkVWRVI7XHJcbiAgICAgICAgICB9KSxcclxuICAgICAgICAgIGZpbmFsaXplKCgpID0+ICh0aGlzLmxvYWRpbmcgPSBmYWxzZSkpXHJcbiAgICAgICAgKVxyXG4gICAgICAgIC5zdWJzY3JpYmUoKHN1Y2Nlc3M6IGFueSkgPT4ge1xyXG4gICAgICAgICAgaWYgKHN1Y2Nlc3MgJiYgdGhpcy5zYXZlQW5kSW5pdEJ1dHRvbikge1xyXG4gICAgICAgICAgICB0aGlzLnNhdmVBbmRJbml0QnV0dG9uLmNsaWNrKCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIHZhbGlkYXRlQWxsRm9ybUZpZWxkcyhmb3JtR3JvdXA6IEZvcm1Hcm91cCkge1xyXG4gICAgICAgIE9iamVjdC5rZXlzKGZvcm1Hcm91cC5jb250cm9scykuZm9yRWFjaCgoZmllbGQpID0+IHtcclxuICAgICAgICAgICAgY29uc3QgY29udHJvbCA9IGZvcm1Hcm91cC5nZXQoZmllbGQpO1xyXG4gICAgICAgICAgICBpZiAoY29udHJvbCBpbnN0YW5jZW9mIEZvcm1Db250cm9sKSB7XHJcbiAgICAgICAgICAgICAgICBjb250cm9sLm1hcmtBc0RpcnR5KHsgb25seVNlbGY6IHRydWUgfSk7XHJcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoY29udHJvbCBpbnN0YW5jZW9mIEZvcm1Hcm91cCkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy52YWxpZGF0ZUFsbEZvcm1GaWVsZHMoY29udHJvbCk7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgIC8vIG5hZGEgYSBmYXplclxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgZ2V0RGF0ZShkYXRhOiBEYXRlLCBob3JhOiBEYXRlKTogRGF0ZSB7XHJcbiAgICAgICAgcmV0dXJuIG5ldyBEYXRlKFxyXG4gICAgICAgICAgICBkYXRhLmdldEZ1bGxZZWFyKCksXHJcbiAgICAgICAgICAgIGRhdGEuZ2V0TW9udGgoKSxcclxuICAgICAgICAgICAgZGF0YS5nZXREYXRlKCksXHJcbiAgICAgICAgICAgIGhvcmEuZ2V0SG91cnMoKSxcclxuICAgICAgICAgICAgaG9yYS5nZXRNaW51dGVzKClcclxuICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIHJlc2V0KCkge1xyXG4gICAgICAgIHRoaXMuZm9ybUdyb3VwLnBhdGNoVmFsdWUoeyAuLi50aGlzLmFjdHVhbFZhbHVlIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgY3JlYXRlRm9ybSgpIHtcclxuICAgICAgICB0aGlzLmZvcm1Hcm91cCA9IHRoaXMuZmIuZ3JvdXAoe1xyXG4gICAgICAgICAgICBtb3Rpdm9WaXNpdGE6IFt1bmRlZmluZWQsIFZhbGlkYXRvcnMuY29tcG9zZShbVmFsaWRhdG9ycy5yZXF1aXJlZF0pXSxcclxuICAgICAgICAgICAgcG9ydGFyaWE6IFt1bmRlZmluZWQsIFZhbGlkYXRvcnMuY29tcG9zZShbVmFsaWRhdG9ycy5yZXF1aXJlZF0pXSxcclxuICAgICAgICAgICAgZGF0YVNhaWRhOiBbdW5kZWZpbmVkLCBWYWxpZGF0b3JzLmNvbXBvc2UoW1ZhbGlkYXRvcnMucmVxdWlyZWRdKV0sXHJcbiAgICAgICAgICAgIGhvcmFTYWlkYTogW3VuZGVmaW5lZCwgVmFsaWRhdG9ycy5jb21wb3NlKFtWYWxpZGF0b3JzLnJlcXVpcmVkXSldLFxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgZ2V0TG9iYnlGaWVsZHMoKSB7XHJcbiAgICAgICAgcmV0dXJuIFtcclxuICAgICAgICAgICAgbmV3IEZvcm1GaWVsZCh7XHJcbiAgICAgICAgICAgICAgICBuYW1lOiBcIm5hbWVcIixcclxuICAgICAgICAgICAgICAgIHR5cGU6IEZpZWxkVHlwZS5TdHJpbmcsXHJcbiAgICAgICAgICAgICAgICBsYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcInltcy5wYXRpby5zYW1fcG9ydGFyaWFfZGVzY3JpY2FvXCIpLFxyXG4gICAgICAgICAgICB9KSxcclxuICAgICAgICBdO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
191
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZWR1bGluZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yc2lzdGVtYXMveW1zLWludGVncmF0aW9uLyIsInNvdXJjZXMiOlsic3JjL3NhbS1zZW5pb3IvY29tcG9uZW50cy9zY2hlZHVsaW5nL3NjaGVkdWxpbmcuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekcsT0FBTyxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2pGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUcvRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDM0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNoRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sOEJBQThCLENB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O3NDQUFlLFlBQVk7eURBQStCO0FBRjFELG1CQUFtQjtJQUovQixTQUFTLENBQUM7UUFDUCxRQUFRLEVBQUUsWUFBWTtRQUN0QiwwMEpBQTBDO0tBQzdDLENBQUM7NkNBaUIyQixXQUFXO1FBQ1IsY0FBYztRQUNWLGdCQUFnQjtRQUNYLGNBQWM7UUFDaEIsWUFBWTtRQUNQLGlCQUFpQjtHQXJCaEQsbUJBQW1CLENBK00vQjtTQS9NWSxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uQ2hhbmdlcywgT25Jbml0LCBPdXRwdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSB9IGZyb20gXCJAYW5ndWxhci9yb3V0ZXJcIjtcclxuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gXCJAbmd4LXRyYW5zbGF0ZS9jb3JlXCI7XHJcbmltcG9ydCB7IEZpZWxkVHlwZSwgRm9ybUZpZWxkIH0gZnJvbSBcIkBzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHNcIjtcclxuaW1wb3J0IHsgTWVzc2FnZVNlcnZpY2UgfSBmcm9tIFwicHJpbWVuZy9jb21wb25lbnRzL2NvbW1vbi9tZXNzYWdlc2VydmljZVwiO1xyXG5pbXBvcnQgeyBTdWJqZWN0LCBORVZFUiB9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7IGZpbmFsaXplLCB0YWtlVW50aWwsIG1lcmdlTWFwIH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XHJcbmltcG9ydCB7IExvYmJ5RHRvIH0gZnJvbSBcIi4vLi4vLi4vZW50aXRpZXMvbG9iYnktZHRvXCI7XHJcbmltcG9ydCB7IFNjaGVkdWxpbmcgfSBmcm9tIFwiLi8uLi8uLi9lbnRpdGllcy9zY2hlZHVsaW5nXCI7XHJcbmltcG9ydCB7IFNjaGVkdWxpbmdTZXJ2aWNlIH0gZnJvbSBcIi4vc2hlY2h1bGluZy5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IExvb2t1cCB9IGZyb20gXCIuLi8uLi9jb3JlL2xvb2t1cFwiO1xyXG5pbXBvcnQgeyBMb2JieVNlcnZpY2UgfSBmcm9tIFwiLi9sb2JieS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IFNjaGVkdWxpbmdWaXNpdG9ycyB9IGZyb20gXCIuLy4uLy4uL2VudGl0aWVzL3NjaGVkdWxpbmctdmlzaXRvcnNcIjtcclxuaW1wb3J0IHsgU2NoZWR1bGluZ0R0byB9IGZyb20gXCIuLy4uLy4uL2VudGl0aWVzL3NjaGVkdWxpbmctZHRvXCI7XHJcbmltcG9ydCB7IFZpc2l0U2l0dWF0aW9uIH0gZnJvbSBcIi4uLy4uL21vZGVscy92aXNpdC1zaXR1YXRpb25cIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6IFwic2NoZWR1bGluZ1wiLFxyXG4gICAgdGVtcGxhdGVVcmw6IFwiLi9zY2hlZHVsaW5nLmNvbXBvbmVudC5odG1sXCIsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTY2hlZHVsaW5nQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIEFmdGVyVmlld0luaXQge1xyXG4gICAgQElucHV0KCkgYWdlbmRhOiBhbnk7XHJcbiAgICBAT3V0cHV0KCkgbm90U2F2ZWREYXRhOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgICBzY2hlZHVsaW5nVmlzaXRvcnM6IFNjaGVkdWxpbmdWaXNpdG9ycyA9IG5ldyBTY2hlZHVsaW5nVmlzaXRvcnMoKTtcclxuICAgIGZvcm1Hcm91cDogRm9ybUdyb3VwO1xyXG4gICAgaXNGb3JtTW9kaWZpZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIGxvYWRpbmcgPSBmYWxzZTsgICAgXHJcbiAgICBsb2NhbGVDb25maWc6IGFueSA9IHt9O1xyXG4gICAgcG9ydGFyaWFMb29rdXA6IExvb2t1cDxMb2JieUR0bz47XHJcblxyXG4gICAgcHJpdmF0ZSBhY3R1YWxWYWx1ZTogYW55O1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSBuZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuXHJcbiAgICBzYXZlQW5kSW5pdEJ1dHRvbjogSFRNTEJ1dHRvbkVsZW1lbnQ7XHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBmYjogRm9ybUJ1aWxkZXIsXHJcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXHJcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXHJcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBtZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2UsXHJcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBsb2JieVNlcnZpY2U6IExvYmJ5U2VydmljZSxcclxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHNjaGVkdWxpbmdTZXJ2aWNlOiBTY2hlZHVsaW5nU2VydmljZVxyXG4gICAgKSB7fVxyXG5cclxuICAgIG5nT25Jbml0KCkge1xyXG4gICAgICAgIHRoaXMuY3JlYXRlRm9ybSgpO1xyXG5cclxuICAgICAgICB0aGlzLnBvcnRhcmlhTG9va3VwID0gbmV3IExvb2t1cCh0aGlzLmdldExvYmJ5RmllbGRzKCksIHRoaXMubG9iYnlTZXJ2aWNlKTtcclxuXHJcbiAgICAgICAgdGhpcy5yb3V0ZS5kYXRhLnBpcGUodGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSkpLnN1YnNjcmliZSgoZGF0YTogYW55KSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMubG9jYWxlQ29uZmlnID0gZGF0YS5sb2NhbGVDb25maWc7XHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIHRoaXMuZm9ybUdyb3VwLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoY2hhbmdlcyA9PiB0aGlzLmlzRm9ybU1vZGlmaWVkID0gdHJ1ZSApO1xyXG4gICAgfVxyXG5cclxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgICAgICB0aGlzLnNhdmVBbmRJbml0QnV0dG9uID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2luaXQnKSBhcyBIVE1MQnV0dG9uRWxlbWVudDtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uRGVzdHJveSgpIHtcclxuICAgICAgICB0aGlzLm5nVW5zdWJzY3JpYmUubmV4dCgpO1xyXG4gICAgICAgIHRoaXMubmdVbnN1YnNjcmliZS5jb21wbGV0ZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25DaGFuZ2VzKCkge1xyXG4gICAgICAgIGlmICh0aGlzLmFnZW5kYS5pZCkge1xyXG4gICAgICAgICAgICB0aGlzLmxvYWRpbmcgPSB0cnVlO1xyXG5cclxuICAgICAgICAgICAgdGhpcy5zY2hlZHVsaW5nU2VydmljZVxyXG4gICAgICAgICAgICAgICAgLmdldFNjaGVkdWxpbmdCeVltcyh0aGlzLmFnZW5kYS5pZClcclxuICAgICAgICAgICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLm5nVW5zdWJzY3JpYmUpLFxyXG4gICAgICAgICAgICAgICAgICAgIGZpbmFsaXplKCgpID0+ICh0aGlzLmxvYWRpbmcgPSBmYWxzZSkpXHJcbiAgICAgICAgICAgICAgICApXHJcbiAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGlmIChyZXMuc2NoZWR1bGluZykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzY2hlZHVsaW5nID0gcmVzLnNjaGVkdWxpbmc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2NoZWR1bGluZ1Zpc2l0b3JzLnNjaGVkdWxpbmcgID0gc2NoZWR1bGluZztcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zY2hlZHVsaW5nVmlzaXRvcnMudmlzaXRvcnMgPSByZXMudmlzaXRvcnM7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzW1wibW90aXZvVmlzaXRhXCJdLnNldFZhbHVlKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2NoZWR1bGluZy5kZXNjcmlwdGlvblxyXG4gICAgICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1tcImRhdGFTYWlkYVwiXS5zZXRWYWx1ZShcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ldyBEYXRlKHNjaGVkdWxpbmcuZXhwZWN0ZWRFbmREYXRlKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1tcImhvcmFTYWlkYVwiXS5zZXRWYWx1ZShcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ldyBEYXRlKHNjaGVkdWxpbmcuZXhwZWN0ZWRFbmREYXRlKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmdldExvYmJ5KHNjaGVkdWxpbmcpLnN1YnNjcmliZSgobG9iYnkpID0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1tcInBvcnRhcmlhXCJdLnNldFZhbHVlKGxvYmJ5KVxyXG4gICAgICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGRhdGFTYWlkYSA9IG5ldyBEYXRlKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFTYWlkYS5zZXRIb3VycyhuZXcgRGF0ZSgpLmdldEhvdXJzKCkgKyAxKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zY2hlZHVsaW5nVmlzaXRvcnMuc2NoZWR1bGluZyA9IG5ldyBTY2hlZHVsaW5nRHRvKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2NoZWR1bGluZ1Zpc2l0b3JzLnZpc2l0b3JzID0gW107XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2NoZWR1bGluZ1Zpc2l0b3JzLnNjaGVkdWxpbmcudmlzaXRTaXR1YXRpb24gPSBWaXNpdFNpdHVhdGlvbi5QRU5ESU5HO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNjaGVkdWxpbmdWaXNpdG9ycy5zY2hlZHVsaW5nLmRlc2NyaXB0aW9uID0gdGhpcy5hZ2VuZGEuZGVzY3JpY2FvO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNjaGVkdWxpbmdWaXNpdG9ycy5zY2hlZHVsaW5nLmV4cGVjdGVkU3RhcnREYXRlID0gbmV3IERhdGUoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zY2hlZHVsaW5nVmlzaXRvcnMuc2NoZWR1bGluZy5leHBlY3RlZEVuZERhdGUgPSBkYXRhU2FpZGE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzW1wibW90aXZvVmlzaXRhXCJdLnNldFZhbHVlKHRoaXMuc2NoZWR1bGluZ1Zpc2l0b3JzLnNjaGVkdWxpbmcuZGVzY3JpcHRpb24pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1tcImRhdGFTYWlkYVwiXS5zZXRWYWx1ZSh0aGlzLnNjaGVkdWxpbmdWaXNpdG9ycy5zY2hlZHVsaW5nLmV4cGVjdGVkU3RhcnREYXRlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5mb3JtR3JvdXAuY29udHJvbHNbXCJob3JhU2FpZGFcIl0uc2V0VmFsdWUodGhpcy5zY2hlZHVsaW5nVmlzaXRvcnMuc2NoZWR1bGluZy5leHBlY3RlZEVuZERhdGUpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH0pO1xyXG5cclxuICAgICAgICAgICAgdGhpcy5wYXRjaEFjdHVhbFZhbHVlKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgZ2V0TG9iYnkoc2NoZWR1bGluZzogU2NoZWR1bGluZykge1xyXG4gICAgICAgIGlmIChzY2hlZHVsaW5nLmxvYmJ5SWRTQU0pIHtcclxuICAgICAgICAgICAgcmV0dXJuIHRoaXMubG9iYnlTZXJ2aWNlLmdldChzY2hlZHVsaW5nLmxvYmJ5SWRTQU0pO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIHBhdGNoQWN0dWFsVmFsdWUoKSB7XHJcbiAgICAgICAgY29uc3QgdGltZW91dFBhdGNoID0gNTAwO1xyXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmFjdHVhbFZhbHVlID0gdGhpcy5mb3JtR3JvdXAudmFsdWU7XHJcbiAgICAgICAgICAgIHRoaXMuZm9ybUdyb3VwLnBhdGNoVmFsdWUodGhpcy5hY3R1YWxWYWx1ZSk7XHJcbiAgICAgICAgfSwgdGltZW91dFBhdGNoKTtcclxuICAgIH1cclxuXHJcbiAgICBjYW5TYXZlKCkge1xyXG4gICAgICAgIGlmICghdGhpcy5hZ2VuZGEgfHwgIXRoaXMuYWdlbmRhLmlkIHx8ICF0aGlzLmlzRm9ybU1vZGlmaWVkKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgb25TYXZlKHN0YXJ0PzogYm9vbGVhbikge1xyXG5cclxuICAgICAgaWYgKHRoaXMuZm9ybUdyb3VwLmludmFsaWQpIHtcclxuICAgICAgICB0aGlzLnZhbGlkYXRlQWxsRm9ybUZpZWxkcyh0aGlzLmZvcm1Hcm91cCk7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuaXNGb3JtTW9kaWZpZWQgPSBmYWxzZTtcclxuXHJcbiAgICAgIGNvbnN0IHNjaGVkdWxpbmcgPSB0aGlzLnNjaGVkdWxpbmdWaXNpdG9ycy5zY2hlZHVsaW5nO1xyXG5cclxuICAgICAgc2NoZWR1bGluZy5pZFlNUyA9IHRoaXMuYWdlbmRhLmlkO1xyXG4gICAgICBzY2hlZHVsaW5nLmRlc2NyaXB0aW9uID0gdGhpcy5mb3JtR3JvdXAuY29udHJvbHNbJ21vdGl2b1Zpc2l0YSddLnZhbHVlO1xyXG5cclxuICAgICAgc2NoZWR1bGluZy5leHBlY3RlZFN0YXJ0RGF0ZSA9IG5ldyBEYXRlKCk7XHJcblxyXG4gICAgICBjb25zdCBkYXRhU2FpZGE6IERhdGUgPSB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1snZGF0YVNhaWRhJ10udmFsdWU7XHJcbiAgICAgIGNvbnN0IGhvcmFTYWlkYTogRGF0ZSA9IHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzWydob3JhU2FpZGEnXS52YWx1ZTtcclxuICAgICAgc2NoZWR1bGluZy5leHBlY3RlZEVuZERhdGUgPSB0aGlzLmdldERhdGUoZGF0YVNhaWRhLCBob3JhU2FpZGEpO1xyXG5cclxuICAgICAgY29uc3QgcG9ydGFyaWEgPSB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1sncG9ydGFyaWEnXS52YWx1ZTtcclxuICAgICAgaWYgKHBvcnRhcmlhKSB7XHJcbiAgICAgICAgc2NoZWR1bGluZy5sb2JieUlkU0FNID0gcG9ydGFyaWEuaWQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMubG9hZGluZyA9IHRydWU7XHJcbiAgICAgIHRoaXMuc2NoZWR1bGluZ1NlcnZpY2VcclxuICAgICAgICAuc2F2ZVNjaGVkdWxpbmcodGhpcy5zY2hlZHVsaW5nVmlzaXRvcnMpXHJcbiAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICB0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSxcclxuICAgICAgICAgIG1lcmdlTWFwKChyZXM6IFNjaGVkdWxpbmdWaXNpdG9ycykgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLnNjaGVkdWxpbmdWaXNpdG9ycyA9IHJlcztcclxuICAgICAgICAgICAgaWYgKHN0YXJ0KSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5zY2hlZHVsaW5nU2VydmljZS5zdGFydFNjaGVkdWxpbmcoXHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zY2hlZHVsaW5nVmlzaXRvcnMuc2NoZWR1bGluZy5pZFlNU1xyXG4gICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgcmV0dXJuIE5FVkVSO1xyXG4gICAgICAgICAgfSksXHJcbiAgICAgICAgICBmaW5hbGl6ZSgoKSA9PiAodGhpcy5sb2FkaW5nID0gZmFsc2UpKVxyXG4gICAgICAgIClcclxuICAgICAgICAuc3Vic2NyaWJlKChzdWNjZXNzOiBhbnkpID0+IHtcclxuICAgICAgICAgIGlmIChzdWNjZXNzICYmIHRoaXMuc2F2ZUFuZEluaXRCdXR0b24pIHtcclxuICAgICAgICAgICAgdGhpcy5zYXZlQW5kSW5pdEJ1dHRvbi5jbGljaygpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSB2YWxpZGF0ZUFsbEZvcm1GaWVsZHMoZm9ybUdyb3VwOiBGb3JtR3JvdXApIHtcclxuICAgICAgICBPYmplY3Qua2V5cyhmb3JtR3JvdXAuY29udHJvbHMpLmZvckVhY2goKGZpZWxkKSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IGNvbnRyb2wgPSBmb3JtR3JvdXAuZ2V0KGZpZWxkKTtcclxuICAgICAgICAgICAgaWYgKGNvbnRyb2wgaW5zdGFuY2VvZiBGb3JtQ29udHJvbCkge1xyXG4gICAgICAgICAgICAgICAgY29udHJvbC5tYXJrQXNEaXJ0eSh7IG9ubHlTZWxmOiB0cnVlIH0pO1xyXG4gICAgICAgICAgICB9IGVsc2UgaWYgKGNvbnRyb2wgaW5zdGFuY2VvZiBGb3JtR3JvdXApIHtcclxuICAgICAgICAgICAgICAgIHRoaXMudmFsaWRhdGVBbGxGb3JtRmllbGRzKGNvbnRyb2wpO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAvLyBuYWRhIGEgZmF6ZXJcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGdldERhdGUoZGF0YTogRGF0ZSwgaG9yYTogRGF0ZSk6IERhdGUge1xyXG4gICAgICAgIHJldHVybiBuZXcgRGF0ZShcclxuICAgICAgICAgICAgZGF0YS5nZXRGdWxsWWVhcigpLFxyXG4gICAgICAgICAgICBkYXRhLmdldE1vbnRoKCksXHJcbiAgICAgICAgICAgIGRhdGEuZ2V0RGF0ZSgpLFxyXG4gICAgICAgICAgICBob3JhLmdldEhvdXJzKCksXHJcbiAgICAgICAgICAgIGhvcmEuZ2V0TWludXRlcygpXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICByZXNldCgpIHtcclxuICAgICAgICB0aGlzLmZvcm1Hcm91cC5wYXRjaFZhbHVlKHsgLi4udGhpcy5hY3R1YWxWYWx1ZSB9KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGNyZWF0ZUZvcm0oKSB7XHJcbiAgICAgICAgdGhpcy5mb3JtR3JvdXAgPSB0aGlzLmZiLmdyb3VwKHtcclxuICAgICAgICAgICAgbW90aXZvVmlzaXRhOiBbdW5kZWZpbmVkLCBWYWxpZGF0b3JzLmNvbXBvc2UoW1ZhbGlkYXRvcnMucmVxdWlyZWRdKV0sXHJcbiAgICAgICAgICAgIHBvcnRhcmlhOiBbdW5kZWZpbmVkLCBWYWxpZGF0b3JzLmNvbXBvc2UoW1ZhbGlkYXRvcnMucmVxdWlyZWRdKV0sXHJcbiAgICAgICAgICAgIGRhdGFTYWlkYTogW3VuZGVmaW5lZCwgVmFsaWRhdG9ycy5jb21wb3NlKFtWYWxpZGF0b3JzLnJlcXVpcmVkXSldLFxyXG4gICAgICAgICAgICBob3JhU2FpZGE6IFt1bmRlZmluZWQsIFZhbGlkYXRvcnMuY29tcG9zZShbVmFsaWRhdG9ycy5yZXF1aXJlZF0pXSxcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGdldExvYmJ5RmllbGRzKCkge1xyXG4gICAgICAgIHJldHVybiBbXHJcbiAgICAgICAgICAgIG5ldyBGb3JtRmllbGQoe1xyXG4gICAgICAgICAgICAgICAgbmFtZTogXCJuYW1lXCIsXHJcbiAgICAgICAgICAgICAgICB0eXBlOiBGaWVsZFR5cGUuU3RyaW5nLFxyXG4gICAgICAgICAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoXCJ5bXMucGF0aW8uc2FtX3BvcnRhcmlhX2Rlc2NyaWNhb1wiKSxcclxuICAgICAgICAgICAgfSksXHJcbiAgICAgICAgXTtcclxuICAgIH1cclxufVxyXG4iXX0=
@@ -60,6 +60,9 @@ let VisitanteFormComponent = class VisitanteFormComponent {
60
60
  else if (control instanceof FormGroup) {
61
61
  this.validateAllFormFields(control);
62
62
  }
63
+ else {
64
+ throw 'Instance fot found';
65
+ }
63
66
  });
64
67
  formGroup.markAsDirty({ onlySelf: true });
65
68
  }
@@ -70,7 +73,7 @@ tslib_1.__decorate([
70
73
  ], VisitanteFormComponent.prototype, "notSavedData", void 0);
71
74
  VisitanteFormComponent = tslib_1.__decorate([
72
75
  Component({
73
- template: "<form [formGroup]=\"formGroup\">\n <div class=\"ui-g ui-fluid\">\n <div class=\"ui-g-12 required\">\n <label for=\"name\">{{ \"yms.visitante_nome\" | translate }}</label>\n <input\n type=\"text\"\n name=\"name\"\n pInputText\n formControlName=\"name\"\n dialog\n autocomplete=\"off\"\n />\n <s-control-errors\n [control]=\"formGroup.controls['name']\"\n [errorMessages]=\"{ required: 'error_required' | translate }\"\n ></s-control-errors>\n </div>\n <div class=\"ui-g-12 required\">\n <label for=\"document\">{{ \"yms.visitante_documento\" | translate }}</label>\n <input\n type=\"text\"\n name=\"document\"\n pInputText\n formControlName=\"document\"\n autocomplete=\"off\"\n />\n <s-control-errors\n [control]=\"formGroup.controls['document']\"\n [errorMessages]=\"{ required: 'error_required' | translate }\"\n ></s-control-errors>\n </div>\n <div class=\"ui-g-12 required\">\n <label for=\"contact\">{{ \"yms.visitante_contato\" | translate }}</label>\n <input\n type=\"text\"\n name=\"contact\"\n pInputText\n formControlName=\"contact\"\n autocomplete=\"off\"\n />\n <s-control-errors\n [control]=\"formGroup.controls['contact']\"\n [errorMessages]=\"{ required: 'error_required' | translate }\"\n ></s-control-errors>\n </div>\n </div>\n\n <s-button\n [label]=\"'yms.patio.visitante_button_cancelar' | translate\"\n (onClick)=\"close()\"\n priority=\"link\"\n ></s-button>\n <s-button\n [label]=\"'yms.patio.visitante_button_salvar' | translate\"\n (onClick)=\"save()\"\n ></s-button>\n</form>\n",
76
+ template: "<form [formGroup]=\"formGroup\">\n <div class=\"ui-g ui-fluid\">\n <div class=\"ui-g-12 required\">\n <label for=\"name\">{{ \"yms.visitante_nome\" | translate }}</label>\n <input\n id=\"name\"\n type=\"text\"\n name=\"name\"\n pInputText\n formControlName=\"name\"\n dialog\n autocomplete=\"off\"\n />\n <s-control-errors\n [control]=\"formGroup.controls['name']\"\n [errorMessages]=\"{ required: 'error_required' | translate }\"\n ></s-control-errors>\n </div>\n <div class=\"ui-g-12 required\">\n <label for=\"document\">{{ \"yms.visitante_documento\" | translate }}</label>\n <input\n id=\"document\"\n type=\"text\"\n name=\"document\"\n pInputText\n formControlName=\"document\"\n autocomplete=\"off\"\n />\n <s-control-errors\n [control]=\"formGroup.controls['document']\"\n [errorMessages]=\"{ required: 'error_required' | translate }\"\n ></s-control-errors>\n </div>\n <div class=\"ui-g-12 required\">\n <label for=\"contact\">{{ \"yms.visitante_contato\" | translate }}</label>\n <input\n id=\"contact\"\n type=\"text\"\n name=\"contact\"\n pInputText\n formControlName=\"contact\"\n autocomplete=\"off\"\n />\n <s-control-errors\n [control]=\"formGroup.controls['contact']\"\n [errorMessages]=\"{ required: 'error_required' | translate }\"\n ></s-control-errors>\n </div>\n </div>\n\n <s-button\n [label]=\"'yms.patio.visitante_button_cancelar' | translate\"\n (onClick)=\"close()\"\n priority=\"link\"\n ></s-button>\n <s-button\n [label]=\"'yms.patio.visitante_button_salvar' | translate\"\n (onClick)=\"save()\"\n ></s-button>\n</form>\n",
74
77
  providers: [ConfirmationService]
75
78
  }),
76
79
  tslib_1.__metadata("design:paramtypes", [FormBuilder,
@@ -78,4 +81,4 @@ VisitanteFormComponent = tslib_1.__decorate([
78
81
  DynamicDialogConfig])
79
82
  ], VisitanteFormComponent);
80
83
  export { VisitanteFormComponent };
81
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlzaXRvci1lZGl0LWZvcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNlbmlvcnNpc3RlbWFzL3ltcy1pbnRlZ3JhdGlvbi8iLCJzb3VyY2VzIjpbInNyYy9zYW0tc2VuaW9yL2NvbXBvbmVudHMvdmlzaXRvci1lZGl0L3Zpc2l0b3ItZWRpdC1mb3JtL3Zpc2l0YW50ZS1mb3JtL3Zpc2l0b3ItZWRpdC1mb3JtLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQXFCLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRixPQUFPLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDakYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLG1CQUFtQixFQUFFLGdCQUFnQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxhQUFhLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzlDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQU0zQyxJQUFhLHNCQUFzQixHQUFuQyxNQUFhLHNCQUFzQjtJQVcvQixZQUNJLEVBQWUsRUFDUCxTQUEyQixFQUMzQixZQUFpQztRQURqQyxjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQUMzQixpQkFBWSxHQUFaLFlBQVksQ0FBcUI7UUFYNUIsaUJBQVksR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBQ3BELGtCQUFhLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUVwQixpQkFBWSxHQUEwQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBRTVELGtCQUFhLEdBQUcsS0FBSyxDQUFDO1FBQ3RCLG1CQUFjLEdBQVksS0FBSyxDQUFDO1FBT25DLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQztZQUN0QixJQUFJLEVBQUUs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O2lCQUFNLElBQUksT0FBTyxZQUFZLFNBQVMsRUFBRTtnQkFDckMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLE9BQU8sQ0FBQyxDQUFDO2FBQ3ZDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7UUFFSCxTQUFTLENBQUMsV0FBVyxDQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDOUMsQ0FBQztDQUNKLENBQUE7QUF0RWE7SUFBVCxNQUFNLEVBQUU7c0NBQWUsWUFBWTs0REFBK0I7QUFOMUQsc0JBQXNCO0lBSmxDLFNBQVMsQ0FBQztRQUNQLDY4REFBaUQ7UUFDakQsU0FBUyxFQUFFLENBQUMsbUJBQW1CLENBQUM7S0FDbkMsQ0FBQzs2Q0FhVSxXQUFXO1FBQ0ksZ0JBQWdCO1FBQ2IsbUJBQW1CO0dBZHBDLHNCQUFzQixDQTRFbEM7U0E1RVksc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Db250cm9sLCBGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcbmltcG9ydCB7IENvbmZpcm1hdGlvblNlcnZpY2UsIER5bmFtaWNEaWFsb2dDb25maWcsIER5bmFtaWNEaWFsb2dSZWYgfSBmcm9tIFwicHJpbWVuZy9hcGlcIjtcbmltcG9ydCB7IFJlcGxheVN1YmplY3QsIFN1YmplY3QgfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XG5cbkBDb21wb25lbnQoe1xuICAgIHRlbXBsYXRlVXJsOiBcIi4vdmlzaXRvci1lZGl0LWZvcm0uY29tcG9uZW50Lmh0bWxcIixcbiAgICBwcm92aWRlcnM6IFtDb25maXJtYXRpb25TZXJ2aWNlXSxcbn0pXG5leHBvcnQgY2xhc3MgVmlzaXRhbnRlRm9ybUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgICBmb3JtR3JvdXA6IEZvcm1Hcm91cDtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgdW5zdWJzY3JpYmUkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgICBuZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3QoKTtcbiAgICBwcml2YXRlIGlkOiBhbnk7XG4gICAgQE91dHB1dCgpIG5vdFNhdmVkRGF0YTogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICAgIHByaXZhdGUgYWN0dWFsVmFsdWU6IGFueTtcbiAgICBwdWJsaWMgYWN0dWFsQ2hhbmdlZCA9IGZhbHNlO1xuICAgIHB1YmxpYyBpc0Zvcm1Nb2RpZmllZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIGZiOiBGb3JtQnVpbGRlcixcbiAgICAgICAgcHJpdmF0ZSBkaWFsb2dSZWY6IER5bmFtaWNEaWFsb2dSZWYsXG4gICAgICAgIHByaXZhdGUgZGlhbG9nQ29uZmlnOiBEeW5hbWljRGlhbG9nQ29uZmlnXG4gICAgKSB7XG4gICAgICAgIHRoaXMuZm9ybUdyb3VwID0gZmIuZ3JvdXAoe1xuICAgICAgICAgICAgbmFtZTogW3VuZGVmaW5lZCwgVmFsaWRhdG9ycy5jb21wb3NlKFtWYWxpZGF0b3JzLnJlcXVpcmVkXSldLFxuICAgICAgICAgICAgZG9jdW1lbnQ6IFt1bmRlZmluZWQsIFZhbGlkYXRvcnMuY29tcG9zZShbVmFsaWRhdG9ycy5yZXF1aXJlZF0pXSxcbiAgICAgICAgICAgIGNvbnRhY3Q6IFt1bmRlZmluZWQsIFZhbGlkYXRvcnMuY29tcG9zZShbVmFsaWRhdG9ycy5yZXF1aXJlZF0pXSxcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIGNvbnN0IHsgZGF0YSB9ID0gdGhpcy5kaWFsb2dDb25maWc7XG4gICAgICAgIGlmIChkYXRhICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHRoaXMuaWQgPSBkYXRhLmlkO1xuICAgICAgICAgICAgdGhpcy5mb3JtR3JvdXAuZ2V0KFwibmFtZVwiKS5zZXRWYWx1ZShkYXRhLm5hbWUpO1xuICAgICAgICAgICAgdGhpcy5mb3JtR3JvdXAuZ2V0KFwiZG9jdW1lbnRcIikuc2V0VmFsdWUoZGF0YS5kb2N1bWVudCk7XG4gICAgICAgICAgICB0aGlzLmZvcm1Hcm91cC5nZXQoXCJjb250YWN0XCIpLnNldFZhbHVlKGRhdGEuY29udGFjdCk7XG5cbiAgICAgICAgICAgIGlmIChkYXRhLmRvY3VtZW50ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmZvcm1Hcm91cC5nZXQoXCJkb2N1bWVudFwiKS5kaXNhYmxlKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLm5vdFNhdmVkRGF0YVxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCh2YWwpID0+ICh0aGlzLmFjdHVhbENoYW5nZWQgPSB2YWwpKTtcblxuICAgICAgICBjb25zdCBycyA9IG5ldyBSZXBsYXlTdWJqZWN0PGJvb2xlYW4+KCk7XG4gICAgICAgIHJzLnN1YnNjcmliZSgoaXNJbnRhY3Q6IGJvb2xlYW4pID0+ICh0aGlzLmlzRm9ybU1vZGlmaWVkID0gIWlzSW50YWN0KSk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKSB7XG4gICAgICAgIHRoaXMudW5zdWJzY3JpYmUkLm5leHQoKTtcbiAgICAgICAgdGhpcy51bnN1YnNjcmliZSQuY29tcGxldGUoKTtcbiAgICB9XG5cbiAgICBzYXZlKCkge1xuICAgICAgICBpZiAoIXRoaXMuZm9ybUdyb3VwLnZhbGlkKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy52YWxpZGF0ZUFsbEZvcm1GaWVsZHModGhpcy5mb3JtR3JvdXApO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgdmlzaXRhbnRlID0gdGhpcy5mb3JtR3JvdXAudmFsdWU7XG4gICAgICAgIHZpc2l0YW50ZS5pZCA9IHRoaXMuaWQ7XG4gICAgICAgIHRoaXMuY2xvc2UodmlzaXRhbnRlKTtcbiAgICB9XG5cbiAgICBjbG9zZShkYXRhPzogYW55KSB7XG4gICAgICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKGRhdGEpO1xuICAgIH1cblxuICAgIHByaXZhdGUgdmFsaWRhdGVBbGxGb3JtRmllbGRzKGZvcm1Hcm91cDogRm9ybUdyb3VwKSB7XG4gICAgICAgIE9iamVjdC5rZXlzKGZvcm1Hcm91cC5jb250cm9scykuZm9yRWFjaCgoZmllbGQpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGNvbnRyb2wgPSBmb3JtR3JvdXAuZ2V0KGZpZWxkKTtcblxuICAgICAgICAgICAgaWYgKGNvbnRyb2wgaW5zdGFuY2VvZiBGb3JtQ29udHJvbCkge1xuICAgICAgICAgICAgICAgIGNvbnRyb2wubWFya0FzRGlydHkoeyBvbmx5U2VsZjogdHJ1ZSB9KTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoY29udHJvbCBpbnN0YW5jZW9mIEZvcm1Hcm91cCkge1xuICAgICAgICAgICAgICAgIHRoaXMudmFsaWRhdGVBbGxGb3JtRmllbGRzKGNvbnRyb2wpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgICBmb3JtR3JvdXAubWFya0FzRGlydHkoeyBvbmx5U2VsZjogdHJ1ZSB9KTtcbiAgICB9XG59XG4iXX0=
84
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlzaXRvci1lZGl0LWZvcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNlbmlvcnNpc3RlbWFzL3ltcy1pbnRlZ3JhdGlvbi8iLCJzb3VyY2VzIjpbInNyYy9zYW0tc2VuaW9yL2NvbXBvbmVudHMvdmlzaXRvci1lZGl0L3Zpc2l0b3ItZWRpdC1mb3JtL3Zpc2l0YW50ZS1mb3JtL3Zpc2l0b3ItZWRpdC1mb3JtLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQXFCLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRixPQUFPLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDakYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLG1CQUFtQixFQUFFLGdCQUFnQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxhQUFhLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzlDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQU0zQyxJQUFhLHNCQUFzQixHQUFuQyxNQUFhLHNCQUFzQjtJQVcvQixZQUNJLEVBQWUsRUFDUCxTQUEyQixFQUMzQixZQUFpQztRQURqQyxjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQUMzQixpQkFBWSxHQUFaLFlBQVksQ0FBcUI7UUFYNUIsaUJBQVksR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBQ3BELGtCQUFhLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUVwQixpQkFBWSxHQUEwQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBRTVELGtCQUFhLEdBQUcsS0FBSyxDQUFDO1FBQ3RCLG1CQUFjLEdBQVksS0FBSyxDQUFDO1FBT25DLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQztZQUN0QixJQUFJLEVBQUUs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O2lCQUFNLElBQUksT0FBTyxZQUFZLFNBQVMsRUFBRTtnQkFDckMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLE9BQU8sQ0FBQyxDQUFDO2FBQ3ZDO2lCQUFNO2dCQUNILE1BQU0sb0JBQW9CLENBQUM7YUFDOUI7UUFDTCxDQUFDLENBQUMsQ0FBQztRQUVILFNBQVMsQ0FBQyxXQUFXLENBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUM5QyxDQUFDO0NBQ0osQ0FBQTtBQXhFYTtJQUFULE1BQU0sRUFBRTtzQ0FBZSxZQUFZOzREQUErQjtBQU4xRCxzQkFBc0I7SUFKbEMsU0FBUyxDQUFDO1FBQ1AscWlFQUFpRDtRQUNqRCxTQUFTLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQztLQUNuQyxDQUFDOzZDQWFVLFdBQVc7UUFDSSxnQkFBZ0I7UUFDYixtQkFBbUI7R0FkcEMsc0JBQXNCLENBOEVsQztTQTlFWSxzQkFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xuaW1wb3J0IHsgQ29uZmlybWF0aW9uU2VydmljZSwgRHluYW1pY0RpYWxvZ0NvbmZpZywgRHluYW1pY0RpYWxvZ1JlZiB9IGZyb20gXCJwcmltZW5nL2FwaVwiO1xuaW1wb3J0IHsgUmVwbGF5U3ViamVjdCwgU3ViamVjdCB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcblxuQENvbXBvbmVudCh7XG4gICAgdGVtcGxhdGVVcmw6IFwiLi92aXNpdG9yLWVkaXQtZm9ybS5jb21wb25lbnQuaHRtbFwiLFxuICAgIHByb3ZpZGVyczogW0NvbmZpcm1hdGlvblNlcnZpY2VdLFxufSlcbmV4cG9ydCBjbGFzcyBWaXNpdGFudGVGb3JtQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAgIGZvcm1Hcm91cDogRm9ybUdyb3VwO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSB1bnN1YnNjcmliZSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICAgIG5nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdCgpO1xuICAgIHByaXZhdGUgaWQ6IGFueTtcbiAgICBAT3V0cHV0KCkgbm90U2F2ZWREYXRhOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gICAgcHJpdmF0ZSBhY3R1YWxWYWx1ZTogYW55O1xuICAgIHB1YmxpYyBhY3R1YWxDaGFuZ2VkID0gZmFsc2U7XG4gICAgcHVibGljIGlzRm9ybU1vZGlmaWVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgZmI6IEZvcm1CdWlsZGVyLFxuICAgICAgICBwcml2YXRlIGRpYWxvZ1JlZjogRHluYW1pY0RpYWxvZ1JlZixcbiAgICAgICAgcHJpdmF0ZSBkaWFsb2dDb25maWc6IER5bmFtaWNEaWFsb2dDb25maWdcbiAgICApIHtcbiAgICAgICAgdGhpcy5mb3JtR3JvdXAgPSBmYi5ncm91cCh7XG4gICAgICAgICAgICBuYW1lOiBbdW5kZWZpbmVkLCBWYWxpZGF0b3JzLmNvbXBvc2UoW1ZhbGlkYXRvcnMucmVxdWlyZWRdKV0sXG4gICAgICAgICAgICBkb2N1bWVudDogW3VuZGVmaW5lZCwgVmFsaWRhdG9ycy5jb21wb3NlKFtWYWxpZGF0b3JzLnJlcXVpcmVkXSldLFxuICAgICAgICAgICAgY29udGFjdDogW3VuZGVmaW5lZCwgVmFsaWRhdG9ycy5jb21wb3NlKFtWYWxpZGF0b3JzLnJlcXVpcmVkXSldLFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgY29uc3QgeyBkYXRhIH0gPSB0aGlzLmRpYWxvZ0NvbmZpZztcbiAgICAgICAgaWYgKGRhdGEgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgdGhpcy5pZCA9IGRhdGEuaWQ7XG4gICAgICAgICAgICB0aGlzLmZvcm1Hcm91cC5nZXQoXCJuYW1lXCIpLnNldFZhbHVlKGRhdGEubmFtZSk7XG4gICAgICAgICAgICB0aGlzLmZvcm1Hcm91cC5nZXQoXCJkb2N1bWVudFwiKS5zZXRWYWx1ZShkYXRhLmRvY3VtZW50KTtcbiAgICAgICAgICAgIHRoaXMuZm9ybUdyb3VwLmdldChcImNvbnRhY3RcIikuc2V0VmFsdWUoZGF0YS5jb250YWN0KTtcblxuICAgICAgICAgICAgaWYgKGRhdGEuZG9jdW1lbnQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgIHRoaXMuZm9ybUdyb3VwLmdldChcImRvY3VtZW50XCIpLmRpc2FibGUoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMubm90U2F2ZWREYXRhXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKHZhbCkgPT4gKHRoaXMuYWN0dWFsQ2hhbmdlZCA9IHZhbCkpO1xuXG4gICAgICAgIGNvbnN0IHJzID0gbmV3IFJlcGxheVN1YmplY3Q8Ym9vbGVhbj4oKTtcbiAgICAgICAgcnMuc3Vic2NyaWJlKChpc0ludGFjdDogYm9vbGVhbikgPT4gKHRoaXMuaXNGb3JtTW9kaWZpZWQgPSAhaXNJbnRhY3QpKTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgdGhpcy51bnN1YnNjcmliZSQubmV4dCgpO1xuICAgICAgICB0aGlzLnVuc3Vic2NyaWJlJC5jb21wbGV0ZSgpO1xuICAgIH1cblxuICAgIHNhdmUoKSB7XG4gICAgICAgIGlmICghdGhpcy5mb3JtR3JvdXAudmFsaWQpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnZhbGlkYXRlQWxsRm9ybUZpZWxkcyh0aGlzLmZvcm1Hcm91cCk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCB2aXNpdGFudGUgPSB0aGlzLmZvcm1Hcm91cC52YWx1ZTtcbiAgICAgICAgdmlzaXRhbnRlLmlkID0gdGhpcy5pZDtcbiAgICAgICAgdGhpcy5jbG9zZSh2aXNpdGFudGUpO1xuICAgIH1cblxuICAgIGNsb3NlKGRhdGE/OiBhbnkpIHtcbiAgICAgICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UoZGF0YSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB2YWxpZGF0ZUFsbEZvcm1GaWVsZHMoZm9ybUdyb3VwOiBGb3JtR3JvdXApIHtcbiAgICAgICAgT2JqZWN0LmtleXMoZm9ybUdyb3VwLmNvbnRyb2xzKS5mb3JFYWNoKChmaWVsZCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgY29udHJvbCA9IGZvcm1Hcm91cC5nZXQoZmllbGQpO1xuXG4gICAgICAgICAgICBpZiAoY29udHJvbCBpbnN0YW5jZW9mIEZvcm1Db250cm9sKSB7XG4gICAgICAgICAgICAgICAgY29udHJvbC5tYXJrQXNEaXJ0eSh7IG9ubHlTZWxmOiB0cnVlIH0pO1xuICAgICAgICAgICAgfSBlbHNlIGlmIChjb250cm9sIGluc3RhbmNlb2YgRm9ybUdyb3VwKSB7XG4gICAgICAgICAgICAgICAgdGhpcy52YWxpZGF0ZUFsbEZvcm1GaWVsZHMoY29udHJvbCk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRocm93ICdJbnN0YW5jZSBmb3QgZm91bmQnO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgICBmb3JtR3JvdXAubWFya0FzRGlydHkoeyBvbmx5U2VsZjogdHJ1ZSB9KTtcbiAgICB9XG59XG4iXX0=