@hmcts/ccd-case-ui-toolkit 4.8.3-rc.2 → 4.8.4-rc.4

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 (52) hide show
  1. package/RELEASE-NOTES.md +7 -0
  2. package/dist/index.umd.js +167 -37
  3. package/dist/index.umd.js.map +1 -1
  4. package/dist/index.umd.min.js +1 -1
  5. package/dist/index.umd.min.js.LICENSE.txt +1 -1
  6. package/dist/index.umd.min.js.map +1 -1
  7. package/dist/shared/components/case-editor/case-access-utils/index.d.ts +3 -2
  8. package/dist/shared/components/case-editor/case-access-utils/index.js +31 -0
  9. package/dist/shared/components/case-editor/case-access-utils/index.js.map +1 -1
  10. package/dist/shared/components/case-editor/case-access-utils/index.metadata.json +1 -1
  11. package/dist/shared/components/case-editor/case-edit-page/case-edit-page.component.js +1 -1
  12. package/dist/shared/components/case-editor/case-edit-page/case-edit-page.component.js.map +1 -1
  13. package/dist/shared/components/case-editor/services/cases.service.d.ts +2 -1
  14. package/dist/shared/components/case-editor/services/cases.service.js +17 -26
  15. package/dist/shared/components/case-editor/services/cases.service.js.map +1 -1
  16. package/dist/shared/components/case-editor/services/cases.service.metadata.json +1 -1
  17. package/dist/shared/components/case-viewer/case-full-access-view/case-full-access-view.component.d.ts +1 -0
  18. package/dist/shared/components/case-viewer/case-full-access-view/case-full-access-view.component.js +10 -3
  19. package/dist/shared/components/case-viewer/case-full-access-view/case-full-access-view.component.js.map +1 -1
  20. package/dist/shared/components/case-viewer/case-full-access-view/case-full-access-view.component.metadata.json +1 -1
  21. package/dist/shared/components/case-viewer/case-review-specific-access-reject/case-review-specific-access-reject.component.d.ts +10 -0
  22. package/dist/shared/components/case-viewer/case-review-specific-access-reject/case-review-specific-access-reject.component.js +33 -0
  23. package/dist/shared/components/case-viewer/case-review-specific-access-reject/case-review-specific-access-reject.component.js.map +1 -0
  24. package/dist/shared/components/case-viewer/case-review-specific-access-reject/case-review-specific-access-reject.component.metadata.json +1 -0
  25. package/dist/shared/components/case-viewer/case-review-specific-access-reject/index.d.ts +1 -0
  26. package/dist/shared/components/case-viewer/case-review-specific-access-reject/index.js +7 -0
  27. package/dist/shared/components/case-viewer/case-review-specific-access-reject/index.js.map +1 -0
  28. package/dist/shared/components/case-viewer/case-review-specific-access-reject/index.metadata.json +1 -0
  29. package/dist/shared/components/case-viewer/case-review-specific-access-request/case-review-specific-access-request.component.d.ts +3 -2
  30. package/dist/shared/components/case-viewer/case-review-specific-access-request/case-review-specific-access-request.component.js +6 -1
  31. package/dist/shared/components/case-viewer/case-review-specific-access-request/case-review-specific-access-request.component.js.map +1 -1
  32. package/dist/shared/components/case-viewer/case-review-specific-access-request/case-review-specific-access-request.component.metadata.json +1 -1
  33. package/dist/shared/components/case-viewer/case-specific-access-request/case-specific-access-request.component.d.ts +3 -1
  34. package/dist/shared/components/case-viewer/case-specific-access-request/case-specific-access-request.component.js +21 -1
  35. package/dist/shared/components/case-viewer/case-specific-access-request/case-specific-access-request.component.js.map +1 -1
  36. package/dist/shared/components/case-viewer/case-specific-access-request/case-specific-access-request.component.metadata.json +1 -1
  37. package/dist/shared/components/case-viewer/case-viewer.component.d.ts +1 -0
  38. package/dist/shared/components/case-viewer/case-viewer.component.js +7 -2
  39. package/dist/shared/components/case-viewer/case-viewer.component.js.map +1 -1
  40. package/dist/shared/components/case-viewer/case-viewer.component.metadata.json +1 -1
  41. package/dist/shared/components/case-viewer/case-viewer.module.js +3 -1
  42. package/dist/shared/components/case-viewer/case-viewer.module.js.map +1 -1
  43. package/dist/shared/components/case-viewer/case-viewer.module.metadata.json +1 -1
  44. package/dist/shared/components/case-viewer/viewer.routing.js +8 -0
  45. package/dist/shared/components/case-viewer/viewer.routing.js.map +1 -1
  46. package/dist/shared/components/case-viewer/viewer.routing.metadata.json +1 -1
  47. package/dist/shared/components/palette/complex/write-complex-field.component.js +1 -1
  48. package/dist/shared/components/palette/complex/write-complex-field.component.js.map +1 -1
  49. package/dist/shared/components/palette/complex/write-complex-field.component.metadata.json +1 -1
  50. package/dist/shared/components/palette/document/write-document-field.component.js.map +1 -1
  51. package/dist/shared/domain/case-view/specific-access-request.model.d.ts +0 -2
  52. package/package.json +1 -1
package/RELEASE-NOTES.md CHANGED
@@ -1,5 +1,11 @@
1
1
  ## RELEASE NOTES
