@hmcts/ccd-case-ui-toolkit 7.2.23-multiple-followup → 7.2.23-srt-rc1

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 (132) hide show
  1. package/esm2022/lib/app.config.mjs +1 -2
  2. package/esm2022/lib/components/form/date-input/date-input.component.mjs +56 -19
  3. package/esm2022/lib/shared/components/case-editor/case-edit/case-edit.component.mjs +3 -3
  4. package/esm2022/lib/shared/components/case-editor/case-edit-form/case-edit-form.component.mjs +24 -3
  5. package/esm2022/lib/shared/components/case-editor/case-edit-page/case-edit-page.component.mjs +6 -2
  6. package/esm2022/lib/shared/components/case-editor/case-event-completion/components/case-event-completion-task-cancelled/case-event-completion-task-cancelled.component.mjs +9 -5
  7. package/esm2022/lib/shared/components/case-editor/case-event-completion/components/case-event-completion-task-reassigned/case-event-completion-task-reassigned.component.mjs +9 -5
  8. package/esm2022/lib/shared/components/case-header/case-header.component.mjs +5 -5
  9. package/esm2022/lib/shared/components/case-viewer/case-challenged-access-success/case-challenged-access-success.component.mjs +9 -4
  10. package/esm2022/lib/shared/components/case-viewer/case-event-trigger/case-event-trigger.component.mjs +16 -3
  11. package/esm2022/lib/shared/components/case-viewer/case-full-access-view/case-full-access-view.component.mjs +20 -13
  12. package/esm2022/lib/shared/components/case-viewer/case-review-specific-access-reject/case-review-specific-access-reject.component.mjs +13 -9
  13. package/esm2022/lib/shared/components/case-viewer/services/event-trigger.resolver.mjs +4 -2
  14. package/esm2022/lib/shared/components/event-start/components/multiple-tasks-exist/multiple-tasks-exist.component.mjs +9 -5
  15. package/esm2022/lib/shared/components/event-start/components/no-tasks-available/no-tasks-available.component.mjs +9 -5
  16. package/esm2022/lib/shared/components/event-start/components/task-assigned/task-assigned.component.mjs +9 -5
  17. package/esm2022/lib/shared/components/event-start/components/task-unassigned/task-unassigned.component.mjs +9 -5
  18. package/esm2022/lib/shared/components/event-start/event-guard/event-start.guard.mjs +3 -3
  19. package/esm2022/lib/shared/components/event-start/services/event-start-state-machine.service.mjs +6 -6
  20. package/esm2022/lib/shared/components/palette/collection/read-collection-field.component.mjs +13 -10
  21. package/esm2022/lib/shared/components/palette/complex/read-complex-field-table.component.mjs +8 -8
  22. package/esm2022/lib/shared/components/palette/date/read-date-field.component.mjs +4 -4
  23. package/esm2022/lib/shared/components/palette/datetime-picker/datetime-picker.component.mjs +41 -10
  24. package/esm2022/lib/shared/components/palette/linked-cases/components/before-you-start/before-you-start.component.mjs +2 -2
  25. package/esm2022/lib/shared/components/palette/linked-cases/components/linked-cases-table/linked-cases-from-table.component.mjs +7 -7
  26. package/esm2022/lib/shared/components/palette/linked-cases/components/linked-cases-table/linked-cases-to-table.component.mjs +7 -7
  27. package/esm2022/lib/shared/components/palette/linked-cases/components/no-linked-cases/no-linked-cases.component.mjs +2 -2
  28. package/esm2022/lib/shared/components/palette/linked-cases/read-linked-cases-field.component.mjs +3 -3
  29. package/esm2022/lib/shared/components/palette/number/write-number-field.component.mjs +3 -3
  30. package/esm2022/lib/shared/components/palette/organisation/read-organisation-field-raw.component.mjs +21 -25
  31. package/esm2022/lib/shared/components/palette/organisation/read-organisation-field-table.component.mjs +21 -25
  32. package/esm2022/lib/shared/components/palette/palette.module.mjs +12 -3
  33. package/esm2022/lib/shared/components/palette/query-management/components/close-query/close-query.component.mjs +3 -3
  34. package/esm2022/lib/shared/components/palette/query-management/components/qualifying-questions/qualifying-question-detail/qualifying-question-detail.component.mjs +26 -15
  35. package/esm2022/lib/shared/components/palette/query-management/components/qualifying-questions/qualifying-question-options/qualifying-question-options.component.mjs +6 -2
  36. package/esm2022/lib/shared/components/palette/query-management/components/query-check-your-answers/query-check-your-answers.component.mjs +50 -180
  37. package/esm2022/lib/shared/components/palette/query-management/components/query-confirmation/query-confirmation.component.mjs +22 -18
  38. package/esm2022/lib/shared/components/palette/query-management/components/query-details/query-details.component.mjs +2 -2
  39. package/esm2022/lib/shared/components/palette/query-management/components/query-list/query-list.component.mjs +2 -2
  40. package/esm2022/lib/shared/components/palette/query-management/components/query-write/query-write-raise-query/query-write-raise-query.component.mjs +59 -6
  41. package/esm2022/lib/shared/components/palette/query-management/components/query-write/query-write-respond-to-query/query-write-respond-to-query.component.mjs +44 -11
  42. package/esm2022/lib/shared/components/palette/query-management/constants/query-management.constants.mjs +7 -0
  43. package/esm2022/lib/shared/components/palette/query-management/models/query-list/query-list-item/query-list-item.model.mjs +32 -14
  44. package/esm2022/lib/shared/components/palette/query-management/read-query-management-field.component.mjs +4 -4
  45. package/esm2022/lib/shared/components/palette/query-management/services/index.mjs +2 -1
  46. package/esm2022/lib/shared/components/palette/query-management/services/query-management.service.mjs +179 -0
  47. package/esm2022/lib/shared/components/palette/query-management/utils/query-management.utils.mjs +5 -5
  48. package/esm2022/lib/shared/components/palette/utils/field-label.pipe.mjs +11 -3
  49. package/esm2022/lib/shared/components/search-result/search-result.component.mjs +1 -1
  50. package/esm2022/lib/shared/directives/index.mjs +2 -1
  51. package/esm2022/lib/shared/directives/welsh-translated-markdown/index.mjs +3 -0
  52. package/esm2022/lib/shared/directives/welsh-translated-markdown/welsh-translated-markdown.directive.mjs +104 -0
  53. package/esm2022/lib/shared/directives/welsh-translated-markdown/welsh-translated-markdown.module.mjs +21 -0
  54. package/esm2022/lib/shared/pipes/search-result/sorting/sort-search-result.pipe.mjs +2 -3
  55. package/esm2022/lib/shared/services/draft/draft.service.mjs +2 -2
  56. package/esm2022/lib/shared/services/form/field-type-sanitiser.mjs +38 -3
  57. package/esm2022/lib/shared/services/form/form-value.service.mjs +24 -1
  58. package/esm2022/lib/shared/services/search-result/sorting/search-result-view-item-comparator-factory.mjs +7 -8
  59. package/fesm2022/hmcts-ccd-case-ui-toolkit.mjs +1310 -820
  60. package/fesm2022/hmcts-ccd-case-ui-toolkit.mjs.map +1 -1
  61. package/lib/app.config.d.ts +0 -1
  62. package/lib/app.config.d.ts.map +1 -1
  63. package/lib/components/form/date-input/date-input.component.d.ts +4 -0
  64. package/lib/components/form/date-input/date-input.component.d.ts.map +1 -1
  65. package/lib/shared/components/case-editor/case-edit-form/case-edit-form.component.d.ts +1 -0
  66. package/lib/shared/components/case-editor/case-edit-form/case-edit-form.component.d.ts.map +1 -1
  67. package/lib/shared/components/case-editor/case-edit-page/case-edit-page.component.d.ts.map +1 -1
  68. package/lib/shared/components/case-editor/case-event-completion/components/case-event-completion-task-cancelled/case-event-completion-task-cancelled.component.d.ts +2 -0
  69. package/lib/shared/components/case-editor/case-event-completion/components/case-event-completion-task-cancelled/case-event-completion-task-cancelled.component.d.ts.map +1 -1
  70. package/lib/shared/components/case-editor/case-event-completion/components/case-event-completion-task-reassigned/case-event-completion-task-reassigned.component.d.ts +2 -0
  71. package/lib/shared/components/case-editor/case-event-completion/components/case-event-completion-task-reassigned/case-event-completion-task-reassigned.component.d.ts.map +1 -1
  72. package/lib/shared/components/case-viewer/case-challenged-access-success/case-challenged-access-success.component.d.ts +2 -0
  73. package/lib/shared/components/case-viewer/case-challenged-access-success/case-challenged-access-success.component.d.ts.map +1 -1
  74. package/lib/shared/components/case-viewer/case-event-trigger/case-event-trigger.component.d.ts +1 -0
  75. package/lib/shared/components/case-viewer/case-event-trigger/case-event-trigger.component.d.ts.map +1 -1
  76. package/lib/shared/components/case-viewer/case-full-access-view/case-full-access-view.component.d.ts.map +1 -1
  77. package/lib/shared/components/case-viewer/case-review-specific-access-reject/case-review-specific-access-reject.component.d.ts +2 -0
  78. package/lib/shared/components/case-viewer/case-review-specific-access-reject/case-review-specific-access-reject.component.d.ts.map +1 -1
  79. package/lib/shared/components/case-viewer/services/event-trigger.resolver.d.ts.map +1 -1
  80. package/lib/shared/components/event-start/components/multiple-tasks-exist/multiple-tasks-exist.component.d.ts +2 -0
  81. package/lib/shared/components/event-start/components/multiple-tasks-exist/multiple-tasks-exist.component.d.ts.map +1 -1
  82. package/lib/shared/components/event-start/components/no-tasks-available/no-tasks-available.component.d.ts +2 -0
  83. package/lib/shared/components/event-start/components/no-tasks-available/no-tasks-available.component.d.ts.map +1 -1
  84. package/lib/shared/components/event-start/components/task-assigned/task-assigned.component.d.ts +2 -0
  85. package/lib/shared/components/event-start/components/task-assigned/task-assigned.component.d.ts.map +1 -1
  86. package/lib/shared/components/event-start/components/task-unassigned/task-unassigned.component.d.ts +2 -0
  87. package/lib/shared/components/event-start/components/task-unassigned/task-unassigned.component.d.ts.map +1 -1
  88. package/lib/shared/components/event-start/event-guard/event-start.guard.d.ts +2 -2
  89. package/lib/shared/components/event-start/event-guard/event-start.guard.d.ts.map +1 -1
  90. package/lib/shared/components/event-start/services/event-start-state-machine.service.d.ts.map +1 -1
  91. package/lib/shared/components/palette/collection/read-collection-field.component.d.ts +3 -1
  92. package/lib/shared/components/palette/collection/read-collection-field.component.d.ts.map +1 -1
  93. package/lib/shared/components/palette/date/read-date-field.component.d.ts.map +1 -1
  94. package/lib/shared/components/palette/datetime-picker/datetime-picker.component.d.ts +2 -0
  95. package/lib/shared/components/palette/datetime-picker/datetime-picker.component.d.ts.map +1 -1
  96. package/lib/shared/components/palette/palette.module.d.ts +18 -17
  97. package/lib/shared/components/palette/palette.module.d.ts.map +1 -1
  98. package/lib/shared/components/palette/query-management/components/qualifying-questions/qualifying-question-options/qualifying-question-options.component.d.ts +2 -0
  99. package/lib/shared/components/palette/query-management/components/qualifying-questions/qualifying-question-options/qualifying-question-options.component.d.ts.map +1 -1
  100. package/lib/shared/components/palette/query-management/components/query-check-your-answers/query-check-your-answers.component.d.ts +15 -13
  101. package/lib/shared/components/palette/query-management/components/query-check-your-answers/query-check-your-answers.component.d.ts.map +1 -1
  102. package/lib/shared/components/palette/query-management/components/query-confirmation/query-confirmation.component.d.ts +2 -0
  103. package/lib/shared/components/palette/query-management/components/query-confirmation/query-confirmation.component.d.ts.map +1 -1
  104. package/lib/shared/components/palette/query-management/components/query-write/query-write-raise-query/query-write-raise-query.component.d.ts +24 -3
  105. package/lib/shared/components/palette/query-management/components/query-write/query-write-raise-query/query-write-raise-query.component.d.ts.map +1 -1
  106. package/lib/shared/components/palette/query-management/components/query-write/query-write-respond-to-query/query-write-respond-to-query.component.d.ts +12 -3
  107. package/lib/shared/components/palette/query-management/components/query-write/query-write-respond-to-query/query-write-respond-to-query.component.d.ts.map +1 -1
  108. package/lib/shared/components/palette/query-management/constants/query-management.constants.d.ts +7 -0
  109. package/lib/shared/components/palette/query-management/constants/query-management.constants.d.ts.map +1 -0
  110. package/lib/shared/components/palette/query-management/models/query-list/query-list-item/query-list-item.model.d.ts.map +1 -1
  111. package/lib/shared/components/palette/query-management/services/index.d.ts +1 -0
  112. package/lib/shared/components/palette/query-management/services/index.d.ts.map +1 -1
  113. package/lib/shared/components/palette/query-management/services/query-management.service.d.ts +21 -0
  114. package/lib/shared/components/palette/query-management/services/query-management.service.d.ts.map +1 -0
  115. package/lib/shared/components/palette/utils/field-label.pipe.d.ts +1 -0
  116. package/lib/shared/components/palette/utils/field-label.pipe.d.ts.map +1 -1
  117. package/lib/shared/components/search-result/search-result.component.d.ts.map +1 -1
  118. package/lib/shared/directives/index.d.ts +1 -0
  119. package/lib/shared/directives/index.d.ts.map +1 -1
  120. package/lib/shared/directives/welsh-translated-markdown/index.d.ts +3 -0
  121. package/lib/shared/directives/welsh-translated-markdown/index.d.ts.map +1 -0
  122. package/lib/shared/directives/welsh-translated-markdown/welsh-translated-markdown.directive.d.ts +76 -0
  123. package/lib/shared/directives/welsh-translated-markdown/welsh-translated-markdown.directive.d.ts.map +1 -0
  124. package/lib/shared/directives/welsh-translated-markdown/welsh-translated-markdown.module.d.ts +8 -0
  125. package/lib/shared/directives/welsh-translated-markdown/welsh-translated-markdown.module.d.ts.map +1 -0
  126. package/lib/shared/pipes/search-result/sorting/sort-search-result.pipe.d.ts.map +1 -1
  127. package/lib/shared/services/form/field-type-sanitiser.d.ts +5 -0
  128. package/lib/shared/services/form/field-type-sanitiser.d.ts.map +1 -1
  129. package/lib/shared/services/form/form-value.service.d.ts +1 -0
  130. package/lib/shared/services/form/form-value.service.d.ts.map +1 -1
  131. package/lib/shared/services/search-result/sorting/search-result-view-item-comparator-factory.d.ts.map +1 -1
  132. package/package.json +1 -1
@@ -10,7 +10,7 @@ import * as i3 from "../../../services/case-worker.service";
10
10
  import * as i4 from "@angular/common";
11
11
  import * as i5 from "@angular/router";
12
12
  import * as i6 from "rpx-xui-translation";
13
- const _c0 = a0 => ["/", "cases", "case-details", a0, "tasks"];
13
+ const _c0 = (a0, a1, a2) => ["/", "cases", "case-details", a0, a1, a2, "tasks"];
14
14
  function CaseEventCompletionTaskReassignedComponent_div_0_Template(rf, ctx) { if (rf & 1) {
15
15
  const _r1 = i0.ɵɵgetCurrentView();
16
16
  i0.ɵɵelementStart(0, "div", 1)(1, "div", 2)(2, "h2", 3);
@@ -63,7 +63,7 @@ function CaseEventCompletionTaskReassignedComponent_div_0_Template(rf, ctx) { if
63
63
  i0.ɵɵadvance(4);
64
64
  i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(27, 22, "Continue"), " ");
65
65
  i0.ɵɵadvance(2);
66
- i0.ɵɵproperty("routerLink", i0.ɵɵpureFunction1(26, _c0, ctx_r1.caseId));
66
+ i0.ɵɵproperty("routerLink", i0.ɵɵpureFunction3(26, _c0, ctx_r1.jurisdiction, ctx_r1.caseType, ctx_r1.caseId));
67
67
  i0.ɵɵadvance();
68
68
  i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(30, 24, "Cancel"), " ");
69
69
  } }
