@hmcts/ccd-case-ui-toolkit 6.14.0 → 6.14.1-wa-4-case-flags

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 (268) hide show
  1. package/bundles/hmcts-ccd-case-ui-toolkit.umd.js +890 -741
  2. package/bundles/hmcts-ccd-case-ui-toolkit.umd.js.map +1 -1
  3. package/bundles/hmcts-ccd-case-ui-toolkit.umd.min.js +1 -1
  4. package/bundles/hmcts-ccd-case-ui-toolkit.umd.min.js.map +1 -1
  5. package/esm2015/lib/app.config.js +1 -1
  6. package/esm2015/lib/components/form/date-input/date-input.component.js +8 -8
  7. package/esm2015/lib/components/header/header-bar/header-bar.component.js +2 -3
  8. package/esm2015/lib/shared/commons/case-edit-data/case-edit-data.module.js +1 -1
  9. package/esm2015/lib/shared/commons/case-edit-data/case-edit-data.service.js +5 -8
  10. package/esm2015/lib/shared/commons/case-edit-data/case-edit-validation.model.js +1 -1
  11. package/esm2015/lib/shared/components/activity/activity.component.js +5 -5
  12. package/esm2015/lib/shared/components/case-editor/case-edit/case-edit.component.js +1 -1
  13. package/esm2015/lib/shared/components/case-editor/case-edit-page/case-edit-page.component.js +22 -6
  14. package/esm2015/lib/shared/components/case-editor/case-edit-submit/case-edit-submit.component.js +4 -4
  15. package/esm2015/lib/shared/components/case-editor/case-editor.module.js +1 -1
  16. package/esm2015/lib/shared/components/case-editor/case-event-completion/case-event-completion.component.js +2 -1
  17. package/esm2015/lib/shared/components/case-editor/case-event-completion/components/case-event-completion-task-reassigned/case-event-completion-task-reassigned.component.js +3 -3
  18. package/esm2015/lib/shared/components/case-editor/domain/wizard-page-field-complex-override.model.js +2 -1
  19. package/esm2015/lib/shared/components/case-editor/domain/wizard-page-field.model.js +1 -1
  20. package/esm2015/lib/shared/components/case-editor/domain/wizard-page.model.js +2 -1
  21. package/esm2015/lib/shared/components/case-editor/services/cases.service.js +11 -22
  22. package/esm2015/lib/shared/components/case-editor/services/page-validation.service.js +2 -2
  23. package/esm2015/lib/shared/components/case-editor/services/wizard-page-field-to-case-field.mapper.js +12 -12
  24. package/esm2015/lib/shared/components/case-editor/services/work-allocation.service.js +1 -1
  25. package/esm2015/lib/shared/components/case-history/domain/case-history.model.js +2 -1
  26. package/esm2015/lib/shared/components/case-viewer/case-challenged-access-request/case-challenged-access-request.component.js +5 -5
  27. package/esm2015/lib/shared/components/case-viewer/case-event-trigger/case-event-trigger.component.js +2 -2
  28. package/esm2015/lib/shared/components/case-viewer/case-full-access-view/case-full-access-view.component.js +3 -3
  29. package/esm2015/lib/shared/components/case-viewer/case-specific-access-request/case-specific-access-request.component.js +4 -4
  30. package/esm2015/lib/shared/components/case-viewer/case-viewer.component.js +5 -5
  31. package/esm2015/lib/shared/components/case-viewer/printer/pipes/print-url.pipe.js +3 -3
  32. package/esm2015/lib/shared/components/case-viewer/services/case.resolver.js +2 -2
  33. package/esm2015/lib/shared/components/error/callback-errors.component.js +5 -5
  34. package/esm2015/lib/shared/components/error/domain/error-context.js +1 -1
  35. package/esm2015/lib/shared/components/event-start/event-guard/event-start.guard.js +2 -2
  36. package/esm2015/lib/shared/components/pagination/pagination.component.js +10 -10
  37. package/esm2015/lib/shared/components/palette/address/address-option.model.js +4 -7
  38. package/esm2015/lib/shared/components/palette/address/write-address-field.component.js +4 -4
  39. package/esm2015/lib/shared/components/palette/base-field/field-read.component.js +2 -2
  40. package/esm2015/lib/shared/components/palette/base-field/field-write.component.js +2 -2
  41. package/esm2015/lib/shared/components/palette/case-file-view/case-file-view-field.component.js +12 -5
  42. package/esm2015/lib/shared/components/palette/case-file-view/components/case-file-view-folder-selector/case-file-view-folder-selector.component.js +1 -1
  43. package/esm2015/lib/shared/components/palette/case-file-view/index.js +1 -2
  44. package/esm2015/lib/shared/components/palette/case-flag/components/case-flag-table/case-flag-table.component.js +1 -1
  45. package/esm2015/lib/shared/components/palette/case-flag/components/select-flag-location/select-flag-location.component.js +2 -2
  46. package/esm2015/lib/shared/components/palette/case-flag/enums/index.js +1 -1
  47. package/esm2015/lib/shared/components/palette/collection/collection-create-checker.service.js +5 -5
  48. package/esm2015/lib/shared/components/palette/collection/write-collection-field.component.js +19 -8
  49. package/esm2015/lib/shared/components/palette/complex/read-complex-field-collection-table.component.js +4 -3
  50. package/esm2015/lib/shared/components/palette/dynamic-multi-select-list/index.js +3 -0
  51. package/esm2015/lib/shared/components/palette/dynamic-multi-select-list/read-dynamic-multi-select-list-field.component.js +47 -0
  52. package/esm2015/lib/shared/components/palette/dynamic-multi-select-list/write-dynamic-multi-select-list-field.component.js +153 -0
  53. package/esm2015/lib/shared/components/palette/dynamic-radio-list/write-dynamic-radio-list-field.component.js +5 -6
  54. package/esm2015/lib/shared/components/palette/index.js +2 -1
  55. package/esm2015/lib/shared/components/palette/linked-cases/components/link-cases/link-cases.component.js +1 -1
  56. package/esm2015/lib/shared/components/palette/linked-cases/components/linked-cases-table/linked-cases-from-table.component.js +2 -2
  57. package/esm2015/lib/shared/components/palette/linked-cases/components/linked-cases-table/linked-cases-to-table.component.js +26 -2
  58. package/esm2015/lib/shared/components/palette/linked-cases/domain/linked-cases-state.model.js +1 -1
  59. package/esm2015/lib/shared/components/palette/linked-cases/domain/linked-cases.model.js +2 -1
  60. package/esm2015/lib/shared/components/palette/linked-cases/read-linked-cases-field.component.js +2 -2
  61. package/esm2015/lib/shared/components/palette/linked-cases/services/linked-cases.service.js +2 -3
  62. package/esm2015/lib/shared/components/palette/linked-cases/write-linked-cases-field.component.js +38 -89
  63. package/esm2015/lib/shared/components/palette/order-summary/fee.model.js +2 -1
  64. package/esm2015/lib/shared/components/palette/order-summary/order-summary.model.js +1 -1
  65. package/esm2015/lib/shared/components/palette/palette.module.js +31 -11
  66. package/esm2015/lib/shared/components/palette/palette.service.js +5 -3
  67. package/esm2015/lib/shared/components/palette/text-area/write-text-area-field.component.js +2 -2
  68. package/esm2015/lib/shared/components/palette/utils/date.pipe.js +4 -4
  69. package/esm2015/lib/shared/components/palette/yes-no/yes-no.service.js +3 -1
  70. package/esm2015/lib/shared/components/search-filters/domain/search-input.model.js +1 -1
  71. package/esm2015/lib/shared/components/search-filters/search-filters.component.js +2 -2
  72. package/esm2015/lib/shared/components/search-result/search-result.component.js +5 -5
  73. package/esm2015/lib/shared/components/workbasket-filters/workbasket-filters.component.js +3 -3
  74. package/esm2015/lib/shared/directives/conditional-show/domain/conditional-show.model.js +4 -3
  75. package/esm2015/lib/shared/directives/conditional-show/services/condition-parser.service.js +5 -9
  76. package/esm2015/lib/shared/domain/addresses/address.model.js +2 -1
  77. package/esm2015/lib/shared/domain/case-details.model.js +2 -1
  78. package/esm2015/lib/shared/domain/case-event-data.model.js +2 -1
  79. package/esm2015/lib/shared/domain/case-file-view/case-file-view-category.model.js +1 -1
  80. package/esm2015/lib/shared/domain/case-file-view/case-file-view-document.model.js +2 -1
  81. package/esm2015/lib/shared/domain/case-file-view/categories-and-documents.model.js +1 -1
  82. package/esm2015/lib/shared/domain/case-file-view/document-tree-node/document-tree-node.model.js +2 -1
  83. package/esm2015/lib/shared/domain/case-flag/flag-type.model.js +2 -1
  84. package/esm2015/lib/shared/domain/case-flag/hmcts-service-detail.model.js +2 -1
  85. package/esm2015/lib/shared/domain/case-view/case-event-trigger.model.js +2 -1
  86. package/esm2015/lib/shared/domain/case-view/case-tab.model.js +2 -1
  87. package/esm2015/lib/shared/domain/case-view/case-view-event.model.js +2 -1
  88. package/esm2015/lib/shared/domain/case-view/case-view.model.js +2 -1
  89. package/esm2015/lib/shared/domain/case-view/role-assignment-response.model.js +1 -1
  90. package/esm2015/lib/shared/domain/case-view/role-request.model.js +1 -1
  91. package/esm2015/lib/shared/domain/definition/case-event.model.js +1 -1
  92. package/esm2015/lib/shared/domain/definition/case-field.model.js +7 -3
  93. package/esm2015/lib/shared/domain/definition/case-type.model.js +2 -1
  94. package/esm2015/lib/shared/domain/definition/event-case-field.model.js +2 -1
  95. package/esm2015/lib/shared/domain/definition/field-type-enum.model.js +1 -1
  96. package/esm2015/lib/shared/domain/definition/field-type.model.js +2 -1
  97. package/esm2015/lib/shared/domain/document/document-data.model.js +2 -1
  98. package/esm2015/lib/shared/domain/organisation/organisation-converter.js +8 -8
  99. package/esm2015/lib/shared/domain/pagination-metadata.model.js +1 -1
  100. package/esm2015/lib/shared/domain/search/field.model.js +1 -1
  101. package/esm2015/lib/shared/domain/search/search-result-view-column.model.js +1 -1
  102. package/esm2015/lib/shared/domain/search/search-result-view-item.model.js +2 -1
  103. package/esm2015/lib/shared/domain/search/search-result-view.model.js +2 -1
  104. package/esm2015/lib/shared/domain/user/user-info.model.js +1 -1
  105. package/esm2015/lib/shared/domain/workbasket/workbasket-input.model.js +1 -8
  106. package/esm2015/lib/shared/fixture/case-field-builder.js +13 -13
  107. package/esm2015/lib/shared/fixture/shared.test.fixture.js +27 -27
  108. package/esm2015/lib/shared/pipes/complex/{cdd-page-fields.pipe.js → ccd-page-fields.pipe.js} +3 -3
  109. package/esm2015/lib/shared/pipes/complex/index.js +2 -2
  110. package/esm2015/lib/shared/pipes/index.js +2 -1
  111. package/esm2015/lib/shared/services/activity/activity.polling.service.js +2 -2
  112. package/esm2015/lib/shared/services/activity/activity.service.js +9 -18
  113. package/esm2015/lib/shared/services/addresses/address-parser.js +5 -5
  114. package/esm2015/lib/shared/services/case-fields/format-translator.service.js +2 -2
  115. package/esm2015/lib/shared/services/case-flag/case-flag-refdata.service.js +2 -2
  116. package/esm2015/lib/shared/services/common-data-service/common-data-service.js +2 -2
  117. package/esm2015/lib/shared/services/definitions/definitions.service.js +3 -8
  118. package/esm2015/lib/shared/services/fields/fields.purger.js +15 -15
  119. package/esm2015/lib/shared/services/fields/fields.utils.js +12 -4
  120. package/esm2015/lib/shared/services/form/field-type-sanitiser.js +17 -1
  121. package/esm2015/lib/shared/services/form/form-value.service.js +1 -2
  122. package/esm2015/lib/shared/services/loading/loading.service.js +2 -7
  123. package/esm2015/lib/shared/services/search/search.service.js +5 -10
  124. package/esm2015/lib/shared/services/search-result/sorting/search-result-view-item-comparator-factory.js +5 -5
  125. package/esm2015/lib/shared/services/window/window.service.js +1 -1
  126. package/fesm2015/hmcts-ccd-case-ui-toolkit.js +833 -695
  127. package/fesm2015/hmcts-ccd-case-ui-toolkit.js.map +1 -1
  128. package/lib/app.config.d.ts.map +1 -1
  129. package/lib/components/header/header-bar/header-bar.component.d.ts.map +1 -1
  130. package/lib/shared/commons/case-edit-data/case-edit-data.module.d.ts.map +1 -1
  131. package/lib/shared/commons/case-edit-data/case-edit-data.service.d.ts +3 -5
  132. package/lib/shared/commons/case-edit-data/case-edit-data.service.d.ts.map +1 -1
  133. package/lib/shared/commons/case-edit-data/case-edit-validation.model.d.ts.map +1 -1
  134. package/lib/shared/components/case-editor/case-edit/case-edit.component.d.ts +3 -3
  135. package/lib/shared/components/case-editor/case-edit/case-edit.component.d.ts.map +1 -1
  136. package/lib/shared/components/case-editor/case-edit-page/case-edit-page.component.d.ts +2 -0
  137. package/lib/shared/components/case-editor/case-edit-page/case-edit-page.component.d.ts.map +1 -1
  138. package/lib/shared/components/case-editor/case-event-completion/case-event-completion.component.d.ts.map +1 -1
  139. package/lib/shared/components/case-editor/case-event-completion/components/case-event-completion-task-reassigned/case-event-completion-task-reassigned.component.d.ts +2 -2
  140. package/lib/shared/components/case-editor/case-event-completion/components/case-event-completion-task-reassigned/case-event-completion-task-reassigned.component.d.ts.map +1 -1
  141. package/lib/shared/components/case-editor/domain/wizard-page-field-complex-override.model.d.ts.map +1 -1
  142. package/lib/shared/components/case-editor/domain/wizard-page-field.model.d.ts.map +1 -1
  143. package/lib/shared/components/case-editor/domain/wizard-page.model.d.ts.map +1 -1
  144. package/lib/shared/components/case-editor/services/cases.service.d.ts +1 -3
  145. package/lib/shared/components/case-editor/services/cases.service.d.ts.map +1 -1
  146. package/lib/shared/components/case-editor/services/wizard-page-field-to-case-field.mapper.d.ts.map +1 -1
  147. package/lib/shared/components/case-editor/services/work-allocation.service.d.ts.map +1 -1
  148. package/lib/shared/components/case-history/domain/case-history.model.d.ts.map +1 -1
  149. package/lib/shared/components/case-viewer/case-challenged-access-request/case-challenged-access-request.component.d.ts.map +1 -1
  150. package/lib/shared/components/case-viewer/case-viewer.component.d.ts.map +1 -1
  151. package/lib/shared/components/case-viewer/printer/pipes/print-url.pipe.d.ts.map +1 -1
  152. package/lib/shared/components/case-viewer/services/case.resolver.d.ts.map +1 -1
  153. package/lib/shared/components/error/domain/error-context.d.ts +2 -2
  154. package/lib/shared/components/error/domain/error-context.d.ts.map +1 -1
  155. package/lib/shared/components/event-start/event-guard/event-start.guard.d.ts +1 -1
  156. package/lib/shared/components/event-start/event-guard/event-start.guard.d.ts.map +1 -1
  157. package/lib/shared/components/pagination/pagination.component.d.ts +3 -3
  158. package/lib/shared/components/palette/address/address-option.model.d.ts.map +1 -1
  159. package/lib/shared/components/palette/address/write-address-field.component.d.ts.map +1 -1
  160. package/lib/shared/components/palette/case-file-view/case-file-view-field.component.d.ts +5 -2
  161. package/lib/shared/components/palette/case-file-view/case-file-view-field.component.d.ts.map +1 -1
  162. package/lib/shared/components/palette/case-file-view/index.d.ts +0 -1
  163. package/lib/shared/components/palette/case-file-view/index.d.ts.map +1 -1
  164. package/lib/shared/components/palette/case-flag/components/select-flag-location/select-flag-location.component.d.ts.map +1 -1
  165. package/lib/shared/components/palette/case-flag/enums/index.d.ts.map +1 -1
  166. package/lib/shared/components/palette/collection/collection-create-checker.service.d.ts.map +1 -1
  167. package/lib/shared/components/palette/collection/write-collection-field.component.d.ts +1 -0
  168. package/lib/shared/components/palette/collection/write-collection-field.component.d.ts.map +1 -1
  169. package/lib/shared/components/palette/complex/read-complex-field-collection-table.component.d.ts +1 -1
  170. package/lib/shared/components/palette/complex/read-complex-field-collection-table.component.d.ts.map +1 -1
  171. package/lib/shared/components/palette/dynamic-multi-select-list/index.d.ts +3 -0
  172. package/lib/shared/components/palette/dynamic-multi-select-list/index.d.ts.map +1 -0
  173. package/lib/shared/components/palette/dynamic-multi-select-list/read-dynamic-multi-select-list-field.component.d.ts +9 -0
  174. package/lib/shared/components/palette/dynamic-multi-select-list/read-dynamic-multi-select-list-field.component.d.ts.map +1 -0
  175. package/lib/shared/components/palette/dynamic-multi-select-list/write-dynamic-multi-select-list-field.component.d.ts +17 -0
  176. package/lib/shared/components/palette/dynamic-multi-select-list/write-dynamic-multi-select-list-field.component.d.ts.map +1 -0
  177. package/lib/shared/components/palette/dynamic-radio-list/write-dynamic-radio-list-field.component.d.ts +1 -1
  178. package/lib/shared/components/palette/dynamic-radio-list/write-dynamic-radio-list-field.component.d.ts.map +1 -1
  179. package/lib/shared/components/palette/index.d.ts +1 -0
  180. package/lib/shared/components/palette/index.d.ts.map +1 -1
  181. package/lib/shared/components/palette/linked-cases/components/linked-cases-table/linked-cases-from-table.component.d.ts +4 -4
  182. package/lib/shared/components/palette/linked-cases/components/linked-cases-table/linked-cases-from-table.component.d.ts.map +1 -1
  183. package/lib/shared/components/palette/linked-cases/components/linked-cases-table/linked-cases-to-table.component.d.ts +2 -0
  184. package/lib/shared/components/palette/linked-cases/components/linked-cases-table/linked-cases-to-table.component.d.ts.map +1 -1
  185. package/lib/shared/components/palette/linked-cases/domain/linked-cases-state.model.d.ts +0 -4
  186. package/lib/shared/components/palette/linked-cases/domain/linked-cases-state.model.d.ts.map +1 -1
  187. package/lib/shared/components/palette/linked-cases/domain/linked-cases.model.d.ts.map +1 -1
  188. package/lib/shared/components/palette/linked-cases/read-linked-cases-field.component.d.ts.map +1 -1
  189. package/lib/shared/components/palette/linked-cases/services/linked-cases.service.d.ts.map +1 -1
  190. package/lib/shared/components/palette/linked-cases/write-linked-cases-field.component.d.ts +0 -4
  191. package/lib/shared/components/palette/linked-cases/write-linked-cases-field.component.d.ts.map +1 -1
  192. package/lib/shared/components/palette/order-summary/fee.model.d.ts.map +1 -1
  193. package/lib/shared/components/palette/order-summary/order-summary.model.d.ts.map +1 -1
  194. package/lib/shared/components/palette/palette.module.d.ts +60 -59
  195. package/lib/shared/components/palette/palette.module.d.ts.map +1 -1
  196. package/lib/shared/components/palette/palette.service.d.ts.map +1 -1
  197. package/lib/shared/components/palette/text-area/write-text-area-field.component.d.ts.map +1 -1
  198. package/lib/shared/components/palette/utils/date.pipe.d.ts.map +1 -1
  199. package/lib/shared/components/palette/yes-no/yes-no.service.d.ts.map +1 -1
  200. package/lib/shared/components/search-filters/domain/search-input.model.d.ts.map +1 -1
  201. package/lib/shared/components/workbasket-filters/workbasket-filters.component.d.ts.map +1 -1
  202. package/lib/shared/directives/conditional-show/domain/conditional-show.model.d.ts.map +1 -1
  203. package/lib/shared/directives/conditional-show/services/condition-parser.service.d.ts.map +1 -1
  204. package/lib/shared/domain/addresses/address.model.d.ts.map +1 -1
  205. package/lib/shared/domain/case-details.model.d.ts.map +1 -1
  206. package/lib/shared/domain/case-event-data.model.d.ts.map +1 -1
  207. package/lib/shared/domain/case-file-view/case-file-view-category.model.d.ts.map +1 -1
  208. package/lib/shared/domain/case-file-view/case-file-view-document.model.d.ts.map +1 -1
  209. package/lib/shared/domain/case-file-view/categories-and-documents.model.d.ts.map +1 -1
  210. package/lib/shared/domain/case-file-view/document-tree-node/document-tree-node.model.d.ts.map +1 -1
  211. package/lib/shared/domain/case-flag/flag-type.model.d.ts.map +1 -1
  212. package/lib/shared/domain/case-flag/hmcts-service-detail.model.d.ts.map +1 -1
  213. package/lib/shared/domain/case-view/case-event-trigger.model.d.ts.map +1 -1
  214. package/lib/shared/domain/case-view/case-tab.model.d.ts.map +1 -1
  215. package/lib/shared/domain/case-view/case-view-event.model.d.ts.map +1 -1
  216. package/lib/shared/domain/case-view/case-view.model.d.ts.map +1 -1
  217. package/lib/shared/domain/case-view/role-assignment-response.model.d.ts +1 -2
  218. package/lib/shared/domain/case-view/role-assignment-response.model.d.ts.map +1 -1
  219. package/lib/shared/domain/case-view/role-request.model.d.ts.map +1 -1
  220. package/lib/shared/domain/definition/case-event.model.d.ts.map +1 -1
  221. package/lib/shared/domain/definition/case-field.model.d.ts.map +1 -1
  222. package/lib/shared/domain/definition/case-type.model.d.ts.map +1 -1
  223. package/lib/shared/domain/definition/event-case-field.model.d.ts.map +1 -1
  224. package/lib/shared/domain/definition/field-type-enum.model.d.ts +1 -1
  225. package/lib/shared/domain/definition/field-type-enum.model.d.ts.map +1 -1
  226. package/lib/shared/domain/definition/field-type.model.d.ts.map +1 -1
  227. package/lib/shared/domain/document/document-data.model.d.ts.map +1 -1
  228. package/lib/shared/domain/organisation/organisation-converter.d.ts.map +1 -1
  229. package/lib/shared/domain/pagination-metadata.model.d.ts +2 -2
  230. package/lib/shared/domain/pagination-metadata.model.d.ts.map +1 -1
  231. package/lib/shared/domain/search/field.model.d.ts.map +1 -1
  232. package/lib/shared/domain/search/search-result-view-column.model.d.ts.map +1 -1
  233. package/lib/shared/domain/search/search-result-view-item.model.d.ts.map +1 -1
  234. package/lib/shared/domain/search/search-result-view.model.d.ts.map +1 -1
  235. package/lib/shared/domain/user/user-info.model.d.ts.map +1 -1
  236. package/lib/shared/domain/workbasket/workbasket-input.model.d.ts +0 -1
  237. package/lib/shared/domain/workbasket/workbasket-input.model.d.ts.map +1 -1
  238. package/lib/shared/fixture/case-field-builder.d.ts +6 -6
  239. package/lib/shared/fixture/case-field-builder.d.ts.map +1 -1
  240. package/lib/shared/fixture/shared.test.fixture.d.ts +6 -6
  241. package/lib/shared/fixture/shared.test.fixture.d.ts.map +1 -1
  242. package/lib/shared/pipes/complex/{cdd-page-fields.pipe.d.ts → ccd-page-fields.pipe.d.ts} +1 -1
  243. package/lib/shared/pipes/complex/ccd-page-fields.pipe.d.ts.map +1 -0
  244. package/lib/shared/pipes/complex/index.d.ts +1 -1
  245. package/lib/shared/pipes/index.d.ts +1 -0
  246. package/lib/shared/pipes/index.d.ts.map +1 -1
  247. package/lib/shared/pipes/pipes.module.d.ts +1 -1
  248. package/lib/shared/services/activity/activity.polling.service.d.ts.map +1 -1
  249. package/lib/shared/services/activity/activity.service.d.ts.map +1 -1
  250. package/lib/shared/services/addresses/address-parser.d.ts.map +1 -1
  251. package/lib/shared/services/common-data-service/common-data-service.d.ts.map +1 -1
  252. package/lib/shared/services/definitions/definitions.service.d.ts.map +1 -1
  253. package/lib/shared/services/fields/fields.purger.d.ts.map +1 -1
  254. package/lib/shared/services/fields/fields.utils.d.ts +2 -1
  255. package/lib/shared/services/fields/fields.utils.d.ts.map +1 -1
  256. package/lib/shared/services/form/field-type-sanitiser.d.ts +2 -0
  257. package/lib/shared/services/form/field-type-sanitiser.d.ts.map +1 -1
  258. package/lib/shared/services/loading/loading.service.d.ts +1 -4
  259. package/lib/shared/services/loading/loading.service.d.ts.map +1 -1
  260. package/lib/shared/services/search/search.service.d.ts +0 -2
  261. package/lib/shared/services/search/search.service.d.ts.map +1 -1
  262. package/lib/shared/services/search-result/sorting/search-result-view-item-comparator-factory.d.ts.map +1 -1
  263. package/lib/shared/services/window/window.service.d.ts.map +1 -1
  264. package/package.json +2 -2
  265. package/esm2015/lib/shared/components/palette/case-file-view/case-file-view-field-read.component.js +0 -72
  266. package/lib/shared/components/palette/case-file-view/case-file-view-field-read.component.d.ts +0 -8
  267. package/lib/shared/components/palette/case-file-view/case-file-view-field-read.component.d.ts.map +0 -1
  268. package/lib/shared/pipes/complex/cdd-page-fields.pipe.d.ts.map +0 -1
@@ -116,13 +116,13 @@ function FooterComponent_div_3_Template(rf, ctx) { if (rf & 1) {
116
116
  i0.ɵɵadvance(3);
117
117
  i0.ɵɵtextInterpolate(ctx_r1.workhours);
118
118
  } }
119
- const _c0$_ = [[["", "footerSolsNavLinks", ""]], [["", "footerCaseWorkerNavLinks", ""]]];
119
+ const _c0$$ = [[["", "footerSolsNavLinks", ""]], [["", "footerCaseWorkerNavLinks", ""]]];
120
120
  const _c1$s = ["[footerSolsNavLinks]", "[footerCaseWorkerNavLinks]"];
121
121
  class FooterComponent {
122
122
  }
123
123
  FooterComponent.ɵfac = function FooterComponent_Factory(t) { return new (t || FooterComponent)(); };