2
2
 
3
+ ### Version 4.3.6-hotfix-EUI-4404
4
+ **EUI-4404** Fix rendering of read-only Collection field within editable Complex field
5
+
6
+ ### Version 4.7.6-hearings-tab
7
+ **EUI-4441** Add hearings tab in case details
8
+
3
9
  ### Version 4.7.0-EUI-4412-order-fields-CYA-page
4
10
  **EUI-4414** Field order on the CYA page changes
5
11
 
@@ -52,6 +58,7 @@
52
58
  **EUI-4344** Document uploaded shows incorrect name
53
59
  **EUI-4377** removing unwanted html tags from title
54
60
 
61
+
55
62
  ### Version 4.2.3
56
63
  **EUI-3425** Hotfix for work already done. Secure uploading for new cases
57
64
 
package/dist/index.umd.js CHANGED
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @hmcts/ccd-case-ui-toolkit - Case UI Toolkit
3
- * @version v4.8.3-rc.2
3
+ * @version v4.8.4-rc.4
4
4
  * @link undefined
5
5
  * @license MIT
6
6
  */
@@ -17166,6 +17166,8 @@ var CaseAccessUtils = /** @class */ (function () {
17166
17166
  function CaseAccessUtils() {
17167
17167
  }
17168
17168
  CaseAccessUtils.prototype.getMappedRoleCategory = function (roles, roleCategories) {
17169
+ if (roles === void 0) { roles = []; }
17170
+ if (roleCategories === void 0) { roleCategories = []; }
17169
17171
  var roleKeywords = roles.join().split('-').join().split(',');
17170
17172
  if (this.roleOrCategoryExists(CaseAccessUtils.JUDGE_ROLE, CaseAccessUtils.JUDGE_ROLE_CATEGORY, roleKeywords, roleCategories)) {
17171
17173
  return CaseAccessUtils.JUDGE_ROLE_CATEGORY;
@@ -17209,6 +17211,35 @@ var CaseAccessUtils = /** @class */ (function () {
17209
17211
  }
17210
17212
  return roleName;
17211
17213
  };
17214
+ CaseAccessUtils.prototype.getAMPayload = function (assignerId, actorId, roleName, roleCategory, grantType, caseId, details, beginTime, endTime) {
17215
+ if (beginTime === void 0) { beginTime = null; }
17216
+ if (endTime === void 0) { endTime = null; }
17217
+ var payload = {
17218
+ roleRequest: {
17219
+ assignerId: assignerId
17220
+ },
17221
+ requestedRoles: [{
17222
+ actorIdType: 'IDAM',
17223
+ actorId: actorId,
17224
+ roleType: 'CASE',
17225
+ roleName: roleName,
17226
+ classification: 'PUBLIC',
17227
+ roleCategory: roleCategory,
17228
+ grantType: grantType,
17229
+ beginTime: beginTime,
17230
+ endTime: endTime,
17231
+ attributes: {
17232
+ caseId: caseId
17233
+ },
17234
+ notes: [{
17235
+ userId: assignerId,
17236
+ time: new Date(),
17237
+ comment: JSON.stringify(details)
17238
+ }]
17239
+ }]
17240
+ };
17241
+ return payload;
17242
+ };
17212
17243
  // User role mapping
17213
17244
  CaseAccessUtils.JUDGE_ROLE = 'judge';
17214
17245
  CaseAccessUtils.JUDGE_ROLE_CATEGORY = 'JUDICIAL';
@@ -17721,11 +17752,11 @@ var CaseEditPageComponent = /** @class */ (function () {
17721
17752
  if (this.currentPageIsNotValid()) {
17722
17753
  this.generateErrorMessage(this.currentPage.case_fields);
17723
17754
  }
17724
- this.showSpinner = true;
17725
17755
  if (!this.isSubmitting && !this.currentPageIsNotValid()) {
17726
17756
  this.isSubmitting = true;
17727
17757
  this.error = null;
17728
17758
  var caseEventData = this.buildCaseEventData();
17759
+ this.showSpinner = true;
17729
17760
  this.caseEdit.validate(caseEventData, this.currentPage.id)
17730
17761
  .subscribe(function (jsonData) {
17731
17762
  if (jsonData) {
@@ -19468,32 +19499,23 @@ var CasesService = /** @class */ (function () {
19468
19499
  }
19469
19500
  var roleCategory = camUtils.getMappedRoleCategory(userInfo.roles, userInfo.roleCategories);
19470
19501
  var roleName = camUtils.getAMRoleName('challenged', roleCategory);
19471
- var payload = {
19472
- roleRequest: {
19473
- assignerId: userInfo.id
19474
- },
19475
- requestedRoles: [{
19476
- actorIdType: 'IDAM',
19477
- actorId: userInfo.id,
19478
- roleType: 'CASE',
19479
- roleName: roleName,
19480
- classification: 'PUBLIC',
19481
- roleCategory: roleCategory,
19482
- grantType: 'CHALLENGED',
19483
- beginTime: new Date(),
19484
- endTime: new Date(new Date().setUTCHours(23, 59, 59, 999)),
19485
- attributes: {
19486
- caseId: caseId
19487
- },
19488
- notes: [{
19489
- userId: userInfo.id,
19490
- time: new Date(),
19491
- comment: JSON.stringify(car)
19492
- }
19493
- ]
19494
- }]
19495
- };
19496
- return this.http.post("" + this.appConfig.getCamRoleAssignmentsApiUrl(), payload);
19502
+ var beginTime = new Date();
19503
+ var endTime = new Date(new Date().setUTCHours(23, 59, 59, 999));
19504
+ var payload = camUtils.getAMPayload(userInfo.id, userInfo.id, roleName, roleCategory, 'CHALLENGED', caseId, car, beginTime, endTime);
19505
+ return this.http.post(this.appConfig.getCamRoleAssignmentsApiUrl() + "/challenged", payload);
19506
+ };
19507
+ CasesService.prototype.createSpecificAccessRequest = function (caseId, sar) {
19508
+ // Assignment API endpoint
19509
+ var userInfoStr = this.sessionStorageService.getItem('userDetails');
19510
+ var camUtils = new case_access_utils_1.CaseAccessUtils();
19511
+ var userInfo;
19512
+ if (userInfoStr) {
19513
+ userInfo = JSON.parse(userInfoStr);
19514
+ }
19515
+ var roleCategory = camUtils.getMappedRoleCategory(userInfo.roles, userInfo.roleCategories);
19516
+ var roleName = camUtils.getAMRoleName('specific', roleCategory);
19517
+ var payload = camUtils.getAMPayload(null, userInfo.id, roleName, roleCategory, 'SPECIFIC', caseId, sar);
19518
+ return this.http.post(this.appConfig.getCamRoleAssignmentsApiUrl() + "/specific", payload);
19497
19519
  };
19498
19520
  var CasesService_1;
19499
19521
  // Internal (UI) API
@@ -21395,6 +21417,7 @@ var CaseFullAccessViewComponent = /** @class */ (function () {
21395
21417
  this.hasPrint = true;
21396
21418
  this.hasEventSelector = true;
21397
21419
  this.prependedTabs = [];
21420
+ this.appendedTabs = [];
21398
21421
  this.BANNER = domain_1.DisplayMode.BANNER;
21399
21422
  this.triggerTextStart = CaseFullAccessViewComponent_1.TRIGGER_TEXT_START;
21400
21423
  this.triggerTextIgnoreWarnings = CaseFullAccessViewComponent_1.TRIGGER_TEXT_CONTINUE;
@@ -21484,7 +21507,7 @@ var CaseFullAccessViewComponent = /** @class */ (function () {
21484
21507
  }
21485
21508
  };
21486
21509
  CaseFullAccessViewComponent.prototype.hasTabsPresent = function () {
21487
- return this.sortedTabs.length > 0 || this.prependedTabs.length > 0;
21510
+ return this.sortedTabs.length > 0 || this.prependedTabs.length > 0 || this.appendedTabs.length > 0;
21488
21511
  };
21489
21512
  CaseFullAccessViewComponent.prototype.callbackErrorsNotify = function (callbackErrorsContext) {
21490
21513
  this.ignoreWarning = callbackErrorsContext.ignore_warning;
@@ -21533,7 +21556,9 @@ var CaseFullAccessViewComponent = /** @class */ (function () {
21533
21556
  CaseFullAccessViewComponent.prototype.tabChanged = function (tabChangeEvent) {
21534
21557
  var tab = tabChangeEvent.tab['_viewContainerRef'];
21535
21558
  var id = tab.element.nativeElement.id;
21536
- if (tabChangeEvent.index <= 1 && this.prependedTabs.length) {
21559
+ var tabsLengthBeforeAppended = this.prependedTabs.length + this.caseDetails.tabs.length;
21560
+ if ((tabChangeEvent.index <= 1 && this.prependedTabs.length) ||
21561
+ (tabChangeEvent.index >= tabsLengthBeforeAppended && this.appendedTabs.length)) {
21537
21562
  this.router.navigate([id], { relativeTo: this.route });
21538
21563
  }
21539
21564
  else {
@@ -21616,6 +21641,10 @@ var CaseFullAccessViewComponent = /** @class */ (function () {
21616
21641
  core_1.Input(),
21617
21642
  __metadata("design:type", Array)
21618
21643
  ], CaseFullAccessViewComponent.prototype, "prependedTabs", void 0);
21644
+ __decorate([
21645
+ core_1.Input(),
21646
+ __metadata("design:type", Array)
21647
+ ], CaseFullAccessViewComponent.prototype, "appendedTabs", void 0);
21619
21648
  __decorate([
21620
21649
  core_1.ViewChild('tabGroup'),
21621
21650
  __metadata("design:type", material_1.MatTabGroup)
@@ -21657,6 +21686,60 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
21657
21686
  __export(__webpack_require__(76764));
21658
21687
 
21659
21688
 
21689
+ /***/ }),
21690
+
21691
+ /***/ 12231:
21692
+ /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
21693
+
21694
+ "use strict";
21695
+
21696
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
21697
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
21698
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
21699
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
21700
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
21701
+ };
21702
+ var __metadata = (this && this.__metadata) || function (k, v) {
21703
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
21704
+ };
21705
+ Object.defineProperty(exports, "__esModule", ({ value: true }));
21706
+ var core_1 = __webpack_require__(57208);
21707
+ var router_1 = __webpack_require__(92302);
21708
+ var CaseReviewSpecificAccessRejectComponent = /** @class */ (function () {
21709
+ function CaseReviewSpecificAccessRejectComponent(route) {
21710
+ this.route = route;
21711
+ this.retunToTask = 'Return to the Tasks tab for this case';
21712
+ this.returnToMyTask = 'Return to My tasks';
21713
+ }
21714
+ CaseReviewSpecificAccessRejectComponent.prototype.ngOnInit = function () {
21715
+ this.caseId = this.route.snapshot.data.case.case_id;
21716
+ };
21717
+ CaseReviewSpecificAccessRejectComponent = __decorate([
21718
+ core_1.Component({
21719
+ selector: 'case-review-specific-access-reject',
21720
+ template: __webpack_require__(24959)
21721
+ }),
21722
+ __metadata("design:paramtypes", [router_1.ActivatedRoute])
21723
+ ], CaseReviewSpecificAccessRejectComponent);
21724
+ return CaseReviewSpecificAccessRejectComponent;
21725
+ }());
21726
+ exports.CaseReviewSpecificAccessRejectComponent = CaseReviewSpecificAccessRejectComponent;
21727
+
21728
+
21729
+ /***/ }),
21730
+
21731
+ /***/ 84766:
21732
+ /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
21733
+
21734
+ "use strict";
21735
+
21736
+ function __export(m) {
21737
+ for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];
21738
+ }
21739
+ Object.defineProperty(exports, "__esModule", ({ value: true }));
21740
+ __export(__webpack_require__(12231));
21741
+
21742
+
21660
21743
  /***/ }),
21661
21744
 
21662
21745
  /***/ 24212:
@@ -21680,9 +21763,10 @@ var router_1 = __webpack_require__(92302);
21680
21763
  var models_1 = __webpack_require__(46909);
21681
21764
  var app_config_1 = __webpack_require__(35185);
21682
21765
  var CaseReviewSpecificAccessRequestComponent = /** @class */ (function () {
21683
- function CaseReviewSpecificAccessRequestComponent(fb, route, appConfig) {
21766
+ function CaseReviewSpecificAccessRequestComponent(fb, route, router, appConfig) {
21684
21767
  this.fb = fb;
21685
21768
  this.route = route;
21769
+ this.router = router;
21686
21770
  this.appConfig = appConfig;
21687
21771
  this.collapsed = false;
21688
21772
  this.submitted = false;
@@ -21736,6 +21820,9 @@ var CaseReviewSpecificAccessRequestComponent = /** @class */ (function () {
21736
21820
  reason: reasonNumber,
21737
21821
  caseId: caseId,
21738
21822
  };
21823
+ if (models_1.AccessReason.REJECT_REQUEST === radioSelectedValue) {
21824
+ this.router.navigate(['rejected'], { relativeTo: this.route });
21825
+ }
21739
21826
  }
21740
21827
  };
21741
21828
  CaseReviewSpecificAccessRequestComponent.prototype.onCancel = function () {
@@ -21757,6 +21844,7 @@ var CaseReviewSpecificAccessRequestComponent = /** @class */ (function () {
21757
21844
  }),
21758
21845
  __metadata("design:paramtypes", [forms_1.FormBuilder,
21759
21846
  router_1.ActivatedRoute,
21847
+ router_1.Router,
21760
21848
  app_config_1.AbstractAppConfig])
21761
21849
  ], CaseReviewSpecificAccessRequestComponent);
21762
21850
  return CaseReviewSpecificAccessRequestComponent;
@@ -21839,11 +21927,13 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
21839
21927
  var core_1 = __webpack_require__(57208);
21840
21928
  var forms_1 = __webpack_require__(92985);
21841
21929
  var router_1 = __webpack_require__(92302);
21930
+ var case_editor_1 = __webpack_require__(27070);
21842
21931
  var models_1 = __webpack_require__(3234);
21843
21932
  var CaseSpecificAccessRequestComponent = /** @class */ (function () {
21844
- function CaseSpecificAccessRequestComponent(fb, router, route) {
21933
+ function CaseSpecificAccessRequestComponent(fb, router, casesService, route) {
21845
21934
  this.fb = fb;
21846
21935
  this.router = router;
21936
+ this.casesService = casesService;
21847
21937
  this.route = route;
21848
21938
  this.collapsed = false;
21849
21939
  this.submitted = false;
@@ -21881,6 +21971,7 @@ var CaseSpecificAccessRequestComponent = /** @class */ (function () {
21881
21971
  this.formGroup.get(this.specificReasonControlName).setValue('');
21882
21972
  };
21883
21973
  CaseSpecificAccessRequestComponent.prototype.onSubmit = function () {
21974
+ var _this = this;
21884
21975
  this.submitted = true;
21885
21976
  if (this.formGroup.get(this.specificReasonControlName).invalid) {
21886
21977
  this.errorMessage = {
@@ -21889,6 +21980,22 @@ var CaseSpecificAccessRequestComponent = /** @class */ (function () {
21889
21980
  fieldId: 'specific-reason',
21890
21981
  };
21891
21982
  }
21983
+ // Initiate Specific Access Request
21984
+ if (this.formGroup.valid) {
21985
+ // Get the Case Reference (for which access is being requested) from the ActivatedRouteSnapshot data
21986
+ var caseId = this.route.snapshot.data.case.case_id;
21987
+ var specificAccessRequest = {
21988
+ specificReason: this.formGroup.get(this.specificReasonControlName).value
21989
+ };
21990
+ this.$roleAssignmentResponseSubscription = this.casesService.createSpecificAccessRequest(caseId, specificAccessRequest)
21991
+ .subscribe(function (_response) {
21992
+ // Would have been nice to pass the caseId within state.data, but this isn't part of NavigationExtras until
21993
+ // Angular 7.2!
21994
+ _this.router.navigate(['success'], { relativeTo: _this.route });
21995
+ }, function (_error) {
21996
+ // Navigate to error page
21997
+ });
21998
+ }
21892
21999
  };
21893
22000
  CaseSpecificAccessRequestComponent.prototype.onCancel = function () {
21894
22001
  // Navigate to the page before previous one (should be Search Results or Case List page, for example)
@@ -21906,6 +22013,7 @@ var CaseSpecificAccessRequestComponent = /** @class */ (function () {
21906
22013
  }),
21907
22014
  __metadata("design:paramtypes", [forms_1.FormBuilder,
21908
22015
  router_1.Router,
22016
+ case_editor_1.CasesService,
21909
22017
  router_1.ActivatedRoute])
21910
22018
  ], CaseSpecificAccessRequestComponent);
21911
22019
  return CaseSpecificAccessRequestComponent;
@@ -22116,6 +22224,7 @@ var CaseViewerComponent = /** @class */ (function () {
22116
22224
  this.hasPrint = true;
22117
22225
  this.hasEventSelector = true;
22118
22226
  this.prependedTabs = [];
22227
+ this.appendedTabs = [];
22119
22228
  }
22120
22229
  CaseViewerComponent_1 = CaseViewerComponent;
22121
22230
  CaseViewerComponent.prototype.ngOnInit = function () {
@@ -22159,7 +22268,7 @@ var CaseViewerComponent = /** @class */ (function () {
22159
22268
  // remove once Access management goes live
22160
22269
  CaseViewerComponent.prototype.setMockData = function (caseDetails) {
22161
22270
  var accessManagementBasicViewMock = this.appConfig.getAccessManagementBasicViewMock();
22162
- if (accessManagementBasicViewMock.active && !caseDetails.basicFields) {
22271
+ if (accessManagementBasicViewMock && accessManagementBasicViewMock.active && !caseDetails.basicFields) {
22163
22272
  var access_process_index = caseDetails.metadataFields.findIndex(function (metadataField) {
22164
22273
  return metadataField.id === CaseViewerComponent_1.METADATA_FIELD_ACCESS_PROCEES_ID;
22165
22274
  });
@@ -22194,6 +22303,10 @@ var CaseViewerComponent = /** @class */ (function () {
22194
22303
  core_1.Input(),
22195
22304
  __metadata("design:type", Array)
22196
22305
  ], CaseViewerComponent.prototype, "prependedTabs", void 0);
22306
+ __decorate([
22307
+ core_1.Input(),
22308
+ __metadata("design:type", Array)
22309
+ ], CaseViewerComponent.prototype, "appendedTabs", void 0);
22197
22310
  __decorate([
22198
22311
  core_1.Input(),
22199
22312
  __metadata("design:type", domain_1.CaseView)
@@ -22255,6 +22368,7 @@ var case_view_1 = __webpack_require__(65389);
22255
22368
  var case_viewer_component_1 = __webpack_require__(89554);
22256
22369
  var printer_1 = __webpack_require__(65773);
22257
22370
  var services_2 = __webpack_require__(50137);
22371
+ var case_review_specific_access_reject_1 = __webpack_require__(84766);
22258
22372
  var CaseViewerModule = /** @class */ (function () {
22259
22373
  function CaseViewerModule() {
22260
22374
  }
@@ -22292,7 +22406,8 @@ var CaseViewerModule = /** @class */ (function () {
22292
22406
  case_specific_access_request_component_1.CaseSpecificAccessRequestComponent,
22293
22407
  case_review_specific_access_request_component_1.CaseReviewSpecificAccessRequestComponent,
22294
22408
  error_message_component_1.ErrorMessageComponent,
22295
- case_challenged_access_success_component_1.CaseChallengedAccessSuccessComponent
22409
+ case_challenged_access_success_component_1.CaseChallengedAccessSuccessComponent,
22410
+ case_review_specific_access_reject_1.CaseReviewSpecificAccessRejectComponent
22296
22411
  ],
22297
22412
  exports: [
22298
22413
  case_viewer_component_1.CaseViewerComponent,
@@ -22747,6 +22862,7 @@ var case_review_specific_access_request_1 = __webpack_require__(83444);
22747
22862
  var case_event_trigger_component_1 = __webpack_require__(83645);
22748
22863
  var printer_1 = __webpack_require__(65773);
22749
22864
  var services_1 = __webpack_require__(50137);
22865
+ var case_review_specific_access_reject_1 = __webpack_require__(84766);
22750
22866
  exports.viewerRouting = [
22751
22867
  {
22752
22868
  path: 'print',
@@ -22809,6 +22925,13 @@ exports.viewerRouting = [
22809
22925
  },
22810
22926
  pathMatch: 'full',
22811
22927
  },
22928
+ {
22929
+ path: 'rejected',
22930
+ component: case_review_specific_access_reject_1.CaseReviewSpecificAccessRejectComponent,
22931
+ data: {
22932
+ title: 'Review Access Rejected'
22933
+ }
22934
+ }
22812
22935
  ],
22813
22936
  },
22814
22937
  ];
@@ -69091,7 +69214,14 @@ module.exports = "<div *ngIf=\"isDataLoaded()\" class=\"screen-990\">\n <ccd-ac
69091
69214
  /***/ 99839:
69092
69215
  /***/ ((module) => {
69093
69216
 
69094
- module.exports = "<!-- Generic error heading and error message to be displayed only if there are no specific callback errors or warnings, or no error details -->\n<div *ngIf=\"error && !(error.callbackErrors || error.callbackWarnings || error.details)\" class=\"error-summary\"\n role=\"group\" aria-labelledby=\"edit-case-event_error-summary-heading\" tabindex=\"-1\">\n <h1 class=\"heading-h1 error-summary-heading\" id=\"edit-case-event_error-summary-heading\">\n Something went wrong\n </h1>\n <div class=\"govuk-error-summary__body\" id=\"edit-case-event_error-summary-body\">\n <p>We're working to fix the problem. Try again shortly.</p>\n <p><a href=\"get-help\" target=\"_blank\">Contact us</a> if you're still having problems.</p>\n </div>\n</div>\n<!-- Callback error heading and error message to be displayed if there are specific error details -->\n<div *ngIf=\"error && error.details\" class=\"error-summary\" role=\"group\"\n aria-labelledby=\"edit-case-event_error-summary-heading\" tabindex=\"-1\">\n <h2 class=\"heading-h2 error-summary-heading\" id=\"edit-case-event_error-summary-heading\">\n The callback data failed validation\n </h2>\n <p>{{error.message}}</p>\n <ul *ngIf=\"error.details?.field_errors\" class=\"error-summary-list\">\n <li *ngFor=\"let fieldError of error.details.field_errors\">\n {{fieldError.message}}\n </li>\n </ul>\n</div>\n<ccd-callback-errors\n [triggerTextContinue]=\"triggerTextStart\"\n [triggerTextIgnore]=\"triggerTextIgnoreWarnings\"\n [callbackErrorsSubject]=\"callbackErrorsSubject\"\n (callbackErrorsContext)=\"callbackErrorsNotify($event)\">\n</ccd-callback-errors>\n<ccd-activity [caseId]=\"caseDetails.case_id\" [displayMode]=\"BANNER\"></ccd-activity>\n<div class=\"grid-row\">\n <div class=\"column-one-half\">\n <ccd-case-header [caseDetails]=\"caseDetails\"></ccd-case-header>\n <div class=\"case-viewer-controls\" *ngIf=\"hasPrint && !isDraft() && isPrintEnabled()\">\n <a id=\"case-viewer-control-print\" routerLink=\"print\" class=\"button button-secondary\">Print</a>\n </div>\n </div>\n <div *ngIf=\"hasEventSelector\" class=\"column-one-half\">\n <ccd-event-trigger [isDisabled]=\"isTriggerButtonDisabled()\" [triggers]=\"caseDetails.triggers\"\n [triggerText]=\"triggerText\" (onTriggerChange)=\"clearErrorsAndWarnings()\"\n (onTriggerSubmit)=\"applyTrigger($event)\"></ccd-event-trigger>\n </div>\n</div>\n<div class=\"grid-row\">\n <div class=\"column-full\">\n <ng-container *ngIf=\"hasTabsPresent()\">\n <mat-tab-group #tabGroup animationDuration=\"0ms\" (selectedTabChange)=\"tabChanged($event)\" [disableRipple]=\"true\">\n <mat-tab *ngFor=\"let tab of prependedTabs\" [id]=\"tab.id\" [label]=\"tab.label\">\n </mat-tab>\n <mat-tab *ngFor=\"let tab of sortedTabs; let curIdx=index\" [id]=\"tab.id\" [label]=\"tab.label\">\n <ng-template matTabContent>\n <table [class]=\"tab.id\">\n <tbody>\n <ng-container *ngFor=\"let field of tab | ccdTabFields | ccdReadFieldsFilter:false :undefined :true : formGroup.controls['data']\">\n <div ccdLabelSubstitutor [caseField]=\"field\" [contextFields]=\"caseFields\" [hidden]=\"field.hidden\">\n <ng-container [ngSwitch]=\"!(field | ccdIsCompound)\">\n <tr *ngSwitchCase=\"true\">\n <th>\n <div class=\"case-viewer-label text-16\">{{field.label}}</div>\n </th>\n <td>\n <span class=\"text-16\">\n <ccd-field-read [topLevelFormGroup]=\"formGroup.controls['data']\"\n [caseField]=\"field\" [caseReference]=\"caseDetails.case_id\">\n </ccd-field-read>\n </span>\n </td>\n </tr>\n <tr *ngSwitchCase=\"false\" class=\"compound-field\">\n <th>\n <span class=\"text-16\">\n <ccd-field-read [topLevelFormGroup]=\"formGroup.controls['data']\"\n [caseField]=\"field\" [caseReference]=\"caseDetails.case_id\">\n </ccd-field-read>\n </span>\n </th>\n </tr>\n </ng-container>\n </div>\n </ng-container>\n </tbody>\n </table>\n </ng-template>\n </mat-tab>\n </mat-tab-group>\n <router-outlet *ngIf=\"prependedTabs && prependedTabs.length\"></router-outlet>\n </ng-container>\n </div>\n</div>"
69217
+ module.exports = "<!-- Generic error heading and error message to be displayed only if there are no specific callback errors or warnings, or no error details -->\n<div *ngIf=\"error && !(error.callbackErrors || error.callbackWarnings || error.details)\" class=\"error-summary\"\n role=\"group\" aria-labelledby=\"edit-case-event_error-summary-heading\" tabindex=\"-1\">\n <h1 class=\"heading-h1 error-summary-heading\" id=\"edit-case-event_error-summary-heading\">\n Something went wrong\n </h1>\n <div class=\"govuk-error-summary__body\" id=\"edit-case-event_error-summary-body\">\n <p>We're working to fix the problem. Try again shortly.</p>\n <p><a href=\"get-help\" target=\"_blank\">Contact us</a> if you're still having problems.</p>\n </div>\n</div>\n<!-- Callback error heading and error message to be displayed if there are specific error details -->\n<div *ngIf=\"error && error.details\" class=\"error-summary\" role=\"group\"\n aria-labelledby=\"edit-case-event_error-summary-heading\" tabindex=\"-1\">\n <h2 class=\"heading-h2 error-summary-heading\" id=\"edit-case-event_error-summary-heading\">\n The callback data failed validation\n </h2>\n <p>{{error.message}}</p>\n <ul *ngIf=\"error.details?.field_errors\" class=\"error-summary-list\">\n <li *ngFor=\"let fieldError of error.details.field_errors\">\n {{fieldError.message}}\n </li>\n </ul>\n</div>\n<ccd-callback-errors\n [triggerTextContinue]=\"triggerTextStart\"\n [triggerTextIgnore]=\"triggerTextIgnoreWarnings\"\n [callbackErrorsSubject]=\"callbackErrorsSubject\"\n (callbackErrorsContext)=\"callbackErrorsNotify($event)\">\n</ccd-callback-errors>\n<ccd-activity [caseId]=\"caseDetails.case_id\" [displayMode]=\"BANNER\"></ccd-activity>\n<div class=\"grid-row\">\n <div class=\"column-one-half\">\n <ccd-case-header [caseDetails]=\"caseDetails\"></ccd-case-header>\n <div class=\"case-viewer-controls\" *ngIf=\"hasPrint && !isDraft() && isPrintEnabled()\">\n <a id=\"case-viewer-control-print\" routerLink=\"print\" class=\"button button-secondary\">Print</a>\n </div>\n </div>\n <div *ngIf=\"hasEventSelector\" class=\"column-one-half\">\n <ccd-event-trigger [isDisabled]=\"isTriggerButtonDisabled()\" [triggers]=\"caseDetails.triggers\"\n [triggerText]=\"triggerText\" (onTriggerChange)=\"clearErrorsAndWarnings()\"\n (onTriggerSubmit)=\"applyTrigger($event)\"></ccd-event-trigger>\n </div>\n</div>\n<div class=\"grid-row\">\n <div class=\"column-full\">\n <ng-container *ngIf=\"hasTabsPresent()\">\n <mat-tab-group #tabGroup animationDuration=\"0ms\" (selectedTabChange)=\"tabChanged($event)\" [disableRipple]=\"true\">\n <mat-tab *ngFor=\"let tab of prependedTabs\" [id]=\"tab.id\" [label]=\"tab.label\">\n </mat-tab>\n <mat-tab *ngFor=\"let tab of sortedTabs; let curIdx=index\" [id]=\"tab.id\" [label]=\"tab.label\">\n <ng-template matTabContent>\n <table [class]=\"tab.id\">\n <tbody>\n <ng-container *ngFor=\"let field of tab | ccdTabFields | ccdReadFieldsFilter:false :undefined :true : formGroup.controls['data']\">\n <div ccdLabelSubstitutor [caseField]=\"field\" [contextFields]=\"caseFields\" [hidden]=\"field.hidden\">\n <ng-container [ngSwitch]=\"!(field | ccdIsCompound)\">\n <tr *ngSwitchCase=\"true\">\n <th>\n <div class=\"case-viewer-label text-16\">{{field.label}}</div>\n </th>\n <td>\n <span class=\"text-16\">\n <ccd-field-read [topLevelFormGroup]=\"formGroup.controls['data']\"\n [caseField]=\"field\" [caseReference]=\"caseDetails.case_id\">\n </ccd-field-read>\n </span>\n </td>\n </tr>\n <tr *ngSwitchCase=\"false\" class=\"compound-field\">\n <th>\n <span class=\"text-16\">\n <ccd-field-read [topLevelFormGroup]=\"formGroup.controls['data']\"\n [caseField]=\"field\" [caseReference]=\"caseDetails.case_id\">\n </ccd-field-read>\n </span>\n </th>\n </tr>\n </ng-container>\n </div>\n </ng-container>\n </tbody>\n </table>\n </ng-template>\n </mat-tab>\n <mat-tab *ngFor=\"let tab of appendedTabs\" [id]=\"tab.id\" [label]=\"tab.label\">\n </mat-tab>\n </mat-tab-group>\n <router-outlet *ngIf=\"(prependedTabs && prependedTabs.length) || (appendedTabs && appendedTabs.length)\"></router-outlet>\n </ng-container>\n </div>\n</div>\n"
69218
+
69219
+ /***/ }),
69220
+
69221
+ /***/ 24959:
69222
+ /***/ ((module) => {
69223
+
69224
+ module.exports = "<p></p>\n<div class=\"govuk-width-container\">\n <div class=\"govuk-grid-row\">\n <div class=\"govuk-grid-column-two-thirds\">\n <div class=\"govuk-panel govuk-panel--confirmation\">\n <h1 class=\"govuk-panel__title\">\n Request for access denied<br>\n </h1>\n </div>\n <h2 class=\"govuk-heading-m \">What happens next</h2>\n <p class=\"govuk-body\">\n The requester has been denied access to this case.\n </p>\n </div>\n </div>\n <div class=\"form-group form-group-related\">\n <p ><a button class=\"govuk-button govuk-!-margin-right-3\" href=\"tasks/list\" >{{returnToMyTask}}</a></p>\n </div>\n <p class=\"cancel\"><a href=\"cases/case-details/{{caseId}}\" >{{retunToTask}}</a></p>\n</div>"
69095
69225
 
69096
69226
  /***/ }),
69097
69227
 
@@ -69119,7 +69249,7 @@ module.exports = "<div *ngIf=\"isDataLoaded()\">\n <ccd-case-viewer [hasPrint
69119
69249
  /***/ 67025:
69120
69250
  /***/ ((module) => {
69121
69251
 
69122
- module.exports = "<div *ngIf=\"isDataLoaded()\">\n <ccd-case-basic-access-view *ngIf=\"!hasStandardAccess()\" [accessType]=\"userAccessType\" [caseDetails]=\"caseDetails\"></ccd-case-basic-access-view>\n <ccd-case-full-access-view *ngIf=\"hasStandardAccess()\" [caseDetails]=\"caseDetails\" [hasPrint]=\"hasPrint\" [hasEventSelector]=\"hasEventSelector\" [prependedTabs]=\"prependedTabs\"></ccd-case-full-access-view>\n</div>\n"
69252
+ module.exports = "<div *ngIf=\"isDataLoaded()\">\n <ccd-case-basic-access-view *ngIf=\"!hasStandardAccess()\" [accessType]=\"userAccessType\" [caseDetails]=\"caseDetails\"></ccd-case-basic-access-view>\n <ccd-case-full-access-view *ngIf=\"hasStandardAccess()\" [caseDetails]=\"caseDetails\" [hasPrint]=\"hasPrint\" [hasEventSelector]=\"hasEventSelector\" [prependedTabs]=\"prependedTabs\" [appendedTabs]=\"appendedTabs\"></ccd-case-full-access-view>\n</div>\n"
69123
69253
 
69124
69254
  /***/ }),
69125
69255
 
@@ -69294,7 +69424,7 @@ module.exports = "<ng-container [ngSwitch]=\"context\">\n <ccd-read-complex-fie
69294
69424
  /***/ 93616:
69295
69425
  /***/ ((module) => {
69296
69426
 
69297
- module.exports = "<div class=\"form-group\" [id]=\"id()\">\n\n <h2 *ngIf=\"renderLabel\" class=\"heading-h2\">{{caseField | ccdFieldLabel}}</h2>\n <ng-container *ngFor=\"let field of complexFields\">\n <ng-container [ngSwitch]=\"field | ccdIsReadOnlyAndNotCollection\">\n <ccd-field-read *ngSwitchCase=\"true\"\n ccdLabelSubstitutor\n [caseField]=\"buildField(field)\"\n [caseFields]=\"caseFields\"\n [formGroup]=\"formGroup\"\n [withLabel]=\"true\">\n </ccd-field-read>\n <ccd-field-write *ngSwitchCase=\"false\"\n ccdLabelSubstitutor\n [caseField]=\"field\"\n [caseFields]=\"caseFields\"\n [formGroup]=\"formGroup\"\n [parent]=\"complexGroup\"\n [idPrefix]=\"buildIdPrefix(field)\"\n [hidden]=\"field.hidden\"\n [isExpanded]=\"isExpanded\"\n [isInSearchBlock]=\"isInSearchBlock\">\n </ccd-field-write>\n </ng-container>\n </ng-container>\n</div>\n"
69427
+ module.exports = "<div class=\"form-group\" [id]=\"id()\">\n\n <h2 *ngIf=\"renderLabel\" class=\"heading-h2\">{{caseField | ccdFieldLabel}}</h2>\n <ng-container *ngFor=\"let field of complexFields\">\n <ng-container [ngSwitch]=\"field | ccdIsReadOnly\">\n <ccd-field-read *ngSwitchCase=\"true\"\n ccdLabelSubstitutor\n [caseField]=\"buildField(field)\"\n [caseFields]=\"caseFields\"\n [formGroup]=\"formGroup\"\n [withLabel]=\"true\">\n </ccd-field-read>\n <ccd-field-write *ngSwitchCase=\"false\"\n ccdLabelSubstitutor\n [caseField]=\"field\"\n [caseFields]=\"caseFields\"\n [formGroup]=\"formGroup\"\n [parent]=\"complexGroup\"\n [idPrefix]=\"buildIdPrefix(field)\"\n [hidden]=\"field.hidden\"\n [isExpanded]=\"isExpanded\"\n [isInSearchBlock]=\"isInSearchBlock\">\n </ccd-field-write>\n </ng-container>\n </ng-container>\n</div>\n"
69298
69428
 
69299
69429
  /***/ }),
69300
69430