@hmcts/ccd-case-ui-toolkit 7.0.39-angular-upgrade → 7.0.39

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 (1177) hide show
  1. package/esm2020/lib/app.config.mjs +45 -0
  2. package/esm2020/lib/components/banners/alert/alert-icon-class.pipe.mjs +25 -0
  3. package/esm2020/lib/components/banners/alert/alert.component.mjs +95 -0
  4. package/esm2020/lib/components/banners/alert/alert.module.mjs +32 -0
  5. package/esm2020/lib/components/banners/banners.module.mjs +32 -0
  6. package/esm2020/lib/components/banners/notification-banner/notification-banner.component.mjs +120 -0
  7. package/esm2020/lib/components/banners/notification-banner/notification-banner.module.mjs +19 -0
  8. package/esm2020/lib/components/body/body.component.mjs +20 -0
  9. package/esm2020/lib/components/body/body.module.mjs +20 -0
  10. package/esm2020/lib/components/footer/footer.component.mjs +105 -0
  11. package/esm2020/lib/components/footer/footers.module.mjs +25 -0
  12. package/esm2020/lib/components/form/date-input/date-input.component.mjs +331 -0
  13. package/esm2020/lib/components/form/form.module.mjs +29 -0
  14. package/esm2020/lib/components/header/header-bar/header-bar.component.mjs +97 -0
  15. package/esm2020/lib/components/header/headers.module.mjs +25 -0
  16. package/esm2020/lib/components/header/navigation/navigation-item.component.mjs +41 -0
  17. package/esm2020/lib/components/header/navigation/navigation.component.mjs +24 -0
  18. package/esm2020/lib/components/header/phase/phase.component.mjs +45 -0
  19. package/esm2020/lib/components/tabs/tab.component.mjs +28 -0
  20. package/esm2020/lib/components/tabs/tabs.component.mjs +79 -0
  21. package/esm2020/lib/components/tabs/tabs.module.mjs +38 -0
  22. package/esm2020/lib/shared/commons/address-validation-constants.mjs +13 -0
  23. package/esm2020/lib/shared/commons/case-edit-data/case-edit-data.module.mjs +19 -0
  24. package/esm2020/lib/shared/commons/case-edit-data/case-edit-data.service.mjs +47 -0
  25. package/esm2020/lib/shared/commons/constants.mjs +13 -0
  26. package/esm2020/lib/shared/components/activity/activity-banner/activity-banner.component.mjs +39 -0
  27. package/esm2020/lib/shared/components/activity/activity-icon/activity-icon.component.mjs +33 -0
  28. package/esm2020/lib/shared/components/activity/activity.component.mjs +151 -0
  29. package/esm2020/lib/shared/components/activity/activity.module.mjs +55 -0
  30. package/esm2020/lib/shared/components/case-editor/case-access-utils/index.mjs +105 -0
  31. package/esm2020/lib/shared/components/case-editor/case-create/case-create.component.mjs +87 -0
  32. package/esm2020/lib/shared/components/case-editor/case-edit/case-edit.component.mjs +432 -0
  33. package/esm2020/lib/shared/components/case-editor/case-edit-confirm/case-edit-confirm.component.mjs +125 -0
  34. package/esm2020/lib/shared/components/case-editor/case-edit-form/case-edit-form.component.mjs +135 -0
  35. package/esm2020/lib/shared/components/case-editor/case-edit-generic-errors/case-edit-generic-errors.component.mjs +69 -0
  36. package/esm2020/lib/shared/components/case-editor/case-edit-page/case-edit-page.component.mjs +779 -0
  37. package/esm2020/lib/shared/components/case-editor/case-edit-submit/case-edit-submit.component.mjs +587 -0
  38. package/esm2020/lib/shared/components/case-editor/case-editor.module.mjs +214 -0
  39. package/esm2020/lib/shared/components/case-editor/case-event-completion/case-event-completion.component.mjs +86 -0
  40. package/esm2020/lib/shared/components/case-editor/case-event-completion/components/case-event-completion-task-cancelled/case-event-completion-task-cancelled.component.mjs +80 -0
  41. package/esm2020/lib/shared/components/case-editor/case-event-completion/components/case-event-completion-task-reassigned/case-event-completion-task-reassigned.component.mjs +153 -0
  42. package/esm2020/lib/shared/components/case-editor/case-progress/case-progress.component.mjs +77 -0
  43. package/esm2020/lib/shared/components/case-editor/domain/confirmation.model.mjs +21 -0
  44. package/esm2020/lib/shared/components/case-editor/domain/wizard-page-field-complex-override.model.mjs +4 -0
  45. package/esm2020/lib/shared/components/case-editor/domain/wizard-page-field.model.mjs +3 -0
  46. package/esm2020/lib/shared/components/case-editor/domain/wizard-page.model.mjs +26 -0
  47. package/esm2020/lib/shared/components/case-editor/domain/wizard.model.mjs +54 -0
  48. package/esm2020/lib/shared/components/case-editor/services/case-edit-wizard.guard.mjs +93 -0
  49. package/esm2020/lib/shared/components/case-editor/services/case-flag-state.service.mjs +19 -0
  50. package/esm2020/lib/shared/components/case-editor/services/case-worker.service.mjs +32 -0
  51. package/esm2020/lib/shared/components/case-editor/services/case.notifier.mjs +51 -0
  52. package/esm2020/lib/shared/components/case-editor/services/cases.service.mjs +292 -0
  53. package/esm2020/lib/shared/components/case-editor/services/convert-href-to-router.service.mjs +41 -0
  54. package/esm2020/lib/shared/components/case-editor/services/event-completion-state-machine.service.mjs +143 -0
  55. package/esm2020/lib/shared/components/case-editor/services/event-trigger.service.mjs +20 -0
  56. package/esm2020/lib/shared/components/case-editor/services/judicial-worker.service.mjs +32 -0
  57. package/esm2020/lib/shared/components/case-editor/services/page-validation.service.mjs +58 -0
  58. package/esm2020/lib/shared/components/case-editor/services/valid-page-list-caseFields.service.mjs +39 -0
  59. package/esm2020/lib/shared/components/case-editor/services/wizard-page-field-to-case-field.mapper.mjs +117 -0
  60. package/esm2020/lib/shared/components/case-editor/services/work-allocation.service.mjs +214 -0
  61. package/esm2020/lib/shared/components/case-header/case-header.component.mjs +61 -0
  62. package/esm2020/lib/shared/components/case-header/case-header.module.mjs +33 -0
  63. package/esm2020/lib/shared/components/case-history/case-history.component.mjs +242 -0
  64. package/esm2020/lib/shared/components/case-history/case-history.module.mjs +64 -0
  65. package/esm2020/lib/shared/components/case-history/domain/case-history.model.mjs +29 -0
  66. package/esm2020/lib/shared/components/case-history/services/case-history.service.mjs +40 -0
  67. package/esm2020/lib/shared/components/case-list/case-list.component.mjs +362 -0
  68. package/esm2020/lib/shared/components/case-list/case-list.module.mjs +47 -0
  69. package/esm2020/lib/shared/components/case-list-filters/case-list-filters.component.mjs +52 -0
  70. package/esm2020/lib/shared/components/case-list-filters/case-list-filters.module.mjs +64 -0
  71. package/esm2020/lib/shared/components/case-timeline/case-timeline.component.mjs +109 -0
  72. package/esm2020/lib/shared/components/case-timeline/case-timeline.module.mjs +52 -0
  73. package/esm2020/lib/shared/components/case-viewer/case-basic-access-view/case-basic-access-view.component.mjs +247 -0
  74. package/esm2020/lib/shared/components/case-viewer/case-challenged-access-request/case-challenged-access-request.component.mjs +298 -0
  75. package/esm2020/lib/shared/components/case-viewer/case-challenged-access-success/case-challenged-access-success.component.mjs +72 -0
  76. package/esm2020/lib/shared/components/case-viewer/case-event-trigger/case-event-trigger.component.mjs +141 -0
  77. package/esm2020/lib/shared/components/case-viewer/case-full-access-view/case-full-access-view.component.mjs +670 -0
  78. package/esm2020/lib/shared/components/case-viewer/case-review-specific-access-reject/case-review-specific-access-reject.component.mjs +58 -0
  79. package/esm2020/lib/shared/components/case-viewer/case-review-specific-access-request/case-review-specific-access-request.component.mjs +241 -0
  80. package/esm2020/lib/shared/components/case-viewer/case-specific-access-request/case-specific-access-request.component.mjs +199 -0
  81. package/esm2020/lib/shared/components/case-viewer/case-specific-access-success/case-specific-access-success.component.mjs +47 -0
  82. package/esm2020/lib/shared/components/case-viewer/case-view/case-view.component.mjs +98 -0
  83. package/esm2020/lib/shared/components/case-viewer/case-viewer.component.mjs +125 -0
  84. package/esm2020/lib/shared/components/case-viewer/case-viewer.module.mjs +191 -0
  85. package/esm2020/lib/shared/components/case-viewer/printer/case-printer.component.mjs +110 -0
  86. package/esm2020/lib/shared/components/case-viewer/printer/pipes/print-url.pipe.mjs +60 -0
  87. package/esm2020/lib/shared/components/case-viewer/services/case.resolver.mjs +128 -0
  88. package/esm2020/lib/shared/components/case-viewer/services/event-trigger.resolver.mjs +77 -0
  89. package/esm2020/lib/shared/components/create-case-filters/create-case-filters-selection.model.mjs +8 -0
  90. package/esm2020/lib/shared/components/create-case-filters/create-case-filters.component.mjs +275 -0
  91. package/esm2020/lib/shared/components/create-case-filters/create-case-filters.module.mjs +44 -0
  92. package/esm2020/lib/shared/components/dialogs/delete-or-cancel-dialog/delete-or-cancel-dialog.component.mjs +57 -0
  93. package/esm2020/lib/shared/components/dialogs/dialogs.module.mjs +51 -0
  94. package/esm2020/lib/shared/components/dialogs/document-dialog/document-dialog.component.mjs +59 -0
  95. package/esm2020/lib/shared/components/dialogs/remove-dialog/remove-dialog.component.mjs +57 -0
  96. package/esm2020/lib/shared/components/dialogs/save-or-discard-dialog/save-or-discard-dialog.component.mjs +61 -0
  97. package/esm2020/lib/shared/components/error/callback-errors.component.mjs +149 -0
  98. package/esm2020/lib/shared/components/error/domain/error-context.mjs +3 -0
  99. package/esm2020/lib/shared/components/error/errors.module.mjs +33 -0
  100. package/esm2020/lib/shared/components/error-message/error-message.component.mjs +43 -0
  101. package/esm2020/lib/shared/components/error-message/error-message.module.mjs +41 -0
  102. package/esm2020/lib/shared/components/event-start/components/multiple-tasks-exist/multiple-tasks-exist.component.mjs +59 -0
  103. package/esm2020/lib/shared/components/event-start/components/no-tasks-available/no-tasks-available.component.mjs +53 -0
  104. package/esm2020/lib/shared/components/event-start/components/task-assigned/task-assigned.component.mjs +104 -0
  105. package/esm2020/lib/shared/components/event-start/components/task-cancelled/task-cancelled.component.mjs +68 -0
  106. package/esm2020/lib/shared/components/event-start/components/task-conflict/task-conflict.component.mjs +58 -0
  107. package/esm2020/lib/shared/components/event-start/components/task-unassigned/task-unassigned.component.mjs +53 -0
  108. package/esm2020/lib/shared/components/event-start/event-guard/event-start.guard.mjs +101 -0
  109. package/esm2020/lib/shared/components/event-start/event-start.component.mjs +49 -0
  110. package/esm2020/lib/shared/components/event-start/event-start.module.mjs +71 -0
  111. package/esm2020/lib/shared/components/event-start/resolvers/event-tasks-resolver.service.mjs +29 -0
  112. package/esm2020/lib/shared/components/event-start/services/event-start-state-machine.service.mjs +170 -0
  113. package/esm2020/lib/shared/components/event-trigger/event-trigger.component.mjs +123 -0
  114. package/esm2020/lib/shared/components/event-trigger/event-trigger.module.mjs +37 -0
  115. package/esm2020/lib/shared/components/loading-spinner/loading-spinner.component.mjs +27 -0
  116. package/esm2020/lib/shared/components/loading-spinner/loading-spinner.module.mjs +29 -0
  117. package/esm2020/lib/shared/components/pagination/pagination.component.mjs +262 -0
  118. package/esm2020/lib/shared/components/pagination/pagination.module.mjs +35 -0
  119. package/esm2020/lib/shared/components/palette/address/address-option.model.mjs +21 -0
  120. package/esm2020/lib/shared/components/palette/address/write-address-field.component.mjs +280 -0
  121. package/esm2020/lib/shared/components/palette/base-field/abstract-field-read.component.mjs +31 -0
  122. package/esm2020/lib/shared/components/palette/base-field/abstract-field-write.component.mjs +44 -0
  123. package/esm2020/lib/shared/components/palette/base-field/abstract-form-field.component.mjs +83 -0
  124. package/esm2020/lib/shared/components/palette/base-field/field-read-label.component.mjs +86 -0
  125. package/esm2020/lib/shared/components/palette/base-field/field-read.component.mjs +85 -0
  126. package/esm2020/lib/shared/components/palette/base-field/field-write.component.mjs +74 -0
  127. package/esm2020/lib/shared/components/palette/base-field/payment-field.component.mjs +35 -0
  128. package/esm2020/lib/shared/components/palette/case-file-view/case-file-view-field.component.mjs +171 -0
  129. package/esm2020/lib/shared/components/palette/case-file-view/components/case-file-view-folder/case-file-view-folder-document-actions/case-file-view-folder-document-actions.component.mjs +48 -0
  130. package/esm2020/lib/shared/components/palette/case-file-view/components/case-file-view-folder/case-file-view-folder-sort/case-file-view-folder-sort.component.mjs +48 -0
  131. package/esm2020/lib/shared/components/palette/case-file-view/components/case-file-view-folder/case-file-view-folder.component.mjs +342 -0
  132. package/esm2020/lib/shared/components/palette/case-file-view/components/case-file-view-folder-selector/case-file-view-folder-selector.component.mjs +154 -0
  133. package/esm2020/lib/shared/components/palette/case-file-view/components/shared/case-file-view-overlay-menu/case-file-view-overlay-menu.component.mjs +94 -0
  134. package/esm2020/lib/shared/components/palette/case-flag/components/add-comments/add-comments.component.mjs +190 -0
  135. package/esm2020/lib/shared/components/palette/case-flag/components/case-flag-summary-list/case-flag-summary-list.component.mjs +288 -0
  136. package/esm2020/lib/shared/components/palette/case-flag/components/case-flag-table/case-flag-table.component.mjs +207 -0
  137. package/esm2020/lib/shared/components/palette/case-flag/components/confirm-flag-status/confirm-flag-status.component.mjs +165 -0
  138. package/esm2020/lib/shared/components/palette/case-flag/components/manage-case-flags/manage-case-flags.component.mjs +219 -0
  139. package/esm2020/lib/shared/components/palette/case-flag/components/search-language-interpreter/search-language-interpreter.component.mjs +306 -0
  140. package/esm2020/lib/shared/components/palette/case-flag/components/select-flag-location/select-flag-location.component.mjs +200 -0
  141. package/esm2020/lib/shared/components/palette/case-flag/components/select-flag-type/select-flag-type.component.mjs +343 -0
  142. package/esm2020/lib/shared/components/palette/case-flag/components/update-flag/update-flag-add-translation-form/update-flag-add-translation-form.component.mjs +267 -0
  143. package/esm2020/lib/shared/components/palette/case-flag/components/update-flag/update-flag.component.mjs +510 -0
  144. package/esm2020/lib/shared/components/palette/case-flag/pipes/flag-field-display.pipe.mjs +41 -0
  145. package/esm2020/lib/shared/components/palette/case-flag/pipes/language-interpreter-display.pipe.mjs +41 -0
  146. package/esm2020/lib/shared/components/palette/case-flag/pipes/manage-case-flags-label-display.pipe.mjs +109 -0
  147. package/esm2020/lib/shared/components/palette/case-flag/pipes/update-flag-title-display.pipe.mjs +77 -0
  148. package/esm2020/lib/shared/components/palette/case-flag/read-case-flag-field.component.mjs +246 -0
  149. package/esm2020/lib/shared/components/palette/case-flag/write-case-flag-field.component.mjs +686 -0
  150. package/esm2020/lib/shared/components/palette/case-link/read-case-link-field.component.mjs +32 -0
  151. package/esm2020/lib/shared/components/palette/case-link/write-case-link-field.component.mjs +122 -0
  152. package/esm2020/lib/shared/components/palette/collection/collection-create-checker.service.mjs +42 -0
  153. package/esm2020/lib/shared/components/palette/collection/read-collection-field.component.mjs +81 -0
  154. package/esm2020/lib/shared/components/palette/collection/write-collection-field.component.mjs +441 -0
  155. package/esm2020/lib/shared/components/palette/complex/read-complex-field-collection-table.component.mjs +379 -0
  156. package/esm2020/lib/shared/components/palette/complex/read-complex-field-raw.component.mjs +53 -0
  157. package/esm2020/lib/shared/components/palette/complex/read-complex-field-table.component.mjs +78 -0
  158. package/esm2020/lib/shared/components/palette/complex/read-complex-field.component.mjs +75 -0
  159. package/esm2020/lib/shared/components/palette/complex/write-complex-field.component.mjs +169 -0
  160. package/esm2020/lib/shared/components/palette/date/read-date-field.component.mjs +28 -0
  161. package/esm2020/lib/shared/components/palette/date/write-date-container-field.component.mjs +33 -0
  162. package/esm2020/lib/shared/components/palette/date/write-date-field.component.mjs +76 -0
  163. package/esm2020/lib/shared/components/palette/datetime-picker/datetime-picker.component.mjs +309 -0
  164. package/esm2020/lib/shared/components/palette/document/document-url.pipe.mjs +24 -0
  165. package/esm2020/lib/shared/components/palette/document/file-upload-progress.guard.mjs +29 -0
  166. package/esm2020/lib/shared/components/palette/document/file-upload-state.service.mjs +16 -0
  167. package/esm2020/lib/shared/components/palette/document/read-document-field.component.mjs +81 -0
  168. package/esm2020/lib/shared/components/palette/document/write-document-field.component.mjs +408 -0
  169. package/esm2020/lib/shared/components/palette/dynamic-list/dynamic-list.pipe.mjs +18 -0
  170. package/esm2020/lib/shared/components/palette/dynamic-list/read-dynamic-list-field.component.mjs +36 -0
  171. package/esm2020/lib/shared/components/palette/dynamic-list/write-dynamic-list-field.component.mjs +124 -0
  172. package/esm2020/lib/shared/components/palette/dynamic-multi-select-list/read-dynamic-multi-select-list-field.component.mjs +43 -0
  173. package/esm2020/lib/shared/components/palette/dynamic-multi-select-list/write-dynamic-multi-select-list-field.component.mjs +145 -0
  174. package/esm2020/lib/shared/components/palette/dynamic-radio-list/dynamic-radio-list.pipe.mjs +25 -0
  175. package/esm2020/lib/shared/components/palette/dynamic-radio-list/read-dynamic-radio-list-field.component.mjs +42 -0
  176. package/esm2020/lib/shared/components/palette/dynamic-radio-list/write-dynamic-radio-list-field.component.mjs +124 -0
  177. package/esm2020/lib/shared/components/palette/email/read-email-field.component.mjs +35 -0
  178. package/esm2020/lib/shared/components/palette/email/write-email-field.component.mjs +73 -0
  179. package/esm2020/lib/shared/components/palette/fixed-list/fixed-list.pipe.mjs +23 -0
  180. package/esm2020/lib/shared/components/palette/fixed-list/read-fixed-list-field.component.mjs +26 -0
  181. package/esm2020/lib/shared/components/palette/fixed-list/write-fixed-list-field.component.mjs +106 -0
  182. package/esm2020/lib/shared/components/palette/fixed-radio-list/fixed-radio-list.pipe.mjs +18 -0
  183. package/esm2020/lib/shared/components/palette/fixed-radio-list/read-fixed-radio-list-field.component.mjs +26 -0
  184. package/esm2020/lib/shared/components/palette/fixed-radio-list/write-fixed-radio-list-field.component.mjs +95 -0
  185. package/esm2020/lib/shared/components/palette/history/case-history-viewer-field.component.mjs +16 -0
  186. package/esm2020/lib/shared/components/palette/history/event-log/event-log-details.component.mjs +97 -0
  187. package/esm2020/lib/shared/components/palette/history/event-log/event-log-table.component.mjs +225 -0
  188. package/esm2020/lib/shared/components/palette/history/event-log/event-log.component.mjs +72 -0
  189. package/esm2020/lib/shared/components/palette/judicial-user/read-judicial-user-field.component.mjs +45 -0
  190. package/esm2020/lib/shared/components/palette/judicial-user/write-judicial-user-field.component.mjs +242 -0
  191. package/esm2020/lib/shared/components/palette/label/label-field.component.mjs +50 -0
  192. package/esm2020/lib/shared/components/palette/linked-cases/components/before-you-start/before-you-start.component.mjs +108 -0
  193. package/esm2020/lib/shared/components/palette/linked-cases/components/check-your-answers/check-your-answers.component.mjs +189 -0
  194. package/esm2020/lib/shared/components/palette/linked-cases/components/link-cases/link-cases.component.mjs +530 -0
  195. package/esm2020/lib/shared/components/palette/linked-cases/components/linked-cases-table/linked-cases-from-table.component.mjs +204 -0
  196. package/esm2020/lib/shared/components/palette/linked-cases/components/linked-cases-table/linked-cases-to-table.component.mjs +280 -0
  197. package/esm2020/lib/shared/components/palette/linked-cases/components/no-linked-cases/no-linked-cases.component.mjs +66 -0
  198. package/esm2020/lib/shared/components/palette/linked-cases/components/unlink-cases/unlink-cases.component.mjs +201 -0
  199. package/esm2020/lib/shared/components/palette/linked-cases/domain/linked-cases.model.mjs +22 -0
  200. package/esm2020/lib/shared/components/palette/linked-cases/read-linked-cases-field.component.mjs +163 -0
  201. package/esm2020/lib/shared/components/palette/linked-cases/services/linked-cases.service.mjs +132 -0
  202. package/esm2020/lib/shared/components/palette/linked-cases/utils/validators.utils.mjs +27 -0
  203. package/esm2020/lib/shared/components/palette/linked-cases/write-linked-cases-field.component.mjs +229 -0
  204. package/esm2020/lib/shared/components/palette/markdown/markdown-component.module.mjs +49 -0
  205. package/esm2020/lib/shared/components/palette/markdown/markdown.component.mjs +78 -0
  206. package/esm2020/lib/shared/components/palette/markdown/routerlink.component.mjs +23 -0
  207. package/esm2020/lib/shared/components/palette/money-gbp/money-gbp-input.component.mjs +123 -0
  208. package/esm2020/lib/shared/components/palette/money-gbp/read-money-gbp-field.component.mjs +47 -0
  209. package/esm2020/lib/shared/components/palette/money-gbp/write-money-gbp-field.component.mjs +78 -0
  210. package/esm2020/lib/shared/components/palette/multi-select-list/read-multi-select-list-field.component.mjs +45 -0
  211. package/esm2020/lib/shared/components/palette/multi-select-list/write-multi-select-list-field.component.mjs +126 -0
  212. package/esm2020/lib/shared/components/palette/number/read-number-field.component.mjs +24 -0
  213. package/esm2020/lib/shared/components/palette/number/write-number-field.component.mjs +73 -0
  214. package/esm2020/lib/shared/components/palette/order-summary/fee-value.model.mjs +3 -0
  215. package/esm2020/lib/shared/components/palette/order-summary/fee.model.mjs +4 -0
  216. package/esm2020/lib/shared/components/palette/order-summary/order-summary.model.mjs +3 -0
  217. package/esm2020/lib/shared/components/palette/order-summary/read-order-summary-field.component.mjs +73 -0
  218. package/esm2020/lib/shared/components/palette/order-summary/read-order-summary-row.component.mjs +43 -0
  219. package/esm2020/lib/shared/components/palette/order-summary/write-order-summary-field.component.mjs +44 -0
  220. package/esm2020/lib/shared/components/palette/organisation/read-organisation-field-raw.component.mjs +83 -0
  221. package/esm2020/lib/shared/components/palette/organisation/read-organisation-field-table.component.mjs +87 -0
  222. package/esm2020/lib/shared/components/palette/organisation/read-organisation-field.component.mjs +56 -0
  223. package/esm2020/lib/shared/components/palette/organisation/write-organisation-complex-field.component.mjs +33 -0
  224. package/esm2020/lib/shared/components/palette/organisation/write-organisation-field.component.mjs +384 -0
  225. package/esm2020/lib/shared/components/palette/palette.module.mjs +738 -0
  226. package/esm2020/lib/shared/components/palette/palette.service.mjs +155 -0
  227. package/esm2020/lib/shared/components/palette/payment/case-payment-history-viewer-field.component.mjs +24 -0
  228. package/esm2020/lib/shared/components/palette/phone-uk/read-phone-uk-field.component.mjs +22 -0
  229. package/esm2020/lib/shared/components/palette/phone-uk/write-phone-uk-field.component.mjs +73 -0
  230. package/esm2020/lib/shared/components/palette/query-management/components/qualifying-questions/qualifying-question-detail/qualifying-question-detail.component.mjs +42 -0
  231. package/esm2020/lib/shared/components/palette/query-management/components/qualifying-questions/qualifying-question-options/qualifying-question-options.component.mjs +144 -0
  232. package/esm2020/lib/shared/components/palette/query-management/components/query-attachments-read/query-attachments-read.component.mjs +64 -0
  233. package/esm2020/lib/shared/components/palette/query-management/components/query-case-details-header/query-case-details-header.component.mjs +60 -0
  234. package/esm2020/lib/shared/components/palette/query-management/components/query-check-your-answers/query-check-your-answers.component.mjs +281 -0
  235. package/esm2020/lib/shared/components/palette/query-management/components/query-details/query-details.component.mjs +327 -0
  236. package/esm2020/lib/shared/components/palette/query-management/components/query-event-completion/query-event-completion.component.mjs +22 -0
  237. package/esm2020/lib/shared/components/palette/query-management/components/query-list/query-list.component.mjs +164 -0
  238. package/esm2020/lib/shared/components/palette/query-management/components/query-write/query-write-add-documents/query-write-add-documents.component.mjs +74 -0
  239. package/esm2020/lib/shared/components/palette/query-management/components/query-write/query-write-date-input/query-write-date-input.component.mjs +107 -0
  240. package/esm2020/lib/shared/components/palette/query-management/components/query-write/query-write-raise-query/query-write-raise-query.component.mjs +201 -0
  241. package/esm2020/lib/shared/components/palette/query-management/components/query-write/query-write-respond-to-query/query-write-respond-to-query.component.mjs +101 -0
  242. package/esm2020/lib/shared/components/palette/query-management/models/query-list/query-list-data/query-list-data.model.mjs +21 -0
  243. package/esm2020/lib/shared/components/palette/query-management/models/query-list/query-list-item/query-list-item.model.mjs +38 -0
  244. package/esm2020/lib/shared/components/palette/query-management/read-query-management-field.component.mjs +121 -0
  245. package/esm2020/lib/shared/components/palette/query-management/utils/query-management.utils.mjs +22 -0
  246. package/esm2020/lib/shared/components/palette/text/read-text-field.component.mjs +24 -0
  247. package/esm2020/lib/shared/components/palette/text/write-text-field.component.mjs +77 -0
  248. package/esm2020/lib/shared/components/palette/text-area/read-text-area-field.component.mjs +24 -0
  249. package/esm2020/lib/shared/components/palette/text-area/write-text-area-field.component.mjs +87 -0
  250. package/esm2020/lib/shared/components/palette/unsupported-field.component.mjs +17 -0
  251. package/esm2020/lib/shared/components/palette/utils/dash.pipe.mjs +16 -0
  252. package/esm2020/lib/shared/components/palette/utils/date.pipe.mjs +132 -0
  253. package/esm2020/lib/shared/components/palette/utils/field-label.pipe.mjs +29 -0
  254. package/esm2020/lib/shared/components/palette/utils/first-error.pipe.mjs +62 -0
  255. package/esm2020/lib/shared/components/palette/utils/is-compound.pipe.mjs +43 -0
  256. package/esm2020/lib/shared/components/palette/utils/is-mandatory.pipe.mjs +21 -0
  257. package/esm2020/lib/shared/components/palette/utils/is-read-only-and-not-collection.pipe.mjs +31 -0
  258. package/esm2020/lib/shared/components/palette/utils/is-read-only.pipe.mjs +21 -0
  259. package/esm2020/lib/shared/components/palette/utils/utils.module.mjs +71 -0
  260. package/esm2020/lib/shared/components/palette/waystopay/waystopay-field.component.mjs +34 -0
  261. package/esm2020/lib/shared/components/palette/yes-no/read-yes-no-field.component.mjs +34 -0
  262. package/esm2020/lib/shared/components/palette/yes-no/write-yes-no-field.component.mjs +100 -0
  263. package/esm2020/lib/shared/components/palette/yes-no/yes-no.service.mjs +50 -0
  264. package/esm2020/lib/shared/components/search-filters/domain/search-input.model.mjs +10 -0
  265. package/esm2020/lib/shared/components/search-filters/search-filters-wrapper.component.mjs +58 -0
  266. package/esm2020/lib/shared/components/search-filters/search-filters.component.mjs +326 -0
  267. package/esm2020/lib/shared/components/search-filters/search-filters.module.mjs +71 -0
  268. package/esm2020/lib/shared/components/search-result/search-result.component.mjs +815 -0
  269. package/esm2020/lib/shared/components/search-result/search-result.module.mjs +82 -0
  270. package/esm2020/lib/shared/components/workbasket-filters/workbasket-filters.component.mjs +479 -0
  271. package/esm2020/lib/shared/components/workbasket-filters/workbasket-filters.module.mjs +67 -0
  272. package/esm2020/lib/shared/directives/conditional-show/conditional-show-form.directive.mjs +164 -0
  273. package/esm2020/lib/shared/directives/conditional-show/conditional-show.module.mjs +33 -0
  274. package/esm2020/lib/shared/directives/conditional-show/domain/conditional-show.model.mjs +200 -0
  275. package/esm2020/lib/shared/directives/conditional-show/services/condition-parser.service.mjs +200 -0
  276. package/esm2020/lib/shared/directives/conditional-show/services/conditional-show-registrar.service.mjs +19 -0
  277. package/esm2020/lib/shared/directives/conditional-show/services/grey-bar.service.mjs +47 -0
  278. package/esm2020/lib/shared/directives/focus-element/focus-element.directive.mjs +36 -0
  279. package/esm2020/lib/shared/directives/focus-element/focus-element.module.mjs +21 -0
  280. package/esm2020/lib/shared/directives/substitutor/label-substitutor.directive.mjs +82 -0
  281. package/esm2020/lib/shared/directives/substitutor/label-substitutor.module.mjs +30 -0
  282. package/esm2020/lib/shared/directives/substitutor/services/placeholder.service.mjs +200 -0
  283. package/esm2020/lib/shared/domain/activity/activity.model.mjs +10 -0
  284. package/esm2020/lib/shared/domain/addresses/address.model.mjs +13 -0
  285. package/esm2020/lib/shared/domain/alert/alert.model.mjs +3 -0
  286. package/esm2020/lib/shared/domain/case-details.model.mjs +4 -0
  287. package/esm2020/lib/shared/domain/case-event-data.model.mjs +4 -0
  288. package/esm2020/lib/shared/domain/case-file-view/case-file-view-category.model.mjs +3 -0
  289. package/esm2020/lib/shared/domain/case-file-view/case-file-view-document.model.mjs +4 -0
  290. package/esm2020/lib/shared/domain/case-file-view/categories-and-documents.model.mjs +7 -0
  291. package/esm2020/lib/shared/domain/case-file-view/document-tree-node/document-tree-node.model.mjs +117 -0
  292. package/esm2020/lib/shared/domain/case-flag/flag-type.model.mjs +28 -0
  293. package/esm2020/lib/shared/domain/case-flag/hmcts-service-detail.model.mjs +10 -0
  294. package/esm2020/lib/shared/domain/case-view/case-event-trigger.model.mjs +23 -0
  295. package/esm2020/lib/shared/domain/case-view/case-print-document.model.mjs +3 -0
  296. package/esm2020/lib/shared/domain/case-view/case-tab.model.mjs +12 -0
  297. package/esm2020/lib/shared/domain/case-view/case-view-event.model.mjs +4 -0
  298. package/esm2020/lib/shared/domain/case-view/case-view-trigger.model.mjs +3 -0
  299. package/esm2020/lib/shared/domain/case-view/case-view.model.mjs +17 -0
  300. package/esm2020/lib/shared/domain/definition/access-control-list.model.mjs +3 -0
  301. package/esm2020/lib/shared/domain/definition/banner.model.mjs +3 -0
  302. package/esm2020/lib/shared/domain/definition/case-event.model.mjs +3 -0
  303. package/esm2020/lib/shared/domain/definition/case-field.model.mjs +200 -0
  304. package/esm2020/lib/shared/domain/definition/case-state.model.mjs +3 -0
  305. package/esm2020/lib/shared/domain/definition/case-type-lite.model.mjs +5 -0
  306. package/esm2020/lib/shared/domain/definition/case-type.model.mjs +12 -0
  307. package/esm2020/lib/shared/domain/definition/event-case-field.model.mjs +4 -0
  308. package/esm2020/lib/shared/domain/definition/field-type.model.mjs +22 -0
  309. package/esm2020/lib/shared/domain/definition/fixed-list-item.model.mjs +3 -0
  310. package/esm2020/lib/shared/domain/definition/jurisdiction.model.mjs +3 -0
  311. package/esm2020/lib/shared/domain/document/document-data.model.mjs +14 -0
  312. package/esm2020/lib/shared/domain/draft.model.mjs +11 -0
  313. package/esm2020/lib/shared/domain/http/http-error.model.mjs +40 -0
  314. package/esm2020/lib/shared/domain/organisation/organisation-converter.mjs +42 -0
  315. package/esm2020/lib/shared/domain/pagination-metadata.model.mjs +3 -0
  316. package/esm2020/lib/shared/domain/profile/profile.model.mjs +29 -0
  317. package/esm2020/lib/shared/domain/search/field.model.mjs +11 -0
  318. package/esm2020/lib/shared/domain/search/search-result-view-column.model.mjs +3 -0
  319. package/esm2020/lib/shared/domain/search/search-result-view-item.model.mjs +12 -0
  320. package/esm2020/lib/shared/domain/search/search-result-view.model.mjs +23 -0
  321. package/esm2020/lib/shared/domain/search/sorting/sort-parameters.mjs +7 -0
  322. package/esm2020/lib/shared/domain/workbasket/workbasket-input.model.mjs +5 -0
  323. package/esm2020/lib/shared/fixture/case-field-builder.mjs +69 -0
  324. package/esm2020/lib/shared/pipes/case-reference/case-reference.pipe.mjs +33 -0
  325. package/esm2020/lib/shared/pipes/case-title/ccd-case-title.pipe.mjs +29 -0
  326. package/esm2020/lib/shared/pipes/complex/ccd-collection-table-value-case-fields.pipe.mjs +32 -0
  327. package/esm2020/lib/shared/pipes/complex/ccd-cyapage-label-filter.pipe.mjs +29 -0
  328. package/esm2020/lib/shared/pipes/complex/ccd-page-fields.pipe.mjs +39 -0
  329. package/esm2020/lib/shared/pipes/complex/ccd-read-fields-filter.pipe.mjs +173 -0
  330. package/esm2020/lib/shared/pipes/complex/ccd-tab-fields.pipe.mjs +31 -0
  331. package/esm2020/lib/shared/pipes/complex/fields-filter.pipe.mjs +105 -0
  332. package/esm2020/lib/shared/pipes/generic/enum-display-description/enum-display-description.pipe.mjs +16 -0
  333. package/esm2020/lib/shared/pipes/link-cases-from-reason-code/ccd-link-cases-from-reason-code.pipe.mjs +27 -0
  334. package/esm2020/lib/shared/pipes/link-cases-reason-code/ccd-link-cases-reason-code.pipe.mjs +27 -0
  335. package/esm2020/lib/shared/pipes/pipes.module.mjs +64 -0
  336. package/esm2020/lib/shared/pipes/search-result/sorting/sort-search-result.pipe.mjs +24 -0
  337. package/esm2020/lib/shared/services/activity/activity.polling.service.mjs +114 -0
  338. package/esm2020/lib/shared/services/activity/activity.service.mjs +82 -0
  339. package/esm2020/lib/shared/services/addresses/address-parser.mjs +76 -0
  340. package/esm2020/lib/shared/services/addresses/addresses.service.mjs +63 -0
  341. package/esm2020/lib/shared/services/alert/alert.service.mjs +142 -0
  342. package/esm2020/lib/shared/services/auth/auth.service.mjs +33 -0
  343. package/esm2020/lib/shared/services/banners/banners.service.mjs +33 -0
  344. package/esm2020/lib/shared/services/browser/browser.service.mjs +24 -0
  345. package/esm2020/lib/shared/services/case-fields/case-field.service.mjs +34 -0
  346. package/esm2020/lib/shared/services/case-fields/format-translator.service.mjs +242 -0
  347. package/esm2020/lib/shared/services/case-file-view/case-file-view.service.mjs +46 -0
  348. package/esm2020/lib/shared/services/case-flag/case-flag-refdata.service.mjs +102 -0
  349. package/esm2020/lib/shared/services/common-data-service/common-data-service.mjs +28 -0
  350. package/esm2020/lib/shared/services/definitions/definitions.module.mjs +19 -0
  351. package/esm2020/lib/shared/services/definitions/definitions.service.mjs +30 -0
  352. package/esm2020/lib/shared/services/document-management/document-management.service.mjs +112 -0
  353. package/esm2020/lib/shared/services/draft/draft.service.mjs +86 -0
  354. package/esm2020/lib/shared/services/error/error-notifier.service.mjs +18 -0
  355. package/esm2020/lib/shared/services/eventStatusService/event-status.service.mjs +21 -0
  356. package/esm2020/lib/shared/services/fields/fields.purger.mjs +304 -0
  357. package/esm2020/lib/shared/services/fields/fields.utils.mjs +615 -0
  358. package/esm2020/lib/shared/services/form/field-type-sanitiser.mjs +102 -0
  359. package/esm2020/lib/shared/services/form/form-error.service.mjs +46 -0
  360. package/esm2020/lib/shared/services/form/form-validators.service.mjs +82 -0
  361. package/esm2020/lib/shared/services/form/form-value.service.mjs +551 -0
  362. package/esm2020/lib/shared/services/http/http-error.service.mjs +65 -0
  363. package/esm2020/lib/shared/services/http/http.service.mjs +93 -0
  364. package/esm2020/lib/shared/services/jurisdiction/jurisdiction.service.mjs +33 -0
  365. package/esm2020/lib/shared/services/loading/loading.module.mjs +22 -0
  366. package/esm2020/lib/shared/services/loading/loading.service.mjs +33 -0
  367. package/esm2020/lib/shared/services/navigation/navigation-notifier.service.mjs +18 -0
  368. package/esm2020/lib/shared/services/order/order.service.mjs +39 -0
  369. package/esm2020/lib/shared/services/organisation/organisation.service.mjs +54 -0
  370. package/esm2020/lib/shared/services/profile/profile.notifier.mjs +19 -0
  371. package/esm2020/lib/shared/services/profile/profile.service.mjs +34 -0
  372. package/esm2020/lib/shared/services/request/request.options.builder.mjs +61 -0
  373. package/esm2020/lib/shared/services/router/router-helper.service.mjs +20 -0
  374. package/esm2020/lib/shared/services/search/search.service.mjs +89 -0
  375. package/esm2020/lib/shared/services/search-result/sorting/search-result-view-item-comparator-factory.mjs +71 -0
  376. package/esm2020/lib/shared/services/session/session-storage.service.mjs +34 -0
  377. package/esm2020/lib/shared/services/utils/retry/retry.service.mjs +86 -0
  378. package/esm2020/lib/shared/services/window/window.service.mjs +40 -0
  379. package/esm2020/lib/shared/services/workbasket/workbasket-input-filter.service.mjs +53 -0
  380. package/esm2020/lib/shared/test/test-route-snapshot-builder.mjs +40 -0
  381. package/fesm2015/hmcts-ccd-case-ui-toolkit.mjs +38781 -0
  382. package/fesm2015/hmcts-ccd-case-ui-toolkit.mjs.map +1 -0
  383. package/fesm2020/hmcts-ccd-case-ui-toolkit.mjs +35799 -0
  384. package/fesm2020/hmcts-ccd-case-ui-toolkit.mjs.map +1 -0
  385. package/lib/components/banners/alert/alert.component.d.ts +1 -1
  386. package/lib/components/banners/notification-banner/notification-banner.component.d.ts +1 -1
  387. package/lib/components/footer/footer.component.d.ts +1 -1
  388. package/lib/components/form/date-input/date-input.component.d.ts +1 -1
  389. package/lib/components/header/header-bar/header-bar.component.d.ts +1 -1
  390. package/lib/components/header/navigation/navigation-item.component.d.ts +1 -1
  391. package/lib/components/header/navigation/navigation.component.d.ts +1 -1
  392. package/lib/components/header/phase/phase.component.d.ts +1 -1
  393. package/lib/components/tabs/tab.component.d.ts +1 -1
  394. package/lib/shared/commons/case-edit-data/case-edit-validation.model.d.ts +1 -1
  395. package/lib/shared/commons/case-edit-data/case-edit-validation.model.d.ts.map +1 -1
  396. package/lib/shared/components/activity/activity-banner/activity-banner.component.d.ts +1 -1
  397. package/lib/shared/components/activity/activity-icon/activity-icon.component.d.ts +1 -1
  398. package/lib/shared/components/activity/activity.component.d.ts +1 -1
  399. package/lib/shared/components/case-editor/case-create/case-create.component.d.ts +1 -1
  400. package/lib/shared/components/case-editor/case-edit/case-edit.component.d.ts +1 -1
  401. package/lib/shared/components/case-editor/case-edit-form/case-edit-form.component.d.ts +1 -1
  402. package/lib/shared/components/case-editor/case-edit-generic-errors/case-edit-generic-errors.component.d.ts +1 -1
  403. package/lib/shared/components/case-editor/case-edit-page/case-edit-page.component.d.ts.map +1 -1
  404. package/lib/shared/components/case-editor/case-event-completion/case-event-completion.component.d.ts +1 -1
  405. package/lib/shared/components/case-editor/case-progress/case-progress.component.d.ts +1 -1
  406. package/lib/shared/components/case-header/case-header.component.d.ts +1 -1
  407. package/lib/shared/components/case-history/case-history.component.d.ts +1 -1
  408. package/lib/shared/components/case-list/case-list.component.d.ts +1 -1
  409. package/lib/shared/components/case-list-filters/case-list-filters.component.d.ts +1 -1
  410. package/lib/shared/components/case-timeline/case-timeline.component.d.ts +1 -1
  411. package/lib/shared/components/case-viewer/case-basic-access-view/case-basic-access-view.component.d.ts +1 -1
  412. package/lib/shared/components/case-viewer/case-full-access-view/case-full-access-view.component.d.ts +4 -5
  413. package/lib/shared/components/case-viewer/case-full-access-view/case-full-access-view.component.d.ts.map +1 -1
  414. package/lib/shared/components/case-viewer/case-view/case-view.component.d.ts +1 -1
  415. package/lib/shared/components/case-viewer/case-viewer.component.d.ts +1 -1
  416. package/lib/shared/components/case-viewer/services/event-trigger.resolver.d.ts +7 -2
  417. package/lib/shared/components/case-viewer/services/event-trigger.resolver.d.ts.map +1 -1
  418. package/lib/shared/components/create-case-filters/create-case-filters.component.d.ts +1 -1
  419. package/lib/shared/components/error/callback-errors.component.d.ts +1 -1
  420. package/lib/shared/components/error/callback-errors.component.d.ts.map +1 -1
  421. package/lib/shared/components/error/domain/error-context.d.ts +1 -0
  422. package/lib/shared/components/error/domain/error-context.d.ts.map +1 -1
  423. package/lib/shared/components/error-message/error-message.component.d.ts +1 -1
  424. package/lib/shared/components/event-start/components/task-cancelled/task-cancelled.component.d.ts +1 -1
  425. package/lib/shared/components/event-start/components/task-conflict/task-conflict.component.d.ts +1 -1
  426. package/lib/shared/components/event-trigger/event-trigger.component.d.ts +6 -3
  427. package/lib/shared/components/event-trigger/event-trigger.component.d.ts.map +1 -1
  428. package/lib/shared/components/loading-spinner/loading-spinner.component.d.ts +1 -1
  429. package/lib/shared/components/pagination/pagination.component.d.ts +1 -1
  430. package/lib/shared/components/palette/address/write-address-field.component.d.ts.map +1 -1
  431. package/lib/shared/components/palette/base-field/abstract-field-read.component.d.ts +1 -1
  432. package/lib/shared/components/palette/base-field/abstract-field-write.component.d.ts +1 -1
  433. package/lib/shared/components/palette/base-field/abstract-form-field.component.d.ts +2 -2
  434. package/lib/shared/components/palette/base-field/abstract-form-field.component.d.ts.map +1 -1
  435. package/lib/shared/components/palette/base-field/field-read-label.component.d.ts +1 -1
  436. package/lib/shared/components/palette/base-field/field-read.component.d.ts +1 -1
  437. package/lib/shared/components/palette/base-field/field-write.component.d.ts +1 -1
  438. package/lib/shared/components/palette/case-file-view/components/case-file-view-folder/case-file-view-folder-document-actions/case-file-view-folder-document-actions.component.d.ts +1 -1
  439. package/lib/shared/components/palette/case-file-view/components/case-file-view-folder/case-file-view-folder.component.d.ts +1 -1
  440. package/lib/shared/components/palette/case-file-view/components/shared/case-file-view-overlay-menu/case-file-view-overlay-menu.component.d.ts +1 -1
  441. package/lib/shared/components/palette/case-flag/components/add-comments/add-comments.component.d.ts +1 -1
  442. package/lib/shared/components/palette/case-flag/components/case-flag-summary-list/case-flag-summary-list.component.d.ts +1 -1
  443. package/lib/shared/components/palette/case-flag/components/case-flag-table/case-flag-table.component.d.ts +1 -1
  444. package/lib/shared/components/palette/case-flag/components/confirm-flag-status/confirm-flag-status.component.d.ts +1 -1
  445. package/lib/shared/components/palette/case-flag/components/manage-case-flags/manage-case-flags.component.d.ts +1 -1
  446. package/lib/shared/components/palette/case-flag/components/search-language-interpreter/search-language-interpreter.component.d.ts +1 -1
  447. package/lib/shared/components/palette/case-flag/components/select-flag-location/select-flag-location.component.d.ts +1 -1
  448. package/lib/shared/components/palette/case-flag/components/select-flag-type/select-flag-type.component.d.ts +1 -1
  449. package/lib/shared/components/palette/case-flag/components/update-flag/update-flag-add-translation-form/update-flag-add-translation-form.component.d.ts +1 -1
  450. package/lib/shared/components/palette/case-flag/components/update-flag/update-flag.component.d.ts +1 -1
  451. package/lib/shared/components/palette/collection/write-collection-field.component.d.ts +2 -2
  452. package/lib/shared/components/palette/collection/write-collection-field.component.d.ts.map +1 -1
  453. package/lib/shared/components/palette/complex/read-complex-field-raw.component.d.ts +1 -1
  454. package/lib/shared/components/palette/complex/read-complex-field-table.component.d.ts +1 -1
  455. package/lib/shared/components/palette/complex/read-complex-field.component.d.ts +1 -1
  456. package/lib/shared/components/palette/complex/write-complex-field.component.d.ts +1 -1
  457. package/lib/shared/components/palette/datetime-picker/datetime-picker.component.d.ts +1 -1
  458. package/lib/shared/components/palette/history/event-log/event-log-details.component.d.ts +1 -1
  459. package/lib/shared/components/palette/history/event-log/event-log-table.component.d.ts +1 -1
  460. package/lib/shared/components/palette/history/event-log/event-log.component.d.ts +1 -1
  461. package/lib/shared/components/palette/label/label-field.component.d.ts +1 -1
  462. package/lib/shared/components/palette/linked-cases/components/linked-cases-table/linked-cases-from-table.component.d.ts +1 -1
  463. package/lib/shared/components/palette/linked-cases/components/linked-cases-table/linked-cases-to-table.component.d.ts +1 -1
  464. package/lib/shared/components/palette/markdown/markdown-component.module.d.ts +2 -2
  465. package/lib/shared/components/palette/markdown/markdown.component.d.ts +4 -2
  466. package/lib/shared/components/palette/markdown/markdown.component.d.ts.map +1 -1
  467. package/lib/shared/components/palette/money-gbp/money-gbp-input.component.d.ts +1 -1
  468. package/lib/shared/components/palette/money-gbp/read-money-gbp-field.component.d.ts +1 -1
  469. package/lib/shared/components/palette/order-summary/read-order-summary-row.component.d.ts +1 -1
  470. package/lib/shared/components/palette/organisation/read-organisation-field-raw.component.d.ts +1 -1
  471. package/lib/shared/components/palette/organisation/read-organisation-field-table.component.d.ts +1 -1
  472. package/lib/shared/components/palette/organisation/read-organisation-field.component.d.ts +1 -1
  473. package/lib/shared/components/palette/organisation/write-organisation-complex-field.component.d.ts +1 -1
  474. package/lib/shared/components/palette/palette.module.d.ts +2 -2
  475. package/lib/shared/components/palette/palette.module.d.ts.map +1 -1
  476. package/lib/shared/components/palette/query-management/components/qualifying-questions/qualifying-question-detail/qualifying-question-detail.component.d.ts +1 -1
  477. package/lib/shared/components/palette/query-management/components/qualifying-questions/qualifying-question-options/qualifying-question-options.component.d.ts +1 -1
  478. package/lib/shared/components/palette/query-management/components/query-attachments-read/query-attachments-read.component.d.ts +1 -1
  479. package/lib/shared/components/palette/query-management/components/query-check-your-answers/query-check-your-answers.component.d.ts +1 -1
  480. package/lib/shared/components/palette/query-management/components/query-details/query-details.component.d.ts +1 -1
  481. package/lib/shared/components/palette/query-management/components/query-event-completion/query-event-completion.component.d.ts +1 -1
  482. package/lib/shared/components/palette/query-management/components/query-list/query-list.component.d.ts +1 -1
  483. package/lib/shared/components/palette/query-management/components/query-write/query-write-add-documents/query-write-add-documents.component.d.ts +1 -1
  484. package/lib/shared/components/palette/query-management/components/query-write/query-write-date-input/query-write-date-input.component.d.ts +1 -1
  485. package/lib/shared/components/palette/query-management/components/query-write/query-write-raise-query/query-write-raise-query.component.d.ts +1 -1
  486. package/lib/shared/components/palette/query-management/components/query-write/query-write-respond-to-query/query-write-respond-to-query.component.d.ts +1 -1
  487. package/lib/shared/components/palette/query-management/models/qualifying-questions/casetype-qualifying-questions.model.d.ts +1 -1
  488. package/lib/shared/components/palette/query-management/models/qualifying-questions/casetype-qualifying-questions.model.d.ts.map +1 -1
  489. package/lib/shared/components/search-filters/search-filters-wrapper.component.d.ts +1 -1
  490. package/lib/shared/components/search-filters/search-filters.component.d.ts +1 -1
  491. package/lib/shared/components/search-result/search-result.component.d.ts +1 -1
  492. package/lib/shared/components/workbasket-filters/workbasket-filters.component.d.ts +1 -1
  493. package/lib/shared/directives/conditional-show/conditional-show-form.directive.d.ts +1 -1
  494. package/lib/shared/directives/substitutor/label-substitutor.directive.d.ts +1 -1
  495. package/lib/shared/domain/alert/alert-level.model.d.ts +1 -1
  496. package/lib/shared/domain/alert/alert-level.model.d.ts.map +1 -1
  497. package/lib/shared/domain/case-view/access-types.model.d.ts +1 -1
  498. package/lib/shared/domain/case-view/access-types.model.d.ts.map +1 -1
  499. package/lib/shared/domain/case-view/role-request.model.d.ts +4 -4
  500. package/lib/shared/domain/case-view/role-request.model.d.ts.map +1 -1
  501. package/lib/shared/domain/definition/field-type-enum.model.d.ts +1 -1
  502. package/lib/shared/domain/definition/field-type-enum.model.d.ts.map +1 -1
  503. package/lib/shared/domain/predicate.model.d.ts +1 -1
  504. package/lib/shared/domain/predicate.model.d.ts.map +1 -1
  505. package/lib/shared/pipes/complex/fields-filter.pipe.d.ts.map +1 -1
  506. package/lib/shared/services/error/error-notifier.service.d.ts.map +1 -1
  507. package/lib/shared/services/order/order.service.d.ts +2 -2
  508. package/lib/shared/services/order/order.service.d.ts.map +1 -1
  509. package/lib/shared/services/request/request.options.builder.d.ts +1 -1
  510. package/lib/shared/services/request/request.options.builder.d.ts.map +1 -1
  511. package/package.json +12 -6
  512. package/esm2022/lib/app.config.mjs +0 -93
  513. package/esm2022/lib/components/banners/alert/alert-icon-class.pipe.mjs +0 -25
  514. package/esm2022/lib/components/banners/alert/alert.component.mjs +0 -92
  515. package/esm2022/lib/components/banners/alert/alert.module.mjs +0 -32
  516. package/esm2022/lib/components/banners/banners.module.mjs +0 -32
  517. package/esm2022/lib/components/banners/notification-banner/notification-banner.component.mjs +0 -116
  518. package/esm2022/lib/components/banners/notification-banner/notification-banner.module.mjs +0 -19
  519. package/esm2022/lib/components/body/body.component.mjs +0 -21
  520. package/esm2022/lib/components/body/body.module.mjs +0 -20
  521. package/esm2022/lib/components/footer/footer.component.mjs +0 -109
  522. package/esm2022/lib/components/footer/footers.module.mjs +0 -25
  523. package/esm2022/lib/components/form/date-input/date-input.component.mjs +0 -341
  524. package/esm2022/lib/components/form/form.module.mjs +0 -29
  525. package/esm2022/lib/components/header/header-bar/header-bar.component.mjs +0 -98
  526. package/esm2022/lib/components/header/headers.module.mjs +0 -25
  527. package/esm2022/lib/components/header/navigation/navigation-item.component.mjs +0 -45
  528. package/esm2022/lib/components/header/navigation/navigation.component.mjs +0 -26
  529. package/esm2022/lib/components/header/phase/phase.component.mjs +0 -49
  530. package/esm2022/lib/components/tabs/tab.component.mjs +0 -32
  531. package/esm2022/lib/components/tabs/tabs.component.mjs +0 -83
  532. package/esm2022/lib/components/tabs/tabs.module.mjs +0 -38
  533. package/esm2022/lib/shared/commons/address-validation-constants.mjs +0 -13
  534. package/esm2022/lib/shared/commons/case-edit-data/case-edit-data.module.mjs +0 -19
  535. package/esm2022/lib/shared/commons/case-edit-data/case-edit-data.service.mjs +0 -46
  536. package/esm2022/lib/shared/commons/constants.mjs +0 -13
  537. package/esm2022/lib/shared/components/activity/activity-banner/activity-banner.component.mjs +0 -43
  538. package/esm2022/lib/shared/components/activity/activity-icon/activity-icon.component.mjs +0 -36
  539. package/esm2022/lib/shared/components/activity/activity.component.mjs +0 -156
  540. package/esm2022/lib/shared/components/activity/activity.module.mjs +0 -55
  541. package/esm2022/lib/shared/components/case-editor/case-access-utils/index.mjs +0 -105
  542. package/esm2022/lib/shared/components/case-editor/case-create/case-create.component.mjs +0 -96
  543. package/esm2022/lib/shared/components/case-editor/case-edit/case-edit.component.mjs +0 -464
  544. package/esm2022/lib/shared/components/case-editor/case-edit-confirm/case-edit-confirm.component.mjs +0 -130
  545. package/esm2022/lib/shared/components/case-editor/case-edit-form/case-edit-form.component.mjs +0 -140
  546. package/esm2022/lib/shared/components/case-editor/case-edit-generic-errors/case-edit-generic-errors.component.mjs +0 -70
  547. package/esm2022/lib/shared/components/case-editor/case-edit-page/case-edit-page.component.mjs +0 -806
  548. package/esm2022/lib/shared/components/case-editor/case-edit-submit/case-edit-submit.component.mjs +0 -603
  549. package/esm2022/lib/shared/components/case-editor/case-editor.module.mjs +0 -214
  550. package/esm2022/lib/shared/components/case-editor/case-event-completion/case-event-completion.component.mjs +0 -97
  551. package/esm2022/lib/shared/components/case-editor/case-event-completion/components/case-event-completion-task-cancelled/case-event-completion-task-cancelled.component.mjs +0 -83
  552. package/esm2022/lib/shared/components/case-editor/case-event-completion/components/case-event-completion-task-reassigned/case-event-completion-task-reassigned.component.mjs +0 -167
  553. package/esm2022/lib/shared/components/case-editor/case-progress/case-progress.component.mjs +0 -85
  554. package/esm2022/lib/shared/components/case-editor/domain/confirmation.model.mjs +0 -25
  555. package/esm2022/lib/shared/components/case-editor/domain/wizard-page-field-complex-override.model.mjs +0 -9
  556. package/esm2022/lib/shared/components/case-editor/domain/wizard-page-field.model.mjs +0 -7
  557. package/esm2022/lib/shared/components/case-editor/domain/wizard-page.model.mjs +0 -33
  558. package/esm2022/lib/shared/components/case-editor/domain/wizard.model.mjs +0 -55
  559. package/esm2022/lib/shared/components/case-editor/services/case-edit-wizard.guard.mjs +0 -98
  560. package/esm2022/lib/shared/components/case-editor/services/case-flag-state.service.mjs +0 -19
  561. package/esm2022/lib/shared/components/case-editor/services/case-worker.service.mjs +0 -35
  562. package/esm2022/lib/shared/components/case-editor/services/case.notifier.mjs +0 -53
  563. package/esm2022/lib/shared/components/case-editor/services/cases.service.mjs +0 -300
  564. package/esm2022/lib/shared/components/case-editor/services/convert-href-to-router.service.mjs +0 -42
  565. package/esm2022/lib/shared/components/case-editor/services/event-completion-state-machine.service.mjs +0 -153
  566. package/esm2022/lib/shared/components/case-editor/services/event-trigger.service.mjs +0 -18
  567. package/esm2022/lib/shared/components/case-editor/services/judicial-worker.service.mjs +0 -35
  568. package/esm2022/lib/shared/components/case-editor/services/page-validation.service.mjs +0 -59
  569. package/esm2022/lib/shared/components/case-editor/services/valid-page-list-caseFields.service.mjs +0 -40
  570. package/esm2022/lib/shared/components/case-editor/services/wizard-page-field-to-case-field.mapper.mjs +0 -117
  571. package/esm2022/lib/shared/components/case-editor/services/work-allocation.service.mjs +0 -220
  572. package/esm2022/lib/shared/components/case-header/case-header.component.mjs +0 -64
  573. package/esm2022/lib/shared/components/case-header/case-header.module.mjs +0 -33
  574. package/esm2022/lib/shared/components/case-history/case-history.component.mjs +0 -252
  575. package/esm2022/lib/shared/components/case-history/case-history.module.mjs +0 -64
  576. package/esm2022/lib/shared/components/case-history/domain/case-history.model.mjs +0 -37
  577. package/esm2022/lib/shared/components/case-history/services/case-history.service.mjs +0 -43
  578. package/esm2022/lib/shared/components/case-list/case-list.component.mjs +0 -368
  579. package/esm2022/lib/shared/components/case-list/case-list.module.mjs +0 -47
  580. package/esm2022/lib/shared/components/case-list-filters/case-list-filters.component.mjs +0 -57
  581. package/esm2022/lib/shared/components/case-list-filters/case-list-filters.module.mjs +0 -64
  582. package/esm2022/lib/shared/components/case-timeline/case-timeline.component.mjs +0 -115
  583. package/esm2022/lib/shared/components/case-timeline/case-timeline.module.mjs +0 -52
  584. package/esm2022/lib/shared/components/case-viewer/case-basic-access-view/case-basic-access-view.component.mjs +0 -246
  585. package/esm2022/lib/shared/components/case-viewer/case-challenged-access-request/case-challenged-access-request.component.mjs +0 -311
  586. package/esm2022/lib/shared/components/case-viewer/case-challenged-access-success/case-challenged-access-success.component.mjs +0 -75
  587. package/esm2022/lib/shared/components/case-viewer/case-event-trigger/case-event-trigger.component.mjs +0 -156
  588. package/esm2022/lib/shared/components/case-viewer/case-full-access-view/case-full-access-view.component.mjs +0 -707
  589. package/esm2022/lib/shared/components/case-viewer/case-review-specific-access-reject/case-review-specific-access-reject.component.mjs +0 -61
  590. package/esm2022/lib/shared/components/case-viewer/case-review-specific-access-request/case-review-specific-access-request.component.mjs +0 -256
  591. package/esm2022/lib/shared/components/case-viewer/case-specific-access-request/case-specific-access-request.component.mjs +0 -211
  592. package/esm2022/lib/shared/components/case-viewer/case-specific-access-success/case-specific-access-success.component.mjs +0 -50
  593. package/esm2022/lib/shared/components/case-viewer/case-view/case-view.component.mjs +0 -107
  594. package/esm2022/lib/shared/components/case-viewer/case-viewer.component.mjs +0 -133
  595. package/esm2022/lib/shared/components/case-viewer/case-viewer.module.mjs +0 -191
  596. package/esm2022/lib/shared/components/case-viewer/printer/case-printer.component.mjs +0 -117
  597. package/esm2022/lib/shared/components/case-viewer/printer/pipes/print-url.pipe.mjs +0 -61
  598. package/esm2022/lib/shared/components/case-viewer/services/case.resolver.mjs +0 -138
  599. package/esm2022/lib/shared/components/case-viewer/services/event-trigger.resolver.mjs +0 -70
  600. package/esm2022/lib/shared/components/create-case-filters/create-case-filters-selection.model.mjs +0 -11
  601. package/esm2022/lib/shared/components/create-case-filters/create-case-filters.component.mjs +0 -289
  602. package/esm2022/lib/shared/components/create-case-filters/create-case-filters.module.mjs +0 -44
  603. package/esm2022/lib/shared/components/dialogs/delete-or-cancel-dialog/delete-or-cancel-dialog.component.mjs +0 -60
  604. package/esm2022/lib/shared/components/dialogs/dialogs.module.mjs +0 -51
  605. package/esm2022/lib/shared/components/dialogs/document-dialog/document-dialog.component.mjs +0 -62
  606. package/esm2022/lib/shared/components/dialogs/remove-dialog/remove-dialog.component.mjs +0 -60
  607. package/esm2022/lib/shared/components/dialogs/save-or-discard-dialog/save-or-discard-dialog.component.mjs +0 -64
  608. package/esm2022/lib/shared/components/error/callback-errors.component.mjs +0 -146
  609. package/esm2022/lib/shared/components/error/domain/error-context.mjs +0 -5
  610. package/esm2022/lib/shared/components/error/errors.module.mjs +0 -33
  611. package/esm2022/lib/shared/components/error-message/error-message.component.mjs +0 -45
  612. package/esm2022/lib/shared/components/error-message/error-message.module.mjs +0 -41
  613. package/esm2022/lib/shared/components/event-start/components/multiple-tasks-exist/multiple-tasks-exist.component.mjs +0 -62
  614. package/esm2022/lib/shared/components/event-start/components/no-tasks-available/no-tasks-available.component.mjs +0 -56
  615. package/esm2022/lib/shared/components/event-start/components/task-assigned/task-assigned.component.mjs +0 -112
  616. package/esm2022/lib/shared/components/event-start/components/task-cancelled/task-cancelled.component.mjs +0 -70
  617. package/esm2022/lib/shared/components/event-start/components/task-conflict/task-conflict.component.mjs +0 -61
  618. package/esm2022/lib/shared/components/event-start/components/task-unassigned/task-unassigned.component.mjs +0 -56
  619. package/esm2022/lib/shared/components/event-start/event-guard/event-start.guard.mjs +0 -104
  620. package/esm2022/lib/shared/components/event-start/event-start.component.mjs +0 -56
  621. package/esm2022/lib/shared/components/event-start/event-start.module.mjs +0 -71
  622. package/esm2022/lib/shared/components/event-start/resolvers/event-tasks-resolver.service.mjs +0 -31
  623. package/esm2022/lib/shared/components/event-start/services/event-start-state-machine.service.mjs +0 -179
  624. package/esm2022/lib/shared/components/event-trigger/event-trigger.component.mjs +0 -117
  625. package/esm2022/lib/shared/components/event-trigger/event-trigger.module.mjs +0 -37
  626. package/esm2022/lib/shared/components/loading-spinner/loading-spinner.component.mjs +0 -26
  627. package/esm2022/lib/shared/components/loading-spinner/loading-spinner.module.mjs +0 -29
  628. package/esm2022/lib/shared/components/pagination/pagination.component.mjs +0 -260
  629. package/esm2022/lib/shared/components/pagination/pagination.module.mjs +0 -35
  630. package/esm2022/lib/shared/components/palette/address/address-option.model.mjs +0 -23
  631. package/esm2022/lib/shared/components/palette/address/write-address-field.component.mjs +0 -286
  632. package/esm2022/lib/shared/components/palette/base-field/abstract-field-read.component.mjs +0 -30
  633. package/esm2022/lib/shared/components/palette/base-field/abstract-field-write.component.mjs +0 -44
  634. package/esm2022/lib/shared/components/palette/base-field/abstract-form-field.component.mjs +0 -84
  635. package/esm2022/lib/shared/components/palette/base-field/field-read-label.component.mjs +0 -85
  636. package/esm2022/lib/shared/components/palette/base-field/field-read.component.mjs +0 -90
  637. package/esm2022/lib/shared/components/palette/base-field/field-write.component.mjs +0 -78
  638. package/esm2022/lib/shared/components/palette/base-field/payment-field.component.mjs +0 -37
  639. package/esm2022/lib/shared/components/palette/case-file-view/case-file-view-field.component.mjs +0 -181
  640. package/esm2022/lib/shared/components/palette/case-file-view/components/case-file-view-folder/case-file-view-folder-document-actions/case-file-view-folder-document-actions.component.mjs +0 -50
  641. package/esm2022/lib/shared/components/palette/case-file-view/components/case-file-view-folder/case-file-view-folder-sort/case-file-view-folder-sort.component.mjs +0 -51
  642. package/esm2022/lib/shared/components/palette/case-file-view/components/case-file-view-folder/case-file-view-folder.component.mjs +0 -358
  643. package/esm2022/lib/shared/components/palette/case-file-view/components/case-file-view-folder-selector/case-file-view-folder-selector.component.mjs +0 -158
  644. package/esm2022/lib/shared/components/palette/case-file-view/components/shared/case-file-view-overlay-menu/case-file-view-overlay-menu.component.mjs +0 -94
  645. package/esm2022/lib/shared/components/palette/case-flag/components/add-comments/add-comments.component.mjs +0 -190
  646. package/esm2022/lib/shared/components/palette/case-flag/components/case-flag-summary-list/case-flag-summary-list.component.mjs +0 -301
  647. package/esm2022/lib/shared/components/palette/case-flag/components/case-flag-table/case-flag-table.component.mjs +0 -206
  648. package/esm2022/lib/shared/components/palette/case-flag/components/confirm-flag-status/confirm-flag-status.component.mjs +0 -169
  649. package/esm2022/lib/shared/components/palette/case-flag/components/manage-case-flags/manage-case-flags.component.mjs +0 -225
  650. package/esm2022/lib/shared/components/palette/case-flag/components/search-language-interpreter/search-language-interpreter.component.mjs +0 -311
  651. package/esm2022/lib/shared/components/palette/case-flag/components/select-flag-location/select-flag-location.component.mjs +0 -202
  652. package/esm2022/lib/shared/components/palette/case-flag/components/select-flag-type/select-flag-type.component.mjs +0 -353
  653. package/esm2022/lib/shared/components/palette/case-flag/components/update-flag/update-flag-add-translation-form/update-flag-add-translation-form.component.mjs +0 -269
  654. package/esm2022/lib/shared/components/palette/case-flag/components/update-flag/update-flag.component.mjs +0 -510
  655. package/esm2022/lib/shared/components/palette/case-flag/pipes/flag-field-display.pipe.mjs +0 -43
  656. package/esm2022/lib/shared/components/palette/case-flag/pipes/language-interpreter-display.pipe.mjs +0 -43
  657. package/esm2022/lib/shared/components/palette/case-flag/pipes/manage-case-flags-label-display.pipe.mjs +0 -111
  658. package/esm2022/lib/shared/components/palette/case-flag/pipes/update-flag-title-display.pipe.mjs +0 -79
  659. package/esm2022/lib/shared/components/palette/case-flag/read-case-flag-field.component.mjs +0 -253
  660. package/esm2022/lib/shared/components/palette/case-flag/write-case-flag-field.component.mjs +0 -697
  661. package/esm2022/lib/shared/components/palette/case-link/read-case-link-field.component.mjs +0 -33
  662. package/esm2022/lib/shared/components/palette/case-link/write-case-link-field.component.mjs +0 -125
  663. package/esm2022/lib/shared/components/palette/collection/collection-create-checker.service.mjs +0 -42
  664. package/esm2022/lib/shared/components/palette/collection/read-collection-field.component.mjs +0 -78
  665. package/esm2022/lib/shared/components/palette/collection/write-collection-field.component.mjs +0 -447
  666. package/esm2022/lib/shared/components/palette/complex/read-complex-field-collection-table.component.mjs +0 -378
  667. package/esm2022/lib/shared/components/palette/complex/read-complex-field-raw.component.mjs +0 -51
  668. package/esm2022/lib/shared/components/palette/complex/read-complex-field-table.component.mjs +0 -76
  669. package/esm2022/lib/shared/components/palette/complex/read-complex-field.component.mjs +0 -71
  670. package/esm2022/lib/shared/components/palette/complex/write-complex-field.component.mjs +0 -173
  671. package/esm2022/lib/shared/components/palette/date/read-date-field.component.mjs +0 -26
  672. package/esm2022/lib/shared/components/palette/date/write-date-container-field.component.mjs +0 -33
  673. package/esm2022/lib/shared/components/palette/date/write-date-field.component.mjs +0 -77
  674. package/esm2022/lib/shared/components/palette/datetime-picker/datetime-picker.component.mjs +0 -312
  675. package/esm2022/lib/shared/components/palette/document/document-url.pipe.mjs +0 -25
  676. package/esm2022/lib/shared/components/palette/document/file-upload-progress.guard.mjs +0 -31
  677. package/esm2022/lib/shared/components/palette/document/file-upload-state.service.mjs +0 -17
  678. package/esm2022/lib/shared/components/palette/document/read-document-field.component.mjs +0 -88
  679. package/esm2022/lib/shared/components/palette/document/write-document-field.component.mjs +0 -430
  680. package/esm2022/lib/shared/components/palette/dynamic-list/dynamic-list.pipe.mjs +0 -18
  681. package/esm2022/lib/shared/components/palette/dynamic-list/read-dynamic-list-field.component.mjs +0 -37
  682. package/esm2022/lib/shared/components/palette/dynamic-list/write-dynamic-list-field.component.mjs +0 -124
  683. package/esm2022/lib/shared/components/palette/dynamic-multi-select-list/read-dynamic-multi-select-list-field.component.mjs +0 -44
  684. package/esm2022/lib/shared/components/palette/dynamic-multi-select-list/write-dynamic-multi-select-list-field.component.mjs +0 -146
  685. package/esm2022/lib/shared/components/palette/dynamic-radio-list/dynamic-radio-list.pipe.mjs +0 -25
  686. package/esm2022/lib/shared/components/palette/dynamic-radio-list/read-dynamic-radio-list-field.component.mjs +0 -43
  687. package/esm2022/lib/shared/components/palette/dynamic-radio-list/write-dynamic-radio-list-field.component.mjs +0 -123
  688. package/esm2022/lib/shared/components/palette/email/read-email-field.component.mjs +0 -36
  689. package/esm2022/lib/shared/components/palette/email/write-email-field.component.mjs +0 -74
  690. package/esm2022/lib/shared/components/palette/fixed-list/fixed-list.pipe.mjs +0 -23
  691. package/esm2022/lib/shared/components/palette/fixed-list/read-fixed-list-field.component.mjs +0 -27
  692. package/esm2022/lib/shared/components/palette/fixed-list/write-fixed-list-field.component.mjs +0 -107
  693. package/esm2022/lib/shared/components/palette/fixed-radio-list/fixed-radio-list.pipe.mjs +0 -18
  694. package/esm2022/lib/shared/components/palette/fixed-radio-list/read-fixed-radio-list-field.component.mjs +0 -27
  695. package/esm2022/lib/shared/components/palette/fixed-radio-list/write-fixed-radio-list-field.component.mjs +0 -96
  696. package/esm2022/lib/shared/components/palette/history/case-history-viewer-field.component.mjs +0 -17
  697. package/esm2022/lib/shared/components/palette/history/event-log/event-log-details.component.mjs +0 -99
  698. package/esm2022/lib/shared/components/palette/history/event-log/event-log-table.component.mjs +0 -224
  699. package/esm2022/lib/shared/components/palette/history/event-log/event-log.component.mjs +0 -72
  700. package/esm2022/lib/shared/components/palette/judicial-user/read-judicial-user-field.component.mjs +0 -49
  701. package/esm2022/lib/shared/components/palette/judicial-user/write-judicial-user-field.component.mjs +0 -253
  702. package/esm2022/lib/shared/components/palette/label/label-field.component.mjs +0 -50
  703. package/esm2022/lib/shared/components/palette/linked-cases/components/before-you-start/before-you-start.component.mjs +0 -111
  704. package/esm2022/lib/shared/components/palette/linked-cases/components/check-your-answers/check-your-answers.component.mjs +0 -191
  705. package/esm2022/lib/shared/components/palette/linked-cases/components/link-cases/link-cases.component.mjs +0 -543
  706. package/esm2022/lib/shared/components/palette/linked-cases/components/linked-cases-table/linked-cases-from-table.component.mjs +0 -213
  707. package/esm2022/lib/shared/components/palette/linked-cases/components/linked-cases-table/linked-cases-to-table.component.mjs +0 -287
  708. package/esm2022/lib/shared/components/palette/linked-cases/components/no-linked-cases/no-linked-cases.component.mjs +0 -69
  709. package/esm2022/lib/shared/components/palette/linked-cases/components/unlink-cases/unlink-cases.component.mjs +0 -209
  710. package/esm2022/lib/shared/components/palette/linked-cases/domain/linked-cases.model.mjs +0 -67
  711. package/esm2022/lib/shared/components/palette/linked-cases/read-linked-cases-field.component.mjs +0 -168
  712. package/esm2022/lib/shared/components/palette/linked-cases/services/linked-cases.service.mjs +0 -138
  713. package/esm2022/lib/shared/components/palette/linked-cases/utils/validators.utils.mjs +0 -27
  714. package/esm2022/lib/shared/components/palette/linked-cases/write-linked-cases-field.component.mjs +0 -234
  715. package/esm2022/lib/shared/components/palette/markdown/markdown-component.module.mjs +0 -48
  716. package/esm2022/lib/shared/components/palette/markdown/markdown.component.mjs +0 -81
  717. package/esm2022/lib/shared/components/palette/markdown/routerlink.component.mjs +0 -25
  718. package/esm2022/lib/shared/components/palette/money-gbp/money-gbp-input.component.mjs +0 -128
  719. package/esm2022/lib/shared/components/palette/money-gbp/read-money-gbp-field.component.mjs +0 -50
  720. package/esm2022/lib/shared/components/palette/money-gbp/write-money-gbp-field.component.mjs +0 -79
  721. package/esm2022/lib/shared/components/palette/multi-select-list/read-multi-select-list-field.component.mjs +0 -46
  722. package/esm2022/lib/shared/components/palette/multi-select-list/write-multi-select-list-field.component.mjs +0 -126
  723. package/esm2022/lib/shared/components/palette/number/read-number-field.component.mjs +0 -25
  724. package/esm2022/lib/shared/components/palette/number/write-number-field.component.mjs +0 -74
  725. package/esm2022/lib/shared/components/palette/order-summary/fee-value.model.mjs +0 -4
  726. package/esm2022/lib/shared/components/palette/order-summary/fee.model.mjs +0 -8
  727. package/esm2022/lib/shared/components/palette/order-summary/order-summary.model.mjs +0 -6
  728. package/esm2022/lib/shared/components/palette/order-summary/read-order-summary-field.component.mjs +0 -74
  729. package/esm2022/lib/shared/components/palette/order-summary/read-order-summary-row.component.mjs +0 -45
  730. package/esm2022/lib/shared/components/palette/order-summary/write-order-summary-field.component.mjs +0 -45
  731. package/esm2022/lib/shared/components/palette/organisation/read-organisation-field-raw.component.mjs +0 -88
  732. package/esm2022/lib/shared/components/palette/organisation/read-organisation-field-table.component.mjs +0 -92
  733. package/esm2022/lib/shared/components/palette/organisation/read-organisation-field.component.mjs +0 -52
  734. package/esm2022/lib/shared/components/palette/organisation/write-organisation-complex-field.component.mjs +0 -35
  735. package/esm2022/lib/shared/components/palette/organisation/write-organisation-field.component.mjs +0 -397
  736. package/esm2022/lib/shared/components/palette/palette.module.mjs +0 -736
  737. package/esm2022/lib/shared/components/palette/palette.service.mjs +0 -153
  738. package/esm2022/lib/shared/components/palette/payment/case-payment-history-viewer-field.component.mjs +0 -25
  739. package/esm2022/lib/shared/components/palette/phone-uk/read-phone-uk-field.component.mjs +0 -23
  740. package/esm2022/lib/shared/components/palette/phone-uk/write-phone-uk-field.component.mjs +0 -74
  741. package/esm2022/lib/shared/components/palette/query-management/components/qualifying-questions/qualifying-question-detail/qualifying-question-detail.component.mjs +0 -44
  742. package/esm2022/lib/shared/components/palette/query-management/components/qualifying-questions/qualifying-question-options/qualifying-question-options.component.mjs +0 -150
  743. package/esm2022/lib/shared/components/palette/query-management/components/query-attachments-read/query-attachments-read.component.mjs +0 -67
  744. package/esm2022/lib/shared/components/palette/query-management/components/query-case-details-header/query-case-details-header.component.mjs +0 -61
  745. package/esm2022/lib/shared/components/palette/query-management/components/query-check-your-answers/query-check-your-answers.component.mjs +0 -292
  746. package/esm2022/lib/shared/components/palette/query-management/components/query-details/query-details.component.mjs +0 -330
  747. package/esm2022/lib/shared/components/palette/query-management/components/query-event-completion/query-event-completion.component.mjs +0 -24
  748. package/esm2022/lib/shared/components/palette/query-management/components/query-list/query-list.component.mjs +0 -165
  749. package/esm2022/lib/shared/components/palette/query-management/components/query-write/query-write-add-documents/query-write-add-documents.component.mjs +0 -78
  750. package/esm2022/lib/shared/components/palette/query-management/components/query-write/query-write-date-input/query-write-date-input.component.mjs +0 -121
  751. package/esm2022/lib/shared/components/palette/query-management/components/query-write/query-write-raise-query/query-write-raise-query.component.mjs +0 -202
  752. package/esm2022/lib/shared/components/palette/query-management/components/query-write/query-write-respond-to-query/query-write-respond-to-query.component.mjs +0 -107
  753. package/esm2022/lib/shared/components/palette/query-management/models/query-list/query-list-data/query-list-data.model.mjs +0 -24
  754. package/esm2022/lib/shared/components/palette/query-management/models/query-list/query-list-item/query-list-item.model.mjs +0 -45
  755. package/esm2022/lib/shared/components/palette/query-management/read-query-management-field.component.mjs +0 -124
  756. package/esm2022/lib/shared/components/palette/query-management/utils/query-management.utils.mjs +0 -22
  757. package/esm2022/lib/shared/components/palette/text/read-text-field.component.mjs +0 -25
  758. package/esm2022/lib/shared/components/palette/text/write-text-field.component.mjs +0 -78
  759. package/esm2022/lib/shared/components/palette/text-area/read-text-area-field.component.mjs +0 -25
  760. package/esm2022/lib/shared/components/palette/text-area/write-text-area-field.component.mjs +0 -89
  761. package/esm2022/lib/shared/components/palette/unsupported-field.component.mjs +0 -18
  762. package/esm2022/lib/shared/components/palette/utils/dash.pipe.mjs +0 -16
  763. package/esm2022/lib/shared/components/palette/utils/date.pipe.mjs +0 -133
  764. package/esm2022/lib/shared/components/palette/utils/field-label.pipe.mjs +0 -30
  765. package/esm2022/lib/shared/components/palette/utils/first-error.pipe.mjs +0 -65
  766. package/esm2022/lib/shared/components/palette/utils/is-compound.pipe.mjs +0 -43
  767. package/esm2022/lib/shared/components/palette/utils/is-mandatory.pipe.mjs +0 -22
  768. package/esm2022/lib/shared/components/palette/utils/is-read-only-and-not-collection.pipe.mjs +0 -32
  769. package/esm2022/lib/shared/components/palette/utils/is-read-only.pipe.mjs +0 -22
  770. package/esm2022/lib/shared/components/palette/utils/utils.module.mjs +0 -71
  771. package/esm2022/lib/shared/components/palette/waystopay/waystopay-field.component.mjs +0 -35
  772. package/esm2022/lib/shared/components/palette/yes-no/read-yes-no-field.component.mjs +0 -37
  773. package/esm2022/lib/shared/components/palette/yes-no/write-yes-no-field.component.mjs +0 -102
  774. package/esm2022/lib/shared/components/palette/yes-no/yes-no.service.mjs +0 -50
  775. package/esm2022/lib/shared/components/search-filters/domain/search-input.model.mjs +0 -15
  776. package/esm2022/lib/shared/components/search-filters/search-filters-wrapper.component.mjs +0 -63
  777. package/esm2022/lib/shared/components/search-filters/search-filters.component.mjs +0 -341
  778. package/esm2022/lib/shared/components/search-filters/search-filters.module.mjs +0 -71
  779. package/esm2022/lib/shared/components/search-result/search-result.component.mjs +0 -822
  780. package/esm2022/lib/shared/components/search-result/search-result.module.mjs +0 -82
  781. package/esm2022/lib/shared/components/workbasket-filters/workbasket-filters.component.mjs +0 -497
  782. package/esm2022/lib/shared/components/workbasket-filters/workbasket-filters.module.mjs +0 -67
  783. package/esm2022/lib/shared/directives/conditional-show/conditional-show-form.directive.mjs +0 -169
  784. package/esm2022/lib/shared/directives/conditional-show/conditional-show.module.mjs +0 -33
  785. package/esm2022/lib/shared/directives/conditional-show/domain/conditional-show.model.mjs +0 -201
  786. package/esm2022/lib/shared/directives/conditional-show/services/condition-parser.service.mjs +0 -200
  787. package/esm2022/lib/shared/directives/conditional-show/services/conditional-show-registrar.service.mjs +0 -17
  788. package/esm2022/lib/shared/directives/conditional-show/services/grey-bar.service.mjs +0 -48
  789. package/esm2022/lib/shared/directives/focus-element/focus-element.directive.mjs +0 -38
  790. package/esm2022/lib/shared/directives/focus-element/focus-element.module.mjs +0 -21
  791. package/esm2022/lib/shared/directives/substitutor/label-substitutor.directive.mjs +0 -88
  792. package/esm2022/lib/shared/directives/substitutor/label-substitutor.module.mjs +0 -30
  793. package/esm2022/lib/shared/directives/substitutor/services/placeholder.service.mjs +0 -209
  794. package/esm2022/lib/shared/domain/activity/activity.model.mjs +0 -17
  795. package/esm2022/lib/shared/domain/addresses/address.model.mjs +0 -11
  796. package/esm2022/lib/shared/domain/alert/alert.model.mjs +0 -5
  797. package/esm2022/lib/shared/domain/case-details.model.mjs +0 -13
  798. package/esm2022/lib/shared/domain/case-event-data.model.mjs +0 -11
  799. package/esm2022/lib/shared/domain/case-file-view/case-file-view-category.model.mjs +0 -8
  800. package/esm2022/lib/shared/domain/case-file-view/case-file-view-document.model.mjs +0 -10
  801. package/esm2022/lib/shared/domain/case-file-view/categories-and-documents.model.mjs +0 -10
  802. package/esm2022/lib/shared/domain/case-file-view/document-tree-node/document-tree-node.model.mjs +0 -125
  803. package/esm2022/lib/shared/domain/case-flag/flag-type.model.mjs +0 -37
  804. package/esm2022/lib/shared/domain/case-flag/hmcts-service-detail.model.mjs +0 -18
  805. package/esm2022/lib/shared/domain/case-view/case-event-trigger.model.mjs +0 -34
  806. package/esm2022/lib/shared/domain/case-view/case-print-document.model.mjs +0 -6
  807. package/esm2022/lib/shared/domain/case-view/case-tab.model.mjs +0 -17
  808. package/esm2022/lib/shared/domain/case-view/case-view-event.model.mjs +0 -16
  809. package/esm2022/lib/shared/domain/case-view/case-view-trigger.model.mjs +0 -7
  810. package/esm2022/lib/shared/domain/case-view/case-view.model.mjs +0 -27
  811. package/esm2022/lib/shared/domain/definition/access-control-list.model.mjs +0 -8
  812. package/esm2022/lib/shared/domain/definition/banner.model.mjs +0 -8
  813. package/esm2022/lib/shared/domain/definition/case-event.model.mjs +0 -11
  814. package/esm2022/lib/shared/domain/definition/case-field.model.mjs +0 -218
  815. package/esm2022/lib/shared/domain/definition/case-state.model.mjs +0 -7
  816. package/esm2022/lib/shared/domain/definition/case-type-lite.model.mjs +0 -10
  817. package/esm2022/lib/shared/domain/definition/case-type.model.mjs +0 -20
  818. package/esm2022/lib/shared/domain/definition/event-case-field.model.mjs +0 -6
  819. package/esm2022/lib/shared/domain/definition/field-type.model.mjs +0 -30
  820. package/esm2022/lib/shared/domain/definition/fixed-list-item.model.mjs +0 -6
  821. package/esm2022/lib/shared/domain/definition/jurisdiction.model.mjs +0 -8
  822. package/esm2022/lib/shared/domain/document/document-data.model.mjs +0 -28
  823. package/esm2022/lib/shared/domain/draft.model.mjs +0 -16
  824. package/esm2022/lib/shared/domain/http/http-error.model.mjs +0 -49
  825. package/esm2022/lib/shared/domain/organisation/organisation-converter.mjs +0 -42
  826. package/esm2022/lib/shared/domain/pagination-metadata.model.mjs +0 -5
  827. package/esm2022/lib/shared/domain/profile/profile.model.mjs +0 -33
  828. package/esm2022/lib/shared/domain/search/field.model.mjs +0 -17
  829. package/esm2022/lib/shared/domain/search/search-result-view-column.model.mjs +0 -9
  830. package/esm2022/lib/shared/domain/search/search-result-view-item.model.mjs +0 -18
  831. package/esm2022/lib/shared/domain/search/search-result-view.model.mjs +0 -26
  832. package/esm2022/lib/shared/domain/search/sorting/sort-parameters.mjs +0 -9
  833. package/esm2022/lib/shared/domain/workbasket/workbasket-input.model.mjs +0 -11
  834. package/esm2022/lib/shared/fixture/case-field-builder.mjs +0 -67
  835. package/esm2022/lib/shared/pipes/case-reference/case-reference.pipe.mjs +0 -33
  836. package/esm2022/lib/shared/pipes/case-title/ccd-case-title.pipe.mjs +0 -31
  837. package/esm2022/lib/shared/pipes/complex/ccd-collection-table-value-case-fields.pipe.mjs +0 -32
  838. package/esm2022/lib/shared/pipes/complex/ccd-cyapage-label-filter.pipe.mjs +0 -27
  839. package/esm2022/lib/shared/pipes/complex/ccd-page-fields.pipe.mjs +0 -39
  840. package/esm2022/lib/shared/pipes/complex/ccd-read-fields-filter.pipe.mjs +0 -173
  841. package/esm2022/lib/shared/pipes/complex/ccd-tab-fields.pipe.mjs +0 -31
  842. package/esm2022/lib/shared/pipes/complex/fields-filter.pipe.mjs +0 -105
  843. package/esm2022/lib/shared/pipes/generic/enum-display-description/enum-display-description.pipe.mjs +0 -16
  844. package/esm2022/lib/shared/pipes/link-cases-from-reason-code/ccd-link-cases-from-reason-code.pipe.mjs +0 -28
  845. package/esm2022/lib/shared/pipes/link-cases-reason-code/ccd-link-cases-reason-code.pipe.mjs +0 -28
  846. package/esm2022/lib/shared/pipes/pipes.module.mjs +0 -64
  847. package/esm2022/lib/shared/pipes/search-result/sorting/sort-search-result.pipe.mjs +0 -24
  848. package/esm2022/lib/shared/services/activity/activity.polling.service.mjs +0 -122
  849. package/esm2022/lib/shared/services/activity/activity.service.mjs +0 -85
  850. package/esm2022/lib/shared/services/addresses/address-parser.mjs +0 -76
  851. package/esm2022/lib/shared/services/addresses/addresses.service.mjs +0 -65
  852. package/esm2022/lib/shared/services/alert/alert.service.mjs +0 -157
  853. package/esm2022/lib/shared/services/auth/auth.service.mjs +0 -35
  854. package/esm2022/lib/shared/services/banners/banners.service.mjs +0 -35
  855. package/esm2022/lib/shared/services/browser/browser.service.mjs +0 -24
  856. package/esm2022/lib/shared/services/case-fields/case-field.service.mjs +0 -34
  857. package/esm2022/lib/shared/services/case-fields/format-translator.service.mjs +0 -242
  858. package/esm2022/lib/shared/services/case-file-view/case-file-view.service.mjs +0 -48
  859. package/esm2022/lib/shared/services/case-flag/case-flag-refdata.service.mjs +0 -104
  860. package/esm2022/lib/shared/services/common-data-service/common-data-service.mjs +0 -29
  861. package/esm2022/lib/shared/services/definitions/definitions.module.mjs +0 -19
  862. package/esm2022/lib/shared/services/definitions/definitions.service.mjs +0 -32
  863. package/esm2022/lib/shared/services/document-management/document-management.service.mjs +0 -114
  864. package/esm2022/lib/shared/services/draft/draft.service.mjs +0 -89
  865. package/esm2022/lib/shared/services/error/error-notifier.service.mjs +0 -16
  866. package/esm2022/lib/shared/services/eventStatusService/event-status.service.mjs +0 -21
  867. package/esm2022/lib/shared/services/fields/fields.purger.mjs +0 -305
  868. package/esm2022/lib/shared/services/fields/fields.utils.mjs +0 -615
  869. package/esm2022/lib/shared/services/form/field-type-sanitiser.mjs +0 -102
  870. package/esm2022/lib/shared/services/form/form-error.service.mjs +0 -46
  871. package/esm2022/lib/shared/services/form/form-validators.service.mjs +0 -82
  872. package/esm2022/lib/shared/services/form/form-value.service.mjs +0 -552
  873. package/esm2022/lib/shared/services/http/http-error.service.mjs +0 -67
  874. package/esm2022/lib/shared/services/http/http.service.mjs +0 -95
  875. package/esm2022/lib/shared/services/jurisdiction/jurisdiction.service.mjs +0 -35
  876. package/esm2022/lib/shared/services/loading/loading.module.mjs +0 -22
  877. package/esm2022/lib/shared/services/loading/loading.service.mjs +0 -31
  878. package/esm2022/lib/shared/services/navigation/navigation-notifier.service.mjs +0 -16
  879. package/esm2022/lib/shared/services/order/order.service.mjs +0 -37
  880. package/esm2022/lib/shared/services/organisation/organisation.service.mjs +0 -57
  881. package/esm2022/lib/shared/services/profile/profile.notifier.mjs +0 -17
  882. package/esm2022/lib/shared/services/profile/profile.service.mjs +0 -36
  883. package/esm2022/lib/shared/services/request/request.options.builder.mjs +0 -61
  884. package/esm2022/lib/shared/services/router/router-helper.service.mjs +0 -20
  885. package/esm2022/lib/shared/services/search/search.service.mjs +0 -96
  886. package/esm2022/lib/shared/services/search-result/sorting/search-result-view-item-comparator-factory.mjs +0 -71
  887. package/esm2022/lib/shared/services/session/session-storage.service.mjs +0 -34
  888. package/esm2022/lib/shared/services/utils/retry/retry.service.mjs +0 -87
  889. package/esm2022/lib/shared/services/window/window.service.mjs +0 -40
  890. package/esm2022/lib/shared/services/workbasket/workbasket-input-filter.service.mjs +0 -57
  891. package/esm2022/lib/shared/test/test-route-snapshot-builder.mjs +0 -38
  892. package/fesm2022/hmcts-ccd-case-ui-toolkit.mjs +0 -37101
  893. package/fesm2022/hmcts-ccd-case-ui-toolkit.mjs.map +0 -1
  894. /package/{esm2022 → esm2020}/hmcts-ccd-case-ui-toolkit.mjs +0 -0
  895. /package/{esm2022 → esm2020}/lib/components/banners/alert/index.mjs +0 -0
  896. /package/{esm2022 → esm2020}/lib/components/banners/index.mjs +0 -0
  897. /package/{esm2022 → esm2020}/lib/components/banners/notification-banner/domain/index.mjs +0 -0
  898. /package/{esm2022 → esm2020}/lib/components/banners/notification-banner/domain/notification-banner-config.model.mjs +0 -0
  899. /package/{esm2022 → esm2020}/lib/components/banners/notification-banner/enums/index.mjs +0 -0
  900. /package/{esm2022 → esm2020}/lib/components/banners/notification-banner/enums/notification-banner-style.enum.mjs +0 -0
  901. /package/{esm2022 → esm2020}/lib/components/banners/notification-banner/enums/notification-banner-type.enum.mjs +0 -0
  902. /package/{esm2022 → esm2020}/lib/components/banners/notification-banner/index.mjs +0 -0
  903. /package/{esm2022 → esm2020}/lib/components/body/index.mjs +0 -0
  904. /package/{esm2022 → esm2020}/lib/components/footer/index.mjs +0 -0
  905. /package/{esm2022 → esm2020}/lib/components/form/date-input/index.mjs +0 -0
  906. /package/{esm2022 → esm2020}/lib/components/form/index.mjs +0 -0
  907. /package/{esm2022 → esm2020}/lib/components/header/header-bar/index.mjs +0 -0
  908. /package/{esm2022 → esm2020}/lib/components/header/index.mjs +0 -0
  909. /package/{esm2022 → esm2020}/lib/components/header/navigation/index.mjs +0 -0
  910. /package/{esm2022 → esm2020}/lib/components/header/phase/index.mjs +0 -0
  911. /package/{esm2022 → esm2020}/lib/components/index.mjs +0 -0
  912. /package/{esm2022 → esm2020}/lib/components/tabs/index.mjs +0 -0
  913. /package/{esm2022 → esm2020}/lib/shared/commons/case-edit-data/case-edit-validation.model.mjs +0 -0
  914. /package/{esm2022 → esm2020}/lib/shared/commons/case-edit-data/index.mjs +0 -0
  915. /package/{esm2022 → esm2020}/lib/shared/components/activity/activity-banner/index.mjs +0 -0
  916. /package/{esm2022 → esm2020}/lib/shared/components/activity/activity-icon/index.mjs +0 -0
  917. /package/{esm2022 → esm2020}/lib/shared/components/activity/index.mjs +0 -0
  918. /package/{esm2022 → esm2020}/lib/shared/components/case-editor/case-create/index.mjs +0 -0
  919. /package/{esm2022 → esm2020}/lib/shared/components/case-editor/case-edit/index.mjs +0 -0
  920. /package/{esm2022 → esm2020}/lib/shared/components/case-editor/case-edit-confirm/index.mjs +0 -0
  921. /package/{esm2022 → esm2020}/lib/shared/components/case-editor/case-edit-form/index.mjs +0 -0
  922. /package/{esm2022 → esm2020}/lib/shared/components/case-editor/case-edit-page/index.mjs +0 -0
  923. /package/{esm2022 → esm2020}/lib/shared/components/case-editor/case-edit-submit/case-edit-submit-titles.enum.mjs +0 -0
  924. /package/{esm2022 → esm2020}/lib/shared/components/case-editor/case-edit-submit/index.mjs +0 -0
  925. /package/{esm2022 → esm2020}/lib/shared/components/case-editor/case-event-completion/index.mjs +0 -0
  926. /package/{esm2022 → esm2020}/lib/shared/components/case-editor/case-progress/index.mjs +0 -0
  927. /package/{esm2022 → esm2020}/lib/shared/components/case-editor/domain/event-completion-params.model.mjs +0 -0
  928. /package/{esm2022 → esm2020}/lib/shared/components/case-editor/domain/event-completion-portal-types.model.mjs +0 -0
  929. /package/{esm2022 → esm2020}/lib/shared/components/case-editor/domain/event-completion-return-states.enum.model.mjs +0 -0
  930. /package/{esm2022 → esm2020}/lib/shared/components/case-editor/domain/event-completion-state-machine-context.model.mjs +0 -0
  931. /package/{esm2022 → esm2020}/lib/shared/components/case-editor/domain/event-completion-states.enum.model.mjs +0 -0
  932. /package/{esm2022 → esm2020}/lib/shared/components/case-editor/domain/index.mjs +0 -0
  933. /package/{esm2022 → esm2020}/lib/shared/components/case-editor/editor.routing.mjs +0 -0
  934. /package/{esm2022 → esm2020}/lib/shared/components/case-editor/index.mjs +0 -0
  935. /package/{esm2022 → esm2020}/lib/shared/components/case-editor/services/index.mjs +0 -0
  936. /package/{esm2022 → esm2020}/lib/shared/components/case-editor/services/wizard-factory.service.mjs +0 -0
  937. /package/{esm2022 → esm2020}/lib/shared/components/case-header/index.mjs +0 -0
  938. /package/{esm2022 → esm2020}/lib/shared/components/case-history/index.mjs +0 -0
  939. /package/{esm2022 → esm2020}/lib/shared/components/case-list/index.mjs +0 -0
  940. /package/{esm2022 → esm2020}/lib/shared/components/case-list-filters/index.mjs +0 -0
  941. /package/{esm2022 → esm2020}/lib/shared/components/case-timeline/index.mjs +0 -0
  942. /package/{esm2022 → esm2020}/lib/shared/components/case-viewer/case-basic-access-view/index.mjs +0 -0
  943. /package/{esm2022 → esm2020}/lib/shared/components/case-viewer/case-challenged-access-request/index.mjs +0 -0
  944. /package/{esm2022 → esm2020}/lib/shared/components/case-viewer/case-challenged-access-request/models/case-challenged-access-request.enum.mjs +0 -0
  945. /package/{esm2022 → esm2020}/lib/shared/components/case-viewer/case-challenged-access-request/models/index.mjs +0 -0
  946. /package/{esm2022 → esm2020}/lib/shared/components/case-viewer/case-challenged-access-success/index.mjs +0 -0
  947. /package/{esm2022 → esm2020}/lib/shared/components/case-viewer/case-event-trigger/index.mjs +0 -0
  948. /package/{esm2022 → esm2020}/lib/shared/components/case-viewer/case-full-access-view/index.mjs +0 -0
  949. /package/{esm2022 → esm2020}/lib/shared/components/case-viewer/case-review-specific-access-reject/index.mjs +0 -0
  950. /package/{esm2022 → esm2020}/lib/shared/components/case-viewer/case-review-specific-access-request/index.mjs +0 -0
  951. /package/{esm2022 → esm2020}/lib/shared/components/case-viewer/case-review-specific-access-request/models/case-review-specific-access-request.enum.mjs +0 -0
  952. /package/{esm2022 → esm2020}/lib/shared/components/case-viewer/case-review-specific-access-request/models/index.mjs +0 -0
  953. /package/{esm2022 → esm2020}/lib/shared/components/case-viewer/case-specific-access-request/index.mjs +0 -0
  954. /package/{esm2022 → esm2020}/lib/shared/components/case-viewer/case-specific-access-request/models/case-specific-access-request.enum.mjs +0 -0
  955. /package/{esm2022 → esm2020}/lib/shared/components/case-viewer/case-specific-access-request/models/index.mjs +0 -0
  956. /package/{esm2022 → esm2020}/lib/shared/components/case-viewer/case-specific-access-success/index.mjs +0 -0
  957. /package/{esm2022 → esm2020}/lib/shared/components/case-viewer/case-view/index.mjs +0 -0
  958. /package/{esm2022 → esm2020}/lib/shared/components/case-viewer/index.mjs +0 -0
  959. /package/{esm2022 → esm2020}/lib/shared/components/case-viewer/printer/index.mjs +0 -0
  960. /package/{esm2022 → esm2020}/lib/shared/components/case-viewer/printer/pipes/index.mjs +0 -0
  961. /package/{esm2022 → esm2020}/lib/shared/components/case-viewer/services/index.mjs +0 -0
  962. /package/{esm2022 → esm2020}/lib/shared/components/case-viewer/viewer.routing.mjs +0 -0
  963. /package/{esm2022 → esm2020}/lib/shared/components/create-case-filters/index.mjs +0 -0
  964. /package/{esm2022 → esm2020}/lib/shared/components/dialogs/delete-or-cancel-dialog/index.mjs +0 -0
  965. /package/{esm2022 → esm2020}/lib/shared/components/dialogs/document-dialog/index.mjs +0 -0
  966. /package/{esm2022 → esm2020}/lib/shared/components/dialogs/index.mjs +0 -0
  967. /package/{esm2022 → esm2020}/lib/shared/components/dialogs/remove-dialog/index.mjs +0 -0
  968. /package/{esm2022 → esm2020}/lib/shared/components/dialogs/save-or-discard-dialog/index.mjs +0 -0
  969. /package/{esm2022 → esm2020}/lib/shared/components/error/domain/index.mjs +0 -0
  970. /package/{esm2022 → esm2020}/lib/shared/components/error/index.mjs +0 -0
  971. /package/{esm2022 → esm2020}/lib/shared/components/error-message/index.mjs +0 -0
  972. /package/{esm2022 → esm2020}/lib/shared/components/event-start/index.mjs +0 -0
  973. /package/{esm2022 → esm2020}/lib/shared/components/event-start/models/event-start-state-machine-context.model.mjs +0 -0
  974. /package/{esm2022 → esm2020}/lib/shared/components/event-start/models/event-start-states-enum.model.mjs +0 -0
  975. /package/{esm2022 → esm2020}/lib/shared/components/event-start/models/index.mjs +0 -0
  976. /package/{esm2022 → esm2020}/lib/shared/components/event-start/services/index.mjs +0 -0
  977. /package/{esm2022 → esm2020}/lib/shared/components/event-trigger/index.mjs +0 -0
  978. /package/{esm2022 → esm2020}/lib/shared/components/helpers/index.mjs +0 -0
  979. /package/{esm2022 → esm2020}/lib/shared/components/helpers/init-dialog-helper.mjs +0 -0
  980. /package/{esm2022 → esm2020}/lib/shared/components/index.mjs +0 -0
  981. /package/{esm2022 → esm2020}/lib/shared/components/loading-spinner/index.mjs +0 -0
  982. /package/{esm2022 → esm2020}/lib/shared/components/pagination/index.mjs +0 -0
  983. /package/{esm2022 → esm2020}/lib/shared/components/palette/address/index.mjs +0 -0
  984. /package/{esm2022 → esm2020}/lib/shared/components/palette/base-field/index.mjs +0 -0
  985. /package/{esm2022 → esm2020}/lib/shared/components/palette/base-field/palette-context.enum.mjs +0 -0
  986. /package/{esm2022 → esm2020}/lib/shared/components/palette/case-file-view/components/index.mjs +0 -0
  987. /package/{esm2022 → esm2020}/lib/shared/components/palette/case-file-view/components/shared/case-file-view-overlay-menu/case-file-view-overlay-menu-item.model.mjs +0 -0
  988. /package/{esm2022 → esm2020}/lib/shared/components/palette/case-file-view/components/shared/index.mjs +0 -0
  989. /package/{esm2022 → esm2020}/lib/shared/components/palette/case-file-view/index.mjs +0 -0
  990. /package/{esm2022 → esm2020}/lib/shared/components/palette/case-file-view/test-data/categories-and-documents-test-data.mjs +0 -0
  991. /package/{esm2022 → esm2020}/lib/shared/components/palette/case-flag/components/index.mjs +0 -0
  992. /package/{esm2022 → esm2020}/lib/shared/components/palette/case-flag/components/search-language-interpreter/search-language-interpreter-control-names.enum.mjs +0 -0
  993. /package/{esm2022 → esm2020}/lib/shared/components/palette/case-flag/domain/case-flag-state.model.mjs +0 -0
  994. /package/{esm2022 → esm2020}/lib/shared/components/palette/case-flag/domain/case-flag.model.mjs +0 -0
  995. /package/{esm2022 → esm2020}/lib/shared/components/palette/case-flag/domain/index.mjs +0 -0
  996. /package/{esm2022 → esm2020}/lib/shared/components/palette/case-flag/domain/language.model.mjs +0 -0
  997. /package/{esm2022 → esm2020}/lib/shared/components/palette/case-flag/enums/add-comments-error-message.enum.mjs +0 -0
  998. /package/{esm2022 → esm2020}/lib/shared/components/palette/case-flag/enums/add-comments-step.enum.mjs +0 -0
  999. /package/{esm2022 → esm2020}/lib/shared/components/palette/case-flag/enums/case-flag-check-your-answers-step.enum.mjs +0 -0
  1000. /package/{esm2022 → esm2020}/lib/shared/components/palette/case-flag/enums/case-flag-display-context-parameter.enum.mjs +0 -0
  1001. /package/{esm2022 → esm2020}/lib/shared/components/palette/case-flag/enums/case-flag-form-fields.enum.mjs +0 -0
  1002. /package/{esm2022 → esm2020}/lib/shared/components/palette/case-flag/enums/case-flag-status.enum.mjs +0 -0
  1003. /package/{esm2022 → esm2020}/lib/shared/components/palette/case-flag/enums/case-flag-summary-list-display-mode.enum.mjs +0 -0
  1004. /package/{esm2022 → esm2020}/lib/shared/components/palette/case-flag/enums/case-flag-wizard-step-title.enum.mjs +0 -0
  1005. /package/{esm2022 → esm2020}/lib/shared/components/palette/case-flag/enums/confirm-status-error-message.enum.mjs +0 -0
  1006. /package/{esm2022 → esm2020}/lib/shared/components/palette/case-flag/enums/confirm-status-step.enum.mjs +0 -0
  1007. /package/{esm2022 → esm2020}/lib/shared/components/palette/case-flag/enums/index.mjs +0 -0
  1008. /package/{esm2022 → esm2020}/lib/shared/components/palette/case-flag/enums/search-language-interpreter-error-message.enum.mjs +0 -0
  1009. /package/{esm2022 → esm2020}/lib/shared/components/palette/case-flag/enums/search-language-interpreter-step.enum.mjs +0 -0
  1010. /package/{esm2022 → esm2020}/lib/shared/components/palette/case-flag/enums/select-flag-error-message.enum.mjs +0 -0
  1011. /package/{esm2022 → esm2020}/lib/shared/components/palette/case-flag/enums/select-flag-location-error-message.enum.mjs +0 -0
  1012. /package/{esm2022 → esm2020}/lib/shared/components/palette/case-flag/enums/select-flag-type-error-message.enum.mjs +0 -0
  1013. /package/{esm2022 → esm2020}/lib/shared/components/palette/case-flag/enums/update-flag-add-translation-error-message.enum.mjs +0 -0
  1014. /package/{esm2022 → esm2020}/lib/shared/components/palette/case-flag/enums/update-flag-add-translation-step.enum.mjs +0 -0
  1015. /package/{esm2022 → esm2020}/lib/shared/components/palette/case-flag/enums/update-flag-error-message.enum.mjs +0 -0
  1016. /package/{esm2022 → esm2020}/lib/shared/components/palette/case-flag/enums/update-flag-step.enum.mjs +0 -0
  1017. /package/{esm2022 → esm2020}/lib/shared/components/palette/case-flag/enums/write-case-flag-field.enum.mjs +0 -0
  1018. /package/{esm2022 → esm2020}/lib/shared/components/palette/case-flag/index.mjs +0 -0
  1019. /package/{esm2022 → esm2020}/lib/shared/components/palette/case-flag/pipes/index.mjs +0 -0
  1020. /package/{esm2022 → esm2020}/lib/shared/components/palette/case-link/index.mjs +0 -0
  1021. /package/{esm2022 → esm2020}/lib/shared/components/palette/collection/index.mjs +0 -0
  1022. /package/{esm2022 → esm2020}/lib/shared/components/palette/complex/index.mjs +0 -0
  1023. /package/{esm2022 → esm2020}/lib/shared/components/palette/complex/sort-order.mjs +0 -0
  1024. /package/{esm2022 → esm2020}/lib/shared/components/palette/date/index.mjs +0 -0
  1025. /package/{esm2022 → esm2020}/lib/shared/components/palette/datetime-picker/datetime-picker-utils.mjs +0 -0
  1026. /package/{esm2022 → esm2020}/lib/shared/components/palette/datetime-picker/index.mjs +0 -0
  1027. /package/{esm2022 → esm2020}/lib/shared/components/palette/document/index.mjs +0 -0
  1028. /package/{esm2022 → esm2020}/lib/shared/components/palette/dynamic-list/index.mjs +0 -0
  1029. /package/{esm2022 → esm2020}/lib/shared/components/palette/dynamic-multi-select-list/index.mjs +0 -0
  1030. /package/{esm2022 → esm2020}/lib/shared/components/palette/dynamic-radio-list/index.mjs +0 -0
  1031. /package/{esm2022 → esm2020}/lib/shared/components/palette/email/index.mjs +0 -0
  1032. /package/{esm2022 → esm2020}/lib/shared/components/palette/fixed-list/index.mjs +0 -0
  1033. /package/{esm2022 → esm2020}/lib/shared/components/palette/fixed-radio-list/index.mjs +0 -0
  1034. /package/{esm2022 → esm2020}/lib/shared/components/palette/history/event-log/index.mjs +0 -0
  1035. /package/{esm2022 → esm2020}/lib/shared/components/palette/history/index.mjs +0 -0
  1036. /package/{esm2022 → esm2020}/lib/shared/components/palette/index.mjs +0 -0
  1037. /package/{esm2022 → esm2020}/lib/shared/components/palette/judicial-user/index.mjs +0 -0
  1038. /package/{esm2022 → esm2020}/lib/shared/components/palette/label/index.mjs +0 -0
  1039. /package/{esm2022 → esm2020}/lib/shared/components/palette/linked-cases/components/index.mjs +0 -0
  1040. /package/{esm2022 → esm2020}/lib/shared/components/palette/linked-cases/domain/index.mjs +0 -0
  1041. /package/{esm2022 → esm2020}/lib/shared/components/palette/linked-cases/domain/linked-cases-state.model.mjs +0 -0
  1042. /package/{esm2022 → esm2020}/lib/shared/components/palette/linked-cases/enums/index.mjs +0 -0
  1043. /package/{esm2022 → esm2020}/lib/shared/components/palette/linked-cases/enums/write-linked-cases-field.enum.mjs +0 -0
  1044. /package/{esm2022 → esm2020}/lib/shared/components/palette/linked-cases/index.mjs +0 -0
  1045. /package/{esm2022 → esm2020}/lib/shared/components/palette/linked-cases/services/index.mjs +0 -0
  1046. /package/{esm2022 → esm2020}/lib/shared/components/palette/markdown/index.mjs +0 -0
  1047. /package/{esm2022 → esm2020}/lib/shared/components/palette/money-gbp/index.mjs +0 -0
  1048. /package/{esm2022 → esm2020}/lib/shared/components/palette/multi-select-list/index.mjs +0 -0
  1049. /package/{esm2022 → esm2020}/lib/shared/components/palette/number/index.mjs +0 -0
  1050. /package/{esm2022 → esm2020}/lib/shared/components/palette/order-summary/index.mjs +0 -0
  1051. /package/{esm2022 → esm2020}/lib/shared/components/palette/organisation/index.mjs +0 -0
  1052. /package/{esm2022 → esm2020}/lib/shared/components/palette/payment/index.mjs +0 -0
  1053. /package/{esm2022 → esm2020}/lib/shared/components/palette/phone-uk/index.mjs +0 -0
  1054. /package/{esm2022 → esm2020}/lib/shared/components/palette/query-management/__mocks__/index.mjs +0 -0
  1055. /package/{esm2022 → esm2020}/lib/shared/components/palette/query-management/components/index.mjs +0 -0
  1056. /package/{esm2022 → esm2020}/lib/shared/components/palette/query-management/enums/index.mjs +0 -0
  1057. /package/{esm2022 → esm2020}/lib/shared/components/palette/query-management/enums/qualifying-questions-error-message.enum.mjs +0 -0
  1058. /package/{esm2022 → esm2020}/lib/shared/components/palette/query-management/enums/query-item-response-status.enum.mjs +0 -0
  1059. /package/{esm2022 → esm2020}/lib/shared/components/palette/query-management/enums/raise-query-error-message.enum.mjs +0 -0
  1060. /package/{esm2022 → esm2020}/lib/shared/components/palette/query-management/enums/respond-to-query-error-messages.enum.mjs +0 -0
  1061. /package/{esm2022 → esm2020}/lib/shared/components/palette/query-management/index.mjs +0 -0
  1062. /package/{esm2022 → esm2020}/lib/shared/components/palette/query-management/models/case-queries-collection.model.mjs +0 -0
  1063. /package/{esm2022 → esm2020}/lib/shared/components/palette/query-management/models/index.mjs +0 -0
  1064. /package/{esm2022 → esm2020}/lib/shared/components/palette/query-management/models/qualifying-questions/casetype-qualifying-questions.model.mjs +0 -0
  1065. /package/{esm2022 → esm2020}/lib/shared/components/palette/query-management/models/qualifying-questions/qualifying-question.model.mjs +0 -0
  1066. /package/{esm2022 → esm2020}/lib/shared/components/palette/query-management/models/query-create-context.enum.mjs +0 -0
  1067. /package/{esm2022 → esm2020}/lib/shared/components/palette/query-management/models/query-list/query-list-column/query-list-column.model.mjs +0 -0
  1068. /package/{esm2022 → esm2020}/lib/shared/components/palette/text/index.mjs +0 -0
  1069. /package/{esm2022 → esm2020}/lib/shared/components/palette/text-area/index.mjs +0 -0
  1070. /package/{esm2022 → esm2020}/lib/shared/components/palette/utils/index.mjs +0 -0
  1071. /package/{esm2022 → esm2020}/lib/shared/components/palette/waystopay/index.mjs +0 -0
  1072. /package/{esm2022 → esm2020}/lib/shared/components/palette/yes-no/index.mjs +0 -0
  1073. /package/{esm2022 → esm2020}/lib/shared/components/search-filters/domain/index.mjs +0 -0
  1074. /package/{esm2022 → esm2020}/lib/shared/components/search-filters/index.mjs +0 -0
  1075. /package/{esm2022 → esm2020}/lib/shared/components/search-result/index.mjs +0 -0
  1076. /package/{esm2022 → esm2020}/lib/shared/components/workbasket-filters/index.mjs +0 -0
  1077. /package/{esm2022 → esm2020}/lib/shared/directives/conditional-show/domain/index.mjs +0 -0
  1078. /package/{esm2022 → esm2020}/lib/shared/directives/conditional-show/index.mjs +0 -0
  1079. /package/{esm2022 → esm2020}/lib/shared/directives/conditional-show/services/condition.peg.mjs +0 -0
  1080. /package/{esm2022 → esm2020}/lib/shared/directives/conditional-show/services/index.mjs +0 -0
  1081. /package/{esm2022 → esm2020}/lib/shared/directives/focus-element/index.mjs +0 -0
  1082. /package/{esm2022 → esm2020}/lib/shared/directives/index.mjs +0 -0
  1083. /package/{esm2022 → esm2020}/lib/shared/directives/substitutor/index.mjs +0 -0
  1084. /package/{esm2022 → esm2020}/lib/shared/directives/substitutor/services/index.mjs +0 -0
  1085. /package/{esm2022 → esm2020}/lib/shared/domain/activity/index.mjs +0 -0
  1086. /package/{esm2022 → esm2020}/lib/shared/domain/addresses/index.mjs +0 -0
  1087. /package/{esm2022 → esm2020}/lib/shared/domain/alert/alert-level.model.mjs +0 -0
  1088. /package/{esm2022 → esm2020}/lib/shared/domain/alert/alert-status-params.model.mjs +0 -0
  1089. /package/{esm2022 → esm2020}/lib/shared/domain/alert/index.mjs +0 -0
  1090. /package/{esm2022 → esm2020}/lib/shared/domain/case-edit/case-edit.model.mjs +0 -0
  1091. /package/{esm2022 → esm2020}/lib/shared/domain/case-edit/index.mjs +0 -0
  1092. /package/{esm2022 → esm2020}/lib/shared/domain/case-file-view/case-file-view-sort-columns.enum.mjs +0 -0
  1093. /package/{esm2022 → esm2020}/lib/shared/domain/case-file-view/document-tree-node/document-tree-node-type.model.mjs +0 -0
  1094. /package/{esm2022 → esm2020}/lib/shared/domain/case-file-view/index.mjs +0 -0
  1095. /package/{esm2022 → esm2020}/lib/shared/domain/case-flag/index.mjs +0 -0
  1096. /package/{esm2022 → esm2020}/lib/shared/domain/case-view/access-types.model.mjs +0 -0
  1097. /package/{esm2022 → esm2020}/lib/shared/domain/case-view/case-view-event-ids.enum.mjs +0 -0
  1098. /package/{esm2022 → esm2020}/lib/shared/domain/case-view/challenged-access-request.model.mjs +0 -0
  1099. /package/{esm2022 → esm2020}/lib/shared/domain/case-view/index.mjs +0 -0
  1100. /package/{esm2022 → esm2020}/lib/shared/domain/case-view/review-specific-access-request.model.mjs +0 -0
  1101. /package/{esm2022 → esm2020}/lib/shared/domain/case-view/role-assignment-response.model.mjs +0 -0
  1102. /package/{esm2022 → esm2020}/lib/shared/domain/case-view/role-request.model.mjs +0 -0
  1103. /package/{esm2022 → esm2020}/lib/shared/domain/case-view/service-org-response.model.mjs +0 -0
  1104. /package/{esm2022 → esm2020}/lib/shared/domain/case-view/specific-access-request.model.mjs +0 -0
  1105. /package/{esm2022 → esm2020}/lib/shared/domain/definition/display-context-enum.model.mjs +0 -0
  1106. /package/{esm2022 → esm2020}/lib/shared/domain/definition/field-type-enum.model.mjs +0 -0
  1107. /package/{esm2022 → esm2020}/lib/shared/domain/definition/index.mjs +0 -0
  1108. /package/{esm2022 → esm2020}/lib/shared/domain/document/index.mjs +0 -0
  1109. /package/{esm2022 → esm2020}/lib/shared/domain/error-message.model.mjs +0 -0
  1110. /package/{esm2022 → esm2020}/lib/shared/domain/http/index.mjs +0 -0
  1111. /package/{esm2022 → esm2020}/lib/shared/domain/index.mjs +0 -0
  1112. /package/{esm2022 → esm2020}/lib/shared/domain/jurisdiction/index.mjs +0 -0
  1113. /package/{esm2022 → esm2020}/lib/shared/domain/jurisdiction/judicial-user.model.mjs +0 -0
  1114. /package/{esm2022 → esm2020}/lib/shared/domain/order/index.mjs +0 -0
  1115. /package/{esm2022 → esm2020}/lib/shared/domain/order/orderable.model.mjs +0 -0
  1116. /package/{esm2022 → esm2020}/lib/shared/domain/organisation/index.mjs +0 -0
  1117. /package/{esm2022 → esm2020}/lib/shared/domain/organisation/simple-organisation.model.mjs +0 -0
  1118. /package/{esm2022 → esm2020}/lib/shared/domain/predicate.model.mjs +0 -0
  1119. /package/{esm2022 → esm2020}/lib/shared/domain/profile/index.mjs +0 -0
  1120. /package/{esm2022 → esm2020}/lib/shared/domain/search/index.mjs +0 -0
  1121. /package/{esm2022 → esm2020}/lib/shared/domain/search/sorting/search-result-view-item-comparator.mjs +0 -0
  1122. /package/{esm2022 → esm2020}/lib/shared/domain/sort-order.enum.mjs +0 -0
  1123. /package/{esm2022 → esm2020}/lib/shared/domain/user/user-details.model.mjs +0 -0
  1124. /package/{esm2022 → esm2020}/lib/shared/domain/user/user-info.model.mjs +0 -0
  1125. /package/{esm2022 → esm2020}/lib/shared/domain/work-allocation/Task.mjs +0 -0
  1126. /package/{esm2022 → esm2020}/lib/shared/domain/work-allocation/TaskPayload.mjs +0 -0
  1127. /package/{esm2022 → esm2020}/lib/shared/domain/work-allocation/case-worker.model.mjs +0 -0
  1128. /package/{esm2022 → esm2020}/lib/shared/domain/work-allocation/index.mjs +0 -0
  1129. /package/{esm2022 → esm2020}/lib/shared/domain/work-allocation/judicial-worker.model.mjs +0 -0
  1130. /package/{esm2022 → esm2020}/lib/shared/domain/work-allocation/task-response.model.mjs +0 -0
  1131. /package/{esm2022 → esm2020}/lib/shared/domain/work-allocation/task-search-parameter.model.mjs +0 -0
  1132. /package/{esm2022 → esm2020}/lib/shared/domain/work-allocation/wa-service-config.model.mjs +0 -0
  1133. /package/{esm2022 → esm2020}/lib/shared/domain/workbasket/index.mjs +0 -0
  1134. /package/{esm2022 → esm2020}/lib/shared/fixture/shared.test.fixture.mjs +0 -0
  1135. /package/{esm2022 → esm2020}/lib/shared/index.mjs +0 -0
  1136. /package/{esm2022 → esm2020}/lib/shared/pipes/case-reference/index.mjs +0 -0
  1137. /package/{esm2022 → esm2020}/lib/shared/pipes/case-title/index.mjs +0 -0
  1138. /package/{esm2022 → esm2020}/lib/shared/pipes/complex/index.mjs +0 -0
  1139. /package/{esm2022 → esm2020}/lib/shared/pipes/generic/index.mjs +0 -0
  1140. /package/{esm2022 → esm2020}/lib/shared/pipes/index.mjs +0 -0
  1141. /package/{esm2022 → esm2020}/lib/shared/pipes/link-cases-from-reason-code/index.mjs +0 -0
  1142. /package/{esm2022 → esm2020}/lib/shared/pipes/link-cases-reason-code/index.mjs +0 -0
  1143. /package/{esm2022 → esm2020}/lib/shared/services/activity/index.mjs +0 -0
  1144. /package/{esm2022 → esm2020}/lib/shared/services/addresses/address-type.enum.mjs +0 -0
  1145. /package/{esm2022 → esm2020}/lib/shared/services/addresses/index.mjs +0 -0
  1146. /package/{esm2022 → esm2020}/lib/shared/services/alert/index.mjs +0 -0
  1147. /package/{esm2022 → esm2020}/lib/shared/services/auth/index.mjs +0 -0
  1148. /package/{esm2022 → esm2020}/lib/shared/services/banners/index.mjs +0 -0
  1149. /package/{esm2022 → esm2020}/lib/shared/services/browser/index.mjs +0 -0
  1150. /package/{esm2022 → esm2020}/lib/shared/services/case-fields/index.mjs +0 -0
  1151. /package/{esm2022 → esm2020}/lib/shared/services/case-file-view/index.mjs +0 -0
  1152. /package/{esm2022 → esm2020}/lib/shared/services/case-flag/index.mjs +0 -0
  1153. /package/{esm2022 → esm2020}/lib/shared/services/case-flag/refdata-case-flag-type.enum.mjs +0 -0
  1154. /package/{esm2022 → esm2020}/lib/shared/services/definitions/index.mjs +0 -0
  1155. /package/{esm2022 → esm2020}/lib/shared/services/document-management/index.mjs +0 -0
  1156. /package/{esm2022 → esm2020}/lib/shared/services/draft/index.mjs +0 -0
  1157. /package/{esm2022 → esm2020}/lib/shared/services/error/index.mjs +0 -0
  1158. /package/{esm2022 → esm2020}/lib/shared/services/eventStatusService/index.mjs +0 -0
  1159. /package/{esm2022 → esm2020}/lib/shared/services/fields/index.mjs +0 -0
  1160. /package/{esm2022 → esm2020}/lib/shared/services/form/index.mjs +0 -0
  1161. /package/{esm2022 → esm2020}/lib/shared/services/http/index.mjs +0 -0
  1162. /package/{esm2022 → esm2020}/lib/shared/services/index.mjs +0 -0
  1163. /package/{esm2022 → esm2020}/lib/shared/services/jurisdiction/index.mjs +0 -0
  1164. /package/{esm2022 → esm2020}/lib/shared/services/loading/index.mjs +0 -0
  1165. /package/{esm2022 → esm2020}/lib/shared/services/navigation/index.mjs +0 -0
  1166. /package/{esm2022 → esm2020}/lib/shared/services/navigation/navigation-origin.model.mjs +0 -0
  1167. /package/{esm2022 → esm2020}/lib/shared/services/order/index.mjs +0 -0
  1168. /package/{esm2022 → esm2020}/lib/shared/services/organisation/index.mjs +0 -0
  1169. /package/{esm2022 → esm2020}/lib/shared/services/profile/index.mjs +0 -0
  1170. /package/{esm2022 → esm2020}/lib/shared/services/request/index.mjs +0 -0
  1171. /package/{esm2022 → esm2020}/lib/shared/services/router/index.mjs +0 -0
  1172. /package/{esm2022 → esm2020}/lib/shared/services/search/index.mjs +0 -0
  1173. /package/{esm2022 → esm2020}/lib/shared/services/session/index.mjs +0 -0
  1174. /package/{esm2022 → esm2020}/lib/shared/services/utils/retry/index.mjs +0 -0
  1175. /package/{esm2022 → esm2020}/lib/shared/services/window/index.mjs +0 -0
  1176. /package/{esm2022 → esm2020}/lib/shared/services/workbasket/index.mjs +0 -0
  1177. /package/{esm2022 → esm2020}/public-api.mjs +0 -0