@@ -79,6 +79,8 @@ export class CaseEventCompletionTaskReassignedComponent {
79
79
  subscription;
80
80
  caseworkerSubscription;
81
81
  judicialworkerSubscription;
82
+ jurisdiction;
83
+ caseType;
82
84
  constructor(sessionStorageService, judicialworkerService, caseworkerService) {
83
85
  this.sessionStorageService = sessionStorageService;
84
86
  this.judicialworkerService = judicialworkerService;
@@ -88,6 +90,8 @@ export class CaseEventCompletionTaskReassignedComponent {
88
90
  // Get case id and task from the parent component
89
91
  this.caseId = this.context.caseId;
90
92
  const task = this.context.reassignedTask;
93
+ this.jurisdiction = task.jurisdiction;
94
+ this.caseType = task.case_type_id;
91
95
  // Current user is a caseworker?
92
96
  this.caseworkerSubscription = this.caseworkerService.getCaseworkers(task.jurisdiction).subscribe(result => {
93
97
  if (result && result[0].service === task.jurisdiction && result[0].caseworkers) {
@@ -143,18 +147,18 @@ export class CaseEventCompletionTaskReassignedComponent {
143
147
  }
144
148
  static ɵfac = function CaseEventCompletionTaskReassignedComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CaseEventCompletionTaskReassignedComponent)(i0.ɵɵdirectiveInject(i1.SessionStorageService), i0.ɵɵdirectiveInject(i2.JudicialworkerService), i0.ɵɵdirectiveInject(i3.CaseworkerService)); };
145
149
  static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CaseEventCompletionTaskReassignedComponent, selectors: [["app-case-event-completion-task-reassigned"]], inputs: { context: "context" }, outputs: { notifyEventCompletionReassigned: "notifyEventCompletionReassigned" }, decls: 1, vars: 1, consts: [["class", "govuk-!-margin-9", 4, "ngIf"], [1, "govuk-!-margin-9"], ["aria-labelledby", "error-summary-title", "role", "alert", "tabindex", "-1", "data-module", "error-summary", 1, "govuk-error-summary"], ["id", "error-summary-title", 1, "govuk-error-summary__title"], [1, "govuk-error-summary__body"], [1, "govuk-list", "govuk-error-summary__list"], ["href", "#"], [1, "govuk-form-group", "govuk-form-group--error"], [1, "govuk-heading-m"], [1, "form-group", "form-group-related"], ["data-module", "govuk-button", 1, "govuk-button", "govuk-!-margin-right-2", 3, "click"], ["data-module", "govuk-button", 1, "govuk-button", "govuk-button--secondary", 3, "routerLink"]], template: function CaseEventCompletionTaskReassignedComponent_Template(rf, ctx) { if (rf & 1) {
146
- i0.ɵɵtemplate(0, CaseEventCompletionTaskReassignedComponent_div_0_Template, 31, 28, "div", 0);
150
+ i0.ɵɵtemplate(0, CaseEventCompletionTaskReassignedComponent_div_0_Template, 31, 30, "div", 0);
147
151
  } if (rf & 2) {
148
152
  i0.ɵɵproperty("ngIf", ctx.assignedUserName);
149
153
  } }, dependencies: [i4.NgIf, i5.RouterLink, i6.RpxTranslatePipe], encapsulation: 2 });
150
154
  }
151
155
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CaseEventCompletionTaskReassignedComponent, [{
152
156
  type: Component,
153
- args: [{ selector: 'app-case-event-completion-task-reassigned', template: "<div class=\"govuk-!-margin-9\" *ngIf=\"assignedUserName\">\n <div class=\"govuk-error-summary\" aria-labelledby=\"error-summary-title\" role=\"alert\" tabindex=\"-1\"\n data-module=\"error-summary\">\n <h2 class=\"govuk-error-summary__title\" id=\"error-summary-title\">\n {{'There is a problem' | rpxTranslate}}\n </h2>\n <div class=\"govuk-error-summary__body\">\n <ul class=\"govuk-list govuk-error-summary__list\">\n <li>\n <a href=\"#\">{{'Task reassigned' | rpxTranslate}}</a>\n </li>\n </ul>\n </div>\n </div>\n\n <div class=\"govuk-form-group govuk-form-group--error\">\n <h2 class=\"govuk-heading-m\">{{'Task reassigned' | rpxTranslate}}</h2>\n <p>{{'This task has been reassigned to' | rpxTranslate}} {{assignedUserName}}.</p>\n <p>{{'Click Continue to reassign the task to you and save your progress.' | rpxTranslate}}</p>\n <p>{{'Alternatively, click Cancel to return to the tasks tab without saving your progress.' | rpxTranslate}}</p>\n <div class=\"form-group form-group-related\">\n <button class=\"govuk-button govuk-!-margin-right-2\" data-module=\"govuk-button\" (click)=\"onContinue()\">\n {{'Continue' | rpxTranslate}}\n </button>\n <a [routerLink]=\"['/', 'cases', 'case-details', caseId, 'tasks']\"\n class=\"govuk-button govuk-button--secondary\" data-module=\"govuk-button\">\n {{'Cancel' | rpxTranslate}}\n </a>\n </div>\n </div>\n</div>\n" }]
157
+ args: [{ selector: 'app-case-event-completion-task-reassigned', template: "<div class=\"govuk-!-margin-9\" *ngIf=\"assignedUserName\">\n <div class=\"govuk-error-summary\" aria-labelledby=\"error-summary-title\" role=\"alert\" tabindex=\"-1\"\n data-module=\"error-summary\">\n <h2 class=\"govuk-error-summary__title\" id=\"error-summary-title\">\n {{'There is a problem' | rpxTranslate}}\n </h2>\n <div class=\"govuk-error-summary__body\">\n <ul class=\"govuk-list govuk-error-summary__list\">\n <li>\n <a href=\"#\">{{'Task reassigned' | rpxTranslate}}</a>\n </li>\n </ul>\n </div>\n </div>\n\n <div class=\"govuk-form-group govuk-form-group--error\">\n <h2 class=\"govuk-heading-m\">{{'Task reassigned' | rpxTranslate}}</h2>\n <p>{{'This task has been reassigned to' | rpxTranslate}} {{assignedUserName}}.</p>\n <p>{{'Click Continue to reassign the task to you and save your progress.' | rpxTranslate}}</p>\n <p>{{'Alternatively, click Cancel to return to the tasks tab without saving your progress.' | rpxTranslate}}</p>\n <div class=\"form-group form-group-related\">\n <button class=\"govuk-button govuk-!-margin-right-2\" data-module=\"govuk-button\" (click)=\"onContinue()\">\n {{'Continue' | rpxTranslate}}\n </button>\n <a [routerLink]=\"['/', 'cases', 'case-details', jurisdiction, caseType, caseId, 'tasks']\"\n class=\"govuk-button govuk-button--secondary\" data-module=\"govuk-button\">\n {{'Cancel' | rpxTranslate}}\n </a>\n </div>\n </div>\n</div>\n" }]
154
158
  }], () => [{ type: i1.SessionStorageService }, { type: i2.JudicialworkerService }, { type: i3.CaseworkerService }], { context: [{
155
159
  type: Input
156
160
  }], notifyEventCompletionReassigned: [{
157
161
  type: Output
158
162
  }] }); })();
