@hmcts/ccd-case-ui-toolkit 6.14.4-eui-4157-b → 6.14.4-hotfix-110

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 (143) hide show
  1. package/bundles/hmcts-ccd-case-ui-toolkit.umd.js +455 -395
  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 +3 -2
  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-validation.model.js +1 -1
  10. package/esm2015/lib/shared/components/activity/activity.component.js +5 -5
  11. package/esm2015/lib/shared/components/case-editor/case-edit-page/case-edit-page.component.js +2 -2
  12. package/esm2015/lib/shared/components/case-editor/case-edit-submit/case-edit-submit.component.js +2 -2
  13. package/esm2015/lib/shared/components/case-editor/case-editor.module.js +1 -1
  14. 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
  15. package/esm2015/lib/shared/components/case-editor/services/cases.service.js +22 -11
  16. package/esm2015/lib/shared/components/case-editor/services/page-validation.service.js +2 -2
  17. package/esm2015/lib/shared/components/case-editor/services/wizard-page-field-to-case-field.mapper.js +2 -2
  18. package/esm2015/lib/shared/components/case-editor/services/work-allocation.service.js +1 -1
  19. package/esm2015/lib/shared/components/case-viewer/case-challenged-access-request/case-challenged-access-request.component.js +5 -5
  20. package/esm2015/lib/shared/components/case-viewer/case-event-trigger/case-event-trigger.component.js +1 -1
  21. package/esm2015/lib/shared/components/case-viewer/case-full-access-view/case-full-access-view.component.js +33 -24
  22. package/esm2015/lib/shared/components/case-viewer/case-specific-access-request/case-specific-access-request.component.js +4 -4
  23. package/esm2015/lib/shared/components/case-viewer/case-viewer.component.js +5 -5
  24. package/esm2015/lib/shared/components/case-viewer/printer/pipes/print-url.pipe.js +3 -3
  25. package/esm2015/lib/shared/components/case-viewer/services/case.resolver.js +2 -2
  26. package/esm2015/lib/shared/components/event-start/event-guard/event-start.guard.js +2 -2
  27. package/esm2015/lib/shared/components/palette/address/address-option.model.js +7 -4
  28. package/esm2015/lib/shared/components/palette/address/write-address-field.component.js +4 -4
  29. package/esm2015/lib/shared/components/palette/case-flag/components/case-flag-table/case-flag-table.component.js +1 -1
  30. package/esm2015/lib/shared/components/palette/case-flag/components/select-flag-location/select-flag-location.component.js +2 -2
  31. package/esm2015/lib/shared/components/palette/case-flag/enums/index.js +1 -1
  32. package/esm2015/lib/shared/components/palette/collection/collection-create-checker.service.js +5 -5
  33. package/esm2015/lib/shared/components/palette/collection/write-collection-field.component.js +5 -5
  34. package/esm2015/lib/shared/components/palette/complex/read-complex-field-collection-table.component.js +3 -3
  35. package/esm2015/lib/shared/components/palette/linked-cases/components/link-cases/link-cases.component.js +1 -1
  36. package/esm2015/lib/shared/components/palette/linked-cases/components/linked-cases-table/linked-cases-from-table.component.js +2 -2
  37. package/esm2015/lib/shared/components/palette/linked-cases/components/linked-cases-table/linked-cases-to-table.component.js +1 -1
  38. package/esm2015/lib/shared/components/palette/linked-cases/domain/linked-cases.model.js +1 -1
  39. package/esm2015/lib/shared/components/palette/linked-cases/read-linked-cases-field.component.js +2 -2
  40. package/esm2015/lib/shared/components/palette/linked-cases/services/linked-cases.service.js +3 -2
  41. package/esm2015/lib/shared/components/palette/linked-cases/write-linked-cases-field.component.js +4 -3
  42. package/esm2015/lib/shared/components/palette/order-summary/fee.model.js +1 -1
  43. package/esm2015/lib/shared/components/palette/order-summary/order-summary.model.js +1 -1
  44. package/esm2015/lib/shared/components/palette/text-area/write-text-area-field.component.js +2 -2
  45. package/esm2015/lib/shared/components/palette/utils/date.pipe.js +4 -4
  46. package/esm2015/lib/shared/components/search-filters/search-filters.component.js +2 -2
  47. package/esm2015/lib/shared/components/workbasket-filters/workbasket-filters.component.js +3 -3
  48. package/esm2015/lib/shared/directives/conditional-show/domain/conditional-show.model.js +3 -3
  49. package/esm2015/lib/shared/directives/conditional-show/services/condition-parser.service.js +7 -3
  50. package/esm2015/lib/shared/domain/case-view/case-view.model.js +1 -1
  51. package/esm2015/lib/shared/domain/case-view/role-assignment-response.model.js +1 -1
  52. package/esm2015/lib/shared/domain/case-view/role-request.model.js +1 -1
  53. package/esm2015/lib/shared/domain/organisation/organisation-converter.js +8 -8
  54. package/esm2015/lib/shared/domain/user/user-info.model.js +1 -1
  55. package/esm2015/lib/shared/fixture/case-field-builder.js +13 -13
  56. package/esm2015/lib/shared/fixture/shared.test.fixture.js +27 -27
  57. package/esm2015/lib/shared/pipes/complex/{ccd-page-fields.pipe.js → cdd-page-fields.pipe.js} +3 -3
  58. package/esm2015/lib/shared/pipes/complex/index.js +2 -2
  59. package/esm2015/lib/shared/services/activity/activity.polling.service.js +2 -2
  60. package/esm2015/lib/shared/services/activity/activity.service.js +18 -9
  61. package/esm2015/lib/shared/services/addresses/address-parser.js +5 -5
  62. package/esm2015/lib/shared/services/case-fields/format-translator.service.js +2 -2
  63. package/esm2015/lib/shared/services/case-flag/case-flag-refdata.service.js +2 -2
  64. package/esm2015/lib/shared/services/common-data-service/common-data-service.js +2 -2
  65. package/esm2015/lib/shared/services/definitions/definitions.service.js +8 -3
  66. package/esm2015/lib/shared/services/fields/fields.purger.js +15 -15
  67. package/esm2015/lib/shared/services/fields/fields.utils.js +4 -4
  68. package/esm2015/lib/shared/services/form/form-value.service.js +2 -1
  69. package/esm2015/lib/shared/services/loading/loading.service.js +7 -2
  70. package/esm2015/lib/shared/services/search/search.service.js +10 -5
  71. package/esm2015/lib/shared/services/search-result/sorting/search-result-view-item-comparator-factory.js +5 -5
  72. package/esm2015/lib/shared/services/window/window.service.js +1 -1
  73. package/fesm2015/hmcts-ccd-case-ui-toolkit.js +435 -383
  74. package/fesm2015/hmcts-ccd-case-ui-toolkit.js.map +1 -1
  75. package/lib/app.config.d.ts.map +1 -1
  76. package/lib/components/header/header-bar/header-bar.component.d.ts.map +1 -1
  77. package/lib/shared/commons/case-edit-data/case-edit-data.module.d.ts.map +1 -1
  78. package/lib/shared/commons/case-edit-data/case-edit-validation.model.d.ts.map +1 -1
  79. package/lib/shared/components/case-editor/case-edit-page/case-edit-page.component.d.ts.map +1 -1
  80. 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
  81. 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
  82. package/lib/shared/components/case-editor/services/cases.service.d.ts +3 -1
  83. package/lib/shared/components/case-editor/services/cases.service.d.ts.map +1 -1
  84. package/lib/shared/components/case-editor/services/wizard-page-field-to-case-field.mapper.d.ts.map +1 -1
  85. package/lib/shared/components/case-editor/services/work-allocation.service.d.ts.map +1 -1
  86. package/lib/shared/components/case-viewer/case-challenged-access-request/case-challenged-access-request.component.d.ts.map +1 -1
  87. package/lib/shared/components/case-viewer/case-full-access-view/case-full-access-view.component.d.ts +6 -2
  88. package/lib/shared/components/case-viewer/case-full-access-view/case-full-access-view.component.d.ts.map +1 -1
  89. package/lib/shared/components/case-viewer/case-viewer.component.d.ts.map +1 -1
  90. package/lib/shared/components/case-viewer/printer/pipes/print-url.pipe.d.ts.map +1 -1
  91. package/lib/shared/components/case-viewer/services/case.resolver.d.ts.map +1 -1
  92. package/lib/shared/components/event-start/event-guard/event-start.guard.d.ts +1 -1
  93. package/lib/shared/components/event-start/event-guard/event-start.guard.d.ts.map +1 -1
  94. package/lib/shared/components/palette/address/address-option.model.d.ts.map +1 -1
  95. package/lib/shared/components/palette/address/write-address-field.component.d.ts.map +1 -1
  96. package/lib/shared/components/palette/case-flag/components/select-flag-location/select-flag-location.component.d.ts.map +1 -1
  97. package/lib/shared/components/palette/case-flag/enums/index.d.ts.map +1 -1
  98. package/lib/shared/components/palette/collection/collection-create-checker.service.d.ts.map +1 -1
  99. package/lib/shared/components/palette/complex/read-complex-field-collection-table.component.d.ts +1 -1
  100. package/lib/shared/components/palette/complex/read-complex-field-collection-table.component.d.ts.map +1 -1
  101. package/lib/shared/components/palette/linked-cases/components/linked-cases-table/linked-cases-from-table.component.d.ts +4 -4
  102. package/lib/shared/components/palette/linked-cases/components/linked-cases-table/linked-cases-from-table.component.d.ts.map +1 -1
  103. package/lib/shared/components/palette/linked-cases/domain/linked-cases.model.d.ts.map +1 -1
  104. package/lib/shared/components/palette/linked-cases/read-linked-cases-field.component.d.ts.map +1 -1
  105. package/lib/shared/components/palette/linked-cases/services/linked-cases.service.d.ts.map +1 -1
  106. package/lib/shared/components/palette/linked-cases/write-linked-cases-field.component.d.ts.map +1 -1
  107. package/lib/shared/components/palette/order-summary/fee.model.d.ts.map +1 -1
  108. package/lib/shared/components/palette/order-summary/order-summary.model.d.ts.map +1 -1
  109. package/lib/shared/components/palette/text-area/write-text-area-field.component.d.ts.map +1 -1
  110. package/lib/shared/components/palette/utils/date.pipe.d.ts.map +1 -1
  111. package/lib/shared/components/workbasket-filters/workbasket-filters.component.d.ts.map +1 -1
  112. package/lib/shared/directives/conditional-show/domain/conditional-show.model.d.ts.map +1 -1
  113. package/lib/shared/directives/conditional-show/services/condition-parser.service.d.ts.map +1 -1
  114. package/lib/shared/domain/case-view/case-view.model.d.ts.map +1 -1
  115. package/lib/shared/domain/case-view/role-assignment-response.model.d.ts +2 -1
  116. package/lib/shared/domain/case-view/role-assignment-response.model.d.ts.map +1 -1
  117. package/lib/shared/domain/case-view/role-request.model.d.ts.map +1 -1
  118. package/lib/shared/domain/organisation/organisation-converter.d.ts.map +1 -1
  119. package/lib/shared/domain/user/user-info.model.d.ts.map +1 -1
  120. package/lib/shared/fixture/case-field-builder.d.ts +6 -6
  121. package/lib/shared/fixture/case-field-builder.d.ts.map +1 -1
  122. package/lib/shared/fixture/shared.test.fixture.d.ts +6 -6
  123. package/lib/shared/fixture/shared.test.fixture.d.ts.map +1 -1
  124. package/lib/shared/pipes/complex/{ccd-page-fields.pipe.d.ts → cdd-page-fields.pipe.d.ts} +1 -1
  125. package/lib/shared/pipes/complex/cdd-page-fields.pipe.d.ts.map +1 -0
  126. package/lib/shared/pipes/complex/index.d.ts +1 -1
  127. package/lib/shared/pipes/pipes.module.d.ts +1 -1
  128. package/lib/shared/services/activity/activity.polling.service.d.ts.map +1 -1
  129. package/lib/shared/services/activity/activity.service.d.ts.map +1 -1
  130. package/lib/shared/services/addresses/address-parser.d.ts.map +1 -1
  131. package/lib/shared/services/common-data-service/common-data-service.d.ts.map +1 -1
  132. package/lib/shared/services/definitions/definitions.service.d.ts.map +1 -1
  133. package/lib/shared/services/fields/fields.purger.d.ts.map +1 -1
  134. package/lib/shared/services/fields/fields.utils.d.ts +1 -0
  135. package/lib/shared/services/fields/fields.utils.d.ts.map +1 -1
  136. package/lib/shared/services/loading/loading.service.d.ts +4 -1
  137. package/lib/shared/services/loading/loading.service.d.ts.map +1 -1
  138. package/lib/shared/services/search/search.service.d.ts +2 -0
  139. package/lib/shared/services/search/search.service.d.ts.map +1 -1
  140. package/lib/shared/services/search-result/sorting/search-result-view-item-comparator-factory.d.ts.map +1 -1
  141. package/lib/shared/services/window/window.service.d.ts.map +1 -1
  142. package/package.json +2 -2
  143. package/lib/shared/pipes/complex/ccd-page-fields.pipe.d.ts.map +0 -1