@@ -0,0 +1,670 @@
1
+ import { Location } from '@angular/common';
2
+ import { ChangeDetectorRef, Component, Input, NgZone, ViewChild } from '@angular/core';
3
+ import { FormControl, FormGroup } from '@angular/forms';
4
+ import { MatLegacyDialog as MatDialog } from '@angular/material/legacy-dialog';
5
+ import { MatLegacyTabGroup as MatTabGroup } from '@angular/material/legacy-tabs';
6
+ import { ActivatedRoute, NavigationEnd, Router } from '@angular/router';
7
+ import { plainToClass } from 'class-transformer';
8
+ import { RpxTranslatePipe } from 'rpx-xui-translation';
9
+ import { filter } from 'rxjs/operators';
10
+ import { NotificationBannerHeaderClass, NotificationBannerType } from '../../../../components/banners/notification-banner';
11
+ import { ShowCondition } from '../../../directives';
12
+ import { CaseField, CaseView, DRAFT_QUERY_PARAM, DisplayMode, Draft } from '../../../domain';
13
+ import { CaseViewEventIds } from '../../../domain/case-view/case-view-event-ids.enum';
14
+ import { ActivityPollingService, AlertService, DraftService, ErrorNotifierService, FieldsUtils, NavigationNotifierService, NavigationOrigin, OrderService, SessionStorageService } from '../../../services';
15
+ import { ConvertHrefToRouterService } from '../../case-editor/services/convert-href-to-router.service';
16
+ import { DeleteOrCancelDialogComponent } from '../../dialogs';
17
+ import { initDialog } from '../../helpers';
18
+ import * as i0 from "@angular/core";
19
+ import * as i1 from "@angular/router";
20
+ import * as i2 from "../../../services";
21
+ import * as i3 from "@angular/material/legacy-dialog";
22
+ import * as i4 from "../../case-editor/services/convert-href-to-router.service";
23
+ import * as i5 from "@angular/common";
24
+ import * as i6 from "rpx-xui-translation";
25
+ const _c0 = ["tabGroup"];
26
+ function CaseFullAccessViewComponent_div_0_Template(rf, ctx) { if (rf & 1) {
27
+ i0.ɵɵelementStart(0, "div", 11)(1, "h1", 12);
28
+ i0.ɵɵtext(2);
29
+ i0.ɵɵpipe(3, "rpxTranslate");
30
+ i0.ɵɵelementEnd();
31
+ i0.ɵɵelementStart(4, "div", 13)(5, "p");
32
+ i0.ɵɵtext(6);
33
+ i0.ɵɵpipe(7, "rpxTranslate");
34
+ i0.ɵɵelementEnd();
35
+ i0.ɵɵelementStart(8, "p")(9, "a", 14);
36
+ i0.ɵɵtext(10);
37
+ i0.ɵɵpipe(11, "rpxTranslate");
38
+ i0.ɵɵelementEnd();
39
+ i0.ɵɵtext(12);
40
+ i0.ɵɵpipe(13, "rpxTranslate");
41
+ i0.ɵɵelementEnd()()();
42
+ } if (rf & 2) {
43
+ i0.ɵɵadvance(2);
44
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(3, 4, "Something went wrong"), " ");
45
+ i0.ɵɵadvance(4);
46
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(7, 6, "We're working to fix the problem. Try again shortly."));
47
+ i0.ɵɵadvance(4);
48
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(11, 8, "Contact us"), "");
49
+ i0.ɵɵadvance(2);
50
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(13, 10, "if you're still having problems."), " ");
51
+ } }
52
+ function CaseFullAccessViewComponent_div_1_ul_7_li_1_Template(rf, ctx) { if (rf & 1) {
53
+ i0.ɵɵelementStart(0, "li");
54
+ i0.ɵɵtext(1);
55
+ i0.ɵɵpipe(2, "rpxTranslate");
56
+ i0.ɵɵelementEnd();
57
+ } if (rf & 2) {
58
+ const fieldError_r8 = ctx.$implicit;
59
+ i0.ɵɵadvance(1);
60
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(2, 1, fieldError_r8.message), " ");
61
+ } }
62
+ function CaseFullAccessViewComponent_div_1_ul_7_Template(rf, ctx) { if (rf & 1) {
63
+ i0.ɵɵelementStart(0, "ul", 17);
64
+ i0.ɵɵtemplate(1, CaseFullAccessViewComponent_div_1_ul_7_li_1_Template, 3, 3, "li", 18);
65
+ i0.ɵɵelementEnd();
66
+ } if (rf & 2) {
67
+ const ctx_r6 = i0.ɵɵnextContext(2);
68
+ i0.ɵɵadvance(1);
69
+ i0.ɵɵproperty("ngForOf", ctx_r6.error.details.field_errors);
70
+ } }
71
+ function CaseFullAccessViewComponent_div_1_Template(rf, ctx) { if (rf & 1) {
72
+ i0.ɵɵelementStart(0, "div", 11)(1, "h2", 15);
73
+ i0.ɵɵtext(2);
74
+ i0.ɵɵpipe(3, "rpxTranslate");
75
+ i0.ɵɵelementEnd();
76
+ i0.ɵɵelementStart(4, "p");
77
+ i0.ɵɵtext(5);
78
+ i0.ɵɵpipe(6, "rpxTranslate");
79
+ i0.ɵɵelementEnd();
80
+ i0.ɵɵtemplate(7, CaseFullAccessViewComponent_div_1_ul_7_Template, 2, 1, "ul", 16);
81
+ i0.ɵɵelementEnd();
82
+ } if (rf & 2) {
83
+ const ctx_r1 = i0.ɵɵnextContext();
84
+ i0.ɵɵadvance(2);
85
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(3, 3, "The callback data failed validation"), " ");
86
+ i0.ɵɵadvance(3);
87
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(6, 5, ctx_r1.error.message));
88
+ i0.ɵɵadvance(2);
89
+ i0.ɵɵproperty("ngIf", ctx_r1.error.details == null ? null : ctx_r1.error.details.field_errors);
90
+ } }
91
+ function CaseFullAccessViewComponent_div_7_Template(rf, ctx) { if (rf & 1) {
92
+ i0.ɵɵelementStart(0, "div", 19)(1, "a", 20);
93
+ i0.ɵɵtext(2);
94
+ i0.ɵɵpipe(3, "rpxTranslate");
95
+ i0.ɵɵelementEnd()();
96
+ } if (rf & 2) {
97
+ i0.ɵɵadvance(2);
98
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(3, 1, "Print"));
99
+ } }
100
+ function CaseFullAccessViewComponent_div_8_Template(rf, ctx) { if (rf & 1) {
101
+ const _r10 = i0.ɵɵgetCurrentView();
102
+ i0.ɵɵelementStart(0, "div", 4)(1, "ccd-event-trigger", 21);
103
+ i0.ɵɵlistener("onTriggerChange", function CaseFullAccessViewComponent_div_8_Template_ccd_event_trigger_onTriggerChange_1_listener() { i0.ɵɵrestoreView(_r10); const ctx_r9 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r9.clearErrorsAndWarnings()); })("onTriggerSubmit", function CaseFullAccessViewComponent_div_8_Template_ccd_event_trigger_onTriggerSubmit_1_listener($event) { i0.ɵɵrestoreView(_r10); const ctx_r11 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r11.applyTrigger($event)); });
104
+ i0.ɵɵelementEnd()();
105
+ } if (rf & 2) {
106
+ const ctx_r3 = i0.ɵɵnextContext();
107
+ i0.ɵɵadvance(1);
108
+ i0.ɵɵproperty("isDisabled", ctx_r3.isTriggerButtonDisabled())("triggers", ctx_r3.caseDetails.triggers)("triggerText", ctx_r3.triggerText)("eventId", ctx_r3.eventId);
109
+ } }
110
+ function CaseFullAccessViewComponent_div_9_Template(rf, ctx) { if (rf & 1) {
111
+ const _r13 = i0.ɵɵgetCurrentView();
112
+ i0.ɵɵelementStart(0, "div", 3)(1, "div", 9)(2, "ccd-notification-banner", 22);
113
+ i0.ɵɵlistener("linkClicked", function CaseFullAccessViewComponent_div_9_Template_ccd_notification_banner_linkClicked_2_listener($event) { i0.ɵɵrestoreView(_r13); const ctx_r12 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r12.onLinkClicked($event)); });
114
+ i0.ɵɵelementEnd()()();
115
+ } if (rf & 2) {
116
+ const ctx_r4 = i0.ɵɵnextContext();
117
+ i0.ɵɵadvance(2);
118
+ i0.ɵɵproperty("notificationBannerConfig", ctx_r4.notificationBannerConfig);
119
+ } }
120
+ function CaseFullAccessViewComponent_ng_container_12_mat_tab_3_Template(rf, ctx) { if (rf & 1) {
121
+ i0.ɵɵelement(0, "mat-tab", 26);
122
+ i0.ɵɵpipe(1, "rpxTranslate");
123
+ } if (rf & 2) {
124
+ const tab_r19 = ctx.$implicit;
125
+ i0.ɵɵproperty("id", tab_r19.id)("label", i0.ɵɵpipeBind1(1, 2, tab_r19.label));
126
+ } }
127
+ function CaseFullAccessViewComponent_ng_container_12_mat_tab_4_ng_template_2_ng_container_3_tr_4_th_1_Template(rf, ctx) { if (rf & 1) {
128
+ i0.ɵɵelementStart(0, "th", 36)(1, "div", 37);
129
+ i0.ɵɵtext(2);
130
+ i0.ɵɵpipe(3, "rpxTranslate");
131
+ i0.ɵɵelementEnd()();
132
+ } if (rf & 2) {
133
+ const field_r24 = i0.ɵɵnextContext(2).$implicit;
134
+ i0.ɵɵadvance(2);
135
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(3, 1, field_r24.label), "");
136
+ } }
137
+ function CaseFullAccessViewComponent_ng_container_12_mat_tab_4_ng_template_2_ng_container_3_tr_4_Template(rf, ctx) { if (rf & 1) {
138
+ i0.ɵɵelementStart(0, "tr");
139
+ i0.ɵɵtemplate(1, CaseFullAccessViewComponent_ng_container_12_mat_tab_4_ng_template_2_ng_container_3_tr_4_th_1_Template, 4, 3, "th", 32);
140
+ i0.ɵɵelementStart(2, "td", 33)(3, "span", 34);
141
+ i0.ɵɵelement(4, "ccd-field-read", 35);
142
+ i0.ɵɵelementEnd()()();
143
+ } if (rf & 2) {
144
+ const field_r24 = i0.ɵɵnextContext().$implicit;
145
+ const ctx_r25 = i0.ɵɵnextContext(4);
146
+ i0.ɵɵadvance(1);
147
+ i0.ɵɵproperty("ngIf", !ctx_r25.isFieldToHaveNoLabel(field_r24));
148
+ i0.ɵɵadvance(1);
149
+ i0.ɵɵproperty("id", "case-viewer-field-read--" + field_r24.id);
150
+ i0.ɵɵadvance(2);
151
+ i0.ɵɵproperty("topLevelFormGroup", ctx_r25.formGroup.controls["data"])("caseField", field_r24)("caseReference", ctx_r25.caseDetails.case_id)("markdownUseHrefAsRouterLink", ctx_r25.markdownUseHrefAsRouterLink);
152
+ } }
153
+ function CaseFullAccessViewComponent_ng_container_12_mat_tab_4_ng_template_2_ng_container_3_tr_5_Template(rf, ctx) { if (rf & 1) {
154
+ i0.ɵɵelementStart(0, "tr", 38)(1, "th", 33)(2, "span", 34);
155
+ i0.ɵɵelement(3, "ccd-field-read", 35);
156
+ i0.ɵɵelementEnd()()();
157
+ } if (rf & 2) {
158
+ const field_r24 = i0.ɵɵnextContext().$implicit;
159
+ const ctx_r26 = i0.ɵɵnextContext(4);
160
+ i0.ɵɵadvance(1);
161
+ i0.ɵɵproperty("id", "case-viewer-field-read--" + field_r24.id);
162
+ i0.ɵɵadvance(2);
163
+ i0.ɵɵproperty("topLevelFormGroup", ctx_r26.formGroup.controls["data"])("caseField", field_r24)("caseReference", ctx_r26.caseDetails.case_id)("markdownUseHrefAsRouterLink", ctx_r26.markdownUseHrefAsRouterLink);
164
+ } }
165
+ function CaseFullAccessViewComponent_ng_container_12_mat_tab_4_ng_template_2_ng_container_3_Template(rf, ctx) { if (rf & 1) {
166
+ i0.ɵɵelementContainerStart(0);
167
+ i0.ɵɵelementStart(1, "div", 28);
168
+ i0.ɵɵelementContainerStart(2, 29);
169
+ i0.ɵɵpipe(3, "ccdIsCompound");
170
+ i0.ɵɵtemplate(4, CaseFullAccessViewComponent_ng_container_12_mat_tab_4_ng_template_2_ng_container_3_tr_4_Template, 5, 6, "tr", 30);
171
+ i0.ɵɵtemplate(5, CaseFullAccessViewComponent_ng_container_12_mat_tab_4_ng_template_2_ng_container_3_tr_5_Template, 4, 5, "tr", 31);
172
+ i0.ɵɵelementContainerEnd();
173
+ i0.ɵɵelementEnd();
174
+ i0.ɵɵelementContainerEnd();
175
+ } if (rf & 2) {
176
+ const field_r24 = ctx.$implicit;
177
+ const ctx_r23 = i0.ɵɵnextContext(4);
178
+ i0.ɵɵadvance(1);
179
+ i0.ɵɵproperty("caseField", field_r24)("contextFields", ctx_r23.caseFields)("hidden", field_r24.hidden);
180
+ i0.ɵɵadvance(1);
181
+ i0.ɵɵproperty("ngSwitch", !i0.ɵɵpipeBind1(3, 6, field_r24));
182
+ i0.ɵɵadvance(2);
183
+ i0.ɵɵproperty("ngSwitchCase", true);
184
+ i0.ɵɵadvance(1);
185
+ i0.ɵɵproperty("ngSwitchCase", false);
186
+ } }
187
+ const _c1 = function (a0, a4) { return [a0, false, undefined, true, a4]; };
188
+ function CaseFullAccessViewComponent_ng_container_12_mat_tab_4_ng_template_2_Template(rf, ctx) { if (rf & 1) {
189
+ i0.ɵɵelementStart(0, "table");
190
+ i0.ɵɵpipe(1, "rpxTranslate");
191
+ i0.ɵɵelementStart(2, "tbody");
192
+ i0.ɵɵtemplate(3, CaseFullAccessViewComponent_ng_container_12_mat_tab_4_ng_template_2_ng_container_3_Template, 6, 8, "ng-container", 18);
193
+ i0.ɵɵpipe(4, "ccdReadFieldsFilter");
194
+ i0.ɵɵpipe(5, "ccdTabFields");
195
+ i0.ɵɵelementEnd()();
196
+ } if (rf & 2) {
197
+ const tab_r20 = i0.ɵɵnextContext().$implicit;
198
+ const ctx_r22 = i0.ɵɵnextContext(2);
199
+ i0.ɵɵclassMap(tab_r20.id);
200
+ i0.ɵɵattribute("aria-label", i0.ɵɵpipeBind1(1, 4, "case viewer table"));
201
+ i0.ɵɵadvance(3);
202
+ i0.ɵɵproperty("ngForOf", i0.ɵɵpipeBindV(4, 6, i0.ɵɵpureFunction2(14, _c1, i0.ɵɵpipeBind1(5, 12, tab_r20), ctx_r22.formGroup.controls["data"])));
203
+ } }
204
+ function CaseFullAccessViewComponent_ng_container_12_mat_tab_4_Template(rf, ctx) { if (rf & 1) {
205
+ i0.ɵɵelementStart(0, "mat-tab", 26);
206
+ i0.ɵɵpipe(1, "rpxTranslate");
207
+ i0.ɵɵtemplate(2, CaseFullAccessViewComponent_ng_container_12_mat_tab_4_ng_template_2_Template, 6, 17, "ng-template", 27);
208
+ i0.ɵɵelementEnd();
209
+ } if (rf & 2) {
210
+ const tab_r20 = ctx.$implicit;
211
+ i0.ɵɵproperty("id", tab_r20.id)("label", i0.ɵɵpipeBind1(1, 2, tab_r20.label));
212
+ } }
213
+ function CaseFullAccessViewComponent_ng_container_12_mat_tab_5_Template(rf, ctx) { if (rf & 1) {
214
+ i0.ɵɵelement(0, "mat-tab", 26);
215
+ i0.ɵɵpipe(1, "rpxTranslate");
216
+ } if (rf & 2) {
217
+ const tab_r32 = ctx.$implicit;
218
+ i0.ɵɵproperty("id", tab_r32.id)("label", i0.ɵɵpipeBind1(1, 2, tab_r32.label));
219
+ } }
220
+ function CaseFullAccessViewComponent_ng_container_12_router_outlet_6_Template(rf, ctx) { if (rf & 1) {
221
+ i0.ɵɵelement(0, "router-outlet");
222
+ } }
223
+ function CaseFullAccessViewComponent_ng_container_12_Template(rf, ctx) { if (rf & 1) {
224
+ const _r34 = i0.ɵɵgetCurrentView();
225
+ i0.ɵɵelementContainerStart(0);
226
+ i0.ɵɵelementStart(1, "mat-tab-group", 23, 24);
227
+ i0.ɵɵlistener("selectedIndexChange", function CaseFullAccessViewComponent_ng_container_12_Template_mat_tab_group_selectedIndexChange_1_listener($event) { i0.ɵɵrestoreView(_r34); const ctx_r33 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r33.tabChanged($event)); });
228
+ i0.ɵɵtemplate(3, CaseFullAccessViewComponent_ng_container_12_mat_tab_3_Template, 2, 4, "mat-tab", 25);
229
+ i0.ɵɵtemplate(4, CaseFullAccessViewComponent_ng_container_12_mat_tab_4_Template, 3, 4, "mat-tab", 25);
230
+ i0.ɵɵtemplate(5, CaseFullAccessViewComponent_ng_container_12_mat_tab_5_Template, 2, 4, "mat-tab", 25);
231
+ i0.ɵɵelementEnd();
232
+ i0.ɵɵtemplate(6, CaseFullAccessViewComponent_ng_container_12_router_outlet_6_Template, 1, 0, "router-outlet", 10);
233
+ i0.ɵɵelementContainerEnd();
234
+ } if (rf & 2) {
235
+ const ctx_r5 = i0.ɵɵnextContext();
236
+ i0.ɵɵadvance(1);
237
+ i0.ɵɵproperty("disableRipple", true)("selectedIndex", ctx_r5.selectedTabIndex);
238
+ i0.ɵɵadvance(2);
239
+ i0.ɵɵproperty("ngForOf", ctx_r5.prependedTabs);
240
+ i0.ɵɵadvance(1);
241
+ i0.ɵɵproperty("ngForOf", ctx_r5.sortedTabs);
242
+ i0.ɵɵadvance(1);
243
+ i0.ɵɵproperty("ngForOf", ctx_r5.appendedTabs);
244
+ i0.ɵɵadvance(1);
245
+ i0.ɵɵproperty("ngIf", ctx_r5.prependedTabs && ctx_r5.prependedTabs.length || ctx_r5.appendedTabs && ctx_r5.appendedTabs.length);
246
+ } }
247
+ export class CaseFullAccessViewComponent {
248
+ constructor(ngZone, route, router, navigationNotifierService, orderService, activityPollingService, dialog, alertService, draftService, errorNotifierService, convertHrefToRouterService, location, crf, sessionStorageService, rpxTranslationPipe) {
249
+ this.ngZone = ngZone;
250
+ this.route = route;
251
+ this.router = router;
252
+ this.navigationNotifierService = navigationNotifierService;
253
+ this.orderService = orderService;
254
+ this.activityPollingService = activityPollingService;
255
+ this.dialog = dialog;
256
+ this.alertService = alertService;
257
+ this.draftService = draftService;
258
+ this.errorNotifierService = errorNotifierService;
259
+ this.convertHrefToRouterService = convertHrefToRouterService;
260
+ this.location = location;
261
+ this.crf = crf;
262
+ this.sessionStorageService = sessionStorageService;
263
+ this.rpxTranslationPipe = rpxTranslationPipe;
264
+ this.HEARINGS_TAB_LABEL = 'Hearings';
265
+ this.hasPrint = true;
266
+ this.hasEventSelector = true;
267
+ this.prependedTabs = [];
268
+ this.appendedTabs = [];
269
+ this.BANNER = DisplayMode.BANNER;
270
+ this.triggerTextStart = CaseFullAccessViewComponent.TRIGGER_TEXT_START;
271
+ this.triggerTextIgnoreWarnings = CaseFullAccessViewComponent.TRIGGER_TEXT_CONTINUE;
272
+ this.triggerText = CaseFullAccessViewComponent.TRIGGER_TEXT_START;
273
+ this.ignoreWarning = false;
274
+ this.selectedTabIndex = 0;
275
+ this.activeCaseFlags = false;
276
+ this.caseFlagsExternalUser = false;
277
+ this.caseFlagsReadExternalMode = '#ARGUMENT(READ,EXTERNAL)';
278
+ this.subs = [];
279
+ }
280
+ ngOnInit() {
281
+ this.callbackErrorsSubject = this.errorNotifierService.errorSource.pipe(filter((x) => {
282
+ if (x && x.status !== 401 && x.status !== 403) {
283
+ this.error = x;
284
+ return true;
285
+ }
286
+ return false;
287
+ }));
288
+ initDialog();
289
+ this.init();
290
+ this.markdownUseHrefAsRouterLink = true;
291
+ this.sessionStorageService?.removeItem('eventUrl');
292
+ this.subscription = this.convertHrefToRouterService?.getHrefMarkdownLinkContent().subscribe((hrefMarkdownLinkContent) => {
293
+ // do not convert router with initial default value; convert to router only on updated link content
294
+ if (hrefMarkdownLinkContent !== 'Default') {
295
+ this.convertHrefToRouterService.callAngularRouter(hrefMarkdownLinkContent);
296
+ }
297
+ });
298
+ if (this.activityPollingService.isEnabled && !this.activitySubscription) {
299
+ this.ngZone.runOutsideAngular(() => {
300
+ this.activitySubscription = this.postViewActivity().subscribe();
301
+ });
302
+ }
303
+ this.checkRouteAndSetCaseViewTab();
304
+ // Check for active Case Flags
305
+ this.activeCaseFlags = this.hasActiveCaseFlags();
306
+ }
307
+ ngOnChanges(changes) {
308
+ if (changes && changes.prependedTabs && !changes.prependedTabs.firstChange) {
309
+ this.init();
310
+ this.crf.detectChanges();
311
+ this.organiseTabPosition();
312
+ }
313
+ }
314
+ isPrintEnabled() {
315
+ return this.caseDetails.case_type.printEnabled;
316
+ }
317
+ ngOnDestroy() {
318
+ if (this.activityPollingService.isEnabled) {
319
+ this.unsubscribe(this.activitySubscription);
320
+ }
321
+ if (!this.route.snapshot.data.case) {
322
+ this.unsubscribe(this.caseSubscription);
323
+ }
324
+ this.unsubscribe(this.callbackErrorsSubject);
325
+ this.unsubscribe(this.errorSubscription);
326
+ this.unsubscribe(this.subscription);
327
+ this.subs.forEach(s => s.unsubscribe());
328
+ }
329
+ unsubscribe(subscription) {
330
+ if (subscription) {
331
+ subscription.unsubscribe();
332
+ }
333
+ }
334
+ checkRouteAndSetCaseViewTab() {
335
+ this.subs.push(this.router.events
336
+ .pipe(filter((event) => event instanceof NavigationEnd))
337
+ .subscribe((event) => {
338
+ const url = event && event.url;
339
+ if (url) {
340
+ const tabUrl = url ? url.split('#') : null;
341
+ const tab = tabUrl && tabUrl.length > 1 ? tabUrl[tabUrl.length - 1].replaceAll('%20', ' ') : '';
342
+ const matTab = this.tabGroup._tabs.find((x) => x.textLabel.toLowerCase() === tab.toLowerCase());
343
+ // Update selectedIndex only if matTab.position is a non-zero number (positive or negative); this means the
344
+ // matTab is not already selected (position is relative; positive = right, negative = left) or it would be 0
345
+ if (matTab?.position) {
346
+ this.tabGroup.selectedIndex = matTab.position;
347
+ }
348
+ }
349
+ }));
350
+ }
351
+ postViewActivity() {
352
+ return this.activityPollingService.postViewActivity(this.caseDetails?.case_id);
353
+ }
354
+ clearErrorsAndWarnings() {
355
+ this.resetErrors();
356
+ this.ignoreWarning = false;
357
+ this.triggerText = CaseFullAccessViewComponent.TRIGGER_TEXT_START;
358
+ }
359
+ async applyTrigger(trigger) {
360
+ this.errorNotifierService.announceError(null);
361
+ const theQueryParams = {};
362
+ if (this.ignoreWarning) {
363
+ theQueryParams['ignoreWarning'] = this.ignoreWarning;
364
+ }
365
+ // we may need to take care of different triggers in the future
366
+ if (trigger.id === CaseViewEventIds.QueryManagementRaiseQuery) {
367
+ await this.router.navigate([`/query-management/query/${this.caseDetails.case_id}`]);
368
+ }
369
+ else if (trigger.id === CaseViewEventIds.DELETE) {
370
+ const dialogRef = this.dialog.open(DeleteOrCancelDialogComponent, this.dialogConfig);
371
+ dialogRef.afterClosed().subscribe(result => {
372
+ if (result === 'Delete') {
373
+ this.draftService.deleteDraft(this.caseDetails.case_id)
374
+ .subscribe(_ => {
375
+ this.navigationNotifierService.announceNavigation({ action: NavigationOrigin.DRAFT_DELETED });
376
+ }, _ => {
377
+ this.navigationNotifierService.announceNavigation({ action: NavigationOrigin.ERROR_DELETING_DRAFT });
378
+ });
379
+ }
380
+ });
381
+ }
382
+ else if (this.isDraft() && trigger.id !== CaseViewEventIds.DELETE) {
383
+ theQueryParams[DRAFT_QUERY_PARAM] = this.caseDetails.case_id;
384
+ theQueryParams[CaseFullAccessViewComponent.ORIGIN_QUERY_PARAM] = 'viewDraft';
385
+ this.navigationNotifierService.announceNavigation({
386
+ action: NavigationOrigin.DRAFT_RESUMED,
387
+ jid: this.caseDetails.case_type.jurisdiction.id,
388
+ ctid: this.caseDetails.case_type.id,
389
+ etid: trigger.id,
390
+ queryParams: theQueryParams
391
+ });
392
+ }
393
+ else {
394
+ this.navigationNotifierService.announceNavigation({
395
+ action: NavigationOrigin.EVENT_TRIGGERED,
396
+ queryParams: theQueryParams,
397
+ etid: trigger.id,
398
+ relativeTo: this.route
399
+ });
400
+ }
401
+ }
402
+ hasTabsPresent() {
403
+ return this.sortedTabs.length > 0 || this.prependedTabs.length > 0 || this.appendedTabs.length > 0;
404
+ }
405
+ callbackErrorsNotify(callbackErrorsContext) {
406
+ this.ignoreWarning = callbackErrorsContext.ignoreWarning;
407
+ this.triggerText = callbackErrorsContext.triggerText;
408
+ this.eventId = callbackErrorsContext.eventId;
409
+ }
410
+ isDraft() {
411
+ return Draft.isDraft(this.caseDetails.case_id);
412
+ }
413
+ isTriggerButtonDisabled() {
414
+ return (this.error
415
+ && this.error.callbackErrors
416
+ && this.error.callbackErrors.length)
417
+ || (this.error
418
+ && this.error.details
419
+ && this.error.details.field_errors
420
+ && this.error.details.field_errors.length);
421
+ }
422
+ organiseTabPosition() {
423
+ let matTab;
424
+ const url = this.location.path(true);
425
+ let hashValue = url.substring(url.indexOf('#') + 1);
426
+ if (!url.includes('#') && !url.includes('roles-and-access') && !url.includes('tasks') && !url.includes('hearings')) {
427
+ const paths = url.split('/');
428
+ // lastPath can be /caseId, or the tabs /tasks, /hearings etc.
429
+ const lastPath = decodeURIComponent(paths[paths.length - 1]);
430
+ let foundTab = null;
431
+ if (!this.prependedTabs) {
432
+ this.prependedTabs = [];
433
+ }
434
+ const additionalTabs = [...this.prependedTabs, ...this.appendedTabs];
435
+ if (additionalTabs && additionalTabs.length) {
436
+ foundTab = additionalTabs.find((caseTab) => caseTab.id.toLowerCase() === lastPath.toLowerCase());
437
+ }
438
+ // found tasks or hearing tab
439
+ if (foundTab) {
440
+ this.router.navigate(['cases', 'case-details', this.caseDetails.case_id, foundTab.id]).then(() => {
441
+ matTab = this.tabGroup._tabs.find((x) => x.textLabel === foundTab.label);
442
+ // Update selectedIndex only if matTab.position is a non-zero number (positive or negative); this means the
443
+ // matTab is not already selected (position is relative; positive = right, negative = left) or it would be 0
444
+ if (matTab?.position) {
445
+ this.tabGroup.selectedIndex = matTab.position;
446
+ }
447
+ });
448
+ // last path is caseId
449
+ }
450
+ else {
451
+ // sort with the order of CCD predefined tabs
452
+ this.caseDetails.tabs.sort((aTab, bTab) => aTab.order > bTab.order ? 1 : (bTab.order > aTab.order ? -1 : 0));
453
+ // preselect the 1st order of CCD predefined tabs
454
+ const preSelectTab = this.caseDetails.tabs[0];
455
+ this.router.navigate(['cases', 'case-details', this.caseDetails.case_id], { fragment: preSelectTab.label }).then(() => {
456
+ matTab = this.tabGroup._tabs.find((x) => x.textLabel === preSelectTab.label);
457
+ // Update selectedIndex only if matTab.position is a non-zero number (positive or negative); this means the
458
+ // matTab is not already selected (position is relative; positive = right, negative = left) or it would be 0
459
+ if (matTab?.position) {
460
+ this.tabGroup.selectedIndex = matTab.position;
461
+ }
462
+ });
463
+ }
464
+ }
465
+ else {
466
+ const regExp = new RegExp(CaseFullAccessViewComponent.UNICODE_SPACE, 'g');
467
+ hashValue = hashValue.replace(regExp, CaseFullAccessViewComponent.EMPTY_SPACE);
468
+ if (hashValue.includes('hearings')) {
469
+ hashValue = 'hearings';
470
+ }
471
+ else {
472
+ if (hashValue.includes('roles-and-access') || hashValue.includes('tasks')) {
473
+ hashValue = hashValue.includes('roles-and-access') ? 'roles and access' : 'tasks';
474
+ }
475
+ }
476
+ matTab = this.tabGroup._tabs.find((x) => x.textLabel.replace(CaseFullAccessViewComponent.EMPTY_SPACE, '').toLowerCase() ===
477
+ hashValue.replace(CaseFullAccessViewComponent.EMPTY_SPACE, '').toLowerCase());
478
+ // Update selectedIndex only if matTab.position is a non-zero number (positive or negative); this means the
479
+ // matTab is not already selected (position is relative; positive = right, negative = left) or it would be 0
480
+ if (matTab?.position) {
481
+ this.tabGroup.selectedIndex = matTab.position;
482
+ }
483
+ }
484
+ }
485
+ // Refactored under EXUI-110 to address infinite tab loop to use tabIndexChanged instead
486
+ tabChanged(tabIndexChanged) {
487
+ const matTab = this.tabGroup._tabs.find(tab => tab.isActive);
488
+ const tabLabel = matTab.textLabel;
489
+ // sortedTabs are fragments
490
+ // appended/prepepended tabs use router navigation
491
+ if ((tabIndexChanged <= 1 && this.prependedTabs && this.prependedTabs.length) ||
492
+ (this.appendedTabs?.length && (tabLabel === this.HEARINGS_TAB_LABEL
493
+ || tabLabel === this.rpxTranslationPipe.transform(this.HEARINGS_TAB_LABEL)))) {
494
+ // Hack to get ID from tab as it's not easily achieved through Angular Material Tabs
495
+ const tab = matTab['_viewContainerRef'];
496
+ const id = tab.element.nativeElement.id;
497
+ // cases/case-details/:caseId/hearings
498
+ // cases/case-details/:caseId/roles-and-access
499
+ this.router.navigate([id], { relativeTo: this.route });
500
+ }
501
+ else {
502
+ // Routing here is based on tab label, not ideal
503
+ // cases/case-details/:caseId#tabLabel
504
+ this.router.navigate(['cases', 'case-details', this.caseDetails.case_id], { fragment: tabLabel });
505
+ }
506
+ }
507
+ onLinkClicked(triggerOutputEventText) {
508
+ // Get the *absolute* (not relative) index of the target tab and set as the active tab, using the selectedIndex input
509
+ // of mat-tab-group (bound to selectedTabIndex)
510
+ const targetTabIndex = this.tabGroup._tabs.toArray().findIndex(tab => tab.textLabel === triggerOutputEventText);
511
+ if (targetTabIndex > -1) {
512
+ this.selectedTabIndex = targetTabIndex;
513
+ this.tabGroup.selectedIndex = targetTabIndex;
514
+ }
515
+ }
516
+ hasActiveCaseFlags() {
517
+ // Determine which tab contains the FlagLauncher CaseField type, from the CaseView object in the snapshot data
518
+ const caseFlagsTab = this.caseDetails?.tabs
519
+ ? (this.caseDetails.tabs).filter(tab => tab.fields && tab.fields.some(caseField => FieldsUtils.isFlagLauncherCaseField(caseField)))[0]
520
+ : null;
521
+ if (caseFlagsTab) {
522
+ // Check whether the FlagLauncher CaseField is in external mode or not; the notification banner should not be
523
+ // displayed for external users
524
+ this.caseFlagsExternalUser = caseFlagsTab.fields.find(caseField => FieldsUtils.isFlagLauncherCaseField(caseField)).display_context_parameter === this.caseFlagsReadExternalMode;
525
+ // Get the active case flags count
526
+ // Cannot filter out anything other than to remove the FlagLauncher CaseField because Flags fields may be
527
+ // contained in other CaseField instances, either as a sub-field of a Complex field, or fields in a collection
528
+ // (or sub-fields of Complex fields in a collection)
529
+ const activeCaseFlags = caseFlagsTab.fields
530
+ .filter(caseField => !FieldsUtils.isFlagLauncherCaseField(caseField) && caseField.value)
531
+ .reduce((active, caseFlag) => {
532
+ return FieldsUtils.countActiveFlagsInCaseField(active, caseFlag);
533
+ }, 0);
534
+ if (activeCaseFlags > 0) {
535
+ const description = activeCaseFlags > 1
536
+ ? `There are ${activeCaseFlags} active flags on this case.` : 'There is 1 active flag on this case.';
537
+ // Initialise and display notification banner
538
+ this.notificationBannerConfig = {
539
+ bannerType: NotificationBannerType.INFORMATION,
540
+ headingText: 'Important',
541
+ description,
542
+ showLink: true,
543
+ linkText: 'View case flags',
544
+ triggerOutputEvent: true,
545
+ triggerOutputEventText: caseFlagsTab.label,
546
+ headerClass: NotificationBannerHeaderClass.INFORMATION
547
+ };
548
+ return true;
549
+ }
550
+ }
551
+ return false;
552
+ }
553
+ /**
554
+ * Indicates that a CaseField is to be displayed without a label, as is expected for all ComponentLauncher-type
555
+ * fields.
556
+ * @param caseField The `CaseField` instance to check
557
+ * @returns `true` if it should not have a label; `false` otherwise
558
+ */
559
+ isFieldToHaveNoLabel(caseField) {
560
+ return caseField.field_type.type === 'ComponentLauncher'
561
+ && caseField.display_context_parameter === '#ARGUMENT(CaseFileView)';
562
+ }
563
+ init() {
564
+ // Clone and sort tabs array
565
+ this.sortedTabs = this.orderService.sort(this.caseDetails?.tabs);
566
+ this.caseFields = this.getTabFields();
567
+ this.sortedTabs = this.sortTabFieldsAndFilterTabs(this.sortedTabs);
568
+ this.formGroup = this.buildFormGroup(this.caseFields);
569
+ if (this.caseDetails?.triggers && this.error) {
570
+ this.resetErrors();
571
+ }
572
+ }
573
+ sortTabFieldsAndFilterTabs(tabs) {
574
+ return tabs?.map(tab => Object.assign({}, tab, { fields: this.orderService.sort(tab.fields) }))
575
+ .filter(tab => ShowCondition.getInstance(tab.show_condition).matchByContextFields(this.caseFields));
576
+ }
577
+ getTabFields() {
578
+ const caseDataFields = this.sortedTabs?.reduce((acc, tab) => {
579
+ return acc.concat(plainToClass(CaseField, tab.fields));
580
+ }, []);
581
+ return caseDataFields?.concat(this.caseDetails.metadataFields);
582
+ }
583
+ /**
584
+ * For EUI-3825:
585
+ * Builds a FormGroup from all the CaseFields contained within the view.
586
+ * This FormGroup is necessary for evaluation the show/hide conditions of
587
+ * fields that are dependent on a field only available on a DIFFERENT tab.
588
+ */
589
+ buildFormGroup(caseFields) {
590
+ let value = {};
591
+ if (caseFields) {
592
+ caseFields.forEach(caseField => {
593
+ value = {
594
+ ...value,
595
+ [caseField.id]: caseField.value
596
+ };
597
+ });
598
+ }
599
+ return new FormGroup({ data: new FormControl(value) });
600
+ }
601
+ resetErrors() {
602
+ this.errorNotifierService.announceError(null);
603
+ this.alertService.clear();
604
+ }
605
+ }
606
+ CaseFullAccessViewComponent.ORIGIN_QUERY_PARAM = 'origin';
607
+ CaseFullAccessViewComponent.TRIGGER_TEXT_START = 'Go';
608
+ CaseFullAccessViewComponent.TRIGGER_TEXT_CONTINUE = 'Ignore Warning and Go';
609
+ CaseFullAccessViewComponent.UNICODE_SPACE = '%20';
610
+ CaseFullAccessViewComponent.EMPTY_SPACE = ' ';
611
+ CaseFullAccessViewComponent.ɵfac = function CaseFullAccessViewComponent_Factory(t) { return new (t || CaseFullAccessViewComponent)(i0.ɵɵdirectiveInject(i0.NgZone), i0.ɵɵdirectiveInject(i1.ActivatedRoute), i0.ɵɵdirectiveInject(i1.Router), i0.ɵɵdirectiveInject(i2.NavigationNotifierService), i0.ɵɵdirectiveInject(i2.OrderService), i0.ɵɵdirectiveInject(i2.ActivityPollingService), i0.ɵɵdirectiveInject(i3.MatLegacyDialog), i0.ɵɵdirectiveInject(i2.AlertService), i0.ɵɵdirectiveInject(i2.DraftService), i0.ɵɵdirectiveInject(i2.ErrorNotifierService), i0.ɵɵdirectiveInject(i4.ConvertHrefToRouterService), i0.ɵɵdirectiveInject(i5.Location), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef), i0.ɵɵdirectiveInject(i2.SessionStorageService), i0.ɵɵdirectiveInject(i6.RpxTranslatePipe)); };
612
+ CaseFullAccessViewComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CaseFullAccessViewComponent, selectors: [["ccd-case-full-access-view"]], viewQuery: function CaseFullAccessViewComponent_Query(rf, ctx) { if (rf & 1) {
613
+ i0.ɵɵviewQuery(_c0, 5);
614
+ } if (rf & 2) {
615
+ let _t;
616
+ i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.tabGroup = _t.first);
617
+ } }, inputs: { hasPrint: "hasPrint", hasEventSelector: "hasEventSelector", caseDetails: "caseDetails", prependedTabs: "prependedTabs", appendedTabs: "appendedTabs" }, features: [i0.ɵɵNgOnChangesFeature], decls: 13, vars: 12, consts: [["class", "error-summary", "role", "group", "aria-labelledby", "edit-case-event_error-summary-heading", "tabindex", "-1", 4, "ngIf"], [3, "triggerTextContinue", "triggerTextIgnore", "callbackErrorsSubject", "callbackErrorsContext"], [3, "caseId", "displayMode"], [1, "grid-row"], [1, "column-one-half"], [3, "caseDetails"], ["class", "case-viewer-controls", 4, "ngIf"], ["class", "column-one-half", 4, "ngIf"], ["class", "grid-row", 4, "ngIf"], [1, "column-full"], [4, "ngIf"], ["role", "group", "aria-labelledby", "edit-case-event_error-summary-heading", "tabindex", "-1", 1, "error-summary"], ["id", "edit-case-event_error-summary-heading", 1, "heading-h1", "error-summary-heading"], ["id", "edit-case-event_error-summary-body", 1, "govuk-error-summary__body"], ["href", "get-help", "target", "_blank"], ["id", "edit-case-event_error-summary-heading", 1, "heading-h2", "error-summary-heading"], ["class", "error-summary-list", 4, "ngIf"], [1, "error-summary-list"], [4, "ngFor", "ngForOf"], [1, "case-viewer-controls"], ["id", "case-viewer-control-print", "routerLink", "print", 1, "button", "button-secondary"], [3, "isDisabled", "triggers", "triggerText", "eventId", "onTriggerChange", "onTriggerSubmit"], [3, "notificationBannerConfig", "linkClicked"], ["animationDuration", "0ms", 3, "disableRipple", "selectedIndex", "selectedIndexChange"], ["tabGroup", ""], [3, "id", "label", 4, "ngFor", "ngForOf"], [3, "id", "label"], ["matTabContent", ""], ["ccdLabelSubstitutor", "", 3, "caseField", "contextFields", "hidden"], [3, "ngSwitch"], [4, "ngSwitchCase"], ["class", "compound-field", 4, "ngSwitchCase"], ["id", "case-viewer-field-label", 4, "ngIf"], ["scope", "col", 3, "id"], [1, "text-16"], [3, "topLevelFormGroup", "caseField", "caseReference", "markdownUseHrefAsRouterLink"], ["id", "case-viewer-field-label"], [1, "case-viewer-label", "text-16"], [1, "compound-field"]], template: function CaseFullAccessViewComponent_Template(rf, ctx) { if (rf & 1) {
618
+ i0.ɵɵtemplate(0, CaseFullAccessViewComponent_div_0_Template, 14, 12, "div", 0);
619
+ i0.ɵɵtemplate(1, CaseFullAccessViewComponent_div_1_Template, 8, 7, "div", 0);
620
+ i0.ɵɵelementStart(2, "ccd-callback-errors", 1);
621
+ i0.ɵɵlistener("callbackErrorsContext", function CaseFullAccessViewComponent_Template_ccd_callback_errors_callbackErrorsContext_2_listener($event) { return ctx.callbackErrorsNotify($event); });
622
+ i0.ɵɵelementEnd();
623
+ i0.ɵɵelement(3, "ccd-activity", 2);
624
+ i0.ɵɵelementStart(4, "div", 3)(5, "div", 4);
625
+ i0.ɵɵelement(6, "ccd-case-header", 5);
626
+ i0.ɵɵtemplate(7, CaseFullAccessViewComponent_div_7_Template, 4, 3, "div", 6);
627
+ i0.ɵɵelementEnd();
628
+ i0.ɵɵtemplate(8, CaseFullAccessViewComponent_div_8_Template, 2, 4, "div", 7);
629
+ i0.ɵɵelementEnd();
630
+ i0.ɵɵtemplate(9, CaseFullAccessViewComponent_div_9_Template, 3, 1, "div", 8);
631
+ i0.ɵɵelementStart(10, "div", 3)(11, "div", 9);
632
+ i0.ɵɵtemplate(12, CaseFullAccessViewComponent_ng_container_12_Template, 7, 6, "ng-container", 10);
633
+ i0.ɵɵelementEnd()();
634
+ } if (rf & 2) {
635
+ i0.ɵɵproperty("ngIf", ctx.error && !(ctx.error.callbackErrors || ctx.error.callbackWarnings || ctx.error.details));
636
+ i0.ɵɵadvance(1);
637
+ i0.ɵɵproperty("ngIf", ctx.error && ctx.error.details);
638
+ i0.ɵɵadvance(1);
639
+ i0.ɵɵproperty("triggerTextContinue", ctx.triggerTextStart)("triggerTextIgnore", ctx.triggerTextIgnoreWarnings)("callbackErrorsSubject", ctx.callbackErrorsSubject);
640
+ i0.ɵɵadvance(1);
641
+ i0.ɵɵproperty("caseId", ctx.caseDetails.case_id)("displayMode", ctx.BANNER);
642
+ i0.ɵɵadvance(3);
643
+ i0.ɵɵproperty("caseDetails", ctx.caseDetails);
644
+ i0.ɵɵadvance(1);
645
+ i0.ɵɵproperty("ngIf", ctx.hasPrint && !ctx.isDraft() && ctx.isPrintEnabled());
646
+ i0.ɵɵadvance(1);
647
+ i0.ɵɵproperty("ngIf", ctx.hasEventSelector);
648
+ i0.ɵɵadvance(1);
649
+ i0.ɵɵproperty("ngIf", ctx.activeCaseFlags && !ctx.caseFlagsExternalUser);
650
+ i0.ɵɵadvance(3);
651
+ i0.ɵɵproperty("ngIf", ctx.hasTabsPresent());
652
+ } }, styles: ["th[_ngcontent-%COMP%]{width:1%;white-space:nowrap;vertical-align:top}.compound-field[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{padding:0}.case-viewer-controls[_ngcontent-%COMP%]{margin-top:47px;margin-bottom:20px}ccd-case-header[_ngcontent-%COMP%]{float:left;margin-right:10px}ccd-event-trigger[_ngcontent-%COMP%]{float:right}.case-viewer-label[_ngcontent-%COMP%]{min-width:300px;white-space:normal}.markdown[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{margin-bottom:0}"] });
653
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CaseFullAccessViewComponent, [{
654
+ type: Component,
655
+ args: [{ selector: 'ccd-case-full-access-view', template: "<!-- Generic error heading and error message to be displayed only if there are no specific callback errors or warnings, or no error details -->\n<div *ngIf=\"error && !(error.callbackErrors || error.callbackWarnings || error.details)\" class=\"error-summary\"\n role=\"group\" aria-labelledby=\"edit-case-event_error-summary-heading\" tabindex=\"-1\">\n <h1 class=\"heading-h1 error-summary-heading\" id=\"edit-case-event_error-summary-heading\">\n {{'Something went wrong' | rpxTranslate}}\n </h1>\n <div class=\"govuk-error-summary__body\" id=\"edit-case-event_error-summary-body\">\n <p>{{\"We're working to fix the problem. Try again shortly.\" | rpxTranslate}}</p>\n <p>\n <a href=\"get-help\" target=\"_blank\">\n {{\"Contact us\" | rpxTranslate}}</a> {{\"if you're still having problems.\" | rpxTranslate}}\n </p>\n </div>\n</div>\n<!-- Callback error heading and error message to be displayed if there are specific error details -->\n<div *ngIf=\"error && error.details\" class=\"error-summary\" role=\"group\"\n aria-labelledby=\"edit-case-event_error-summary-heading\" tabindex=\"-1\">\n <h2 class=\"heading-h2 error-summary-heading\" id=\"edit-case-event_error-summary-heading\">\n {{'The callback data failed validation' | rpxTranslate}}\n </h2>\n <p>{{error.message | rpxTranslate}}</p>\n <ul *ngIf=\"error.details?.field_errors\" class=\"error-summary-list\">\n <li *ngFor=\"let fieldError of error.details.field_errors\">\n {{fieldError.message | rpxTranslate}}\n </li>\n </ul>\n</div>\n<ccd-callback-errors\n [triggerTextContinue]=\"triggerTextStart\"\n [triggerTextIgnore]=\"triggerTextIgnoreWarnings\"\n [callbackErrorsSubject]=\"callbackErrorsSubject\"\n (callbackErrorsContext)=\"callbackErrorsNotify($event)\">\n</ccd-callback-errors>\n<ccd-activity [caseId]=\"caseDetails.case_id\" [displayMode]=\"BANNER\"></ccd-activity>\n<div class=\"grid-row\">\n <div class=\"column-one-half\">\n <ccd-case-header [caseDetails]=\"caseDetails\"></ccd-case-header>\n <div class=\"case-viewer-controls\" *ngIf=\"hasPrint && !isDraft() && isPrintEnabled()\">\n <a id=\"case-viewer-control-print\" routerLink=\"print\" class=\"button button-secondary\">{{'Print' | rpxTranslate}}</a>\n </div>\n </div>\n <div *ngIf=\"hasEventSelector\" class=\"column-one-half\">\n <ccd-event-trigger [isDisabled]=\"isTriggerButtonDisabled()\" [triggers]=\"caseDetails.triggers\"\n [triggerText]=\"triggerText\"\n [eventId]=\"eventId\"\n (onTriggerChange)=\"clearErrorsAndWarnings()\"\n (onTriggerSubmit)=\"applyTrigger($event)\"></ccd-event-trigger>\n </div>\n</div>\n<div class=\"grid-row\" *ngIf=\"activeCaseFlags && !caseFlagsExternalUser\">\n <div class=\"column-full\">\n <ccd-notification-banner [notificationBannerConfig]=\"notificationBannerConfig\" (linkClicked)=\"onLinkClicked($event)\">\n </ccd-notification-banner>\n </div>\n</div>\n<div class=\"grid-row\">\n <div class=\"column-full\">\n <ng-container *ngIf=\"hasTabsPresent()\">\n <mat-tab-group #tabGroup animationDuration=\"0ms\" (selectedIndexChange)=\"tabChanged($event)\" [disableRipple]=\"true\"\n [selectedIndex]=\"selectedTabIndex\">\n <mat-tab *ngFor=\"let tab of prependedTabs\" [id]=\"tab.id\" [label]=\"tab.label | rpxTranslate\">\n </mat-tab>\n <mat-tab *ngFor=\"let tab of sortedTabs; let curIdx=index\" [id]=\"tab.id\" [label]=\"tab.label | rpxTranslate\">\n <ng-template matTabContent>\n <table [class]=\"tab.id\" [attr.aria-label]=\"'case viewer table' | rpxTranslate\">\n <tbody>\n <ng-container *ngFor=\"let field of tab | ccdTabFields | ccdReadFieldsFilter:false :undefined :true : formGroup.controls['data']\">\n <div ccdLabelSubstitutor [caseField]=\"field\" [contextFields]=\"caseFields\" [hidden]=\"field.hidden\">\n <ng-container [ngSwitch]=\"!(field | ccdIsCompound)\">\n <tr *ngSwitchCase=\"true\">\n <th id=\"case-viewer-field-label\" *ngIf=\"!isFieldToHaveNoLabel(field)\">\n <div class=\"case-viewer-label text-16\">\n {{field.label | rpxTranslate}}</div>\n </th>\n <td [id]=\"'case-viewer-field-read--' + field.id\" scope=\"col\">\n <span class=\"text-16\">\n <ccd-field-read [topLevelFormGroup]=\"formGroup.controls['data']\"\n [caseField]=\"field\" [caseReference]=\"caseDetails.case_id\"\n [markdownUseHrefAsRouterLink]=\"markdownUseHrefAsRouterLink\">\n </ccd-field-read>\n </span>\n </td>\n </tr>\n <tr *ngSwitchCase=\"false\" class=\"compound-field\">\n <th [id]=\"'case-viewer-field-read--' + field.id\" scope=\"col\">\n <span class=\"text-16\">\n <ccd-field-read [topLevelFormGroup]=\"formGroup.controls['data']\"\n [caseField]=\"field\" [caseReference]=\"caseDetails.case_id\"\n [markdownUseHrefAsRouterLink]=\"markdownUseHrefAsRouterLink\">\n </ccd-field-read>\n </span>\n </th>\n </tr>\n </ng-container>\n </div>\n </ng-container>\n </tbody>\n </table>\n </ng-template>\n </mat-tab>\n <mat-tab *ngFor=\"let tab of appendedTabs\" [id]=\"tab.id\" [label]=\"tab.label | rpxTranslate\">\n </mat-tab>\n </mat-tab-group>\n <router-outlet *ngIf=\"(prependedTabs && prependedTabs.length) || (appendedTabs && appendedTabs.length)\"></router-outlet>\n </ng-container>\n </div>\n</div>\n", styles: ["th{width:1%;white-space:nowrap;vertical-align:top}.compound-field th{padding:0}.case-viewer-controls{margin-top:47px;margin-bottom:20px}ccd-case-header{float:left;margin-right:10px}ccd-event-trigger{float:right}.case-viewer-label{min-width:300px;white-space:normal}.markdown h3{margin-bottom:0}\n"] }]
656
+ }], function () { return [{ type: i0.NgZone }, { type: i1.ActivatedRoute }, { type: i1.Router }, { type: i2.NavigationNotifierService }, { type: i2.OrderService }, { type: i2.ActivityPollingService }, { type: i3.MatLegacyDialog }, { type: i2.AlertService }, { type: i2.DraftService }, { type: i2.ErrorNotifierService }, { type: i4.ConvertHrefToRouterService }, { type: i5.Location }, { type: i0.ChangeDetectorRef }, { type: i2.SessionStorageService }, { type: i6.RpxTranslatePipe }]; }, { hasPrint: [{
657
+ type: Input
658
+ }], hasEventSelector: [{
659
+ type: Input
660
+ }], caseDetails: [{
661
+ type: Input
662
+ }], prependedTabs: [{
663
+ type: Input
664
+ }], appendedTabs: [{
665
+ type: Input
666
+ }], tabGroup: [{
667
+ type: ViewChild,
668
+ args: ['tabGroup', { static: false }]
669
+ }] }); })();
670
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FzZS1mdWxsLWFjY2Vzcy12aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NjZC1jYXNlLXVpLXRvb2xraXQvc3JjL2xpYi9zaGFyZWQvY29tcG9uZW50cy9jYXNlLXZpZXdlci9jYXNlLWZ1bGwtYWNjZXNzLXZpZXcvY2FzZS1mdWxsLWFjY2Vzcy12aWV3LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NjZC1jYXNlLXVpLXRvb2xraXQvc3JjL2xpYi9zaGFyZWQvY29tcG9uZW50cy9jYXNlLXZpZXdlci9jYXNlLWZ1bGwtYWNjZXNzLXZpZXcvY2FzZS1mdWxsLWFjY2Vzcy12aWV3LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQ0wsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQzVCLFNBQVMsRUFDekIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsZUFBZSxJQUFJLFNBQVMsRUFBNEMsTUFBTSxpQ0FBaUMsQ0FBQztBQUN6SCxPQUFPLEVBQTBCLGlCQUFpQixJQUFJLFdBQVcsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3pHLE9BQU8sRUFBRSxjQUFjLEVBQUUsYUFBYSxFQUFVLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUV2RCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEMs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QXNCLGFBQUE7UUFFbEIscUNBQStEO1FBQy9ELDRFQUVNO1FBQ1IsaUJBQU07UUFDTiw0RUFNTTtRQUNSLGlCQUFNO1FBQ04sNEVBS007UUFDTiwrQkFBc0IsY0FBQTtRQUVsQixpR0ErQ2U7UUFDakIsaUJBQU0sRUFBQTs7UUF4R0Ysa0hBQWlGO1FBY2pGLGVBQTRCO1FBQTVCLHFEQUE0QjtRQWFoQyxlQUF3QztRQUF4QywwREFBd0Msb0RBQUEsb0RBQUE7UUFLNUIsZUFBOEI7UUFBOUIsZ0RBQThCLDJCQUFBO1FBR3ZCLGVBQTJCO1FBQTNCLDZDQUEyQjtRQUNULGVBQWdEO1FBQWhELDZFQUFnRDtRQUkvRSxlQUFzQjtRQUF0QiwyQ0FBc0I7UUFRUCxlQUErQztRQUEvQyx3RUFBK0M7UUFRbkQsZUFBc0I7UUFBdEIsMkNBQXNCOzt1RkRmNUIsMkJBQTJCO2NBTHZDLFNBQVM7MkJBQ0UsMkJBQTJCOzZlQVlyQixRQUFRO2tCQUF2QixLQUFLO1lBQ1UsZ0JBQWdCO2tCQUEvQixLQUFLO1lBQ1UsV0FBVztrQkFBMUIsS0FBSztZQUNVLGFBQWE7a0JBQTVCLEtBQUs7WUFDVSxZQUFZO2tCQUEzQixLQUFLO1lBMkIyQyxRQUFRO2tCQUF4RCxTQUFTO21CQUFDLFVBQVUsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMb2NhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBJbnB1dCwgTmdab25lLCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgT25Jbml0LFxuICBTaW1wbGVDaGFuZ2VzLCBWaWV3Q2hpbGQsIFZpZXdDb250YWluZXJSZWZcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQ29udHJvbCwgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTWF0TGVnYWN5RGlhbG9nIGFzIE1hdERpYWxvZywgTWF0TGVnYWN5RGlhbG9nQ29uZmlnIGFzIE1hdERpYWxvZ0NvbmZpZyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2xlZ2FjeS1kaWFsb2cnO1xuaW1wb3J0IHsgTWF0TGVnYWN5VGFiIGFzIE1hdFRhYiwgTWF0TGVnYWN5VGFiR3JvdXAgYXMgTWF0VGFiR3JvdXAgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9sZWdhY3ktdGFicyc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgTmF2aWdhdGlvbkVuZCwgUGFyYW1zLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgcGxhaW5Ub0NsYXNzIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgUnB4VHJhbnNsYXRlUGlwZSB9IGZyb20gJ3JweC14dWktdHJhbnNsYXRpb24nO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaWx0ZXIgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge1xuICBOb3RpZmljYXRpb25CYW5uZXJDb25maWcsXG4gIE5vdGlmaWNhdGlvbkJhbm5lckhlYWRlckNsYXNzLFxuICBOb3RpZmljYXRpb25CYW5uZXJUeXBlXG59IGZyb20gJy4uLy4uLy4uLy4uL2NvbXBvbmVudHMvYmFubmVycy9ub3RpZmljYXRpb24tYmFubmVyJztcbmltcG9ydCB7IFNob3dDb25kaXRpb24gfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmVzJztcbmltcG9ydCB7IEFjdGl2aXR5LCBDYXNlRmllbGQsIENhc2VUYWIsIENhc2VWaWV3LCBDYXNlVmlld1RyaWdnZXIsIERSQUZUX1FVRVJZX1BBUkFNLCBEaXNwbGF5TW9kZSwgRHJhZnQgfSBmcm9tICcuLi8uLi8uLi9kb21haW4nO1xuaW1wb3J0IHsgQ2FzZVZpZXdFdmVudElkcyB9IGZyb20gJy4uLy4uLy4uL2RvbWFpbi9jYXNlLXZpZXcvY2FzZS12aWV3LWV2ZW50LWlkcy5lbnVtJztcbmltcG9ydCB7XG4gIEFjdGl2aXR5UG9sbGluZ1NlcnZpY2UsXG4gIEFsZXJ0U2VydmljZSxcbiAgRHJhZnRTZXJ2aWNlLFxuICBFcnJvck5vdGlmaWVyU2VydmljZSxcbiAgRmllbGRzVXRpbHMsXG4gIE5hdmlnYXRpb25Ob3RpZmllclNlcnZpY2UsXG4gIE5hdmlnYXRpb25PcmlnaW4sXG4gIE9yZGVyU2VydmljZSxcbiAgU2Vzc2lvblN0b3JhZ2VTZXJ2aWNlXG59IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzJztcbmltcG9ydCB7IENvbnZlcnRIcmVmVG9Sb3V0ZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY2FzZS1lZGl0b3Ivc2VydmljZXMvY29udmVydC1ocmVmLXRvLXJvdXRlci5zZXJ2aWNlJztcbmltcG9ydCB7IERlbGV0ZU9yQ2FuY2VsRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vZGlhbG9ncyc7XG5pbXBvcnQgeyBDYWxsYmFja0Vycm9yc0NvbnRleHQgfSBmcm9tICcuLi8uLi9lcnJvcic7XG5pbXBvcnQgeyBpbml0RGlhbG9nIH0gZnJvbSAnLi4vLi4vaGVscGVycyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2NjZC1jYXNlLWZ1bGwtYWNjZXNzLXZpZXcnLFxuICB0ZW1wbGF0ZVVybDogJy4vY2FzZS1mdWxsLWFjY2Vzcy12aWV3LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY2FzZS1mdWxsLWFjY2Vzcy12aWV3LmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgQ2FzZUZ1bGxBY2Nlc3NWaWV3Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIE9uQ2hhbmdlcyB7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgT1JJR0lOX1FVRVJZX1BBUkFNID0gJ29yaWdpbic7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgVFJJR0dFUl9URVhUX1NUQVJUID0gJ0dvJztcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBUUklHR0VSX1RFWFRfQ09OVElOVUUgPSAnSWdub3JlIFdhcm5pbmcgYW5kIEdvJztcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBVTklDT0RFX1NQQUNFID0gJyUyMCc7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgRU1QVFlfU1BBQ0UgPSAnICc7XG4gIHByaXZhdGUgcmVhZG9ubHkgSEVBUklOR1NfVEFCX0xBQkVMID0gJ0hlYXJpbmdzJztcblxuICBASW5wdXQoKSBwdWJsaWMgaGFzUHJpbnQgPSB0cnVlO1xuICBASW5wdXQoKSBwdWJsaWMgaGFzRXZlbnRTZWxlY3RvciA9IHRydWU7XG4gIEBJbnB1dCgpIHB1YmxpYyBjYXNlRGV0YWlsczogQ2FzZVZpZXc7XG4gIEBJbnB1dCgpIHB1YmxpYyBwcmVwZW5kZWRUYWJzOiBDYXNlVGFiW10gPSBbXTtcbiAgQElucHV0KCkgcHVibGljIGFwcGVuZGVkVGFiczogQ2FzZVRhYltdID0gW107XG5cbiAgcHVibGljIEJBTk5FUiA9IERpc3BsYXlNb2RlLkJBTk5FUjtcbiAgcHVibGljIHNvcnRlZFRhYnM6IENhc2VUYWJbXTtcbiAgcHVibGljIGNhc2VGaWVsZHM6IENhc2VGaWVsZFtdO1xuICBwdWJsaWMgZm9ybUdyb3VwOiBGb3JtR3JvdXA7XG4gIHB1YmxpYyBlcnJvcjogYW55O1xuICBwdWJsaWMgdHJpZ2dlclRleHRTdGFydCA9IENhc2VGdWxsQWNjZXNzVmlld0NvbXBvbmVudC5UUklHR0VSX1RFWFRfU1RBUlQ7XG4gIHB1YmxpYyB0cmlnZ2VyVGV4dElnbm9yZVdhcm5pbmdzID0gQ2FzZUZ1bGxBY2Nlc3NWaWV3Q29tcG9uZW50LlRSSUdHRVJfVEVYVF9DT05USU5VRTtcbiAgcHVibGljIHRyaWdnZXJUZXh0OiBzdHJpbmcgPSBDYXNlRnVsbEFjY2Vzc1ZpZXdDb21wb25lbnQuVFJJR0dFUl9URVhUX1NUQVJUO1xuICBwdWJsaWMgaWdub3JlV2FybmluZyA9IGZhbHNlO1xuICBwdWJsaWMgYWN0aXZpdHlTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgcHVibGljIGNhc2VTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgcHVibGljIGVycm9yU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG4gIHB1YmxpYyBkaWFsb2dDb25maWc6IE1hdERpYWxvZ0NvbmZpZztcbiAgcHVibGljIG1hcmtkb3duVXNlSHJlZkFzUm91dGVyTGluazogYm9vbGVhbjtcbiAgcHVibGljIG1lc3NhZ2U6IHN0cmluZztcbiAgcHVibGljIHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICBwdWJsaWMgbm90aWZpY2F0aW9uQmFubmVyQ29uZmlnOiBOb3RpZmljYXRpb25CYW5uZXJDb25maWc7XG4gIHB1YmxpYyBzZWxlY3RlZFRhYkluZGV4ID0gMDtcbiAgcHVibGljIGFjdGl2ZUNhc2VGbGFncyA9IGZhbHNlO1xuICBwdWJsaWMgY2FzZUZsYWdzRXh0ZXJuYWxVc2VyID0gZmFsc2U7XG4gIHByaXZhdGUgcmVhZG9ubHkgY2FzZUZsYWdzUmVhZEV4dGVybmFsTW9kZSA9ICcjQVJHVU1FTlQoUkVBRCxFWFRFUk5BTCknO1xuICBwcml2YXRlIHN1YnM6IFN1YnNjcmlwdGlvbltdID0gW107XG4gIHB1YmxpYyBldmVudElkOiBzdHJpbmc7XG5cbiAgcHVibGljIGNhbGxiYWNrRXJyb3JzU3ViamVjdDogICBPYnNlcnZhYmxlPGFueT47XG4gIEBWaWV3Q2hpbGQoJ3RhYkdyb3VwJywgeyBzdGF0aWM6IGZhbHNlIH0pIHB1YmxpYyB0YWJHcm91cDogTWF0VGFiR3JvdXA7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBuZ1pvbmU6IE5nWm9uZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJvdXRlcjogUm91dGVyLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgbmF2aWdhdGlvbk5vdGlmaWVyU2VydmljZTogTmF2aWdhdGlvbk5vdGlmaWVyU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IG9yZGVyU2VydmljZTogT3JkZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgYWN0aXZpdHlQb2xsaW5nU2VydmljZTogQWN0aXZpdHlQb2xsaW5nU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRpYWxvZzogTWF0RGlhbG9nLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgYWxlcnRTZXJ2aWNlOiBBbGVydFNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBkcmFmdFNlcnZpY2U6IERyYWZ0U2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGVycm9yTm90aWZpZXJTZXJ2aWNlOiBFcnJvck5vdGlmaWVyU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNvbnZlcnRIcmVmVG9Sb3V0ZXJTZXJ2aWNlOiBDb252ZXJ0SHJlZlRvUm91dGVyU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGxvY2F0aW9uOiBMb2NhdGlvbixcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNyZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSByZWFkb25seSBzZXNzaW9uU3RvcmFnZVNlcnZpY2U6IFNlc3Npb25TdG9yYWdlU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJweFRyYW5zbGF0aW9uUGlwZTogUnB4VHJhbnNsYXRlUGlwZVxuICApIHtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmNhbGxiYWNrRXJyb3JzU3ViamVjdCA9IHRoaXMuZXJyb3JOb3RpZmllclNlcnZpY2UuZXJyb3JTb3VyY2UucGlwZShmaWx0ZXIoKHgpID0+IHtcbiAgICAgIGlmKHggJiYgeC5zdGF0dXMgIT09IDQwMSAmJiB4LnN0YXR1cyAhPT0gNDAzKSB7XG4gICAgICAgIHRoaXMuZXJyb3IgPSB4O1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH0pKTtcbiAgICBcbiAgICBpbml0RGlhbG9nKCk7XG4gICAgdGhpcy5pbml0KCk7XG4gICAgdGhpcy5tYXJrZG93blVzZUhyZWZBc1JvdXRlckxpbmsgPSB0cnVlO1xuXG4gICAgdGhpcy5zZXNzaW9uU3RvcmFnZVNlcnZpY2U/LnJlbW92ZUl0ZW0oJ2V2ZW50VXJsJyk7XG5cbiAgICB0aGlzLnN1YnNjcmlwdGlvbiA9IHRoaXMuY29udmVydEhyZWZUb1JvdXRlclNlcnZpY2U/LmdldEhyZWZNYXJrZG93bkxpbmtDb250ZW50KCkuc3Vic2NyaWJlKChocmVmTWFya2Rvd25MaW5rQ29udGVudDogc3RyaW5nKSA9PiB7XG4gICAgICAvLyBkbyBub3QgY29udmVydCByb3V0ZXIgd2l0aCBpbml0aWFsIGRlZmF1bHQgdmFsdWU7IGNvbnZlcnQgdG8gcm91dGVyIG9ubHkgb24gdXBkYXRlZCBsaW5rIGNvbnRlbnRcbiAgICAgIGlmIChocmVmTWFya2Rvd25MaW5rQ29udGVudCAhPT0gJ0RlZmF1bHQnKSB7XG4gICAgICAgIHRoaXMuY29udmVydEhyZWZUb1JvdXRlclNlcnZpY2UuY2FsbEFuZ3VsYXJSb3V0ZXIoaHJlZk1hcmtkb3duTGlua0NvbnRlbnQpO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgaWYgKHRoaXMuYWN0aXZpdHlQb2xsaW5nU2VydmljZS5pc0VuYWJsZWQgJiYgIXRoaXMuYWN0aXZpdHlTdWJzY3JpcHRpb24pIHtcbiAgICAgIHRoaXMubmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgICAgdGhpcy5hY3Rpdml0eVN1YnNjcmlwdGlvbiA9IHRoaXMucG9zdFZpZXdBY3Rpdml0eSgpLnN1YnNjcmliZSgpO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgdGhpcy5jaGVja1JvdXRlQW5kU2V0Q2FzZVZpZXdUYWIoKTtcblxuICAgIC8vIENoZWNrIGZvciBhY3RpdmUgQ2FzZSBGbGFnc1xuICAgIHRoaXMuYWN0aXZlQ2FzZUZsYWdzID0gdGhpcy5oYXNBY3RpdmVDYXNlRmxhZ3MoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgaWYgKGNoYW5nZXMgJiYgY2hhbmdlcy5wcmVwZW5kZWRUYWJzICYmICFjaGFuZ2VzLnByZXBlbmRlZFRhYnMuZmlyc3RDaGFuZ2UpIHtcbiAgICAgIHRoaXMuaW5pdCgpO1xuICAgICAgdGhpcy5jcmYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgdGhpcy5vcmdhbmlzZVRhYlBvc2l0aW9uKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGlzUHJpbnRFbmFibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmNhc2VEZXRhaWxzLmNhc2VfdHlwZS5wcmludEVuYWJsZWQ7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuYWN0aXZpdHlQb2xsaW5nU2VydmljZS5pc0VuYWJsZWQpIHtcbiAgICAgIHRoaXMudW5zdWJzY3JpYmUodGhpcy5hY3Rpdml0eVN1YnNjcmlwdGlvbik7XG4gICAgfVxuICAgIGlmICghdGhpcy5yb3V0ZS5zbmFwc2hvdC5kYXRhLmNhc2UpIHtcbiAgICAgIHRoaXMudW5zdWJzY3JpYmUodGhpcy5jYXNlU3Vic2NyaXB0aW9uKTtcbiAgICB9XG4gICAgdGhpcy51bnN1YnNjcmliZSh0aGlzLmNhbGxiYWNrRXJyb3JzU3ViamVjdCk7XG4gICAgdGhpcy51bnN1YnNjcmliZSh0aGlzLmVycm9yU3Vic2NyaXB0aW9uKTtcbiAgICB0aGlzLnVuc3Vic2NyaWJlKHRoaXMuc3Vic2NyaXB0aW9uKTtcbiAgICB0aGlzLnN1YnMuZm9yRWFjaChzID0+IHMudW5zdWJzY3JpYmUoKSk7XG4gIH1cblxuICBwdWJsaWMgdW5zdWJzY3JpYmUoc3Vic2NyaXB0aW9uOiBhbnkpIHtcbiAgICBpZiAoc3Vic2NyaXB0aW9uKSB7XG4gICAgICBzdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGNoZWNrUm91dGVBbmRTZXRDYXNlVmlld1RhYigpOiB2b2lkIHtcbiAgICB0aGlzLnN1YnMucHVzaCh0aGlzLnJvdXRlci5ldmVudHNcbiAgICAgIC5waXBlKGZpbHRlcigoZXZlbnQpID0+IGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZCkpXG4gICAgICAuc3Vic2NyaWJlKChldmVudDogTmF2aWdhdGlvbkVuZCkgPT4ge1xuICAgICAgICBjb25zdCB1cmwgPSBldmVudCAmJiAoZXZlbnQgYXMgYW55KS51cmw7XG4gICAgICAgIGlmICh1cmwpIHtcbiAgICAgICAgICBjb25zdCB0YWJVcmwgPSB1cmwgPyB1cmwuc3BsaXQoJyMnKSA6IG51bGw7XG4gICAgICAgICAgY29uc3QgdGFiID0gdGFiVXJsICYmIHRhYlVybC5sZW5ndGggPiAxID8gdGFiVXJsW3RhYlVybC5sZW5ndGggLSAxXS5yZXBsYWNlQWxsKCclMjAnLCAnICcpIDogJyc7XG4gICAgICAgICAgY29uc3QgbWF0VGFiID0gdGhpcy50YWJHcm91cC5fdGFicy5maW5kKCh4KSA9PiB4LnRleHRMYWJlbC50b0xvd2VyQ2FzZSgpID09PSB0YWIudG9Mb3dlckNhc2UoKSk7XG4gICAgICAgICAgLy8gVXBkYXRlIHNlbGVjdGVkSW5kZXggb25seSBpZiBtYXRUYWIucG9zaXRpb24gaXMgYSBub24temVybyBudW1iZXIgKHBvc2l0aXZlIG9yIG5lZ2F0aXZlKTsgdGhpcyBtZWFucyB0aGVcbiAgICAgICAgICAvLyBtYXRUYWIgaXMgbm90IGFscmVhZHkgc2VsZWN0ZWQgKHBvc2l0aW9uIGlzIHJlbGF0aXZlOyBwb3NpdGl2ZSA9IHJpZ2h0LCBuZWdhdGl2ZSA9IGxlZnQpIG9yIGl0IHdvdWxkIGJlIDBcbiAgICAgICAgICBpZiAobWF0VGFiPy5wb3NpdGlvbikge1xuICAgICAgICAgICAgdGhpcy50YWJHcm91cC5zZWxlY3RlZEluZGV4ID0gbWF0VGFiLnBvc2l0aW9uO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSkpO1xuICB9XG5cbiAgcHVibGljIHBvc3RWaWV3QWN0aXZpdHkoKTogT2JzZXJ2YWJsZTxBY3Rpdml0eVtdPiB7XG4gICAgcmV0dXJuIHRoaXMuYWN0aXZpdHlQb2xsaW5nU2VydmljZS5wb3N0Vmlld0FjdGl2aXR5KHRoaXMuY2FzZURldGFpbHM/LmNhc2VfaWQpO1xuICB9XG5cbiAgcHVibGljIGNsZWFyRXJyb3JzQW5kV2FybmluZ3MoKTogdm9pZCB7XG4gICAgdGhpcy5yZXNldEVycm9ycygpO1xuICAgIHRoaXMuaWdub3JlV2FybmluZyA9IGZhbHNlO1xuICAgIHRoaXMudHJpZ2dlclRleHQgPSBDYXNlRnVsbEFjY2Vzc1ZpZXdDb21wb25lbnQuVFJJR0dFUl9URVhUX1NUQVJUO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGFwcGx5VHJpZ2dlcih0cmlnZ2VyOiBDYXNlVmlld1RyaWdnZXIpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0aGlzLmVycm9yTm90aWZpZXJTZXJ2aWNlLmFubm91bmNlRXJyb3IobnVsbCk7XG4gICAgY29uc3QgdGhlUXVlcnlQYXJhbXM6IFBhcmFtcyA9IHt9O1xuXG4gICAgaWYgKHRoaXMuaWdub3JlV2FybmluZykge1xuICAgICAgdGhlUXVlcnlQYXJhbXNbJ2lnbm9yZVdhcm5pbmcnXSA9IHRoaXMuaWdub3JlV2FybmluZztcbiAgICB9XG5cbiAgICAvLyB3ZSBtYXkgbmVlZCB0byB0YWtlIGNhcmUgb2YgZGlmZmVyZW50IHRyaWdnZXJzIGluIHRoZSBmdXR1cmVcbiAgICBpZiAodHJpZ2dlci5pZCA9PT0gQ2FzZVZpZXdFdmVudElkcy5RdWVyeU1hbmFnZW1lbnRSYWlzZVF1ZXJ5KSB7XG4gICAgICBhd2FpdCB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbYC9xdWVyeS1tYW5hZ2VtZW50L3F1ZXJ5LyR7dGhpcy5jYXNlRGV0YWlscy5jYXNlX2lkfWBdKTtcbiAgICB9IGVsc2UgaWYgKHRyaWdnZXIuaWQgPT09IENhc2VWaWV3RXZlbnRJZHMuREVMRVRFKSB7XG4gICAgICBjb25zdCBkaWFsb2dSZWYgPSB0aGlzLmRpYWxvZy5vcGVuKERlbGV0ZU9yQ2FuY2VsRGlhbG9nQ29tcG9uZW50LCB0aGlzLmRpYWxvZ0NvbmZpZyk7XG4gICAgICBkaWFsb2dSZWYuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUocmVzdWx0ID0+IHtcbiAgICAgICAgaWYgKHJlc3VsdCA9PT0gJ0RlbGV0ZScpIHtcbiAgICAgICAgICB0aGlzLmRyYWZ0U2VydmljZS5kZWxldGVEcmFmdCh0aGlzLmNhc2VEZXRhaWxzLmNhc2VfaWQpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKF8gPT4ge1xuICAgICAgICAgICAgICB0aGlzLm5hdmlnYXRpb25Ob3RpZmllclNlcnZpY2UuYW5ub3VuY2VOYXZpZ2F0aW9uKHsgYWN0aW9uOiBOYXZpZ2F0aW9uT3JpZ2luLkRSQUZUX0RFTEVURUQgfSk7XG4gICAgICAgICAgICB9LCBfID0+IHtcbiAgICAgICAgICAgICAgdGhpcy5uYXZpZ2F0aW9uTm90aWZpZXJTZXJ2aWNlLmFubm91bmNlTmF2aWdhdGlvbih7IGFjdGlvbjogTmF2aWdhdGlvbk9yaWdpbi5FUlJPUl9ERUxFVElOR19EUkFGVCB9KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuaXNEcmFmdCgpICYmIHRyaWdnZXIuaWQgIT09IENhc2VWaWV3RXZlbnRJZHMuREVMRVRFKSB7XG4gICAgICB0aGVRdWVyeVBhcmFtc1tEUkFGVF9RVUVSWV9QQVJBTV0gPSB0aGlzLmNhc2VEZXRhaWxzLmNhc2VfaWQ7XG4gICAgICB0aGVRdWVyeVBhcmFtc1tDYXNlRnVsbEFjY2Vzc1ZpZXdDb21wb25lbnQuT1JJR0lOX1FVRVJZX1BBUkFNXSA9ICd2aWV3RHJhZnQnO1xuICAgICAgdGhpcy5uYXZpZ2F0aW9uTm90aWZpZXJTZXJ2aWNlLmFubm91bmNlTmF2aWdhdGlvbihcbiAgICAgICAge1xuICAgICAgICAgIGFjdGlvbjogTmF2aWdhdGlvbk9yaWdpbi5EUkFGVF9SRVNVTUVELFxuICAgICAgICAgIGppZDogdGhpcy5jYXNlRGV0YWlscy5jYXNlX3R5cGUuanVyaXNkaWN0aW9uLmlkLFxuICAgICAgICAgIGN0aWQ6IHRoaXMuY2FzZURldGFpbHMuY2FzZV90eXBlLmlkLFxuICAgICAgICAgIGV0aWQ6IHRyaWdnZXIuaWQsXG4gICAgICAgICAgcXVlcnlQYXJhbXM6IHRoZVF1ZXJ5UGFyYW1zXG4gICAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLm5hdmlnYXRpb25Ob3RpZmllclNlcnZpY2UuYW5ub3VuY2VOYXZpZ2F0aW9uKFxuICAgICAgICB7XG4gICAgICAgICAgYWN0aW9uOiBOYXZpZ2F0aW9uT3JpZ2luLkVWRU5UX1RSSUdHRVJFRCxcbiAgICAgICAgICBxdWVyeVBhcmFtczogdGhlUXVlcnlQYXJhbXMsXG4gICAgICAgICAgZXRpZDogdHJpZ2dlci5pZCxcbiAgICAgICAgICByZWxhdGl2ZVRvOiB0aGlzLnJvdXRlXG4gICAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBoYXNUYWJzUHJlc2VudCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zb3J0ZWRUYWJzLmxlbmd0aCA+IDAgfHwgdGhpcy5wcmVwZW5kZWRUYWJzLmxlbmd0aCA+IDAgfHwgdGhpcy5hcHBlbmRlZFRhYnMubGVuZ3RoID4gMDtcbiAgfVxuXG4gIHB1YmxpYyBjYWxsYmFja0Vycm9yc05vdGlmeShjYWxsYmFja0Vycm9yc0NvbnRleHQ6IENhbGxiYWNrRXJyb3JzQ29udGV4dCk6IHZvaWQge1xuICAgIHRoaXMuaWdub3JlV2FybmluZyA9IGNhbGxiYWNrRXJyb3JzQ29udGV4dC5pZ25vcmVXYXJuaW5nO1xuICAgIHRoaXMudHJpZ2dlclRleHQgPSBjYWxsYmFja0Vycm9yc0NvbnRleHQudHJpZ2dlclRleHQ7XG4gICAgdGhpcy5ldmVudElkID0gY2FsbGJhY2tFcnJvcnNDb250ZXh0LmV2ZW50SWQ7XG4gIH1cblxuICBwdWJsaWMgaXNEcmFmdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gRHJhZnQuaXNEcmFmdCh0aGlzLmNhc2VEZXRhaWxzLmNhc2VfaWQpO1xuICB9XG5cbiAgcHVibGljIGlzVHJpZ2dlckJ1dHRvbkRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAodGhpcy5lcnJvclxuICAgICAgJiYgdGhpcy5lcnJvci5jYWxsYmFja0Vycm9yc1xuICAgICAgJiYgdGhpcy5lcnJvci5jYWxsYmFja0Vycm9ycy5sZW5ndGgpXG4gICAgICB8fCAodGhpcy5lcnJvclxuICAgICAgICAmJiB0aGlzLmVycm9yLmRldGFpbHNcbiAgICAgICAgJiYgdGhpcy5lcnJvci5kZXRhaWxzLmZpZWxkX2Vycm9yc1xuICAgICAgICAmJiB0aGlzLmVycm9yLmRldGFpbHMuZmllbGRfZXJyb3JzLmxlbmd0aCk7XG4gIH1cblxuICBwdWJsaWMgb3JnYW5pc2VUYWJQb3NpdGlvbigpOiB2b2lkIHtcbiAgICBsZXQgbWF0VGFiOiBNYXRUYWI7XG4gICAgY29uc3QgdXJsID0gdGhpcy5sb2NhdGlvbi5wYXRoKHRydWUpO1xuICAgIGxldCBoYXNoVmFsdWUgPSB1cmwuc3Vic3RyaW5nKHVybC5pbmRleE9mKCcjJykgKyAxKTtcbiAgICBpZiAoIXVybC5pbmNsdWRlcygnIycpICYmICF1cmwuaW5jbHVkZXMoJ3JvbGVzLWFuZC1hY2Nlc3MnKSAmJiAhdXJsLmluY2x1ZGVzKCd0YXNrcycpICYmICF1cmwuaW5jbHVkZXMoJ2hlYXJpbmdzJykpIHtcbiAgICAgIGNvbnN0IHBhdGhzID0gdXJsLnNwbGl0KCcvJyk7XG4gICAgICAvLyBsYXN0UGF0aCBjYW4gYmUgL2Nhc2VJZCwgb3IgdGhlIHRhYnMgL3Rhc2tzLCAvaGVhcmluZ3MgZXRjLlxuICAgICAgY29uc3QgbGFzdFBhdGggPSBkZWNvZGVVUklDb21wb25lbnQocGF0aHNbcGF0aHMubGVuZ3RoIC0gMV0pO1xuICAgICAgbGV0IGZvdW5kVGFiOiBDYXNlVGFiID0gbnVsbDtcbiAgICAgIGlmICghdGhpcy5wcmVwZW5kZWRUYWJzKSB7XG4gICAgICAgIHRoaXMucHJlcGVuZGVkVGFicyA9IFtdO1xuICAgICAgfVxuICAgICAgY29uc3QgYWRkaXRpb25hbFRhYnMgPSBbLi4udGhpcy5wcmVwZW5kZWRUYWJzLCAuLi50aGlzLmFwcGVuZGVkVGFic107XG4gICAgICBpZiAoYWRkaXRpb25hbFRhYnMgJiYgYWRkaXRpb25hbFRhYnMubGVuZ3RoKSB7XG4gICAgICAgIGZvdW5kVGFiID0gYWRkaXRpb25hbFRhYnMuZmluZCgoY2FzZVRhYjogQ2FzZVRhYikgPT4gY2FzZVRhYi5pZC50b0xvd2VyQ2FzZSgpID09PSBsYXN0UGF0aC50b0xvd2VyQ2FzZSgpKTtcbiAgICAgIH1cbiAgICAgIC8vIGZvdW5kIHRhc2tzIG9yIGhlYXJpbmcgdGFiXG4gICAgICBpZiAoZm91bmRUYWIpIHtcbiAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWydjYXNlcycsICdjYXNlLWRldGFpbHMnLCB0aGlzLmNhc2VEZXRhaWxzLmNhc2VfaWQsIGZvdW5kVGFiLmlkXSkudGhlbigoKSA9PiB7XG4gICAgICAgICAgbWF0VGFiID0gdGhpcy50YWJHcm91cC5fdGFicy5maW5kKCh4KSA9PiB4LnRleHRMYWJlbCA9PT0gZm91bmRUYWIubGFiZWwpO1xuICAgICAgICAgIC8vIFVwZGF0ZSBzZWxlY3RlZEluZGV4IG9ubHkgaWYgbWF0VGFiLnBvc2l0aW9uIGlzIGEgbm9uLXplcm8gbnVtYmVyIChwb3NpdGl2ZSBvciBuZWdhdGl2ZSk7IHRoaXMgbWVhbnMgdGhlXG4gICAgICAgICAgLy8gbWF0VGFiIGlzIG5vdCBhbHJlYWR5IHNlbGVjdGVkIChwb3NpdGlvbiBpcyByZWxhdGl2ZTsgcG9zaXRpdmUgPSByaWdodCwgbmVnYXRpdmUgPSBsZWZ0KSBvciBpdCB3b3VsZCBiZSAwXG4gICAgICAgICAgaWYgKG1hdFRhYj8ucG9zaXRpb24pIHtcbiAgICAgICAgICAgIHRoaXMudGFiR3JvdXAuc2VsZWN0ZWRJbmRleCA9IG1hdFRhYi5wb3NpdGlvbjtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICAvLyBsYXN0IHBhdGggaXMgY2FzZUlkXG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBzb3J0IHdpdGggdGhlIG9yZGVyIG9mIENDRCBwcmVkZWZpbmVkIHRhYnNcbiAgICAgICAgdGhpcy5jYXNlRGV0YWlscy50YWJzLnNvcnQoKGFUYWIsIGJUYWIpID0+IGFUYWIub3JkZXIgPiBiVGFiLm9yZGVyID8gMSA6IChiVGFiLm9yZGVyID4gYVRhYi5vcmRlciA/IC0xIDogMCkpO1xuICAgICAgICAvLyBwcmVzZWxlY3QgdGhlIDFzdCBvcmRlciBvZiBDQ0QgcHJlZGVmaW5lZCB0YWJzXG4gICAgICAgIGNvbnN0IHByZVNlbGVjdFRhYjogQ2FzZVRhYiA9IHRoaXMuY2FzZURldGFpbHMudGFic1swXTtcbiAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWydjYXNlcycsICdjYXNlLWRldGFpbHMnLCB0aGlzLmNhc2VEZXRhaWxzLmNhc2VfaWRdLCB7IGZyYWdtZW50OiBwcmVTZWxlY3RUYWIubGFiZWwgfSkudGhlbigoKSA9PiB7XG4gICAgICAgICAgbWF0VGFiID0gdGhpcy50YWJHcm91cC5fdGFicy5maW5kKCh4KSA9PiB4LnRleHRMYWJlbCA9PT0gcHJlU2VsZWN0VGFiLmxhYmVsKTtcbiAgICAgICAgICAvLyBVcGRhdGUgc2VsZWN0ZWRJbmRleCBvbmx5IGlmIG1hdFRhYi5wb3NpdGlvbiBpcyBhIG5vbi16ZXJvIG51bWJlciAocG9zaXRpdmUgb3IgbmVnYXRpdmUpOyB0aGlzIG1lYW5zIHRoZVxuICAgICAgICAgIC8vIG1hdFRhYiBpcyBub3QgYWxyZWFkeSBzZWxlY3RlZCAocG9zaXRpb24gaXMgcmVsYXRpdmU7IHBvc2l0aXZlID0gcmlnaHQsIG5lZ2F0aXZlID0gbGVmdCkgb3IgaXQgd291bGQgYmUgMFxuICAgICAgICAgIGlmIChtYXRUYWI/LnBvc2l0aW9uKSB7XG4gICAgICAgICAgICB0aGlzLnRhYkdyb3VwLnNlbGVjdGVkSW5kZXggPSBtYXRUYWIucG9zaXRpb247XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgcmVnRXhwID0gbmV3IFJlZ0V4cChDYXNlRnVsbEFjY2Vzc1ZpZXdDb21wb25lbnQuVU5JQ09ERV9TUEFDRSwgJ2cnKTtcbiAgICAgIGhhc2hWYWx1ZSA9IGhhc2hWYWx1ZS5yZXBsYWNlKHJlZ0V4cCwgQ2FzZUZ1bGxBY2Nlc3NWaWV3Q29tcG9uZW50LkVNUFRZX1NQQUNFKTtcbiAgICAgIGlmIChoYXNoVmFsdWUuaW5jbHVkZXMoJ2hlYXJpbmdzJykpIHtcbiAgICAgICAgaGFzaFZhbHVlID0gJ2hlYXJpbmdzJztcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGlmIChoYXNoVmFsdWUuaW5jbHVkZXMoJ3JvbGVzLWFuZC1hY2Nlc3MnKSB8fCBoYXNoVmFsdWUuaW5jbHVkZXMoJ3Rhc2tzJykpIHtcbiAgICAgICAgICBoYXNoVmFsdWUgPSBoYXNoVmFsdWUuaW5jbHVkZXMoJ3JvbGVzLWFuZC1hY2Nlc3MnKSA/ICdyb2xlcyBhbmQgYWNjZXNzJyA6ICd0YXNrcyc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIG1hdFRhYiA9IHRoaXMudGFiR3JvdXAuX3RhYnMuZmluZCgoeCkgPT5cbiAgICAgICAgeC50ZXh0TGFiZWwucmVwbGFjZShDYXNlRnVsbEFjY2Vzc1ZpZXdDb21wb25lbnQuRU1QVFlfU1BBQ0UsICcnKS50b0xvd2VyQ2FzZSgpID09PVxuICAgICAgICBoYXNoVmFsdWUucmVwbGFjZShDYXNlRnVsbEFjY2Vzc1ZpZXdDb21wb25lbnQuRU1QVFlfU1BBQ0UsICcnKS50b0xvd2VyQ2FzZSgpKTtcbiAgICAgIC8vIFVwZGF0ZSBzZWxlY3RlZEluZGV4IG9ubHkgaWYgbWF0VGFiLnBvc2l0aW9uIGlzIGEgbm9uLXplcm8gbnVtYmVyIChwb3NpdGl2ZSBvciBuZWdhdGl2ZSk7IHRoaXMgbWVhbnMgdGhlXG4gICAgICAvLyBtYXRUYWIgaXMgbm90IGFscmVhZHkgc2VsZWN0ZWQgKHBvc2l0aW9uIGlzIHJlbGF0aXZlOyBwb3NpdGl2ZSA9IHJpZ2h0LCBuZWdhdGl2ZSA9IGxlZnQpIG9yIGl0IHdvdWxkIGJlIDBcbiAgICAgIGlmIChtYXRUYWI/LnBvc2l0aW9uKSB7XG4gICAgICAgIHRoaXMudGFiR3JvdXAuc2VsZWN0ZWRJbmRleCA9IG1hdFRhYi5wb3NpdGlvbjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBSZWZhY3RvcmVkIHVuZGVyIEVYVUktMTEwIHRvIGFkZHJlc3MgaW5maW5pdGUgdGFiIGxvb3AgdG8gdXNlIHRhYkluZGV4Q2hhbmdlZCBpbnN0ZWFkXG4gIHB1YmxpYyB0YWJDaGFuZ2VkKHRhYkluZGV4Q2hhbmdlZDogbnVtYmVyKTogdm9pZCB7XG4gICAgY29uc3QgbWF0VGFiID0gdGhpcy50YWJHcm91cC5fdGFicy5maW5kKHRhYiA9PiB0YWIuaXNBY3RpdmUpO1xuICAgIGNvbnN0IHRhYkxhYmVsID0gbWF0VGFiLnRleHRMYWJlbDtcbiAgICAvLyBzb3J0ZWRUYWJzIGFyZSBmcmFnbWVudHNcbiAgICAvLyBhcHBlbmRlZC9wcmVwZXBlbmRlZCB0YWJzIHVzZSByb3V0ZXIgbmF2aWdhdGlvblxuICAgIGlmICgodGFiSW5kZXhDaGFuZ2VkIDw9IDEgJiYgdGhpcy5wcmVwZW5kZWRUYWJzICYmIHRoaXMucHJlcGVuZGVkVGFicy5sZW5ndGgpIHx8XG4gICAgICAodGhpcy5hcHBlbmRlZFRhYnM/Lmxlbmd0aCAmJiAodGFiTGFiZWwgPT09IHRoaXMuSEVBUklOR1NfVEFCX0xBQkVMXG4gICAgICAgIHx8IHRhYkxhYmVsID09PSB0aGlzLnJweFRyYW5zbGF0aW9uUGlwZS50cmFuc2Zvcm0odGhpcy5IRUFSSU5HU19UQUJfTEFCRUwpKSkpIHtcbiAgICAgIC8vIEhhY2sgdG8gZ2V0IElEIGZyb20gdGFiIGFzIGl0J3Mgbm90IGVhc2lseSBhY2hpZXZlZCB0aHJvdWdoIEFuZ3VsYXIgTWF0ZXJpYWwgVGFic1xuICAgICAgY29uc3QgdGFiID0gbWF0VGFiWydfdmlld0NvbnRhaW5lclJlZiddIGFzIFZpZXdDb250YWluZXJSZWY7XG4gICAgICBjb25zdCBpZCA9ICh0YWIuZWxlbWVudC5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50KS5pZDtcbiAgICAgIC8vIGNhc2VzL2Nhc2UtZGV0YWlscy86Y2FzZUlkL2hlYXJpbmdzXG4gICAgICAvLyBjYXNlcy9jYXNlLWRldGFpbHMvOmNhc2VJZC9yb2xlcy1hbmQtYWNjZXNzXG4gICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbaWRdLCB7IHJlbGF0aXZlVG86IHRoaXMucm91dGUgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIFJvdXRpbmcgaGVyZSBpcyBiYXNlZCBvbiB0YWIgbGFiZWwsIG5vdCBpZGVhbFxuICAgICAgLy8gY2FzZXMvY2FzZS1kZXRhaWxzLzpjYXNlSWQjdGFiTGFiZWxcbiAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnY2FzZXMnLCAnY2FzZS1kZXRhaWxzJywgdGhpcy5jYXNlRGV0YWlscy5jYXNlX2lkXSwgeyBmcmFnbWVudDogdGFiTGFiZWwgfSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG9uTGlua0NsaWNrZWQodHJpZ2dlck91dHB1dEV2ZW50VGV4dDogc3RyaW5nKTogdm9pZCB7XG4gICAgLy8gR2V0IHRoZSAqYWJzb2x1dGUqIChub3QgcmVsYXRpdmUpIGluZGV4IG9mIHRoZSB0YXJnZXQgdGFiIGFuZCBzZXQgYXMgdGhlIGFjdGl2ZSB0YWIsIHVzaW5nIHRoZSBzZWxlY3RlZEluZGV4IGlucHV0XG4gICAgLy8gb2YgbWF0LXRhYi1ncm91cCAoYm91bmQgdG8gc2VsZWN0ZWRUYWJJbmRleClcbiAgICBjb25zdCB0YXJnZXRUYWJJbmRleCA9IHRoaXMudGFiR3JvdXAuX3RhYnMudG9BcnJheSgpLmZpbmRJbmRleCh0YWIgPT4gdGFiLnRleHRMYWJlbCA9PT0gdHJpZ2dlck91dHB1dEV2ZW50VGV4dCk7XG4gICAgaWYgKHRhcmdldFRhYkluZGV4ID4gLTEpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRUYWJJbmRleCA9IHRhcmdldFRhYkluZGV4O1xuICAgICAgdGhpcy50YWJHcm91cC5zZWxlY3RlZEluZGV4ID0gdGFyZ2V0VGFiSW5kZXg7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGhhc0FjdGl2ZUNhc2VGbGFncygpOiBib29sZWFuIHtcbiAgICAvLyBEZXRlcm1pbmUgd2hpY2ggdGFiIGNvbnRhaW5zIHRoZSBGbGFnTGF1bmNoZXIgQ2FzZUZpZWxkIHR5cGUsIGZyb20gdGhlIENhc2VWaWV3IG9iamVjdCBpbiB0aGUgc25hcHNob3QgZGF0YVxuICAgIGNvbnN0IGNhc2VGbGFnc1RhYiA9IHRoaXMuY2FzZURldGFpbHM/LnRhYnNcbiAgICAgID8gKHRoaXMuY2FzZURldGFpbHMudGFicykuZmlsdGVyKFxuICAgICAgICB0YWIgPT4gdGFiLmZpZWxkcyAmJiB0YWIuZmllbGRzLnNvbWUoY2FzZUZpZWxkID0+IEZpZWxkc1V0aWxzLmlzRmxhZ0xhdW5jaGVyQ2FzZUZpZWxkKGNhc2VGaWVsZCkpKVswXVxuICAgICAgOiBudWxsO1xuXG4gICAgaWYgKGNhc2VGbGFnc1RhYikge1xuICAgICAgLy8gQ2hlY2sgd2hldGhlciB0aGUgRmxhZ0xhdW5jaGVyIENhc2VGaWVsZCBpcyBpbiBleHRlcm5hbCBtb2RlIG9yIG5vdDsgdGhlIG5vdGlmaWNhdGlvbiBiYW5uZXIgc2hvdWxkIG5vdCBiZVxuICAgICAgLy8gZGlzcGxheWVkIGZvciBleHRlcm5hbCB1c2Vyc1xuICAgICAgdGhpcy5jYXNlRmxhZ3NFeHRlcm5hbFVzZXIgPSBjYXNlRmxhZ3NUYWIuZmllbGRzLmZpbmQoXG4gICAgICAgIGNhc2VGaWVsZCA9PiBGaWVsZHNVdGlscy5pc0ZsYWdMYXVuY2hlckNhc2VGaWVsZChjYXNlRmllbGQpKS5kaXNwbGF5X2NvbnRleHRfcGFyYW1ldGVyID09PSB0aGlzLmNhc2VGbGFnc1JlYWRFeHRlcm5hbE1vZGU7XG5cbiAgICAgIC8vIEdldCB0aGUgYWN0aXZlIGNhc2UgZmxhZ3MgY291bnRcbiAgICAgIC8vIENhbm5vdCBmaWx0ZXIgb3V0IGFueXRoaW5nIG90aGVyIHRoYW4gdG8gcmVtb3ZlIHRoZSBGbGFnTGF1bmNoZXIgQ2FzZUZpZWxkIGJlY2F1c2UgRmxhZ3MgZmllbGRzIG1heSBiZVxuICAgICAgLy8gY29udGFpbmVkIGluIG90aGVyIENhc2VGaWVsZCBpbnN0YW5jZXMsIGVpdGhlciBhcyBhIHN1Yi1maWVsZCBvZiBhIENvbXBsZXggZmllbGQsIG9yIGZpZWxkcyBpbiBhIGNvbGxlY3Rpb25cbiAgICAgIC8vIChvciBzdWItZmllbGRzIG9mIENvbXBsZXggZmllbGRzIGluIGEgY29sbGVjdGlvbilcbiAgICAgIGNvbnN0IGFjdGl2ZUNhc2VGbGFncyA9IGNhc2VGbGFnc1RhYi5maWVsZHNcbiAgICAgICAgLmZpbHRlcihjYXNlRmllbGQgPT4gIUZpZWxkc1V0aWxzLmlzRmxhZ0xhdW5jaGVyQ2FzZUZpZWxkKGNhc2VGaWVsZCkgJiYgY2FzZUZpZWxkLnZhbHVlKVxuICAgICAgICAucmVkdWNlKChhY3RpdmUsIGNhc2VGbGFnKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIEZpZWxkc1V0aWxzLmNvdW50QWN0aXZlRmxhZ3NJbkNhc2VGaWVsZChhY3RpdmUsIGNhc2VGbGFnKTtcbiAgICAgICAgfSwgMCk7XG5cbiAgICAgIGlmIChhY3RpdmVDYXNlRmxhZ3MgPiAwKSB7XG4gICAgICAgIGNvbnN0IGRlc2NyaXB0aW9uID0gYWN0aXZlQ2FzZUZsYWdzID4gMVxuICAgICAgICAgID8gYFRoZXJlIGFyZSAke2FjdGl2ZUNhc2VGbGFnc30gYWN0aXZlIGZsYWdzIG9uIHRoaXMgY2FzZS5gIDogJ1RoZXJlIGlzIDEgYWN0aXZlIGZsYWcgb24gdGhpcyBjYXNlLic7XG4gICAgICAgIC8vIEluaXRpYWxpc2UgYW5kIGRpc3BsYXkgbm90aWZpY2F0aW9uIGJhbm5lclxuICAgICAgICB0aGlzLm5vdGlmaWNhdGlvbkJhbm5lckNvbmZpZyA9IHtcbiAgICAgICAgICBiYW5uZXJUeXBlOiBOb3RpZmljYXRpb25CYW5uZXJUeXBlLklORk9STUFUSU9OLFxuICAgICAgICAgIGhlYWRpbmdUZXh0OiAnSW1wb3J0YW50JyxcbiAgICAgICAgICBkZXNjcmlwdGlvbixcbiAgICAgICAgICBzaG93TGluazogdHJ1ZSxcbiAgICAgICAgICBsaW5rVGV4dDogJ1ZpZXcgY2FzZSBmbGFncycsXG4gICAgICAgICAgdHJpZ2dlck91dHB1dEV2ZW50OiB0cnVlLFxuICAgICAgICAgIHRyaWdnZXJPdXRwdXRFdmVudFRleHQ6IGNhc2VGbGFnc1RhYi5sYWJlbCxcbiAgICAgICAgICBoZWFkZXJDbGFzczogTm90aWZpY2F0aW9uQmFubmVySGVhZGVyQ2xhc3MuSU5GT1JNQVRJT05cbiAgICAgICAgfTtcblxuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICAvKipcbiAgICogSW5kaWNhdGVzIHRoYXQgYSBDYXNlRmllbGQgaXMgdG8gYmUgZGlzcGxheWVkIHdpdGhvdXQgYSBsYWJlbCwgYXMgaXMgZXhwZWN0ZWQgZm9yIGFsbCBDb21wb25lbnRMYXVuY2hlci10eXBlXG4gICAqIGZpZWxkcy5cbiAgICogQHBhcmFtIGNhc2VGaWVsZCBUaGUgYENhc2VGaWVsZGAgaW5zdGFuY2UgdG8gY2hlY2tcbiAgICogQHJldHVybnMgYHRydWVgIGlmIGl0IHNob3VsZCBub3QgaGF2ZSBhIGxhYmVsOyBgZmFsc2VgIG90aGVyd2lzZVxuICAgKi9cbiAgcHVibGljIGlzRmllbGRUb0hhdmVOb0xhYmVsKGNhc2VGaWVsZDogQ2FzZUZpZWxkKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGNhc2VGaWVsZC5maWVsZF90eXBlLnR5cGUgPT09ICdDb21wb25lbnRMYXVuY2hlcidcbiAgICAgICYmIGNhc2VGaWVsZC5kaXNwbGF5X2NvbnRleHRfcGFyYW1ldGVyID09PSAnI0FSR1VNRU5UKENhc2VGaWxlVmlldyknO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0KCk6IHZvaWQge1xuICAgIC8vIENsb25lIGFuZCBzb3J0IHRhYnMgYXJyYXlcbiAgICB0aGlzLnNvcnRlZFRhYnMgPSB0aGlzLm9yZGVyU2VydmljZS5zb3J0KHRoaXMuY2FzZURldGFpbHM/LnRhYnMpO1xuICAgIHRoaXMuY2FzZUZpZWxkcyA9IHRoaXMuZ2V0VGFiRmllbGRzKCk7XG4gICAgdGhpcy5zb3J0ZWRUYWJzID0gdGhpcy5zb3J0VGFiRmllbGRzQW5kRmlsdGVyVGFicyh0aGlzLnNvcnRlZFRhYnMpO1xuICAgIHRoaXMuZm9ybUdyb3VwID0gdGhpcy5idWlsZEZvcm1Hcm91cCh0aGlzLmNhc2VGaWVsZHMpO1xuICAgIGlmICh0aGlzLmNhc2VEZXRhaWxzPy50cmlnZ2VycyAmJiB0aGlzLmVycm9yKSB7XG4gICAgICB0aGlzLnJlc2V0RXJyb3JzKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzb3J0VGFiRmllbGRzQW5kRmlsdGVyVGFicyh0YWJzOiBDYXNlVGFiW10pOiBDYXNlVGFiW10ge1xuICAgIHJldHVybiB0YWJzPy5tYXAodGFiID0+IE9iamVjdC5hc3NpZ24oe30sIHRhYiwgeyBmaWVsZHM6IHRoaXMub3JkZXJTZXJ2aWNlLnNvcnQodGFiLmZpZWxkcykgfSkpXG4gICAgICAuZmlsdGVyKHRhYiA9PiBTaG93Q29uZGl0aW9uLmdldEluc3RhbmNlKHRhYi5zaG93X2NvbmRpdGlvbikubWF0Y2hCeUNvbnRleHRGaWVsZHModGhpcy5jYXNlRmllbGRzKSk7XG4gIH1cblxuICBwcml2YXRlIGdldFRhYkZpZWxkcygpOiBDYXNlRmllbGRbXSB7XG4gICAgY29uc3QgY2FzZURhdGFGaWVsZHMgPSB0aGlzLnNvcnRlZFRhYnM/LnJlZHVjZSgoYWNjLCB0YWIpID0+IHtcbiAgICAgIHJldHVybiBhY2MuY29uY2F0KHBsYWluVG9DbGFzcyhDYXNlRmllbGQsIHRhYi5maWVsZHMpKTtcbiAgICB9LCBbXSk7XG5cbiAgICByZXR1cm4gY2FzZURhdGFGaWVsZHM/LmNvbmNhdCh0aGlzLmNhc2VEZXRhaWxzLm1ldGFkYXRhRmllbGRzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBGb3IgRVVJLTM4MjU6XG4gICAqIEJ1aWxkcyBhIEZvcm1Hcm91cCBmcm9tIGFsbCB0aGUgQ2FzZUZpZWxkcyBjb250YWluZWQgd2l0aGluIHRoZSB2aWV3LlxuICAgKiBUaGlzIEZvcm1Hcm91cCBpcyBuZWNlc3NhcnkgZm9yIGV2YWx1YXRpb24gdGhlIHNob3cvaGlkZSBjb25kaXRpb25zIG9mXG4gICAqIGZpZWxkcyB0aGF0IGFyZSBkZXBlbmRlbnQgb24gYSBmaWVsZCBvbmx5IGF2YWlsYWJsZSBvbiBhIERJRkZFUkVOVCB0YWIuXG4gICAqL1xuICBwcml2YXRlIGJ1aWxkRm9ybUdyb3VwKGNhc2VGaWVsZHM6IENhc2VGaWVsZFtdKTogRm9ybUdyb3VwIHtcbiAgICBsZXQgdmFsdWU6IG9iamVjdCA9IHt9O1xuICAgIGlmIChjYXNlRmllbGRzKSB7XG4gICAgICBjYXNlRmllbGRzLmZvckVhY2goY2FzZUZpZWxkID0+IHtcbiAgICAgICAgdmFsdWUgPSB7XG4gICAgICAgICAgLi4udmFsdWUsXG4gICAgICAgICAgW2Nhc2VGaWVsZC5pZF06IGNhc2VGaWVsZC52YWx1ZVxuICAgICAgICB9O1xuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiBuZXcgRm9ybUdyb3VwKHsgZGF0YTogbmV3IEZvcm1Db250cm9sKHZhbHVlKSB9KTtcbiAgfVxuXG4gIHByaXZhdGUgcmVzZXRFcnJvcnMoKTogdm9pZCB7XG4gICAgdGhpcy5lcnJvck5vdGlmaWVyU2VydmljZS5hbm5vdW5jZUVycm9yKG51bGwpO1xuICAgIHRoaXMuYWxlcnRTZXJ2aWNlLmNsZWFyKCk7XG4gIH1cbn1cbiIsIjwhLS0gR2VuZXJpYyBlcnJvciBoZWFkaW5nIGFuZCBlcnJvciBtZXNzYWdlIHRvIGJlIGRpc3BsYXllZCBvbmx5IGlmIHRoZXJlIGFyZSBubyBzcGVjaWZpYyBjYWxsYmFjayBlcnJvcnMgb3Igd2FybmluZ3MsIG9yIG5vIGVycm9yIGRldGFpbHMgLS0+XG48ZGl2ICpuZ0lmPVwiZXJyb3IgJiYgIShlcnJvci5jYWxsYmFja0Vycm9ycyB8fCBlcnJvci5jYWxsYmFja1dhcm5pbmdzIHx8IGVycm9yLmRldGFpbHMpXCIgY2xhc3M9XCJlcnJvci1zdW1tYXJ5XCJcbiAgICAgcm9sZT1cImdyb3VwXCIgYXJpYS1sYWJlbGxlZGJ5PVwiZWRpdC1jYXNlLWV2ZW50X2Vycm9yLXN1bW1hcnktaGVhZGluZ1wiIHRhYmluZGV4PVwiLTFcIj5cbiAgPGgxIGNsYXNzPVwiaGVhZGluZy1oMSBlcnJvci1zdW1tYXJ5LWhlYWRpbmdcIiBpZD1cImVkaXQtY2FzZS1ldmVudF9lcnJvci1zdW1tYXJ5LWhlYWRpbmdcIj5cbiAgICB7eydTb21ldGhpbmcgd2VudCB3cm9uZycgfCBycHhUcmFuc2xhdGV9fVxuICA8L2gxPlxuICA8ZGl2IGNsYXNzPVwiZ292dWstZXJyb3Itc3VtbWFyeV9fYm9keVwiIGlkPVwiZWRpdC1jYXNlLWV2ZW50X2Vycm9yLXN1bW1hcnktYm9keVwiPlxuICAgIDxwPnt7XCJXZSdyZSB3b3JraW5nIHRvIGZpeCB0aGUgcHJvYmxlbS4gVHJ5IGFnYWluIHNob3J0bHkuXCIgfCBycHhUcmFuc2xhdGV9fTwvcD5cbiAgICA8cD5cbiAgICAgIDxhIGhyZWY9XCJnZXQtaGVscFwiIHRhcmdldD1cIl9ibGFua1wiPlxuICAgICAgICB7e1wiQ29udGFjdCB1c1wiIHwgcnB4VHJhbnNsYXRlfX08L2E+IHt7XCJpZiB5b3UncmUgc3RpbGwgaGF2aW5nIHByb2JsZW1zLlwiIHwgcnB4VHJhbnNsYXRlfX1cbiAgICA8L3A+XG4gIDwvZGl2PlxuPC9kaXY+XG48IS0tIENhbGxiYWNrIGVycm9yIGhlYWRpbmcgYW5kIGVycm9yIG1lc3NhZ2UgdG8gYmUgZGlzcGxheWVkIGlmIHRoZXJlIGFyZSBzcGVjaWZpYyBlcnJvciBkZXRhaWxzIC0tPlxuPGRpdiAqbmdJZj1cImVycm9yICYmIGVycm9yLmRldGFpbHNcIiBjbGFzcz1cImVycm9yLXN1bW1hcnlcIiByb2xlPVwiZ3JvdXBcIlxuICAgICBhcmlhLWxhYmVsbGVkYnk9XCJlZGl0LWNhc2UtZXZlbnRfZXJyb3Itc3VtbWFyeS1oZWFkaW5nXCIgdGFiaW5kZXg9XCItMVwiPlxuICA8aDIgY2xhc3M9XCJoZWFkaW5nLWgyIGVycm9yLXN1bW1hcnktaGVhZGluZ1wiIGlkPVwiZWRpdC1jYXNlLWV2ZW50X2Vycm9yLXN1bW1hcnktaGVhZGluZ1wiPlxuICAgIHt7J1RoZSBjYWxsYmFjayBkYXRhIGZhaWxlZCB2YWxpZGF0aW9uJyB8IHJweFRyYW5zbGF0ZX19XG4gIDwvaDI+XG4gIDxwPnt7ZXJyb3IubWVzc2FnZSB8IHJweFRyYW5zbGF0ZX19PC9wPlxuICA8dWwgKm5nSWY9XCJlcnJvci5kZXRhaWxzPy5maWVsZF9lcnJvcnNcIiBjbGFzcz1cImVycm9yLXN1bW1hcnktbGlzdFwiPlxuICAgIDxsaSAqbmdGb3I9XCJsZXQgZmllbGRFcnJvciBvZiBlcnJvci5kZXRhaWxzLmZpZWxkX2Vycm9yc1wiPlxuICAgICAge3tmaWVsZEVycm9yLm1lc3NhZ2UgfCBycHhUcmFuc2xhdGV9fVxuICAgIDwvbGk+XG4gIDwvdWw+XG48L2Rpdj5cbjxjY2QtY2FsbGJhY2stZXJyb3JzXG4gIFt0cmlnZ2VyVGV4dENvbnRpbnVlXT1cInRyaWdnZXJUZXh0U3RhcnRcIlxuICBbdHJpZ2dlclRleHRJZ25vcmVdPVwidHJpZ2dlclRleHRJZ25vcmVXYXJuaW5nc1wiXG4gIFtjYWxsYmFja0Vycm9yc1N1YmplY3RdPVwiY2FsbGJhY2tFcnJvcnNTdWJqZWN0XCJcbiAgKGNhbGxiYWNrRXJyb3JzQ29udGV4dCk9XCJjYWxsYmFja0Vycm9yc05vdGlmeSgkZXZlbnQpXCI+XG48L2NjZC1jYWxsYmFjay1lcnJvcnM+XG48Y2NkLWFjdGl2aXR5IFtjYXNlSWRdPVwiY2FzZURldGFpbHMuY2FzZV9pZFwiIFtkaXNwbGF5TW9kZV09XCJCQU5ORVJcIj48L2NjZC1hY3Rpdml0eT5cbjxkaXYgY2xhc3M9XCJncmlkLXJvd1wiPlxuICA8ZGl2IGNsYXNzPVwiY29sdW1uLW9uZS1oYWxmXCI+XG4gICAgPGNjZC1jYXNlLWhlYWRlciBbY2FzZURldGFpbHNdPVwiY2FzZURldGFpbHNcIj48L2NjZC1jYXNlLWhlYWRlcj5cbiAgICA8ZGl2IGNsYXNzPVwiY2FzZS12aWV3ZXItY29udHJvbHNcIiAqbmdJZj1cImhhc1ByaW50ICYmICFpc0RyYWZ0KCkgJiYgaXNQcmludEVuYWJsZWQoKVwiPlxuICAgICAgPGEgaWQ9XCJjYXNlLXZpZXdlci1jb250cm9sLXByaW50XCIgcm91dGVyTGluaz1cInByaW50XCIgY2xhc3M9XCJidXR0b24gYnV0dG9uLXNlY29uZGFyeVwiPnt7J1ByaW50JyB8IHJweFRyYW5zbGF0ZX19PC9hPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbiAgPGRpdiAqbmdJZj1cImhhc0V2ZW50U2VsZWN0b3JcIiBjbGFzcz1cImNvbHVtbi1vbmUtaGFsZlwiPlxuICAgIDxjY2QtZXZlbnQtdHJpZ2dlciBbaXNEaXNhYmxlZF09XCJpc1RyaWdnZXJCdXR0b25EaXNhYmxlZCgpXCIgW3RyaWdnZXJzXT1cImNhc2VEZXRhaWxzLnRyaWdnZXJzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgW3RyaWdnZXJUZXh0XT1cInRyaWdnZXJUZXh0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgW2V2ZW50SWRdPVwiZXZlbnRJZFwiXG4gICAgICAgICAgICAgICAgICAgICAgIChvblRyaWdnZXJDaGFuZ2UpPVwiY2xlYXJFcnJvcnNBbmRXYXJuaW5ncygpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgKG9uVHJpZ2dlclN1Ym1pdCk9XCJhcHBseVRyaWdnZXIoJGV2ZW50KVwiPjwvY2NkLWV2ZW50LXRyaWdnZXI+XG4gIDwvZGl2PlxuPC9kaXY+XG48ZGl2IGNsYXNzPVwiZ3JpZC1yb3dcIiAqbmdJZj1cImFjdGl2ZUNhc2VGbGFncyAmJiAhY2FzZUZsYWdzRXh0ZXJuYWxVc2VyXCI+XG4gIDxkaXYgY2xhc3M9XCJjb2x1bW4tZnVsbFwiPlxuICAgIDxjY2Qtbm90aWZpY2F0aW9uLWJhbm5lciBbbm90aWZpY2F0aW9uQmFubmVyQ29uZmlnXT1cIm5vdGlmaWNhdGlvbkJhbm5lckNvbmZpZ1wiIChsaW5rQ2xpY2tlZCk9XCJvbkxpbmtDbGlja2VkKCRldmVudClcIj5cbiAgICA8L2NjZC1ub3RpZmljYXRpb24tYmFubmVyPlxuICA8L2Rpdj5cbjwvZGl2PlxuPGRpdiBjbGFzcz1cImdyaWQtcm93XCI+XG4gIDxkaXYgY2xhc3M9XCJjb2x1bW4tZnVsbFwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJoYXNUYWJzUHJlc2VudCgpXCI+XG4gICAgICA8bWF0LXRhYi1ncm91cCAjdGFiR3JvdXAgYW5pbWF0aW9uRHVyYXRpb249XCIwbXNcIiAoc2VsZWN0ZWRJbmRleENoYW5nZSk9XCJ0YWJDaGFuZ2VkKCRldmVudClcIiBbZGlzYWJsZVJpcHBsZV09XCJ0cnVlXCJcbiAgICAgICAgW3NlbGVjdGVkSW5kZXhdPVwic2VsZWN0ZWRUYWJJbmRleFwiPlxuICAgICAgICA8bWF0LXRhYiAqbmdGb3I9XCJsZXQgdGFiIG9mIHByZXBlbmRlZFRhYnNcIiBbaWRdPVwidGFiLmlkXCIgW2xhYmVsXT1cInRhYi5sYWJlbCB8IHJweFRyYW5zbGF0ZVwiPlxuICAgICAgICA8L21hdC10YWI+XG4gICAgICAgIDxtYXQtdGFiICpuZ0Zvcj1cImxldCB0YWIgb2Ygc29ydGVkVGFiczsgbGV0IGN1cklkeD1pbmRleFwiIFtpZF09XCJ0YWIuaWRcIiBbbGFiZWxdPVwidGFiLmxhYmVsIHwgcnB4VHJhbnNsYXRlXCI+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIG1hdFRhYkNvbnRlbnQ+XG4gICAgICAgICAgICA8dGFibGUgW2NsYXNzXT1cInRhYi5pZFwiIFthdHRyLmFyaWEtbGFiZWxdPVwiJ2Nhc2Ugdmlld2VyIHRhYmxlJyB8IHJweFRyYW5zbGF0ZVwiPlxuICAgICAgICAgICAgICA8dGJvZHk+XG4gICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGZpZWxkIG9mIHRhYiB8IGNjZFRhYkZpZWxkcyB8IGNjZFJlYWRGaWVsZHNGaWx0ZXI6ZmFsc2UgOnVuZGVmaW5lZCA6dHJ1ZSA6IGZvcm1Hcm91cC5jb250cm9sc1snZGF0YSddXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjY2RMYWJlbFN1YnN0aXR1dG9yIFtjYXNlRmllbGRdPVwiZmllbGRcIiBbY29udGV4dEZpZWxkc109XCJjYXNlRmllbGRzXCIgW2hpZGRlbl09XCJmaWVsZC5oaWRkZW5cIj5cbiAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cIiEoZmllbGQgfCBjY2RJc0NvbXBvdW5kKVwiPlxuICAgICAgICAgICAgICAgICAgICA8dHIgKm5nU3dpdGNoQ2FzZT1cInRydWVcIj5cbiAgICAgICAgICAgICAgICAgICAgICA8dGggaWQ9XCJjYXNlLXZpZXdlci1maWVsZC1sYWJlbFwiICpuZ0lmPVwiIWlzRmllbGRUb0hhdmVOb0xhYmVsKGZpZWxkKVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhc2Utdmlld2VyLWxhYmVsIHRleHQtMTZcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAge3tmaWVsZC5sYWJlbCB8IHJweFRyYW5zbGF0ZX19PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgPC90aD5cbiAgICAgICAgICAgICAgICAgICAgICA8dGQgW2lkXT1cIidjYXNlLXZpZXdlci1maWVsZC1yZWFkLS0nICsgZmllbGQuaWRcIiBzY29wZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LTE2XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxjY2QtZmllbGQtcmVhZCBbdG9wTGV2ZWxGb3JtR3JvdXBdPVwiZm9ybUdyb3VwLmNvbnRyb2xzWydkYXRhJ11cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Nhc2VGaWVsZF09XCJmaWVsZFwiIFtjYXNlUmVmZXJlbmNlXT1cImNhc2VEZXRhaWxzLmNhc2VfaWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW21hcmtkb3duVXNlSHJlZkFzUm91dGVyTGlua109XCJtYXJrZG93blVzZUhyZWZBc1JvdXRlckxpbmtcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jY2QtZmllbGQtcmVhZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgICAgICA8dHIgKm5nU3dpdGNoQ2FzZT1cImZhbHNlXCIgY2xhc3M9XCJjb21wb3VuZC1maWVsZFwiPlxuICAgICAgICAgICAgICAgICAgICAgIDx0aCBbaWRdPVwiJ2Nhc2Utdmlld2VyLWZpZWxkLXJlYWQtLScgKyBmaWVsZC5pZFwiIHNjb3BlPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtMTZcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGNjZC1maWVsZC1yZWFkIFt0b3BMZXZlbEZvcm1Hcm91cF09XCJmb3JtR3JvdXAuY29udHJvbHNbJ2RhdGEnXVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2FzZUZpZWxkXT1cImZpZWxkXCIgW2Nhc2VSZWZlcmVuY2VdPVwiY2FzZURldGFpbHMuY2FzZV9pZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbWFya2Rvd25Vc2VIcmVmQXNSb3V0ZXJMaW5rXT1cIm1hcmtkb3duVXNlSHJlZkFzUm91dGVyTGlua1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NjZC1maWVsZC1yZWFkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XG4gICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgIDwvdGJvZHk+XG4gICAgICAgICAgICA8L3RhYmxlPlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvbWF0LXRhYj5cbiAgICAgICAgPG1hdC10YWIgKm5nRm9yPVwibGV0IHRhYiBvZiBhcHBlbmRlZFRhYnNcIiBbaWRdPVwidGFiLmlkXCIgW2xhYmVsXT1cInRhYi5sYWJlbCB8IHJweFRyYW5zbGF0ZVwiPlxuICAgICAgICA8L21hdC10YWI+XG4gICAgICA8L21hdC10YWItZ3JvdXA+XG4gICAgICA8cm91dGVyLW91dGxldCAqbmdJZj1cIihwcmVwZW5kZWRUYWJzICYmIHByZXBlbmRlZFRhYnMubGVuZ3RoKSB8fCAoYXBwZW5kZWRUYWJzICYmIGFwcGVuZGVkVGFicy5sZW5ndGgpXCI+PC9yb3V0ZXItb3V0bGV0PlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19