159
163
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CaseEventCompletionTaskReassignedComponent, { className: "CaseEventCompletionTaskReassignedComponent", filePath: "lib/shared/components/case-editor/case-event-completion/components/case-event-completion-task-reassigned/case-event-completion-task-reassigned.component.ts", lineNumber: 16 }); })();
160
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FzZS1ldmVudC1jb21wbGV0aW9uLXRhc2stcmVhc3NpZ25lZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jY2QtY2FzZS11aS10b29sa2l0L3NyYy9saWIvc2hhcmVkL2NvbXBvbmVudHMvY2FzZS1lZGl0b3IvY2FzZS1ldmVudC1jb21wbGV0aW9uL2NvbXBvbmVudHMvY2FzZS1ldmVudC1jb21wbGV0aW9uLXRhc2stcmVhc3NpZ25lZC9jYXNlLWV2ZW50LWNvbXBsZXRpb24tdGFzay1yZWFzc2lnbmVkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NjZC1jYXNlLXVpLXRvb2xraXQvc3JjL2xpYi9zaGFyZWQvY29tcG9uZW50cy9jYXNlLWVkaXRvci9jYXNlLWV2ZW50LWNvbXBsZXRpb24vY29tcG9uZW50cy9jYXNlLWV2ZW50LWNvbXBsZXRpb24tdGFzay1yZWFzc2lnbmVkL2Nhc2UtZXZlbnQtY29tcGxldGlvbi10YXNrLXJlYXNzaWduZWQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUxRixPQUFPLEVBQ0wsV0FBVyxFQUNYLHFCQUFxQixFQUN0QixNQUFNLHlCQUF5QixDQUFDO0FBRWpDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDOzs7Ozs7Ozs7OztJQ05uRCxBQUZGLEFBREYsOEJBQXVELGFBRXZCLFlBQ29DO0lBQzlELFlBQ0Y7O0lBQUEsaUJBQUs7SUFJQyxBQURGLEFB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UUFDbEQscUVBQXFFO1FBQ3JFLHVGQUF1RjtRQUN2RixJQUFJLElBQUksRUFBRSxDQUFDO1lBQ1QsK0ZBQStGO1lBQy9GLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxPQUFPLENBQUMsY0FBYyxFQUFFLGlCQUFpQixDQUFDLENBQUE7WUFDckUsSUFBSSxDQUFDLCtCQUErQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNsRCxDQUFDO2FBQU0sQ0FBQztZQUNOLHVDQUF1QztZQUN2QyxJQUFJLENBQUMsK0JBQStCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ25ELENBQUM7SUFDSCxDQUFDO29JQTlFVSwwQ0FBMEM7NkRBQTFDLDBDQUEwQztZQ2Z2RCw2RkFBdUQ7O1lBQXhCLDJDQUFzQjs7O2lGRGV4QywwQ0FBMEM7Y0FKdEQsU0FBUzsyQkFDRSwyQ0FBMkM7MEhBS3JELE9BQU87a0JBRE4sS0FBSztZQUdDLCtCQUErQjtrQkFEckMsTUFBTTs7a0ZBSEksMENBQTBDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gIEZpZWxkc1V0aWxzLFxuICBTZXNzaW9uU3RvcmFnZVNlcnZpY2Vcbn0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vc2VydmljZXMnO1xuaW1wb3J0IHsgRXZlbnRDb21wbGV0aW9uU3RhdGVNYWNoaW5lQ29udGV4dCB9IGZyb20gJy4uLy4uLy4uL2RvbWFpbic7XG5pbXBvcnQgeyBDYXNld29ya2VyU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2Nhc2Utd29ya2VyLnNlcnZpY2UnO1xuaW1wb3J0IHsgSnVkaWNpYWx3b3JrZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvanVkaWNpYWwtd29ya2VyLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ2FzZUVkaXRDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9jYXNlLWVkaXQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtY2FzZS1ldmVudC1jb21wbGV0aW9uLXRhc2stcmVhc3NpZ25lZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9jYXNlLWV2ZW50LWNvbXBsZXRpb24tdGFzay1yZWFzc2lnbmVkLmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIENhc2VFdmVudENvbXBsZXRpb25UYXNrUmVhc3NpZ25lZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgQElucHV0KClcbiAgY29udGV4dDogRXZlbnRDb21wbGV0aW9uU3RhdGVNYWNoaW5lQ29udGV4dDtcbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBub3RpZnlFdmVudENvbXBsZXRpb25SZWFzc2lnbmVkOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgcHVibGljIGNhc2VJZDogc3RyaW5nO1xuICBwdWJsaWMgYXNzaWduZWRVc2VySWQ6IHN0cmluZztcbiAgcHVibGljIGFzc2lnbmVkVXNlck5hbWU6IHN0cmluZztcbiAgcHVibGljIHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICBwdWJsaWMgY2FzZXdvcmtlclN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICBwdWJsaWMganVkaWNpYWx3b3JrZXJTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHNlc3Npb25TdG9yYWdlU2VydmljZTogU2Vzc2lvblN0b3JhZ2VTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkganVkaWNpYWx3b3JrZXJTZXJ2aWNlOiBKdWRpY2lhbHdvcmtlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBjYXNld29ya2VyU2VydmljZTogQ2FzZXdvcmtlclNlcnZpY2UpIHtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAvLyBHZXQgY2FzZSBpZCBhbmQgdGFzayBmcm9tIHRoZSBwYXJlbnQgY29tcG9uZW50XG4gICAgdGhpcy5jYXNlSWQgPSB0aGlzLmNvbnRleHQuY2FzZUlkO1xuICAgIGNvbnN0IHRhc2sgPSB0aGlzLmNvbnRleHQucmVhc3NpZ25lZFRhc2s7XG5cbiAgICAvLyBDdXJyZW50IHVzZXIgaXMgYSBjYXNld29ya2VyP1xuICAgIHRoaXMuY2FzZXdvcmtlclN1YnNjcmlwdGlvbiA9IHRoaXMuY2FzZXdvcmtlclNlcnZpY2UuZ2V0Q2FzZXdvcmtlcnModGFzay5qdXJpc2RpY3Rpb24pLnN1YnNjcmliZShyZXN1bHQgPT4ge1xuICAgICAgaWYgKHJlc3VsdCAmJiByZXN1bHRbMF0uc2VydmljZSA9PT0gdGFzay5qdXJpc2RpY3Rpb24gJiYgcmVzdWx0WzBdLmNhc2V3b3JrZXJzKSB7XG4gICAgICAgIGNvbnN0IGNhc2V3b3JrZXIgPSByZXN1bHRbMF0uY2FzZXdvcmtlcnMuZmluZCh4ID0+IHguaWRhbUlkID09PSB0YXNrLmFzc2lnbmVlKTtcbiAgICAgICAgaWYgKGNhc2V3b3JrZXIpIHtcbiAgICAgICAgICB0aGlzLmFzc2lnbmVkVXNlck5hbWUgPSBgJHtjYXNld29ya2VyLmZpcnN0TmFtZX0gJHtjYXNld29ya2VyLmxhc3ROYW1lfWA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKCF0aGlzLmFzc2lnbmVkVXNlck5hbWUpIHtcbiAgICAgICAgLy8gQ3VycmVudCB1c2VyIGlzIGEganVkaWNpYWwgdXNlcj9cbiAgICAgICAgdGhpcy5qdWRpY2lhbHdvcmtlclN1YnNjcmlwdGlvbiA9IHRoaXMuanVkaWNpYWx3b3JrZXJTZXJ2aWNlLmdldEp1ZGljaWFsd29ya2VycyhbdGFzay5hc3NpZ25lZV0sIHRhc2suanVyaXNkaWN0aW9uKVxuICAgICAgICAuc3Vic2NyaWJlKGp1ZGljaWFsd29ya2VycyA9PiB7XG4gICAgICAgICAgaWYgKGp1ZGljaWFsd29ya2Vycykge1xuICAgICAgICAgICAgY29uc3QganVkaWNpYWx3b3JrZXIgPSBqdWRpY2lhbHdvcmtlcnMuZmluZCh4ID0+IHguc2lkYW1faWQgPT09IHRhc2suYXNzaWduZWUpO1xuICAgICAgICAgICAgaWYgKGp1ZGljaWFsd29ya2VyKSB7XG4gICAgICAgICAgICAgIHRoaXMuYXNzaWduZWRVc2VyTmFtZSA9IGp1ZGljaWFsd29ya2VyLmZ1bGxfbmFtZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAoIXRoaXMuYXNzaWduZWRVc2VyTmFtZSkge1xuICAgICAgICAgICAgdGhpcy5hc3NpZ25lZFVzZXJOYW1lID0gJ2Fub3RoZXIgdXNlcic7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5zdWJzY3JpcHRpb24pIHtcbiAgICAgIHRoaXMuc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICAgIGlmICh0aGlzLmNhc2V3b3JrZXJTdWJzY3JpcHRpb24pIHtcbiAgICAgIHRoaXMuY2FzZXdvcmtlclN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgIH1cbiAgICBpZiAodGhpcy5qdWRpY2lhbHdvcmtlclN1YnNjcmlwdGlvbikge1xuICAgICAgdGhpcy5qdWRpY2lhbHdvcmtlclN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvbkNvbnRpbnVlKCk6IHZvaWQge1xuICAgIC8vIEdldCB0YXNrIGRldGFpbHNcbiAgICBjb25zdCBjbGllbnRDb250ZXh0U3RyID0gdGhpcy5zZXNzaW9uU3RvcmFnZVNlcnZpY2UuZ2V0SXRlbShDYXNlRWRpdENvbXBvbmVudC5DTElFTlRfQ09OVEVYVCk7XG4gICAgY29uc3QgdXNlclRhc2sgPSBGaWVsZHNVdGlscy5nZXRVc2VyVGFza0Zyb21DbGllbnRDb250ZXh0KGNsaWVudENvbnRleHRTdHIpO1xuICAgIGNvbnN0IHRhc2sgPSB1c2VyVGFzayA/IHVzZXJUYXNrLnRhc2tfZGF0YSA6IG51bGw7XG4gICAgLy8gbm90IGNvbXBsZXRlX3Rhc2sgbm90IHV0aWxpc2VkIGhlcmUgYXMgcmVsYXRlZCB0byBldmVudCBjb21wbGV0aW9uXG4gICAgLy8gc2VydmljZSB3YW50aW5nIHRhc2sgYXNzb2NpYXRlZCB3aXRoIGV2ZW50IHRvIG5vdCBiZSBjb21wbGV0ZWQgbm90IGRpcmVjdGx5IHJlbGV2YW50XG4gICAgaWYgKHRhc2spIHtcbiAgICAgIC8vIFNldCBzZXNzaW9uIHRvIG92ZXJyaWRlIHJlYXNzaWdubWVudCBzZXR0aW5ncyBzbyBjb2RlIGZsb3cgZG9lcyBub3QgcmV0dXJuIHRvIHRoaXMgY29tcG9uZW50XG4gICAgICB0aGlzLnNlc3Npb25TdG9yYWdlU2VydmljZS5zZXRJdGVtKCdhc3NpZ25OZWVkZWQnLCAndHJ1ZSAtIG92ZXJyaWRlJylcbiAgICAgIHRoaXMubm90aWZ5RXZlbnRDb21wbGV0aW9uUmVhc3NpZ25lZC5lbWl0KHRydWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBFbWl0IGV2ZW50IGNhbm5vdCBiZSBjb21wbGV0ZWQgZXZlbnRcbiAgICAgIHRoaXMubm90aWZ5RXZlbnRDb21wbGV0aW9uUmVhc3NpZ25lZC5lbWl0KGZhbHNlKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJnb3Z1ay0hLW1hcmdpbi05XCIgKm5nSWY9XCJhc3NpZ25lZFVzZXJOYW1lXCI+XG4gIDxkaXYgY2xhc3M9XCJnb3Z1ay1lcnJvci1zdW1tYXJ5XCIgYXJpYS1sYWJlbGxlZGJ5PVwiZXJyb3Itc3VtbWFyeS10aXRsZVwiIHJvbGU9XCJhbGVydFwiIHRhYmluZGV4PVwiLTFcIlxuICAgIGRhdGEtbW9kdWxlPVwiZXJyb3Itc3VtbWFyeVwiPlxuICAgIDxoMiBjbGFzcz1cImdvdnVrLWVycm9yLXN1bW1hcnlfX3RpdGxlXCIgaWQ9XCJlcnJvci1zdW1tYXJ5LXRpdGxlXCI+XG4gICAgICB7eydUaGVyZSBpcyBhIHByb2JsZW0nIHwgcnB4VHJhbnNsYXRlfX1cbiAgICA8L2gyPlxuICAgIDxkaXYgY2xhc3M9XCJnb3Z1ay1lcnJvci1zdW1tYXJ5X19ib2R5XCI+XG4gICAgICA8dWwgY2xhc3M9XCJnb3Z1ay1saXN0IGdvdnVrLWVycm9yLXN1bW1hcnlfX2xpc3RcIj5cbiAgICAgICAgPGxpPlxuICAgICAgICAgIDxhIGhyZWY9XCIjXCI+e3snVGFzayByZWFzc2lnbmVkJyB8IHJweFRyYW5zbGF0ZX19PC9hPlxuICAgICAgICA8L2xpPlxuICAgICAgPC91bD5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG5cbiAgPGRpdiBjbGFzcz1cImdvdnVrLWZvcm0tZ3JvdXAgZ292dWstZm9ybS1ncm91cC0tZXJyb3JcIj5cbiAgICA8aDIgY2xhc3M9XCJnb3Z1ay1oZWFkaW5nLW1cIj57eydUYXNrIHJlYXNzaWduZWQnIHwgcnB4VHJhbnNsYXRlfX08L2gyPlxuICAgIDxwPnt7J1RoaXMgdGFzayBoYXMgYmVlbiByZWFzc2lnbmVkIHRvJyB8IHJweFRyYW5zbGF0ZX19IHt7YXNzaWduZWRVc2VyTmFtZX19LjwvcD5cbiAgICA8cD57eydDbGljayBDb250aW51ZSB0byByZWFzc2lnbiB0aGUgdGFzayB0byB5b3UgYW5kIHNhdmUgeW91ciBwcm9ncmVzcy4nIHwgcnB4VHJhbnNsYXRlfX08L3A+XG4gICAgPHA+e3snQWx0ZXJuYXRpdmVseSwgY2xpY2sgQ2FuY2VsIHRvIHJldHVybiB0byB0aGUgdGFza3MgdGFiIHdpdGhvdXQgc2F2aW5nIHlvdXIgcHJvZ3Jlc3MuJyB8IHJweFRyYW5zbGF0ZX19PC9wPlxuICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwIGZvcm0tZ3JvdXAtcmVsYXRlZFwiPlxuICAgICAgPGJ1dHRvbiBjbGFzcz1cImdvdnVrLWJ1dHRvbiBnb3Z1ay0hLW1hcmdpbi1yaWdodC0yXCIgZGF0YS1tb2R1bGU9XCJnb3Z1ay1idXR0b25cIiAoY2xpY2spPVwib25Db250aW51ZSgpXCI+XG4gICAgICAgIHt7J0NvbnRpbnVlJyB8IHJweFRyYW5zbGF0ZX19XG4gICAgICA8L2J1dHRvbj5cbiAgICAgIDxhIFtyb3V0ZXJMaW5rXT1cIlsnLycsICdjYXNlcycsICdjYXNlLWRldGFpbHMnLCBjYXNlSWQsICd0YXNrcyddXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJnb3Z1ay1idXR0b24gZ292dWstYnV0dG9uLS1zZWNvbmRhcnlcIiBkYXRhLW1vZHVsZT1cImdvdnVrLWJ1dHRvblwiPlxuICAgICAgICB7eydDYW5jZWwnIHwgcnB4VHJhbnNsYXRlfX1cbiAgICAgIDwvYT5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
164
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FzZS1ldmVudC1jb21wbGV0aW9uLXRhc2stcmVhc3NpZ25lZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jY2QtY2FzZS11aS10b29sa2l0L3NyYy9saWIvc2hhcmVkL2NvbXBvbmVudHMvY2FzZS1lZGl0b3IvY2FzZS1ldmVudC1jb21wbGV0aW9uL2NvbXBvbmVudHMvY2FzZS1ldmVudC1jb21wbGV0aW9uLXRhc2stcmVhc3NpZ25lZC9jYXNlLWV2ZW50LWNvbXBsZXRpb24tdGFzay1yZWFzc2lnbmVkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NjZC1jYXNlLXVpLXRvb2xraXQvc3JjL2xpYi9zaGFyZWQvY29tcG9uZW50cy9jYXNlLWVkaXRvci9jYXNlLWV2ZW50LWNvbXBsZXRpb24vY29tcG9uZW50cy9jYXNlLWV2ZW50LWNvbXBsZXRpb24tdGFzay1yZWFzc2lnbmVkL2Nhc2UtZXZlbnQtY29tcGxldGlvbi10YXNrLXJlYXNzaWduZWQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUxRixPQUFPLEVBQ0wsV0FBVyxFQUNYLHFCQUFxQixFQUN0QixNQUFNLHlCQUF5QixDQUFDO0FBRWpDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDOzs7Ozs7Ozs7OztJQ05uRCxBQUZGLEFBREYsOEJBQXVELGFBRXZCLFlBQ29DO0lBQzlELFlBQ0Y7O0lBQUEsaUJBQUs7SUFJQyxBQURGLEFB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QUFHLFdBQVcsQ0FBQyw0QkFBNEIsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQzVFLE1BQU0sSUFBSSxHQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQ2xELHFFQUFxRTtRQUNyRSx1RkFBdUY7UUFDdkYsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUNULCtGQUErRjtZQUMvRixJQUFJLENBQUMscUJBQXFCLENBQUMsT0FBTyxDQUFDLGNBQWMsRUFBRSxpQkFBaUIsQ0FBQyxDQUFBO1lBQ3JFLElBQUksQ0FBQywrQkFBK0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbEQsQ0FBQzthQUFNLENBQUM7WUFDTix1Q0FBdUM7WUFDdkMsSUFBSSxDQUFDLCtCQUErQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNuRCxDQUFDO0lBQ0gsQ0FBQztvSUFsRlUsMENBQTBDOzZEQUExQywwQ0FBMEM7WUNmdkQsNkZBQXVEOztZQUF4QiwyQ0FBc0I7OztpRkRleEMsMENBQTBDO2NBSnRELFNBQVM7MkJBQ0UsMkNBQTJDOzBIQUtyRCxPQUFPO2tCQUROLEtBQUs7WUFHQywrQkFBK0I7a0JBRHJDLE1BQU07O2tGQUhJLDBDQUEwQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICBGaWVsZHNVdGlscyxcbiAgU2Vzc2lvblN0b3JhZ2VTZXJ2aWNlXG59IGZyb20gJy4uLy4uLy4uLy4uLy4uL3NlcnZpY2VzJztcbmltcG9ydCB7IEV2ZW50Q29tcGxldGlvblN0YXRlTWFjaGluZUNvbnRleHQgfSBmcm9tICcuLi8uLi8uLi9kb21haW4nO1xuaW1wb3J0IHsgQ2FzZXdvcmtlclNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9jYXNlLXdvcmtlci5zZXJ2aWNlJztcbmltcG9ydCB7IEp1ZGljaWFsd29ya2VyU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2p1ZGljaWFsLXdvcmtlci5zZXJ2aWNlJztcbmltcG9ydCB7IENhc2VFZGl0Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vY2FzZS1lZGl0JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWNhc2UtZXZlbnQtY29tcGxldGlvbi10YXNrLXJlYXNzaWduZWQnLFxuICB0ZW1wbGF0ZVVybDogJy4vY2FzZS1ldmVudC1jb21wbGV0aW9uLXRhc2stcmVhc3NpZ25lZC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBDYXNlRXZlbnRDb21wbGV0aW9uVGFza1JlYXNzaWduZWRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpXG4gIGNvbnRleHQ6IEV2ZW50Q29tcGxldGlvblN0YXRlTWFjaGluZUNvbnRleHQ7XG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgbm90aWZ5RXZlbnRDb21wbGV0aW9uUmVhc3NpZ25lZDogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG4gIHB1YmxpYyBjYXNlSWQ6IHN0cmluZztcbiAgcHVibGljIGFzc2lnbmVkVXNlcklkOiBzdHJpbmc7XG4gIHB1YmxpYyBhc3NpZ25lZFVzZXJOYW1lOiBzdHJpbmc7XG4gIHB1YmxpYyBzdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgcHVibGljIGNhc2V3b3JrZXJTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgcHVibGljIGp1ZGljaWFsd29ya2VyU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG4gIHB1YmxpYyBqdXJpc2RpY3Rpb246IHN0cmluZztcbiAgcHVibGljIGNhc2VUeXBlOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBzZXNzaW9uU3RvcmFnZVNlcnZpY2U6IFNlc3Npb25TdG9yYWdlU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGp1ZGljaWFsd29ya2VyU2VydmljZTogSnVkaWNpYWx3b3JrZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgY2FzZXdvcmtlclNlcnZpY2U6IENhc2V3b3JrZXJTZXJ2aWNlKSB7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgLy8gR2V0IGNhc2UgaWQgYW5kIHRhc2sgZnJvbSB0aGUgcGFyZW50IGNvbXBvbmVudFxuICAgIHRoaXMuY2FzZUlkID0gdGhpcy5jb250ZXh0LmNhc2VJZDtcbiAgICBjb25zdCB0YXNrID0gdGhpcy5jb250ZXh0LnJlYXNzaWduZWRUYXNrO1xuICAgIHRoaXMuanVyaXNkaWN0aW9uID0gdGFzay5qdXJpc2RpY3Rpb247XG4gICAgdGhpcy5jYXNlVHlwZSA9IHRhc2suY2FzZV90eXBlX2lkO1xuXG4gICAgLy8gQ3VycmVudCB1c2VyIGlzIGEgY2FzZXdvcmtlcj9cbiAgICB0aGlzLmNhc2V3b3JrZXJTdWJzY3JpcHRpb24gPSB0aGlzLmNhc2V3b3JrZXJTZXJ2aWNlLmdldENhc2V3b3JrZXJzKHRhc2suanVyaXNkaWN0aW9uKS5zdWJzY3JpYmUocmVzdWx0ID0+IHtcbiAgICAgIGlmIChyZXN1bHQgJiYgcmVzdWx0WzBdLnNlcnZpY2UgPT09IHRhc2suanVyaXNkaWN0aW9uICYmIHJlc3VsdFswXS5jYXNld29ya2Vycykge1xuICAgICAgICBjb25zdCBjYXNld29ya2VyID0gcmVzdWx0WzBdLmNhc2V3b3JrZXJzLmZpbmQoeCA9PiB4LmlkYW1JZCA9PT0gdGFzay5hc3NpZ25lZSk7XG4gICAgICAgIGlmIChjYXNld29ya2VyKSB7XG4gICAgICAgICAgdGhpcy5hc3NpZ25lZFVzZXJOYW1lID0gYCR7Y2FzZXdvcmtlci5maXJzdE5hbWV9ICR7Y2FzZXdvcmtlci5sYXN0TmFtZX1gO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGlmICghdGhpcy5hc3NpZ25lZFVzZXJOYW1lKSB7XG4gICAgICAgIC8vIEN1cnJlbnQgdXNlciBpcyBhIGp1ZGljaWFsIHVzZXI/XG4gICAgICAgIHRoaXMuanVkaWNpYWx3b3JrZXJTdWJzY3JpcHRpb24gPSB0aGlzLmp1ZGljaWFsd29ya2VyU2VydmljZS5nZXRKdWRpY2lhbHdvcmtlcnMoW3Rhc2suYXNzaWduZWVdLCB0YXNrLmp1cmlzZGljdGlvbilcbiAgICAgICAgLnN1YnNjcmliZShqdWRpY2lhbHdvcmtlcnMgPT4ge1xuICAgICAgICAgIGlmIChqdWRpY2lhbHdvcmtlcnMpIHtcbiAgICAgICAgICAgIGNvbnN0IGp1ZGljaWFsd29ya2VyID0ganVkaWNpYWx3b3JrZXJzLmZpbmQoeCA9PiB4LnNpZGFtX2lkID09PSB0YXNrLmFzc2lnbmVlKTtcbiAgICAgICAgICAgIGlmIChqdWRpY2lhbHdvcmtlcikge1xuICAgICAgICAgICAgICB0aGlzLmFzc2lnbmVkVXNlck5hbWUgPSBqdWRpY2lhbHdvcmtlci5mdWxsX25hbWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKCF0aGlzLmFzc2lnbmVkVXNlck5hbWUpIHtcbiAgICAgICAgICAgIHRoaXMuYXNzaWduZWRVc2VyTmFtZSA9ICdhbm90aGVyIHVzZXInO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc3Vic2NyaXB0aW9uKSB7XG4gICAgICB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgIH1cbiAgICBpZiAodGhpcy5jYXNld29ya2VyU3Vic2NyaXB0aW9uKSB7XG4gICAgICB0aGlzLmNhc2V3b3JrZXJTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gICAgaWYgKHRoaXMuanVkaWNpYWx3b3JrZXJTdWJzY3JpcHRpb24pIHtcbiAgICAgIHRoaXMuanVkaWNpYWx3b3JrZXJTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb25Db250aW51ZSgpOiB2b2lkIHtcbiAgICAvLyBHZXQgdGFzayBkZXRhaWxzXG4gICAgY29uc3QgY2xpZW50Q29udGV4dFN0ciA9IHRoaXMuc2Vzc2lvblN0b3JhZ2VTZXJ2aWNlLmdldEl0ZW0oQ2FzZUVkaXRDb21wb25lbnQuQ0xJRU5UX0NPTlRFWFQpO1xuICAgIGNvbnN0IHVzZXJUYXNrID0gRmllbGRzVXRpbHMuZ2V0VXNlclRhc2tGcm9tQ2xpZW50Q29udGV4dChjbGllbnRDb250ZXh0U3RyKTtcbiAgICBjb25zdCB0YXNrID0gdXNlclRhc2sgPyB1c2VyVGFzay50YXNrX2RhdGEgOiBudWxsO1xuICAgIC8vIG5vdCBjb21wbGV0ZV90YXNrIG5vdCB1dGlsaXNlZCBoZXJlIGFzIHJlbGF0ZWQgdG8gZXZlbnQgY29tcGxldGlvblxuICAgIC8vIHNlcnZpY2Ugd2FudGluZyB0YXNrIGFzc29jaWF0ZWQgd2l0aCBldmVudCB0byBub3QgYmUgY29tcGxldGVkIG5vdCBkaXJlY3RseSByZWxldmFudFxuICAgIGlmICh0YXNrKSB7XG4gICAgICAvLyBTZXQgc2Vzc2lvbiB0byBvdmVycmlkZSByZWFzc2lnbm1lbnQgc2V0dGluZ3Mgc28gY29kZSBmbG93IGRvZXMgbm90IHJldHVybiB0byB0aGlzIGNvbXBvbmVudFxuICAgICAgdGhpcy5zZXNzaW9uU3RvcmFnZVNlcnZpY2Uuc2V0SXRlbSgnYXNzaWduTmVlZGVkJywgJ3RydWUgLSBvdmVycmlkZScpXG4gICAgICB0aGlzLm5vdGlmeUV2ZW50Q29tcGxldGlvblJlYXNzaWduZWQuZW1pdCh0cnVlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gRW1pdCBldmVudCBjYW5ub3QgYmUgY29tcGxldGVkIGV2ZW50XG4gICAgICB0aGlzLm5vdGlmeUV2ZW50Q29tcGxldGlvblJlYXNzaWduZWQuZW1pdChmYWxzZSk7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZ292dWstIS1tYXJnaW4tOVwiICpuZ0lmPVwiYXNzaWduZWRVc2VyTmFtZVwiPlxuICA8ZGl2IGNsYXNzPVwiZ292dWstZXJyb3Itc3VtbWFyeVwiIGFyaWEtbGFiZWxsZWRieT1cImVycm9yLXN1bW1hcnktdGl0bGVcIiByb2xlPVwiYWxlcnRcIiB0YWJpbmRleD1cIi0xXCJcbiAgICBkYXRhLW1vZHVsZT1cImVycm9yLXN1bW1hcnlcIj5cbiAgICA8aDIgY2xhc3M9XCJnb3Z1ay1lcnJvci1zdW1tYXJ5X190aXRsZVwiIGlkPVwiZXJyb3Itc3VtbWFyeS10aXRsZVwiPlxuICAgICAge3snVGhlcmUgaXMgYSBwcm9ibGVtJyB8IHJweFRyYW5zbGF0ZX19XG4gICAgPC9oMj5cbiAgICA8ZGl2IGNsYXNzPVwiZ292dWstZXJyb3Itc3VtbWFyeV9fYm9keVwiPlxuICAgICAgPHVsIGNsYXNzPVwiZ292dWstbGlzdCBnb3Z1ay1lcnJvci1zdW1tYXJ5X19saXN0XCI+XG4gICAgICAgIDxsaT5cbiAgICAgICAgICA8YSBocmVmPVwiI1wiPnt7J1Rhc2sgcmVhc3NpZ25lZCcgfCBycHhUcmFuc2xhdGV9fTwvYT5cbiAgICAgICAgPC9saT5cbiAgICAgIDwvdWw+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuXG4gIDxkaXYgY2xhc3M9XCJnb3Z1ay1mb3JtLWdyb3VwIGdvdnVrLWZvcm0tZ3JvdXAtLWVycm9yXCI+XG4gICAgPGgyIGNsYXNzPVwiZ292dWstaGVhZGluZy1tXCI+e3snVGFzayByZWFzc2lnbmVkJyB8IHJweFRyYW5zbGF0ZX19PC9oMj5cbiAgICA8cD57eydUaGlzIHRhc2sgaGFzIGJlZW4gcmVhc3NpZ25lZCB0bycgfCBycHhUcmFuc2xhdGV9fSB7e2Fzc2lnbmVkVXNlck5hbWV9fS48L3A+XG4gICAgPHA+e3snQ2xpY2sgQ29udGludWUgdG8gcmVhc3NpZ24gdGhlIHRhc2sgdG8geW91IGFuZCBzYXZlIHlvdXIgcHJvZ3Jlc3MuJyB8IHJweFRyYW5zbGF0ZX19PC9wPlxuICAgIDxwPnt7J0FsdGVybmF0aXZlbHksIGNsaWNrIENhbmNlbCB0byByZXR1cm4gdG8gdGhlIHRhc2tzIHRhYiB3aXRob3V0IHNhdmluZyB5b3VyIHByb2dyZXNzLicgfCBycHhUcmFuc2xhdGV9fTwvcD5cbiAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cCBmb3JtLWdyb3VwLXJlbGF0ZWRcIj5cbiAgICAgIDxidXR0b24gY2xhc3M9XCJnb3Z1ay1idXR0b24gZ292dWstIS1tYXJnaW4tcmlnaHQtMlwiIGRhdGEtbW9kdWxlPVwiZ292dWstYnV0dG9uXCIgKGNsaWNrKT1cIm9uQ29udGludWUoKVwiPlxuICAgICAgICB7eydDb250aW51ZScgfCBycHhUcmFuc2xhdGV9fVxuICAgICAgPC9idXR0b24+XG4gICAgICA8YSBbcm91dGVyTGlua109XCJbJy8nLCAnY2FzZXMnLCAnY2FzZS1kZXRhaWxzJywganVyaXNkaWN0aW9uLCBjYXNlVHlwZSwgY2FzZUlkLCAndGFza3MnXVwiXG4gICAgICAgICAgICAgIGNsYXNzPVwiZ292dWstYnV0dG9uIGdvdnVrLWJ1dHRvbi0tc2Vjb25kYXJ5XCIgZGF0YS1tb2R1bGU9XCJnb3Z1ay1idXR0b25cIj5cbiAgICAgICAge3snQ2FuY2VsJyB8IHJweFRyYW5zbGF0ZX19XG4gICAgICA8L2E+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -23,7 +23,7 @@ function CaseHeaderComponent_div_1_Template(rf, ctx) { if (rf & 1) {
23
23
  } if (rf & 2) {
24
24
  const ctx_r0 = i0.ɵɵnextContext();
25
25
  i0.ɵɵadvance();
26
- i0.ɵɵproperty("caseField", ctx_r0.caseTitle)("caseFields", ctx_r0.caseFields);
26
+ i0.ɵɵproperty("caseField", ctx_r0.caseTitle)("labelCanBeTranslated", false)("caseFields", ctx_r0.caseFields);
27
27
  } }