@@ -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;
@@ -1521,7 +1521,7 @@ class ActivityService {
1521
1521
  }
1522
1522
  static handleHttpError(response) {
1523
1523
  const error = HttpErrorService.convertToHttpError(response);
1524
- if ((response === null || response === void 0 ? void 0 : response.status) !== error.status) {
1524
+ if (response.status && response.status !== error.status) {
1525
1525
  error.status = response.status;
1526
1526
  }
1527
1527
  return error;
@@ -1529,41 +1529,50 @@ 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
- return {
1532
+ const options = {
1533
1533
  headers,
1534
1534
  withCredentials: true,
1535
1535
  observe: 'body',
1536
1536
  };
1537
+ return options;
1537
1538
  }
1538
1539
  getActivities(...caseId) {
1539
1540
  try {
1540
1541
  const options = this.getOptions();
1541
- const url = `${this.activityUrl()}/cases/${caseId.join(',')}/activity`;
1542
+ const url = this.activityUrl() + `/cases/${caseId.join(',')}/activity`;
1542
1543
  return this.http
1543
1544
  .get(url, options, false, ActivityService.handleHttpError)
1544
1545
  .pipe(map(response => response));
1545
1546
  }
1546
1547
  catch (error) {
1547
- console.log(`user may not be authenticated.${error}`);
1548
+ console.log('user may not be authenticated.' + error);
1548
1549
  }
1549
1550
  }
1550
1551
  postActivity(caseId, activity) {
1551
1552
  try {
1552
1553
  const options = this.getOptions();
1553
- const url = `${this.activityUrl()}/cases/${caseId}/activity`;
1554
+ const url = this.activityUrl() + `/cases/${caseId}/activity`;
1554
1555
  const body = { activity };
1555
1556
  return this.http
1556
1557
  .post(url, body, options, false)
1557
1558
  .pipe(map(response => response));
1558
1559
  }
1559
1560
  catch (error) {
1560
- console.log(`user may not be authenticated.${error}`);
1561
+ console.log('user may not be authenticated.' + error);
1561
1562
  }
1562
1563
  }
1563
1564
  verifyUserIsAuthorized() {
1564
- if (this.sessionStorageService.getItem('userDetails') && this.activityUrl() && this.userAuthorised === undefined) {
1565
+ if (this.sessionStorageService.getItem('userDetails') === undefined) {
1566
+ return;
1567
+ }
1568
+ if (this.activityUrl() && this.userAuthorised === undefined) {
1565
1569
  this.getActivities(ActivityService.DUMMY_CASE_REFERENCE).subscribe(() => this.userAuthorised = true, error => {
1566
- this.userAuthorised = [401, 403].indexOf(error.status) <= -1;
1570
+ if ([401, 403].indexOf(error.status) > -1) {
1571
+ this.userAuthorised = false;
1572
+ }
1573
+ else {
1574
+ this.userAuthorised = true;
1575
+ }
1567
1576
  });
1568
1577
  }
1569
1578
  }
@@ -1662,7 +1671,7 @@ class ActivityPollingService {
1662
1671
  requests.get(activity.caseId).next(activity);
1663
1672
  });
1664
1673
  }, (err) => {
1665
- console.log(`error: ${err}`);
1674
+ console.log('error: ' + err);
1666
1675
  Array.from(requests.values()).forEach((subject) => subject.error(err));
1667
1676
  }));
1668
1677
  });
@@ -1783,9 +1792,9 @@ class ActivityComponent {
1783
1792
  }