124
124
  FooterComponent.ɵcmp = i0.ɵɵdefineComponent({ type: FooterComponent, selectors: [["cut-footer-bar"]], inputs: { email: "email", isSolicitor: "isSolicitor", phone: "phone", workhours: "workhours" }, ngContentSelectors: _c1$s, decls: 4, vars: 4, consts: [["id", "footer", "role", "footer", 1, "group", "js-footer"], [1, "footer-wrapper"], ["class", "footer-meta", 4, "ngIf"], [1, "footer-meta"], [1, "footer-meta-inner"], [1, "open-government-licence"], [1, "logo"], ["href", "https://www.nationalarchives.gov.uk/doc/open-government-licence/version/3/", "rel", "license"], [1, "copyright"], ["href", "https://www.nationalarchives.gov.uk/information-management/re-using-public-sector-information/copyright-and-re-use/crown-copyright/"], [1, "title"], [1, "footer-text"], [1, "email"], [3, "href"], [1, "phone"], [1, "work-hours"]], template: function FooterComponent_Template(rf, ctx) { if (rf & 1) {
125
- i0.ɵɵprojectionDef(_c0$_);
125
+ i0.ɵɵprojectionDef(_c0$$);
126
126
  i0.ɵɵelementStart(0, "footer", 0);
127
127
  i0.ɵɵelementStart(1, "div", 1);
128
128
  i0.ɵɵtemplate(2, FooterComponent_div_2_Template, 15, 0, "div", 2);
@@ -189,7 +189,7 @@ function HeaderBarComponent_div_9_Template(rf, ctx) { if (rf & 1) {
189
189
  i0.ɵɵadvance(3);
190
190
  i0.ɵɵtextInterpolate(ctx_r2.title);
191
191
  } }
192
- const _c0$Z = [[["", "headerNavigation", ""]]];
192
+ const _c0$_ = [[["", "headerNavigation", ""]]];
193
193
  const _c1$r = ["[headerNavigation]"];
194
194
  class HeaderBarComponent {
195
195
  constructor() {
@@ -201,7 +201,7 @@ class HeaderBarComponent {
201
201
  }
202
202
  HeaderBarComponent.ɵfac = function HeaderBarComponent_Factory(t) { return new (t || HeaderBarComponent)(); };
203
203
  HeaderBarComponent.ɵcmp = i0.ɵɵdefineComponent({ type: HeaderBarComponent, selectors: [["cut-header-bar"]], inputs: { title: "title", isSolicitor: "isSolicitor", username: "username" }, outputs: { signOutRequest: "signOutRequest" }, ngContentSelectors: _c1$r, decls: 15, vars: 8, consts: [["role", "banner", "id", "global-header", 1, "with-proposition"], [1, "header-wrapper"], [1, "header-global"], [4, "ngIf"], ["class", "global-header", 4, "ngIf"], [1, "header-proposition"], [1, "content"], ["href", "#proposition-links", 1, "js-header-toggle", "menu"], ["id", "proposition-menu", 4, "ngIf"], [1, "proposition-right"], ["id", "user-name"], ["id", "sign-out", "href", "javascript:void(0)", 3, "click"], ["href", "https://www.gov.uk", "title", "Go to the GOV.UK homepage", "id", "logo", 1, "content", 2, "margin-left", "0px"], ["src", "/img/gov.uk_logotype_crown_invert_trans.png?0.23.0", "width", "36", "height", "32", "alt", ""], [1, "global-header"], [1, "title"], ["id", "proposition-menu"], [1, "title-solicitor"], ["id", "proposition-name"]], template: function HeaderBarComponent_Template(rf, ctx) { if (rf & 1) {
204
- i0.ɵɵprojectionDef(_c0$Z);
204
+ i0.ɵɵprojectionDef(_c0$_);
205
205
  i0.ɵɵelementStart(0, "header", 0);
206
206
  i0.ɵɵelementStart(1, "div", 1);
207
207
  i0.ɵɵelementStart(2, "div", 2);
@@ -258,13 +258,13 @@ HeaderBarComponent.ɵcmp = i0.ɵɵdefineComponent({ type: HeaderBarComponent, se
258
258
  type: Output
259
259
  }] }); })();
260
260
 
261
- const _c0$Y = [[["", "leftNavLinks", ""]], [["", "rightNavLinks", ""]]];
261
+ const _c0$Z = [[["", "leftNavLinks", ""]], [["", "rightNavLinks", ""]]];
262
262
  const _c1$q = ["[leftNavLinks]", "[rightNavLinks]"];
263
263
  class NavigationComponent {
264
264
  }
265
265
  NavigationComponent.ɵfac = function NavigationComponent_Factory(t) { return new (t || NavigationComponent)(); };
266
266
  NavigationComponent.ɵcmp = i0.ɵɵdefineComponent({ type: NavigationComponent, selectors: [["cut-nav-bar"]], inputs: { isSolicitor: "isSolicitor" }, ngContentSelectors: _c1$q, decls: 4, vars: 2, consts: [[1, "cut-nav-bar"]], template: function NavigationComponent_Template(rf, ctx) { if (rf & 1) {
267
- i0.ɵɵprojectionDef(_c0$Y);
267
+ i0.ɵɵprojectionDef(_c0$Z);
268
268
  i0.ɵɵelementStart(0, "div");
269
269
  i0.ɵɵelementStart(1, "nav", 0);
270
270
  i0.ɵɵprojection(2);
@@ -381,13 +381,13 @@ HeadersModule.ɵinj = i0.ɵɵdefineInjector({ imports: [[CommonModule, RouterMod
381
381
  }]
382
382
  }], null, null); })();
383
383
 
384
- const _c0$X = [[["", "topBody", ""]], [["", "leftBody", ""]], [["", "rightBody", ""]]];
384
+ const _c0$Y = [[["", "topBody", ""]], [["", "leftBody", ""]], [["", "rightBody", ""]]];
385
385
  const _c1$p = ["[topBody]", "[leftBody]", "[rightBody]"];
386
386
  class BodyComponent {
387
387
  }
388
388
  BodyComponent.ɵfac = function BodyComponent_Factory(t) { return new (t || BodyComponent)(); };
389
389
  BodyComponent.ɵcmp = i0.ɵɵdefineComponent({ type: BodyComponent, selectors: [["cut-body"]], ngContentSelectors: _c1$p, decls: 4, vars: 0, consts: [[1, "global-display"]], template: function BodyComponent_Template(rf, ctx) { if (rf & 1) {
390
- i0.ɵɵprojectionDef(_c0$X);
390
+ i0.ɵɵprojectionDef(_c0$Y);
391
391
  i0.ɵɵelementStart(0, "div", 0);
392
392
  i0.ɵɵprojection(1);
393
393
  i0.ɵɵprojection(2, 1);
@@ -404,7 +404,7 @@ BodyComponent.ɵcmp = i0.ɵɵdefineComponent({ type: BodyComponent, selectors: [
404
404
  }]
405
405
  }], null, null); })();
406
406
 
407
- const _c0$W = function (a0) { return { "govuk-input--error": a0 }; };
407
+ const _c0$X = function (a0) { return { "govuk-input--error": a0 }; };
408
408
  function DateInputComponent_div_16_Template(rf, ctx) { if (rf & 1) {
409
409
  const _r8 = i0.ɵɵgetCurrentView();
410
410
  i0.ɵɵelementStart(0, "div", 12);
@@ -420,7 +420,7 @@ function DateInputComponent_div_16_Template(rf, ctx) { if (rf & 1) {
420
420
  i0.ɵɵadvance(1);
421
421
  i0.ɵɵproperty("for", ctx_r3.hourId());
422
422
  i0.ɵɵadvance(2);
423
- i0.ɵɵproperty("id", ctx_r3.hourId())("name", ctx_r3.hourId())("value", ctx_r3.displayHour)("ngClass", i0.ɵɵpureFunction1(5, _c0$W, ctx_r3.isInvalid));
423
+ i0.ɵɵproperty("id", ctx_r3.hourId())("name", ctx_r3.hourId())("value", ctx_r3.displayHour)("ngClass", i0.ɵɵpureFunction1(5, _c0$X, ctx_r3.isInvalid));
424
424
  } }
425
425
  function DateInputComponent_div_17_Template(rf, ctx) { if (rf & 1) {
426
426
  const _r13 = i0.ɵɵgetCurrentView();
@@ -437,7 +437,7 @@ function DateInputComponent_div_17_Template(rf, ctx) { if (rf & 1) {
437
437
  i0.ɵɵadvance(1);
438
438
  i0.ɵɵproperty("for", ctx_r4.minuteId());
439
439
  i0.ɵɵadvance(2);
440
- i0.ɵɵproperty("id", ctx_r4.minuteId())("name", ctx_r4.minuteId())("value", ctx_r4.displayMinute)("ngClass", i0.ɵɵpureFunction1(5, _c0$W, ctx_r4.isInvalid));
440
+ i0.ɵɵproperty("id", ctx_r4.minuteId())("name", ctx_r4.minuteId())("value", ctx_r4.displayMinute)("ngClass", i0.ɵɵpureFunction1(5, _c0$X, ctx_r4.isInvalid));
441
441
  } }
442
442
  function DateInputComponent_div_18_Template(rf, ctx) { if (rf & 1) {
443
443
  const _r18 = i0.ɵɵgetCurrentView();
@@ -454,7 +454,7 @@ function DateInputComponent_div_18_Template(rf, ctx) { if (rf & 1) {
454
454
  i0.ɵɵadvance(1);
455
455
  i0.ɵɵproperty("for", ctx_r5.secondId());
456
456
  i0.ɵɵadvance(2);
457
- i0.ɵɵproperty("id", ctx_r5.secondId())("name", ctx_r5.secondId())("value", ctx_r5.displaySecond)("ngClass", i0.ɵɵpureFunction1(5, _c0$W, ctx_r5.isInvalid));
457
+ i0.ɵɵproperty("id", ctx_r5.secondId())("name", ctx_r5.secondId())("value", ctx_r5.displaySecond)("ngClass", i0.ɵɵpureFunction1(5, _c0$X, ctx_r5.isInvalid));
458
458
  } }
459
459
  class DateInputComponent {
460
460
  constructor() {
@@ -579,22 +579,22 @@ class DateInputComponent {
579
579
  }
580
580
  }
581
581
  dayId() {
582
- return this.id + '-day';
582
+ return `${this.id}-day`;
583
583
  }
584
584
  monthId() {
585
- return this.id + '-month';
585
+ return `${this.id}-month`;
586
586
  }
587
587
  yearId() {
588
- return this.id + '-year';
588
+ return `${this.id}-year`;
589
589
  }
590
590
  hourId() {
591
- return this.id + '-hour';
591
+ return `${this.id}-hour`;
592
592
  }
593
593
  minuteId() {
594
- return this.id + '-minute';
594
+ return `${this.id}-minute`;
595
595
  }
596
596
  secondId() {
597
- return this.id + '-second';
597
+ return `${this.id}-second`;
598
598
  }
599
599
  viewValue() {
600
600
  if (this.day || this.month || this.year || this.hour || this.minute || this.second) {
@@ -609,7 +609,7 @@ class DateInputComponent {
609
609
  this.minute ? this.pad(this.minute) : '',
610
610
  this.second ? this.pad(this.second) : ''
611
611
  ].join(':');
612
- return date + 'T' + time + '.000';
612
+ return `${date}T${time}.000`;
613
613
  }
614
614
  else {
615
615
  return date;
@@ -683,15 +683,15 @@ DateInputComponent.ɵcmp = i0.ɵɵdefineComponent({ type: DateInputComponent, se
683
683
  i0.ɵɵadvance(2);
684
684
  i0.ɵɵproperty("for", ctx.dayId());
685
685
  i0.ɵɵadvance(2);
686
- i0.ɵɵproperty("id", ctx.dayId())("name", ctx.dayId())("value", ctx.displayDay)("ngClass", i0.ɵɵpureFunction1(18, _c0$W, ctx.isInvalid));
686
+ i0.ɵɵproperty("id", ctx.dayId())("name", ctx.dayId())("value", ctx.displayDay)("ngClass", i0.ɵɵpureFunction1(18, _c0$X, ctx.isInvalid));
687
687
  i0.ɵɵadvance(3);
688
688
  i0.ɵɵproperty("for", ctx.monthId());
689
689
  i0.ɵɵadvance(2);
690
- i0.ɵɵproperty("id", ctx.monthId())("name", ctx.monthId())("value", ctx.displayMonth)("ngClass", i0.ɵɵpureFunction1(20, _c0$W, ctx.isInvalid));
690
+ i0.ɵɵproperty("id", ctx.monthId())("name", ctx.monthId())("value", ctx.displayMonth)("ngClass", i0.ɵɵpureFunction1(20, _c0$X, ctx.isInvalid));
691
691
  i0.ɵɵadvance(3);
692
692
  i0.ɵɵproperty("for", ctx.yearId());
693
693
  i0.ɵɵadvance(2);
694
- i0.ɵɵproperty("id", ctx.yearId())("name", ctx.yearId())("value", ctx.displayYear)("ngClass", i0.ɵɵpureFunction1(22, _c0$W, ctx.isInvalid));
694
+ i0.ɵɵproperty("id", ctx.yearId())("name", ctx.yearId())("value", ctx.displayYear)("ngClass", i0.ɵɵpureFunction1(22, _c0$X, ctx.isInvalid));
695
695
  i0.ɵɵadvance(2);
696
696
  i0.ɵɵproperty("ngIf", ctx.isDateTime);
697
697
  i0.ɵɵadvance(1);
@@ -761,7 +761,7 @@ function AlertComponent_ng_container_5_Template(rf, ctx) { if (rf & 1) {
761
761
  i0.ɵɵelementEnd();
762
762
  i0.ɵɵelementContainerEnd();
763
763
  } }
764
- const _c0$V = ["*"];
764
+ const _c0$W = ["*"];
765
765
  var AlertMessageType;
766
766
  (function (AlertMessageType) {
767
767
  AlertMessageType["WARNING"] = "warning";
@@ -781,7 +781,7 @@ AlertComponent.TYPE_SUCCESS = 'success';
781
781
  AlertComponent.TYPE_ERROR = 'error';
782
782
  AlertComponent.TYPE_INFORMATION = 'information';
783
783
  AlertComponent.ɵfac = function AlertComponent_Factory(t) { return new (t || AlertComponent)(); };
784
- AlertComponent.ɵcmp = i0.ɵɵdefineComponent({ type: AlertComponent, selectors: [["cut-alert"]], inputs: { type: "type", showIcon: "showIcon" }, ngContentSelectors: _c0$V, decls: 10, vars: 10, consts: [[1, "hmcts-banner"], [3, "ngSwitch"], [4, "ngSwitchCase"], [1, "hmcts-banner__message"], [1, "hmcts-banner__assistive"], ["fill", "currentColor", "role", "presentation", "focusable", "false", "xmlns", "http://www.w3.org/2000/svg", "viewBox", "0 0 25 25", "height", "25", "width", "25", 1, "hmcts-banner__icon"], ["d", "M13.6,15.4h-2.3v-4.5h2.3V15.4z M13.6,19.8h-2.3v-2.2h2.3V19.8z M0,23.2h25L12.5,2L0,23.2z"], ["d", "M25,6.2L8.7,23.2L0,14.1l4-4.2l4.7,4.9L21,2L25,6.2z"], ["d", "M13.7,18.5h-2.4v-2.4h2.4V18.5z M12.5,13.7c-0.7,0-1.2-0.5-1.2-1.2V7.7c0-0.7,0.5-1.2,1.2-1.2s1.2,0.5,1.2,1.2v4.8\n C13.7,13.2,13.2,13.7,12.5,13.7z M12.5,0.5c-6.6,0-12,5.4-12,12s5.4,12,12,12s12-5.4,12-12S19.1,0.5,12.5,0.5z"]], template: function AlertComponent_Template(rf, ctx) { if (rf & 1) {
784
+ AlertComponent.ɵcmp = i0.ɵɵdefineComponent({ type: AlertComponent, selectors: [["cut-alert"]], inputs: { type: "type", showIcon: "showIcon" }, ngContentSelectors: _c0$W, decls: 10, vars: 10, consts: [[1, "hmcts-banner"], [3, "ngSwitch"], [4, "ngSwitchCase"], [1, "hmcts-banner__message"], [1, "hmcts-banner__assistive"], ["fill", "currentColor", "role", "presentation", "focusable", "false", "xmlns", "http://www.w3.org/2000/svg", "viewBox", "0 0 25 25", "height", "25", "width", "25", 1, "hmcts-banner__icon"], ["d", "M13.6,15.4h-2.3v-4.5h2.3V15.4z M13.6,19.8h-2.3v-2.2h2.3V19.8z M0,23.2h25L12.5,2L0,23.2z"], ["d", "M25,6.2L8.7,23.2L0,14.1l4-4.2l4.7,4.9L21,2L25,6.2z"], ["d", "M13.7,18.5h-2.4v-2.4h2.4V18.5z M12.5,13.7c-0.7,0-1.2-0.5-1.2-1.2V7.7c0-0.7,0.5-1.2,1.2-1.2s1.2,0.5,1.2,1.2v4.8\n C13.7,13.2,13.2,13.7,12.5,13.7z M12.5,0.5c-6.6,0-12,5.4-12,12s5.4,12,12,12s12-5.4,12-12S19.1,0.5,12.5,0.5z"]], template: function AlertComponent_Template(rf, ctx) { if (rf & 1) {
785
785
  i0.ɵɵprojectionDef();
786
786
  i0.ɵɵelementStart(0, "div", 0);
787
787
  i0.ɵɵelementContainerStart(1, 1);
@@ -1012,7 +1012,7 @@ NotificationBannerComponent.ɵcmp = i0.ɵɵdefineComponent({ type: NotificationB
1012
1012
  type: Output
1013
1013
  }] }); })();
1014
1014
 
1015
- const _c0$U = function (a0) { return { "js-hidden": a0 }; };
1015
+ const _c0$V = function (a0) { return { "js-hidden": a0 }; };
1016
1016
  const _c1$o = ["*"];
1017
1017
  class TabComponent {
1018
1018
  }
@@ -1023,7 +1023,7 @@ TabComponent.ɵcmp = i0.ɵɵdefineComponent({ type: TabComponent, selectors: [["
1023
1023
  i0.ɵɵprojection(1);
1024
1024
  i0.ɵɵelementEnd();
1025
1025
  } if (rf & 2) {
1026
- i0.ɵɵproperty("id", ctx.id)("ngClass", i0.ɵɵpureFunction1(3, _c0$U, !ctx.selected));
1026
+ i0.ɵɵproperty("id", ctx.id)("ngClass", i0.ɵɵpureFunction1(3, _c0$V, !ctx.selected));
1027
1027
  i0.ɵɵattribute("aria-hidden", !ctx.selected);
1028
1028
  } }, directives: [i1.NgClass], styles: [".tabs-toggle[_ngcontent-%COMP%]{display:block;padding:10px 15px 3px;margin-bottom:8px}.tabs-toggle[aria-selected=true][_ngcontent-%COMP%]{color:#0b0c0c;text-decoration:none;border-bottom:none}.tabs-toggle[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{color:#005ea5}@media (max-width:640px){.tabs-list[_ngcontent-%COMP%]{border-bottom:1px solid #bfc1c3;margin-left:-15px;margin-right:-15px}.tabs-toggle[_ngcontent-%COMP%]{border-top:1px solid #bfc1c3}.tabs-toggle[_ngcontent-%COMP%]:focus{color:#0b0c0c;outline:none}}@media (min-width:641px){.tabs-panel[_ngcontent-%COMP%]{border-top:1px solid #bfc1c3;clear:both;overflow:hidden}.tabs-list[_ngcontent-%COMP%]{float:left}.tabs-list-item[_ngcontent-%COMP%]{float:left;position:relative;bottom:-1px;padding-top:10px}.tabs-toggle[_ngcontent-%COMP%]{background-color:#dee0e2;border:1px solid transparent;float:left;margin:0 6px 0 0;text-decoration:none}.tabs-toggle[_ngcontent-%COMP%]:visited{color:#005ea5}.tabs-toggle-selected[_ngcontent-%COMP%], .tabs-toggle[aria-selected=true][_ngcontent-%COMP%]{background-color:#fff;border-bottom:0;border-color:#bfc1c3;padding-bottom:11px;margin-bottom:0;color:#0b0c0c}}"] });
1029
1029
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(TabComponent, [{
@@ -1043,7 +1043,7 @@ TabComponent.ɵcmp = i0.ɵɵdefineComponent({ type: TabComponent, selectors: [["
1043
1043
  type: Input
1044
1044
  }] }); })();
1045
1045
 
1046
- const _c0$T = ["tab"];
1046
+ const _c0$U = ["tab"];
1047
1047
  const _c1$n = function () { return ["."]; };
1048
1048
  const _c2$3 = function (a0) { return { "tabs-toggle-selected": a0 }; };
1049
1049
  function TabsComponent_li_2_Template(rf, ctx) { if (rf & 1) {
@@ -1088,7 +1088,7 @@ TabsComponent.ɵcmp = i0.ɵɵdefineComponent({ type: TabsComponent, selectors: [
1088
1088
  let _t;
1089
1089
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.panels = _t);
1090
1090
  } }, viewQuery: function TabsComponent_Query(rf, ctx) { if (rf & 1) {
1091
- i0.ɵɵviewQuery(_c0$T, 1);
1091
+ i0.ɵɵviewQuery(_c0$U, 1);
1092
1092
  } if (rf & 2) {
1093
1093
  let _t;
1094
1094
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.tabs = _t);
@@ -1153,7 +1153,7 @@ TabsModule.ɵinj = i0.ɵɵdefineInjector({ imports: [[
1153
1153
  }]
1154
1154
  }], null, null); })();
1155
1155
 
1156
- const _c0$S = function (a0, a1) { return { caseLocked: a0, someoneViewing: a1 }; };
1156
+ const _c0$T = function (a0, a1) { return { caseLocked: a0, someoneViewing: a1 }; };
1157
1157
  class ActivityBannerComponent {
1158
1158
  constructor() { }
1159
1159
  ngOnInit() {
@@ -1170,7 +1170,7 @@ ActivityBannerComponent.ɵcmp = i0.ɵɵdefineComponent({ type: ActivityBannerCom
1170
1170
  i0.ɵɵelementEnd();
1171
1171
  i0.ɵɵelementEnd();
1172
1172
  } if (rf & 2) {
1173
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction2(4, _c0$S, ctx.bannerType === "editor", ctx.bannerType === "viewer"));
1173
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction2(4, _c0$T, ctx.bannerType === "editor", ctx.bannerType === "viewer"));
1174
1174
  i0.ɵɵadvance(2);
1175
1175
  i0.ɵɵpropertyInterpolate("alt", ctx.description);
1176
1176
  i0.ɵɵpropertyInterpolate("src", ctx.imageLink, i0.ɵɵsanitizeUrl);
@@ -1521,7 +1521,7 @@ class ActivityService {
1521
1521
  }
1522
1522
  static handleHttpError(response) {
1523
1523
  const error = HttpErrorService.convertToHttpError(response);
1524
- if (response.status && response.status !== error.status) {
1524
+ if ((response === null || response === void 0 ? void 0 : response.status) !== error.status) {
1525
1525
  error.status = response.status;
1526
1526
  }
1527
1527
  return error;
@@ -1529,50 +1529,41 @@ class ActivityService {
1529
1529
  getOptions() {
1530
1530
  const userDetails = JSON.parse(this.sessionStorageService.getItem('userDetails'));
1531
1531
  const headers = new HttpHeaders().set('Content-Type', 'application/json').set('Authorization', userDetails.token);
1532
- const options = {
1532
+ return {
1533
1533
  headers,
1534
1534
  withCredentials: true,
1535
1535
  observe: 'body',
1536
1536
  };
1537
- return options;
1538
1537
  }
1539
1538
  getActivities(...caseId) {
1540
1539
  try {
1541
1540
  const options = this.getOptions();
1542
- const url = this.activityUrl() + `/cases/${caseId.join(',')}/activity`;
1541
+ const url = `${this.activityUrl()}/cases/${caseId.join(',')}/activity`;
1543
1542
  return this.http
1544
1543
  .get(url, options, false, ActivityService.handleHttpError)
1545
1544
  .pipe(map(response => response));
1546
1545
  }
1547
1546
  catch (error) {
1548
- console.log('user may not be authenticated.' + error);
1547
+ console.log(`user may not be authenticated.${error}`);
1549
1548
  }
1550
1549
  }
1551
1550
  postActivity(caseId, activity) {
1552
1551
  try {
1553
1552
  const options = this.getOptions();
1554
- const url = this.activityUrl() + `/cases/${caseId}/activity`;
1553
+ const url = `${this.activityUrl()}/cases/${caseId}/activity`;
1555
1554
  const body = { activity };
1556
1555
  return this.http
1557
1556
  .post(url, body, options, false)
1558
1557
  .pipe(map(response => response));
1559
1558
  }
1560
1559
  catch (error) {
1561
- console.log('user may not be authenticated.' + error);
1560
+ console.log(`user may not be authenticated.${error}`);
1562
1561
  }
1563
1562
  }
1564
1563
  verifyUserIsAuthorized() {
1565
- if (this.sessionStorageService.getItem('userDetails') === undefined) {
1566
- return;
1567
- }
1568
- if (this.activityUrl() && this.userAuthorised === undefined) {
1564
+ if (this.sessionStorageService.getItem('userDetails') && this.activityUrl() && this.userAuthorised === undefined) {
1569
1565
  this.getActivities(ActivityService.DUMMY_CASE_REFERENCE).subscribe(() => this.userAuthorised = true, error => {
1570
- if ([401, 403].indexOf(error.status) > -1) {
1571
- this.userAuthorised = false;
1572
- }
1573
- else {
1574
- this.userAuthorised = true;
1575
- }
1566
+ this.userAuthorised = [401, 403].indexOf(error.status) <= -1;
1576
1567
  });
1577
1568
  }
1578
1569
  }
@@ -1671,7 +1662,7 @@ class ActivityPollingService {
1671
1662
  requests.get(activity.caseId).next(activity);
1672
1663
  });
1673
1664
  }, (err) => {
1674
- console.log('error: ' + err);
1665
+ console.log(`error: ${err}`);
1675
1666
  Array.from(requests.values()).forEach((subject) => subject.error(err));
1676
1667
  }));
1677
1668
  });
@@ -1792,9 +1783,9 @@ class ActivityComponent {
1792
1783
  }
1793
1784
  generateDescription(prefix, suffix, namesArray, unknownCount) {
1794
1785
  let resultText = prefix;
1795
- resultText += namesArray.map(activityInfo => activityInfo.forename + ' ' + activityInfo.surname).join(', ');
1786
+ resultText += namesArray.map(activityInfo => `${activityInfo.forename} ${activityInfo.surname}`).join(', ');
1796
1787
  if (unknownCount > 0) {
1797
- resultText += (namesArray.length > 0 ? ' and ' + unknownCount + ' other' : unknownCount + ' user');
1788
+ resultText += (namesArray.length > 0 ? ` and ${unknownCount} other` : `${unknownCount} user`);
1798
1789
  resultText += (unknownCount > 1 ? 's' : '');
1799
1790
  }
1800
1791
  else {
@@ -1802,10 +1793,10 @@ class ActivityComponent {
1802
1793
  }
1803
1794
  if (suffix.length > 0) {
1804
1795
  if (namesArray.length + unknownCount > 1) {
1805
- resultText += ' are ' + suffix;
1796
+ resultText += ` are ${suffix}`;
1806
1797
  }
1807
1798
  else {
1808
- resultText += ' is ' + suffix;
1799
+ resultText += ` is ${suffix}`;
1809
1800
  }
1810
1801
  }
1811
1802
  return resultText;
@@ -2318,7 +2309,7 @@ class FormatTranslatorService {
2318
2309
  break;
2319
2310
  case 'n':
2320
2311
  case 'N':
2321
- maybePush(result, '***' + c + '***', inQuote); // No way to support A - millisec of day, n - nano of second, N - nano of Day
2312
+ maybePush(result, `***${c}***`, inQuote); // No way to support A - millisec of day, n - nano of second, N - nano of Day
2322
2313
  break;
2323
2314
  case 'V':
2324
2315
  case 'O':
@@ -2441,9 +2432,9 @@ class DatePipe {
2441
2432
  resultDate = `${offsetDate.getDate()} ${DatePipe.MONTHS[offsetDate.getMonth()]} ${offsetDate.getFullYear()}`;
2442
2433
  if (match[4] && match[5] && match[6] && format !== 'short') {
2443
2434
  resultDate += ', ';
2444
- resultDate += this.getHour(offsetDate.getHours().toString()) + ':';
2445
- resultDate += this.pad(offsetDate.getMinutes()) + ':';
2446
- resultDate += this.pad(offsetDate.getSeconds()) + ' ';
2435
+ resultDate += `${this.getHour(offsetDate.getHours().toString())}:`;
2436
+ resultDate += `${this.pad(offsetDate.getMinutes())}:`;
2437
+ resultDate += `${this.pad(offsetDate.getSeconds())} `;
2447
2438
  resultDate += (this.toInt(offsetDate.getHours().toString()) >= 12) ? 'PM' : 'AM';
2448
2439
  }
2449
2440
  }
@@ -2778,6 +2769,7 @@ PaletteUtilsModule.ɵinj = i0.ɵɵdefineInjector({ providers: [
2778
2769
  }]
2779
2770
  }], null, null); })();
2780
2771
 
2772
+ // tslint:disable:variable-name
2781
2773
  class AddressModel {
2782
2774
  constructor() {
2783
2775
  this.AddressLine1 = '';
@@ -2821,9 +2813,12 @@ class CaseField {
2821
2813
  this._list_items = [];
2822
2814
  }
2823
2815
  get value() {
2824
- if (this.isDynamic()) {
2816
+ if (this.field_type && (this.field_type.type === 'DynamicList' || this.field_type.type === 'DynamicRadioList')) {
2825
2817
  return this._value && this._value.value ? this._value.value.code : this._value;
2826
2818
  }
2819
+ else if (this.field_type && this.field_type.type === 'DynamicMultiSelectList') {
2820
+ return this._value && this._value.value ? this._value.value : this._value;
2821
+ }
2827
2822
  else {
2828
2823
  return this._value;
2829
2824
  }
@@ -2897,7 +2892,7 @@ class CaseField {
2897
2892
  return this.field_type && this.field_type.type === 'Complex';
2898
2893
  }
2899
2894
  isDynamic() {
2900
- const dynamicFieldTypes = ['DynamicList', 'DynamicRadioList'];
2895
+ const dynamicFieldTypes = ['DynamicList', 'DynamicRadioList', 'DynamicMultiSelectList'];
2901
2896
  if (!this.field_type) {
2902
2897
  return false;
2903
2898
  }
@@ -3046,6 +3041,7 @@ __decorate([
3046
3041
  __metadata("design:type", Array)
3047
3042
  ], CaseEventTrigger.prototype, "wizard_pages", void 0);
3048
3043
 
3044
+ // tslint:disable:variable-name
3049
3045
  class CaseViewEvent {
3050
3046
  }
3051
3047
 
@@ -3072,6 +3068,7 @@ __decorate([
3072
3068
  __metadata("design:type", Array)
3073
3069
  ], CaseType.prototype, "case_fields", void 0);
3074
3070
 
3071
+ // tslint:disable:variable-name
3075
3072
  class EventCaseField {
3076
3073
  }
3077
3074
 
@@ -3104,6 +3101,7 @@ __decorate([
3104
3101
  class CasePrintDocument {
3105
3102
  }
3106
3103
 
3104
+ // tslint:disable:variable-name
3107
3105
  class HRef {
3108
3106
  }
3109
3107
  class DocumentLinks {
@@ -3121,25 +3119,25 @@ class OrganisationConverter {
3121
3119
  static toSimpleAddress(organisationModel) {
3122
3120
  let simpleAddress = '';
3123
3121
  if (organisationModel.addressLine1) {
3124
- simpleAddress += organisationModel.addressLine1 + '<br>';
3122
+ simpleAddress += `${organisationModel.addressLine1}<br>`;
3125
3123
  }
3126
3124
  if (organisationModel.addressLine2) {
3127
- simpleAddress += organisationModel.addressLine2 + '<br>';
3125
+ simpleAddress += `${organisationModel.addressLine2}<br>`;
3128
3126
  }
3129
3127
  if (organisationModel.addressLine3) {
3130
- simpleAddress += organisationModel.addressLine3 + '<br>';
3128
+ simpleAddress += `${organisationModel.addressLine3}<br>`;
3131
3129
  }
3132
3130
  if (organisationModel.townCity) {
3133
- simpleAddress += organisationModel.townCity + '<br>';
3131
+ simpleAddress += `${organisationModel.townCity}<br>`;
3134
3132
  }
3135
3133
  if (organisationModel.county) {
3136
- simpleAddress += organisationModel.county + '<br>';
3134
+ simpleAddress += `${organisationModel.county}<br>`;
3137
3135
  }
3138
3136
  if (organisationModel.country) {
3139
- simpleAddress += organisationModel.country + '<br>';
3137
+ simpleAddress += `${organisationModel.country}<br>`;
3140
3138
  }
3141
3139
  if (organisationModel.postCode) {
3142
- simpleAddress += organisationModel.postCode + '<br>';
3140
+ simpleAddress += `${organisationModel.postCode}<br>`;
3143
3141
  }
3144
3142
  return simpleAddress;
3145
3143
  }
@@ -3222,20 +3220,15 @@ __decorate([
3222
3220
  __metadata("design:type", Array)
3223
3221
  ], SearchResultView.prototype, "results", void 0);
3224
3222
 
3223
+ // tslint:disable:variable-name
3225
3224
  class CaseDetails {
3226
3225
  }
3227
3226
 
3227
+ // tslint:disable:variable-name
3228
3228
  class CaseEventData {
3229
3229
  }
3230
3230
 
3231
3231
  class WorkbasketInputModel {
3232
- constructor(label, order, field, metadata, display_context_parameter) {
3233
- this.label = label;
3234
- this.order = order;
3235
- this.field = field;
3236
- this.metadata = metadata;
3237
- this.display_context_parameter = display_context_parameter;
3238
- }
3239
3232
  }
3240
3233
  class WorkbasketInput {
3241
3234
  }
@@ -3272,9 +3265,9 @@ class FieldsUtils {
3272
3265
  });
3273
3266
  return valueMap;
3274
3267
  }
3275
- static getType(elem) {
3276
- return Object.prototype.toString.call(elem).slice(8, -1);
3277
- }
3268
+ // public static getType(elem: any): string {
3269
+ // return Object.prototype.toString.call(elem).slice(8, -1);
3270
+ // }
3278
3271
  static isObject(elem) {
3279
3272
  return typeof elem === 'object' && elem !== null;
3280
3273
  }
@@ -3471,6 +3464,13 @@ class FieldsUtils {
3471
3464
  }
3472
3465
  return caseField.field_type.type === 'ComponentLauncher';
3473
3466
  }
3467
+ static isLinkedCasesCaseField(caseField) {
3468
+ return FieldsUtils.isComponentLauncherCaseField(caseField) &&
3469
+ caseField.id === 'LinkedCasesComponentLauncher';
3470
+ }
3471
+ static containsLinkedCasesCaseField(caseFields) {
3472
+ return caseFields === null || caseFields === void 0 ? void 0 : caseFields.some(caseField => FieldsUtils.isLinkedCasesCaseField(caseField));
3473
+ }
3474
3474
  static isFlagsFieldType(fieldType) {
3475
3475
  if (!fieldType) {
3476
3476
  return false;
@@ -3774,6 +3774,7 @@ FieldsUtils.LABEL_MERGE_FUNCTION = function mergeFunction(field, result) {
3774
3774
  const elements = (result[field.id] || field.value);
3775
3775
  if (elements) {
3776
3776
  elements.forEach((elem) => {
3777
+ // tslint:disable-next-line:switch-default
3777
3778
  switch (field.field_type.collection_field_type.type) {
3778
3779
  case 'MoneyGBP': {
3779
3780
  elem.value = FieldsUtils.getMoneyGBP(elem.value);
@@ -3918,7 +3919,6 @@ class ConditionParser {
3918
3919
  if (!condition) {
3919
3920
  return null;
3920
3921
  }
3921
- ;
3922
3922
  condition = condition.replace(/CONTAINS/g, ' CONTAINS');
3923
3923
  return peg.parse(condition.trim(), {});
3924
3924
  }
@@ -3931,14 +3931,12 @@ class ConditionParser {
3931
3931
  if (!conditions || conditions.length === 0) {
3932
3932
  return true;
3933
3933
  }
3934
- ;
3935
3934
  const validJoinComparators = ['AND', 'OR'];
3936
- const result = conditions.reduce((accumulator, condition, index) => {
3935
+ return conditions.reduce((accumulator, condition, index) => {
3937
3936
  const isJoinComparator = (comparator) => (typeof comparator === 'string' && validJoinComparators.indexOf(comparator) !== -1);
3938
3937
  if (isJoinComparator(condition)) {
3939
3938
  return accumulator;
3940
3939
  }
3941
- ;
3942
3940
  let currentConditionResult = true;
3943
3941
  if (Array.isArray(condition)) {
3944
3942
  currentConditionResult = this.evaluate(fields, condition);
@@ -3955,9 +3953,9 @@ class ConditionParser {
3955
3953
  }
3956
3954
  return currentConditionResult;
3957
3955
  }, true);
3958
- return result;
3959
3956
  }
3960
3957
  static evaluateJoin(leftResult, comparator, rightResult) {
3958
+ // tslint:disable-next-line:switch-default
3961
3959
  switch (comparator) {
3962
3960
  case 'OR': return leftResult || rightResult;
3963
3961
  case 'AND': return leftResult && rightResult;
@@ -4047,8 +4045,7 @@ class ConditionParser {
4047
4045
  }
4048
4046
  }
4049
4047
  static unquoted(str) {
4050
- const res = str.replace(/^"|"$/g, '');
4051
- return res;
4048
+ return str.replace(/^"|"$/g, '');
4052
4049
  }
4053
4050
  static findValueForComplexCondition(fields, head, tail, path) {
4054
4051
  if (!fields) {
@@ -4160,8 +4157,8 @@ class ShowCondition {
4160
4157
  if (originalCondition.indexOf(condition.fieldReference) > -1) {
4161
4158
  if (this.processedList && this.processedList.indexOf(condition.fieldReference) === -1) {
4162
4159
  this.processedList.push(condition.fieldReference);
4163
- const regularExp = new RegExp('(\\b)' + condition.fieldReference + '(?=[^"]*(?:"[^"]*"[^"]*)*$)(\\b)', 'g');
4164
- return originalCondition.replace(regularExp, pathPrefix + '.' + condition.fieldReference);
4160
+ const regularExp = new RegExp(`(\\b)${condition.fieldReference}(?=[^"]*(?:"[^"]*"[^"]*)*$)(\\b)`, 'g');
4161
+ return originalCondition.replace(regularExp, `${pathPrefix}.${condition.fieldReference}`);
4165
4162
  }
4166
4163
  else {
4167
4164
  return originalCondition;
@@ -4238,6 +4235,7 @@ class ShowCondition {
4238
4235
  }
4239
4236
  // Consider what type of field this is.
4240
4237
  const ft = caseField.field_type;
4238
+ // tslint:disable-next-line:switch-default
4241
4239
  switch (ft.type) {
4242
4240
  case 'Collection':
4243
4241
  if (ft.collection_field_type.type === 'Complex' && ft.collection_field_type.complex_fields) {
@@ -4683,14 +4681,14 @@ class FieldsPurger {
4683
4681
  const formFields = form.getRawValue();
4684
4682
  const currentPage = wizard.getPage(currentPageId, this.fieldsUtils.buildCanShowPredicate(eventTrigger, form));
4685
4683
  currentPage.wizard_page_fields.forEach(wpf => {
4686
- const case_field = this.findCaseFieldByWizardPageFieldId(currentPage, wpf);
4687
- if (this.hasShowConditionField(case_field, formFields)) {
4688
- const condition = new ShowCondition(case_field.show_condition);
4689
- if (this.isHidden(condition, formFields.data) && !(this.isReadonly(case_field))) {
4690
- this.resetField(form, case_field);
4684
+ const caseField = this.findCaseFieldByWizardPageFieldId(currentPage, wpf);
4685
+ if (this.hasShowConditionField(caseField, formFields)) {
4686
+ const condition = new ShowCondition(caseField.show_condition);
4687
+ if (this.isHidden(condition, formFields.data) && !(this.isReadonly(caseField))) {
4688
+ this.resetField(form, caseField);
4691
4689
  }
4692
4690
  }
4693
- this.retainHiddenValueByFieldType(case_field, form);
4691
+ this.retainHiddenValueByFieldType(caseField, form);
4694
4692
  });
4695
4693
  }
4696
4694
  retainHiddenValueByFieldType(field, form) {
@@ -4721,13 +4719,13 @@ class FieldsPurger {
4721
4719
  hasShowConditionPage(wizardPage, formFields) {
4722
4720
  return wizardPage.show_condition && formFields[this.getShowConditionKey(wizardPage.show_condition)];
4723
4721
  }
4724
- hasShowConditionField(case_field, formFields) {
4725
- return case_field.show_condition && formFields.data[this.getShowConditionKey(case_field.show_condition)];
4722
+ hasShowConditionField(caseField, formFields) {
4723
+ return caseField.show_condition && formFields.data[this.getShowConditionKey(caseField.show_condition)];
4726
4724
  }
4727
- getShowConditionKey(show_condition) {
4725
+ getShowConditionKey(showCondition) {
4728
4726
  // Need to allow for negated conditions, i.e. !=, as well as regular ones (=)
4729
4727
  // Also need to allow for conditions specified using the "CONTAINS" keyword
4730
- return show_condition.split(/!=|=|CONTAINS/)[0];
4728
+ return showCondition.split(/!=|=|CONTAINS/)[0];
4731
4729
  }
4732
4730
  resetField(form, field) {
4733
4731
  /**
@@ -4799,8 +4797,8 @@ class FieldsPurger {
4799
4797
  }
4800
4798
  resetPage(form, wizardPage) {
4801
4799
  wizardPage.wizard_page_fields.forEach(wpf => {
4802
- const case_field = this.findCaseFieldByWizardPageFieldId(wizardPage, wpf);
4803
- this.resetField(form, case_field);
4800
+ const caseField = this.findCaseFieldByWizardPageFieldId(wizardPage, wpf);
4801
+ this.resetField(form, caseField);
4804
4802
  });
4805
4803
  }
4806
4804
  getType(elem) {
@@ -4810,8 +4808,8 @@ class FieldsPurger {
4810
4808
  return this.getType(elem) === 'Object';
4811
4809
  }
4812
4810
  // TODO: call isReadOnly on CaseFields once we make it available
4813
- isReadonly(case_field) {
4814
- return case_field.display_context.toUpperCase() === 'READONLY';
4811
+ isReadonly(caseField) {
4812
+ return caseField.display_context.toUpperCase() === 'READONLY';
4815
4813
  }
4816
4814
  /**
4817
4815
  * Deletes a field value by setting the value of the corresponding {@link FormControl} to null (or an empty array
@@ -4967,7 +4965,11 @@ class FieldTypeSanitiser {
4967
4965
  return;
4968
4966
  }
4969
4967
  caseFields.forEach(caseField => {
4968
+ // tslint:disable-next-line:switch-default
4970
4969
  switch (caseField.field_type.type) {
4970
+ case FieldTypeSanitiser.FIELD_TYPE_DYNAMIC_MULTISELECT_LIST:
4971
+ this.convertArrayToDynamicListOutput(caseField, data);
4972
+ break;
4971
4973
  case FieldTypeSanitiser.FIELD_TYPE_DYNAMIC_RADIO_LIST:
4972
4974
  case FieldTypeSanitiser.FIELD_TYPE_DYNAMIC_LIST:
4973
4975
  this.convertStringToDynamicListOutput(caseField, data);
@@ -4985,6 +4987,17 @@ class FieldTypeSanitiser {
4985
4987
  }
4986
4988
  });
4987
4989
  }
4990
+ convertArrayToDynamicListOutput(field, data) {
4991
+ const values = data[field.id];
4992
+ if (Array.isArray(values)) {
4993
+ const listItems = this.getListItems(field);
4994
+ const matches = listItems.filter(item => values.map(v => v.code).indexOf(item.code) !== -1);
4995
+ data[field.id] = {
4996
+ value: matches,
4997
+ list_items: listItems
4998
+ };
4999
+ }
5000
+ }
4988
5001
  convertStringToDynamicListOutput(field, data) {
4989
5002
  const stringValue = data[field.id];
4990
5003
  if (typeof stringValue === 'string') {
@@ -5014,6 +5027,7 @@ FieldTypeSanitiser.FIELD_TYPE_COMPLEX = 'Complex';
5014
5027
  FieldTypeSanitiser.FIELD_TYPE_COLLECTION = 'Collection';
5015
5028
  FieldTypeSanitiser.FIELD_TYPE_DYNAMIC_LIST = 'DynamicList';
5016
5029
  FieldTypeSanitiser.FIELD_TYPE_DYNAMIC_RADIO_LIST = 'DynamicRadioList';
5030
+ FieldTypeSanitiser.FIELD_TYPE_DYNAMIC_MULTISELECT_LIST = 'DynamicMultiSelectList';
5017
5031
  FieldTypeSanitiser.ɵfac = function FieldTypeSanitiser_Factory(t) { return new (t || FieldTypeSanitiser)(); };
5018
5032
  FieldTypeSanitiser.ɵprov = i0.ɵɵdefineInjectable({ token: FieldTypeSanitiser, factory: FieldTypeSanitiser.ɵfac });
5019
5033
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(FieldTypeSanitiser, [{
@@ -5528,7 +5542,6 @@ class FormValueService {
5528
5542
  });
5529
5543
  }
5530
5544
  }
5531
- ;
5532
5545
  });
5533
5546
  }
5534
5547
  }
@@ -5942,7 +5955,7 @@ class AddressParser {
5942
5955
  return addressModel;
5943
5956
  }
5944
5957
  parseAddressLine1(classification, address) {
5945
- let addressLine = '';
5958
+ let addressLine;
5946
5959
  if (classification === AddressType.RD06) {
5947
5960
  addressLine =
5948
5961
  `${address.SUB_BUILDING_NAME} ${address.ORGANISATION_NAME} ${address.DEPARTMENT_NAME} ${address.PO_BOX_NUMBER}`;
@@ -5955,7 +5968,7 @@ class AddressParser {
5955
5968
  return this.removeNonAddressValues(addressLine);
5956
5969
  }
5957
5970
  parseAddressLine2(classification, address) {
5958
- let addressLine = '';
5971
+ let addressLine;
5959
5972
  if (classification === AddressType.RD06) {
5960
5973
  addressLine = `${address.BUILDING_NAME} `;
5961
5974
  }
@@ -5966,7 +5979,7 @@ class AddressParser {
5966
5979
  return this.removeNonAddressValues(addressLine);
5967
5980
  }
5968
5981
  parseAddressLine3(classification, address) {
5969
- let addressLine = '';
5982
+ let addressLine;
5970
5983
  if (classification === AddressType.RD06) {
5971
5984
  addressLine =
5972
5985
  `${address.BUILDING_NUMBER} ${address.THOROUGHFARE_NAME}`;
@@ -5994,7 +6007,7 @@ class AddressParser {
5994
6007
  return value.replace(new RegExp('^,', 'gi'), '');
5995
6008
  }
5996
6009
  prefixWithCommaIfPresent(value) {
5997
- return value ? ', ' + value : value;
6010
+ return value ? `, ${value}` : value;
5998
6011
  }
5999
6012
  }
6000
6013
 
@@ -6103,7 +6116,7 @@ class CaseFlagRefdataService {
6103
6116
  if (flagType) {
6104
6117
  url += `?flag-type=${flagType}`;
6105
6118
  }
6106
- if (welshRequired != null) {
6119
+ if (typeof welshRequired === 'boolean') {
6107
6120
  // Check if flag-type has been added to the query string; if so, append welsh-required with '&'
6108
6121
  url.indexOf('?') > -1 ? url += '&' : url += '?';
6109
6122
  welshRequired ? url += 'welsh-required=Y' : url += 'welsh-required=N';
@@ -6560,11 +6573,6 @@ RequestOptionsBuilder.ɵprov = i0.ɵɵdefineInjectable({ token: RequestOptionsBu
6560
6573
  type: Injectable
6561
6574
  }], null, null); })();
6562
6575
 
6563
- class HasLoadingState {
6564
- get isLoading() {
6565
- return;
6566
- }
6567
- }
6568
6576
  class LoadingService {
6569
6577
  constructor() {
6570
6578
  this.registered = new Map();
@@ -6585,7 +6593,7 @@ class LoadingService {
6585
6593
  }
6586
6594
  generateToken() {
6587
6595
  const timestamp = window.performance.now();
6588
- return 'toolkit-loading-' + timestamp; // format: [source-library]-[unique incrementing number]
6596
+ return `toolkit-loading-${timestamp}`; // format: [source-library]-[unique incrementing number]
6589
6597
  }
6590
6598
  }
6591
6599
  LoadingService.ɵfac = function LoadingService_Factory(t) { return new (t || LoadingService)(); };
@@ -6602,10 +6610,7 @@ class SearchService {
6602
6610
  this.loadingService = loadingService;
6603
6611
  }
6604
6612
  search(jurisdictionId, caseTypeId, metaCriteria, caseCriteria, view) {
6605
- const url = this.appConfig.getApiUrl() + `/caseworkers/:uid`
6606
- + `/jurisdictions/${jurisdictionId}`
6607
- + `/case-types/${caseTypeId}`
6608
- + `/cases`;
6613
+ const url = `${this.appConfig.getApiUrl()}/caseworkers/:uid/jurisdictions/${jurisdictionId}/case-types/${caseTypeId}/cases`;
6609
6614
  const options = this.requestOptionsBuilder.buildOptions(metaCriteria, caseCriteria, view);
6610
6615
  const loadingToken = this.loadingService.register();
6611
6616
  return this.httpService
@@ -6613,14 +6618,13 @@ class SearchService {
6613
6618
  .pipe(map(response => response), finalize(() => this.loadingService.unregister(loadingToken)));
6614
6619
  }
6615
6620
  searchCasesByIds(caseTypeId, filter, view, sort) {
6616
- const url = this.appConfig.getCaseDataUrl() +
6617
- `/internal/searchCases?ctid=${caseTypeId}&use_case=${view}`;
6621
+ const url = `${this.appConfig.getCaseDataUrl()}/internal/searchCases?ctid=${caseTypeId}&use_case=${view}`;
6618
6622
  const body = Object.assign(Object.assign({ sort }, filter), { size: this.appConfig.getPaginationPageSize() });
6619
6623
  const loadingToken = this.loadingService.register();
6620
6624
  return this.httpService.post(url, body).pipe(map((response) => response), finalize(() => this.loadingService.unregister(loadingToken)));
6621
6625
  }
6622
6626
  searchCases(caseTypeId, metaCriteria, caseCriteria, view, sort) {
6623
- const url = this.appConfig.getCaseDataUrl() + `/internal/searchCases?ctid=${caseTypeId}&use_case=${view}`;
6627
+ const url = `${this.appConfig.getCaseDataUrl()}/internal/searchCases?ctid=${caseTypeId}&use_case=${view}`;
6624
6628
  const options = this.requestOptionsBuilder.buildOptions(metaCriteria, caseCriteria, view);
6625
6629
  const body = {
6626
6630
  sort,
@@ -6663,9 +6667,8 @@ class SearchService {
6663
6667
  }
6664
6668
  }
6665
6669
  SearchService.V2_MEDIATYPE_SEARCH_INPUTS = 'application/vnd.uk.gov.hmcts.ccd-data-store-api.ui-search-input-details.v2+json;charset=UTF-8';
6666
- SearchService.VIEW_SEARCH = 'SEARCH';
6670
+ // public static readonly VIEW_SEARCH = 'SEARCH';
6667
6671
  SearchService.VIEW_WORKBASKET = 'WORKBASKET';
6668
- SearchService.FIELD_PREFIX = 'case.';
6669
6672
  SearchService.ɵfac = function SearchService_Factory(t) { return new (t || SearchService)(i0.ɵɵinject(AbstractAppConfig), i0.ɵɵinject(HttpService), i0.ɵɵinject(RequestOptionsBuilder), i0.ɵɵinject(LoadingService)); };
6670
6673
  SearchService.ɵprov = i0.ɵɵdefineInjectable({ token: SearchService, factory: SearchService.ɵfac });
6671
6674
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SearchService, [{
@@ -6779,17 +6782,12 @@ class DefinitionsService {
6779
6782
  this.appConfig = appConfig;
6780
6783
  }
6781
6784
  getCaseTypes(jurisdictionId, access) {
6782
- const url = this.appConfig.getApiUrl()
6783
- + `/caseworkers/:uid`
6784
- + `/jurisdictions/${jurisdictionId}`
6785
- + `/case-types?access=${access}`;
6785
+ const url = `${this.appConfig.getApiUrl()}/caseworkers/:uid/jurisdictions/${jurisdictionId}/case-types?access=${access}`;
6786
6786
  return this.http
6787
6787
  .get(url).pipe(map(response => response));
6788
6788
  }
6789
6789
  getJurisdictions(access) {
6790
- const url = this.appConfig.getApiUrl()
6791
- + `/caseworkers/:uid`
6792
- + `/jurisdictions?access=${access}`;
6790
+ const url = `${this.appConfig.getApiUrl()}/caseworkers/:uid/jurisdictions?access=${access}`;
6793
6791
  return this.http
6794
6792
  .get(url)
6795
6793
  .pipe(map(response => response));
@@ -6861,8 +6859,8 @@ class SearchResultViewItemComparatorFactory {
6861
6859
  compare(a, b) {
6862
6860
  let fieldA = a.case_fields[fieldId];
6863
6861
  let fieldB = b.case_fields[fieldId];
6864
- fieldA = isUndefined(fieldA) || fieldA == null ? '' : fieldA.toLowerCase();
6865
- fieldB = isUndefined(fieldB) || fieldB == null ? '' : fieldB.toLowerCase();
6862
+ fieldA = isUndefined(fieldA) || fieldA === null ? '' : fieldA.toLowerCase();
6863
+ fieldB = isUndefined(fieldB) || fieldB === null ? '' : fieldB.toLowerCase();
6866
6864
  return fieldA === fieldB ? 0 : fieldA > fieldB ? 1 : -1;
6867
6865
  }
6868
6866
  };
@@ -6872,8 +6870,8 @@ class SearchResultViewItemComparatorFactory {
6872
6870
  compare(a, b) {
6873
6871
  let fieldA = a.case_fields[fieldId];
6874
6872
  let fieldB = b.case_fields[fieldId];
6875
- fieldA = isUndefined(fieldA) || fieldA == null ? '' : fieldA.join().toLowerCase();
6876
- fieldB = isUndefined(fieldB) || fieldB == null ? '' : fieldB.join().toLowerCase();
6873
+ fieldA = isUndefined(fieldA) || fieldA === null ? '' : fieldA.join().toLowerCase();
6874
+ fieldB = isUndefined(fieldB) || fieldB === null ? '' : fieldB.join().toLowerCase();
6877
6875
  return fieldA === fieldB ? 0 : fieldA > fieldB ? 1 : -1;
6878
6876
  }
6879
6877
  };
@@ -7102,31 +7100,31 @@ class WizardPageFieldToCaseFieldMapper {
7102
7100
  }
7103
7101
  processComplexFieldOverride(override, caseField, caseFields) {
7104
7102
  const caseFieldIds = override.complex_field_element_id.split('.');
7105
- let case_field_leaf;
7103
+ let caseFieldLeaf;
7106
7104
  const children = this.getCaseFieldChildren(caseField);
7107
7105
  if (children.length > 0) {
7108
7106
  const [_, ...tail] = caseFieldIds;
7109
- case_field_leaf = this.getCaseFieldLeaf(tail, children);
7107
+ caseFieldLeaf = this.getCaseFieldLeaf(tail, children);
7110
7108
  }
7111
7109
  else {
7112
- case_field_leaf = this.getCaseFieldLeaf(caseFieldIds, caseFields);
7110
+ caseFieldLeaf = this.getCaseFieldLeaf(caseFieldIds, caseFields);
7113
7111
  }
7114
7112
  if (override.display_context !== 'HIDDEN') {
7115
- case_field_leaf.hidden = false;
7116
- case_field_leaf.display_context = override.display_context;
7113
+ caseFieldLeaf.hidden = false;
7114
+ caseFieldLeaf.display_context = override.display_context;
7117
7115
  if (override.label && override.label.length > 0) {
7118
- case_field_leaf.label = override.label;
7116
+ caseFieldLeaf.label = override.label;
7119
7117
  }
7120
7118
  if (override.hint_text && override.hint_text.length > 0) {
7121
- case_field_leaf.hint_text = override.hint_text;
7119
+ caseFieldLeaf.hint_text = override.hint_text;
7122
7120
  }
7123
7121
  if (override.show_condition && override.show_condition.length > 0) {
7124
- case_field_leaf.show_condition = override.show_condition;
7122
+ caseFieldLeaf.show_condition = override.show_condition;
7125
7123
  }
7126
7124
  }
7127
7125
  else {
7128
- case_field_leaf.hidden = true;
7129
- case_field_leaf.display_context = override.display_context;
7126
+ caseFieldLeaf.hidden = true;
7127
+ caseFieldLeaf.display_context = override.display_context;
7130
7128
  }
7131
7129
  }
7132
7130
  fixShowConditionPath(caseField, pathPrefix) {
@@ -7139,7 +7137,7 @@ class WizardPageFieldToCaseFieldMapper {
7139
7137
  });
7140
7138
  }
7141
7139
  preparePathPrefix(pathPrefix, caseField) {
7142
- return pathPrefix.length === 0 ? caseField : pathPrefix + '.' + caseField;
7140
+ return pathPrefix.length === 0 ? caseField : `${pathPrefix}.${caseField}`;
7143
7141
  }
7144
7142
  getCaseFieldLeaf(caseFieldId, caseFields) {
7145
7143
  const [head, ...tail] = caseFieldId;
@@ -7192,215 +7190,13 @@ WizardPageFieldToCaseFieldMapper.ɵprov = i0.ɵɵdefineInjectable({ token: Wizar
7192
7190
  }]
7193
7191
  }], null, null); })();
7194
7192
 
7195
- const MULTIPLE_TASKS_FOUND = 'More than one task found!';
7196
- class WorkAllocationService {
7197
- constructor(http, appConfig, errorService, alertService, sessionStorageService) {
7198
- this.http = http;
7199
- this.appConfig = appConfig;
7200
- this.errorService = errorService;
7201
- this.alertService = alertService;
7202
- this.sessionStorageService = sessionStorageService;
7203
- // Check to see if work allocation is enabled
7204
- }
7205
- /**
7206
- * Call the API to get tasks matching the search criteria.
7207
- * @param searchRequest The search parameters that specify which tasks to match.
7208
- */
7209
- searchTasks(searchRequest) {
7210
- // Do not need to check if WA enabled as parent method will do that
7211
- const url = `${this.appConfig.getWorkAllocationApiUrl()}/searchForCompletable`;
7212
- return this.http
7213
- .post(url, { searchRequest }, null, false)
7214
- .pipe(map(response => response), catchError(error => {
7215
- this.errorService.setError(error);
7216
- // explicitly eat away 401 error and 400 error
7217
- if (error && error.status && (error.status === 401 || error.status === 400)) {
7218
- // do nothing
7219
- console.log('error status 401 or 400', error);
7220
- }
7221
- else {
7222
- return throwError(error);
7223
- }
7224
- }));
7225
- }
7226
- isWAEnabled(jurisdiction, caseType) {
7227
- this.features = this.appConfig.getWAServiceConfig();
7228
- let enabled = false;
7229
- if (!jurisdiction || !caseType) {
7230
- const caseInfo = JSON.parse(this.sessionStorageService.getItem('caseInfo'));
7231
- jurisdiction = caseInfo.jurisdiction;
7232
- caseType = caseInfo.caseType;
7233
- }
7234
- if (!this.features || !this.features.configurations) {
7235
- return false;
7236
- }
7237
- this.features.configurations.forEach(serviceConfig => {
7238
- if (serviceConfig.serviceName === jurisdiction && (serviceConfig.caseTypes.indexOf(caseType) !== -1)) {
7239
- enabled = true;
7240
- }
7241
- });
7242
- return enabled;
7243
- }
7244
- /**
7245
- * Call the API to assign a task.
7246
- * @param taskId specifies which task should be assigned.
7247
- * @param userId specifies the user the task should be assigned to.
7248
- */
7249
- assignTask(taskId, userId) {
7250
- if (!this.isWAEnabled()) {
7251
- return of(null);
7252
- }
7253
- const url = `${this.appConfig.getWorkAllocationApiUrl()}/task/${taskId}/assign`;
7254
- return this.http
7255
- .post(url, { userId })
7256
- .pipe(catchError(error => {
7257
- this.errorService.setError(error);
7258
- return throwError(error);
7259
- }));
7260
- }
7261
- /**
7262
- * Call the API to complete a task.
7263
- * @param taskId specifies which task should be completed.
7264
- */
7265
- completeTask(taskId) {
7266
- if (!this.isWAEnabled()) {
7267
- return of(null);
7268
- }
7269
- const url = `${this.appConfig.getWorkAllocationApiUrl()}/task/${taskId}/complete`;
7270
- return this.http
7271
- .post(url, {})
7272
- .pipe(catchError(error => {
7273
- this.errorService.setError(error);
7274
- // this will subscribe to get the user details and decide whether to display an error message
7275
- this.http.get(this.appConfig.getUserInfoApiUrl()).pipe(map(response => response)).subscribe((response) => {
7276
- this.handleTaskCompletionError(response);
7277
- });
7278
- return throwError(error);
7279
- }));
7280
- }
7281
- /**
7282
- * Call the API to assign and complete a task.
7283
- * @param taskId specifies which task should be completed.
7284
- */
7285
- assignAndCompleteTask(taskId) {
7286
- if (!this.isWAEnabled()) {
7287
- return of(null);
7288
- }
7289
- const url = `${this.appConfig.getWorkAllocationApiUrl()}/task/${taskId}/complete`;
7290
- return this.http
7291
- .post(url, {
7292
- completion_options: {
7293
- assign_and_complete: true
7294
- }
7295
- })
7296
- .pipe(catchError(error => {
7297
- this.errorService.setError(error);
7298
- // this will subscribe to get the user details and decide whether to display an error message
7299
- this.http.get(this.appConfig.getUserInfoApiUrl()).pipe(map(response => response)).subscribe((response) => {
7300
- this.handleTaskCompletionError(response);
7301
- });
7302
- return throwError(error);
7303
- }));
7304
- }
7305
- /**
7306
- * Handles the response from the observable to get the user details when task is completed.
7307
- * @param response is the response given from the observable which contains the user detaild.
7308
- */
7309
- handleTaskCompletionError(response) {
7310
- const userDetails = response;
7311
- if (this.userIsCaseworker(userDetails.userInfo.roles)) {
7312
- // when submitting the completion of task if not yet rendered cases/case confirm then preserve the alert for re-rendering
7313
- this.alertService.setPreserveAlerts(true, ['cases/case', 'submit']);
7314
- this.alertService.warning('A task could not be completed successfully. Please complete the task associated with the case manually.');
7315
- }
7316
- }
7317
- /**
7318
- * Returns true if the user's role is equivalent to a caseworker.
7319
- * @param roles is the list of roles found from the current user.
7320
- */
7321
- userIsCaseworker(roles) {
7322
- const lowerCaseRoles = roles.map(role => role.toLowerCase());
7323
- // When/if lib & target permanently change to es2016, replace indexOf with includes
7324
- return (lowerCaseRoles.indexOf(WorkAllocationService.iACCaseOfficer) !== -1)
7325
- || (lowerCaseRoles.indexOf(WorkAllocationService.iACAdmOfficer) !== -1);
7326
- }
7327
- /**
7328
- * Look for open tasks for a case and event combination. There are 5 possible scenarios:
7329
- * 1. No tasks found => Success.
7330
- * 2. One task found => Mark as done => Success.
7331
- * 3. One task found => Mark as done throws error => Failure.
7332
- * 4. More than one task found => Failure.
7333
- * 5. Search call throws an error => Failure.
7334
- * @param ccdId The ID of the case to find tasks for.
7335
- * @param eventId The ID of the event to find tasks for.
7336
- */
7337
- completeAppropriateTask(ccdId, eventId, jurisdiction, caseTypeId) {
7338
- if (!this.isWAEnabled(jurisdiction, caseTypeId)) {
7339
- return of(null);
7340
- }
7341
- const taskSearchParameter = {
7342
- ccdId,
7343
- eventId,
7344
- jurisdiction,
7345
- caseTypeId
7346
- };
7347
- return this.searchTasks(taskSearchParameter)
7348
- .pipe(map((response) => {
7349
- const tasks = response.tasks;
7350
- if (tasks && tasks.length > 0) {
7351
- if (tasks.length === 1) {
7352
- this.completeTask(tasks[0].id).subscribe();
7353
- }
7354
- else {
7355
- // This is a problem. Throw an appropriate error.
7356
- throw new Error(MULTIPLE_TASKS_FOUND);
7357
- }
7358
- }
7359
- return true; // All good. Nothing to see here.
7360
- }), catchError(error => {
7361
- // Simply rethrow it.
7362
- return throwError(error);
7363
- }));
7364
- }
7365
- /**
7366
- * Return tasks for case and event.
7367
- */
7368
- getTasksByCaseIdAndEventId(eventId, caseId, caseType, jurisdiction) {
7369
- const defaultPayload = {
7370
- task_required_for_event: false,
7371
- tasks: []
7372
- };
7373
- if (!this.isWAEnabled()) {
7374
- return of(defaultPayload);
7375
- }
7376
- return this.http.get(`${this.appConfig.getWorkAllocationApiUrl()}/case/tasks/${caseId}/event/${eventId}/caseType/${caseType}/jurisdiction/${jurisdiction}`);
7377
- }
7378
- /**
7379
- * Call the API to get a task
7380
- */
7381
- getTask(taskId) {
7382
- if (!this.isWAEnabled()) {
7383
- return of({ task: null });
7384
- }
7385
- return this.http.get(`${this.appConfig.getWorkAllocationApiUrl()}/task/${taskId}`);
7386
- }
7387
- }
7388
- WorkAllocationService.iACCaseOfficer = 'caseworker-ia-caseofficer';
7389
- WorkAllocationService.iACAdmOfficer = 'caseworker-ia-admofficer';
7390
- WorkAllocationService.ɵfac = function WorkAllocationService_Factory(t) { return new (t || WorkAllocationService)(i0.ɵɵinject(HttpService), i0.ɵɵinject(AbstractAppConfig), i0.ɵɵinject(HttpErrorService), i0.ɵɵinject(AlertService), i0.ɵɵinject(SessionStorageService)); };
7391
- WorkAllocationService.ɵprov = i0.ɵɵdefineInjectable({ token: WorkAllocationService, factory: WorkAllocationService.ɵfac });
7392
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(WorkAllocationService, [{
7393
- type: Injectable
7394
- }], function () { return [{ type: HttpService }, { type: AbstractAppConfig }, { type: HttpErrorService }, { type: AlertService }, { type: SessionStorageService }]; }, null); })();
7395
-
7396
7193
  class CasesService {
7397
- constructor(http, appConfig, orderService, errorService, wizardPageFieldToCaseFieldMapper, workAllocationService, loadingService, sessionStorageService) {
7194
+ constructor(http, appConfig, orderService, errorService, wizardPageFieldToCaseFieldMapper, loadingService, sessionStorageService) {
7398
7195
  this.http = http;
7399
7196
  this.appConfig = appConfig;
7400
7197
  this.orderService = orderService;
7401
7198
  this.errorService = errorService;
7402
7199
  this.wizardPageFieldToCaseFieldMapper = wizardPageFieldToCaseFieldMapper;
7403
- this.workAllocationService = workAllocationService;
7404
7200
  this.loadingService = loadingService;
7405
7201
  this.sessionStorageService = sessionStorageService;
7406
7202
  this.get = this.getCaseView;
@@ -7418,11 +7214,7 @@ class CasesService {
7418
7214
  });
7419
7215
  }
7420
7216
  getCaseView(jurisdictionId, caseTypeId, caseId) {
7421
- const url = this.appConfig.getApiUrl()
7422
- + `/caseworkers/:uid`
7423
- + `/jurisdictions/${jurisdictionId}`
7424
- + `/case-types/${caseTypeId}`
7425
- + `/cases/${caseId}`;
7217
+ const url = `${this.appConfig.getApiUrl()}/caseworkers/:uid/jurisdictions/${jurisdictionId}/case-types/${caseTypeId}/cases/${caseId}`;
7426
7218
  const loadingToken = this.loadingService.register();
7427
7219
  return this.http
7428
7220
  .get(url)
@@ -7471,7 +7263,7 @@ class CasesService {
7471
7263
  }
7472
7264
  createEvent(caseDetails, eventData) {
7473
7265
  const caseId = caseDetails.case_id;
7474
- const url = this.appConfig.getCaseDataUrl() + `/cases/${caseId}/events`;
7266
+ const url = `${this.appConfig.getCaseDataUrl()}/cases/${caseId}/events`;
7475
7267
  const headers = new HttpHeaders()
7476
7268
  .set('experimental', 'true')
7477
7269
  .set('Accept', CasesService.V2_MEDIATYPE_CREATE_EVENT)
@@ -7484,9 +7276,8 @@ class CasesService {
7484
7276
  }));
7485
7277
  }
7486
7278
  validateCase(ctid, eventData, pageId) {
7487
- const pageIdString = pageId ? '?pageId=' + pageId : '';
7488
- const url = this.appConfig.getCaseDataUrl()
7489
- + `/case-types/${ctid}/validate${pageIdString}`;
7279
+ const pageIdString = pageId ? `?pageId=${pageId}` : '';
7280
+ const url = `${this.appConfig.getCaseDataUrl()}/case-types/${ctid}/validate${pageIdString}`;
7490
7281
  const headers = new HttpHeaders()
7491
7282
  .set('experimental', 'true')
7492
7283
  .set('Accept', CasesService.V2_MEDIATYPE_CASE_DATA_VALIDATE)
@@ -7503,8 +7294,7 @@ class CasesService {
7503
7294
  if (eventData.ignore_warning) {
7504
7295
  ignoreWarning = 'true';
7505
7296
  }
7506
- const url = this.appConfig.getCaseDataUrl()
7507
- + `/case-types/${ctid}/cases?ignore-warning=${ignoreWarning}`;
7297
+ const url = `${this.appConfig.getCaseDataUrl()}/case-types/${ctid}/cases?ignore-warning=${ignoreWarning}`;
7508
7298
  const headers = new HttpHeaders()
7509
7299
  .set('experimental', 'true')
7510
7300
  .set('Accept', CasesService.V2_MEDIATYPE_CREATE_CASE)
@@ -7517,9 +7307,7 @@ class CasesService {
7517
7307
  }));
7518
7308
  }
7519
7309
  getPrintDocuments(caseId) {
7520
- const url = this.appConfig.getCaseDataUrl()
7521
- + `/cases/${caseId}`
7522
- + `/documents`;
7310
+ const url = `${this.appConfig.getCaseDataUrl()}/cases/${caseId}/documents`;
7523
7311
  const headers = new HttpHeaders()
7524
7312
  .set('experimental', 'true')
7525
7313
  .set('Accept', CasesService.V2_MEDIATYPE_CASE_DOCUMENTS)
@@ -7532,7 +7320,7 @@ class CasesService {
7532
7320
  }));
7533
7321
  }
7534
7322
  buildEventTriggerUrl(caseTypeId, eventTriggerId, caseId, ignoreWarning) {
7535
- let url = this.appConfig.getCaseDataUrl() + `/internal`;
7323
+ let url = `${this.appConfig.getCaseDataUrl()}/internal`;
7536
7324
  if (Draft.isDraft(caseId)) {
7537
7325
  url += `/drafts/${caseId}`
7538
7326
  + `/event-trigger`
@@ -7626,11 +7414,11 @@ CasesService.V2_MEDIATYPE_CASE_DATA_VALIDATE = 'application/vnd.uk.gov.hmcts.ccd
7626
7414
  CasesService.V2_MEDIATYPE_CREATE_EVENT = 'application/vnd.uk.gov.hmcts.ccd-data-store-api.create-event.v2+json;charset=UTF-8';
7627
7415
  CasesService.V2_MEDIATYPE_CREATE_CASE = 'application/vnd.uk.gov.hmcts.ccd-data-store-api.create-case.v2+json;charset=UTF-8';
7628
7416
  CasesService.PUI_CASE_MANAGER = 'pui-case-manager';
7629
- CasesService.ɵfac = function CasesService_Factory(t) { return new (t || CasesService)(i0.ɵɵinject(HttpService), i0.ɵɵinject(AbstractAppConfig), i0.ɵɵinject(OrderService), i0.ɵɵinject(HttpErrorService), i0.ɵɵinject(WizardPageFieldToCaseFieldMapper), i0.ɵɵinject(WorkAllocationService), i0.ɵɵinject(LoadingService), i0.ɵɵinject(SessionStorageService)); };
7417
+ CasesService.ɵfac = function CasesService_Factory(t) { return new (t || CasesService)(i0.ɵɵinject(HttpService), i0.ɵɵinject(AbstractAppConfig), i0.ɵɵinject(OrderService), i0.ɵɵinject(HttpErrorService), i0.ɵɵinject(WizardPageFieldToCaseFieldMapper), i0.ɵɵinject(LoadingService), i0.ɵɵinject(SessionStorageService)); };
7630
7418
  CasesService.ɵprov = i0.ɵɵdefineInjectable({ token: CasesService, factory: CasesService.ɵfac });
7631
7419
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CasesService, [{
7632
7420
  type: Injectable
7633
- }], function () { return [{ type: HttpService }, { type: AbstractAppConfig }, { type: OrderService }, { type: HttpErrorService }, { type: WizardPageFieldToCaseFieldMapper }, { type: WorkAllocationService }, { type: LoadingService }, { type: SessionStorageService }]; }, null); })();
7421
+ }], function () { return [{ type: HttpService }, { type: AbstractAppConfig }, { type: OrderService }, { type: HttpErrorService }, { type: WizardPageFieldToCaseFieldMapper }, { type: LoadingService }, { type: SessionStorageService }]; }, null); })();
7634
7422
 
7635
7423
  class EventTriggerService {
7636
7424
  constructor() {
@@ -8204,7 +7992,7 @@ class PageValidationService {
8204
7992
  isHidden(caseField, editForm, path) {
8205
7993
  const formFields = editForm.getRawValue();
8206
7994
  const condition = ShowCondition.getInstance(caseField.show_condition);
8207
- if (path && path.indexOf('_' + caseField.id + '_') === -1) {
7995
+ if (path && path.indexOf(`_${caseField.id}_`) === -1) {
8208
7996
  path = `${path}${caseField.id}`;
8209
7997
  }
8210
7998
  return !condition.match(formFields.data, path);
@@ -8233,6 +8021,207 @@ PageValidationService.ɵprov = i0.ɵɵdefineInjectable({ token: PageValidationSe
8233
8021
  type: Injectable
8234
8022
  }], function () { return [{ type: CaseFieldService }]; }, null); })();
8235
8023
 
8024
+ const MULTIPLE_TASKS_FOUND = 'More than one task found!';
8025
+ class WorkAllocationService {
8026
+ constructor(http, appConfig, errorService, alertService, sessionStorageService) {
8027
+ this.http = http;
8028
+ this.appConfig = appConfig;
8029
+ this.errorService = errorService;
8030
+ this.alertService = alertService;
8031
+ this.sessionStorageService = sessionStorageService;
8032
+ // Check to see if work allocation is enabled
8033
+ }
8034
+ /**
8035
+ * Call the API to get tasks matching the search criteria.
8036
+ * @param searchRequest The search parameters that specify which tasks to match.
8037
+ */
8038
+ searchTasks(searchRequest) {
8039
+ // Do not need to check if WA enabled as parent method will do that
8040
+ const url = `${this.appConfig.getWorkAllocationApiUrl()}/searchForCompletable`;
8041
+ return this.http
8042
+ .post(url, { searchRequest }, null, false)
8043
+ .pipe(map(response => response), catchError(error => {
8044
+ this.errorService.setError(error);
8045
+ // explicitly eat away 401 error and 400 error
8046
+ if (error && error.status && (error.status === 401 || error.status === 400)) {
8047
+ // do nothing
8048
+ console.log('error status 401 or 400', error);
8049
+ }
8050
+ else {
8051
+ return throwError(error);
8052
+ }
8053
+ }));
8054
+ }
8055
+ isWAEnabled(jurisdiction, caseType) {
8056
+ this.features = this.appConfig.getWAServiceConfig();
8057
+ let enabled = false;
8058
+ if (!jurisdiction || !caseType) {
8059
+ const caseInfo = JSON.parse(this.sessionStorageService.getItem('caseInfo'));
8060
+ jurisdiction = caseInfo.jurisdiction;
8061
+ caseType = caseInfo.caseType;
8062
+ }
8063
+ if (!this.features || !this.features.configurations) {
8064
+ return false;
8065
+ }
8066
+ this.features.configurations.forEach(serviceConfig => {
8067
+ if (serviceConfig.serviceName === jurisdiction && (serviceConfig.caseTypes.indexOf(caseType) !== -1)) {
8068
+ enabled = true;
8069
+ }
8070
+ });
8071
+ return enabled;
8072
+ }
8073
+ /**
8074
+ * Call the API to assign a task.
8075
+ * @param taskId specifies which task should be assigned.
8076
+ * @param userId specifies the user the task should be assigned to.
8077
+ */
8078
+ assignTask(taskId, userId) {
8079
+ if (!this.isWAEnabled()) {
8080
+ return of(null);
8081
+ }
8082
+ const url = `${this.appConfig.getWorkAllocationApiUrl()}/task/${taskId}/assign`;
8083
+ return this.http
8084
+ .post(url, { userId })
8085
+ .pipe(catchError(error => {
8086
+ this.errorService.setError(error);
8087
+ return throwError(error);
8088
+ }));
8089
+ }
8090
+ /**
8091
+ * Call the API to complete a task.
8092
+ * @param taskId specifies which task should be completed.
8093
+ */
8094
+ completeTask(taskId) {
8095
+ if (!this.isWAEnabled()) {
8096
+ return of(null);
8097
+ }
8098
+ const url = `${this.appConfig.getWorkAllocationApiUrl()}/task/${taskId}/complete`;
8099
+ return this.http
8100
+ .post(url, {})
8101
+ .pipe(catchError(error => {
8102
+ this.errorService.setError(error);
8103
+ // this will subscribe to get the user details and decide whether to display an error message
8104
+ this.http.get(this.appConfig.getUserInfoApiUrl()).pipe(map(response => response)).subscribe((response) => {
8105
+ this.handleTaskCompletionError(response);
8106
+ });
8107
+ return throwError(error);
8108
+ }));
8109
+ }
8110
+ /**
8111
+ * Call the API to assign and complete a task.
8112
+ * @param taskId specifies which task should be completed.
8113
+ */
8114
+ assignAndCompleteTask(taskId) {
8115
+ if (!this.isWAEnabled()) {
8116
+ return of(null);
8117
+ }
8118
+ const url = `${this.appConfig.getWorkAllocationApiUrl()}/task/${taskId}/complete`;
8119
+ return this.http
8120
+ .post(url, {
8121
+ completion_options: {
8122
+ assign_and_complete: true
8123
+ }
8124
+ })
8125
+ .pipe(catchError(error => {
8126
+ this.errorService.setError(error);
8127
+ // this will subscribe to get the user details and decide whether to display an error message
8128
+ this.http.get(this.appConfig.getUserInfoApiUrl()).pipe(map(response => response)).subscribe((response) => {
8129
+ this.handleTaskCompletionError(response);
8130
+ });
8131
+ return throwError(error);
8132
+ }));
8133
+ }
8134
+ /**
8135
+ * Handles the response from the observable to get the user details when task is completed.
8136
+ * @param response is the response given from the observable which contains the user detaild.
8137
+ */
8138
+ handleTaskCompletionError(response) {
8139
+ const userDetails = response;
8140
+ if (this.userIsCaseworker(userDetails.userInfo.roles)) {
8141
+ // when submitting the completion of task if not yet rendered cases/case confirm then preserve the alert for re-rendering
8142
+ this.alertService.setPreserveAlerts(true, ['cases/case', 'submit']);
8143
+ this.alertService.warning('A task could not be completed successfully. Please complete the task associated with the case manually.');
8144
+ }
8145
+ }
8146
+ /**
8147
+ * Returns true if the user's role is equivalent to a caseworker.
8148
+ * @param roles is the list of roles found from the current user.
8149
+ */
8150
+ userIsCaseworker(roles) {
8151
+ const lowerCaseRoles = roles.map(role => role.toLowerCase());
8152
+ // When/if lib & target permanently change to es2016, replace indexOf with includes
8153
+ return (lowerCaseRoles.indexOf(WorkAllocationService.iACCaseOfficer) !== -1)
8154
+ || (lowerCaseRoles.indexOf(WorkAllocationService.iACAdmOfficer) !== -1);
8155
+ }
8156
+ /**
8157
+ * Look for open tasks for a case and event combination. There are 5 possible scenarios:
8158
+ * 1. No tasks found => Success.
8159
+ * 2. One task found => Mark as done => Success.
8160
+ * 3. One task found => Mark as done throws error => Failure.
8161
+ * 4. More than one task found => Failure.
8162
+ * 5. Search call throws an error => Failure.
8163
+ * @param ccdId The ID of the case to find tasks for.
8164
+ * @param eventId The ID of the event to find tasks for.
8165
+ */
8166
+ completeAppropriateTask(ccdId, eventId, jurisdiction, caseTypeId) {
8167
+ if (!this.isWAEnabled(jurisdiction, caseTypeId)) {
8168
+ return of(null);
8169
+ }
8170
+ const taskSearchParameter = {
8171
+ ccdId,
8172
+ eventId,
8173
+ jurisdiction,
8174
+ caseTypeId
8175
+ };
8176
+ return this.searchTasks(taskSearchParameter)
8177
+ .pipe(map((response) => {
8178
+ const tasks = response.tasks;
8179
+ if (tasks && tasks.length > 0) {
8180
+ if (tasks.length === 1) {
8181
+ this.completeTask(tasks[0].id).subscribe();
8182
+ }
8183
+ else {
8184
+ // This is a problem. Throw an appropriate error.
8185
+ throw new Error(MULTIPLE_TASKS_FOUND);
8186
+ }
8187
+ }
8188
+ return true; // All good. Nothing to see here.
8189
+ }), catchError(error => {
8190
+ // Simply rethrow it.
8191
+ return throwError(error);
8192
+ }));
8193
+ }
8194
+ /**
8195
+ * Return tasks for case and event.
8196
+ */
8197
+ getTasksByCaseIdAndEventId(eventId, caseId, caseType, jurisdiction) {
8198
+ const defaultPayload = {
8199
+ task_required_for_event: false,
8200
+ tasks: []
8201
+ };
8202
+ if (!this.isWAEnabled()) {
8203
+ return of(defaultPayload);
8204
+ }
8205
+ return this.http.get(`${this.appConfig.getWorkAllocationApiUrl()}/case/tasks/${caseId}/event/${eventId}/caseType/${caseType}/jurisdiction/${jurisdiction}`);
8206
+ }
8207
+ /**
8208
+ * Call the API to get a task
8209
+ */
8210
+ getTask(taskId) {
8211
+ if (!this.isWAEnabled()) {
8212
+ return of({ task: null });
8213
+ }
8214
+ return this.http.get(`${this.appConfig.getWorkAllocationApiUrl()}/task/${taskId}`);
8215
+ }
8216
+ }
8217
+ WorkAllocationService.iACCaseOfficer = 'caseworker-ia-caseofficer';
8218
+ WorkAllocationService.iACAdmOfficer = 'caseworker-ia-admofficer';
8219
+ WorkAllocationService.ɵfac = function WorkAllocationService_Factory(t) { return new (t || WorkAllocationService)(i0.ɵɵinject(HttpService), i0.ɵɵinject(AbstractAppConfig), i0.ɵɵinject(HttpErrorService), i0.ɵɵinject(AlertService), i0.ɵɵinject(SessionStorageService)); };
8220
+ WorkAllocationService.ɵprov = i0.ɵɵdefineInjectable({ token: WorkAllocationService, factory: WorkAllocationService.ɵfac });
8221
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(WorkAllocationService, [{
8222
+ type: Injectable
8223
+ }], function () { return [{ type: HttpService }, { type: AbstractAppConfig }, { type: HttpErrorService }, { type: AlertService }, { type: SessionStorageService }]; }, null); })();
8224
+
8236
8225
  class CaseEditComponent {
8237
8226
  constructor(fb, router, route, fieldsUtils, fieldsPurger, registrarService, wizardFactory, sessionStorageService, windowsService) {
8238
8227
  this.fb = fb;
@@ -8606,14 +8595,14 @@ class CaseEditDataService {
8606
8595
  this.title$ = new BehaviorSubject(null);
8607
8596
  this.formValidationErrors$ = new BehaviorSubject([]);
8608
8597
  this.editForm$ = new BehaviorSubject(null);
8609
- this.linkError$ = new BehaviorSubject(null);
8598
+ this.isLinkedCasesJourneyAtFinalStep$ = new BehaviorSubject(null);
8610
8599
  this.eventTriggerName$ = new BehaviorSubject(null);
8611
8600
  this.triggerSubmitEvent$ = new BehaviorSubject(null);
8612
8601
  this.caseDetails$ = this.details$.asObservable();
8613
8602
  this.caseTitle$ = this.title$.asObservable();
8614
8603
  this.caseEditForm$ = this.editForm$.asObservable();
8615
8604
  this.caseFormValidationErrors$ = this.formValidationErrors$.asObservable();
8616
- this.caseLinkError$ = this.linkError$.asObservable();
8605
+ this.caseIsLinkedCasesJourneyAtFinalStep$ = this.isLinkedCasesJourneyAtFinalStep$.asObservable();
8617
8606
  this.caseEventTriggerName$ = this.eventTriggerName$.asObservable();
8618
8607
  this.caseTriggerSubmitEvent$ = this.triggerSubmitEvent$.asObservable();
8619
8608
  }
@@ -8626,9 +8615,6 @@ class CaseEditDataService {
8626
8615
  setCaseEventTriggerName(triggerName) {
8627
8616
  this.eventTriggerName$.next(triggerName);
8628
8617
  }
8629
- setCaseLinkError(error) {
8630
- this.linkError$.next(error);
8631
- }
8632
8618
  setFormValidationErrors(validationErrors) {
8633
8619
  this.formValidationErrors$.next(validationErrors);
8634
8620
  }
@@ -8638,8 +8624,8 @@ class CaseEditDataService {
8638
8624
  clearFormValidationErrors() {
8639
8625
  this.formValidationErrors$.next([]);
8640
8626
  }
8641
- clearCaseLinkError() {
8642
- this.linkError$.next(null);
8627
+ setLinkedCasesJourneyAtFinalStep(isAtFinalStep) {
8628
+ this.isLinkedCasesJourneyAtFinalStep$.next(isAtFinalStep);
8643
8629
  }
8644
8630
  addFormValidationError(validationError) {
8645
8631
  this.formValidationErrors$.next(this.formValidationErrors$.getValue().concat([validationError]));
@@ -9013,6 +8999,9 @@ class CaseEditPageComponent {
9013
8999
  this.caseEditDataService.caseEditForm$.subscribe({
9014
9000
  next: editForm => this.editForm = editForm
9015
9001
  });
9002
+ this.caseEditDataService.caseIsLinkedCasesJourneyAtFinalStep$.subscribe({
9003
+ next: isLinkedCasesJourneyAtFinalStep => this.isLinkedCasesJourneyAtFinalStep = isLinkedCasesJourneyAtFinalStep
9004
+ });
9016
9005
  this.caseEditDataService.caseTriggerSubmitEvent$.subscribe({
9017
9006
  next: state => {
9018
9007
  if (state) {
@@ -9032,7 +9021,11 @@ class CaseEditPageComponent {
9032
9021
  return this.caseEdit.first();
9033
9022
  }
9034
9023
  currentPageIsNotValid() {
9035
- return !this.pageValidationService.isPageValid(this.currentPage, this.editForm);
9024
+ return !this.pageValidationService.isPageValid(this.currentPage, this.editForm) ||
9025
+ (this.isLinkedCasesJourney() && !this.isLinkedCasesJourneyAtFinalStep);
9026
+ }
9027
+ isLinkedCasesJourney() {
9028
+ return FieldsUtils.containsLinkedCasesCaseField(this.currentPage.case_fields);
9036
9029
  }
9037
9030
  /**
9038
9031
  * caseEventData.event_data contains all the values from the previous pages so we set caseEventData.data = caseEventData.event_data
@@ -9058,7 +9051,7 @@ class CaseEditPageComponent {
9058
9051
  const label = casefield.label || 'Field';
9059
9052
  let id = casefield.id;
9060
9053
  if (fieldElement['component'] && fieldElement['component'].parent) {
9061
- if (fieldElement['component'].idPrefix.indexOf('_' + id + '_') === -1) {
9054
+ if (fieldElement['component'].idPrefix.indexOf(`_${id}_`) === -1) {
9062
9055
  id = `${fieldElement['component'].idPrefix}${id}`;
9063
9056
  }
9064
9057
  else {
@@ -9130,7 +9123,16 @@ class CaseEditPageComponent {
9130
9123
  submit() {
9131
9124
  this.caseEditDataService.clearFormValidationErrors();
9132
9125
  if (this.currentPageIsNotValid()) {
9133
- this.generateErrorMessage(this.currentPage.case_fields);
9126
+ // The generateErrorMessage method filters out the hidden fields.
9127
+ // The error message for LinkedCases journey will never get displayed because the
9128
+ // LinkedCases is configured with ComponentLauncher field as visible and caseLinks field as hidden.
9129
+ if (this.isLinkedCasesJourney()) {
9130
+ this.validationErrors.push({ id: 'next-button', message: 'Please select Next to go to the next page' });
9131
+ CaseEditPageComponent.scrollToTop();
9132
+ }
9133
+ else {
9134
+ this.generateErrorMessage(this.currentPage.case_fields);
9135
+ }
9134
9136
  }
9135
9137
  if (!this.isSubmitting && !this.currentPageIsNotValid()) {
9136
9138
  this.isSubmitting = true;
@@ -9187,8 +9189,8 @@ class CaseEditPageComponent {
9187
9189
  }
9188
9190
  }
9189
9191
  callbackErrorsNotify(errorContext) {
9190
- this.ignoreWarning = errorContext.ignore_warning;
9191
- this.triggerText = errorContext.trigger_text;
9192
+ this.ignoreWarning = errorContext.ignoreWarning;
9193
+ this.triggerText = errorContext.triggerText;
9192
9194
  }
9193
9195
  next() {
9194
9196
  this.resetErrors();
@@ -9500,12 +9502,12 @@ class CallbackErrorsComponent {
9500
9502
  buildCallbackErrorsContext() {
9501
9503
  const errorContext = new CallbackErrorsContext();
9502
9504
  if (this.hasWarnings() && !this.hasErrors() && !this.hasInvalidData()) {
9503
- errorContext.ignore_warning = true;
9504
- errorContext.trigger_text = this.triggerTextIgnore;
9505
+ errorContext.ignoreWarning = true;
9506
+ errorContext.triggerText = this.triggerTextIgnore;
9505
9507
  }
9506
9508
  else {
9507
- errorContext.ignore_warning = false;
9508
- errorContext.trigger_text = this.triggerTextContinue;
9509
+ errorContext.ignoreWarning = false;
9510
+ errorContext.triggerText = this.triggerTextContinue;
9509
9511
  }
9510
9512
  return errorContext;
9511
9513
  }
@@ -9544,7 +9546,7 @@ CallbackErrorsComponent.ɵcmp = i0.ɵɵdefineComponent({ type: CallbackErrorsCom
9544
9546
 
9545
9547
  class AddressOption {
9546
9548
  constructor(addressModel, description) {
9547
- if (description == null) {
9549
+ if (description === null) {
9548
9550
  this.value = addressModel;
9549
9551
  this.description = this.getDescription();
9550
9552
  }
@@ -9553,13 +9555,10 @@ class AddressOption {
9553
9555
  }
9554
9556
  }
9555
9557
  getDescription() {
9556
- return this.removeInitialCommaIfPresent((this.value.AddressLine1 === undefined ? '' : this.value.AddressLine1)
9557
- + this.prefixWithCommaIfPresent(this.value.AddressLine2)
9558
- + this.prefixWithCommaIfPresent(this.value.AddressLine3)
9559
- + ', ' + this.value.PostTown);
9558
+ return this.removeInitialCommaIfPresent(`${this.value.AddressLine1 === undefined ? '' : this.value.AddressLine1}${this.prefixWithCommaIfPresent(this.value.AddressLine2)}${this.prefixWithCommaIfPresent(this.value.AddressLine3)}, ${this.value.PostTown}`);
9560
9559
  }
9561
9560
  prefixWithCommaIfPresent(value) {
9562
- return value ? ', ' + value : value;
9561
+ return value ? `, ${value}` : value;
9563
9562
  }
9564
9563
  removeInitialCommaIfPresent(value) {
9565
9564
  return value.replace(new RegExp('^,', 'gi'), '');
@@ -9830,7 +9829,7 @@ WriteComplexFieldComponent.ɵcmp = i0.ɵɵdefineComponent({ type: WriteComplexFi
9830
9829
  type: Input
9831
9830
  }] }); })();
9832
9831
 
9833
- const _c0$R = ["writeComplexFieldComponent"];
9832
+ const _c0$S = ["writeComplexFieldComponent"];
9834
9833
  function WriteAddressFieldComponent_div_1_div_4_span_4_Template(rf, ctx) { if (rf & 1) {
9835
9834
  i0.ɵɵelementStart(0, "span", 14);
9836
9835
  i0.ɵɵtext(1, "Enter the Postcode");
@@ -9947,7 +9946,7 @@ class WriteAddressFieldComponent extends AbstractFieldWriteComponent {
9947
9946
  this.missingPostcode = false;
9948
9947
  const postcode = this.postcode.value;
9949
9948
  this.caseField.value = null;
9950
- this.addressOptions = new Array();
9949
+ this.addressOptions = [];
9951
9950
  this.addressesService.getAddressesForPostcode(postcode.replace(' ', '').toUpperCase()).subscribe(result => {
9952
9951
  result.forEach(address => {
9953
9952
  this.addressOptions.push(new AddressOption(address, null));
@@ -9990,7 +9989,7 @@ class WriteAddressFieldComponent extends AbstractFieldWriteComponent {
9990
9989
  let hasAddress = false;
9991
9990
  if (address) {
9992
9991
  Object.keys(address).forEach((key) => {
9993
- if (address[key] != null) {
9992
+ if (address[key] !== null) {
9994
9993
  hasAddress = true;
9995
9994
  }
9996
9995
  });
@@ -10013,7 +10012,7 @@ class WriteAddressFieldComponent extends AbstractFieldWriteComponent {
10013
10012
  }
10014
10013
  defaultLabel(numberOfAddresses) {
10015
10014
  return numberOfAddresses === 0 ? 'No address found'
10016
- : numberOfAddresses + (numberOfAddresses === 1 ? ' address ' : ' addresses ') + 'found';
10015
+ : `${numberOfAddresses}${numberOfAddresses === 1 ? ' address ' : ' addresses '}found`;
10017
10016
  }
10018
10017
  setFormValue() {
10019
10018
  if (this.writeComplexFieldComponent.complexGroup) {
@@ -10023,7 +10022,7 @@ class WriteAddressFieldComponent extends AbstractFieldWriteComponent {
10023
10022
  }
10024
10023
  WriteAddressFieldComponent.ɵfac = function WriteAddressFieldComponent_Factory(t) { return new (t || WriteAddressFieldComponent)(i0.ɵɵdirectiveInject(AddressesService), i0.ɵɵdirectiveInject(IsCompoundPipe)); };
10025
10024
  WriteAddressFieldComponent.ɵcmp = i0.ɵɵdefineComponent({ type: WriteAddressFieldComponent, selectors: [["ccd-write-address-field"]], viewQuery: function WriteAddressFieldComponent_Query(rf, ctx) { if (rf & 1) {
10026
- i0.ɵɵviewQuery(_c0$R, 1);
10025
+ i0.ɵɵviewQuery(_c0$S, 1);
10027
10026
  i0.ɵɵviewQuery(FocusElementDirective, 1);
10028
10027
  } if (rf & 2) {
10029
10028
  let _t;
@@ -10149,12 +10148,13 @@ function CaseFileViewFieldComponent_div_1_Template(rf, ctx) { if (rf & 1) {
10149
10148
  i0.ɵɵproperty("ngIf", ctx_r1.currentDocument);
10150
10149
  } }
10151
10150
  class CaseFileViewFieldComponent {
10152
- constructor(elementRef, route, caseFileViewService, documentManagementService, loadingService) {
10151
+ constructor(elementRef, route, caseFileViewService, documentManagementService, loadingService, sessionStorageService) {
10153
10152
  this.elementRef = elementRef;
10154
10153
  this.route = route;
10155
10154
  this.caseFileViewService = caseFileViewService;
10156
10155
  this.documentManagementService = documentManagementService;
10157
10156
  this.loadingService = loadingService;
10157
+ this.sessionStorageService = sessionStorageService;
10158
10158
  this.allowMoving = true;
10159
10159
  this.getCategoriesAndDocumentsError = false;
10160
10160
  }
@@ -10167,6 +10167,12 @@ class CaseFileViewFieldComponent {
10167
10167
  },
10168
10168
  error: _ => this.getCategoriesAndDocumentsError = true
10169
10169
  });
10170
+ // EXUI-8000
10171
+ const userInfo = JSON.parse(this.sessionStorageService.getItem('userDetails'));
10172
+ // Get acls that intersects from acl roles and user roles
10173
+ const acls = this.caseField.acls.filter(acl => userInfo.roles.includes(acl.role));
10174
+ // As there can be more than one intersecting role, if any acls are update: true
10175
+ this.allowMoving = acls.some(acl => acl.update);
10170
10176
  }
10171
10177
  ngAfterViewInit() {
10172
10178
  const slider = this.elementRef.nativeElement.querySelector('.slider');
@@ -10212,92 +10218,23 @@ class CaseFileViewFieldComponent {
10212
10218
  }
10213
10219
  }
10214
10220
  CaseFileViewFieldComponent.PARAM_CASE_ID = 'cid';
10215
- CaseFileViewFieldComponent.ɵfac = function CaseFileViewFieldComponent_Factory(t) { return new (t || CaseFileViewFieldComponent)(i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i1$1.ActivatedRoute), i0.ɵɵdirectiveInject(CaseFileViewService), i0.ɵɵdirectiveInject(DocumentManagementService), i0.ɵɵdirectiveInject(LoadingService)); };
10221
+ CaseFileViewFieldComponent.ɵfac = function CaseFileViewFieldComponent_Factory(t) { return new (t || CaseFileViewFieldComponent)(i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i1$1.ActivatedRoute), i0.ɵɵdirectiveInject(CaseFileViewService), i0.ɵɵdirectiveInject(DocumentManagementService), i0.ɵɵdirectiveInject(LoadingService), i0.ɵɵdirectiveInject(SessionStorageService)); };
10216
10222
  CaseFileViewFieldComponent.ɵcmp = i0.ɵɵdefineComponent({ type: CaseFileViewFieldComponent, selectors: [["ccd-case-file-view-field"]], decls: 2, vars: 2, consts: [["class", "govuk-grid-column-two-thirds", 4, "ngIf"], [4, "ngIf"], [1, "govuk-grid-column-two-thirds"], [1, "govuk-heading-xl"], [1, "govuk-body"], [1, "govuk-heading-l"], ["id", "case-file-view", 1, "govuk-form-group"], [1, "document-tree-container"], [1, "document-tree-container__tree", 3, "categoriesAndDocuments", "allowMoving", "clickedDocument", "moveDocument"], [1, "slider"], [1, "media-viewer-container"], [3, "url", "downloadFileName", "showToolbar", "contentType", "enableAnnotations", "enableRedactions", "height"]], template: function CaseFileViewFieldComponent_Template(rf, ctx) { if (rf & 1) {
10217
- i0.ɵɵtemplate(0, CaseFileViewFieldComponent_div_0_Template, 5, 0, "div", 0);
10218
- i0.ɵɵtemplate(1, CaseFileViewFieldComponent_div_1_Template, 9, 3, "div", 1);
10219
- } if (rf & 2) {
10220
- i0.ɵɵproperty("ngIf", ctx.getCategoriesAndDocumentsError);
10221
- i0.ɵɵadvance(1);
10222
- i0.ɵɵproperty("ngIf", !ctx.getCategoriesAndDocumentsError);
10223
- } }, styles: ["#case-file-view[_ngcontent-%COMP%]{display:flex;border:2px solid #c9c9c9;height:100vh;position:relative}#case-file-view[_ngcontent-%COMP%] .document-tree-container[_ngcontent-%COMP%]{background-color:#faf8f8;width:30%;min-height:400px;min-width:10%}#case-file-view[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%]{width:.2%;background-color:#6b6b6b}#case-file-view[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%]:focus, #case-file-view[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%]:hover{cursor:col-resize}#case-file-view[_ngcontent-%COMP%] .media-viewer-container[_ngcontent-%COMP%]{background-color:#dee0e2;flex:1 1 0;overflow:hidden}"] });
10224
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CaseFileViewFieldComponent, [{
10225
- type: Component,
10226
- args: [{
10227
- selector: 'ccd-case-file-view-field',
10228
- templateUrl: './case-file-view-field.component.html',
10229
- styleUrls: ['./case-file-view-field.component.scss'],
10230
- }]
10231
- }], function () { return [{ type: i0.ElementRef }, { type: i1$1.ActivatedRoute }, { type: CaseFileViewService }, { type: DocumentManagementService }, { type: LoadingService }]; }, null); })();
10232
-
10233
- function CaseFileViewFieldReadComponent_div_0_Template(rf, ctx) { if (rf & 1) {
10234
- i0.ɵɵelementStart(0, "div", 2);
10235
- i0.ɵɵelementStart(1, "h1", 3);
10236
- i0.ɵɵtext(2, "Sorry, there is a problem with the service");
10237
- i0.ɵɵelementEnd();
10238
- i0.ɵɵelementStart(3, "p", 4);
10239
- i0.ɵɵtext(4, "Try again later.");
10240
- i0.ɵɵelementEnd();
10241
- i0.ɵɵelementEnd();
10242
- } }
10243
- function CaseFileViewFieldReadComponent_div_1_ng_container_8_Template(rf, ctx) { if (rf & 1) {
10244
- i0.ɵɵelementContainerStart(0);
10245
- i0.ɵɵelement(1, "mv-media-viewer", 11);
10246
- i0.ɵɵelementContainerEnd();
10247
- } if (rf & 2) {
10248
- const ctx_r2 = i0.ɵɵnextContext(2);
10249
- i0.ɵɵadvance(1);
10250
- i0.ɵɵproperty("url", ctx_r2.currentDocument.document_binary_url)("downloadFileName", ctx_r2.currentDocument.document_filename)("showToolbar", true)("contentType", ctx_r2.currentDocument.content_type)("enableAnnotations", true)("enableRedactions", true)("height", "94.5vh");
10251
- } }
10252
- function CaseFileViewFieldReadComponent_div_1_Template(rf, ctx) { if (rf & 1) {
10253
- const _r4 = i0.ɵɵgetCurrentView();
10254
- i0.ɵɵelementStart(0, "div");
10255
- i0.ɵɵelementStart(1, "h2", 5);
10256
- i0.ɵɵtext(2, "Case file");
10257
- i0.ɵɵelementEnd();
10258
- i0.ɵɵelementStart(3, "div", 6);
10259
- i0.ɵɵelementStart(4, "div", 7);
10260
- i0.ɵɵelementStart(5, "ccd-case-file-view-folder", 8);
10261
- i0.ɵɵlistener("clickedDocument", function CaseFileViewFieldReadComponent_div_1_Template_ccd_case_file_view_folder_clickedDocument_5_listener($event) { i0.ɵɵrestoreView(_r4); const ctx_r3 = i0.ɵɵnextContext(); return ctx_r3.setMediaViewerFile($event); })("moveDocument", function CaseFileViewFieldReadComponent_div_1_Template_ccd_case_file_view_folder_moveDocument_5_listener($event) { i0.ɵɵrestoreView(_r4); const ctx_r5 = i0.ɵɵnextContext(); return ctx_r5.moveDocument($event); });
10262
- i0.ɵɵelementEnd();
10263
- i0.ɵɵelementEnd();
10264
- i0.ɵɵelement(6, "div", 9);
10265
- i0.ɵɵelementStart(7, "div", 10);
10266
- i0.ɵɵtemplate(8, CaseFileViewFieldReadComponent_div_1_ng_container_8_Template, 2, 7, "ng-container", 1);
10267
- i0.ɵɵelementEnd();
10268
- i0.ɵɵelementEnd();
10269
- i0.ɵɵelementEnd();
10270
- } if (rf & 2) {
10271
- const ctx_r1 = i0.ɵɵnextContext();
10272
- i0.ɵɵadvance(5);
10273
- i0.ɵɵproperty("categoriesAndDocuments", ctx_r1.categoriesAndDocuments$)("allowMoving", ctx_r1.allowMoving);
10274
- i0.ɵɵadvance(3);
10275
- i0.ɵɵproperty("ngIf", ctx_r1.currentDocument);
10276
- } }
10277
- class CaseFileViewFieldReadComponent extends CaseFileViewFieldComponent {
10278
- constructor() {
10279
- super(...arguments);
10280
- this.allowMoving = false;
10281
- }
10282
- }
10283
- CaseFileViewFieldReadComponent.ɵfac = function CaseFileViewFieldReadComponent_Factory(t) { return ɵCaseFileViewFieldReadComponent_BaseFactory(t || CaseFileViewFieldReadComponent); };
10284
- CaseFileViewFieldReadComponent.ɵcmp = i0.ɵɵdefineComponent({ type: CaseFileViewFieldReadComponent, selectors: [["ccd-case-file-view-field"]], features: [i0.ɵɵInheritDefinitionFeature], decls: 2, vars: 2, consts: [["class", "govuk-grid-column-two-thirds", 4, "ngIf"], [4, "ngIf"], [1, "govuk-grid-column-two-thirds"], [1, "govuk-heading-xl"], [1, "govuk-body"], [1, "govuk-heading-l"], ["id", "case-file-view", 1, "govuk-form-group"], [1, "document-tree-container"], [1, "document-tree-container__tree", 3, "categoriesAndDocuments", "allowMoving", "clickedDocument", "moveDocument"], [1, "slider"], [1, "media-viewer-container"], [3, "url", "downloadFileName", "showToolbar", "contentType", "enableAnnotations", "enableRedactions", "height"]], template: function CaseFileViewFieldReadComponent_Template(rf, ctx) { if (rf & 1) {
10285
- i0.ɵɵtemplate(0, CaseFileViewFieldReadComponent_div_0_Template, 5, 0, "div", 0);
10286
- i0.ɵɵtemplate(1, CaseFileViewFieldReadComponent_div_1_Template, 9, 3, "div", 1);
10223
+ i0.ɵɵtemplate(0, CaseFileViewFieldComponent_div_0_Template, 5, 0, "div", 0);
10224
+ i0.ɵɵtemplate(1, CaseFileViewFieldComponent_div_1_Template, 9, 3, "div", 1);
10287
10225
  } if (rf & 2) {
10288
10226
  i0.ɵɵproperty("ngIf", ctx.getCategoriesAndDocumentsError);
10289
10227
  i0.ɵɵadvance(1);
10290
10228
  i0.ɵɵproperty("ngIf", !ctx.getCategoriesAndDocumentsError);
10291
10229
  } }, styles: ["#case-file-view[_ngcontent-%COMP%]{display:flex;border:2px solid #c9c9c9;height:100vh;position:relative}#case-file-view[_ngcontent-%COMP%] .document-tree-container[_ngcontent-%COMP%]{background-color:#faf8f8;width:30%;min-height:400px;min-width:10%}#case-file-view[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%]{width:.2%;background-color:#6b6b6b}#case-file-view[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%]:focus, #case-file-view[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%]:hover{cursor:col-resize}#case-file-view[_ngcontent-%COMP%] .media-viewer-container[_ngcontent-%COMP%]{background-color:#dee0e2;flex:1 1 0;overflow:hidden}"] });
10292
- const ɵCaseFileViewFieldReadComponent_BaseFactory = /*@__PURE__*/ i0.ɵɵgetInheritedFactory(CaseFileViewFieldReadComponent);
10293
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CaseFileViewFieldReadComponent, [{
10230
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CaseFileViewFieldComponent, [{
10294
10231
  type: Component,
10295
10232
  args: [{
10296
10233
  selector: 'ccd-case-file-view-field',
10297
10234
  templateUrl: './case-file-view-field.component.html',
10298
10235
  styleUrls: ['./case-file-view-field.component.scss'],
10299
10236
  }]
10300
- }], null, null); })();
10237
+ }], function () { return [{ type: i0.ElementRef }, { type: i1$1.ActivatedRoute }, { type: CaseFileViewService }, { type: DocumentManagementService }, { type: LoadingService }, { type: SessionStorageService }]; }, null); })();
10301
10238
 
10302
10239
  var AddCommentsErrorMessage;
10303
10240
  (function (AddCommentsErrorMessage) {
@@ -10609,7 +10546,7 @@ function WriteCaseFlagFieldComponent_div_1_ng_container_7_Template(rf, ctx) { if
10609
10546
  i0.ɵɵadvance(1);
10610
10547
  i0.ɵɵproperty("formGroup", ctx_r10.caseFlagParentFormGroup)("optional", ctx_r10.flagCommentsOptional);
10611
10548
  } }
10612
- const _c0$Q = function (a0) { return { "form-group-error": a0 }; };
10549
+ const _c0$R = function (a0) { return { "form-group-error": a0 }; };
10613
10550
  function WriteCaseFlagFieldComponent_div_1_Template(rf, ctx) { if (rf & 1) {
10614
10551
  i0.ɵɵelementStart(0, "div", 8);
10615
10552
  i0.ɵɵelementStart(1, "div", 9);
@@ -10628,7 +10565,7 @@ function WriteCaseFlagFieldComponent_div_1_Template(rf, ctx) { if (rf & 1) {
10628
10565
  i0.ɵɵadvance(1);
10629
10566
  i0.ɵɵproperty("ngSwitch", ctx_r1.fieldState);
10630
10567
  i0.ɵɵadvance(1);
10631
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(8, _c0$Q, ctx_r1.errorMessages.length > 0));
10568
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(8, _c0$R, ctx_r1.errorMessages.length > 0));
10632
10569
  i0.ɵɵadvance(1);
10633
10570
  i0.ɵɵtextInterpolate1(" ", ctx_r1.createFlagCaption, " ");
10634
10571
  i0.ɵɵadvance(1);
@@ -11065,7 +11002,7 @@ const ɵReadCaseLinkFieldComponent_BaseFactory = /*@__PURE__*/ i0.ɵɵgetInherit
11065
11002
  }]
11066
11003
  }], null, null); })();
11067
11004
 
11068
- const _c0$P = ["writeComplexFieldComponent"];
11005
+ const _c0$Q = ["writeComplexFieldComponent"];
11069
11006
  function WriteCaseLinkFieldComponent_span_2_Template(rf, ctx) { if (rf & 1) {
11070
11007
  i0.ɵɵelementStart(0, "span", 6);
11071
11008
  i0.ɵɵtext(1);
@@ -11143,7 +11080,7 @@ class WriteCaseLinkFieldComponent extends AbstractFieldWriteComponent {
11143
11080
  }
11144
11081
  WriteCaseLinkFieldComponent.ɵfac = function WriteCaseLinkFieldComponent_Factory(t) { return ɵWriteCaseLinkFieldComponent_BaseFactory(t || WriteCaseLinkFieldComponent); };
11145
11082
  WriteCaseLinkFieldComponent.ɵcmp = i0.ɵɵdefineComponent({ type: WriteCaseLinkFieldComponent, selectors: [["ccd-write-case-link-field"]], viewQuery: function WriteCaseLinkFieldComponent_Query(rf, ctx) { if (rf & 1) {
11146
- i0.ɵɵviewQuery(_c0$P, 1);
11083
+ i0.ɵɵviewQuery(_c0$Q, 1);
11147
11084
  } if (rf & 2) {
11148
11085
  let _t;
11149
11086
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.writeComplexFieldComponent = _t.first);
@@ -11181,7 +11118,7 @@ const ɵWriteCaseLinkFieldComponent_BaseFactory = /*@__PURE__*/ i0.ɵɵgetInheri
11181
11118
  args: ['writeComplexFieldComponent']
11182
11119
  }] }); })();
11183
11120
 
11184
- const _c0$O = function (a0, a1, a2, a3, a4, a5) { return { id: a0, label: a1, field_type: a2, display_context_parameter: a3, value: a4, hidden: a5 }; };
11121
+ const _c0$P = function (a0, a1, a2, a3, a4, a5) { return { id: a0, label: a1, field_type: a2, display_context_parameter: a3, value: a4, hidden: a5 }; };
11185
11122
  function ReadCollectionFieldComponent_table_0_tbody_2_Template(rf, ctx) { if (rf & 1) {
11186
11123
  i0.ɵɵelementStart(0, "tbody");
11187
11124
  i0.ɵɵelementStart(1, "tr");
@@ -11194,7 +11131,7 @@ function ReadCollectionFieldComponent_table_0_tbody_2_Template(rf, ctx) { if (rf
11194
11131
  } if (rf & 2) {
11195
11132
  const ctx_r1 = i0.ɵɵnextContext(2);
11196
11133
  i0.ɵɵadvance(4);
11197
- i0.ɵɵproperty("caseField", i0.ɵɵpureFunction6(3, _c0$O, ctx_r1.caseField.label, ctx_r1.caseField.label, ctx_r1.caseField.field_type.collection_field_type, ctx_r1.caseField.display_context_parameter, ctx_r1.caseField.value, ctx_r1.caseField.hidden))("context", ctx_r1.context)("topLevelFormGroup", ctx_r1.topLevelFormGroup);
11134
+ i0.ɵɵproperty("caseField", i0.ɵɵpureFunction6(3, _c0$P, ctx_r1.caseField.label, ctx_r1.caseField.label, ctx_r1.caseField.field_type.collection_field_type, ctx_r1.caseField.display_context_parameter, ctx_r1.caseField.value, ctx_r1.caseField.hidden))("context", ctx_r1.context)("topLevelFormGroup", ctx_r1.topLevelFormGroup);
11198
11135
  } }
11199
11136
  const _c1$k = function (a0, a1, a2, a3, a4) { return { id: a0, label: a1, field_type: a2, value: a3, hidden: a4 }; };
11200
11137
  function ReadCollectionFieldComponent_table_0_tbody_3_tr_1_Template(rf, ctx) { if (rf & 1) {
@@ -11322,7 +11259,7 @@ RemoveDialogComponent.ɵcmp = i0.ɵɵdefineComponent({ type: RemoveDialogCompone
11322
11259
  }]
11323
11260
  }], function () { return [{ type: i1$3.MatDialogRef }]; }, null); })();
11324
11261
 
11325
- const _c0$N = ["collectionItem"];
11262
+ const _c0$O = ["collectionItem"];
11326
11263
  function WriteCollectionFieldComponent_h2_7_span_1_Template(rf, ctx) { if (rf & 1) {
11327
11264
  i0.ɵɵelementStart(0, "span", 9);
11328
11265
  i0.ɵɵtext(1);
@@ -11529,7 +11466,12 @@ class WriteCollectionFieldComponent extends AbstractFieldWriteComponent {
11529
11466
  addItem(doScroll) {
11530
11467
  // Manually resetting errors is required to prevent `ExpressionChangedAfterItHasBeenCheckedError`
11531
11468
  this.formArray.setErrors(null);
11532
- const item = { value: null };
11469
+ let item = { value: null };
11470
+ if (this.isCollectionDynamic()) {
11471
+ item = Object.assign({}, this.caseField.value[this.caseField.value.length - 1]);
11472
+ const key = Number(item['id'][item['id'].length - 1]) + 1;
11473
+ item.id = item['id'].replace(/.$/, key.toString());
11474
+ }
11533
11475
  this.caseField.value.push(item);
11534
11476
  const index = this.caseField.value.length - 1;
11535
11477
  const caseField = this.buildCaseField(item, index, true);
@@ -11552,6 +11494,12 @@ class WriteCollectionFieldComponent extends AbstractFieldWriteComponent {
11552
11494
  setTimeout(() => this.focusLastItem());
11553
11495
  }
11554
11496
  }
11497
+ isCollectionDynamic() {
11498
+ if (!this.caseField.field_type || !this.caseField.field_type.collection_field_type) {
11499
+ return false;
11500
+ }
11501
+ return this.caseField.field_type.collection_field_type.id === 'DynamicRadioList';
11502
+ }
11555
11503
  newCaseField(id, item, index, isNew = false) {
11556
11504
  const isNotAuthorisedToUpdate = !isNew && this.isNotAuthorisedToUpdate(index);
11557
11505
  const fieldType = plainToClassFromExist(new FieldType(), this.caseField.field_type.collection_field_type);
@@ -11593,6 +11541,7 @@ class WriteCollectionFieldComponent extends AbstractFieldWriteComponent {
11593
11541
  this.formArray.removeAt(index);
11594
11542
  }
11595
11543
  resetIds(index) {
11544
+ var _a, _b;
11596
11545
  for (let i = index; i < this.collItems.length; i++) {
11597
11546
  const counter = i + 1;
11598
11547
  if (this.collItems[i].index && this.collItems[i].index === counter) {
@@ -11602,16 +11551,15 @@ class WriteCollectionFieldComponent extends AbstractFieldWriteComponent {
11602
11551
  && this.collItems[i].caseField.id === counter.toString()) {
11603
11552
  this.collItems[i].caseField.id = i.toString();
11604
11553
  }
11605
- const idPrefix1 = this.collItems[i].prefix ? this.collItems[i].prefix.replace('_' + counter.toString(), '_' + i.toString()) : '';
11606
- const idPrefix1Current = idPrefix1.replace('_' + i.toString(), '_' + counter.toString());
11554
+ const idPrefix1 = this.collItems[i].prefix ? this.collItems[i].prefix.replace(`_${counter.toString()}`, `_${i.toString()}`) : '';
11555
+ const idPrefix1Current = idPrefix1.replace(`_${i.toString()}`, `_${counter.toString()}`);
11607
11556
  if (this.collItems[i].prefix && this.collItems[i].prefix === idPrefix1Current) {
11608
11557
  this.collItems[i].prefix = idPrefix1;
11609
11558
  }
11610
- const idPrefixAvailable = this.collItems[i].container && this.collItems[i].container['component']
11611
- && this.collItems[i].container['component'].idPrefix ? true : false;
11559
+ const idPrefixAvailable = !!((_b = (_a = this.collItems[i].container) === null || _a === void 0 ? void 0 : _a['component']) === null || _b === void 0 ? void 0 : _b.idPrefix);
11612
11560
  const idPrefix2 = idPrefixAvailable ?
11613
- this.collItems[i].container['component'].idPrefix.replace('_' + counter.toString(), '_' + i.toString()) : '';
11614
- const idPrefix2current = idPrefix2.replace('_' + i.toString(), '_' + counter.toString());
11561
+ this.collItems[i].container['component'].idPrefix.replace(`_${counter.toString()}`, `_${i.toString()}`) : '';
11562
+ const idPrefix2current = idPrefix2.replace(`_${i.toString()}`, `_${counter.toString()}`);
11615
11563
  if (idPrefixAvailable && this.collItems[i].container['component'].idPrefix === idPrefix2current) {
11616
11564
  this.collItems[i].container['component'].idPrefix = idPrefix2;
11617
11565
  }
@@ -11696,7 +11644,7 @@ class WriteCollectionFieldComponent extends AbstractFieldWriteComponent {
11696
11644
  }
11697
11645
  WriteCollectionFieldComponent.ɵfac = function WriteCollectionFieldComponent_Factory(t) { return new (t || WriteCollectionFieldComponent)(i0.ɵɵdirectiveInject(i1$3.MatDialog), i0.ɵɵdirectiveInject(i2$1.ScrollToService), i0.ɵɵdirectiveInject(ProfileNotifier)); };
11698
11646
  WriteCollectionFieldComponent.ɵcmp = i0.ɵɵdefineComponent({ type: WriteCollectionFieldComponent, selectors: [["ccd-write-collection-field"]], viewQuery: function WriteCollectionFieldComponent_Query(rf, ctx) { if (rf & 1) {
11699
- i0.ɵɵviewQuery(_c0$N, 1);
11647
+ i0.ɵɵviewQuery(_c0$O, 1);
11700
11648
  } if (rf & 2) {
11701
11649
  let _t;
11702
11650
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.items = _t);
@@ -12016,7 +11964,7 @@ FileUploadStateService.ɵprov = i0.ɵɵdefineInjectable({ token: FileUploadState
12016
11964
  type: Injectable
12017
11965
  }], null, null); })();
12018
11966
 
12019
- const _c0$M = ["fileInput"];
11967
+ const _c0$N = ["fileInput"];
12020
11968
  function WriteDocumentFieldComponent_span_6_Template(rf, ctx) { if (rf & 1) {
12021
11969
  i0.ɵɵelementStart(0, "span", 12);
12022
11970
  i0.ɵɵtext(1);
@@ -12294,7 +12242,7 @@ WriteDocumentFieldComponent.UPLOAD_ERROR_NOT_AVAILABLE = 'Document upload facili
12294
12242
  WriteDocumentFieldComponent.UPLOAD_WAITING_FILE_STATUS = 'Uploading...';
12295
12243
  WriteDocumentFieldComponent.ɵfac = function WriteDocumentFieldComponent_Factory(t) { return new (t || WriteDocumentFieldComponent)(i0.ɵɵdirectiveInject(AbstractAppConfig), i0.ɵɵdirectiveInject(CaseNotifier), i0.ɵɵdirectiveInject(DocumentManagementService), i0.ɵɵdirectiveInject(i1$3.MatDialog), i0.ɵɵdirectiveInject(FileUploadStateService)); };
12296
12244
  WriteDocumentFieldComponent.ɵcmp = i0.ɵɵdefineComponent({ type: WriteDocumentFieldComponent, selectors: [["ccd-write-document-field"]], viewQuery: function WriteDocumentFieldComponent_Query(rf, ctx) { if (rf & 1) {
12297
- i0.ɵɵviewQuery(_c0$M, 1);
12245
+ i0.ɵɵviewQuery(_c0$N, 1);
12298
12246
  } if (rf & 2) {
12299
12247
  let _t;
12300
12248
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.fileInput = _t.first);
@@ -12456,7 +12404,7 @@ function WriteDynamicListFieldComponent_option_9_Template(rf, ctx) { if (rf & 1)
12456
12404
  i0.ɵɵadvance(1);
12457
12405
  i0.ɵɵtextInterpolate(type_r5.label);
12458
12406
  } }
12459
- const _c0$L = function (a0) { return { "form-group-error": a0 }; };
12407
+ const _c0$M = function (a0) { return { "form-group-error": a0 }; };
12460
12408
  class WriteDynamicListFieldComponent extends AbstractFieldWriteComponent {
12461
12409
  ngOnInit() {
12462
12410
  /**
@@ -12498,7 +12446,7 @@ WriteDynamicListFieldComponent.ɵcmp = i0.ɵɵdefineComponent({ type: WriteDynam
12498
12446
  i0.ɵɵelementEnd();
12499
12447
  i0.ɵɵelementEnd();
12500
12448
  } if (rf & 2) {
12501
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(10, _c0$L, !ctx.dynamicListFormControl.valid && (ctx.dynamicListFormControl.dirty || ctx.dynamicListFormControl.touched)));
12449
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(10, _c0$M, !ctx.dynamicListFormControl.valid && (ctx.dynamicListFormControl.dirty || ctx.dynamicListFormControl.touched)));
12502
12450
  i0.ɵɵadvance(1);
12503
12451
  i0.ɵɵproperty("for", ctx.id());
12504
12452
  i0.ɵɵadvance(1);
@@ -12525,6 +12473,215 @@ const ɵWriteDynamicListFieldComponent_BaseFactory = /*@__PURE__*/ i0.ɵɵgetInh
12525
12473
  }]
12526
12474
  }], null, null); })();
12527
12475
 
12476
+ class FixedListPipe {
12477
+ transform(value, items) {
12478
+ if (!!items) {
12479
+ const item = items.find(i => i.code === value);
12480
+ return item ? item.label : FixedListPipe.EMPTY;
12481
+ }
12482
+ else {
12483
+ return FixedListPipe.EMPTY;
12484
+ }
12485
+ }
12486
+ }
12487
+ FixedListPipe.EMPTY = '';
12488
+ FixedListPipe.ɵfac = function FixedListPipe_Factory(t) { return new (t || FixedListPipe)(); };
12489
+ FixedListPipe.ɵpipe = i0.ɵɵdefinePipe({ name: "ccdFixedList", type: FixedListPipe, pure: true });
12490
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(FixedListPipe, [{
12491
+ type: Pipe,
12492
+ args: [{
12493
+ name: 'ccdFixedList'
12494
+ }]
12495
+ }], null, null); })();
12496
+
12497
+ function ReadDynamicMultiSelectListFieldComponent_div_0_Template(rf, ctx) { if (rf & 1) {
12498
+ i0.ɵɵelementStart(0, "div");
12499
+ i0.ɵɵtext(1);
12500
+ i0.ɵɵpipe(2, "ccdFixedList");
12501
+ i0.ɵɵelementEnd();
12502
+ } if (rf & 2) {
12503
+ const value_r1 = ctx.$implicit;
12504
+ const ctx_r0 = i0.ɵɵnextContext();
12505
+ i0.ɵɵadvance(1);
12506
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind2(2, 1, value_r1.code, ctx_r0.caseField.list_items), "\n");
12507
+ } }
12508
+ class ReadDynamicMultiSelectListFieldComponent extends AbstractFieldReadComponent {
12509
+ ngOnInit() {
12510
+ /**
12511
+ *
12512
+ * Reassigning list_items from formatted_list when list_items is empty
12513
+ */
12514
+ if (!this.caseField.list_items && this.caseField.formatted_value && this.caseField.formatted_value.list_items) {
12515
+ this.caseField.list_items = this.caseField.formatted_value.list_items;
12516
+ }
12517
+ if (!this.caseField.value && this.caseField.formatted_value && this.caseField.formatted_value.value) {
12518
+ this.caseField.value = this.caseField.formatted_value.value;
12519
+ }
12520
+ super.ngOnInit();
12521
+ }
12522
+ }
12523
+ ReadDynamicMultiSelectListFieldComponent.ɵfac = function ReadDynamicMultiSelectListFieldComponent_Factory(t) { return ɵReadDynamicMultiSelectListFieldComponent_BaseFactory(t || ReadDynamicMultiSelectListFieldComponent); };
12524
+ ReadDynamicMultiSelectListFieldComponent.ɵcmp = i0.ɵɵdefineComponent({ type: ReadDynamicMultiSelectListFieldComponent, selectors: [["ccd-read-dynamic-multi-select-list-field"]], features: [i0.ɵɵInheritDefinitionFeature], decls: 1, vars: 1, consts: [[4, "ngFor", "ngForOf"]], template: function ReadDynamicMultiSelectListFieldComponent_Template(rf, ctx) { if (rf & 1) {
12525
+ i0.ɵɵtemplate(0, ReadDynamicMultiSelectListFieldComponent_div_0_Template, 3, 4, "div", 0);
12526
+ } if (rf & 2) {
12527
+ i0.ɵɵproperty("ngForOf", ctx.caseField.value);
12528
+ } }, directives: [i1.NgForOf], pipes: [FixedListPipe], styles: [".multi-select-list-field-table[_ngcontent-%COMP%] tr[_ngcontent-%COMP%] > td[_ngcontent-%COMP%]{padding:5px 0}.multi-select-list-field-table[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:last-child > td[_ngcontent-%COMP%]{border-bottom:none}.multi-select-list-field-table[_ngcontent-%COMP%] td.collection-actions[_ngcontent-%COMP%]{width:1px;white-space:nowrap}"] });
12529
+ const ɵReadDynamicMultiSelectListFieldComponent_BaseFactory = /*@__PURE__*/ i0.ɵɵgetInheritedFactory(ReadDynamicMultiSelectListFieldComponent);
12530
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ReadDynamicMultiSelectListFieldComponent, [{
12531
+ type: Component,
12532
+ args: [{
12533
+ selector: 'ccd-read-dynamic-multi-select-list-field',
12534
+ templateUrl: './read-dynamic-multi-select-list-field.html',
12535
+ styleUrls: ['./read-dynamic-multi-select-list-field.component.scss']
12536
+ }]
12537
+ }], null, null); })();
12538
+
12539
+ function WriteDynamicMultiSelectListFieldComponent_span_3_Template(rf, ctx) { if (rf & 1) {
12540
+ i0.ɵɵelementStart(0, "span", 5);
12541
+ i0.ɵɵtext(1);
12542
+ i0.ɵɵpipe(2, "ccdFieldLabel");
12543
+ i0.ɵɵelementEnd();
12544
+ } if (rf & 2) {
12545
+ const ctx_r0 = i0.ɵɵnextContext();
12546
+ i0.ɵɵadvance(1);
12547
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(2, 1, ctx_r0.caseField));
12548
+ } }
12549
+ function WriteDynamicMultiSelectListFieldComponent_span_4_Template(rf, ctx) { if (rf & 1) {
12550
+ i0.ɵɵelementStart(0, "span", 6);
12551
+ i0.ɵɵtext(1);
12552
+ i0.ɵɵelementEnd();
12553
+ } if (rf & 2) {
12554
+ const ctx_r1 = i0.ɵɵnextContext();
12555
+ i0.ɵɵadvance(1);
12556
+ i0.ɵɵtextInterpolate(ctx_r1.caseField.hint_text);
12557
+ } }
12558
+ function WriteDynamicMultiSelectListFieldComponent_span_5_Template(rf, ctx) { if (rf & 1) {
12559
+ i0.ɵɵelementStart(0, "span", 7);
12560
+ i0.ɵɵtext(1);
12561
+ i0.ɵɵpipe(2, "ccdFirstError");
12562
+ i0.ɵɵelementEnd();
12563
+ } if (rf & 2) {
12564
+ const ctx_r2 = i0.ɵɵnextContext();
12565
+ i0.ɵɵadvance(1);
12566
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(2, 1, ctx_r2.checkboxes.errors));
12567
+ } }
12568
+ function WriteDynamicMultiSelectListFieldComponent_ng_container_6_Template(rf, ctx) { if (rf & 1) {
12569
+ const _r6 = i0.ɵɵgetCurrentView();
12570
+ i0.ɵɵelementContainerStart(0);
12571
+ i0.ɵɵelementStart(1, "div", 8);
12572
+ i0.ɵɵelementStart(2, "input", 9);
12573
+ i0.ɵɵlistener("change", function WriteDynamicMultiSelectListFieldComponent_ng_container_6_Template_input_change_2_listener($event) { i0.ɵɵrestoreView(_r6); const ctx_r5 = i0.ɵɵnextContext(); return ctx_r5.onCheckChange($event); });
12574
+ i0.ɵɵelementEnd();
12575
+ i0.ɵɵelementStart(3, "label", 10);
12576
+ i0.ɵɵtext(4);
12577
+ i0.ɵɵelementEnd();
12578
+ i0.ɵɵelementEnd();
12579
+ i0.ɵɵelementContainerEnd();
12580
+ } if (rf & 2) {
12581
+ const checkbox_r4 = ctx.$implicit;
12582
+ const ctx_r3 = i0.ɵɵnextContext();
12583
+ i0.ɵɵadvance(2);
12584
+ i0.ɵɵpropertyInterpolate("id", ctx_r3.createElementId(checkbox_r4.code));
12585
+ i0.ɵɵpropertyInterpolate("name", ctx_r3.id());
12586
+ i0.ɵɵproperty("value", checkbox_r4.code)("checked", ctx_r3.isSelected(checkbox_r4.code));
12587
+ i0.ɵɵadvance(1);
12588
+ i0.ɵɵpropertyInterpolate("for", ctx_r3.createElementId(checkbox_r4.code));
12589
+ i0.ɵɵadvance(1);
12590
+ i0.ɵɵtextInterpolate(checkbox_r4.label);
12591
+ } }
12592
+ const _c0$L = function (a0) { return { "error": a0 }; };
12593
+ class WriteDynamicMultiSelectListFieldComponent extends AbstractFieldWriteComponent {
12594
+ ngOnInit() {
12595
+ this.checkboxes = new FormArray([]);
12596
+ this.setInitialCaseList();
12597
+ this.setInitialCaseFieldValue();
12598
+ // Initialise array with existing values
12599
+ if (this.caseField.value && Array.isArray(this.caseField.value)) {
12600
+ const values = this.caseField.value;
12601
+ values.forEach(value => {
12602
+ this.checkboxes.push(new FormControl(value));
12603
+ });
12604
+ }
12605
+ this.dynamicListFormControl = this.registerControl(new FormControl(this.checkboxes.value));
12606
+ this.dynamicListFormControl.setValue(this.checkboxes.value);
12607
+ }
12608
+ onCheckChange(event) {
12609
+ const target = event.target;
12610
+ if (!target || !target.value) {
12611
+ return;
12612
+ }
12613
+ const selectedListItem = this.getValueListItem(target.value);
12614
+ if (!this.isSelected(target.value)) {
12615
+ // Add a new control in the FormArray
12616
+ this.checkboxes.push(new FormControl(selectedListItem));
12617
+ }
12618
+ else {
12619
+ // Remove the control from the FormArray
12620
+ this.checkboxes.controls.forEach((ctrl, i) => {
12621
+ if (ctrl.value.code === target.value) {
12622
+ this.checkboxes.removeAt(i);
12623
+ }
12624
+ });
12625
+ }
12626
+ this.dynamicListFormControl.setValue(this.checkboxes.value);
12627
+ }
12628
+ isSelected(code) {
12629
+ if (this.checkboxes && this.checkboxes.controls) {
12630
+ return this.checkboxes.controls.find(control => control.value.code === code);
12631
+ }
12632
+ }
12633
+ getValueListItem(value) {
12634
+ return this.caseField.list_items.find(i => i.code === value);
12635
+ }
12636
+ setInitialCaseList() {
12637
+ const hasListItems = this.caseField.list_items && this.caseField.list_items.length > 0;
12638
+ const hasFormattedListItems = this.caseField.formatted_value && this.caseField.formatted_value.list_items.length > 0;
12639
+ if (!hasListItems && hasFormattedListItems) {
12640
+ this.caseField.list_items = this.caseField.formatted_value.list_items;
12641
+ }
12642
+ }
12643
+ setInitialCaseFieldValue() {
12644
+ if (!this.caseField.value && this.caseField.formatted_value && this.caseField.formatted_value.value) {
12645
+ this.caseField.value = this.caseField.formatted_value.value;
12646
+ }
12647
+ const isNull = this.caseField.value === undefined || this.caseField.value === '';
12648
+ if (isNull || !Array.isArray(this.caseField.value)) {
12649
+ this.caseField.value = [];
12650
+ }
12651
+ }
12652
+ }
12653
+ WriteDynamicMultiSelectListFieldComponent.ɵfac = function WriteDynamicMultiSelectListFieldComponent_Factory(t) { return ɵWriteDynamicMultiSelectListFieldComponent_BaseFactory(t || WriteDynamicMultiSelectListFieldComponent); };
12654
+ WriteDynamicMultiSelectListFieldComponent.ɵcmp = i0.ɵɵdefineComponent({ type: WriteDynamicMultiSelectListFieldComponent, selectors: [["ccd-write-dynamic-multi-select-list-field"]], features: [i0.ɵɵInheritDefinitionFeature], decls: 7, vars: 8, consts: [[1, "form-group", "bottom-30", 3, "ngClass", "id"], ["class", "form-label", 4, "ngIf"], ["class", "form-hint", 4, "ngIf"], ["class", "error-message", 4, "ngIf"], [4, "ngFor", "ngForOf"], [1, "form-label"], [1, "form-hint"], [1, "error-message"], [1, "multiple-choice"], ["type", "checkbox", 1, "form-control", 3, "id", "name", "value", "checked", "change"], [1, "form-label", 3, "for"]], template: function WriteDynamicMultiSelectListFieldComponent_Template(rf, ctx) { if (rf & 1) {
12655
+ i0.ɵɵelementStart(0, "div", 0);
12656
+ i0.ɵɵelementStart(1, "fieldset");
12657
+ i0.ɵɵelementStart(2, "legend");
12658
+ i0.ɵɵtemplate(3, WriteDynamicMultiSelectListFieldComponent_span_3_Template, 3, 3, "span", 1);
12659
+ i0.ɵɵtemplate(4, WriteDynamicMultiSelectListFieldComponent_span_4_Template, 2, 1, "span", 2);
12660
+ i0.ɵɵtemplate(5, WriteDynamicMultiSelectListFieldComponent_span_5_Template, 3, 3, "span", 3);
12661
+ i0.ɵɵelementEnd();
12662
+ i0.ɵɵtemplate(6, WriteDynamicMultiSelectListFieldComponent_ng_container_6_Template, 5, 6, "ng-container", 4);
12663
+ i0.ɵɵelementEnd();
12664
+ i0.ɵɵelementEnd();
12665
+ } if (rf & 2) {
12666
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(6, _c0$L, !ctx.checkboxes.valid && ctx.checkboxes.touched))("id", ctx.id());
12667
+ i0.ɵɵadvance(3);
12668
+ i0.ɵɵproperty("ngIf", ctx.caseField.label);
12669
+ i0.ɵɵadvance(1);
12670
+ i0.ɵɵproperty("ngIf", ctx.caseField.hint_text);
12671
+ i0.ɵɵadvance(1);
12672
+ i0.ɵɵproperty("ngIf", ctx.checkboxes.errors && ctx.checkboxes.touched);
12673
+ i0.ɵɵadvance(1);
12674
+ i0.ɵɵproperty("ngForOf", ctx.caseField.list_items);
12675
+ } }, directives: [i1.NgClass, i1.NgIf, i1.NgForOf], pipes: [FieldLabelPipe, FirstErrorPipe], encapsulation: 2 });
12676
+ const ɵWriteDynamicMultiSelectListFieldComponent_BaseFactory = /*@__PURE__*/ i0.ɵɵgetInheritedFactory(WriteDynamicMultiSelectListFieldComponent);
12677
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(WriteDynamicMultiSelectListFieldComponent, [{
12678
+ type: Component,
12679
+ args: [{
12680
+ selector: 'ccd-write-dynamic-multi-select-list-field',
12681
+ templateUrl: './write-dynamic-multi-select-list-field.html'
12682
+ }]
12683
+ }], null, null); })();
12684
+
12528
12685
  class DynamicRadioListPipe {
12529
12686
  transform(value, items) {
12530
12687
  /**
@@ -12632,10 +12789,9 @@ function WriteDynamicRadioListFieldComponent_div_9_Template(rf, ctx) { if (rf &
12632
12789
  const ctx_r4 = i0.ɵɵnextContext();
12633
12790
  i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(7, _c0$K, ctx_r4.dynamicRadioListControl.value === radioButton_r5.code));
12634
12791
  i0.ɵɵadvance(1);
12635
- i0.ɵɵpropertyInterpolate("name", ctx_r4.id());
12636
- i0.ɵɵproperty("id", ctx_r4.buildElementId(radioButton_r5.code))("formControl", ctx_r4.dynamicRadioListControl)("value", radioButton_r5.code);
12792
+ i0.ɵɵproperty("id", ctx_r4.createElementId(radioButton_r5.code))("name", ctx_r4.createElementId(radioButton_r5.code))("formControl", ctx_r4.dynamicRadioListControl)("value", radioButton_r5.code);
12637
12793
  i0.ɵɵadvance(1);
12638
- i0.ɵɵproperty("for", ctx_r4.buildElementId(radioButton_r5.code));
12794
+ i0.ɵɵproperty("for", ctx_r4.createElementId(radioButton_r5.code));
12639
12795
  i0.ɵɵadvance(1);
12640
12796
  i0.ɵɵtextInterpolate(radioButton_r5.label);
12641
12797
  } }
@@ -12659,8 +12815,8 @@ class WriteDynamicRadioListFieldComponent extends AbstractFieldWriteComponent {
12659
12815
  this.dynamicRadioListControl = this.registerControl(new FormControl(this.caseField.value));
12660
12816
  this.dynamicRadioListControl.setValue(this.caseField.value);
12661
12817
  }
12662
- buildElementId(name) {
12663
- return `${this.id()}-${name}`;
12818
+ createElementId(name) {
12819
+ return this.parent && this.parent.value ? this.parent.value.id + this.parent.value.value : super.createElementId(name);
12664
12820
  }
12665
12821
  }
12666
12822
  WriteDynamicRadioListFieldComponent.ɵfac = function WriteDynamicRadioListFieldComponent_Factory(t) { return ɵWriteDynamicRadioListFieldComponent_BaseFactory(t || WriteDynamicRadioListFieldComponent); };
@@ -12803,27 +12959,6 @@ const ɵWriteEmailFieldComponent_BaseFactory = /*@__PURE__*/ i0.ɵɵgetInherited
12803
12959
  }]
12804
12960
  }], null, null); })();
12805
12961
 
12806
- class FixedListPipe {
12807
- transform(value, items) {
12808
- if (!!items) {
12809
- const item = items.find(i => i.code === value);
12810
- return item ? item.label : FixedListPipe.EMPTY;
12811
- }
12812
- else {
12813
- return FixedListPipe.EMPTY;
12814
- }
12815
- }
12816
- }
12817
- FixedListPipe.EMPTY = '';
12818
- FixedListPipe.ɵfac = function FixedListPipe_Factory(t) { return new (t || FixedListPipe)(); };
12819
- FixedListPipe.ɵpipe = i0.ɵɵdefinePipe({ name: "ccdFixedList", type: FixedListPipe, pure: true });
12820
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(FixedListPipe, [{
12821
- type: Pipe,
12822
- args: [{
12823
- name: 'ccdFixedList'
12824
- }]
12825
- }], null, null); })();
12826
-
12827
12962
  class ReadFixedListFieldComponent extends AbstractFieldReadComponent {
12828
12963
  }
12829
12964
  ReadFixedListFieldComponent.ɵfac = function ReadFixedListFieldComponent_Factory(t) { return ɵReadFixedListFieldComponent_BaseFactory(t || ReadFixedListFieldComponent); };
@@ -13384,7 +13519,7 @@ class LinkedCasesService {
13384
13519
  casesResponse.push(this.mapResponse(result));
13385
13520
  });
13386
13521
  });
13387
- const caseLinks = casesResponse.map(item => {
13522
+ this.linkedCases = casesResponse.map(item => {
13388
13523
  return {
13389
13524
  caseReference: item.caseReference,
13390
13525
  caseName: item.caseName,
@@ -13398,7 +13533,6 @@ class LinkedCasesService {
13398
13533
  }),
13399
13534
  };
13400
13535
  });
13401
- this.linkedCases = caseLinks;
13402
13536
  this.serverLinkedApiError = null;
13403
13537
  }, err => {
13404
13538
  this.serverLinkedApiError = {
@@ -14770,10 +14904,11 @@ class LinkedCasesToTableComponent {
14770
14904
  });
14771
14905
  if (searchCasesResponse.length) {
14772
14906
  this.searchCasesByCaseIds(searchCasesResponse).subscribe((searchCases) => {
14773
- const casesResponse = [];
14907
+ let casesResponse = [];
14774
14908
  searchCases.forEach(response => {
14775
14909
  casesResponse.push(this.mapResponse(response));
14776
14910
  });
14911
+ casesResponse = this.sortReasonCodes(casesResponse);
14777
14912
  this.linkedCasesFromResponse = this.sortLinkedCasesByReasonCode(casesResponse);
14778
14913
  this.isLoaded = true;
14779
14914
  const caseLinks = this.linkedCasesFromResponse.map(item => {
@@ -14799,6 +14934,29 @@ class LinkedCasesToTableComponent {
14799
14934
  });
14800
14935
  }
14801
14936
  }
14937
+ sortReasonCodes(searchCasesResponse) {
14938
+ searchCasesResponse.forEach((item) => {
14939
+ var _a;
14940
+ if ((_a = item === null || item === void 0 ? void 0 : item.reasons) === null || _a === void 0 ? void 0 : _a.length) {
14941
+ item.reasons.forEach((reason) => {
14942
+ reason.sortOrder = this.getReasonSortOrder(reason.value.Reason);
14943
+ });
14944
+ item.reasons = item.reasons.sort((a, b) => a.sortOrder - b.sortOrder);
14945
+ item.sortOrder = item.reasons[0].sortOrder;
14946
+ }
14947
+ });
14948
+ searchCasesResponse = searchCasesResponse === null || searchCasesResponse === void 0 ? void 0 : searchCasesResponse.sort((a, b) => a.sortOrder - b.sortOrder);
14949
+ return searchCasesResponse;
14950
+ }
14951
+ getReasonSortOrder(reasonCode) {
14952
+ if (reasonCode === LinkedCasesToTableComponent.CASE_PROGRESS_REASON_CODE) {
14953
+ return 1;
14954
+ }
14955
+ else if (reasonCode === LinkedCasesToTableComponent.CASE_CONSOLIDATED_REASON_CODE) {
14956
+ return 2;
14957
+ }
14958
+ return 3;
14959
+ }
14802
14960
  searchCasesByCaseIds(searchCasesResponse) {
14803
14961
  return forkJoin(searchCasesResponse);
14804
14962
  }
@@ -15121,6 +15279,7 @@ UnLinkCasesComponent.ɵcmp = i0.ɵɵdefineComponent({ type: UnLinkCasesComponent
15121
15279
  type: Output
15122
15280
  }] }); })();
15123
15281
 
15282
+ // tslint:disable:variable-name
15124
15283
  class LinkCaseReason {
15125
15284
  }
15126
15285
  class CCDCaseLinkType {
@@ -15231,7 +15390,7 @@ class ReadLinkedCasesFieldComponent {
15231
15390
  this.caseField = (_a = tab === null || tab === void 0 ? void 0 : tab.fields) === null || _a === void 0 ? void 0 : _a.find(field => field.id === 'caseLinks');
15232
15391
  }
15233
15392
  this.isServerJurisdictionError = this.linkedCasesService.serverJurisdictionError || false;
15234
- const reasonCodeAPIurl = this.appConfig.getRDCommonDataApiUrl() + '/lov/categories/CaseLinkingReasonCode';
15393
+ const reasonCodeAPIurl = `${this.appConfig.getRDCommonDataApiUrl()}/lov/categories/CaseLinkingReasonCode`;
15235
15394
  this.commonDataService.getRefData(reasonCodeAPIurl).subscribe({
15236
15395
  next: reasons => {
15237
15396
  this.reasonListLoaded = true;
@@ -15332,72 +15491,43 @@ ReadLinkedCasesFieldComponent.ɵcmp = i0.ɵɵdefineComponent({ type: ReadLinkedC
15332
15491
  }]
15333
15492
  }], function () { return [{ type: i1$1.ActivatedRoute }, { type: i1$1.Router }, { type: LinkedCasesService }, { type: AbstractAppConfig }, { type: CommonDataService }]; }, null); })();
15334
15493
 
15335
- function WriteLinkedCasesFieldComponent_div_0_div_3_Template(rf, ctx) { if (rf & 1) {
15336
- const _r9 = i0.ɵɵgetCurrentView();
15337
- i0.ɵɵelementStart(0, "div", 7);
15338
- i0.ɵɵelementStart(1, "ul", 8);
15339
- i0.ɵɵelementStart(2, "li");
15340
- i0.ɵɵelementStart(3, "a", 9);
15341
- i0.ɵɵlistener("click", function WriteLinkedCasesFieldComponent_div_0_div_3_Template_a_click_3_listener() { i0.ɵɵrestoreView(_r9); const errorMessage_r7 = ctx.$implicit; const ctx_r8 = i0.ɵɵnextContext(2); return ctx_r8.navigateToErrorElement(errorMessage_r7.fieldId); });
15342
- i0.ɵɵtext(4);
15343
- i0.ɵɵelementEnd();
15344
- i0.ɵɵelementEnd();
15345
- i0.ɵɵelementEnd();
15346
- i0.ɵɵelementEnd();
15347
- } if (rf & 2) {
15348
- const errorMessage_r7 = ctx.$implicit;
15349
- i0.ɵɵadvance(4);
15350
- i0.ɵɵtextInterpolate(errorMessage_r7.description);
15351
- } }
15352
- function WriteLinkedCasesFieldComponent_div_0_Template(rf, ctx) { if (rf & 1) {
15353
- i0.ɵɵelementStart(0, "div", 4);
15354
- i0.ɵɵelementStart(1, "h2", 5);
15355
- i0.ɵɵtext(2, " There is a problem ");
15356
- i0.ɵɵelementEnd();
15357
- i0.ɵɵtemplate(3, WriteLinkedCasesFieldComponent_div_0_div_3_Template, 5, 1, "div", 6);
15494
+ function WriteLinkedCasesFieldComponent_ng_container_2_Template(rf, ctx) { if (rf & 1) {
15495
+ const _r6 = i0.ɵɵgetCurrentView();
15496
+ i0.ɵɵelementContainerStart(0);
15497
+ i0.ɵɵelementStart(1, "ccd-linked-cases-before-you-start", 3);
15498
+ i0.ɵɵlistener("linkedCasesStateEmitter", function WriteLinkedCasesFieldComponent_ng_container_2_Template_ccd_linked_cases_before_you_start_linkedCasesStateEmitter_1_listener($event) { i0.ɵɵrestoreView(_r6); const ctx_r5 = i0.ɵɵnextContext(); return ctx_r5.onLinkedCasesStateEmitted($event); });
15358
15499
  i0.ɵɵelementEnd();
15359
- } if (rf & 2) {
15360
- const ctx_r0 = i0.ɵɵnextContext();
15361
- i0.ɵɵadvance(3);
15362
- i0.ɵɵproperty("ngForOf", ctx_r0.errorMessages);
15500
+ i0.ɵɵelementContainerEnd();
15363
15501
  } }
15364
15502
  function WriteLinkedCasesFieldComponent_ng_container_3_Template(rf, ctx) { if (rf & 1) {
15365
- const _r11 = i0.ɵɵgetCurrentView();
15503
+ const _r8 = i0.ɵɵgetCurrentView();
15366
15504
  i0.ɵɵelementContainerStart(0);
15367
- i0.ɵɵelementStart(1, "ccd-linked-cases-before-you-start", 10);
15368
- i0.ɵɵlistener("linkedCasesStateEmitter", function WriteLinkedCasesFieldComponent_ng_container_3_Template_ccd_linked_cases_before_you_start_linkedCasesStateEmitter_1_listener($event) { i0.ɵɵrestoreView(_r11); const ctx_r10 = i0.ɵɵnextContext(); return ctx_r10.onLinkedCasesStateEmitted($event); });
15505
+ i0.ɵɵelementStart(1, "ccd-no-linked-cases", 3);
15506
+ i0.ɵɵlistener("linkedCasesStateEmitter", function WriteLinkedCasesFieldComponent_ng_container_3_Template_ccd_no_linked_cases_linkedCasesStateEmitter_1_listener($event) { i0.ɵɵrestoreView(_r8); const ctx_r7 = i0.ɵɵnextContext(); return ctx_r7.onLinkedCasesStateEmitted($event); });
15369
15507
  i0.ɵɵelementEnd();
15370
15508
  i0.ɵɵelementContainerEnd();
15371
15509
  } }
15372
15510
  function WriteLinkedCasesFieldComponent_ng_container_4_Template(rf, ctx) { if (rf & 1) {
15373
- const _r13 = i0.ɵɵgetCurrentView();
15511
+ const _r10 = i0.ɵɵgetCurrentView();
15374
15512
  i0.ɵɵelementContainerStart(0);
15375
- i0.ɵɵelementStart(1, "ccd-no-linked-cases", 10);
15376
- i0.ɵɵlistener("linkedCasesStateEmitter", function WriteLinkedCasesFieldComponent_ng_container_4_Template_ccd_no_linked_cases_linkedCasesStateEmitter_1_listener($event) { i0.ɵɵrestoreView(_r13); const ctx_r12 = i0.ɵɵnextContext(); return ctx_r12.onLinkedCasesStateEmitted($event); });
15513
+ i0.ɵɵelementStart(1, "ccd-link-cases", 3);
15514
+ i0.ɵɵlistener("linkedCasesStateEmitter", function WriteLinkedCasesFieldComponent_ng_container_4_Template_ccd_link_cases_linkedCasesStateEmitter_1_listener($event) { i0.ɵɵrestoreView(_r10); const ctx_r9 = i0.ɵɵnextContext(); return ctx_r9.onLinkedCasesStateEmitted($event); });
15377
15515
  i0.ɵɵelementEnd();
15378
15516
  i0.ɵɵelementContainerEnd();
15379
15517
  } }
15380
15518
  function WriteLinkedCasesFieldComponent_ng_container_5_Template(rf, ctx) { if (rf & 1) {
15381
- const _r15 = i0.ɵɵgetCurrentView();
15519
+ const _r12 = i0.ɵɵgetCurrentView();
15382
15520
  i0.ɵɵelementContainerStart(0);
15383
- i0.ɵɵelementStart(1, "ccd-link-cases", 10);
15384
- i0.ɵɵlistener("linkedCasesStateEmitter", function WriteLinkedCasesFieldComponent_ng_container_5_Template_ccd_link_cases_linkedCasesStateEmitter_1_listener($event) { i0.ɵɵrestoreView(_r15); const ctx_r14 = i0.ɵɵnextContext(); return ctx_r14.onLinkedCasesStateEmitted($event); });
15521
+ i0.ɵɵelementStart(1, "ccd-unlink-cases", 3);
15522
+ i0.ɵɵlistener("linkedCasesStateEmitter", function WriteLinkedCasesFieldComponent_ng_container_5_Template_ccd_unlink_cases_linkedCasesStateEmitter_1_listener($event) { i0.ɵɵrestoreView(_r12); const ctx_r11 = i0.ɵɵnextContext(); return ctx_r11.onLinkedCasesStateEmitted($event); });
15385
15523
  i0.ɵɵelementEnd();
15386
15524
  i0.ɵɵelementContainerEnd();
15387
15525
  } }
15388
15526
  function WriteLinkedCasesFieldComponent_ng_container_6_Template(rf, ctx) { if (rf & 1) {
15389
- const _r17 = i0.ɵɵgetCurrentView();
15390
- i0.ɵɵelementContainerStart(0);
15391
- i0.ɵɵelementStart(1, "ccd-unlink-cases", 10);
15392
- i0.ɵɵlistener("linkedCasesStateEmitter", function WriteLinkedCasesFieldComponent_ng_container_6_Template_ccd_unlink_cases_linkedCasesStateEmitter_1_listener($event) { i0.ɵɵrestoreView(_r17); const ctx_r16 = i0.ɵɵnextContext(); return ctx_r16.onLinkedCasesStateEmitted($event); });
15393
- i0.ɵɵelementEnd();
15394
- i0.ɵɵelementContainerEnd();
15395
- } }
15396
- function WriteLinkedCasesFieldComponent_ng_container_7_Template(rf, ctx) { if (rf & 1) {
15397
- const _r19 = i0.ɵɵgetCurrentView();
15527
+ const _r14 = i0.ɵɵgetCurrentView();
15398
15528
  i0.ɵɵelementContainerStart(0);
15399
- i0.ɵɵelementStart(1, "ccd-linked-cases-check-your-answers", 10);
15400
- i0.ɵɵlistener("linkedCasesStateEmitter", function WriteLinkedCasesFieldComponent_ng_container_7_Template_ccd_linked_cases_check_your_answers_linkedCasesStateEmitter_1_listener($event) { i0.ɵɵrestoreView(_r19); const ctx_r18 = i0.ɵɵnextContext(); return ctx_r18.onLinkedCasesStateEmitted($event); });
15529
+ i0.ɵɵelementStart(1, "ccd-linked-cases-check-your-answers", 3);
15530
+ i0.ɵɵlistener("linkedCasesStateEmitter", function WriteLinkedCasesFieldComponent_ng_container_6_Template_ccd_linked_cases_check_your_answers_linkedCasesStateEmitter_1_listener($event) { i0.ɵɵrestoreView(_r14); const ctx_r13 = i0.ɵɵnextContext(); return ctx_r13.onLinkedCasesStateEmitted($event); });
15401
15531
  i0.ɵɵelementEnd();
15402
15532
  i0.ɵɵelementContainerEnd();
15403
15533
  } }
@@ -15412,9 +15542,11 @@ class WriteLinkedCasesFieldComponent extends AbstractFieldWriteComponent {
15412
15542
  this.linkedCasesPages = LinkedCasesPages;
15413
15543
  this.linkedCasesEventTriggers = LinkedCasesEventTriggers;
15414
15544
  this.linkedCases = [];
15415
- this.errorMessages = [];
15416
15545
  }
15417
15546
  ngOnInit() {
15547
+ // This is required to enable Continue button validation
15548
+ // Continue button should be enabled only at check your answers page
15549
+ this.caseEditDataService.setLinkedCasesJourneyAtFinalStep(false);
15418
15550
  // Clear validation errors
15419
15551
  this.caseEditDataService.clearFormValidationErrors();
15420
15552
  // Get linked case reasons from ref data
@@ -15450,11 +15582,10 @@ class WriteLinkedCasesFieldComponent extends AbstractFieldWriteComponent {
15450
15582
  }
15451
15583
  }
15452
15584
  onLinkedCasesStateEmitted(linkedCasesState) {
15453
- this.errorMessages = [];
15585
+ // Clear validation errors
15454
15586
  this.caseEditDataService.clearFormValidationErrors();
15455
15587
  if (linkedCasesState.navigateToNextPage) {
15456
15588
  this.linkedCasesPage = this.getNextPage(linkedCasesState);
15457
- this.setContinueButtonValidationErrorMessage();
15458
15589
  this.proceedToNextPage();
15459
15590
  }
15460
15591
  else {
@@ -15466,7 +15597,7 @@ class WriteLinkedCasesFieldComponent extends AbstractFieldWriteComponent {
15466
15597
  }
15467
15598
  }
15468
15599
  getLinkedCaseReasons() {
15469
- const reasonCodeAPIurl = this.appConfig.getRDCommonDataApiUrl() + '/lov/categories/CaseLinkingReasonCode';
15600
+ const reasonCodeAPIurl = `${this.appConfig.getRDCommonDataApiUrl()}/lov/categories/CaseLinkingReasonCode`;
15470
15601
  this.commonDataService.getRefData(reasonCodeAPIurl).subscribe({
15471
15602
  next: reasons => {
15472
15603
  // Sort in ascending order
@@ -15477,27 +15608,19 @@ class WriteLinkedCasesFieldComponent extends AbstractFieldWriteComponent {
15477
15608
  }
15478
15609
  });
15479
15610
  }
15480
- setContinueButtonValidationErrorMessage() {
15481
- const errorMessage = this.linkedCasesService.isLinkedCasesEventTrigger
15482
- ? LinkedCasesErrorMessages.LinkCasesNavigationError
15483
- : LinkedCasesErrorMessages.UnlinkCasesNavigationError;
15484
- const buttonId = this.linkedCasesService.linkedCases.length === 0
15485
- ? 'back-button'
15486
- : 'next-button';
15487
- this.caseEditDataService.setCaseLinkError({
15488
- componentId: buttonId,
15489
- errorMessage
15490
- });
15491
- }
15492
15611
  proceedToNextPage() {
15493
15612
  if (this.isAtFinalPage()) {
15494
15613
  // Continue button event must be allowed in final page
15495
- this.caseEditDataService.clearCaseLinkError();
15614
+ this.caseEditDataService.setLinkedCasesJourneyAtFinalStep(true);
15496
15615
  // Trigger validation to clear the "notAtFinalPage" error if now at the final state
15497
15616
  this.formGroup.updateValueAndValidity();
15498
15617
  // update form value
15499
15618
  this.submitLinkedCases();
15500
15619
  }
15620
+ else {
15621
+ // Continue button event must not be allowed if not in final page
15622
+ this.caseEditDataService.setLinkedCasesJourneyAtFinalStep(false);
15623
+ }
15501
15624
  }
15502
15625
  submitLinkedCases() {
15503
15626
  if (!this.linkedCasesService.isLinkedCasesEventTrigger) {
@@ -15524,8 +15647,7 @@ class WriteLinkedCasesFieldComponent extends AbstractFieldWriteComponent {
15524
15647
  getLinkedCases() {
15525
15648
  this.casesService.getCaseViewV2(this.linkedCasesService.caseId).subscribe((caseView) => {
15526
15649
  const caseViewFiltered = caseView.tabs.filter(tab => {
15527
- const linkField = tab.fields.some(({ field_type }) => field_type && field_type.collection_field_type && field_type.collection_field_type.id === 'CaseLink');
15528
- return linkField;
15650
+ return tab.fields.some(({ field_type }) => field_type && field_type.collection_field_type && field_type.collection_field_type.id === 'CaseLink');
15529
15651
  });
15530
15652
  if (caseViewFiltered) {
15531
15653
  const caseLinkFieldValue = caseViewFiltered.map(filtered => { var _a; return ((_a = filtered.fields) === null || _a === void 0 ? void 0 : _a.length) > 0 && filtered.fields.filter(field => field.id === 'caseLinks')[0].value; });
@@ -15538,35 +15660,21 @@ class WriteLinkedCasesFieldComponent extends AbstractFieldWriteComponent {
15538
15660
  && !this.linkedCasesService.serverLinkedApiError)
15539
15661
  ? LinkedCasesPages.BEFORE_YOU_START
15540
15662
  : LinkedCasesPages.NO_LINKED_CASES;
15541
- // Initialise the error to be displayed when clicked on Continue button
15542
- this.setContinueButtonValidationErrorMessage();
15543
15663
  });
15544
15664
  }
15545
- navigateToErrorElement(elementId) {
15546
- if (elementId) {
15547
- const htmlElement = document.getElementById(elementId);
15548
- if (htmlElement) {
15549
- htmlElement.scrollIntoView({ behavior: 'smooth', block: 'center' });
15550
- htmlElement.focus();
15551
- }
15552
- }
15553
- }
15554
15665
  }
15555
15666
  WriteLinkedCasesFieldComponent.ɵfac = function WriteLinkedCasesFieldComponent_Factory(t) { return new (t || WriteLinkedCasesFieldComponent)(i0.ɵɵdirectiveInject(AbstractAppConfig), i0.ɵɵdirectiveInject(CommonDataService), i0.ɵɵdirectiveInject(CasesService), i0.ɵɵdirectiveInject(LinkedCasesService), i0.ɵɵdirectiveInject(CaseEditDataService)); };
15556
- WriteLinkedCasesFieldComponent.ɵcmp = i0.ɵɵdefineComponent({ type: WriteLinkedCasesFieldComponent, selectors: [["ccd-write-linked-cases-field"]], features: [i0.ɵɵInheritDefinitionFeature], decls: 8, vars: 8, consts: [["class", "govuk-error-summary", "aria-labelledby", "error-summary-title", "role", "alert", "tabindex", "-1", "data-module", "govuk-error-summary", 4, "ngIf"], [1, "form-group", "govuk-!-margin-bottom-2", 3, "formGroup"], [1, "govuk-form-group", 3, "ngSwitch"], [4, "ngSwitchCase"], ["aria-labelledby", "error-summary-title", "role", "alert", "tabindex", "-1", "data-module", "govuk-error-summary", 1, "govuk-error-summary"], ["id", "error-summary-title", 1, "govuk-error-summary__title"], ["class", "govuk-error-summary__body", 4, "ngFor", "ngForOf"], [1, "govuk-error-summary__body"], [1, "govuk-list", "govuk-error-summary__list"], [1, "validation-error", 3, "click"], [3, "linkedCasesStateEmitter"]], template: function WriteLinkedCasesFieldComponent_Template(rf, ctx) { if (rf & 1) {
15557
- i0.ɵɵtemplate(0, WriteLinkedCasesFieldComponent_div_0_Template, 4, 1, "div", 0);
15667
+ WriteLinkedCasesFieldComponent.ɵcmp = i0.ɵɵdefineComponent({ type: WriteLinkedCasesFieldComponent, selectors: [["ccd-write-linked-cases-field"]], features: [i0.ɵɵInheritDefinitionFeature], decls: 7, vars: 7, consts: [[1, "form-group", "govuk-!-margin-bottom-2", 3, "formGroup"], [1, "govuk-form-group", 3, "ngSwitch"], [4, "ngSwitchCase"], [3, "linkedCasesStateEmitter"]], template: function WriteLinkedCasesFieldComponent_Template(rf, ctx) { if (rf & 1) {
15668
+ i0.ɵɵelementStart(0, "div", 0);
15558
15669
  i0.ɵɵelementStart(1, "div", 1);
15559
- i0.ɵɵelementStart(2, "div", 2);
15560
- i0.ɵɵtemplate(3, WriteLinkedCasesFieldComponent_ng_container_3_Template, 2, 0, "ng-container", 3);
15561
- i0.ɵɵtemplate(4, WriteLinkedCasesFieldComponent_ng_container_4_Template, 2, 0, "ng-container", 3);
15562
- i0.ɵɵtemplate(5, WriteLinkedCasesFieldComponent_ng_container_5_Template, 2, 0, "ng-container", 3);
15563
- i0.ɵɵtemplate(6, WriteLinkedCasesFieldComponent_ng_container_6_Template, 2, 0, "ng-container", 3);
15564
- i0.ɵɵtemplate(7, WriteLinkedCasesFieldComponent_ng_container_7_Template, 2, 0, "ng-container", 3);
15670
+ i0.ɵɵtemplate(2, WriteLinkedCasesFieldComponent_ng_container_2_Template, 2, 0, "ng-container", 2);
15671
+ i0.ɵɵtemplate(3, WriteLinkedCasesFieldComponent_ng_container_3_Template, 2, 0, "ng-container", 2);
15672
+ i0.ɵɵtemplate(4, WriteLinkedCasesFieldComponent_ng_container_4_Template, 2, 0, "ng-container", 2);
15673
+ i0.ɵɵtemplate(5, WriteLinkedCasesFieldComponent_ng_container_5_Template, 2, 0, "ng-container", 2);
15674
+ i0.ɵɵtemplate(6, WriteLinkedCasesFieldComponent_ng_container_6_Template, 2, 0, "ng-container", 2);
15565
15675
  i0.ɵɵelementEnd();
15566
15676
  i0.ɵɵelementEnd();
15567
15677
  } if (rf & 2) {
15568
- i0.ɵɵproperty("ngIf", ctx.errorMessages.length > 0);
15569
- i0.ɵɵadvance(1);
15570
15678
  i0.ɵɵproperty("formGroup", ctx.formGroup);
15571
15679
  i0.ɵɵadvance(1);
15572
15680
  i0.ɵɵproperty("ngSwitch", ctx.linkedCasesPage);
@@ -16830,7 +16938,7 @@ class WriteTextAreaFieldComponent extends AbstractFieldWriteComponent {
16830
16938
  autoGrow(event) {
16831
16939
  if (this.browserService.isIEOrEdge()) {
16832
16940
  event.target.style.height = 'auto';
16833
- event.target.style.height = event.target.scrollHeight + 'px';
16941
+ event.target.style.height = `${event.target.scrollHeight}px`;
16834
16942
  event.target.scrollTop = event.target.scrollHeight;
16835
16943
  }
16836
16944
  }
@@ -17016,6 +17124,7 @@ class YesNoService {
17016
17124
  return YesNoService.EMPTY;
17017
17125
  }
17018
17126
  isYes(value) {
17127
+ // tslint:disable-next-line:switch-default
17019
17128
  switch (typeof (value)) {
17020
17129
  case 'boolean':
17021
17130
  return value;
@@ -17025,6 +17134,7 @@ class YesNoService {
17025
17134
  return false;
17026
17135
  }
17027
17136
  isNo(value) {
17137
+ // tslint:disable-next-line:switch-default
17028
17138
  switch (typeof (value)) {
17029
17139
  case 'boolean':
17030
17140
  return !value;
@@ -17176,7 +17286,7 @@ WriteYesNoFieldComponent.ɵcmp = i0.ɵɵdefineComponent({ type: WriteYesNoFieldC
17176
17286
  class PaletteService {
17177
17287
  constructor() {
17178
17288
  this.componentLauncherRegistry = {
17179
- [DisplayContextCustomParameter.CaseFileView]: [CaseFileViewFieldComponent, CaseFileViewFieldReadComponent],
17289
+ [DisplayContextCustomParameter.CaseFileView]: [CaseFileViewFieldComponent, CaseFileViewFieldComponent],
17180
17290
  [DisplayContextCustomParameter.LinkedCases]: [WriteLinkedCasesFieldComponent, ReadLinkedCasesFieldComponent]
17181
17291
  };
17182
17292
  }
@@ -17206,6 +17316,8 @@ class PaletteService {
17206
17316
  return write ? WriteFixedListFieldComponent : ReadFixedListFieldComponent;
17207
17317
  case 'DynamicRadioList':
17208
17318
  return write ? WriteDynamicRadioListFieldComponent : ReadDynamicRadioListFieldComponent;
17319
+ case 'DynamicMultiSelectList':
17320
+ return write ? WriteDynamicMultiSelectListFieldComponent : ReadDynamicMultiSelectListFieldComponent;
17209
17321
  case 'FixedRadioList':
17210
17322
  return write ? WriteFixedRadioListFieldComponent : ReadFixedRadioListFieldComponent;
17211
17323
  case 'Complex':
@@ -17272,7 +17384,7 @@ PaletteService.ɵprov = i0.ɵɵdefineInjectable({ token: PaletteService, factory
17272
17384
  }], null, null); })();
17273
17385
 
17274
17386
  const _c0$v = ["fieldContainer"];
17275
- const FIX_CASEFIELD_FOR$1 = ['FixedList', 'DynamicList'];
17387
+ const FIX_CASEFIELD_FOR$1 = ['FixedList', 'DynamicList', 'DynamicMultiSelectList'];
17276
17388
  class FieldReadComponent extends AbstractFieldReadComponent {
17277
17389
  constructor(resolver, paletteService) {
17278
17390
  super();
@@ -17350,7 +17462,7 @@ FieldReadComponent.ɵcmp = i0.ɵɵdefineComponent({ type: FieldReadComponent, se
17350
17462
  }] }); })();
17351
17463
 
17352
17464
  const _c0$u = ["fieldContainer"];
17353
- const FIX_CASEFIELD_FOR = ['FixedList', 'DynamicList'];
17465
+ const FIX_CASEFIELD_FOR = ['FixedList', 'DynamicList', 'DynamicMultiSelectList'];
17354
17466
  class FieldWriteComponent extends AbstractFieldWriteComponent {
17355
17467
  constructor(resolver, paletteService) {
17356
17468
  super();
@@ -17647,7 +17759,7 @@ CaseFileViewFolderSelectorComponent.ɵcmp = i0.ɵɵdefineComponent({ type: CaseF
17647
17759
  i0.ɵɵtextInterpolate1("Where do you want to move \"", ctx.data.document.document_filename, "\" file?");
17648
17760
  i0.ɵɵadvance(2);
17649
17761
  i0.ɵɵproperty("ngForOf", ctx.currentCategories);
17650
- } }, directives: [i1.NgForOf, i1.NgTemplateOutlet], styles: [":host{position:relative;display:block}.folders{margin-bottom:20px}.folder{display:none;border-top:1px solid #ccc;margin:0 0 -1px}.folder,.folder:last-child{border-bottom:1px solid #ccc}.folders>.folder,input:checked~.folder{display:block}.iconImg{position:relative;display:inline-block;height:28px}.folder>.folder{margin-left:20px}.folder label:before{top:3px}.folder label:after{top:13px}p{font-weight:700}button{margin-right:20px}.close{float:right;width:30px;height:30px;background:url(/assets/img/x.PNG) no-repeat 50%}.cancel,.close{cursor:pointer}.cdk-overlay-pane{overflow:auto}.cdk-overlay-pane::-webkit-scrollbar{width:7px}.cdk-overlay-pane::-webkit-scrollbar-thumb{border:4px solid transparent;background-clip:padding-box;border-radius:9999px;background-color:#aaa}.cdk-overlay-pane::-webkit-scrollbar-button{display:none}.cdk-overlay-pane::-webkit-scrollbar-track-piece{background:#eee}.cdk-overlay-pane::-webkit-scrollbar-thumb{background:#ccc}"], encapsulation: 2 });
17762
+ } }, directives: [i1.NgForOf, i1.NgTemplateOutlet], styles: [":host{position:relative;display:block}.folders{margin-bottom:20px}.folder{display:none;border-top:1px solid #ccc;margin:0 0 -1px}.folder:last-child{border-bottom:1px solid #ccc}.folders>.folder,input:checked~.folder{display:block}.iconImg{position:relative;display:inline-block;height:28px}.folder>.folder{margin-left:20px}.folder label:before{top:3px}.folder label:after{top:13px}p{font-weight:700}button{margin-right:20px}.close{float:right;width:30px;height:30px;background:url(/assets/img/x.PNG) no-repeat 50%}.cancel,.close{cursor:pointer}.cdk-overlay-pane{overflow:auto}.cdk-overlay-pane::-webkit-scrollbar{width:7px}.cdk-overlay-pane::-webkit-scrollbar-thumb{border:4px solid transparent;background-clip:padding-box;border-radius:9999px;background-color:#aaa}.cdk-overlay-pane::-webkit-scrollbar-button{display:none}.cdk-overlay-pane::-webkit-scrollbar-track-piece{background:#eee}.cdk-overlay-pane::-webkit-scrollbar-thumb{background:#ccc}"], encapsulation: 2 });
17651
17763
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CaseFileViewFolderSelectorComponent, [{
17652
17764
  type: Component,
17653
17765
  args: [{
@@ -17844,6 +17956,7 @@ CaseFileViewFolderSortComponent.ɵcmp = i0.ɵɵdefineComponent({ type: CaseFileV
17844
17956
  class CaseFileViewCategory {
17845
17957
  }
17846
17958
 
17959
+ // tslint:disable:variable-name
17847
17960
  class CaseFileViewDocument {
17848
17961
  }
17849
17962
 
@@ -19054,7 +19167,7 @@ class SelectFlagLocationComponent {
19054
19167
  // is expected not to have a party name)
19055
19168
  if (this.flagsData) {
19056
19169
  this.filteredFlagsData =
19057
- this.flagsData.filter(f => f.flags.partyName != null || f.pathToFlagsFormGroup === this.caseLevelCaseFlagsFieldId);
19170
+ this.flagsData.filter(f => f.flags.partyName !== null || f.pathToFlagsFormGroup === this.caseLevelCaseFlagsFieldId);
19058
19171
  }
19059
19172
  // Add a FormControl for the selected flag location if there is at least one flags instance remaining after filtering
19060
19173
  if (this.filteredFlagsData && this.filteredFlagsData.length > 0) {
@@ -20222,18 +20335,19 @@ class ReadComplexFieldCollectionTableComponent extends AbstractFieldReadComponen
20222
20335
  field.value = { CaseReference: value };
20223
20336
  return field;
20224
20337
  }
20225
- toCaseField(id, label, field_type, value) {
20338
+ toCaseField(id, label, fieldType, value) {
20226
20339
  return plainToClassFromExist(new CaseField(), {
20227
20340
  id,
20228
20341
  label,
20229
20342
  display_context: 'READONLY',
20230
20343
  value,
20231
- field_type
20344
+ field_type: fieldType
20232
20345
  });
20233
20346
  }
20234
20347
  sortRowsByColumns(column) {
20235
20348
  const shouldSortInAscendingOrder = this.columnsHorizontalLabel[column].sortOrder === SortOrder.UNSORTED
20236
20349
  || this.columnsHorizontalLabel[column].sortOrder === SortOrder.DESCENDING;
20350
+ // tslint:disable-next-line:switch-default
20237
20351
  switch (this.columnsHorizontalLabel[column].type.type) {
20238
20352
  case 'Number':
20239
20353
  case 'MoneyGBP': {
@@ -21210,6 +21324,7 @@ MarkdownComponent.ɵcmp = i0.ɵɵdefineComponent({ type: MarkdownComponent, sele
21210
21324
  class FeeValue {
21211
21325
  }
21212
21326
 
21327
+ // tslint:disable:variable-name
21213
21328
  class Fee {
21214
21329
  }
21215
21330
 
@@ -21814,7 +21929,7 @@ CcdTabFieldsPipe.ɵpipe = i0.ɵɵdefinePipe({ name: "ccdTabFields", type: CcdTab
21814
21929
 
21815
21930
  class CcdPageFieldsPipe {
21816
21931
  transform(page, dataFormGroup) {
21817
- const complex_fields = Object.keys(dataFormGroup.controls['data'].controls).map(key => {
21932
+ const complexFields = Object.keys(dataFormGroup.controls['data'].controls).map(key => {
21818
21933
  const control = dataFormGroup.controls['data'].get(key);
21819
21934
  return control['caseField'];
21820
21935
  }).filter(field => {
@@ -21833,7 +21948,7 @@ class CcdPageFieldsPipe {
21833
21948
  field_type: {
21834
21949
  id: page.id,
21835
21950
  type: 'Complex',
21836
- complex_fields
21951
+ complex_fields: complexFields
21837
21952
  }
21838
21953
  });
21839
21954
  }
@@ -21992,11 +22107,11 @@ class CollectionCreateCheckerService {
21992
22107
  }
21993
22108
  return childrenCaseFields;
21994
22109
  }
21995
- isComplex(case_field) {
21996
- return case_field.field_type.type === 'Complex';
22110
+ isComplex(caseField) {
22111
+ return caseField.field_type.type === 'Complex';
21997
22112
  }
21998
- isCollection(case_field) {
21999
- return case_field.field_type.type === 'Collection';
22113
+ isCollection(caseField) {
22114
+ return caseField.field_type.type === 'Collection';
22000
22115
  }
22001
22116
  hasCreateAccess(caseField, role) {
22002
22117
  return !!caseField.acls.find(acl => acl.role === role && acl.create === true);
@@ -22084,6 +22199,8 @@ const PALETTE_COMPONENTS = [
22084
22199
  WriteDocumentFieldComponent,
22085
22200
  WriteDynamicListFieldComponent,
22086
22201
  WriteDynamicRadioListFieldComponent,
22202
+ WriteDynamicMultiSelectListFieldComponent,
22203
+ ReadDynamicMultiSelectListFieldComponent,
22087
22204
  WriteTextFieldComponent,
22088
22205
  WriteDateContainerFieldComponent,
22089
22206
  WriteTextAreaFieldComponent,
@@ -22107,12 +22224,18 @@ const PALETTE_COMPONENTS = [
22107
22224
  WriteCollectionFieldComponent,
22108
22225
  // ComponentLauncher web components
22109
22226
  CaseFileViewFieldComponent,
22110
- CaseFileViewFieldReadComponent,
22111
22227
  CaseFileViewFolderComponent,
22112
22228
  CaseFileViewFolderSortComponent,
22113
22229
  CaseFileViewOverlayMenuComponent,
22114
22230
  CaseFileViewFolderDocumentActionsComponent,
22115
22231
  CaseFileViewFolderSelectorComponent,
22232
+ // component for dynamic list
22233
+ WriteDynamicMultiSelectListFieldComponent,
22234
+ WriteDynamicRadioListFieldComponent,
22235
+ WriteDynamicListFieldComponent,
22236
+ ReadDynamicMultiSelectListFieldComponent,
22237
+ ReadDynamicListFieldComponent,
22238
+ ReadDynamicRadioListFieldComponent,
22116
22239
  LinkedCasesToTableComponent,
22117
22240
  LinkedCasesFromTableComponent,
22118
22241
  BeforeYouStartComponent,
@@ -22135,7 +22258,6 @@ PaletteModule.ɵinj = i0.ɵɵdefineInjector({ providers: [
22135
22258
  FileUploadStateService,
22136
22259
  FileUploadProgressGuard,
22137
22260
  WindowService,
22138
- LinkedCasesService,
22139
22261
  CommonDataService,
22140
22262
  JurisdictionService,
22141
22263
  { provide: MAT_DATE_LOCALE, useValue: 'en-GB' }
@@ -22239,6 +22361,8 @@ PaletteModule.ɵinj = i0.ɵɵdefineInjector({ providers: [
22239
22361
  WriteDocumentFieldComponent,
22240
22362
  WriteDynamicListFieldComponent,
22241
22363
  WriteDynamicRadioListFieldComponent,
22364
+ WriteDynamicMultiSelectListFieldComponent,
22365
+ ReadDynamicMultiSelectListFieldComponent,
22242
22366
  WriteTextFieldComponent,
22243
22367
  WriteDateContainerFieldComponent,
22244
22368
  WriteTextAreaFieldComponent,
@@ -22262,12 +22386,18 @@ PaletteModule.ɵinj = i0.ɵɵdefineInjector({ providers: [
22262
22386
  WriteCollectionFieldComponent,
22263
22387
  // ComponentLauncher web components
22264
22388
  CaseFileViewFieldComponent,
22265
- CaseFileViewFieldReadComponent,
22266
22389
  CaseFileViewFolderComponent,
22267
22390
  CaseFileViewFolderSortComponent,
22268
22391
  CaseFileViewOverlayMenuComponent,
22269
22392
  CaseFileViewFolderDocumentActionsComponent,
22270
22393
  CaseFileViewFolderSelectorComponent,
22394
+ // component for dynamic list
22395
+ WriteDynamicMultiSelectListFieldComponent,
22396
+ WriteDynamicRadioListFieldComponent,
22397
+ WriteDynamicListFieldComponent,
22398
+ ReadDynamicMultiSelectListFieldComponent,
22399
+ ReadDynamicListFieldComponent,
22400
+ ReadDynamicRadioListFieldComponent,
22271
22401
  LinkedCasesToTableComponent,
22272
22402
  LinkedCasesFromTableComponent,
22273
22403
  BeforeYouStartComponent,
@@ -22357,6 +22487,8 @@ PaletteModule.ɵinj = i0.ɵɵdefineInjector({ providers: [
22357
22487
  WriteDocumentFieldComponent,
22358
22488
  WriteDynamicListFieldComponent,
22359
22489
  WriteDynamicRadioListFieldComponent,
22490
+ WriteDynamicMultiSelectListFieldComponent,
22491
+ ReadDynamicMultiSelectListFieldComponent,
22360
22492
  WriteTextFieldComponent,
22361
22493
  WriteDateContainerFieldComponent,
22362
22494
  WriteTextAreaFieldComponent,
@@ -22380,12 +22512,18 @@ PaletteModule.ɵinj = i0.ɵɵdefineInjector({ providers: [
22380
22512
  WriteCollectionFieldComponent,
22381
22513
  // ComponentLauncher web components
22382
22514
  CaseFileViewFieldComponent,
22383
- CaseFileViewFieldReadComponent,
22384
22515
  CaseFileViewFolderComponent,
22385
22516
  CaseFileViewFolderSortComponent,
22386
22517
  CaseFileViewOverlayMenuComponent,
22387
22518
  CaseFileViewFolderDocumentActionsComponent,
22388
22519
  CaseFileViewFolderSelectorComponent,
22520
+ // component for dynamic list
22521
+ WriteDynamicMultiSelectListFieldComponent,
22522
+ WriteDynamicRadioListFieldComponent,
22523
+ WriteDynamicListFieldComponent,
22524
+ ReadDynamicMultiSelectListFieldComponent,
22525
+ ReadDynamicListFieldComponent,
22526
+ ReadDynamicRadioListFieldComponent,
22389
22527
  LinkedCasesToTableComponent,
22390
22528
  LinkedCasesFromTableComponent,
22391
22529
  BeforeYouStartComponent,
@@ -22462,7 +22600,6 @@ PaletteModule.ɵinj = i0.ɵɵdefineInjector({ providers: [
22462
22600
  FileUploadStateService,
22463
22601
  FileUploadProgressGuard,
22464
22602
  WindowService,
22465
- LinkedCasesService,
22466
22603
  CommonDataService,
22467
22604
  JurisdictionService,
22468
22605
  { provide: MAT_DATE_LOCALE, useValue: 'en-GB' }
@@ -22498,7 +22635,7 @@ i0.ɵɵsetComponentScope(WriteCaseFlagFieldComponent, [i1.NgIf, i1.NgForOf, i2.N
22498
22635
  AddCommentsComponent,
22499
22636
  ManageCaseFlagsComponent,
22500
22637
  UpdateFlagComponent], []);
22501
- i0.ɵɵsetComponentScope(WriteLinkedCasesFieldComponent, [i1.NgIf, i1.NgForOf, i2.NgControlStatusGroup, i2.FormGroupDirective, i1.NgSwitch, i1.NgSwitchCase, BeforeYouStartComponent,
22638
+ i0.ɵɵsetComponentScope(WriteLinkedCasesFieldComponent, [i2.NgControlStatusGroup, i2.FormGroupDirective, i1.NgSwitch, i1.NgSwitchCase, BeforeYouStartComponent,
22502
22639
  NoLinkedCasesComponent,
22503
22640
  LinkCasesComponent,
22504
22641
  UnLinkCasesComponent,
@@ -22510,8 +22647,7 @@ i0.ɵɵsetComponentScope(WriteDateContainerFieldComponent, [i1.NgIf, DatetimePic
22510
22647
  i0.ɵɵsetComponentScope(WriteCollectionFieldComponent, [i1.NgIf, i1.NgForOf, FieldWriteComponent, i2.NgControlStatusGroup, i2.FormGroupDirective], [FieldLabelPipe, FirstErrorPipe]);
22511
22648
  i0.ɵɵsetComponentScope(
22512
22649
  // ComponentLauncher web components
22513
- CaseFileViewFieldComponent, [i1.NgIf, CaseFileViewFolderComponent, i11.ɵcs], []);
22514
- i0.ɵɵsetComponentScope(CaseFileViewFieldReadComponent, [i1.NgIf, CaseFileViewFolderComponent, i11.ɵcs], []);
22650
+ CaseFileViewFieldComponent, [i1.NgIf, CaseFileViewFolderComponent, i11.MediaViewerComponent], []);
22515
22651
  i0.ɵɵsetComponentScope(LinkedCasesToTableComponent, [i1.NgIf, i1.NgForOf], [CaseReferencePipe, LinkCasesReasonValuePipe]);
22516
22652
  i0.ɵɵsetComponentScope(LinkedCasesFromTableComponent, [i1.NgIf, i1.NgForOf], [CaseReferencePipe, LinkCasesFromReasonValuePipe]);
22517
22653
  i0.ɵɵsetComponentScope(LinkCasesComponent, [i1.NgIf, i2.NgControlStatusGroup, i2.FormGroupDirective, i1.NgClass, i2.DefaultValueAccessor, i2.NgControlStatus, i2.FormControlName, i2.FormArrayName, i1.NgForOf, i2.FormGroupName, i2.CheckboxControlValueAccessor], [CaseReferencePipe, LinkCasesReasonValuePipe]);
@@ -23087,7 +23223,7 @@ class CaseEditSubmitComponent {
23087
23223
  if (caseField.field_type.type === 'Complex') {
23088
23224
  // Note: Deliberate use of equality (==) and non-equality (!=) operators for null checks throughout, to
23089
23225
  // handle both null and undefined values
23090
- if (caseField.value != null) {
23226
+ if (caseField.value !== null) {
23091
23227
  // Call this function recursively to replace the Complex field's sub-fields as necessary, passing the
23092
23228
  // CaseField itself (the sub-fields do not contain any values, so these need to be obtained from the
23093
23229
  // parent)
@@ -23149,8 +23285,8 @@ class CaseEditSubmitComponent {
23149
23285
  this.caseEdit.navigateToPage(pageId);
23150
23286
  }
23151
23287
  callbackErrorsNotify(errorContext) {
23152
- this.ignoreWarning = errorContext.ignore_warning;
23153
- this.triggerText = errorContext.trigger_text;
23288
+ this.ignoreWarning = errorContext.ignoreWarning;
23289
+ this.triggerText = errorContext.triggerText;
23154
23290
  }
23155
23291
  summaryCaseField(field) {
23156
23292
  if (null === this.editForm.get('data').get(field.id)) {
@@ -23703,6 +23839,7 @@ class CaseEventCompletionComponent {
23703
23839
  { provide: COMPONENT_PORTAL_INJECTION_TOKEN, useValue: this }
23704
23840
  ]
23705
23841
  });
23842
+ // tslint:disable-next-line:switch-default
23706
23843
  switch (portalType) {
23707
23844
  case EventCompletionPortalTypes.TaskCancelled:
23708
23845
  this.selectedComponentPortal = new ComponentPortal(CaseEventCompletionTaskCancelledComponent, null, injector);
@@ -24173,27 +24310,27 @@ class PaginationComponent {
24173
24310
  this.screenReaderCurrentLabel = `You're on page`;
24174
24311
  this.pageChange = new EventEmitter();
24175
24312
  this.pageBoundsCorrection = new EventEmitter();
24176
- this._directionLinks = true;
24177
- this._autoHide = false;
24178
- this._responsive = false;
24313
+ this.pDirectionLinks = true;
24314
+ this.pAutoHide = false;
24315
+ this.pResponsive = false;
24179
24316
  }
24180
24317
  get directionLinks() {
24181
- return this._directionLinks;
24318
+ return this.pDirectionLinks;
24182
24319
  }
24183
24320
  set directionLinks(value) {
24184
- this._directionLinks = coerceToBoolean(value);
24321
+ this.pDirectionLinks = coerceToBoolean(value);
24185
24322
  }
24186
24323
  get autoHide() {
24187
- return this._autoHide;
24324
+ return this.pAutoHide;
24188
24325
  }
24189
24326
  set autoHide(value) {
24190
- this._autoHide = coerceToBoolean(value);
24327
+ this.pAutoHide = coerceToBoolean(value);
24191
24328
  }
24192
24329
  get responsive() {
24193
- return this._responsive;
24330
+ return this.pResponsive;
24194
24331
  }
24195
24332
  set responsive(value) {
24196
- this._responsive = coerceToBoolean(value);
24333
+ this.pResponsive = coerceToBoolean(value);
24197
24334
  }
24198
24335
  }
24199
24336
  PaginationComponent.ɵfac = function PaginationComponent_Factory(t) { return new (t || PaginationComponent)(); };
@@ -24854,7 +24991,7 @@ class WorkbasketFiltersComponent {
24854
24991
  const formValue = this.windowService.getLocalStorage(FORM_GROUP_VAL_LOC_STORAGE);
24855
24992
  workbasketInputs.forEach(item => {
24856
24993
  if (item.field.elementPath) {
24857
- item.field.id = item.field.id + '.' + item.field.elementPath;
24994
+ item.field.id = `${item.field.id}.${item.field.elementPath}`;
24858
24995
  }
24859
24996
  item.field.label = item.label;
24860
24997
  if (formValue) {
@@ -24906,7 +25043,7 @@ class WorkbasketFiltersComponent {
24906
25043
  const value = formGroupLS[key];
24907
25044
  // Clear the filter form group control values if it has a value in local storage
24908
25045
  // The regionList form group control value should be ignored as it always contain the latest value
24909
- if (key !== REGION_LIST_AND_FRC_FILTER && value != null) {
25046
+ if (key !== REGION_LIST_AND_FRC_FILTER && value !== null) {
24910
25047
  this.formGroup.get(key).setValue(null);
24911
25048
  }
24912
25049
  }
@@ -25925,7 +26062,7 @@ class CaseEventTriggerComponent {
25925
26062
  this.eventTrigger = this.route.snapshot.data.eventTrigger;
25926
26063
  if (this.activityPollingService.isEnabled) {
25927
26064
  this.ngZone.runOutsideAngular(() => {
25928
- this.activitySubscription = this.postEditActivity().subscribe((_resolved) => {
26065
+ this.activitySubscription = this.postEditActivity().subscribe(() => {
25929
26066
  // console.log('Posted EDIT activity and result is: ' + JSON.stringify(_resolved));
25930
26067
  });
25931
26068
  });
@@ -26771,8 +26908,8 @@ class CaseFullAccessViewComponent {
26771
26908
  return this.sortedTabs.length > 0 || this.prependedTabs.length > 0 || this.appendedTabs.length > 0;
26772
26909
  }
26773
26910
  callbackErrorsNotify(callbackErrorsContext) {
26774
- this.ignoreWarning = callbackErrorsContext.ignore_warning;
26775
- this.triggerText = callbackErrorsContext.trigger_text;
26911
+ this.ignoreWarning = callbackErrorsContext.ignoreWarning;
26912
+ this.triggerText = callbackErrorsContext.triggerText;
26776
26913
  }
26777
26914
  isDraft() {
26778
26915
  return Draft.isDraft(this.caseDetails.case_id);
@@ -27039,7 +27176,7 @@ class PrintUrlPipe {
27039
27176
  * or the empty string
27040
27177
  */
27041
27178
  transform(remoteUrl) {
27042
- if (remoteUrl && remoteUrl.length > 0) {
27179
+ if ((remoteUrl === null || remoteUrl === void 0 ? void 0 : remoteUrl.length) > 0) {
27043
27180
  let printServiceUrlPathname;
27044
27181
  /**
27045
27182
  * Check navigator.userAgent to see if the browser is IE or not. Check for either the browser name, "MSIE", or
@@ -27055,7 +27192,7 @@ class PrintUrlPipe {
27055
27192
  printServiceUrlPathname = urlParser.pathname;
27056
27193
  if (printServiceUrlPathname[0] !== '/') {
27057
27194
  // Fix for IE11; it returns the pathname without leading slash
27058
- printServiceUrlPathname = '/' + printServiceUrlPathname;
27195
+ printServiceUrlPathname = `/${printServiceUrlPathname}`;
27059
27196
  }
27060
27197
  }
27061
27198
  else {
@@ -27232,10 +27369,10 @@ class CaseViewerComponent {
27232
27369
  }
27233
27370
  setUserAccessType(caseDetails) {
27234
27371
  if (caseDetails && Array.isArray(caseDetails.metadataFields)) {
27235
- const access_process = caseDetails.metadataFields.find(metadataField => metadataField.id === CaseViewerComponent.METADATA_FIELD_ACCESS_PROCEES_ID);
27236
- const access_granted = caseDetails.metadataFields.find(metadataField => metadataField.id === CaseViewerComponent.METADATA_FIELD_ACCESS_GRANTED_ID);
27237
- this.accessGranted = access_granted ? access_granted.value !== CaseViewerComponent.BASIC_USER_ACCESS_TYPES : false;
27238
- this.userAccessType = access_process ? access_process.value : null;
27372
+ const accessProcess = caseDetails.metadataFields.find(metadataField => metadataField.id === CaseViewerComponent.METADATA_FIELD_ACCESS_PROCEES_ID);
27373
+ const accessGranted = caseDetails.metadataFields.find(metadataField => metadataField.id === CaseViewerComponent.METADATA_FIELD_ACCESS_GRANTED_ID);
27374
+ this.accessGranted = accessGranted ? accessGranted.value !== CaseViewerComponent.BASIC_USER_ACCESS_TYPES : false;
27375
+ this.userAccessType = accessProcess ? accessProcess.value : null;
27239
27376
  }
27240
27377
  }
27241
27378
  isDataLoaded() {
@@ -28400,11 +28537,11 @@ class CaseChallengedAccessRequestComponent {
28400
28537
  };
28401
28538
  this.$roleAssignmentResponseSubscription = this.casesService.createChallengedAccessRequest(caseId, challengedAccessRequest)
28402
28539
  .pipe(switchMap(() => this.caseNotifier.fetchAndRefresh(caseId)))
28403
- .subscribe(_response => {
28540
+ .subscribe(() => {
28404
28541
  // Would have been nice to pass the caseId within state.data, but this isn't part of NavigationExtras until
28405
28542
  // Angular 7.2!
28406
28543
  this.router.navigate(['success'], { relativeTo: this.route });
28407
- }, _error => {
28544
+ }, () => {
28408
28545
  // Navigate to error page
28409
28546
  });
28410
28547
  }
@@ -28418,7 +28555,7 @@ class CaseChallengedAccessRequestComponent {
28418
28555
  }
28419
28556
  }
28420
28557
  inputEmpty(input) {
28421
- return input.value == null || input.value.trim().length === 0;
28558
+ return input.value === null || input.value.trim().length === 0;
28422
28559
  }
28423
28560
  }
28424
28561
  CaseChallengedAccessRequestComponent.CANCEL_LINK_DESTINATION = '/work/my-work/list';
@@ -29004,11 +29141,11 @@ class CaseSpecificAccessRequestComponent {
29004
29141
  };
29005
29142
  this.$roleAssignmentResponseSubscription = this.casesService.createSpecificAccessRequest(caseId, specificAccessRequest)
29006
29143
  .pipe(switchMap(() => this.caseNotifier.fetchAndRefresh(caseId)))
29007
- .subscribe(_response => {
29144
+ .subscribe(() => {
29008
29145
  // Would have been nice to pass the caseId within state.data, but this isn't part of NavigationExtras until
29009
29146
  // Angular 7.2
29010
29147
  this.router.navigate(['success'], { relativeTo: this.route });
29011
- }, _error => {
29148
+ }, () => {
29012
29149
  // Navigate to error page
29013
29150
  });
29014
29151
  }
@@ -29023,7 +29160,7 @@ class CaseSpecificAccessRequestComponent {
29023
29160
  }
29024
29161
  }
29025
29162
  inputEmpty(input) {
29026
- return input.value == null || input.value.trim().length === 0;
29163
+ return input.value === null || input.value.trim().length === 0;
29027
29164
  }
29028
29165
  }
29029
29166
  CaseSpecificAccessRequestComponent.CANCEL_LINK_DESTINATION = '/work/my-work/list';
@@ -29865,7 +30002,7 @@ class SearchFiltersComponent {
29865
30002
  }
29866
30003
  searchInputs.forEach(item => {
29867
30004
  if (item.field.elementPath) {
29868
- item.field.id = item.field.id + '.' + item.field.elementPath;
30005
+ item.field.id = `${item.field.id}.${item.field.elementPath}`;
29869
30006
  }
29870
30007
  item.field.label = item.label;
29871
30008
  if (formValueObject) {
@@ -30119,7 +30256,7 @@ function SearchResultComponent_table_0_div_4_Template(rf, ctx) { if (rf & 1) {
30119
30256
  } if (rf & 2) {
30120
30257
  const ctx_r3 = i0.ɵɵnextContext(2);
30121
30258
  i0.ɵɵadvance(6);
30122
- i0.ɵɵtextInterpolate1(" The total size of the result set is ", i0.ɵɵpipeBind1(7, 1, ctx_r3.paginationMetadata.total_results_count), ". Only the first 10,000 records are available for display. ");
30259
+ i0.ɵɵtextInterpolate1(" The total size of the result set is ", i0.ɵɵpipeBind1(7, 1, ctx_r3.paginationMetadata.totalResultsCount), ". Only the first 10,000 records are available for display. ");
30123
30260
  } }
30124
30261
  function SearchResultComponent_table_0_div_5_Template(rf, ctx) { if (rf & 1) {
30125
30262
  i0.ɵɵelementStart(0, "div", 15);
@@ -30577,7 +30714,7 @@ class SearchResultComponent {
30577
30714
  }
30578
30715
  }
30579
30716
  get resultTotal() {
30580
- const total = this.paginationMetadata.total_results_count;
30717
+ const total = this.paginationMetadata.totalResultsCount;
30581
30718
  const maximumResultReached = total >= this.PAGINATION_MAX_ITEM_RESULT;
30582
30719
  this.paginationLimitEnforced = maximumResultReached;
30583
30720
  return maximumResultReached ? this.PAGINATION_MAX_ITEM_RESULT : total;
@@ -30722,7 +30859,7 @@ class SearchResultComponent {
30722
30859
  return col;
30723
30860
  }
30724
30861
  hasResults() {
30725
- return this.resultView.results.length && this.paginationMetadata.total_pages_count;
30862
+ return this.resultView.results.length && this.paginationMetadata.totalPagesCount;
30726
30863
  }
30727
30864
  hasDrafts() {
30728
30865
  return this.resultView.hasDrafts();
@@ -30821,7 +30958,7 @@ class SearchResultComponent {
30821
30958
  return ((currentPage - 1) * this.paginationPageSize) + this.resultView.results.length + this.getDraftsCountIfNotPageOne(currentPage);
30822
30959
  }
30823
30960
  getTotalResults() {
30824
- const total = this.paginationMetadata.total_results_count + this.draftsCount;
30961
+ const total = this.paginationMetadata.totalResultsCount + this.draftsCount;
30825
30962
  return total >= this.PAGINATION_MAX_ITEM_RESULT ? this.PAGINATION_MAX_ITEM_RESULT : total;
30826
30963
  }
30827
30964
  prepareCaseLinkUrl(caseId) {
@@ -30966,6 +31103,7 @@ SearchResultModule.ɵinj = i0.ɵɵdefineInjector({ providers: [
30966
31103
  }], null, null); })();
30967
31104
  i0.ɵɵsetComponentScope(SearchResultComponent, [i1.NgIf, i1.NgForOf, i1$1.RouterLinkWithHref, FieldReadComponent, LabelSubstitutorDirective, ActivityComponent, PaginationComponent], [i1.DecimalPipe, i1$6.PaginatePipe, CaseReferencePipe, SortSearchResultPipe]);
30968
31105
 
31106
+ // tslint:disable:variable-name
30969
31107
  class ComplexFieldOverride {
30970
31108
  }
30971
31109
 
@@ -30984,24 +31122,24 @@ class CaseFieldBuilder {
30984
31122
  this.caseField.id = id;
30985
31123
  return this;
30986
31124
  }
30987
- withFieldType(field_type) {
30988
- this.caseField.field_type = field_type;
31125
+ withFieldType(fieldType) {
31126
+ this.caseField.field_type = fieldType;
30989
31127
  return this;
30990
31128
  }
30991
- withDisplayContext(display_context) {
30992
- this.caseField.display_context = display_context;
31129
+ withDisplayContext(displayContext) {
31130
+ this.caseField.display_context = displayContext;
30993
31131
  return this;
30994
31132
  }
30995
- withDisplayContextParameter(display_context_parameter) {
30996
- this.caseField.display_context_parameter = display_context_parameter;
31133
+ withDisplayContextParameter(displayContextParameter) {
31134
+ this.caseField.display_context_parameter = displayContextParameter;
30997
31135
  return this;
30998
31136
  }
30999
31137
  withHidden(hidden) {
31000
31138
  this.caseField.hidden = hidden;
31001
31139
  return this;
31002
31140
  }
31003
- withHintText(hint_text) {
31004
- this.caseField.hint_text = hint_text;
31141
+ withHintText(hintText) {
31142
+ this.caseField.hint_text = hintText;
31005
31143
  return this;
31006
31144
  }
31007
31145
  withLabel(label) {
@@ -31012,12 +31150,12 @@ class CaseFieldBuilder {
31012
31150
  this.caseField.order = order;
31013
31151
  return this;
31014
31152
  }
31015
- withSecurityLabel(security_label) {
31016
- this.caseField.security_label = security_label;
31153
+ withSecurityLabel(securityLabel) {
31154
+ this.caseField.security_label = securityLabel;
31017
31155
  return this;
31018
31156
  }
31019
- withShowCondition(show_condition) {
31020
- this.caseField.show_condition = show_condition;
31157
+ withShowCondition(showCondition) {
31158
+ this.caseField.show_condition = showCondition;
31021
31159
  return this;
31022
31160
  }
31023
31161
  withShowSummaryContentOption(option) {
@@ -31044,19 +31182,19 @@ const textFieldType = () => {
31044
31182
  complex_fields: []
31045
31183
  };
31046
31184
  };
31047
- const createCaseEventTrigger = (id, name, case_id, show_summary, case_fields, wizard_pages = [], can_save_draft = false) => {
31185
+ const createCaseEventTrigger = (id, name, caseId, showSummary, caseFields, wizardPages = [], canSaveDraft = false) => {
31048
31186
  const eventTrigger = new CaseEventTrigger();
31049
31187
  eventTrigger.id = id;
31050
31188
  eventTrigger.name = name;
31051
- eventTrigger.case_id = case_id;
31052
- eventTrigger.show_summary = show_summary;
31053
- eventTrigger.wizard_pages = wizard_pages;
31189
+ eventTrigger.case_id = caseId;
31190
+ eventTrigger.show_summary = showSummary;
31191
+ eventTrigger.wizard_pages = wizardPages;
31054
31192
  eventTrigger.event_token = 'test-token';
31055
- eventTrigger.case_fields = case_fields;
31056
- eventTrigger.can_save_draft = can_save_draft;
31193
+ eventTrigger.case_fields = caseFields;
31194
+ eventTrigger.can_save_draft = canSaveDraft;
31057
31195
  return eventTrigger;
31058
31196
  };
31059
- const aCaseField = (id, label, type, display_context, show_summary_content_option, typeComplexFields = [], retain_hidden_value, hidden) => {
31197
+ const aCaseField = (id, label, type, displayContext, showSummaryContentOption, typeComplexFields = [], retainHiddenValue, hidden) => {
31060
31198
  return ({
31061
31199
  id: id || 'personFirstName',
31062
31200
  field_type: {
@@ -31064,10 +31202,10 @@ const aCaseField = (id, label, type, display_context, show_summary_content_optio
31064
31202
  type: type || 'Text',
31065
31203
  complex_fields: typeComplexFields || []
31066
31204
  },
31067
- display_context: display_context || 'OPTIONAL',
31205
+ display_context: displayContext || 'OPTIONAL',
31068
31206
  label: label || 'First name',
31069
- show_summary_content_option,
31070
- retain_hidden_value: retain_hidden_value || false,
31207
+ show_summary_content_option: showSummaryContentOption,
31208
+ retain_hidden_value: retainHiddenValue || false,
31071
31209
  hidden: hidden || false
31072
31210
  });
31073
31211
  };
@@ -31105,59 +31243,59 @@ const createHiddenComplexFieldOverride = (id) => {
31105
31243
  complexFieldOverride.display_context = 'HIDDEN';
31106
31244
  return complexFieldOverride;
31107
31245
  };
31108
- const createCaseField = (id, label, hint, fieldType, display_context, order = undefined, show_condition = undefined, ACLs = undefined, hidden) => {
31246
+ const createCaseField = (id, label, hint, fieldType, displayContext, order = undefined, showCondition = undefined, acls = undefined, hidden) => {
31109
31247
  return CaseFieldBuilder.create()
31110
31248
  .withId(id || 'personFirstName')
31111
31249
  .withFieldType(fieldType || textFieldType())
31112
- .withDisplayContext(display_context || 'OPTIONAL')
31250
+ .withDisplayContext(displayContext || 'OPTIONAL')
31113
31251
  .withLabel(label || 'First name')
31114
31252
  .withHintText(hint || 'First name hint text')
31115
31253
  .withShowSummaryContentOption(0)
31116
31254
  .withOrder(order)
31117
- .withShowCondition(show_condition || undefined)
31118
- .withACLs(ACLs)
31255
+ .withShowCondition(showCondition || undefined)
31256
+ .withACLs(acls)
31119
31257
  .withHidden(hidden || false)
31120
31258
  .build();
31121
31259
  };
31122
- const newCaseField = (id, label, hint, fieldType, display_context, order = undefined) => {
31260
+ const newCaseField = (id, label, hint, fieldType, displayContext, order = undefined) => {
31123
31261
  return CaseFieldBuilder.create()
31124
31262
  .withId(id || 'personFirstName')
31125
31263
  .withFieldType(fieldType || textFieldType())
31126
- .withDisplayContext(display_context || 'OPTIONAL')
31264
+ .withDisplayContext(displayContext || 'OPTIONAL')
31127
31265
  .withHintText(hint || 'First name hint text')
31128
31266
  .withLabel(label || 'First name')
31129
31267
  .withOrder(order)
31130
31268
  .withShowSummaryContentOption(0);
31131
31269
  };
31132
- const createFieldType = (typeId, type, complex_fields = [], collection_field_type = undefined) => {
31270
+ const createFieldType = (typeId, type, complexFields = [], collectionFieldType = undefined) => {
31133
31271
  return {
31134
31272
  id: typeId || 'Text',
31135
31273
  type: type || 'Text',
31136
- complex_fields: complex_fields || [],
31137
- collection_field_type: collection_field_type || undefined
31274
+ complex_fields: complexFields || [],
31275
+ collection_field_type: collectionFieldType || undefined
31138
31276
  };
31139
31277
  };
31140
31278
  const createFixedListFieldType = (typeId, fixedListItems = []) => {
31141
31279
  return {
31142
- id: 'FixedList-' + typeId,
31280
+ id: `FixedList-${typeId}`,
31143
31281
  type: 'FixedList',
31144
31282
  fixed_list_items: fixedListItems || []
31145
31283
  };
31146
31284
  };
31147
31285
  const createMultiSelectListFieldType = (typeId, fixedListItems = []) => {
31148
31286
  return {
31149
- id: 'MultiSelectList-' + typeId,
31287
+ id: `MultiSelectList-${typeId}`,
31150
31288
  type: 'MultiSelectList',
31151
31289
  fixed_list_items: fixedListItems || []
31152
31290
  };
31153
31291
  };
31154
- const createACL = (role, create, read, update, _delete) => {
31292
+ const createACL = (role, aclCreate, aclRead, aclUpdate, aclDelete) => {
31155
31293
  return ({
31156
31294
  role: role || 'roleX',
31157
- create,
31158
- read,
31159
- update,
31160
- delete: _delete
31295
+ create: aclCreate,
31296
+ read: aclRead,
31297
+ update: aclUpdate,
31298
+ delete: aclDelete
31161
31299
  });
31162
31300
  };
31163
31301
 
@@ -31204,5 +31342,5 @@ class TestRouteSnapshotBuilder {
31204
31342
  * Generated bundle index. Do not edit.
31205
31343
  */
31206
31344
 
31207
- export { AbstractAppConfig, AbstractFieldReadComponent, AbstractFieldWriteComponent, Activity, ActivityBannerComponent, ActivityComponent, ActivityIconComponent, ActivityInfo, ActivityModule, ActivityPollingService, ActivityService, AddCommentsComponent, AddCommentsErrorMessage, AddCommentsStep, AddressModel, AddressOption, AddressesService, Alert, AlertComponent, AlertIconClassPipe, AlertMessageType, AlertModule, AlertService, AuthService, Banner, BannersService, BeforeYouStartComponent, BodyComponent, BrowserService, CCDCaseLinkType, CallbackErrorsComponent, CallbackErrorsContext, CaseAccessUtils, CaseBasicAccessViewComponent, CaseChallengedAccessRequestComponent, CaseChallengedAccessSuccessComponent, CaseCreateComponent, CaseDetails, CaseEditComponent, CaseEditConfirmComponent, CaseEditDataModule, CaseEditDataService, CaseEditFormComponent, CaseEditPageComponent, CaseEditSubmitComponent, CaseEditWizardGuard, CaseEditorConfig, CaseEditorModule, CaseEvent, CaseEventData, CaseEventTrigger, CaseEventTriggerComponent, CaseField, CaseFieldService, CaseFileViewFieldComponent, CaseFileViewFieldReadComponent, CaseFileViewFolderComponent, CaseFileViewFolderDocumentActionsComponent, CaseFileViewFolderSelectorComponent, CaseFileViewFolderSortComponent, CaseFileViewOverlayMenuComponent, CaseFileViewService, CaseFlagFieldState, CaseFlagRefdataService, CaseFlagStatus, CaseFlagSummaryListComponent, CaseFlagSummaryListDisplayMode, CaseFlagTableComponent, CaseFlagText, CaseFlagWizardStepTitle, CaseFullAccessViewComponent, CaseHeaderComponent, CaseHeaderModule, CaseHistoryViewerFieldComponent, CaseLink, CaseLinkResponse, CaseListComponent, CaseListFiltersComponent, CaseListFiltersModule, CaseListModule, CaseNotifier, CasePaymentHistoryViewerFieldComponent, CasePrintDocument, CasePrinterComponent, CaseProgressComponent, CaseReferencePipe, CaseResolver, CaseSpecificAccessRequestComponent, CaseSpecificAccessSuccessComponent, CaseState, CaseTab, CaseTimelineComponent, CaseTimelineDisplayMode, CaseTimelineModule, CaseType, CaseTypeLite, CaseView, CaseViewComponent, CaseViewEvent, CaseViewTrigger, CaseViewerComponent, CaseViewerModule, CasesService, CaseworkerService, CcdCYAPageLabelFilterPipe, CcdCaseTitlePipe, CcdCollectionTableCaseFieldsFilterPipe, CcdPageFieldsPipe, CcdTabFieldsPipe, CheckYourAnswersComponent, ConditionalShowFormDirective, ConditionalShowModule, ConditionalShowRegistrarService, Confirmation, ConvertHrefToRouterService, CreateCaseFiltersComponent, CreateCaseFiltersModule, CreateCaseFiltersSelection, DRAFT_PREFIX, DRAFT_QUERY_PARAM, DashPipe, DateInputComponent, DatePipe, DateTimeFormatUtils, DatetimePickerComponent, DefinitionsModule, DefinitionsService, DeleteOrCancelDialogComponent, DialogsModule, DisplayMode, Document, DocumentData, DocumentDialogComponent, DocumentLinks, DocumentManagementService, DocumentUrlPipe, Draft, DraftService, DynamicListPipe, DynamicRadioListPipe, ESQueryType, Embedded, ErrorMessageComponent, ErrorNotifierService, EventCaseField, EventCompletionReturnStates, EventCompletionStateMachineService, EventCompletionStates, EventLogComponent, EventLogDetailsComponent, EventLogTableComponent, EventMessageModule, EventStartComponent, EventStartModule, EventStartStateMachineService, EventStatusService, EventTriggerResolver, EventTriggerService, Fee, FeeValue, Field, FieldLabelPipe, FieldReadComponent, FieldReadLabelComponent, FieldType, FieldTypeSanitiser, FieldWriteComponent, FieldsFilterPipe, FieldsPurger, FieldsUtils, FirstErrorPipe, FixedListItem, FixedListPipe, FixedRadioListPipe, FocusElementDirective, FocusElementModule, FooterComponent, FormDocument, FormErrorService, FormValidatorsService, FormValueService, FormatTranslatorService, GreyBarService, HRef, HasLoadingState, HeaderBarComponent, HeadersModule, HttpError, HttpErrorService, HttpService, IsCompoundPipe, IsMandatoryPipe, IsReadOnlyAndNotCollectionPipe, IsReadOnlyPipe, JudicialworkerService, Jurisdiction, JurisdictionService, LabelFieldComponent, LabelSubstitutorDirective, LabelSubstitutorModule, LinkCaseReason, LinkCasesComponent, LinkCasesFromReasonValuePipe, LinkCasesReasonValuePipe, LinkDetails, LinkFromReason, LinkReason, LinkedCasesErrorMessages, LinkedCasesEventTriggers, LinkedCasesFromTableComponent, LinkedCasesPages, LinkedCasesResponse, LinkedCasesToTableComponent, LoadingModule, LoadingService, LoadingSpinnerComponent, LoadingSpinnerModule, MEDIA_VIEWER_LOCALSTORAGE_KEY, MULTIPLE_TASKS_FOUND, ManageCaseFlagsComponent, MarkdownComponent, MoneyGbpInputComponent, MultipleTasksExistComponent, NavigationComponent, NavigationItemComponent, NavigationNotifierService, NavigationOrigin, NoLinkedCasesComponent, NoTasksAvailableComponent, NotificationBannerComponent, NotificationBannerHeaderClass, NotificationBannerType, OrderService, OrderSummary, OrganisationConverter, OrganisationService, PageValidationService, PaginationComponent, PaginationMetadata, PaginationModule, PaletteContext, PaletteModule, PaletteService, PaletteUtilsModule, Patterns, PaymentField, PhaseComponent, PipesModule, PlaceholderService, PrintUrlPipe, Profile, ProfileNotifier, ProfileService, ReadCaseFlagFieldComponent, ReadCaseLinkFieldComponent, ReadCollectionFieldComponent, ReadComplexFieldCollectionTableComponent, ReadComplexFieldComponent, ReadComplexFieldRawComponent, ReadComplexFieldTableComponent, ReadDateFieldComponent, ReadDocumentFieldComponent, ReadDynamicListFieldComponent, ReadDynamicRadioListFieldComponent, ReadEmailFieldComponent, ReadFieldsFilterPipe, ReadFixedListFieldComponent, ReadFixedRadioListFieldComponent, ReadJudicialUserFieldComponent, ReadLinkedCasesFieldComponent, ReadMoneyGbpFieldComponent, ReadMultiSelectListFieldComponent, ReadNumberFieldComponent, ReadOrderSummaryFieldComponent, ReadOrderSummaryRowComponent, ReadOrganisationFieldComponent, ReadOrganisationFieldRawComponent, ReadOrganisationFieldTableComponent, ReadPhoneUKFieldComponent, ReadTextAreaFieldComponent, ReadTextFieldComponent, ReadYesNoFieldComponent, RefdataCaseFlagType, RemoveDialogComponent, RequestOptionsBuilder, RouterHelperService, SaveOrDiscardDialogComponent, SearchFiltersComponent, SearchFiltersModule, SearchFiltersWrapperComponent, SearchInput, SearchLanguageInterpreterComponent, SearchLanguageInterpreterErrorMessage, SearchLanguageInterpreterStep, SearchResultComponent, SearchResultModule, SearchResultView, SearchResultViewColumn, SearchResultViewItem, SearchResultViewItemComparatorFactory, SearchService, SelectFlagErrorMessage, SelectFlagLocationComponent, SelectFlagLocationErrorMessage, SelectFlagTypeComponent, SelectFlagTypeErrorMessage, SessionStorageService, ShowCondition, SortOrder$1 as SortOrder, SortParameters, SortSearchResultPipe, TabComponent, TableColumnConfig, TableConfig, TabsComponent, TabsModule, TaskAssignedComponent, TaskCancelledComponent, TaskConflictComponent, TaskUnassignedComponent, Terms, TestRouteSnapshotBuilder, UnLinkCasesComponent, UnsupportedFieldComponent, UpdateFlagComponent, UpdateFlagErrorMessage, UpdateFlagStep, WaysToPayFieldComponent, WindowService, Wizard, WizardFactoryService, WizardPage, WizardPageField, WorkAllocationService, WorkbasketFiltersComponent, WorkbasketFiltersModule, WorkbasketInput, WorkbasketInputFilterService, WorkbasketInputModel, WriteAddressFieldComponent, WriteCaseFlagFieldComponent, WriteCaseLinkFieldComponent, WriteCollectionFieldComponent, WriteComplexFieldComponent, WriteDateContainerFieldComponent, WriteDateFieldComponent, WriteDocumentFieldComponent, WriteDynamicListFieldComponent, WriteDynamicRadioListFieldComponent, WriteEmailFieldComponent, WriteFixedListFieldComponent, WriteFixedRadioListFieldComponent, WriteJudicialUserFieldComponent, WriteLinkedCasesFieldComponent, WriteMoneyGbpFieldComponent, WriteMultiSelectListFieldComponent, WriteNumberFieldComponent, WriteOrderSummaryFieldComponent, WriteOrganisationComplexFieldComponent, WriteOrganisationFieldComponent, WritePhoneUKFieldComponent, WriteTextAreaFieldComponent, WriteTextFieldComponent, WriteYesNoFieldComponent, YesNoService, aCaseField, createACL, createCaseEventTrigger, createCaseField, createComplexFieldOverride, createFieldType, createFixedListFieldType, createHiddenComplexFieldOverride, createMultiSelectListFieldType, createWizardPage, createWizardPageField, editorRouting, initDialog, newCaseField, textFieldType, viewerRouting };
31345
+ export { AbstractAppConfig, AbstractFieldReadComponent, AbstractFieldWriteComponent, Activity, ActivityBannerComponent, ActivityComponent, ActivityIconComponent, ActivityInfo, ActivityModule, ActivityPollingService, ActivityService, AddCommentsComponent, AddCommentsErrorMessage, AddCommentsStep, AddressModel, AddressOption, AddressesService, Alert, AlertComponent, AlertIconClassPipe, AlertMessageType, AlertModule, AlertService, AuthService, Banner, BannersService, BeforeYouStartComponent, BodyComponent, BrowserService, CCDCaseLinkType, CallbackErrorsComponent, CallbackErrorsContext, CaseAccessUtils, CaseBasicAccessViewComponent, CaseChallengedAccessRequestComponent, CaseChallengedAccessSuccessComponent, CaseCreateComponent, CaseDetails, CaseEditComponent, CaseEditConfirmComponent, CaseEditDataModule, CaseEditDataService, CaseEditFormComponent, CaseEditPageComponent, CaseEditSubmitComponent, CaseEditWizardGuard, CaseEditorConfig, CaseEditorModule, CaseEvent, CaseEventData, CaseEventTrigger, CaseEventTriggerComponent, CaseField, CaseFieldService, CaseFileViewFieldComponent, CaseFileViewFolderComponent, CaseFileViewFolderDocumentActionsComponent, CaseFileViewFolderSelectorComponent, CaseFileViewFolderSortComponent, CaseFileViewOverlayMenuComponent, CaseFileViewService, CaseFlagFieldState, CaseFlagRefdataService, CaseFlagStatus, CaseFlagSummaryListComponent, CaseFlagSummaryListDisplayMode, CaseFlagTableComponent, CaseFlagText, CaseFlagWizardStepTitle, CaseFullAccessViewComponent, CaseHeaderComponent, CaseHeaderModule, CaseHistoryViewerFieldComponent, CaseLink, CaseLinkResponse, CaseListComponent, CaseListFiltersComponent, CaseListFiltersModule, CaseListModule, CaseNotifier, CasePaymentHistoryViewerFieldComponent, CasePrintDocument, CasePrinterComponent, CaseProgressComponent, CaseReferencePipe, CaseResolver, CaseSpecificAccessRequestComponent, CaseSpecificAccessSuccessComponent, CaseState, CaseTab, CaseTimelineComponent, CaseTimelineDisplayMode, CaseTimelineModule, CaseType, CaseTypeLite, CaseView, CaseViewComponent, CaseViewEvent, CaseViewTrigger, CaseViewerComponent, CaseViewerModule, CasesService, CaseworkerService, CcdCYAPageLabelFilterPipe, CcdCaseTitlePipe, CcdCollectionTableCaseFieldsFilterPipe, CcdPageFieldsPipe, CcdTabFieldsPipe, CheckYourAnswersComponent, ConditionalShowFormDirective, ConditionalShowModule, ConditionalShowRegistrarService, Confirmation, ConvertHrefToRouterService, CreateCaseFiltersComponent, CreateCaseFiltersModule, CreateCaseFiltersSelection, DRAFT_PREFIX, DRAFT_QUERY_PARAM, DashPipe, DateInputComponent, DatePipe, DateTimeFormatUtils, DatetimePickerComponent, DefinitionsModule, DefinitionsService, DeleteOrCancelDialogComponent, DialogsModule, DisplayMode, Document, DocumentData, DocumentDialogComponent, DocumentLinks, DocumentManagementService, DocumentUrlPipe, Draft, DraftService, DynamicListPipe, DynamicRadioListPipe, ESQueryType, Embedded, ErrorMessageComponent, ErrorNotifierService, EventCaseField, EventCompletionReturnStates, EventCompletionStateMachineService, EventCompletionStates, EventLogComponent, EventLogDetailsComponent, EventLogTableComponent, EventMessageModule, EventStartComponent, EventStartModule, EventStartStateMachineService, EventStatusService, EventTriggerResolver, EventTriggerService, Fee, FeeValue, Field, FieldLabelPipe, FieldReadComponent, FieldReadLabelComponent, FieldType, FieldTypeSanitiser, FieldWriteComponent, FieldsFilterPipe, FieldsPurger, FieldsUtils, FirstErrorPipe, FixedListItem, FixedListPipe, FixedRadioListPipe, FocusElementDirective, FocusElementModule, FooterComponent, FormDocument, FormErrorService, FormValidatorsService, FormValueService, FormatTranslatorService, GreyBarService, HRef, HeaderBarComponent, HeadersModule, HttpError, HttpErrorService, HttpService, IsCompoundPipe, IsMandatoryPipe, IsReadOnlyAndNotCollectionPipe, IsReadOnlyPipe, JudicialworkerService, Jurisdiction, JurisdictionService, LabelFieldComponent, LabelSubstitutorDirective, LabelSubstitutorModule, LinkCaseReason, LinkCasesComponent, LinkCasesFromReasonValuePipe, LinkCasesReasonValuePipe, LinkDetails, LinkFromReason, LinkReason, LinkedCasesErrorMessages, LinkedCasesEventTriggers, LinkedCasesFromTableComponent, LinkedCasesPages, LinkedCasesResponse, LinkedCasesToTableComponent, LoadingModule, LoadingService, LoadingSpinnerComponent, LoadingSpinnerModule, MEDIA_VIEWER_LOCALSTORAGE_KEY, MULTIPLE_TASKS_FOUND, ManageCaseFlagsComponent, MarkdownComponent, MoneyGbpInputComponent, MultipleTasksExistComponent, NavigationComponent, NavigationItemComponent, NavigationNotifierService, NavigationOrigin, NoLinkedCasesComponent, NoTasksAvailableComponent, NotificationBannerComponent, NotificationBannerHeaderClass, NotificationBannerType, OrderService, OrderSummary, OrganisationConverter, OrganisationService, PageValidationService, PaginationComponent, PaginationMetadata, PaginationModule, PaletteContext, PaletteModule, PaletteService, PaletteUtilsModule, Patterns, PaymentField, PhaseComponent, PipesModule, PlaceholderService, PrintUrlPipe, Profile, ProfileNotifier, ProfileService, ReadCaseFlagFieldComponent, ReadCaseLinkFieldComponent, ReadCollectionFieldComponent, ReadComplexFieldCollectionTableComponent, ReadComplexFieldComponent, ReadComplexFieldRawComponent, ReadComplexFieldTableComponent, ReadDateFieldComponent, ReadDocumentFieldComponent, ReadDynamicListFieldComponent, ReadDynamicMultiSelectListFieldComponent, ReadDynamicRadioListFieldComponent, ReadEmailFieldComponent, ReadFieldsFilterPipe, ReadFixedListFieldComponent, ReadFixedRadioListFieldComponent, ReadJudicialUserFieldComponent, ReadLinkedCasesFieldComponent, ReadMoneyGbpFieldComponent, ReadMultiSelectListFieldComponent, ReadNumberFieldComponent, ReadOrderSummaryFieldComponent, ReadOrderSummaryRowComponent, ReadOrganisationFieldComponent, ReadOrganisationFieldRawComponent, ReadOrganisationFieldTableComponent, ReadPhoneUKFieldComponent, ReadTextAreaFieldComponent, ReadTextFieldComponent, ReadYesNoFieldComponent, RefdataCaseFlagType, RemoveDialogComponent, RequestOptionsBuilder, RouterHelperService, SaveOrDiscardDialogComponent, SearchFiltersComponent, SearchFiltersModule, SearchFiltersWrapperComponent, SearchInput, SearchLanguageInterpreterComponent, SearchLanguageInterpreterErrorMessage, SearchLanguageInterpreterStep, SearchResultComponent, SearchResultModule, SearchResultView, SearchResultViewColumn, SearchResultViewItem, SearchResultViewItemComparatorFactory, SearchService, SelectFlagErrorMessage, SelectFlagLocationComponent, SelectFlagLocationErrorMessage, SelectFlagTypeComponent, SelectFlagTypeErrorMessage, SessionStorageService, ShowCondition, SortOrder$1 as SortOrder, SortParameters, SortSearchResultPipe, TabComponent, TableColumnConfig, TableConfig, TabsComponent, TabsModule, TaskAssignedComponent, TaskCancelledComponent, TaskConflictComponent, TaskUnassignedComponent, Terms, TestRouteSnapshotBuilder, UnLinkCasesComponent, UnsupportedFieldComponent, UpdateFlagComponent, UpdateFlagErrorMessage, UpdateFlagStep, WaysToPayFieldComponent, WindowService, Wizard, WizardFactoryService, WizardPage, WizardPageField, WorkAllocationService, WorkbasketFiltersComponent, WorkbasketFiltersModule, WorkbasketInput, WorkbasketInputFilterService, WorkbasketInputModel, WriteAddressFieldComponent, WriteCaseFlagFieldComponent, WriteCaseLinkFieldComponent, WriteCollectionFieldComponent, WriteComplexFieldComponent, WriteDateContainerFieldComponent, WriteDateFieldComponent, WriteDocumentFieldComponent, WriteDynamicListFieldComponent, WriteDynamicMultiSelectListFieldComponent, WriteDynamicRadioListFieldComponent, WriteEmailFieldComponent, WriteFixedListFieldComponent, WriteFixedRadioListFieldComponent, WriteJudicialUserFieldComponent, WriteLinkedCasesFieldComponent, WriteMoneyGbpFieldComponent, WriteMultiSelectListFieldComponent, WriteNumberFieldComponent, WriteOrderSummaryFieldComponent, WriteOrganisationComplexFieldComponent, WriteOrganisationFieldComponent, WritePhoneUKFieldComponent, WriteTextAreaFieldComponent, WriteTextFieldComponent, WriteYesNoFieldComponent, YesNoService, aCaseField, createACL, createCaseEventTrigger, createCaseField, createComplexFieldOverride, createFieldType, createFixedListFieldType, createHiddenComplexFieldOverride, createMultiSelectListFieldType, createWizardPage, createWizardPageField, editorRouting, initDialog, newCaseField, textFieldType, viewerRouting };
31208
31346
  //# sourceMappingURL=hmcts-ccd-case-ui-toolkit.js.map