28
28
  export class CaseHeaderComponent {
29
29
  caseDetails;
@@ -46,8 +46,8 @@ export class CaseHeaderComponent {
46
46
  return caseDataFields.concat(this.caseDetails.metadataFields);
47
47
  }
48
48
  static ɵfac = function CaseHeaderComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CaseHeaderComponent)(); };
49
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CaseHeaderComponent, selectors: [["ccd-case-header"]], inputs: { caseDetails: "caseDetails" }, decls: 2, vars: 2, consts: [["class", "heading-h1", 4, "ngIf"], ["class", "case-title", 4, "ngIf"], [1, "heading-h1"], [1, "case-title"], [3, "caseField", "caseFields"]], template: function CaseHeaderComponent_Template(rf, ctx) { if (rf & 1) {
50
- i0.ɵɵtemplate(0, CaseHeaderComponent_h1_0_Template, 3, 3, "h1", 0)(1, CaseHeaderComponent_div_1_Template, 2, 2, "div", 1);
49
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CaseHeaderComponent, selectors: [["ccd-case-header"]], inputs: { caseDetails: "caseDetails" }, decls: 2, vars: 2, consts: [["class", "heading-h1", 4, "ngIf"], ["class", "case-title", 4, "ngIf"], [1, "heading-h1"], [1, "case-title"], [3, "caseField", "labelCanBeTranslated", "caseFields"]], template: function CaseHeaderComponent_Template(rf, ctx) { if (rf & 1) {
50
+ i0.ɵɵtemplate(0, CaseHeaderComponent_h1_0_Template, 3, 3, "h1", 0)(1, CaseHeaderComponent_div_1_Template, 2, 3, "div", 1);
51
51
  } if (rf & 2) {
52
52
  i0.ɵɵproperty("ngIf", !ctx.caseTitle.label);
53
53
  i0.ɵɵadvance();
@@ -56,9 +56,9 @@ export class CaseHeaderComponent {
56
56
  }
57
57
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CaseHeaderComponent, [{
58
58
  type: Component,
59
- args: [{ selector: 'ccd-case-header', template: "<h1 *ngIf=\"!caseTitle.label\" class=\"heading-h1\">#{{ caseDetails.case_id | ccdCaseReference}}</h1>\n\n<div *ngIf=\"caseTitle.label\" class=\"case-title\">\n <ccd-label-field [caseField]=\"caseTitle\" [caseFields]=\"caseFields\"></ccd-label-field>\n</div>\n", styles: [".case-title{margin-top:47px;margin-bottom:10px}.heading-h1{margin-top:40px}\n"] }]
59
+ args: [{ selector: 'ccd-case-header', template: "<h1 *ngIf=\"!caseTitle.label\" class=\"heading-h1\">#{{ caseDetails.case_id | ccdCaseReference}}</h1>\n\n<div *ngIf=\"caseTitle.label\" class=\"case-title\">\n <ccd-label-field [caseField]=\"caseTitle\" [labelCanBeTranslated]=\"false\" [caseFields]=\"caseFields\"></ccd-label-field>\n</div>\n", styles: [".case-title{margin-top:47px;margin-bottom:10px}.heading-h1{margin-top:40px}\n"] }]
60
60
  }], null, { caseDetails: [{
61
61
  type: Input
62
62
  }] }); })();
63
63
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CaseHeaderComponent, { className: "CaseHeaderComponent", filePath: "lib/shared/components/case-header/case-header.component.ts", lineNumber: 12 }); })();
64
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FzZS1oZWFkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2NkLWNhc2UtdWktdG9vbGtpdC9zcmMvbGliL3NoYXJlZC9jb21wb25lbnRzL2Nhc2UtaGVhZGVyL2Nhc2UtaGVhZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NjZC1jYXNlLXVpLXRvb2xraXQvc3JjL2xpYi9zaGFyZWQvY29tcG9uZW50cy9jYXNlLWhlYWRlci9jYXNlLWhlYWRlci5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUNsRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDckUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7Ozs7SUNIakQsNkJBQWdEO0lBQUEsWUFBNEM7O0lBQUEsaUJBQUs7OztJQUFqRCxjQUE0QztJQUE1QyxnRkFBNEM7OztJQUU1Riw4QkFBZ0Q7SUFDOUMscUNBQXFGO0lBQ3ZGLGlCQUFNOzs7SUFEYSxjQUF1QjtJQUFDLEFBQXhCLDRDQUF1QixpQ0FBMEI7O0FEUXBFLE1BQU0sT0FBTyxtQkFBbUI7SUFHdkIsV0FBVyxDQUFXO0lBQ3RCLFNBQVMsQ0FBWTtJQUNyQixVQUFVLENBQWM7SUFFeEIsUUFBUTtRQUNiLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxTQUFTLEVBQUUsQ0FBQztRQUNqQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQzVELElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQztZQUM1RCxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUN6QyxDQUFDO0lBQ0gsQ0FBQztJQUVNLE9BQU87UUFDWixPQUFPLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRU8sYUFBYTtRQUNuQixNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEVBQUU7WUFDL0QsT0FBTyxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNoQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFUCxPQUFPLGNBQWMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUNoRSxDQUFDOzZHQXpCVSxtQkFBbUI7NkRBQW5CLG1CQUFtQjtZQ1RoQyxBQUZBLGtFQUFnRCx1REFFQTs7WUFGM0MsMkNBQXNCO1lBRXJCLGNBQXFCO1lBQXJCLDBDQUFxQjs7O2lGRFNkLG1CQUFtQjtjQU4vQixTQUFTOzJCQUNFLGlCQUFpQjtnQkFRcEIsV0FBVztrQkFEakIsS0FBSzs7a0ZBRkssbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDYXNlVmlldyB9IGZyb20gJy4uLy4uL2RvbWFpbi9jYXNlLXZpZXcvY2FzZS12aWV3Lm1vZGVsJztcbmltcG9ydCB7IENhc2VGaWVsZCB9IGZyb20gJy4uLy4uL2RvbWFpbi9kZWZpbml0aW9uL2Nhc2UtZmllbGQubW9kZWwnO1xuaW1wb3J0IHsgRHJhZnQgfSBmcm9tICcuLi8uLi9kb21haW4vZHJhZnQubW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjY2QtY2FzZS1oZWFkZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vY2FzZS1oZWFkZXIuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2Nhc2UtaGVhZGVyLnNjc3MnXVxufSlcblxuZXhwb3J0IGNsYXNzIENhc2VIZWFkZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBjYXNlRGV0YWlsczogQ2FzZVZpZXc7XG4gIHB1YmxpYyBjYXNlVGl0bGU6IENhc2VGaWVsZDtcbiAgcHVibGljIGNhc2VGaWVsZHM6IENhc2VGaWVsZFtdO1xuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmNhc2VUaXRsZSA9IG5ldyBDYXNlRmllbGQoKTtcbiAgICBpZiAoIXRoaXMuaXNEcmFmdCgpICYmIHRoaXMuY2FzZURldGFpbHMuc3RhdGUudGl0bGVfZGlzcGxheSkge1xuICAgICAgdGhpcy5jYXNlVGl0bGUubGFiZWwgPSB0aGlzLmNhc2VEZXRhaWxzLnN0YXRlLnRpdGxlX2Rpc3BsYXk7XG4gICAgICB0aGlzLmNhc2VGaWVsZHMgPSB0aGlzLmdldENhc2VGaWVsZHMoKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgaXNEcmFmdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gRHJhZnQuaXNEcmFmdCh0aGlzLmNhc2VEZXRhaWxzLmNhc2VfaWQpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRDYXNlRmllbGRzKCk6IENhc2VGaWVsZFtdIHtcbiAgICBjb25zdCBjYXNlRGF0YUZpZWxkcyA9IHRoaXMuY2FzZURldGFpbHMudGFicy5yZWR1Y2UoKGFjYywgdGFiKSA9PiB7XG4gICAgICByZXR1cm4gYWNjLmNvbmNhdCh0YWIuZmllbGRzKTtcbiAgICB9LCBbXSk7XG5cbiAgICByZXR1cm4gY2FzZURhdGFGaWVsZHMuY29uY2F0KHRoaXMuY2FzZURldGFpbHMubWV0YWRhdGFGaWVsZHMpO1xuICB9XG59XG4iLCI8aDEgKm5nSWY9XCIhY2FzZVRpdGxlLmxhYmVsXCIgY2xhc3M9XCJoZWFkaW5nLWgxXCI+I3t7IGNhc2VEZXRhaWxzLmNhc2VfaWQgfCBjY2RDYXNlUmVmZXJlbmNlfX08L2gxPlxuXG48ZGl2ICpuZ0lmPVwiY2FzZVRpdGxlLmxhYmVsXCIgY2xhc3M9XCJjYXNlLXRpdGxlXCI+XG4gIDxjY2QtbGFiZWwtZmllbGQgW2Nhc2VGaWVsZF09XCJjYXNlVGl0bGVcIiBbY2FzZUZpZWxkc109XCJjYXNlRmllbGRzXCI+PC9jY2QtbGFiZWwtZmllbGQ+XG48L2Rpdj5cbiJdfQ==
64
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FzZS1oZWFkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2NkLWNhc2UtdWktdG9vbGtpdC9zcmMvbGliL3NoYXJlZC9jb21wb25lbnRzL2Nhc2UtaGVhZGVyL2Nhc2UtaGVhZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NjZC1jYXNlLXVpLXRvb2xraXQvc3JjL2xpYi9zaGFyZWQvY29tcG9uZW50cy9jYXNlLWhlYWRlci9jYXNlLWhlYWRlci5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUNsRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDckUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7Ozs7SUNIakQsNkJBQWdEO0lBQUEsWUFBNEM7O0lBQUEsaUJBQUs7OztJQUFqRCxjQUE0QztJQUE1QyxnRkFBNEM7OztJQUU1Riw4QkFBZ0Q7SUFDOUMscUNBQW9IO0lBQ3RILGlCQUFNOzs7SUFEYSxjQUF1QjtJQUFnQyxBQUEvQixBQUF4Qiw0Q0FBdUIsK0JBQStCLGlDQUEwQjs7QURRbkcsTUFBTSxPQUFPLG1CQUFtQjtJQUd2QixXQUFXLENBQVc7SUFDdEIsU0FBUyxDQUFZO0lBQ3JCLFVBQVUsQ0FBYztJQUV4QixRQUFRO1FBQ2IsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLFNBQVMsRUFBRSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDNUQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDO1lBQzVELElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3pDLENBQUM7SUFDSCxDQUFDO0lBRU0sT0FBTztRQUNaLE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFFTyxhQUFhO1FBQ25CLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsRUFBRTtZQUMvRCxPQUFPLEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ2hDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVQLE9BQU8sY0FBYyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ2hFLENBQUM7NkdBekJVLG1CQUFtQjs2REFBbkIsbUJBQW1CO1lDVGhDLEFBRkEsa0VBQWdELHVEQUVBOztZQUYzQywyQ0FBc0I7WUFFckIsY0FBcUI7WUFBckIsMENBQXFCOzs7aUZEU2QsbUJBQW1CO2NBTi9CLFNBQVM7MkJBQ0UsaUJBQWlCO2dCQVFwQixXQUFXO2tCQURqQixLQUFLOztrRkFGSyxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENhc2VWaWV3IH0gZnJvbSAnLi4vLi4vZG9tYWluL2Nhc2Utdmlldy9jYXNlLXZpZXcubW9kZWwnO1xuaW1wb3J0IHsgQ2FzZUZpZWxkIH0gZnJvbSAnLi4vLi4vZG9tYWluL2RlZmluaXRpb24vY2FzZS1maWVsZC5tb2RlbCc7XG5pbXBvcnQgeyBEcmFmdCB9IGZyb20gJy4uLy4uL2RvbWFpbi9kcmFmdC5tb2RlbCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2NjZC1jYXNlLWhlYWRlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9jYXNlLWhlYWRlci5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY2FzZS1oZWFkZXIuc2NzcyddXG59KVxuXG5leHBvcnQgY2xhc3MgQ2FzZUhlYWRlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGNhc2VEZXRhaWxzOiBDYXNlVmlldztcbiAgcHVibGljIGNhc2VUaXRsZTogQ2FzZUZpZWxkO1xuICBwdWJsaWMgY2FzZUZpZWxkczogQ2FzZUZpZWxkW107XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY2FzZVRpdGxlID0gbmV3IENhc2VGaWVsZCgpO1xuICAgIGlmICghdGhpcy5pc0RyYWZ0KCkgJiYgdGhpcy5jYXNlRGV0YWlscy5zdGF0ZS50aXRsZV9kaXNwbGF5KSB7XG4gICAgICB0aGlzLmNhc2VUaXRsZS5sYWJlbCA9IHRoaXMuY2FzZURldGFpbHMuc3RhdGUudGl0bGVfZGlzcGxheTtcbiAgICAgIHRoaXMuY2FzZUZpZWxkcyA9IHRoaXMuZ2V0Q2FzZUZpZWxkcygpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBpc0RyYWZ0KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBEcmFmdC5pc0RyYWZ0KHRoaXMuY2FzZURldGFpbHMuY2FzZV9pZCk7XG4gIH1cblxuICBwcml2YXRlIGdldENhc2VGaWVsZHMoKTogQ2FzZUZpZWxkW10ge1xuICAgIGNvbnN0IGNhc2VEYXRhRmllbGRzID0gdGhpcy5jYXNlRGV0YWlscy50YWJzLnJlZHVjZSgoYWNjLCB0YWIpID0+IHtcbiAgICAgIHJldHVybiBhY2MuY29uY2F0KHRhYi5maWVsZHMpO1xuICAgIH0sIFtdKTtcblxuICAgIHJldHVybiBjYXNlRGF0YUZpZWxkcy5jb25jYXQodGhpcy5jYXNlRGV0YWlscy5tZXRhZGF0YUZpZWxkcyk7XG4gIH1cbn1cbiIsIjxoMSAqbmdJZj1cIiFjYXNlVGl0bGUubGFiZWxcIiBjbGFzcz1cImhlYWRpbmctaDFcIj4je3sgY2FzZURldGFpbHMuY2FzZV9pZCB8IGNjZENhc2VSZWZlcmVuY2V9fTwvaDE+XG5cbjxkaXYgKm5nSWY9XCJjYXNlVGl0bGUubGFiZWxcIiBjbGFzcz1cImNhc2UtdGl0bGVcIj5cbiAgPGNjZC1sYWJlbC1maWVsZCBbY2FzZUZpZWxkXT1cImNhc2VUaXRsZVwiIFtsYWJlbENhbkJlVHJhbnNsYXRlZF09XCJmYWxzZVwiIFtjYXNlRmllbGRzXT1cImNhc2VGaWVsZHNcIj48L2NjZC1sYWJlbC1maWVsZD5cbjwvZGl2PlxuIl19
@@ -3,17 +3,22 @@ import { ActivatedRoute } from '@angular/router';
3
3
  import * as i0 from "@angular/core";