1784
1793
  generateDescription(prefix, suffix, namesArray, unknownCount) {
1785
1794
  let resultText = prefix;
1786
- resultText += namesArray.map(activityInfo => `${activityInfo.forename} ${activityInfo.surname}`).join(', ');
1795
+ resultText += namesArray.map(activityInfo => activityInfo.forename + ' ' + activityInfo.surname).join(', ');
1787
1796
  if (unknownCount > 0) {
1788
- resultText += (namesArray.length > 0 ? ` and ${unknownCount} other` : `${unknownCount} user`);
1797
+ resultText += (namesArray.length > 0 ? ' and ' + unknownCount + ' other' : unknownCount + ' user');
1789
1798
  resultText += (unknownCount > 1 ? 's' : '');
1790
1799
  }
1791
1800
  else {
@@ -1793,10 +1802,10 @@ class ActivityComponent {
1793
1802
  }
1794
1803
  if (suffix.length > 0) {
1795
1804
  if (namesArray.length + unknownCount > 1) {
1796
- resultText += ` are ${suffix}`;
1805
+ resultText += ' are ' + suffix;
1797
1806
  }
1798
1807
  else {
1799
- resultText += ` is ${suffix}`;
1808
+ resultText += ' is ' + suffix;
1800
1809
  }
1801
1810
  }
1802
1811
  return resultText;
@@ -2309,7 +2318,7 @@ class FormatTranslatorService {
2309
2318
  break;
2310
2319
  case 'n':
2311
2320
  case 'N':
2312
- maybePush(result, `***${c}***`, inQuote); // No way to support A - millisec of day, n - nano of second, N - nano of Day
2321
+ maybePush(result, '***' + c + '***', inQuote); // No way to support A - millisec of day, n - nano of second, N - nano of Day
2313
2322
  break;
2314
2323
  case 'V':
2315
2324
  case 'O':
@@ -2432,9 +2441,9 @@ class DatePipe {
2432
2441
  resultDate = `${offsetDate.getDate()} ${DatePipe.MONTHS[offsetDate.getMonth()]} ${offsetDate.getFullYear()}`;
2433
2442
  if (match[4] && match[5] && match[6] && format !== 'short') {
2434
2443
  resultDate += ', ';
2435
- resultDate += `${this.getHour(offsetDate.getHours().toString())}:`;
2436
- resultDate += `${this.pad(offsetDate.getMinutes())}:`;
2437
- resultDate += `${this.pad(offsetDate.getSeconds())} `;
2444
+ resultDate += this.getHour(offsetDate.getHours().toString()) + ':';
2445
+ resultDate += this.pad(offsetDate.getMinutes()) + ':';
2446
+ resultDate += this.pad(offsetDate.getSeconds()) + ' ';
2438
2447
  resultDate += (this.toInt(offsetDate.getHours().toString()) >= 12) ? 'PM' : 'AM';
2439
2448
  }
2440
2449
  }
@@ -3115,25 +3124,25 @@ class OrganisationConverter {
3115
3124
  static toSimpleAddress(organisationModel) {
3116
3125
  let simpleAddress = '';
3117
3126
  if (organisationModel.addressLine1) {
3118
- simpleAddress += `${organisationModel.addressLine1}<br>`;
3127
+ simpleAddress += organisationModel.addressLine1 + '<br>';
3119
3128
  }
3120
3129
  if (organisationModel.addressLine2) {
3121
- simpleAddress += `${organisationModel.addressLine2}<br>`;
3130
+ simpleAddress += organisationModel.addressLine2 + '<br>';
3122
3131
  }
3123
3132
  if (organisationModel.addressLine3) {
3124
- simpleAddress += `${organisationModel.addressLine3}<br>`;
3133
+ simpleAddress += organisationModel.addressLine3 + '<br>';
3125
3134
  }
3126
3135
  if (organisationModel.townCity) {
3127
- simpleAddress += `${organisationModel.townCity}<br>`;
3136
+ simpleAddress += organisationModel.townCity + '<br>';
3128
3137
  }
3129
3138
  if (organisationModel.county) {
3130
- simpleAddress += `${organisationModel.county}<br>`;
3139
+ simpleAddress += organisationModel.county + '<br>';
3131
3140
  }
3132
3141
  if (organisationModel.country) {
3133
- simpleAddress += `${organisationModel.country}<br>`;
3142
+ simpleAddress += organisationModel.country + '<br>';
3134
3143
  }
3135
3144
  if (organisationModel.postCode) {
3136
- simpleAddress += `${organisationModel.postCode}<br>`;
3145
+ simpleAddress += organisationModel.postCode + '<br>';
3137
3146
  }
3138
3147
  return simpleAddress;
3139
3148
  }
@@ -3266,9 +3275,9 @@ class FieldsUtils {
3266
3275
  });
3267
3276
  return valueMap;
3268
3277
  }
3269
- // public static getType(elem: any): string {
3270
- // return Object.prototype.toString.call(elem).slice(8, -1);
3271
- // }
3278
+ static getType(elem) {
3279
+ return Object.prototype.toString.call(elem).slice(8, -1);
3280
+ }
3272
3281
  static isObject(elem) {
3273
3282
  return typeof elem === 'object' && elem !== null;
3274
3283
  }
@@ -3912,6 +3921,7 @@ class ConditionParser {
3912
3921
  if (!condition) {
3913
3922
  return null;
3914
3923
  }
3924
+ ;
3915
3925
  condition = condition.replace(/CONTAINS/g, ' CONTAINS');
3916
3926
  return peg.parse(condition.trim(), {});
3917
3927
  }
@@ -3924,12 +3934,14 @@ class ConditionParser {
3924
3934
  if (!conditions || conditions.length === 0) {
3925
3935
  return true;
3926
3936
  }
3937
+ ;
3927
3938
  const validJoinComparators = ['AND', 'OR'];
3928
- return conditions.reduce((accumulator, condition, index) => {
3939
+ const result = conditions.reduce((accumulator, condition, index) => {
3929
3940
  const isJoinComparator = (comparator) => (typeof comparator === 'string' && validJoinComparators.indexOf(comparator) !== -1);
3930
3941
  if (isJoinComparator(condition)) {
3931
3942
  return accumulator;
3932
3943
  }
3944
+ ;
3933
3945
  let currentConditionResult = true;
3934
3946
  if (Array.isArray(condition)) {
3935
3947
  currentConditionResult = this.evaluate(fields, condition);
@@ -3946,6 +3958,7 @@ class ConditionParser {
3946
3958
  }
3947
3959
  return currentConditionResult;
3948
3960
  }, true);
3961
+ return result;
3949
3962
  }
3950
3963
  static evaluateJoin(leftResult, comparator, rightResult) {
3951
3964
  switch (comparator) {
@@ -4150,8 +4163,8 @@ class ShowCondition {
4150
4163
  if (originalCondition.indexOf(condition.fieldReference) > -1) {
4151
4164
  if (this.processedList && this.processedList.indexOf(condition.fieldReference) === -1) {
4152
4165
  this.processedList.push(condition.fieldReference);
4153
- const regularExp = new RegExp(`(\\b)${condition.fieldReference}(?=[^"]*(?:"[^"]*"[^"]*)*$)(\\b)`, 'g');
4154
- return originalCondition.replace(regularExp, `${pathPrefix}.${condition.fieldReference}`);
4166
+ const regularExp = new RegExp('(\\b)' + condition.fieldReference + '(?=[^"]*(?:"[^"]*"[^"]*)*$)(\\b)', 'g');
4167
+ return originalCondition.replace(regularExp, pathPrefix + '.' + condition.fieldReference);
4155
4168
  }
4156
4169
  else {
4157
4170
  return originalCondition;
@@ -4673,14 +4686,14 @@ class FieldsPurger {
4673
4686
  const formFields = form.getRawValue();
4674
4687
  const currentPage = wizard.getPage(currentPageId, this.fieldsUtils.buildCanShowPredicate(eventTrigger, form));
4675
4688
  currentPage.wizard_page_fields.forEach(wpf => {
4676
- const caseField = this.findCaseFieldByWizardPageFieldId(currentPage, wpf);
4677
- if (this.hasShowConditionField(caseField, formFields)) {
4678
- const condition = new ShowCondition(caseField.show_condition);
4679
- if (this.isHidden(condition, formFields.data) && !(this.isReadonly(caseField))) {
4680
- this.resetField(form, caseField);
4689
+ const case_field = this.findCaseFieldByWizardPageFieldId(currentPage, wpf);
4690
+ if (this.hasShowConditionField(case_field, formFields)) {
4691
+ const condition = new ShowCondition(case_field.show_condition);
4692
+ if (this.isHidden(condition, formFields.data) && !(this.isReadonly(case_field))) {
4693
+ this.resetField(form, case_field);
4681
4694
  }
4682
4695
  }
4683
- this.retainHiddenValueByFieldType(caseField, form);
4696
+ this.retainHiddenValueByFieldType(case_field, form);
4684
4697
  });
4685
4698
  }
4686
4699
  retainHiddenValueByFieldType(field, form) {
@@ -4711,13 +4724,13 @@ class FieldsPurger {
4711
4724
  hasShowConditionPage(wizardPage, formFields) {
4712
4725
  return wizardPage.show_condition && formFields[this.getShowConditionKey(wizardPage.show_condition)];
4713
4726
  }
4714
- hasShowConditionField(caseField, formFields) {
4715
- return caseField.show_condition && formFields.data[this.getShowConditionKey(caseField.show_condition)];
4727
+ hasShowConditionField(case_field, formFields) {
4728
+ return case_field.show_condition && formFields.data[this.getShowConditionKey(case_field.show_condition)];
4716
4729
  }
4717
- getShowConditionKey(showCondition) {
4730
+ getShowConditionKey(show_condition) {
4718
4731
  // Need to allow for negated conditions, i.e. !=, as well as regular ones (=)
4719
4732
  // Also need to allow for conditions specified using the "CONTAINS" keyword
4720
- return showCondition.split(/!=|=|CONTAINS/)[0];
4733
+ return show_condition.split(/!=|=|CONTAINS/)[0];
4721
4734
  }
4722
4735
  resetField(form, field) {
4723
4736
  /**
@@ -4789,8 +4802,8 @@ class FieldsPurger {
4789
4802
  }
4790
4803
  resetPage(form, wizardPage) {
4791
4804
  wizardPage.wizard_page_fields.forEach(wpf => {
4792
- const caseField = this.findCaseFieldByWizardPageFieldId(wizardPage, wpf);
4793
- this.resetField(form, caseField);
4805
+ const case_field = this.findCaseFieldByWizardPageFieldId(wizardPage, wpf);
4806
+ this.resetField(form, case_field);
4794
4807
  });
4795
4808
  }
4796
4809
  getType(elem) {
@@ -4800,8 +4813,8 @@ class FieldsPurger {
4800
4813
  return this.getType(elem) === 'Object';
4801
4814
  }
4802
4815
  // TODO: call isReadOnly on CaseFields once we make it available
4803
- isReadonly(caseField) {
4804
- return caseField.display_context.toUpperCase() === 'READONLY';
4816
+ isReadonly(case_field) {
4817
+ return case_field.display_context.toUpperCase() === 'READONLY';
4805
4818
  }
4806
4819
  /**
4807
4820
  * Deletes a field value by setting the value of the corresponding {@link FormControl} to null (or an empty array
@@ -5533,6 +5546,7 @@ class FormValueService {
5533
5546
  });
5534
5547
  }
5535
5548
  }
5549
+ ;
5536
5550
  });
5537
5551
  }
5538
5552
  }
@@ -5946,7 +5960,7 @@ class AddressParser {
5946
5960
  return addressModel;
5947
5961
  }
5948
5962
  parseAddressLine1(classification, address) {
5949
- let addressLine;
5963
+ let addressLine = '';
5950
5964
  if (classification === AddressType.RD06) {
5951
5965
  addressLine =
5952
5966
  `${address.SUB_BUILDING_NAME} ${address.ORGANISATION_NAME} ${address.DEPARTMENT_NAME} ${address.PO_BOX_NUMBER}`;
@@ -5959,7 +5973,7 @@ class AddressParser {
5959
5973
  return this.removeNonAddressValues(addressLine);
5960
5974
  }
5961
5975
  parseAddressLine2(classification, address) {
5962
- let addressLine;
5976
+ let addressLine = '';
5963
5977
  if (classification === AddressType.RD06) {
5964
5978
  addressLine = `${address.BUILDING_NAME} `;
5965
5979
  }
@@ -5970,7 +5984,7 @@ class AddressParser {
5970
5984
  return this.removeNonAddressValues(addressLine);
5971
5985
  }
5972
5986
  parseAddressLine3(classification, address) {
5973
- let addressLine;
5987
+ let addressLine = '';
5974
5988
  if (classification === AddressType.RD06) {
5975
5989
  addressLine =
5976
5990
  `${address.BUILDING_NUMBER} ${address.THOROUGHFARE_NAME}`;
@@ -5998,7 +6012,7 @@ class AddressParser {
5998
6012
  return value.replace(new RegExp('^,', 'gi'), '');
5999
6013
  }
6000
6014
  prefixWithCommaIfPresent(value) {
6001
- return value ? `, ${value}` : value;
6015
+ return value ? ', ' + value : value;
6002
6016
  }
6003
6017
  }
6004
6018
 
@@ -6107,7 +6121,7 @@ class CaseFlagRefdataService {
6107
6121
  if (flagType) {
6108
6122
  url += `?flag-type=${flagType}`;
6109
6123
  }
6110
- if (typeof welshRequired === 'boolean') {
6124
+ if (welshRequired != null) {
6111
6125
  // Check if flag-type has been added to the query string; if so, append welsh-required with '&'
6112
6126
  url.indexOf('?') > -1 ? url += '&' : url += '?';
6113
6127
  welshRequired ? url += 'welsh-required=Y' : url += 'welsh-required=N';
@@ -6564,6 +6578,11 @@ RequestOptionsBuilder.ɵprov = i0.ɵɵdefineInjectable({ token: RequestOptionsBu
6564
6578
  type: Injectable
6565
6579
  }], null, null); })();
6566
6580
 
6581
+ class HasLoadingState {
6582
+ get isLoading() {
6583
+ return;
6584
+ }
6585
+ }
6567
6586
  class LoadingService {
6568
6587
  constructor() {
6569
6588
  this.registered = new Map();
@@ -6584,7 +6603,7 @@ class LoadingService {
6584
6603
  }
6585
6604
  generateToken() {
6586
6605
  const timestamp = window.performance.now();
6587
- return `toolkit-loading-${timestamp}`; // format: [source-library]-[unique incrementing number]
6606
+ return 'toolkit-loading-' + timestamp; // format: [source-library]-[unique incrementing number]
6588
6607
  }
6589
6608
  }
6590
6609
  LoadingService.ɵfac = function LoadingService_Factory(t) { return new (t || LoadingService)(); };
@@ -6601,7 +6620,10 @@ class SearchService {
6601
6620
  this.loadingService = loadingService;
6602
6621
  }
6603
6622
  search(jurisdictionId, caseTypeId, metaCriteria, caseCriteria, view) {
6604
- const url = `${this.appConfig.getApiUrl()}/caseworkers/:uid/jurisdictions/${jurisdictionId}/case-types/${caseTypeId}/cases`;
6623
+ const url = this.appConfig.getApiUrl() + `/caseworkers/:uid`
6624
+ + `/jurisdictions/${jurisdictionId}`
6625
+ + `/case-types/${caseTypeId}`
6626
+ + `/cases`;
6605
6627
  const options = this.requestOptionsBuilder.buildOptions(metaCriteria, caseCriteria, view);
6606
6628
  const loadingToken = this.loadingService.register();
6607
6629
  return this.httpService
@@ -6609,13 +6631,14 @@ class SearchService {
6609
6631
  .pipe(map(response => response), finalize(() => this.loadingService.unregister(loadingToken)));
6610
6632
  }
6611
6633
  searchCasesByIds(caseTypeId, filter, view, sort) {
6612
- const url = `${this.appConfig.getCaseDataUrl()}/internal/searchCases?ctid=${caseTypeId}&use_case=${view}`;
6634
+ const url = this.appConfig.getCaseDataUrl() +
6635
+ `/internal/searchCases?ctid=${caseTypeId}&use_case=${view}`;
6613
6636
  const body = Object.assign(Object.assign({ sort }, filter), { size: this.appConfig.getPaginationPageSize() });
6614
6637
  const loadingToken = this.loadingService.register();
6615
6638
  return this.httpService.post(url, body).pipe(map((response) => response), finalize(() => this.loadingService.unregister(loadingToken)));
6616
6639
  }
6617
6640
  searchCases(caseTypeId, metaCriteria, caseCriteria, view, sort) {
6618
- const url = `${this.appConfig.getCaseDataUrl()}/internal/searchCases?ctid=${caseTypeId}&use_case=${view}`;
6641
+ const url = this.appConfig.getCaseDataUrl() + `/internal/searchCases?ctid=${caseTypeId}&use_case=${view}`;
6619
6642
  const options = this.requestOptionsBuilder.buildOptions(metaCriteria, caseCriteria, view);
6620
6643
  const body = {
6621
6644
  sort,
@@ -6658,8 +6681,9 @@ class SearchService {
6658
6681
  }
6659
6682
  }
6660
6683
  SearchService.V2_MEDIATYPE_SEARCH_INPUTS = 'application/vnd.uk.gov.hmcts.ccd-data-store-api.ui-search-input-details.v2+json;charset=UTF-8';
6661
- // public static readonly VIEW_SEARCH = 'SEARCH';
6684
+ SearchService.VIEW_SEARCH = 'SEARCH';
6662
6685
  SearchService.VIEW_WORKBASKET = 'WORKBASKET';
6686
+ SearchService.FIELD_PREFIX = 'case.';
6663
6687
  SearchService.ɵfac = function SearchService_Factory(t) { return new (t || SearchService)(i0.ɵɵinject(AbstractAppConfig), i0.ɵɵinject(HttpService), i0.ɵɵinject(RequestOptionsBuilder), i0.ɵɵinject(LoadingService)); };
6664
6688
  SearchService.ɵprov = i0.ɵɵdefineInjectable({ token: SearchService, factory: SearchService.ɵfac });
6665
6689
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SearchService, [{
@@ -6773,12 +6797,17 @@ class DefinitionsService {
6773
6797
  this.appConfig = appConfig;
6774
6798
  }
6775
6799
  getCaseTypes(jurisdictionId, access) {
6776
- const url = `${this.appConfig.getApiUrl()}/caseworkers/:uid/jurisdictions/${jurisdictionId}/case-types?access=${access}`;
6800
+ const url = this.appConfig.getApiUrl()
6801
+ + `/caseworkers/:uid`
6802
+ + `/jurisdictions/${jurisdictionId}`
6803
+ + `/case-types?access=${access}`;
6777
6804
  return this.http
6778
6805
  .get(url).pipe(map(response => response));
6779
6806
  }
6780
6807
  getJurisdictions(access) {
6781
- const url = `${this.appConfig.getApiUrl()}/caseworkers/:uid/jurisdictions?access=${access}`;
6808
+ const url = this.appConfig.getApiUrl()
6809
+ + `/caseworkers/:uid`
6810
+ + `/jurisdictions?access=${access}`;
6782
6811
  return this.http
6783
6812
  .get(url)
6784
6813
  .pipe(map(response => response));
@@ -6850,8 +6879,8 @@ class SearchResultViewItemComparatorFactory {
6850
6879
  compare(a, b) {
6851
6880
  let fieldA = a.case_fields[fieldId];
6852
6881
  let fieldB = b.case_fields[fieldId];
6853
- fieldA = isUndefined(fieldA) || fieldA === null ? '' : fieldA.toLowerCase();
6854
- fieldB = isUndefined(fieldB) || fieldB === null ? '' : fieldB.toLowerCase();
6882
+ fieldA = isUndefined(fieldA) || fieldA == null ? '' : fieldA.toLowerCase();
6883
+ fieldB = isUndefined(fieldB) || fieldB == null ? '' : fieldB.toLowerCase();
6855
6884
  return fieldA === fieldB ? 0 : fieldA > fieldB ? 1 : -1;
6856
6885
  }
6857
6886
  };
@@ -6861,8 +6890,8 @@ class SearchResultViewItemComparatorFactory {
6861
6890
  compare(a, b) {
6862
6891
  let fieldA = a.case_fields[fieldId];
6863
6892
  let fieldB = b.case_fields[fieldId];
6864
- fieldA = isUndefined(fieldA) || fieldA === null ? '' : fieldA.join().toLowerCase();
6865
- fieldB = isUndefined(fieldB) || fieldB === null ? '' : fieldB.join().toLowerCase();
6893
+ fieldA = isUndefined(fieldA) || fieldA == null ? '' : fieldA.join().toLowerCase();
6894
+ fieldB = isUndefined(fieldB) || fieldB == null ? '' : fieldB.join().toLowerCase();
6866
6895
  return fieldA === fieldB ? 0 : fieldA > fieldB ? 1 : -1;
6867
6896
  }
6868
6897
  };
@@ -7128,7 +7157,7 @@ class WizardPageFieldToCaseFieldMapper {
7128
7157
  });
7129
7158
  }
7130
7159
  preparePathPrefix(pathPrefix, caseField) {
7131
- return pathPrefix.length === 0 ? caseField : `${pathPrefix}.${caseField}`;
7160
+ return pathPrefix.length === 0 ? caseField : pathPrefix + '.' + caseField;
7132
7161
  }
7133
7162
  getCaseFieldLeaf(caseFieldId, caseFields) {
7134
7163
  const [head, ...tail] = caseFieldId;
@@ -7181,13 +7210,215 @@ WizardPageFieldToCaseFieldMapper.ɵprov = i0.ɵɵdefineInjectable({ token: Wizar
7181
7210
  }]
7182
7211
  }], null, null); })();
7183
7212
 
7213
+ const MULTIPLE_TASKS_FOUND = 'More than one task found!';
7214
+ class WorkAllocationService {
7215
+ constructor(http, appConfig, errorService, alertService, sessionStorageService) {
7216
+ this.http = http;
7217
+ this.appConfig = appConfig;
7218
+ this.errorService = errorService;
7219
+ this.alertService = alertService;
7220
+ this.sessionStorageService = sessionStorageService;
7221
+ // Check to see if work allocation is enabled
7222
+ }
7223
+ /**
7224
+ * Call the API to get tasks matching the search criteria.
7225
+ * @param searchRequest The search parameters that specify which tasks to match.
7226
+ */
7227
+ searchTasks(searchRequest) {
7228
+ // Do not need to check if WA enabled as parent method will do that
7229
+ const url = `${this.appConfig.getWorkAllocationApiUrl()}/searchForCompletable`;
7230
+ return this.http
7231
+ .post(url, { searchRequest }, null, false)
7232
+ .pipe(map(response => response), catchError(error => {
7233
+ this.errorService.setError(error);
7234
+ // explicitly eat away 401 error and 400 error
7235
+ if (error && error.status && (error.status === 401 || error.status === 400)) {
7236
+ // do nothing
7237
+ console.log('error status 401 or 400', error);
7238
+ }
7239
+ else {
7240
+ return throwError(error);
7241
+ }
7242
+ }));
7243
+ }
7244
+ isWAEnabled(jurisdiction, caseType) {
7245
+ this.features = this.appConfig.getWAServiceConfig();
7246
+ let enabled = false;
7247
+ if (!jurisdiction || !caseType) {
7248
+ const caseInfo = JSON.parse(this.sessionStorageService.getItem('caseInfo'));
7249
+ jurisdiction = caseInfo.jurisdiction;
7250
+ caseType = caseInfo.caseType;
7251
+ }
7252
+ if (!this.features || !this.features.configurations) {
7253
+ return false;
7254
+ }
7255
+ this.features.configurations.forEach(serviceConfig => {
7256
+ if (serviceConfig.serviceName === jurisdiction && (serviceConfig.caseTypes.indexOf(caseType) !== -1)) {
7257
+ enabled = true;
7258
+ }
7259
+ });
7260
+ return enabled;
7261
+ }
7262
+ /**
7263
+ * Call the API to assign a task.
7264
+ * @param taskId specifies which task should be assigned.
7265
+ * @param userId specifies the user the task should be assigned to.
7266
+ */
7267
+ assignTask(taskId, userId) {
7268
+ if (!this.isWAEnabled()) {
7269
+ return of(null);
7270
+ }
7271
+ const url = `${this.appConfig.getWorkAllocationApiUrl()}/task/${taskId}/assign`;
7272
+ return this.http
7273
+ .post(url, { userId })
7274
+ .pipe(catchError(error => {
7275
+ this.errorService.setError(error);
7276
+ return throwError(error);
7277
+ }));
7278
+ }
7279
+ /**
7280
+ * Call the API to complete a task.
7281
+ * @param taskId specifies which task should be completed.
7282
+ */
7283
+ completeTask(taskId) {
7284
+ if (!this.isWAEnabled()) {
7285
+ return of(null);
7286
+ }
7287
+ const url = `${this.appConfig.getWorkAllocationApiUrl()}/task/${taskId}/complete`;
7288
+ return this.http
7289
+ .post(url, {})
7290
+ .pipe(catchError(error => {
7291
+ this.errorService.setError(error);
7292
+ // this will subscribe to get the user details and decide whether to display an error message
7293
+ this.http.get(this.appConfig.getUserInfoApiUrl()).pipe(map(response => response)).subscribe((response) => {
7294
+ this.handleTaskCompletionError(response);
7295
+ });
7296
+ return throwError(error);
7297
+ }));
7298
+ }
7299
+ /**
7300
+ * Call the API to assign and complete a task.
7301
+ * @param taskId specifies which task should be completed.
7302
+ */
7303
+ assignAndCompleteTask(taskId) {
7304
+ if (!this.isWAEnabled()) {
7305
+ return of(null);
7306
+ }
7307
+ const url = `${this.appConfig.getWorkAllocationApiUrl()}/task/${taskId}/complete`;
7308
+ return this.http
7309
+ .post(url, {
7310
+ completion_options: {
7311
+ assign_and_complete: true
7312
+ }
7313
+ })
7314
+ .pipe(catchError(error => {
7315
+ this.errorService.setError(error);
7316
+ // this will subscribe to get the user details and decide whether to display an error message
7317
+ this.http.get(this.appConfig.getUserInfoApiUrl()).pipe(map(response => response)).subscribe((response) => {
7318
+ this.handleTaskCompletionError(response);
7319
+ });
7320
+ return throwError(error);
7321
+ }));
7322
+ }
7323
+ /**
7324
+ * Handles the response from the observable to get the user details when task is completed.
7325
+ * @param response is the response given from the observable which contains the user detaild.
7326
+ */
7327
+ handleTaskCompletionError(response) {
7328
+ const userDetails = response;
7329
+ if (this.userIsCaseworker(userDetails.userInfo.roles)) {
7330
+ // when submitting the completion of task if not yet rendered cases/case confirm then preserve the alert for re-rendering
7331
+ this.alertService.setPreserveAlerts(true, ['cases/case', 'submit']);
7332
+ this.alertService.warning('A task could not be completed successfully. Please complete the task associated with the case manually.');
7333
+ }
7334
+ }
7335
+ /**
7336
+ * Returns true if the user's role is equivalent to a caseworker.
7337
+ * @param roles is the list of roles found from the current user.
7338
+ */
7339
+ userIsCaseworker(roles) {
7340
+ const lowerCaseRoles = roles.map(role => role.toLowerCase());
7341
+ // When/if lib & target permanently change to es2016, replace indexOf with includes
7342
+ return (lowerCaseRoles.indexOf(WorkAllocationService.iACCaseOfficer) !== -1)
7343
+ || (lowerCaseRoles.indexOf(WorkAllocationService.iACAdmOfficer) !== -1);
7344
+ }
7345
+ /**
7346
+ * Look for open tasks for a case and event combination. There are 5 possible scenarios:
7347
+ * 1. No tasks found => Success.
7348
+ * 2. One task found => Mark as done => Success.
7349
+ * 3. One task found => Mark as done throws error => Failure.
7350
+ * 4. More than one task found => Failure.
7351
+ * 5. Search call throws an error => Failure.
7352
+ * @param ccdId The ID of the case to find tasks for.
7353
+ * @param eventId The ID of the event to find tasks for.
7354
+ */
7355
+ completeAppropriateTask(ccdId, eventId, jurisdiction, caseTypeId) {
7356
+ if (!this.isWAEnabled(jurisdiction, caseTypeId)) {
7357
+ return of(null);
7358
+ }
7359
+ const taskSearchParameter = {
7360
+ ccdId,
7361
+ eventId,
7362
+ jurisdiction,
7363
+ caseTypeId
7364
+ };
7365
+ return this.searchTasks(taskSearchParameter)
7366
+ .pipe(map((response) => {
7367
+ const tasks = response.tasks;
7368
+ if (tasks && tasks.length > 0) {
7369
+ if (tasks.length === 1) {
7370
+ this.completeTask(tasks[0].id).subscribe();
7371
+ }
7372
+ else {
7373
+ // This is a problem. Throw an appropriate error.
7374
+ throw new Error(MULTIPLE_TASKS_FOUND);
7375
+ }
7376
+ }
7377
+ return true; // All good. Nothing to see here.
7378
+ }), catchError(error => {
7379
+ // Simply rethrow it.
7380
+ return throwError(error);
7381
+ }));
7382
+ }
7383
+ /**
7384
+ * Return tasks for case and event.
7385
+ */
7386
+ getTasksByCaseIdAndEventId(eventId, caseId, caseType, jurisdiction) {
7387
+ const defaultPayload = {
7388
+ task_required_for_event: false,
7389
+ tasks: []
7390
+ };
7391
+ if (!this.isWAEnabled()) {
7392
+ return of(defaultPayload);
7393
+ }
7394
+ return this.http.get(`${this.appConfig.getWorkAllocationApiUrl()}/case/tasks/${caseId}/event/${eventId}/caseType/${caseType}/jurisdiction/${jurisdiction}`);
7395
+ }
7396
+ /**
7397
+ * Call the API to get a task
7398
+ */
7399
+ getTask(taskId) {
7400
+ if (!this.isWAEnabled()) {
7401
+ return of({ task: null });
7402
+ }
7403
+ return this.http.get(`${this.appConfig.getWorkAllocationApiUrl()}/task/${taskId}`);
7404
+ }
7405
+ }
7406
+ WorkAllocationService.iACCaseOfficer = 'caseworker-ia-caseofficer';
7407
+ WorkAllocationService.iACAdmOfficer = 'caseworker-ia-admofficer';
7408
+ 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)); };
7409
+ WorkAllocationService.ɵprov = i0.ɵɵdefineInjectable({ token: WorkAllocationService, factory: WorkAllocationService.ɵfac });
7410
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(WorkAllocationService, [{
7411
+ type: Injectable
7412
+ }], function () { return [{ type: HttpService }, { type: AbstractAppConfig }, { type: HttpErrorService }, { type: AlertService }, { type: SessionStorageService }]; }, null); })();
7413
+
7184
7414
  class CasesService {
7185
- constructor(http, appConfig, orderService, errorService, wizardPageFieldToCaseFieldMapper, loadingService, sessionStorageService) {
7415
+ constructor(http, appConfig, orderService, errorService, wizardPageFieldToCaseFieldMapper, workAllocationService, loadingService, sessionStorageService) {
7186
7416
  this.http = http;
7187
7417
  this.appConfig = appConfig;
7188
7418
  this.orderService = orderService;
7189
7419
  this.errorService = errorService;
7190
7420
  this.wizardPageFieldToCaseFieldMapper = wizardPageFieldToCaseFieldMapper;
7421
+ this.workAllocationService = workAllocationService;
7191
7422
  this.loadingService = loadingService;
7192
7423
  this.sessionStorageService = sessionStorageService;
7193
7424
  this.get = this.getCaseView;
@@ -7205,7 +7436,11 @@ class CasesService {
7205
7436
  });
7206
7437
  }
7207
7438
  getCaseView(jurisdictionId, caseTypeId, caseId) {
7208
- const url = `${this.appConfig.getApiUrl()}/caseworkers/:uid/jurisdictions/${jurisdictionId}/case-types/${caseTypeId}/cases/${caseId}`;
7439
+ const url = this.appConfig.getApiUrl()
7440
+ + `/caseworkers/:uid`
7441
+ + `/jurisdictions/${jurisdictionId}`
7442
+ + `/case-types/${caseTypeId}`
7443
+ + `/cases/${caseId}`;
7209
7444
  const loadingToken = this.loadingService.register();
7210
7445
  return this.http
7211
7446
  .get(url)
@@ -7254,7 +7489,7 @@ class CasesService {
7254
7489
  }
7255
7490
  createEvent(caseDetails, eventData) {
7256
7491
  const caseId = caseDetails.case_id;
7257
- const url = `${this.appConfig.getCaseDataUrl()}/cases/${caseId}/events`;
7492
+ const url = this.appConfig.getCaseDataUrl() + `/cases/${caseId}/events`;
7258
7493
  const headers = new HttpHeaders()
7259
7494
  .set('experimental', 'true')
7260
7495
  .set('Accept', CasesService.V2_MEDIATYPE_CREATE_EVENT)
@@ -7267,8 +7502,9 @@ class CasesService {
7267
7502
  }));
7268
7503
  }
7269
7504
  validateCase(ctid, eventData, pageId) {
7270
- const pageIdString = pageId ? `?pageId=${pageId}` : '';
7271
- const url = `${this.appConfig.getCaseDataUrl()}/case-types/${ctid}/validate${pageIdString}`;
7505
+ const pageIdString = pageId ? '?pageId=' + pageId : '';
7506
+ const url = this.appConfig.getCaseDataUrl()
7507
+ + `/case-types/${ctid}/validate${pageIdString}`;
7272
7508
  const headers = new HttpHeaders()
7273
7509
  .set('experimental', 'true')
7274
7510
  .set('Accept', CasesService.V2_MEDIATYPE_CASE_DATA_VALIDATE)
@@ -7285,7 +7521,8 @@ class CasesService {
7285
7521
  if (eventData.ignore_warning) {
7286
7522
  ignoreWarning = 'true';
7287
7523
  }
7288
- const url = `${this.appConfig.getCaseDataUrl()}/case-types/${ctid}/cases?ignore-warning=${ignoreWarning}`;
7524
+ const url = this.appConfig.getCaseDataUrl()
7525
+ + `/case-types/${ctid}/cases?ignore-warning=${ignoreWarning}`;
7289
7526
  const headers = new HttpHeaders()
7290
7527
  .set('experimental', 'true')
7291
7528
  .set('Accept', CasesService.V2_MEDIATYPE_CREATE_CASE)
@@ -7298,7 +7535,9 @@ class CasesService {
7298
7535
  }));
7299
7536
  }
7300
7537
  getPrintDocuments(caseId) {
7301
- const url = `${this.appConfig.getCaseDataUrl()}/cases/${caseId}/documents`;
7538
+ const url = this.appConfig.getCaseDataUrl()
7539
+ + `/cases/${caseId}`
7540
+ + `/documents`;
7302
7541
  const headers = new HttpHeaders()
7303
7542
  .set('experimental', 'true')
7304
7543
  .set('Accept', CasesService.V2_MEDIATYPE_CASE_DOCUMENTS)
@@ -7311,7 +7550,7 @@ class CasesService {
7311
7550
  }));
7312
7551
  }
7313
7552
  buildEventTriggerUrl(caseTypeId, eventTriggerId, caseId, ignoreWarning) {
7314
- let url = `${this.appConfig.getCaseDataUrl()}/internal`;
7553
+ let url = this.appConfig.getCaseDataUrl() + `/internal`;
7315
7554
  if (Draft.isDraft(caseId)) {
7316
7555
  url += `/drafts/${caseId}`
7317
7556
  + `/event-trigger`
@@ -7405,11 +7644,11 @@ CasesService.V2_MEDIATYPE_CASE_DATA_VALIDATE = 'application/vnd.uk.gov.hmcts.ccd
7405
7644
  CasesService.V2_MEDIATYPE_CREATE_EVENT = 'application/vnd.uk.gov.hmcts.ccd-data-store-api.create-event.v2+json;charset=UTF-8';
7406
7645
  CasesService.V2_MEDIATYPE_CREATE_CASE = 'application/vnd.uk.gov.hmcts.ccd-data-store-api.create-case.v2+json;charset=UTF-8';
7407
7646
  CasesService.PUI_CASE_MANAGER = 'pui-case-manager';
7408
- 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)); };
7647
+ 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)); };
7409
7648
  CasesService.ɵprov = i0.ɵɵdefineInjectable({ token: CasesService, factory: CasesService.ɵfac });
7410
7649
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CasesService, [{
7411
7650
  type: Injectable
7412
- }], function () { return [{ type: HttpService }, { type: AbstractAppConfig }, { type: OrderService }, { type: HttpErrorService }, { type: WizardPageFieldToCaseFieldMapper }, { type: LoadingService }, { type: SessionStorageService }]; }, null); })();
7651
+ }], function () { return [{ type: HttpService }, { type: AbstractAppConfig }, { type: OrderService }, { type: HttpErrorService }, { type: WizardPageFieldToCaseFieldMapper }, { type: WorkAllocationService }, { type: LoadingService }, { type: SessionStorageService }]; }, null); })();
7413
7652
 