4
4
  import * as i1 from "@angular/router";
5
5
  import * as i2 from "rpx-xui-translation";
6
+ const _c0 = (a0, a1, a2) => ["/", "cases", "case-details", a0, a1, a2];
6
7
  export class CaseChallengedAccessSuccessComponent {
7
8
  route;
8
9
  caseId;
10
+ jurisdiction;
11
+ caseType;
9
12
  constructor(route) {
10
13
  this.route = route;
11
14
  }
12
15
  ngOnInit() {
13
16
  this.caseId = this.route.snapshot.params.cid;
17
+ this.jurisdiction = this.route.snapshot.params.jurisdiction;
18
+ this.caseType = this.route.snapshot.params.caseType;
14
19
  }
15
20
  static ɵfac = function CaseChallengedAccessSuccessComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CaseChallengedAccessSuccessComponent)(i0.ɵɵdirectiveInject(i1.ActivatedRoute)); };
16
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CaseChallengedAccessSuccessComponent, selectors: [["ccd-case-challenged-access-success"]], decls: 31, vars: 23, consts: [[1, "govuk-width-container"], [1, "govuk-grid-row"], [1, "govuk-grid-column-two-thirds"], [1, "govuk-panel", "govuk-panel--confirmation"], [1, "govuk-panel__title"], [1, "govuk-panel__body"], [1, "govuk-heading-m"], [1, "govuk-body"], [3, "routerLink"]], template: function CaseChallengedAccessSuccessComponent_Template(rf, ctx) { if (rf & 1) {
21
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CaseChallengedAccessSuccessComponent, selectors: [["ccd-case-challenged-access-success"]], decls: 31, vars: 27, consts: [[1, "govuk-width-container"], [1, "govuk-grid-row"], [1, "govuk-grid-column-two-thirds"], [1, "govuk-panel", "govuk-panel--confirmation"], [1, "govuk-panel__title"], [1, "govuk-panel__body"], [1, "govuk-heading-m"], [1, "govuk-body"], [3, "routerLink"]], template: function CaseChallengedAccessSuccessComponent_Template(rf, ctx) { if (rf & 1) {
17
22
  i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "div", 2)(3, "div", 3)(4, "h1", 4);
18
23
  i0.ɵɵtext(5);
19
24
  i0.ɵɵpipe(6, "rpxTranslate");
@@ -62,14 +67,14 @@ export class CaseChallengedAccessSuccessComponent {
62
67
  i0.ɵɵadvance(3);
63
68
  i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(25, 19, "Your request will be logged for auditing purposes."), " ");
64
69
  i0.ɵɵadvance(3);
65
- i0.ɵɵproperty("routerLink", "/cases/case-details/" + ctx.caseId);
70
+ i0.ɵɵproperty("routerLink", i0.ɵɵpureFunction3(23, _c0, ctx.jurisdiction, ctx.caseType, ctx.caseId));
66
71
  i0.ɵɵadvance();
67
72
  i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(29, 21, "View case file"));
68
73
  } }, dependencies: [i1.RouterLink, i2.RpxTranslatePipe], encapsulation: 2 });
69
74
  }
70
75
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CaseChallengedAccessSuccessComponent, [{
71
76
  type: Component,
72
- args: [{ selector: 'ccd-case-challenged-access-success', template: "<div class=\"govuk-width-container\">\n <div class=\"govuk-grid-row\">\n <div class=\"govuk-grid-column-two-thirds\">\n <div class=\"govuk-panel govuk-panel--confirmation\">\n <h1 class=\"govuk-panel__title\">\n {{'Access successful' | rpxTranslate}}<br><br>\n <div class=\"govuk-panel__body\">\n {{'Case reference:' | rpxTranslate}}<br>\n {{caseId}}\n </div>\n </h1>\n </div>\n <h2 class=\"govuk-heading-m\">{{'What happens next' | rpxTranslate}}</h2>\n <p class=\"govuk-body\">\n {{'You can access this case file until midnight tonight.' | rpxTranslate}}\n </p>\n <p class=\"govuk-body\">\n {{\"You'll need to request access again once this expires.\" | rpxTranslate}}\n </p>\n <p class=\"govuk-body\">\n {{\"Your request will be logged for auditing purposes.\" | rpxTranslate}}\n </p>\n <p class=\"govuk-body\"><a [routerLink]=\"'/cases/case-details/' + caseId\">{{\"View case file\" | rpxTranslate}}</a>.</p>\n </div>\n </div>\n</div>\n" }]
77
+ args: [{ selector: 'ccd-case-challenged-access-success', template: "<div class=\"govuk-width-container\">\n <div class=\"govuk-grid-row\">\n <div class=\"govuk-grid-column-two-thirds\">\n <div class=\"govuk-panel govuk-panel--confirmation\">\n <h1 class=\"govuk-panel__title\">\n {{'Access successful' | rpxTranslate}}<br><br>\n <div class=\"govuk-panel__body\">\n {{'Case reference:' | rpxTranslate}}<br>\n {{caseId}}\n </div>\n </h1>\n </div>\n <h2 class=\"govuk-heading-m\">{{'What happens next' | rpxTranslate}}</h2>\n <p class=\"govuk-body\">\n {{'You can access this case file until midnight tonight.' | rpxTranslate}}\n </p>\n <p class=\"govuk-body\">\n {{\"You'll need to request access again once this expires.\" | rpxTranslate}}\n </p>\n <p class=\"govuk-body\">\n {{\"Your request will be logged for auditing purposes.\" | rpxTranslate}}\n </p>\n <p class=\"govuk-body\"><a [routerLink]=\"['/', 'cases', 'case-details', jurisdiction, caseType, caseId]\">{{\"View case file\" | rpxTranslate}}</a>.</p>\n </div>\n </div>\n</div>\n" }]
73
78
  }], () => [{ type: i1.ActivatedRoute }], null); })();
74
79
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CaseChallengedAccessSuccessComponent, { className: "CaseChallengedAccessSuccessComponent", filePath: "lib/shared/components/case-viewer/case-challenged-access-success/case-challenged-access-success.component.ts", lineNumber: 8 }); })();
75
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FzZS1jaGFsbGVuZ2VkLWFjY2Vzcy1zdWNjZXNzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NjZC1jYXNlLXVpLXRvb2xraXQvc3JjL2xpYi9zaGFyZWQvY29tcG9uZW50cy9jYXNlLXZpZXdlci9jYXNlLWNoYWxsZW5nZWQtYWNjZXNzLXN1Y2Nlc3MvY2FzZS1jaGFsbGVuZ2VkLWFjY2Vzcy1zdWNjZXNzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NjZC1jYXNlLXVpLXRvb2xraXQvc3JjL2xpYi9zaGFyZWQvY29tcG9uZW50cy9jYXNlLXZpZXdlci9jYXNlLWNoYWxsZW5nZWQtYWNjZXNzLXN1Y2Nlc3MvY2FzZS1jaGFsbGVuZ2VkLWFjY2Vzcy1zdWNjZXNzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7O0FBTWpELE1BQU0sT0FBTyxvQ0FBb0M7SUFHbEI7SUFGdEIsTUFBTSxDQUFTO0lBRXRCLFlBQTZCLEtBQXFCO1FBQXJCLFVBQUssR0FBTCxLQUFLLENBQWdCO0lBQUksQ0FBQztJQUVoRCxRQUFRO1FBQ2IsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDO0lBQy9DLENBQUM7OEhBUFUsb0NBQW9DOzZEQUFwQyxvQ0FBb0M7WUNIekMsQUFERixBQURGLEFBREYsQUFERiw4QkFBbUMsYUFDTCxhQUNnQixhQUNXLFlBQ2xCO1lBQzdCLFlBQXNDOztZQUFJLEFBQUoscUJBQUksU0FBSTtZQUM5Qyw4QkFBK0I7WUFDN0IsYUFBb0M7O1lBQUEsc0JBQUk7WUFDeEMsYUFDRjtZQUVKLEFBREUsQUFERSxpQkFBTSxFQUNILEVBQ0Q7WUFDTiw4QkFBNEI7WUFBQSxhQUFzQzs7WUFBQSxpQkFBSztZQUN2RSw2QkFBc0I7WUFDcEIsYUFDRjs7WUFBQSxpQkFBSTtZQUNKLDZCQUFzQjtZQUNwQixhQUNGOztZQUFBLGlCQUFJO1lBQ0osNkJBQXNCO1lBQ3BCLGFBQ0Y7O1lBQUEsaUJBQUk7WUFDa0IsQUFBdEIsNkJBQXNCLFlBQWtEO1lBQUEsYUFBbUM7O1lBQUEsaUJBQUk7WUFBQSxrQkFBQztZQUd0SCxBQURFLEFBREUsQUFEa0gsaUJBQUksRUFDaEgsRUFDRixFQUNGOztZQXBCSSxlQUFzQztZQUF0Qyx5RUFBc0M7WUFFcEMsZUFBb0M7WUFBcEMseUVBQW9DO1lBQ3BDLGVBQ0Y7WUFERSwyQ0FDRjtZQUd3QixlQUFzQztZQUF0QyxpRUFBc0M7WUFFaEUsZUFDRjtZQURFLGdIQUNGO1lBRUUsZUFDRjtZQURFLGlIQUNGO1lBRUUsZUFDRjtZQURFLDZHQUNGO1lBQ3lCLGVBQThDO1lBQTlDLGdFQUE4QztZQUFDLGNBQW1DO1lBQW5DLDhEQUFtQzs7O2lGRGZwRyxvQ0FBb0M7Y0FKaEQsU0FBUzsyQkFDRSxvQ0FBb0M7O2tGQUduQyxvQ0FBb0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjY2QtY2FzZS1jaGFsbGVuZ2VkLWFjY2Vzcy1zdWNjZXNzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Nhc2UtY2hhbGxlbmdlZC1hY2Nlc3Mtc3VjY2Vzcy5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgQ2FzZUNoYWxsZW5nZWRBY2Nlc3NTdWNjZXNzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgcHVibGljIGNhc2VJZDogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgcm91dGU6IEFjdGl2YXRlZFJvdXRlKSB7IH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5jYXNlSWQgPSB0aGlzLnJvdXRlLnNuYXBzaG90LnBhcmFtcy5jaWQ7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJnb3Z1ay13aWR0aC1jb250YWluZXJcIj5cbiAgPGRpdiBjbGFzcz1cImdvdnVrLWdyaWQtcm93XCI+XG4gICAgPGRpdiBjbGFzcz1cImdvdnVrLWdyaWQtY29sdW1uLXR3by10aGlyZHNcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJnb3Z1ay1wYW5lbCBnb3Z1ay1wYW5lbC0tY29uZmlybWF0aW9uXCI+XG4gICAgICAgIDxoMSBjbGFzcz1cImdvdnVrLXBhbmVsX190aXRsZVwiPlxuICAgICAgICAgIHt7J0FjY2VzcyBzdWNjZXNzZnVsJyB8IHJweFRyYW5zbGF0ZX19PGJyPjxicj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZ292dWstcGFuZWxfX2JvZHlcIj5cbiAgICAgICAgICAgIHt7J0Nhc2UgcmVmZXJlbmNlOicgfCBycHhUcmFuc2xhdGV9fTxicj5cbiAgICAgICAgICAgIHt7Y2FzZUlkfX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9oMT5cbiAgICAgIDwvZGl2PlxuICAgICAgPGgyIGNsYXNzPVwiZ292dWstaGVhZGluZy1tXCI+e3snV2hhdCBoYXBwZW5zIG5leHQnIHwgcnB4VHJhbnNsYXRlfX08L2gyPlxuICAgICAgPHAgY2xhc3M9XCJnb3Z1ay1ib2R5XCI+XG4gICAgICAgIHt7J1lvdSBjYW4gYWNjZXNzIHRoaXMgY2FzZSBmaWxlIHVudGlsIG1pZG5pZ2h0IHRvbmlnaHQuJyB8IHJweFRyYW5zbGF0ZX19XG4gICAgICA8L3A+XG4gICAgICA8cCBjbGFzcz1cImdvdnVrLWJvZHlcIj5cbiAgICAgICAge3tcIllvdSdsbCBuZWVkIHRvIHJlcXVlc3QgYWNjZXNzIGFnYWluIG9uY2UgdGhpcyBleHBpcmVzLlwiIHwgcnB4VHJhbnNsYXRlfX1cbiAgICAgIDwvcD5cbiAgICAgIDxwIGNsYXNzPVwiZ292dWstYm9keVwiPlxuICAgICAgICB7e1wiWW91ciByZXF1ZXN0IHdpbGwgYmUgbG9nZ2VkIGZvciBhdWRpdGluZyBwdXJwb3Nlcy5cIiB8IHJweFRyYW5zbGF0ZX19XG4gICAgICA8L3A+XG4gICAgICA8cCBjbGFzcz1cImdvdnVrLWJvZHlcIj48YSBbcm91dGVyTGlua109XCInL2Nhc2VzL2Nhc2UtZGV0YWlscy8nICsgY2FzZUlkXCI+e3tcIlZpZXcgY2FzZSBmaWxlXCIgfCBycHhUcmFuc2xhdGV9fTwvYT4uPC9wPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
80
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FzZS1jaGFsbGVuZ2VkLWFjY2Vzcy1zdWNjZXNzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NjZC1jYXNlLXVpLXRvb2xraXQvc3JjL2xpYi9zaGFyZWQvY29tcG9uZW50cy9jYXNlLXZpZXdlci9jYXNlLWNoYWxsZW5nZWQtYWNjZXNzLXN1Y2Nlc3MvY2FzZS1jaGFsbGVuZ2VkLWFjY2Vzcy1zdWNjZXNzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NjZC1jYXNlLXVpLXRvb2xraXQvc3JjL2xpYi9zaGFyZWQvY29tcG9uZW50cy9jYXNlLXZpZXdlci9jYXNlLWNoYWxsZW5nZWQtYWNjZXNzLXN1Y2Nlc3MvY2FzZS1jaGFsbGVuZ2VkLWFjY2Vzcy1zdWNjZXNzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7OztBQU1qRCxNQUFNLE9BQU8sb0NBQW9DO0lBS2xCO0lBSnRCLE1BQU0sQ0FBUztJQUNmLFlBQVksQ0FBUztJQUNyQixRQUFRLENBQVM7SUFFeEIsWUFBNkIsS0FBcUI7UUFBckIsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7SUFBSSxDQUFDO0lBRWhELFFBQVE7UUFDYixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUM7UUFDN0MsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDO1FBQzVELElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQztJQUN0RCxDQUFDOzhIQVhVLG9DQUFvQzs2REFBcEMsb0NBQW9DO1lDSHpDLEFBREYsQUFERixBQURGLEFBREYsOEJBQW1DLGFBQ0wsYUFDZ0IsYUFDVyxZQUNsQjtZQUM3QixZQUFzQzs7WUFBSSxBQUFKLHFCQUFJLFNBQUk7WUFDOUMsOEJBQStCO1lBQzdCLGFBQW9DOztZQUFBLHNCQUFJO1lBQ3hDLGFBQ0Y7WUFFSixBQURFLEFBREUsaUJBQU0sRUFDSCxFQUNEO1lBQ04sOEJBQTRCO1lBQUEsYUFBc0M7O1lBQUEsaUJBQUs7WUFDdkUsNkJBQXNCO1lBQ3BCLGFBQ0Y7O1lBQUEsaUJBQUk7WUFDSiw2QkFBc0I7WUFDcEIsYUFDRjs7WUFBQSxpQkFBSTtZQUNKLDZCQUFzQjtZQUNwQixhQUNGOztZQUFBLGlCQUFJO1lBQ2tCLEFBQXRCLDZCQUFzQixZQUFpRjtZQUFBLGFBQW1DOztZQUFBLGlCQUFJO1lBQUEsa0JBQUM7WUFHckosQUFERSxBQURFLEFBRGlKLGlCQUFJLEVBQy9JLEVBQ0YsRUFDRjs7WUFwQkksZUFBc0M7WUFBdEMseUVBQXNDO1lBRXBDLGVBQW9DO1lBQXBDLHlFQUFvQztZQUNwQyxlQUNGO1lBREUsMkNBQ0Y7WUFHd0IsZUFBc0M7WUFBdEMsaUVBQXNDO1lBRWhFLGVBQ0Y7WUFERSxnSEFDRjtZQUVFLGVBQ0Y7WUFERSxpSEFDRjtZQUVFLGVBQ0Y7WUFERSw2R0FDRjtZQUN5QixlQUE2RTtZQUE3RSxvR0FBNkU7WUFBQyxjQUFtQztZQUFuQyw4REFBbUM7OztpRkRmbkksb0NBQW9DO2NBSmhELFNBQVM7MkJBQ0Usb0NBQW9DOztrRkFHbkMsb0NBQW9DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY2NkLWNhc2UtY2hhbGxlbmdlZC1hY2Nlc3Mtc3VjY2VzcycsXG4gIHRlbXBsYXRlVXJsOiAnLi9jYXNlLWNoYWxsZW5nZWQtYWNjZXNzLXN1Y2Nlc3MuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIENhc2VDaGFsbGVuZ2VkQWNjZXNzU3VjY2Vzc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHB1YmxpYyBjYXNlSWQ6IHN0cmluZztcbiAgcHVibGljIGp1cmlzZGljdGlvbjogc3RyaW5nO1xuICBwdWJsaWMgY2FzZVR5cGU6IHN0cmluZztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSkgeyB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY2FzZUlkID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5wYXJhbXMuY2lkO1xuICAgIHRoaXMuanVyaXNkaWN0aW9uID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5wYXJhbXMuanVyaXNkaWN0aW9uO1xuICAgIHRoaXMuY2FzZVR5cGUgPSB0aGlzLnJvdXRlLnNuYXBzaG90LnBhcmFtcy5jYXNlVHlwZTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImdvdnVrLXdpZHRoLWNvbnRhaW5lclwiPlxuICA8ZGl2IGNsYXNzPVwiZ292dWstZ3JpZC1yb3dcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZ292dWstZ3JpZC1jb2x1bW4tdHdvLXRoaXJkc1wiPlxuICAgICAgPGRpdiBjbGFzcz1cImdvdnVrLXBhbmVsIGdvdnVrLXBhbmVsLS1jb25maXJtYXRpb25cIj5cbiAgICAgICAgPGgxIGNsYXNzPVwiZ292dWstcGFuZWxfX3RpdGxlXCI+XG4gICAgICAgICAge3snQWNjZXNzIHN1Y2Nlc3NmdWwnIHwgcnB4VHJhbnNsYXRlfX08YnI+PGJyPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJnb3Z1ay1wYW5lbF9fYm9keVwiPlxuICAgICAgICAgICAge3snQ2FzZSByZWZlcmVuY2U6JyB8IHJweFRyYW5zbGF0ZX19PGJyPlxuICAgICAgICAgICAge3tjYXNlSWR9fVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2gxPlxuICAgICAgPC9kaXY+XG4gICAgICA8aDIgY2xhc3M9XCJnb3Z1ay1oZWFkaW5nLW1cIj57eydXaGF0IGhhcHBlbnMgbmV4dCcgfCBycHhUcmFuc2xhdGV9fTwvaDI+XG4gICAgICA8cCBjbGFzcz1cImdvdnVrLWJvZHlcIj5cbiAgICAgICAge3snWW91IGNhbiBhY2Nlc3MgdGhpcyBjYXNlIGZpbGUgdW50aWwgbWlkbmlnaHQgdG9uaWdodC4nIHwgcnB4VHJhbnNsYXRlfX1cbiAgICAgIDwvcD5cbiAgICAgIDxwIGNsYXNzPVwiZ292dWstYm9keVwiPlxuICAgICAgICB7e1wiWW91J2xsIG5lZWQgdG8gcmVxdWVzdCBhY2Nlc3MgYWdhaW4gb25jZSB0aGlzIGV4cGlyZXMuXCIgfCBycHhUcmFuc2xhdGV9fVxuICAgICAgPC9wPlxuICAgICAgPHAgY2xhc3M9XCJnb3Z1ay1ib2R5XCI+XG4gICAgICAgIHt7XCJZb3VyIHJlcXVlc3Qgd2lsbCBiZSBsb2dnZWQgZm9yIGF1ZGl0aW5nIHB1cnBvc2VzLlwiIHwgcnB4VHJhbnNsYXRlfX1cbiAgICAgIDwvcD5cbiAgICAgIDxwIGNsYXNzPVwiZ292dWstYm9keVwiPjxhIFtyb3V0ZXJMaW5rXT1cIlsnLycsICdjYXNlcycsICdjYXNlLWRldGFpbHMnLCBqdXJpc2RpY3Rpb24sIGNhc2VUeXBlLCBjYXNlSWRdXCI+e3tcIlZpZXcgY2FzZSBmaWxlXCIgfCBycHhUcmFuc2xhdGV9fTwvYT4uPC9wPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -142,9 +142,21 @@ export class CaseEventTriggerComponent {
142
142
  }
143
143
  });
144
144
  }
145
+ // replace the old link with the new one with jurisdiction and case type id
146
+ getNavigationUrl(url) {
147
+ const urlRegex = /\/case-details\/(\d+)/;
148
+ const match = url.match(urlRegex);
149
+ if (match && /^\d+$/.test(match[1]) && this.caseDetails?.case_type) {
150
+ const jurisdiction = this.caseDetails.case_type.jurisdiction.id;
151
+ const id = this.caseDetails.case_type.id;
152
+ return url.replace(urlRegex, `/case-details/${jurisdiction}/${id}/${match[1]}`);
153
+ }
154
+ return url;
155
+ }
145
156
  cancel() {
146
- const previousUrl = this.routerCurrentNavigation?.previousNavigation?.finalUrl?.toString();
157
+ let previousUrl = this.routerCurrentNavigation?.previousNavigation?.finalUrl?.toString();
147
158
  if (previousUrl) {
159
+ previousUrl = this.getNavigationUrl(previousUrl);
148
160
  if (previousUrl.indexOf('#') > -1) {
149
161
  const url = previousUrl.split('#')[0];
150
162
  const fragment = previousUrl.split('#')[1].replace(/%20/g, ' ');
@@ -155,7 +167,8 @@ export class CaseEventTriggerComponent {
155
167
  }
156
168
  }
157
169
  else {
158
- return this.router.navigate([this.parentUrl]);
170
+ const updatedUrl = this.getNavigationUrl(this.parentUrl);
171
+ return this.router.navigate([updatedUrl]);
159
172
  }
160
173
  }
161
174
  isDataLoaded() {
@@ -173,4 +186,4 @@ export class CaseEventTriggerComponent {
173
186
  args: [{ selector: 'ccd-case-event-trigger', template: "<div *ngIf=\"isDataLoaded()\" class=\"screen-990\">\n <ccd-activity [caseId]=\"caseDetails.case_id\" [displayMode]=\"BANNER\"></ccd-activity>\n <ccd-case-edit [caseDetails]=\"caseDetails\"\n [submit]=\"submit()\"\n [validate]=\"validate()\"\n [eventTrigger]=\"eventTrigger\"\n (cancelled)=\"cancel()\"\n (submitted)=\"submitted($event)\"></ccd-case-edit>\n</div>\n" }]
174
187
  }], () => [{ type: i0.NgZone }, { type: i1.CasesService }, { type: i1.CaseNotifier }, { type: i2.Router }, { type: i3.AlertService }, { type: i2.ActivatedRoute }, { type: i4.CaseReferencePipe }, { type: i3.ActivityPollingService }, { type: i3.SessionStorageService }, { type: i3.LoadingService }, { type: i5.EventTriggerResolver }], null); })();