7414
7653
  class EventTriggerService {
7415
7654
  constructor() {
@@ -7983,7 +8222,7 @@ class PageValidationService {
7983
8222
  isHidden(caseField, editForm, path) {
7984
8223
  const formFields = editForm.getRawValue();
7985
8224
  const condition = ShowCondition.getInstance(caseField.show_condition);
7986
- if (path && path.indexOf(`_${caseField.id}_`) === -1) {
8225
+ if (path && path.indexOf('_' + caseField.id + '_') === -1) {
7987
8226
  path = `${path}${caseField.id}`;
7988
8227
  }
7989
8228
  return !condition.match(formFields.data, path);
@@ -8012,207 +8251,6 @@ PageValidationService.ɵprov = i0.ɵɵdefineInjectable({ token: PageValidationSe
8012
8251
  type: Injectable
8013
8252
  }], function () { return [{ type: CaseFieldService }]; }, null); })();
8014
8253
 
8015
- const MULTIPLE_TASKS_FOUND = 'More than one task found!';
8016
- class WorkAllocationService {
8017
- constructor(http, appConfig, errorService, alertService, sessionStorageService) {
8018
- this.http = http;
8019
- this.appConfig = appConfig;
8020
- this.errorService = errorService;
8021
- this.alertService = alertService;
8022
- this.sessionStorageService = sessionStorageService;
8023
- // Check to see if work allocation is enabled
8024
- }
8025
- /**
8026
- * Call the API to get tasks matching the search criteria.
8027
- * @param searchRequest The search parameters that specify which tasks to match.
8028
- */
8029
- searchTasks(searchRequest) {
8030
- // Do not need to check if WA enabled as parent method will do that
8031
- const url = `${this.appConfig.getWorkAllocationApiUrl()}/searchForCompletable`;
8032
- return this.http
8033
- .post(url, { searchRequest }, null, false)
8034
- .pipe(map(response => response), catchError(error => {
8035
- this.errorService.setError(error);
8036
- // explicitly eat away 401 error and 400 error
8037
- if (error && error.status && (error.status === 401 || error.status === 400)) {
8038
- // do nothing
8039
- console.log('error status 401 or 400', error);
8040
- }
8041
- else {
8042
- return throwError(error);
8043
- }
8044
- }));
8045
- }
8046
- isWAEnabled(jurisdiction, caseType) {
8047
- this.features = this.appConfig.getWAServiceConfig();
8048
- let enabled = false;
8049
- if (!jurisdiction || !caseType) {
8050
- const caseInfo = JSON.parse(this.sessionStorageService.getItem('caseInfo'));
8051
- jurisdiction = caseInfo.jurisdiction;
8052
- caseType = caseInfo.caseType;
8053
- }
8054
- if (!this.features || !this.features.configurations) {
8055
- return false;
8056
- }
8057
- this.features.configurations.forEach(serviceConfig => {
8058
- if (serviceConfig.serviceName === jurisdiction && (serviceConfig.caseTypes.indexOf(caseType) !== -1)) {
8059
- enabled = true;
8060
- }
8061
- });
8062
- return enabled;
8063
- }
8064
- /**
8065
- * Call the API to assign a task.
8066
- * @param taskId specifies which task should be assigned.
8067
- * @param userId specifies the user the task should be assigned to.
8068
- */
8069
- assignTask(taskId, userId) {
8070
- if (!this.isWAEnabled()) {
8071
- return of(null);
8072
- }
8073
- const url = `${this.appConfig.getWorkAllocationApiUrl()}/task/${taskId}/assign`;
8074
- return this.http
8075
- .post(url, { userId })
8076
- .pipe(catchError(error => {
8077
- this.errorService.setError(error);
8078
- return throwError(error);
8079
- }));
8080
- }
8081
- /**
8082
- * Call the API to complete a task.
8083
- * @param taskId specifies which task should be completed.
8084
- */
8085
- completeTask(taskId) {
8086
- if (!this.isWAEnabled()) {
8087
- return of(null);
8088
- }
8089
- const url = `${this.appConfig.getWorkAllocationApiUrl()}/task/${taskId}/complete`;
8090
- return this.http
8091
- .post(url, {})
8092
- .pipe(catchError(error => {
8093
- this.errorService.setError(error);
8094
- // this will subscribe to get the user details and decide whether to display an error message
8095
- this.http.get(this.appConfig.getUserInfoApiUrl()).pipe(map(response => response)).subscribe((response) => {
8096
- this.handleTaskCompletionError(response);
8097
- });
8098
- return throwError(error);
8099
- }));
8100
- }
8101
- /**
8102
- * Call the API to assign and complete a task.
8103
- * @param taskId specifies which task should be completed.
8104
- */
8105
- assignAndCompleteTask(taskId) {
8106
- if (!this.isWAEnabled()) {
8107
- return of(null);
8108
- }
8109
- const url = `${this.appConfig.getWorkAllocationApiUrl()}/task/${taskId}/complete`;
8110
- return this.http
8111
- .post(url, {
8112
- completion_options: {
8113
- assign_and_complete: true
8114
- }
8115
- })
8116
- .pipe(catchError(error => {
8117
- this.errorService.setError(error);
8118
- // this will subscribe to get the user details and decide whether to display an error message
8119
- this.http.get(this.appConfig.getUserInfoApiUrl()).pipe(map(response => response)).subscribe((response) => {
8120
- this.handleTaskCompletionError(response);
8121
- });
8122
- return throwError(error);
8123
- }));
8124
- }
8125
- /**
8126
- * Handles the response from the observable to get the user details when task is completed.
8127
- * @param response is the response given from the observable which contains the user detaild.
8128
- */
8129
- handleTaskCompletionError(response) {
8130
- const userDetails = response;
8131
- if (this.userIsCaseworker(userDetails.userInfo.roles)) {
8132
- // when submitting the completion of task if not yet rendered cases/case confirm then preserve the alert for re-rendering
8133
- this.alertService.setPreserveAlerts(true, ['cases/case', 'submit']);
8134
- this.alertService.warning('A task could not be completed successfully. Please complete the task associated with the case manually.');
8135
- }
8136
- }
8137
- /**
8138
- * Returns true if the user's role is equivalent to a caseworker.
8139
- * @param roles is the list of roles found from the current user.
8140
- */
8141
- userIsCaseworker(roles) {
8142
- const lowerCaseRoles = roles.map(role => role.toLowerCase());
8143
- // When/if lib & target permanently change to es2016, replace indexOf with includes
8144
- return (lowerCaseRoles.indexOf(WorkAllocationService.iACCaseOfficer) !== -1)
8145
- || (lowerCaseRoles.indexOf(WorkAllocationService.iACAdmOfficer) !== -1);
8146
- }
8147
- /**
8148
- * Look for open tasks for a case and event combination. There are 5 possible scenarios:
8149
- * 1. No tasks found => Success.
8150
- * 2. One task found => Mark as done => Success.
8151
- * 3. One task found => Mark as done throws error => Failure.
8152
- * 4. More than one task found => Failure.
8153
- * 5. Search call throws an error => Failure.
8154
- * @param ccdId The ID of the case to find tasks for.
8155
- * @param eventId The ID of the event to find tasks for.
8156
- */
8157
- completeAppropriateTask(ccdId, eventId, jurisdiction, caseTypeId) {
8158
- if (!this.isWAEnabled(jurisdiction, caseTypeId)) {
8159
- return of(null);
8160
- }
8161
- const taskSearchParameter = {
8162
- ccdId,
8163
- eventId,
8164
- jurisdiction,
8165
- caseTypeId
8166
- };
8167
- return this.searchTasks(taskSearchParameter)
8168
- .pipe(map((response) => {
8169
- const tasks = response.tasks;
8170
- if (tasks && tasks.length > 0) {
8171
- if (tasks.length === 1) {
8172
- this.completeTask(tasks[0].id).subscribe();
8173
- }
8174
- else {
8175
- // This is a problem. Throw an appropriate error.
8176
- throw new Error(MULTIPLE_TASKS_FOUND);
8177
- }
8178
- }
8179
- return true; // All good. Nothing to see here.
8180
- }), catchError(error => {
8181
- // Simply rethrow it.
8182
- return throwError(error);
8183
- }));
8184
- }
8185
- /**
8186
- * Return tasks for case and event.
8187
- */
8188
- getTasksByCaseIdAndEventId(eventId, caseId, caseType, jurisdiction) {
8189
- const defaultPayload = {
8190
- task_required_for_event: false,
8191
- tasks: []
8192
- };
8193
- if (!this.isWAEnabled()) {
8194
- return of(defaultPayload);
8195
- }
8196
- return this.http.get(`${this.appConfig.getWorkAllocationApiUrl()}/case/tasks/${caseId}/event/${eventId}/caseType/${caseType}/jurisdiction/${jurisdiction}`);
8197
- }
8198
- /**
8199
- * Call the API to get a task
8200
- */
8201
- getTask(taskId) {
8202
- if (!this.isWAEnabled()) {
8203
- return of({ task: null });
8204
- }
8205
- return this.http.get(`${this.appConfig.getWorkAllocationApiUrl()}/task/${taskId}`);
8206
- }
8207
- }
8208
- WorkAllocationService.iACCaseOfficer = 'caseworker-ia-caseofficer';
8209
- WorkAllocationService.iACAdmOfficer = 'caseworker-ia-admofficer';
8210
- 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)); };
8211
- WorkAllocationService.ɵprov = i0.ɵɵdefineInjectable({ token: WorkAllocationService, factory: WorkAllocationService.ɵfac });
8212
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(WorkAllocationService, [{
8213
- type: Injectable
8214
- }], function () { return [{ type: HttpService }, { type: AbstractAppConfig }, { type: HttpErrorService }, { type: AlertService }, { type: SessionStorageService }]; }, null); })();
8215
-
8216
8254
  class CaseEditComponent {
8217
8255
  constructor(fb, router, route, fieldsUtils, fieldsPurger, registrarService, wizardFactory, sessionStorageService, windowsService) {
8218
8256
  this.fb = fb;
@@ -9038,7 +9076,7 @@ class CaseEditPageComponent {
9038
9076
  const label = casefield.label || 'Field';
9039
9077
  let id = casefield.id;
9040
9078
  if (fieldElement['component'] && fieldElement['component'].parent) {
9041
- if (fieldElement['component'].idPrefix.indexOf(`_${id}_`) === -1) {
9079
+ if (fieldElement['component'].idPrefix.indexOf('_' + id + '_') === -1) {
9042
9080
  id = `${fieldElement['component'].idPrefix}${id}`;
9043
9081
  }
9044
9082
  else {
@@ -9524,7 +9562,7 @@ CallbackErrorsComponent.ɵcmp = i0.ɵɵdefineComponent({ type: CallbackErrorsCom
9524
9562
 
9525
9563
  class AddressOption {
9526
9564
  constructor(addressModel, description) {
9527
- if (description === null) {
9565
+ if (description == null) {
9528
9566
  this.value = addressModel;
9529
9567
  this.description = this.getDescription();
9530
9568
  }
@@ -9533,10 +9571,13 @@ class AddressOption {
9533
9571
  }
9534
9572
  }
9535
9573
  getDescription() {
9536
- return this.removeInitialCommaIfPresent(`${this.value.AddressLine1 === undefined ? '' : this.value.AddressLine1}${this.prefixWithCommaIfPresent(this.value.AddressLine2)}${this.prefixWithCommaIfPresent(this.value.AddressLine3)}, ${this.value.PostTown}`);
9574
+ return this.removeInitialCommaIfPresent((this.value.AddressLine1 === undefined ? '' : this.value.AddressLine1)
9575
+ + this.prefixWithCommaIfPresent(this.value.AddressLine2)
9576
+ + this.prefixWithCommaIfPresent(this.value.AddressLine3)
9577
+ + ', ' + this.value.PostTown);
9537
9578
  }
9538
9579
  prefixWithCommaIfPresent(value) {
9539
- return value ? `, ${value}` : value;
9580
+ return value ? ', ' + value : value;
9540
9581
  }
9541
9582
  removeInitialCommaIfPresent(value) {
9542
9583
  return value.replace(new RegExp('^,', 'gi'), '');
@@ -9924,7 +9965,7 @@ class WriteAddressFieldComponent extends AbstractFieldWriteComponent {
9924
9965
  this.missingPostcode = false;
9925
9966
  const postcode = this.postcode.value;
9926
9967
  this.caseField.value = null;
9927
- this.addressOptions = [];
9968
+ this.addressOptions = new Array();
9928
9969
  this.addressesService.getAddressesForPostcode(postcode.replace(' ', '').toUpperCase()).subscribe(result => {
9929
9970
  result.forEach(address => {
9930
9971
  this.addressOptions.push(new AddressOption(address, null));
@@ -9967,7 +10008,7 @@ class WriteAddressFieldComponent extends AbstractFieldWriteComponent {
9967
10008
  let hasAddress = false;
9968
10009
  if (address) {
9969
10010
  Object.keys(address).forEach((key) => {
9970
- if (address[key] !== null) {
10011
+ if (address[key] != null) {
9971
10012
  hasAddress = true;
9972
10013
  }
9973
10014
  });
@@ -9990,7 +10031,7 @@ class WriteAddressFieldComponent extends AbstractFieldWriteComponent {
9990
10031
  }
9991
10032
  defaultLabel(numberOfAddresses) {
9992
10033
  return numberOfAddresses === 0 ? 'No address found'
9993
- : `${numberOfAddresses}${numberOfAddresses === 1 ? ' address ' : ' addresses '}found`;
10034
+ : numberOfAddresses + (numberOfAddresses === 1 ? ' address ' : ' addresses ') + 'found';
9994
10035
  }
9995
10036
  setFormValue() {
9996
10037
  if (this.writeComplexFieldComponent.complexGroup) {
@@ -11528,16 +11569,16 @@ class WriteCollectionFieldComponent extends AbstractFieldWriteComponent {
11528
11569
  && this.collItems[i].caseField.id === counter.toString()) {
11529
11570
  this.collItems[i].caseField.id = i.toString();
11530
11571
  }
11531
- const idPrefix1 = this.collItems[i].prefix ? this.collItems[i].prefix.replace(`_${counter.toString()}`, `_${i.toString()}`) : '';
11532
- const idPrefix1Current = idPrefix1.replace(`_${i.toString()}`, `_${counter.toString()}`);
11572
+ const idPrefix1 = this.collItems[i].prefix ? this.collItems[i].prefix.replace('_' + counter.toString(), '_' + i.toString()) : '';
11573
+ const idPrefix1Current = idPrefix1.replace('_' + i.toString(), '_' + counter.toString());
11533
11574
  if (this.collItems[i].prefix && this.collItems[i].prefix === idPrefix1Current) {
11534
11575
  this.collItems[i].prefix = idPrefix1;
11535
11576
  }
11536
11577
  const idPrefixAvailable = this.collItems[i].container && this.collItems[i].container['component']
11537
11578
  && this.collItems[i].container['component'].idPrefix ? true : false;
11538
11579
  const idPrefix2 = idPrefixAvailable ?
11539
- this.collItems[i].container['component'].idPrefix.replace(`_${counter.toString()}`, `_${i.toString()}`) : '';
11540
- const idPrefix2current = idPrefix2.replace(`_${i.toString()}`, `_${counter.toString()}`);
11580
+ this.collItems[i].container['component'].idPrefix.replace('_' + counter.toString(), '_' + i.toString()) : '';
11581
+ const idPrefix2current = idPrefix2.replace('_' + i.toString(), '_' + counter.toString());
11541
11582
  if (idPrefixAvailable && this.collItems[i].container['component'].idPrefix === idPrefix2current) {
11542
11583
  this.collItems[i].container['component'].idPrefix = idPrefix2;
11543
11584
  }
@@ -13309,7 +13350,7 @@ class LinkedCasesService {
13309
13350
  casesResponse.push(this.mapResponse(result));
13310
13351
  });
13311
13352
  });
13312
- this.linkedCases = casesResponse.map(item => {
13353
+ const caseLinks = casesResponse.map(item => {
13313
13354
  return {
13314
13355
  caseReference: item.caseReference,
13315
13356
  caseName: item.caseName,
@@ -13323,6 +13364,7 @@ class LinkedCasesService {
13323
13364
  }),
13324
13365
  };
13325
13366
  });
13367
+ this.linkedCases = caseLinks;
13326
13368
  this.serverLinkedApiError = null;
13327
13369
  }, err => {
13328
13370
  this.serverLinkedApiError = {
@@ -15155,7 +15197,7 @@ class ReadLinkedCasesFieldComponent {
15155
15197
  this.caseField = (_a = tab === null || tab === void 0 ? void 0 : tab.fields) === null || _a === void 0 ? void 0 : _a.find(field => field.id === 'caseLinks');
15156
15198
  }
15157
15199
  this.isServerJurisdictionError = this.linkedCasesService.serverJurisdictionError || false;
15158
- const reasonCodeAPIurl = `${this.appConfig.getRDCommonDataApiUrl()}/lov/categories/CaseLinkingReasonCode`;
15200
+ const reasonCodeAPIurl = this.appConfig.getRDCommonDataApiUrl() + '/lov/categories/CaseLinkingReasonCode';
15159
15201
  this.commonDataService.getRefData(reasonCodeAPIurl).subscribe({
15160
15202
  next: reasons => {
15161
15203
  this.reasonListLoaded = true;
@@ -15390,7 +15432,7 @@ class WriteLinkedCasesFieldComponent extends AbstractFieldWriteComponent {
15390
15432
  }
15391
15433
  }
15392
15434
  getLinkedCaseReasons() {
15393
- const reasonCodeAPIurl = `${this.appConfig.getRDCommonDataApiUrl()}/lov/categories/CaseLinkingReasonCode`;
15435
+ const reasonCodeAPIurl = this.appConfig.getRDCommonDataApiUrl() + '/lov/categories/CaseLinkingReasonCode';
15394
15436
  this.commonDataService.getRefData(reasonCodeAPIurl).subscribe({
15395
15437
  next: reasons => {
15396
15438
  // Sort in ascending order
@@ -15448,7 +15490,8 @@ class WriteLinkedCasesFieldComponent extends AbstractFieldWriteComponent {
15448
15490
  getLinkedCases() {
15449
15491
  this.casesService.getCaseViewV2(this.linkedCasesService.caseId).subscribe((caseView) => {
15450
15492
  const caseViewFiltered = caseView.tabs.filter(tab => {
15451
- return tab.fields.some(({ field_type }) => field_type && field_type.collection_field_type && field_type.collection_field_type.id === 'CaseLink');
15493
+ const linkField = tab.fields.some(({ field_type }) => field_type && field_type.collection_field_type && field_type.collection_field_type.id === 'CaseLink');
15494
+ return linkField;
15452
15495
  });
15453
15496
  if (caseViewFiltered) {
15454
15497
  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; });
@@ -16938,7 +16981,7 @@ class WriteTextAreaFieldComponent extends AbstractFieldWriteComponent {
16938
16981
  autoGrow(event) {
16939
16982
  if (this.browserService.isIEOrEdge()) {
16940
16983
  event.target.style.height = 'auto';
16941
- event.target.style.height = `${event.target.scrollHeight}px`;
16984
+ event.target.style.height = event.target.scrollHeight + 'px';
16942
16985
  event.target.scrollTop = event.target.scrollHeight;
16943
16986
  }
16944
16987
  }
@@ -19164,7 +19207,7 @@ class SelectFlagLocationComponent {
19164
19207
  // is expected not to have a party name)
19165
19208
  if (this.flagsData) {
19166
19209
  this.filteredFlagsData =
19167
- this.flagsData.filter(f => f.flags.partyName !== null || f.pathToFlagsFormGroup === this.caseLevelCaseFlagsFieldId);
19210
+ this.flagsData.filter(f => f.flags.partyName != null || f.pathToFlagsFormGroup === this.caseLevelCaseFlagsFieldId);
19168
19211
  }
19169
19212
  // Add a FormControl for the selected flag location if there is at least one flags instance remaining after filtering
19170
19213
  if (this.filteredFlagsData && this.filteredFlagsData.length > 0) {
@@ -20332,13 +20375,13 @@ class ReadComplexFieldCollectionTableComponent extends AbstractFieldReadComponen
20332
20375
  field.value = { CaseReference: value };
20333
20376
  return field;
20334
20377
  }
20335
- toCaseField(id, label, fieldType, value) {
20378
+ toCaseField(id, label, field_type, value) {
20336
20379
  return plainToClassFromExist(new CaseField(), {
20337
20380
  id,
20338
20381
  label,
20339
20382
  display_context: 'READONLY',
20340
20383
  value,
20341
- field_type: fieldType
20384
+ field_type
20342
20385
  });
20343
20386
  }
20344
20387
  sortRowsByColumns(column) {
@@ -21924,7 +21967,7 @@ CcdTabFieldsPipe.ɵpipe = i0.ɵɵdefinePipe({ name: "ccdTabFields", type: CcdTab
21924
21967
 
21925
21968
  class CcdPageFieldsPipe {
21926
21969
  transform(page, dataFormGroup) {
21927
- const complexFields = Object.keys(dataFormGroup.controls['data'].controls).map(key => {
21970
+ const complex_fields = Object.keys(dataFormGroup.controls['data'].controls).map(key => {
21928
21971
  const control = dataFormGroup.controls['data'].get(key);
21929
21972
  return control['caseField'];
21930
21973
  }).filter(field => {
@@ -21943,7 +21986,7 @@ class CcdPageFieldsPipe {
21943
21986
  field_type: {
21944
21987
  id: page.id,
21945
21988
  type: 'Complex',
21946
- complex_fields: complexFields
21989
+ complex_fields
21947
21990
  }
21948
21991
  });
21949
21992
  }
@@ -22102,11 +22145,11 @@ class CollectionCreateCheckerService {
22102
22145
  }
22103
22146
  return childrenCaseFields;
22104
22147
  }
22105
- isComplex(caseField) {
22106
- return caseField.field_type.type === 'Complex';
22148
+ isComplex(case_field) {
22149
+ return case_field.field_type.type === 'Complex';
22107
22150
  }
22108
- isCollection(caseField) {
22109
- return caseField.field_type.type === 'Collection';
22151
+ isCollection(case_field) {
22152
+ return case_field.field_type.type === 'Collection';
22110
22153
  }
22111
22154
  hasCreateAccess(caseField, role) {
22112
22155
  return !!caseField.acls.find(acl => acl.role === role && acl.create === true);
@@ -23220,7 +23263,7 @@ class CaseEditSubmitComponent {
23220
23263
  if (caseField.field_type.type === 'Complex') {
23221
23264
  // Note: Deliberate use of equality (==) and non-equality (!=) operators for null checks throughout, to
23222
23265
  // handle both null and undefined values
23223
- if (caseField.value !== null) {
23266
+ if (caseField.value != null) {
23224
23267
  // Call this function recursively to replace the Complex field's sub-fields as necessary, passing the
23225
23268
  // CaseField itself (the sub-fields do not contain any values, so these need to be obtained from the
23226
23269
  // parent)
@@ -24987,7 +25030,7 @@ class WorkbasketFiltersComponent {
24987
25030
  const formValue = this.windowService.getLocalStorage(FORM_GROUP_VAL_LOC_STORAGE);
24988
25031
  workbasketInputs.forEach(item => {
24989
25032
  if (item.field.elementPath) {
24990
- item.field.id = `${item.field.id}.${item.field.elementPath}`;
25033
+ item.field.id = item.field.id + '.' + item.field.elementPath;
24991
25034
  }
24992
25035
  item.field.label = item.label;
24993
25036
  if (formValue) {
@@ -25039,7 +25082,7 @@ class WorkbasketFiltersComponent {
25039
25082
  const value = formGroupLS[key];
25040
25083
  // Clear the filter form group control values if it has a value in local storage
25041
25084
  // The regionList form group control value should be ignored as it always contain the latest value
25042
- if (key !== REGION_LIST_AND_FRC_FILTER && value !== null) {
25085
+ if (key !== REGION_LIST_AND_FRC_FILTER && value != null) {
25043
25086
  this.formGroup.get(key).setValue(null);
25044
25087
  }
25045
25088
  }
@@ -26733,7 +26776,7 @@ function CaseFullAccessViewComponent_ng_container_12_Template(rf, ctx) { if (rf
26733
26776
  const _r34 = i0.ɵɵgetCurrentView();
26734
26777
  i0.ɵɵelementContainerStart(0);
26735
26778
  i0.ɵɵelementStart(1, "mat-tab-group", 23, 24);
26736
- i0.ɵɵlistener("selectedTabChange", function CaseFullAccessViewComponent_ng_container_12_Template_mat_tab_group_selectedTabChange_1_listener($event) { i0.ɵɵrestoreView(_r34); const ctx_r33 = i0.ɵɵnextContext(); return ctx_r33.tabChanged($event); });
26779
+ i0.ɵɵlistener("selectedIndexChange", function CaseFullAccessViewComponent_ng_container_12_Template_mat_tab_group_selectedIndexChange_1_listener($event) { i0.ɵɵrestoreView(_r34); const ctx_r33 = i0.ɵɵnextContext(); return ctx_r33.tabChanged($event); });
26737
26780
  i0.ɵɵtemplate(3, CaseFullAccessViewComponent_ng_container_12_mat_tab_3_Template, 1, 2, "mat-tab", 25);
26738
26781
  i0.ɵɵtemplate(4, CaseFullAccessViewComponent_ng_container_12_mat_tab_4_Template, 2, 2, "mat-tab", 25);
26739
26782
  i0.ɵɵtemplate(5, CaseFullAccessViewComponent_ng_container_12_mat_tab_5_Template, 1, 2, "mat-tab", 25);
@@ -26769,6 +26812,7 @@ class CaseFullAccessViewComponent {
26769
26812
  this.location = location;
26770
26813
  this.crf = crf;
26771
26814
  this.sessionStorageService = sessionStorageService;
26815
+ this.HEARINGS_TAB_LABEL = 'Hearings';
26772
26816
  this.hasPrint = true;
26773
26817
  this.hasEventSelector = true;
26774
26818
  this.prependedTabs = [];
@@ -26780,6 +26824,7 @@ class CaseFullAccessViewComponent {
26780
26824
  this.ignoreWarning = false;
26781
26825
  this.selectedTabIndex = 0;
26782
26826
  this.activeCaseFlags = false;
26827
+ this.subs = [];
26783
26828
  this.callbackErrorsSubject = new Subject();
26784
26829
  }
26785
26830
  ngOnInit() {
@@ -26831,6 +26876,7 @@ class CaseFullAccessViewComponent {
26831
26876
  this.unsubscribe(this.callbackErrorsSubject);
26832
26877
  this.unsubscribe(this.errorSubscription);
26833
26878
  this.unsubscribe(this.subscription);
26879
+ this.subs.forEach(s => s.unsubscribe());
26834
26880
  }
26835
26881
  unsubscribe(subscription) {
26836
26882
  if (subscription) {
@@ -26838,19 +26884,22 @@ class CaseFullAccessViewComponent {
26838
26884
  }
26839
26885
  }
26840
26886
  checkRouteAndSetCaseViewTab() {
26841
- this.router.events
26887
+ this.subs.push(this.router.events
26842
26888
  .pipe(filter((event) => event instanceof NavigationEnd))
26843
26889
  .subscribe((event) => {
26844
26890
  const url = event && event.url;
26845
26891
  if (url) {
26846
- const tabUrl = url ? url.split('#') : null;
26847
- const tab = tabUrl && tabUrl.length > 1 ? tabUrl[tabUrl.length - 1].replaceAll('%20', ' ') : '';
26848
- const matTab = this.tabGroup._tabs.find((x) => x.textLabel.toLowerCase() === tab.toLowerCase());
26849
- if (matTab && matTab.position) {
26850
- this.tabGroup.selectedIndex = matTab.position;
26892
+ if (url.includes('hearings')) {
26893
+ this.selectedTabIndex = this.getTabIndexByTabLabel(this.tabGroup, 'hearings');
26894
+ }
26895
+ else {
26896
+ const urlFragment = this.getUrlFragment(url);
26897
+ const tabLabel = decodeURIComponent(urlFragment);
26898
+ const tabIndex = this.getTabIndexByTabLabel(this.tabGroup, tabLabel);
26899
+ this.selectedTabIndex = tabIndex;
26851
26900
  }
26852
26901
  }
26853
- });
26902
+ }));
26854
26903
  }
26855
26904
  postViewActivity() {
26856
26905
  return this.activityPollingService.postViewActivity(this.caseDetails.case_id);
@@ -26972,22 +27021,19 @@ class CaseFullAccessViewComponent {
26972
27021
  }
26973
27022
  }
26974
27023
  }
26975
- tabChanged(tabChangeEvent) {
26976
- // Update selected tab index
26977
- this.selectedTabIndex = tabChangeEvent.index;
26978
- const tab = tabChangeEvent.tab['_viewContainerRef'];
26979
- const id = tab.element.nativeElement.id;
26980
- // due to some edge case like hidden tab we can't calculate the last index of existing tabs,
26981
- // so have to hard code the hearings id here
26982
- if ((tabChangeEvent.index <= 1 && this.prependedTabs && this.prependedTabs.length) ||
26983
- (this.appendedTabs && this.appendedTabs.length && id === 'hearings')) {
26984
- this.router.navigate([id], { relativeTo: this.route });
27024
+ tabChanged(tabIndexChanged) {
27025
+ // Refactored under EXUI-110 to address infinite tab loop
27026
+ const matTab = this.tabGroup._tabs.find(tab => tab.isActive);
27027
+ const tabLabel = matTab.textLabel;
27028
+ // if hearings tab don't use fragment for navigation
27029
+ if ((tabIndexChanged <= 1 && this.prependedTabs && this.prependedTabs.length) ||
27030
+ (this.appendedTabs && this.appendedTabs.length && tabLabel === this.HEARINGS_TAB_LABEL)) {
27031
+ // cases/case-details/:caseId/hearings
27032
+ this.router.navigate([tabLabel.toLowerCase()], { relativeTo: this.route });
26985
27033
  }
26986
27034
  else {
26987
- const label = tabChangeEvent.tab.textLabel;
26988
- this.router.navigate(['cases', 'case-details', this.caseDetails.case_id]).then(() => {
26989
- window.location.hash = label;
26990
- });
27035
+ // cases/case-details/:caseId#tabLabel
27036
+ this.router.navigate(['cases', 'case-details', this.caseDetails.case_id], { fragment: tabLabel });
26991
27037
  }
26992
27038
  }
26993
27039
  onLinkClicked(triggerOutputEventText) {
@@ -27083,6 +27129,12 @@ class CaseFullAccessViewComponent {
27083
27129
  this.callbackErrorsSubject.next(null);
27084
27130
  this.alertService.clear();
27085
27131
  }
27132
+ getUrlFragment(url) {
27133
+ return url.split('#')[url.split('#').length - 1];
27134
+ }
27135
+ getTabIndexByTabLabel(tabGroup, tabLabel) {
27136
+ return tabGroup._tabs.toArray().findIndex((t) => t.textLabel.toLowerCase() === tabLabel.toLowerCase());
27137
+ }
27086
27138
  }
27087
27139
  CaseFullAccessViewComponent.ORIGIN_QUERY_PARAM = 'origin';
27088
27140
  CaseFullAccessViewComponent.TRIGGER_TEXT_START = 'Go';
@@ -27095,7 +27147,7 @@ CaseFullAccessViewComponent.ɵcmp = i0.ɵɵdefineComponent({ type: CaseFullAcces
27095
27147
  } if (rf & 2) {
27096
27148
  let _t;
27097
27149
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.tabGroup = _t.first);
27098
- } }, inputs: { hasPrint: "hasPrint", hasEventSelector: "hasEventSelector", caseDetails: "caseDetails", prependedTabs: "prependedTabs", appendedTabs: "appendedTabs" }, features: [i0.ɵɵNgOnChangesFeature], decls: 13, vars: 12, consts: [["class", "error-summary", "role", "group", "aria-labelledby", "edit-case-event_error-summary-heading", "tabindex", "-1", 4, "ngIf"], [3, "triggerTextContinue", "triggerTextIgnore", "callbackErrorsSubject", "callbackErrorsContext"], [3, "caseId", "displayMode"], [1, "grid-row"], [1, "column-one-half"], [3, "caseDetails"], ["class", "case-viewer-controls", 4, "ngIf"], ["class", "column-one-half", 4, "ngIf"], ["class", "grid-row", 4, "ngIf"], [1, "column-full"], [4, "ngIf"], ["role", "group", "aria-labelledby", "edit-case-event_error-summary-heading", "tabindex", "-1", 1, "error-summary"], ["id", "edit-case-event_error-summary-heading", 1, "heading-h1", "error-summary-heading"], ["id", "edit-case-event_error-summary-body", 1, "govuk-error-summary__body"], ["href", "get-help", "target", "_blank"], ["id", "edit-case-event_error-summary-heading", 1, "heading-h2", "error-summary-heading"], ["class", "error-summary-list", 4, "ngIf"], [1, "error-summary-list"], [4, "ngFor", "ngForOf"], [1, "case-viewer-controls"], ["id", "case-viewer-control-print", "routerLink", "print", 1, "button", "button-secondary"], [3, "isDisabled", "triggers", "triggerText", "onTriggerChange", "onTriggerSubmit"], [3, "notificationBannerConfig", "linkClicked"], ["animationDuration", "0ms", 3, "disableRipple", "selectedIndex", "selectedTabChange"], ["tabGroup", ""], [3, "id", "label", 4, "ngFor", "ngForOf"], [3, "id", "label"], ["matTabContent", ""], ["aria-describedby", "case viewer table"], ["ccdLabelSubstitutor", "", 3, "caseField", "contextFields", "hidden"], [3, "ngSwitch"], [4, "ngSwitchCase"], ["class", "compound-field", 4, "ngSwitchCase"], ["id", "case-viewer-field-label", 4, "ngIf"], ["scope", "col", 3, "id"], [1, "text-16"], [3, "topLevelFormGroup", "caseField", "caseReference", "markdownUseHrefAsRouterLink"], ["id", "case-viewer-field-label"], [1, "case-viewer-label", "text-16"], [1, "compound-field"]], template: function CaseFullAccessViewComponent_Template(rf, ctx) { if (rf & 1) {
27150
+ } }, inputs: { hasPrint: "hasPrint", hasEventSelector: "hasEventSelector", caseDetails: "caseDetails", prependedTabs: "prependedTabs", appendedTabs: "appendedTabs" }, features: [i0.ɵɵNgOnChangesFeature], decls: 13, vars: 12, consts: [["class", "error-summary", "role", "group", "aria-labelledby", "edit-case-event_error-summary-heading", "tabindex", "-1", 4, "ngIf"], [3, "triggerTextContinue", "triggerTextIgnore", "callbackErrorsSubject", "callbackErrorsContext"], [3, "caseId", "displayMode"], [1, "grid-row"], [1, "column-one-half"], [3, "caseDetails"], ["class", "case-viewer-controls", 4, "ngIf"], ["class", "column-one-half", 4, "ngIf"], ["class", "grid-row", 4, "ngIf"], [1, "column-full"], [4, "ngIf"], ["role", "group", "aria-labelledby", "edit-case-event_error-summary-heading", "tabindex", "-1", 1, "error-summary"], ["id", "edit-case-event_error-summary-heading", 1, "heading-h1", "error-summary-heading"], ["id", "edit-case-event_error-summary-body", 1, "govuk-error-summary__body"], ["href", "get-help", "target", "_blank"], ["id", "edit-case-event_error-summary-heading", 1, "heading-h2", "error-summary-heading"], ["class", "error-summary-list", 4, "ngIf"], [1, "error-summary-list"], [4, "ngFor", "ngForOf"], [1, "case-viewer-controls"], ["id", "case-viewer-control-print", "routerLink", "print", 1, "button", "button-secondary"], [3, "isDisabled", "triggers", "triggerText", "onTriggerChange", "onTriggerSubmit"], [3, "notificationBannerConfig", "linkClicked"], ["animationDuration", "0ms", 3, "disableRipple", "selectedIndex", "selectedIndexChange"], ["tabGroup", ""], [3, "id", "label", 4, "ngFor", "ngForOf"], [3, "id", "label"], ["matTabContent", ""], ["aria-describedby", "case viewer table"], ["ccdLabelSubstitutor", "", 3, "caseField", "contextFields", "hidden"], [3, "ngSwitch"], [4, "ngSwitchCase"], ["class", "compound-field", 4, "ngSwitchCase"], ["id", "case-viewer-field-label", 4, "ngIf"], ["scope", "col", 3, "id"], [1, "text-16"], [3, "topLevelFormGroup", "caseField", "caseReference", "markdownUseHrefAsRouterLink"], ["id", "case-viewer-field-label"], [1, "case-viewer-label", "text-16"], [1, "compound-field"]], template: function CaseFullAccessViewComponent_Template(rf, ctx) { if (rf & 1) {
27099
27151
  i0.ɵɵtemplate(0, CaseFullAccessViewComponent_div_0_Template, 10, 0, "div", 0);
27100
27152
  i0.ɵɵtemplate(1, CaseFullAccessViewComponent_div_1_Template, 6, 2, "div", 0);
27101
27153
  i0.ɵɵelementStart(2, "ccd-callback-errors", 1);
@@ -27172,7 +27224,7 @@ class PrintUrlPipe {
27172
27224
  * or the empty string
27173
27225
  */
27174
27226
  transform(remoteUrl) {
27175
- if ((remoteUrl === null || remoteUrl === void 0 ? void 0 : remoteUrl.length) > 0) {
27227
+ if (remoteUrl && remoteUrl.length > 0) {
27176
27228
  let printServiceUrlPathname;
27177
27229
  /**
27178
27230
  * Check navigator.userAgent to see if the browser is IE or not. Check for either the browser name, "MSIE", or
@@ -27188,7 +27240,7 @@ class PrintUrlPipe {
27188
27240
  printServiceUrlPathname = urlParser.pathname;
27189
27241
  if (printServiceUrlPathname[0] !== '/') {
27190
27242
  // Fix for IE11; it returns the pathname without leading slash
27191
- printServiceUrlPathname = `/${printServiceUrlPathname}`;
27243
+ printServiceUrlPathname = '/' + printServiceUrlPathname;
27192
27244
  }
27193
27245
  }
27194
27246
  else {
@@ -27365,10 +27417,10 @@ class CaseViewerComponent {
27365
27417
  }
27366
27418
  setUserAccessType(caseDetails) {
27367
27419
  if (caseDetails && Array.isArray(caseDetails.metadataFields)) {
27368
- const accessProcess = caseDetails.metadataFields.find(metadataField => metadataField.id === CaseViewerComponent.METADATA_FIELD_ACCESS_PROCEES_ID);
27369
- const accessGranted = caseDetails.metadataFields.find(metadataField => metadataField.id === CaseViewerComponent.METADATA_FIELD_ACCESS_GRANTED_ID);
27370
- this.accessGranted = accessGranted ? accessGranted.value !== CaseViewerComponent.BASIC_USER_ACCESS_TYPES : false;
27371
- this.userAccessType = accessProcess ? accessProcess.value : null;
27420
+ const access_process = caseDetails.metadataFields.find(metadataField => metadataField.id === CaseViewerComponent.METADATA_FIELD_ACCESS_PROCEES_ID);
27421
+ const access_granted = caseDetails.metadataFields.find(metadataField => metadataField.id === CaseViewerComponent.METADATA_FIELD_ACCESS_GRANTED_ID);
27422
+ this.accessGranted = access_granted ? access_granted.value !== CaseViewerComponent.BASIC_USER_ACCESS_TYPES : false;
27423
+ this.userAccessType = access_process ? access_process.value : null;
27372
27424
  }
27373
27425
  }
27374
27426
  isDataLoaded() {
@@ -28533,11 +28585,11 @@ class CaseChallengedAccessRequestComponent {
28533
28585
  };
28534
28586
  this.$roleAssignmentResponseSubscription = this.casesService.createChallengedAccessRequest(caseId, challengedAccessRequest)
28535
28587
  .pipe(switchMap(() => this.caseNotifier.fetchAndRefresh(caseId)))
28536
- .subscribe(() => {
28588
+ .subscribe(_response => {
28537
28589
  // Would have been nice to pass the caseId within state.data, but this isn't part of NavigationExtras until
28538
28590
  // Angular 7.2!
28539
28591
  this.router.navigate(['success'], { relativeTo: this.route });
28540
- }, () => {
28592
+ }, _error => {
28541
28593
  // Navigate to error page
28542
28594
  });
28543
28595
  }
@@ -28551,7 +28603,7 @@ class CaseChallengedAccessRequestComponent {
28551
28603
  }
28552
28604
  }
28553
28605
  inputEmpty(input) {
28554
- return input.value === null || input.value.trim().length === 0;
28606
+ return input.value == null || input.value.trim().length === 0;
28555
28607
  }
28556
28608
  }
28557
28609
  CaseChallengedAccessRequestComponent.CANCEL_LINK_DESTINATION = '/work/my-work/list';
@@ -29137,11 +29189,11 @@ class CaseSpecificAccessRequestComponent {
29137
29189
  };
29138
29190
  this.$roleAssignmentResponseSubscription = this.casesService.createSpecificAccessRequest(caseId, specificAccessRequest)
29139
29191
  .pipe(switchMap(() => this.caseNotifier.fetchAndRefresh(caseId)))
29140
- .subscribe(() => {
29192
+ .subscribe(_response => {
29141
29193
  // Would have been nice to pass the caseId within state.data, but this isn't part of NavigationExtras until
29142
29194
  // Angular 7.2
29143
29195
  this.router.navigate(['success'], { relativeTo: this.route });
29144
- }, () => {
29196
+ }, _error => {
29145
29197
  // Navigate to error page
29146
29198
  });
29147
29199
  }
@@ -29156,7 +29208,7 @@ class CaseSpecificAccessRequestComponent {
29156
29208
  }
29157
29209
  }
29158
29210
  inputEmpty(input) {
29159
- return input.value === null || input.value.trim().length === 0;
29211
+ return input.value == null || input.value.trim().length === 0;
29160
29212
  }
29161
29213
  }
29162
29214
  CaseSpecificAccessRequestComponent.CANCEL_LINK_DESTINATION = '/work/my-work/list';
@@ -29998,7 +30050,7 @@ class SearchFiltersComponent {
29998
30050
  }
29999
30051
  searchInputs.forEach(item => {
30000
30052
  if (item.field.elementPath) {
30001
- item.field.id = `${item.field.id}.${item.field.elementPath}`;
30053
+ item.field.id = item.field.id + '.' + item.field.elementPath;
30002
30054
  }
30003
30055
  item.field.label = item.label;
30004
30056
  if (formValueObject) {
@@ -31117,24 +31169,24 @@ class CaseFieldBuilder {
31117
31169
  this.caseField.id = id;
31118
31170
  return this;
31119
31171
  }
31120
- withFieldType(fieldType) {
31121
- this.caseField.field_type = fieldType;
31172
+ withFieldType(field_type) {
31173
+ this.caseField.field_type = field_type;
31122
31174
  return this;
31123
31175
  }
31124
- withDisplayContext(displayContext) {
31125
- this.caseField.display_context = displayContext;
31176
+ withDisplayContext(display_context) {
31177
+ this.caseField.display_context = display_context;
31126
31178
  return this;
31127
31179
  }
31128
- withDisplayContextParameter(displayContextParameter) {
31129
- this.caseField.display_context_parameter = displayContextParameter;
31180
+ withDisplayContextParameter(display_context_parameter) {
31181
+ this.caseField.display_context_parameter = display_context_parameter;
31130
31182
  return this;
31131
31183
  }
31132
31184
  withHidden(hidden) {
31133
31185
  this.caseField.hidden = hidden;
31134
31186
  return this;
31135
31187
  }
31136
- withHintText(hintText) {
31137
- this.caseField.hint_text = hintText;
31188
+ withHintText(hint_text) {
31189
+ this.caseField.hint_text = hint_text;
31138
31190
  return this;
31139
31191
  }
31140
31192
  withLabel(label) {
@@ -31145,12 +31197,12 @@ class CaseFieldBuilder {
31145
31197
  this.caseField.order = order;
31146
31198
  return this;
31147
31199
  }
31148
- withSecurityLabel(securityLabel) {
31149
- this.caseField.security_label = securityLabel;
31200
+ withSecurityLabel(security_label) {
31201
+ this.caseField.security_label = security_label;
31150
31202
  return this;
31151
31203
  }
31152
- withShowCondition(showCondition) {
31153
- this.caseField.show_condition = showCondition;
31204
+ withShowCondition(show_condition) {
31205
+ this.caseField.show_condition = show_condition;
31154
31206
  return this;
31155
31207
  }
31156
31208
  withShowSummaryContentOption(option) {
@@ -31177,19 +31229,19 @@ const textFieldType = () => {
31177
31229
  complex_fields: []
31178
31230
  };
31179
31231
  };
31180
- const createCaseEventTrigger = (id, name, caseId, showSummary, caseFields, wizardPages = [], canSaveDraft = false) => {
31232
+ const createCaseEventTrigger = (id, name, case_id, show_summary, case_fields, wizard_pages = [], can_save_draft = false) => {
31181
31233
  const eventTrigger = new CaseEventTrigger();
31182
31234
  eventTrigger.id = id;
31183
31235
  eventTrigger.name = name;
31184
- eventTrigger.case_id = caseId;
31185
- eventTrigger.show_summary = showSummary;
31186
- eventTrigger.wizard_pages = wizardPages;
31236
+ eventTrigger.case_id = case_id;
31237
+ eventTrigger.show_summary = show_summary;
31238
+ eventTrigger.wizard_pages = wizard_pages;
31187
31239
  eventTrigger.event_token = 'test-token';
31188
- eventTrigger.case_fields = caseFields;
31189
- eventTrigger.can_save_draft = canSaveDraft;
31240
+ eventTrigger.case_fields = case_fields;
31241
+ eventTrigger.can_save_draft = can_save_draft;
31190
31242
  return eventTrigger;
31191
31243
  };
31192
- const aCaseField = (id, label, type, displayContext, showSummaryContentOption, typeComplexFields = [], retainHiddenValue, hidden) => {
31244
+ const aCaseField = (id, label, type, display_context, show_summary_content_option, typeComplexFields = [], retain_hidden_value, hidden) => {
31193
31245
  return ({
31194
31246
  id: id || 'personFirstName',
31195
31247
  field_type: {
@@ -31197,10 +31249,10 @@ const aCaseField = (id, label, type, displayContext, showSummaryContentOption, t
31197
31249
  type: type || 'Text',
31198
31250
  complex_fields: typeComplexFields || []
31199
31251
  },
31200
- display_context: displayContext || 'OPTIONAL',
31252
+ display_context: display_context || 'OPTIONAL',
31201
31253
  label: label || 'First name',
31202
- show_summary_content_option: showSummaryContentOption,
31203
- retain_hidden_value: retainHiddenValue || false,
31254
+ show_summary_content_option,
31255
+ retain_hidden_value: retain_hidden_value || false,
31204
31256
  hidden: hidden || false
31205
31257
  });
31206
31258
  };
@@ -31238,59 +31290,59 @@ const createHiddenComplexFieldOverride = (id) => {
31238
31290
  complexFieldOverride.display_context = 'HIDDEN';
31239
31291
  return complexFieldOverride;
31240
31292
  };
31241
- const createCaseField = (id, label, hint, fieldType, displayContext, order = undefined, showCondition = undefined, acls = undefined, hidden) => {
31293
+ const createCaseField = (id, label, hint, fieldType, display_context, order = undefined, show_condition = undefined, ACLs = undefined, hidden) => {
31242
31294
  return CaseFieldBuilder.create()
31243
31295
  .withId(id || 'personFirstName')
31244
31296
  .withFieldType(fieldType || textFieldType())
31245
- .withDisplayContext(displayContext || 'OPTIONAL')
31297
+ .withDisplayContext(display_context || 'OPTIONAL')
31246
31298
  .withLabel(label || 'First name')
31247
31299
  .withHintText(hint || 'First name hint text')
31248
31300
  .withShowSummaryContentOption(0)
31249
31301
  .withOrder(order)
31250
- .withShowCondition(showCondition || undefined)
31251
- .withACLs(acls)
31302
+ .withShowCondition(show_condition || undefined)
31303
+ .withACLs(ACLs)
31252
31304
  .withHidden(hidden || false)
31253
31305
  .build();
31254
31306
  };
31255
- const newCaseField = (id, label, hint, fieldType, displayContext, order = undefined) => {
31307
+ const newCaseField = (id, label, hint, fieldType, display_context, order = undefined) => {
31256
31308
  return CaseFieldBuilder.create()
31257
31309
  .withId(id || 'personFirstName')
31258
31310
  .withFieldType(fieldType || textFieldType())
31259
- .withDisplayContext(displayContext || 'OPTIONAL')
31311
+ .withDisplayContext(display_context || 'OPTIONAL')
31260
31312
  .withHintText(hint || 'First name hint text')
31261
31313
  .withLabel(label || 'First name')
31262
31314
  .withOrder(order)
31263
31315
  .withShowSummaryContentOption(0);
31264
31316
  };
31265
- const createFieldType = (typeId, type, complexFields = [], collectionFieldType = undefined) => {
31317
+ const createFieldType = (typeId, type, complex_fields = [], collection_field_type = undefined) => {
31266
31318
  return {
31267
31319
  id: typeId || 'Text',
31268
31320
  type: type || 'Text',
31269
- complex_fields: complexFields || [],
31270
- collection_field_type: collectionFieldType || undefined
31321
+ complex_fields: complex_fields || [],
31322
+ collection_field_type: collection_field_type || undefined
31271
31323
  };
31272
31324
  };
31273
31325
  const createFixedListFieldType = (typeId, fixedListItems = []) => {
31274
31326
  return {
31275
- id: `FixedList-${typeId}`,
31327
+ id: 'FixedList-' + typeId,
31276
31328
  type: 'FixedList',
31277
31329
  fixed_list_items: fixedListItems || []
31278
31330
  };
31279
31331
  };
31280
31332
  const createMultiSelectListFieldType = (typeId, fixedListItems = []) => {
31281
31333
  return {
31282
- id: `MultiSelectList-${typeId}`,
31334
+ id: 'MultiSelectList-' + typeId,
31283
31335
  type: 'MultiSelectList',
31284
31336
  fixed_list_items: fixedListItems || []
31285
31337
  };
31286
31338
  };
31287
- const createACL = (role, aclCreate, aclRead, aclUpdate, aclDelete) => {
31339
+ const createACL = (role, create, read, update, _delete) => {
31288
31340
  return ({
31289
31341
  role: role || 'roleX',
31290
- create: aclCreate,
31291
- read: aclRead,
31292
- update: aclUpdate,
31293
- delete: aclDelete
31342
+ create,
31343
+ read,
31344
+ update,
31345
+ delete: _delete
31294
31346
  });
31295
31347
  };
31296
31348
 
@@ -31337,5 +31389,5 @@ class TestRouteSnapshotBuilder {
31337
31389
  * Generated bundle index. Do not edit.
31338
31390
  */
31339
31391
 
31340
- 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 };
31392
+ 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, 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, 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 };
31341
31393
  //# sourceMappingURL=hmcts-ccd-case-ui-toolkit.js.map