175
188
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CaseEventTriggerComponent, { className: "CaseEventTriggerComponent", filePath: "lib/shared/components/case-viewer/case-event-trigger/case-event-trigger.component.ts", lineNumber: 15 }); })();
176
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FzZS1ldmVudC10cmlnZ2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NjZC1jYXNlLXVpLXRvb2xraXQvc3JjL2xpYi9zaGFyZWQvY29tcG9uZW50cy9jYXNlLXZpZXdlci9jYXNlLWV2ZW50LXRyaWdnZXIvY2FzZS1ldmVudC10cmlnZ2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NjZC1jYXNlLXVpLXRvb2xraXQvc3JjL2xpYi9zaGFyZWQvY29tcG9uZW50cy9jYXNlLXZpZXdlci9jYXNlLWV2ZW50LXRyaWdnZXIvY2FzZS1ldmVudC10cmlnZ2VyLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxjQUFjLEVBQWMsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDckUsT0FBTyxFQUE0QixFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDcEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3ZELE9BQU8sRUFBdUQsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbkcsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLFlBQVksRUFBRSxrQkFBa0IsRUFBRSxXQUFXLEVBQUUsY0FBYyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakosT0FBTyxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxhQUFhLENBQUM7Ozs7Ozs7OztJQ1JuRCw4QkFBK0M7SUFDN0Msa0NBQW1GO0lBQ25GLHdD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LENBQUM7UUFDSCxDQUFDO2FBQU0sQ0FBQztZQUNOLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztRQUNoRCxDQUFDO0lBQ0gsQ0FBQztJQUVNLFlBQVk7UUFDakIsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNuRCxDQUFDO21IQWhJVSx5QkFBeUI7NkRBQXpCLHlCQUF5QjtZQ2R0QywwRUFBK0M7O1lBQXpDLHlDQUFvQjs7O2lGRGNiLHlCQUF5QjtjQUpyQyxTQUFTOzJCQUNFLHdCQUF3Qjs7a0ZBR3ZCLHlCQUF5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgTmdab25lLCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIE5hdmlnYXRpb24sIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb24sIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBDb25zdGFudHMgfSBmcm9tICcuLi8uLi8uLi9jb21tb25zL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBBY3Rpdml0eSwgQ2FzZUV2ZW50RGF0YSwgQ2FzZUV2ZW50VHJpZ2dlciwgQ2FzZVZpZXcsIERpc3BsYXlNb2RlIH0gZnJvbSAnLi4vLi4vLi4vZG9tYWluJztcbmltcG9ydCB7IENhc2VSZWZlcmVuY2VQaXBlIH0gZnJvbSAnLi4vLi4vLi4vcGlwZXMnO1xuaW1wb3J0IHsgQWN0aXZpdHlQb2xsaW5nU2VydmljZSwgQWxlcnRTZXJ2aWNlLCBFdmVudFN0YXR1c1NlcnZpY2UsIEZpZWxkc1V0aWxzLCBMb2FkaW5nU2VydmljZSwgU2Vzc2lvblN0b3JhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMnO1xuaW1wb3J0IHsgQ2FzZU5vdGlmaWVyLCBDYXNlc1NlcnZpY2UgfSBmcm9tICcuLi8uLi9jYXNlLWVkaXRvcic7XG5pbXBvcnQgeyBFdmVudFRyaWdnZXJSZXNvbHZlciB9IGZyb20gJy4uL3NlcnZpY2VzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY2NkLWNhc2UtZXZlbnQtdHJpZ2dlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9jYXNlLWV2ZW50LXRyaWdnZXIuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgQ2FzZUV2ZW50VHJpZ2dlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBFVkVOVF9DT01QTEVUSU9OX01FU1NBR0UgPSBgQ2FzZSAjJUNBU0VSRUZFUkVOQ0UlIGhhcyBiZWVuIHVwZGF0ZWQgd2l0aCBldmVudDogJU5BTUUlYDtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBDQUxMQkFDS19GQUlMRURfTUVTU0FHRSA9ICcgYnV0IHRoZSBjYWxsYmFjayBzZXJ2aWNlIGNhbm5vdCBiZSBjb21wbGV0ZWQnO1xuXG4gIHB1YmxpYyBCQU5ORVIgPSBEaXNwbGF5TW9kZS5CQU5ORVI7XG4gIHB1YmxpYyBldmVudFRyaWdnZXI6IENhc2VFdmVudFRyaWdnZXI7XG4gIHB1YmxpYyBjYXNlRGV0YWlsczogQ2FzZVZpZXc7XG4gIHB1YmxpYyBhY3Rpdml0eVN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICBwdWJsaWMgY2FzZVN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICBwdWJsaWMgcGFyZW50VXJsOiBzdHJpbmc7XG4gIHB1YmxpYyByb3V0ZXJDdXJyZW50TmF2aWdhdGlvbjogTmF2aWdhdGlvbjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IG5nWm9uZTogTmdab25lLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgY2FzZXNTZXJ2aWNlOiBDYXNlc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBjYXNlTm90aWZpZXI6IENhc2VOb3RpZmllcixcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJvdXRlcjogUm91dGVyLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgYWxlcnRTZXJ2aWNlOiBBbGVydFNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgcHJpdmF0ZSByZWFkb25seSBjYXNlUmVmZXJlbmNlUGlwZTogQ2FzZVJlZmVyZW5jZVBpcGUsXG4gICAgcHJpdmF0ZSByZWFkb25seSBhY3Rpdml0eVBvbGxpbmdTZXJ2aWNlOiBBY3Rpdml0eVBvbGxpbmdTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgc2Vzc2lvblN0b3JhZ2VTZXJ2aWNlOiBTZXNzaW9uU3RvcmFnZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBsb2FkaW5nU2VydmljZTogTG9hZGluZ1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBldmVudFRyaWdnZXJSZXNvbHZlcjogRXZlbnRUcmlnZ2VyUmVzb2x2ZXJcbiAgKSB7XG4gICAgdGhpcy5yb3V0ZXJDdXJyZW50TmF2aWdhdGlvbiA9IHRoaXMucm91dGVyLmdldEN1cnJlbnROYXZpZ2F0aW9uKCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubG9hZGluZ1NlcnZpY2UuaGFzU2hhcmVkU3Bpbm5lcigpKXtcbiAgICAgIHRoaXMubG9hZGluZ1NlcnZpY2UudW5yZWdpc3RlclNoYXJlZFNwaW5uZXIoKTtcbiAgICB9XG4gICAgaWYgKHRoaXMucm91dGUuc25hcHNob3QuZGF0YS5jYXNlKSB7XG4gICAgICB0aGlzLmNhc2VEZXRhaWxzID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5kYXRhLmNhc2U7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY2FzZVN1YnNjcmlwdGlvbiA9IHRoaXMuY2FzZU5vdGlmaWVyLmNhc2VWaWV3LnN1YnNjcmliZShjYXNlRGV0YWlscyA9PiB7XG4gICAgICAgIHRoaXMuY2FzZURldGFpbHMgPSBjYXNlRGV0YWlscztcbiAgICAgIH0pO1xuICAgIH1cbiAgICB0aGlzLmV2ZW50VHJpZ2dlciA9IHRoaXMucm91dGUuc25hcHNob3QuZGF0YS5ldmVudFRyaWdnZXI7XG4gICAgaWYgKHRoaXMuYWN0aXZpdHlQb2xsaW5nU2VydmljZS5pc0VuYWJsZWQpIHtcbiAgICAgIHRoaXMubmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCAoKSA9PiB7XG4gICAgICAgIHRoaXMuYWN0aXZpdHlTdWJzY3JpcHRpb24gPSB0aGlzLnBvc3RFZGl0QWN0aXZpdHkoKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgIC8vIGNvbnNvbGUubG9nKCdQb3N0ZWQgRURJVCBhY3Rpdml0eSBhbmQgcmVzdWx0IGlzOiAnICsgSlNPTi5zdHJpbmdpZnkoX3Jlc29sdmVkKSk7XG4gICAgICAgIH0pO1xuICAgICAgfSk7XG4gICAgfVxuICAgIHRoaXMucm91dGUucGFyZW50LnVybC5zdWJzY3JpYmUocGF0aCA9PiB7XG4gICAgICB0aGlzLnBhcmVudFVybCA9IGAvJHtwYXRoLmpvaW4oJy8nKX1gO1xuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmFjdGl2aXR5U3Vic2NyaXB0aW9uICYmIHRoaXMuYWN0aXZpdHlQb2xsaW5nU2VydmljZS5pc0VuYWJsZWQpIHtcbiAgICAgIHRoaXMuYWN0aXZpdHlTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gICAgaWYgKCF0aGlzLnJvdXRlLnNuYXBzaG90LmRhdGEuY2FzZSAmJiB0aGlzLmNhc2VTdWJzY3JpcHRpb24pIHtcbiAgICAgIHRoaXMuY2FzZVN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgIH1cbiAgICB0aGlzLmV2ZW50VHJpZ2dlclJlc29sdmVyLnJlc2V0Q2FjaGVkRXZlbnRUcmlnZ2VyKCk7XG4gIH1cblxuICBwdWJsaWMgcG9zdEVkaXRBY3Rpdml0eSgpOiBPYnNlcnZhYmxlPEFjdGl2aXR5W10+IHtcbiAgICByZXR1cm4gdGhpcy5hY3Rpdml0eVBvbGxpbmdTZXJ2aWNlLnBvc3RFZGl0QWN0aXZpdHkodGhpcy5jYXNlRGV0YWlscy5jYXNlX2lkKTtcbiAgfVxuXG4gIHB1YmxpYyBzdWJtaXQoKTogKHNhbml0aXplZEVkaXRGb3JtOiBDYXNlRXZlbnREYXRhKSA9PiBPYnNlcnZhYmxlPG9iamVjdD4ge1xuICAgIHJldHVybiAoc2FuaXRpemVkRWRpdEZvcm06IENhc2VFdmVudERhdGEpID0+XG4gICAgICB0aGlzLmNhc2VzU2VydmljZS5jcmVhdGVFdmVudCh0aGlzLmNhc2VEZXRhaWxzLCBzYW5pdGl6ZWRFZGl0Rm9ybSk7XG4gIH1cblxuICBwdWJsaWMgdmFsaWRhdGUoKTogKHNhbml0aXplZEVkaXRGb3JtOiBDYXNlRXZlbnREYXRhLCBwYWdlSWQ6IHN0cmluZykgPT4gT2JzZXJ2YWJsZTxvYmplY3Q+IHtcbiAgICByZXR1cm4gKHNhbml0aXplZEVkaXRGb3JtOiBDYXNlRXZlbnREYXRhLCBwYWdlSWQ6IHN0cmluZykgPT4ge1xuICAgICAgLy8gQnlwYXNzIHZhbGlkYXRpb24gaWYgdGhlIGV2ZW50VHJpZ2dlciBjYXNlIGZpZWxkcyBjb250YWluIGEgRmxhZ0xhdW5jaGVyIGZpZWxkOyB0aGlzIGZpZWxkIHR5cGUgY2Fubm90IGJlXG4gICAgICAvLyB2YWxpZGF0ZWQsIHVubGlrZSByZWd1bGFyIGZpZWxkc1xuICAgICAgcmV0dXJuIHRoaXMuZXZlbnRUcmlnZ2VyPy5jYXNlX2ZpZWxkcz8uc29tZSgoY2FzZUZpZWxkKSA9PiBGaWVsZHNVdGlscy5pc0Nhc2VGaWVsZE9mVHlwZShjYXNlRmllbGQsIFsnRmxhZ0xhdW5jaGVyJ10pKVxuICAgICAgICA/IG9mKG51bGwpXG4gICAgICAgIDogdGhpcy5jYXNlc1NlcnZpY2UudmFsaWRhdGVDYXNlKHRoaXMuY2FzZURldGFpbHMuY2FzZV90eXBlLmlkLCBzYW5pdGl6ZWRFZGl0Rm9ybSwgcGFnZUlkKTtcbiAgICB9O1xuICB9XG5cbiAgcHVibGljIHN1Ym1pdHRlZChldmVudDogYW55KTogdm9pZCB7XG4gICAgY29uc3QgZXZlbnRTdGF0dXM6IHN0cmluZyA9IGV2ZW50WydzdGF0dXMnXTtcbiAgICBjb25zdCB0YXNrQ29tcGxldGlvbkZhaWxlZCA9IHRoaXMuc2Vzc2lvblN0b3JhZ2VTZXJ2aWNlLmdldEl0ZW0oJ3Rhc2tDb21wbGV0aW9uRXJyb3InKSA9PT0gJ3RydWUnO1xuICAgIHRoaXMucm91dGVyXG4gICAgICAubmF2aWdhdGUoW3RoaXMucGFyZW50VXJsXSlcbiAgICAgIC50aGVuKCgpID0+IHtcbiAgICAgICAgY29uc3QgY2FzZVJlZmVyZW5jZSA9IHRoaXMuY2FzZVJlZmVyZW5jZVBpcGUudHJhbnNmb3JtKHRoaXMuY2FzZURldGFpbHMuY2FzZV9pZC50b1N0cmluZygpKTtcbiAgICAgICAgY29uc3QgcmVwbGFjZW1lbnRzID0geyBDQVNFUkVGRVJFTkNFOiBjYXNlUmVmZXJlbmNlLCBOQU1FOiB0aGlzLmV2ZW50VHJpZ2dlci5uYW1lIH07XG4gICAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLnNldFByZXNlcnZlQWxlcnRzKHRydWUpO1xuICAgICAgICBpZiAodGFza0NvbXBsZXRpb25GYWlsZWQpIHtcbiAgICAgICAgICAvLyBpZiB0YXNrIHN0aWxsIHByZXNlbnQgaW4gc2Vzc2lvbiBzdG9yYWdlLCB3ZSBrbm93IHRoYXQgdGhlIHRhc2sgaGFzIG5vdCBiZWVuIGNvcnJlY3RseSBjb21wbGV0ZWRcbiAgICAgICAgICB0aGlzLmFsZXJ0U2VydmljZS53YXJuaW5nKHtcbiAgICAgICAgICAgIHBocmFzZTogQ2FzZUV2ZW50VHJpZ2dlckNvbXBvbmVudC5FVkVOVF9DT01QTEVUSU9OX01FU1NBR0UgKyAnLiAnICsgQ29uc3RhbnRzLlRBU0tfQ09NUExFVElPTl9FUlJPUlxuICAgICAgICAgICAgLCByZXBsYWNlbWVudHN9KTtcbiAgICAgICAgICB0aGlzLnNlc3Npb25TdG9yYWdlU2VydmljZS5yZW1vdmVJdGVtKCd0YXNrQ29tcGxldGlvbkVycm9yJyk7XG4gICAgICAgIH0gZWxzZSBpZiAoRXZlbnRTdGF0dXNTZXJ2aWNlLmlzSW5jb21wbGV0ZShldmVudFN0YXR1cykpIHtcbiAgICAgICAgICB0aGlzLmFsZXJ0U2VydmljZS53YXJuaW5nKHtcbiAgICAgICAgICAgIHBocmFzZTogQ2FzZUV2ZW50VHJpZ2dlckNvbXBvbmVudC5FVkVOVF9DT01QTEVUSU9OX01FU1NBR0UgKyBDYXNlRXZlbnRUcmlnZ2VyQ29tcG9uZW50LkNBTExCQUNLX0ZBSUxFRF9NRVNTQUdFLFxuICAgICAgICAgICAgcmVwbGFjZW1lbnRzXG4gICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5hbGVydFNlcnZpY2Uuc3VjY2Vzcyh7XG4gICAgICAgICAgICBwaHJhc2U6IENhc2VFdmVudFRyaWdnZXJDb21wb25lbnQuRVZFTlRfQ09NUExFVElPTl9NRVNTQUdFLFxuICAgICAgICAgICAgcmVwbGFjZW1lbnRzLFxuICAgICAgICAgICAgcHJlc2VydmU6IHRydWVcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICBwdWJsaWMgY2FuY2VsKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGNvbnN0IHByZXZpb3VzVXJsID0gdGhpcy5yb3V0ZXJDdXJyZW50TmF2aWdhdGlvbj8ucHJldmlvdXNOYXZpZ2F0aW9uPy5maW5hbFVybD8udG9TdHJpbmcoKTtcbiAgICBpZiAocHJldmlvdXNVcmwpIHtcbiAgICAgIGlmIChwcmV2aW91c1VybC5pbmRleE9mKCcjJykgPiAtMSkge1xuICAgICAgICBjb25zdCB1cmwgPSBwcmV2aW91c1VybC5zcGxpdCgnIycpWzBdO1xuICAgICAgICBjb25zdCBmcmFnbWVudCA9IHByZXZpb3VzVXJsLnNwbGl0KCcjJylbMV0ucmVwbGFjZSgvJTIwL2csICcgJyk7XG4gICAgICAgIHJldHVybiB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbdXJsXSwgeyBmcmFnbWVudDogZnJhZ21lbnQgfSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gdGhpcy5yb3V0ZXIubmF2aWdhdGUoW3ByZXZpb3VzVXJsXSk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbdGhpcy5wYXJlbnRVcmxdKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgaXNEYXRhTG9hZGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhISh0aGlzLmV2ZW50VHJpZ2dlciAmJiB0aGlzLmNhc2VEZXRhaWxzKTtcbiAgfVxufVxuIiwiPGRpdiAqbmdJZj1cImlzRGF0YUxvYWRlZCgpXCIgY2xhc3M9XCJzY3JlZW4tOTkwXCI+XG4gIDxjY2QtYWN0aXZpdHkgW2Nhc2VJZF09XCJjYXNlRGV0YWlscy5jYXNlX2lkXCIgW2Rpc3BsYXlNb2RlXT1cIkJBTk5FUlwiPjwvY2NkLWFjdGl2aXR5PlxuICA8Y2NkLWNhc2UtZWRpdCBbY2FzZURldGFpbHNdPVwiY2FzZURldGFpbHNcIlxuICAgICAgICAgICAgICAgICBbc3VibWl0XT1cInN1Ym1pdCgpXCJcbiAgICAgICAgICAgICAgICAgW3ZhbGlkYXRlXT1cInZhbGlkYXRlKClcIlxuICAgICAgICAgICAgICAgICBbZXZlbnRUcmlnZ2VyXT1cImV2ZW50VHJpZ2dlclwiXG4gICAgICAgICAgICAgICAgIChjYW5jZWxsZWQpPVwiY2FuY2VsKClcIlxuICAgICAgICAgICAgICAgICAoc3VibWl0dGVkKT1cInN1Ym1pdHRlZCgkZXZlbnQpXCI+PC9jY2QtY2FzZS1lZGl0PlxuPC9kaXY+XG4iXX0=
189
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FzZS1ldmVudC10cmlnZ2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NjZC1jYXNlLXVpLXRvb2xraXQvc3JjL2xpYi9zaGFyZWQvY29tcG9uZW50cy9jYXNlLXZpZXdlci9jYXNlLWV2ZW50LXRyaWdnZXIvY2FzZS1ldmVudC10cmlnZ2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NjZC1jYXNlLXVpLXRvb2xraXQvc3JjL2xpYi9zaGFyZWQvY29tcG9uZW50cy9jYXNlLXZpZXdlci9jYXNlLWV2ZW50LXRyaWdnZXIvY2FzZS1ldmVudC10cmlnZ2VyLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxjQUFjLEVBQWMsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDckUsT0FBTyxFQUE0QixFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDcEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3ZELE9BQU8sRUFBdUQsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbkcsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLFlBQVksRUFBRSxrQkFBa0IsRUFBRSxXQUFXLEVBQUUsY0FBYyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakosT0FBTyxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxhQUFhLENBQUM7Ozs7Ozs7OztJQ1JuRCw4QkFBK0M7SUFDN0Msa0NBQW1GO0lBQ25GLHdD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QjtjQUpyQyxTQUFTOzJCQUNFLHdCQUF3Qjs7a0ZBR3ZCLHlCQUF5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgTmdab25lLCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIE5hdmlnYXRpb24sIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb24sIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBDb25zdGFudHMgfSBmcm9tICcuLi8uLi8uLi9jb21tb25zL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBBY3Rpdml0eSwgQ2FzZUV2ZW50RGF0YSwgQ2FzZUV2ZW50VHJpZ2dlciwgQ2FzZVZpZXcsIERpc3BsYXlNb2RlIH0gZnJvbSAnLi4vLi4vLi4vZG9tYWluJztcbmltcG9ydCB7IENhc2VSZWZlcmVuY2VQaXBlIH0gZnJvbSAnLi4vLi4vLi4vcGlwZXMnO1xuaW1wb3J0IHsgQWN0aXZpdHlQb2xsaW5nU2VydmljZSwgQWxlcnRTZXJ2aWNlLCBFdmVudFN0YXR1c1NlcnZpY2UsIEZpZWxkc1V0aWxzLCBMb2FkaW5nU2VydmljZSwgU2Vzc2lvblN0b3JhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMnO1xuaW1wb3J0IHsgQ2FzZU5vdGlmaWVyLCBDYXNlc1NlcnZpY2UgfSBmcm9tICcuLi8uLi9jYXNlLWVkaXRvcic7XG5pbXBvcnQgeyBFdmVudFRyaWdnZXJSZXNvbHZlciB9IGZyb20gJy4uL3NlcnZpY2VzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY2NkLWNhc2UtZXZlbnQtdHJpZ2dlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9jYXNlLWV2ZW50LXRyaWdnZXIuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgQ2FzZUV2ZW50VHJpZ2dlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBFVkVOVF9DT01QTEVUSU9OX01FU1NBR0UgPSBgQ2FzZSAjJUNBU0VSRUZFUkVOQ0UlIGhhcyBiZWVuIHVwZGF0ZWQgd2l0aCBldmVudDogJU5BTUUlYDtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBDQUxMQkFDS19GQUlMRURfTUVTU0FHRSA9ICcgYnV0IHRoZSBjYWxsYmFjayBzZXJ2aWNlIGNhbm5vdCBiZSBjb21wbGV0ZWQnO1xuXG4gIHB1YmxpYyBCQU5ORVIgPSBEaXNwbGF5TW9kZS5CQU5ORVI7XG4gIHB1YmxpYyBldmVudFRyaWdnZXI6IENhc2VFdmVudFRyaWdnZXI7XG4gIHB1YmxpYyBjYXNlRGV0YWlsczogQ2FzZVZpZXc7XG4gIHB1YmxpYyBhY3Rpdml0eVN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICBwdWJsaWMgY2FzZVN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICBwdWJsaWMgcGFyZW50VXJsOiBzdHJpbmc7XG4gIHB1YmxpYyByb3V0ZXJDdXJyZW50TmF2aWdhdGlvbjogTmF2aWdhdGlvbjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IG5nWm9uZTogTmdab25lLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgY2FzZXNTZXJ2aWNlOiBDYXNlc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBjYXNlTm90aWZpZXI6IENhc2VOb3RpZmllcixcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJvdXRlcjogUm91dGVyLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgYWxlcnRTZXJ2aWNlOiBBbGVydFNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgcHJpdmF0ZSByZWFkb25seSBjYXNlUmVmZXJlbmNlUGlwZTogQ2FzZVJlZmVyZW5jZVBpcGUsXG4gICAgcHJpdmF0ZSByZWFkb25seSBhY3Rpdml0eVBvbGxpbmdTZXJ2aWNlOiBBY3Rpdml0eVBvbGxpbmdTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgc2Vzc2lvblN0b3JhZ2VTZXJ2aWNlOiBTZXNzaW9uU3RvcmFnZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBsb2FkaW5nU2VydmljZTogTG9hZGluZ1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBldmVudFRyaWdnZXJSZXNvbHZlcjogRXZlbnRUcmlnZ2VyUmVzb2x2ZXJcbiAgKSB7XG4gICAgdGhpcy5yb3V0ZXJDdXJyZW50TmF2aWdhdGlvbiA9IHRoaXMucm91dGVyLmdldEN1cnJlbnROYXZpZ2F0aW9uKCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubG9hZGluZ1NlcnZpY2UuaGFzU2hhcmVkU3Bpbm5lcigpKXtcbiAgICAgIHRoaXMubG9hZGluZ1NlcnZpY2UudW5yZWdpc3RlclNoYXJlZFNwaW5uZXIoKTtcbiAgICB9XG4gICAgaWYgKHRoaXMucm91dGUuc25hcHNob3QuZGF0YS5jYXNlKSB7XG4gICAgICB0aGlzLmNhc2VEZXRhaWxzID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5kYXRhLmNhc2U7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY2FzZVN1YnNjcmlwdGlvbiA9IHRoaXMuY2FzZU5vdGlmaWVyLmNhc2VWaWV3LnN1YnNjcmliZShjYXNlRGV0YWlscyA9PiB7XG4gICAgICAgIHRoaXMuY2FzZURldGFpbHMgPSBjYXNlRGV0YWlscztcbiAgICAgIH0pO1xuICAgIH1cbiAgICB0aGlzLmV2ZW50VHJpZ2dlciA9IHRoaXMucm91dGUuc25hcHNob3QuZGF0YS5ldmVudFRyaWdnZXI7XG4gICAgaWYgKHRoaXMuYWN0aXZpdHlQb2xsaW5nU2VydmljZS5pc0VuYWJsZWQpIHtcbiAgICAgIHRoaXMubmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCAoKSA9PiB7XG4gICAgICAgIHRoaXMuYWN0aXZpdHlTdWJzY3JpcHRpb24gPSB0aGlzLnBvc3RFZGl0QWN0aXZpdHkoKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgIC8vIGNvbnNvbGUubG9nKCdQb3N0ZWQgRURJVCBhY3Rpdml0eSBhbmQgcmVzdWx0IGlzOiAnICsgSlNPTi5zdHJpbmdpZnkoX3Jlc29sdmVkKSk7XG4gICAgICAgIH0pO1xuICAgICAgfSk7XG4gICAgfVxuICAgIHRoaXMucm91dGUucGFyZW50LnVybC5zdWJzY3JpYmUocGF0aCA9PiB7XG4gICAgICB0aGlzLnBhcmVudFVybCA9IGAvJHtwYXRoLmpvaW4oJy8nKX1gO1xuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmFjdGl2aXR5U3Vic2NyaXB0aW9uICYmIHRoaXMuYWN0aXZpdHlQb2xsaW5nU2VydmljZS5pc0VuYWJsZWQpIHtcbiAgICAgIHRoaXMuYWN0aXZpdHlTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gICAgaWYgKCF0aGlzLnJvdXRlLnNuYXBzaG90LmRhdGEuY2FzZSAmJiB0aGlzLmNhc2VTdWJzY3JpcHRpb24pIHtcbiAgICAgIHRoaXMuY2FzZVN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgIH1cbiAgICB0aGlzLmV2ZW50VHJpZ2dlclJlc29sdmVyLnJlc2V0Q2FjaGVkRXZlbnRUcmlnZ2VyKCk7XG4gIH1cblxuICBwdWJsaWMgcG9zdEVkaXRBY3Rpdml0eSgpOiBPYnNlcnZhYmxlPEFjdGl2aXR5W10+IHtcbiAgICByZXR1cm4gdGhpcy5hY3Rpdml0eVBvbGxpbmdTZXJ2aWNlLnBvc3RFZGl0QWN0aXZpdHkodGhpcy5jYXNlRGV0YWlscy5jYXNlX2lkKTtcbiAgfVxuXG4gIHB1YmxpYyBzdWJtaXQoKTogKHNhbml0aXplZEVkaXRGb3JtOiBDYXNlRXZlbnREYXRhKSA9PiBPYnNlcnZhYmxlPG9iamVjdD4ge1xuICAgIHJldHVybiAoc2FuaXRpemVkRWRpdEZvcm06IENhc2VFdmVudERhdGEpID0+XG4gICAgICB0aGlzLmNhc2VzU2VydmljZS5jcmVhdGVFdmVudCh0aGlzLmNhc2VEZXRhaWxzLCBzYW5pdGl6ZWRFZGl0Rm9ybSk7XG4gIH1cblxuICBwdWJsaWMgdmFsaWRhdGUoKTogKHNhbml0aXplZEVkaXRGb3JtOiBDYXNlRXZlbnREYXRhLCBwYWdlSWQ6IHN0cmluZykgPT4gT2JzZXJ2YWJsZTxvYmplY3Q+IHtcbiAgICByZXR1cm4gKHNhbml0aXplZEVkaXRGb3JtOiBDYXNlRXZlbnREYXRhLCBwYWdlSWQ6IHN0cmluZykgPT4ge1xuICAgICAgLy8gQnlwYXNzIHZhbGlkYXRpb24gaWYgdGhlIGV2ZW50VHJpZ2dlciBjYXNlIGZpZWxkcyBjb250YWluIGEgRmxhZ0xhdW5jaGVyIGZpZWxkOyB0aGlzIGZpZWxkIHR5cGUgY2Fubm90IGJlXG4gICAgICAvLyB2YWxpZGF0ZWQsIHVubGlrZSByZWd1bGFyIGZpZWxkc1xuICAgICAgcmV0dXJuIHRoaXMuZXZlbnRUcmlnZ2VyPy5jYXNlX2ZpZWxkcz8uc29tZSgoY2FzZUZpZWxkKSA9PiBGaWVsZHNVdGlscy5pc0Nhc2VGaWVsZE9mVHlwZShjYXNlRmllbGQsIFsnRmxhZ0xhdW5jaGVyJ10pKVxuICAgICAgICA/IG9mKG51bGwpXG4gICAgICAgIDogdGhpcy5jYXNlc1NlcnZpY2UudmFsaWRhdGVDYXNlKHRoaXMuY2FzZURldGFpbHMuY2FzZV90eXBlLmlkLCBzYW5pdGl6ZWRFZGl0Rm9ybSwgcGFnZUlkKTtcbiAgICB9O1xuICB9XG5cbiAgcHVibGljIHN1Ym1pdHRlZChldmVudDogYW55KTogdm9pZCB7XG4gICAgY29uc3QgZXZlbnRTdGF0dXM6IHN0cmluZyA9IGV2ZW50WydzdGF0dXMnXTtcbiAgICBjb25zdCB0YXNrQ29tcGxldGlvbkZhaWxlZCA9IHRoaXMuc2Vzc2lvblN0b3JhZ2VTZXJ2aWNlLmdldEl0ZW0oJ3Rhc2tDb21wbGV0aW9uRXJyb3InKSA9PT0gJ3RydWUnO1xuICAgIHRoaXMucm91dGVyXG4gICAgICAubmF2aWdhdGUoW3RoaXMucGFyZW50VXJsXSlcbiAgICAgIC50aGVuKCgpID0+IHtcbiAgICAgICAgY29uc3QgY2FzZVJlZmVyZW5jZSA9IHRoaXMuY2FzZVJlZmVyZW5jZVBpcGUudHJhbnNmb3JtKHRoaXMuY2FzZURldGFpbHMuY2FzZV9pZC50b1N0cmluZygpKTtcbiAgICAgICAgY29uc3QgcmVwbGFjZW1lbnRzID0geyBDQVNFUkVGRVJFTkNFOiBjYXNlUmVmZXJlbmNlLCBOQU1FOiB0aGlzLmV2ZW50VHJpZ2dlci5uYW1lIH07XG4gICAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLnNldFByZXNlcnZlQWxlcnRzKHRydWUpO1xuICAgICAgICBpZiAodGFza0NvbXBsZXRpb25GYWlsZWQpIHtcbiAgICAgICAgICAvLyBpZiB0YXNrIHN0aWxsIHByZXNlbnQgaW4gc2Vzc2lvbiBzdG9yYWdlLCB3ZSBrbm93IHRoYXQgdGhlIHRhc2sgaGFzIG5vdCBiZWVuIGNvcnJlY3RseSBjb21wbGV0ZWRcbiAgICAgICAgICB0aGlzLmFsZXJ0U2VydmljZS53YXJuaW5nKHtcbiAgICAgICAgICAgIHBocmFzZTogQ2FzZUV2ZW50VHJpZ2dlckNvbXBvbmVudC5FVkVOVF9DT01QTEVUSU9OX01FU1NBR0UgKyAnLiAnICsgQ29uc3RhbnRzLlRBU0tfQ09NUExFVElPTl9FUlJPUlxuICAgICAgICAgICAgLCByZXBsYWNlbWVudHN9KTtcbiAgICAgICAgICB0aGlzLnNlc3Npb25TdG9yYWdlU2VydmljZS5yZW1vdmVJdGVtKCd0YXNrQ29tcGxldGlvbkVycm9yJyk7XG4gICAgICAgIH0gZWxzZSBpZiAoRXZlbnRTdGF0dXNTZXJ2aWNlLmlzSW5jb21wbGV0ZShldmVudFN0YXR1cykpIHtcbiAgICAgICAgICB0aGlzLmFsZXJ0U2VydmljZS53YXJuaW5nKHtcbiAgICAgICAgICAgIHBocmFzZTogQ2FzZUV2ZW50VHJpZ2dlckNvbXBvbmVudC5FVkVOVF9DT01QTEVUSU9OX01FU1NBR0UgKyBDYXNlRXZlbnRUcmlnZ2VyQ29tcG9uZW50LkNBTExCQUNLX0ZBSUxFRF9NRVNTQUdFLFxuICAgICAgICAgICAgcmVwbGFjZW1lbnRzXG4gICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5hbGVydFNlcnZpY2Uuc3VjY2Vzcyh7XG4gICAgICAgICAgICBwaHJhc2U6IENhc2VFdmVudFRyaWdnZXJDb21wb25lbnQuRVZFTlRfQ09NUExFVElPTl9NRVNTQUdFLFxuICAgICAgICAgICAgcmVwbGFjZW1lbnRzLFxuICAgICAgICAgICAgcHJlc2VydmU6IHRydWVcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICAvLyByZXBsYWNlIHRoZSBvbGQgbGluayB3aXRoIHRoZSBuZXcgb25lIHdpdGgganVyaXNkaWN0aW9uIGFuZCBjYXNlIHR5cGUgaWRcbiAgcHJpdmF0ZSBnZXROYXZpZ2F0aW9uVXJsKHVybDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBjb25zdCB1cmxSZWdleCA9IC9cXC9jYXNlLWRldGFpbHNcXC8oXFxkKykvO1xuICAgIGNvbnN0IG1hdGNoID0gdXJsLm1hdGNoKHVybFJlZ2V4KTtcbiAgICBpZiAobWF0Y2ggJiYgL15cXGQrJC8udGVzdChtYXRjaFsxXSkgJiYgdGhpcy5jYXNlRGV0YWlscz8uY2FzZV90eXBlKSB7XG4gICAgICBjb25zdCBqdXJpc2RpY3Rpb24gPSB0aGlzLmNhc2VEZXRhaWxzLmNhc2VfdHlwZS5qdXJpc2RpY3Rpb24uaWQ7XG4gICAgICBjb25zdCBpZCA9IHRoaXMuY2FzZURldGFpbHMuY2FzZV90eXBlLmlkO1xuICAgICAgcmV0dXJuIHVybC5yZXBsYWNlKFxuICAgICAgICB1cmxSZWdleCxcbiAgICAgICAgYC9jYXNlLWRldGFpbHMvJHtqdXJpc2RpY3Rpb259LyR7aWR9LyR7bWF0Y2hbMV19YFxuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuIHVybDtcbiAgfVxuXG4gIHB1YmxpYyBjYW5jZWwoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgbGV0IHByZXZpb3VzVXJsID0gdGhpcy5yb3V0ZXJDdXJyZW50TmF2aWdhdGlvbj8ucHJldmlvdXNOYXZpZ2F0aW9uPy5maW5hbFVybD8udG9TdHJpbmcoKTtcbiAgICBpZiAocHJldmlvdXNVcmwpIHtcbiAgICAgIHByZXZpb3VzVXJsID0gdGhpcy5nZXROYXZpZ2F0aW9uVXJsKHByZXZpb3VzVXJsKTtcbiAgICAgIGlmIChwcmV2aW91c1VybC5pbmRleE9mKCcjJykgPiAtMSkge1xuICAgICAgICBjb25zdCB1cmwgPSBwcmV2aW91c1VybC5zcGxpdCgnIycpWzBdO1xuICAgICAgICBjb25zdCBmcmFnbWVudCA9IHByZXZpb3VzVXJsLnNwbGl0KCcjJylbMV0ucmVwbGFjZSgvJTIwL2csICcgJyk7XG4gICAgICAgIHJldHVybiB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbdXJsXSwgeyBmcmFnbWVudDogZnJhZ21lbnQgfSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gdGhpcy5yb3V0ZXIubmF2aWdhdGUoW3ByZXZpb3VzVXJsXSk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IHVwZGF0ZWRVcmwgPSB0aGlzLmdldE5hdmlnYXRpb25VcmwodGhpcy5wYXJlbnRVcmwpO1xuICAgICAgcmV0dXJuIHRoaXMucm91dGVyLm5hdmlnYXRlKFt1cGRhdGVkVXJsXSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGlzRGF0YUxvYWRlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISEodGhpcy5ldmVudFRyaWdnZXIgJiYgdGhpcy5jYXNlRGV0YWlscyk7XG4gIH1cbn1cbiIsIjxkaXYgKm5nSWY9XCJpc0RhdGFMb2FkZWQoKVwiIGNsYXNzPVwic2NyZWVuLTk5MFwiPlxuICA8Y2NkLWFjdGl2aXR5IFtjYXNlSWRdPVwiY2FzZURldGFpbHMuY2FzZV9pZFwiIFtkaXNwbGF5TW9kZV09XCJCQU5ORVJcIj48L2NjZC1hY3Rpdml0eT5cbiAgPGNjZC1jYXNlLWVkaXQgW2Nhc2VEZXRhaWxzXT1cImNhc2VEZXRhaWxzXCJcbiAgICAgICAgICAgICAgICAgW3N1Ym1pdF09XCJzdWJtaXQoKVwiXG4gICAgICAgICAgICAgICAgIFt2YWxpZGF0ZV09XCJ2YWxpZGF0ZSgpXCJcbiAgICAgICAgICAgICAgICAgW2V2ZW50VHJpZ2dlcl09XCJldmVudFRyaWdnZXJcIlxuICAgICAgICAgICAgICAgICAoY2FuY2VsbGVkKT1cImNhbmNlbCgpXCJcbiAgICAgICAgICAgICAgICAgKHN1Ym1pdHRlZCk9XCJzdWJtaXR0ZWQoJGV2ZW50KVwiPjwvY2NkLWNhc2UtZWRpdD5cbjwvZGl2PlxuIl19