@hmcts/ccd-case-ui-toolkit 7.3.68-multiple-role-categories → 7.3.68-srt-rc-2

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.
@@ -1263,6 +1263,12 @@ class AbstractAppConfig {
1263
1263
  return 'ithc';
1264
1264
  return 'prod';
1265
1265
  }
1266
+ getWASupportedRoleCategories() {
1267
+ return [];
1268
+ }
1269
+ getWASupportedRoleTypes() {
1270
+ return [];
1271
+ }
1266
1272
  getCamRoleAssignmentsApiUrl() {
1267
1273
  return undefined;
1268
1274
  }
@@ -1319,6 +1325,8 @@ class CaseEditorConfig {
1319
1325
  icp_jurisdictions;
1320
1326
  events_to_hide;
1321
1327
  enable_service_specific_multi_followups;
1328
+ wa_supported_role_categories;
1329
+ wa_supported_role_types;
1322
1330
  }
1323
1331
 
1324
1332
  class StructuredLoggerService {
@@ -3565,6 +3573,7 @@ class CaseField {
3565
3573
  acls;
3566
3574
  metadata;
3567
3575
  formatted_value;
3576
+ hmctsServiceId;
3568
3577
  retain_hidden_value;
3569
3578
  wizardProps;
3570
3579
  _value;
@@ -3961,6 +3970,7 @@ class CaseView {
3961
3970
  events;
3962
3971
  metadataFields;
3963
3972
  basicFields;
3973
+ hmctsServiceId;
3964
3974
  case_flag;
3965
3975
  }
3966
3976
  __decorate([
@@ -8401,6 +8411,26 @@ class WindowService {
8401
8411
  type: Injectable
8402
8412
  }], null, null); })();
8403
8413
 
8414
+ class FocusService {
8415
+ /** unique ID of DOM element this service will focus on */
8416
+ elementIdToFocus = 'focusService-elementIdToFocus';
8417
+ /**
8418
+ * Focus on a specific element with the elementIdToFocus.
8419
+ * If there is no element in the DOM, no action is taken.
8420
+ */
8421
+ focus() {
8422
+ const elementToFocus = document.getElementById(this.elementIdToFocus);
8423
+ if (elementToFocus) {
8424
+ elementToFocus.focus();
8425
+ }
8426
+ }
8427
+ static ɵfac = function FocusService_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || FocusService)(); };
8428
+ static ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: FocusService, factory: FocusService.ɵfac });
8429
+ }
8430
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(FocusService, [{
8431
+ type: Injectable
8432
+ }], null, null); })();
8433
+
8404
8434
  class WorkbasketInputFilterService {
8405
8435
  httpService;
8406
8436
  appConfig;
@@ -8651,33 +8681,31 @@ class CaseAccessUtils {
8651
8681
  static CTSC_ROLE = 'ctsc';
8652
8682
  static CTSC_ROLE_CATEGORY = 'CTSC';
8653
8683
  static CTSC_ROLE_NAME = 'ctsc';
8654
- // fallback purely if roleCategories is not available in
8655
- getMappedRoleCategories(roles = []) {
8684
+ getMappedRoleCategory(roles = [], roleCategories = []) {
8656
8685
  const roleKeywords = roles.join().split('-').join().split(',');
8657
- const roleCategoryList = [];
8658
- if (this.roleOrCategoryExists(CaseAccessUtils.JUDGE_ROLE, roleKeywords)) {
8659
- roleCategoryList.push(CaseAccessUtils.JUDGE_ROLE_CATEGORY);
8686
+ if (this.roleOrCategoryExists(CaseAccessUtils.JUDGE_ROLE, CaseAccessUtils.JUDGE_ROLE_CATEGORY, roleKeywords, roleCategories)) {
8687
+ return CaseAccessUtils.JUDGE_ROLE_CATEGORY;
8660
8688
  }
8661
- if (this.roleOrCategoryExists(CaseAccessUtils.PROFESSIONAL_ROLE, roleKeywords)) {
8662
- roleCategoryList.push(CaseAccessUtils.PROFESSIONAL_ROLE_CATEGORY);
8689
+ else if (this.roleOrCategoryExists(CaseAccessUtils.PROFESSIONAL_ROLE, CaseAccessUtils.PROFESSIONAL_ROLE_CATEGORY, roleKeywords, roleCategories)) {
8690
+ return CaseAccessUtils.PROFESSIONAL_ROLE_CATEGORY;
8663
8691
  }
8664
- if (this.roleOrCategoryExists(CaseAccessUtils.CITIZEN_ROLE, roleKeywords)) {
8665
- roleCategoryList.push(CaseAccessUtils.CITIZEN_ROLE_CATEGORY);
8692
+ else if (this.roleOrCategoryExists(CaseAccessUtils.CITIZEN_ROLE, CaseAccessUtils.CITIZEN_ROLE_CATEGORY, roleKeywords, roleCategories)) {
8693
+ return CaseAccessUtils.CITIZEN_ROLE_CATEGORY;
8666
8694
  }
8667
- if (this.roleOrCategoryExists(CaseAccessUtils.ADMIN_ROLE, roleKeywords)) {
8668
- roleCategoryList.push(CaseAccessUtils.ADMIN_ROLE_CATEGORY);
8695
+ else if (this.roleOrCategoryExists(CaseAccessUtils.ADMIN_ROLE, CaseAccessUtils.ADMIN_ROLE_CATEGORY, roleKeywords, roleCategories)) {
8696
+ return CaseAccessUtils.ADMIN_ROLE_CATEGORY;
8669
8697
  }
8670
- if (this.roleOrCategoryExists(CaseAccessUtils.CTSC_ROLE, roleKeywords)) {
8671
- roleCategoryList.push(CaseAccessUtils.CTSC_ROLE_CATEGORY);
8698
+ else if (this.roleOrCategoryExists(CaseAccessUtils.CTSC_ROLE, CaseAccessUtils.CTSC_ROLE_CATEGORY, roleKeywords, roleCategories)) {
8699
+ return CaseAccessUtils.CTSC_ROLE_CATEGORY;
8672
8700
  }
8673
- if (this.roleOrCategoryExists(CaseAccessUtils.LEGAL_OPERATIONS_ROLE, roleKeywords)) {
8674
- roleCategoryList.push(CaseAccessUtils.LEGAL_OPERATIONS_ROLE_CATEGORY);
8701
+ else {
8702
+ return CaseAccessUtils.LEGAL_OPERATIONS_ROLE_CATEGORY;
8675
8703
  }
8676
- return roleCategoryList;
8677
8704
  }
8678
- roleOrCategoryExists(roleKeyword, roleKeywords) {
8705
+ roleOrCategoryExists(roleKeyword, roleCategory, roleKeywords, roleCategories) {
8706
+ const categoryExists = roleCategories.indexOf(roleCategory) > -1;
8679
8707
  const keywordExists = roleKeywords.indexOf(roleKeyword) > -1;
8680
- return keywordExists;
8708
+ return categoryExists ? categoryExists : keywordExists;
8681
8709
  }
8682
8710
  getAMRoleName(accessType, aMRole) {
8683
8711
  let roleName = '';
@@ -9125,19 +9153,22 @@ class CaseworkerService {
9125
9153
 
9126
9154
  class CaseNotifier {
9127
9155
  casesService;
9156
+ caseFlagRefdataService;
9128
9157
  static CASE_NAME = 'caseNameHmctsInternal';
9129
9158
  static CASE_LOCATION = 'caseManagementLocation';
9130
9159
  caseViewSource = new BehaviorSubject(new CaseView());
9160
+ hmctsServiceIdByCaseType = new Map();
9131
9161
  caseView = this.caseViewSource.asObservable();
9132
9162
  cachedCaseView;
9133
- constructor(casesService) {
9163
+ constructor(casesService, caseFlagRefdataService) {
9134
9164
  this.casesService = casesService;
9165
+ this.caseFlagRefdataService = caseFlagRefdataService;
9135
9166
  }
9136
9167
  removeCachedCase() {
9137
9168
  this.cachedCaseView = null;
9138
9169
  }
9139
9170
  announceCase(c) {
9140
- this.caseViewSource.next(c);
9171
+ this.resolveHmctsServiceId(c).subscribe(caseView => this.caseViewSource.next(caseView));
9141
9172
  }
9142
9173
  fetchAndRefresh(cid) {
9143
9174
  return this.casesService
@@ -9145,8 +9176,10 @@ class CaseNotifier {
9145
9176
  .pipe(map(caseView => {
9146
9177
  this.cachedCaseView = plainToClassFromExist(new CaseView(), caseView);
9147
9178
  this.setBasicFields(this.cachedCaseView.tabs);
9148
- this.announceCase(this.cachedCaseView);
9149
9179
  return this.cachedCaseView;
9180
+ }), switchMap(caseView => this.resolveHmctsServiceId(caseView)), map(caseView => {
9181
+ this.announceCase(caseView);
9182
+ return caseView;
9150
9183
  }));
9151
9184
  }
9152
9185
  setBasicFields(tabs) {
@@ -9161,12 +9194,32 @@ class CaseNotifier {
9161
9194
  }
9162
9195
  });
9163
9196
  }
9164
- static ɵfac = function CaseNotifier_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CaseNotifier)(i0.ɵɵinject(CasesService)); };
9197
+ resolveHmctsServiceId(caseView) {
9198
+ const caseTypeId = caseView?.case_type?.id;
9199
+ if (!caseTypeId || !this.caseFlagRefdataService) {
9200
+ return of(caseView);
9201
+ }
9202
+ if (this.hmctsServiceIdByCaseType.has(caseTypeId)) {
9203
+ caseView.hmctsServiceId = this.hmctsServiceIdByCaseType.get(caseTypeId);
9204
+ return of(caseView);
9205
+ }
9206
+ return this.caseFlagRefdataService.getHmctsServiceDetailsByCaseType(caseTypeId).pipe(map((serviceDetails) => {
9207
+ const hmctsServiceId = serviceDetails?.find((serviceDetail) => !!serviceDetail.service_code)?.service_code;
9208
+ if (hmctsServiceId) {
9209
+ this.hmctsServiceIdByCaseType.set(caseTypeId, hmctsServiceId);
9210
+ caseView.hmctsServiceId = hmctsServiceId;
9211
+ }
9212
+ return caseView;
9213
+ }), catchError(() => of(caseView)));
9214
+ }
9215
+ static ɵfac = function CaseNotifier_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CaseNotifier)(i0.ɵɵinject(CasesService), i0.ɵɵinject(CaseFlagRefdataService, 8)); };
9165
9216
  static ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: CaseNotifier, factory: CaseNotifier.ɵfac });
9166
9217
  }
9167
9218
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CaseNotifier, [{
9168
9219
  type: Injectable
9169
- }], () => [{ type: CasesService }], null); })();
9220
+ }], () => [{ type: CasesService }, { type: CaseFlagRefdataService, decorators: [{
9221
+ type: Optional
9222
+ }] }], null); })();
9170
9223
 
9171
9224
  var Permissions;
9172
9225
  (function (Permissions) {
@@ -10165,7 +10218,7 @@ class CaseEditComponent {
10165
10218
  return of(true);
10166
10219
  }
10167
10220
  finishEventCompletionLogic(eventResponse) {
10168
- this.caseNotifier.cachedCaseView = null;
10221
+ this.caseNotifier.removeCachedCase();
10169
10222
  this.sessionStorageService.removeItem('eventUrl');
10170
10223
  const confirmation = this.buildConfirmation(eventResponse);
10171
10224
  if (confirmation && (confirmation.getHeader() || confirmation.getBody())) {
@@ -10565,21 +10618,16 @@ class CasesService {
10565
10618
  const userInfoStr = this.sessionStorageService.getItem('userDetails');
10566
10619
  const camUtils = new CaseAccessUtils();
10567
10620
  let userInfo;
10568
- userInfo = userInfoStr ? JSON.parse(userInfoStr) : null;
10569
- if (!userInfo) {
10570
- return throwError(() => new Error('User info not found in session storage'));
10571
- }
10572
- // EXUI-4758 - getMappedRoleCategories no longer returns a single string, checks all roles to get the most likely roleCategory
10573
- // Unsure whether we should be using mapped role categories any more - should trust the roleCategories from userInfo if they exist
10574
- const roleCategories = userInfo.roleCategories || camUtils.getMappedRoleCategories(userInfo.roles);
10575
- const roleName = camUtils.getAMRoleName('challenged', roleCategories[0]);
10621
+ if (userInfoStr) {
10622
+ userInfo = JSON.parse(userInfoStr);
10623
+ }
10624
+ const roleCategory = userInfo.roleCategory || camUtils.getMappedRoleCategory(userInfo.roles, userInfo.roleCategories);
10625
+ const roleName = camUtils.getAMRoleName('challenged', roleCategory);
10576
10626
  const beginTime = new Date();
10577
10627
  const endTime = new Date(new Date().setUTCHours(23, 59, 59, 999));
10578
10628
  const id = userInfo.id ? userInfo.id : userInfo.uid;
10579
10629
  const isNew = true;
10580
- const payload = camUtils.getAMPayload(id, id, roleName,
10581
- // EXUI-4758 - Return first roleCategory as the roleCategory
10582
- roleCategories[0], 'CHALLENGED', caseId, request, beginTime, endTime, isNew);
10630
+ const payload = camUtils.getAMPayload(id, id, roleName, roleCategory, 'CHALLENGED', caseId, request, beginTime, endTime, isNew);
10583
10631
  return this.http.post(`/api/challenged-access-request`, payload);
10584
10632
  }
10585
10633
  createSpecificAccessRequest(caseId, sar) {
@@ -10587,14 +10635,10 @@ class CasesService {
10587
10635
  const userInfoStr = this.sessionStorageService.getItem('userDetails');
10588
10636
  const camUtils = new CaseAccessUtils();
10589
10637
  let userInfo;
10590
- userInfo = userInfoStr ? JSON.parse(userInfoStr) : null;
10591
- if (!userInfo) {
10592
- return throwError(() => new Error('User info not found in session storage'));
10593
- }
10594
- // EXUI-4758 - See above comment
10595
- const roleCategories = userInfo.roleCategories || camUtils.getMappedRoleCategories(userInfo.roles);
10596
- // EXUI-4758 - Return first roleCategory as the roleCategory for now
10597
- const roleCategory = roleCategories[0];
10638
+ if (userInfoStr) {
10639
+ userInfo = JSON.parse(userInfoStr);
10640
+ }
10641
+ const roleCategory = userInfo.roleCategory || camUtils.getMappedRoleCategory(userInfo.roles, userInfo.roleCategories);
10598
10642
  const roleName = camUtils.getAMRoleName('specific', roleCategory);
10599
10643
  const id = userInfo.id ? userInfo.id : userInfo.uid;
10600
10644
  const payload = camUtils.getAMPayload(null, id, roleName, roleCategory, 'SPECIFIC', caseId, sar, null, null, true);
@@ -11505,6 +11549,7 @@ class CaseEditPageComponent {
11505
11549
  addressService;
11506
11550
  linkedCasesService;
11507
11551
  caseFlagStateService;
11552
+ focusService;
11508
11553
  static RESUMED_FORM_DISCARD = 'RESUMED_FORM_DISCARD';
11509
11554
  static NEW_FORM_DISCARD = 'NEW_FORM_DISCARD';
11510
11555
  static NEW_FORM_SAVE = 'NEW_FORM_CHANGED_SAVE';
@@ -11540,13 +11585,7 @@ class CaseEditPageComponent {
11540
11585
  static scrollToTop() {
11541
11586
  window.scrollTo(0, 0);
11542
11587
  }
11543
- static setFocusToTop() {
11544
- const topContainer = document.getElementById('top');
11545
- if (topContainer) {
11546
- topContainer.focus();
11547
- }
11548
- }
11549
- constructor(caseEdit, route, formValueService, formErrorService, cdRef, pageValidationService, dialog, caseFieldService, caseEditDataService, loadingService, validPageListCaseFieldsService, multipageComponentStateService, addressService, linkedCasesService, caseFlagStateService) {
11588
+ constructor(caseEdit, route, formValueService, formErrorService, cdRef, pageValidationService, dialog, caseFieldService, caseEditDataService, loadingService, validPageListCaseFieldsService, multipageComponentStateService, addressService, linkedCasesService, caseFlagStateService, focusService) {
11550
11589
  this.caseEdit = caseEdit;
11551
11590
  this.route = route;
11552
11591
  this.formValueService = formValueService;
@@ -11562,6 +11601,7 @@ class CaseEditPageComponent {
11562
11601
  this.addressService = addressService;
11563
11602
  this.linkedCasesService = linkedCasesService;
11564
11603
  this.caseFlagStateService = caseFlagStateService;
11604
+ this.focusService = focusService;
11565
11605
  this.multipageComponentStateService.setInstigator(this);
11566
11606
  }
11567
11607
  onFinalNext() {
@@ -11626,7 +11666,7 @@ class CaseEditPageComponent {
11626
11666
  }
11627
11667
  this.triggerText = this.getTriggerText();
11628
11668
  });
11629
- CaseEditPageComponent.setFocusToTop();
11669
+ this.focusService.focus();
11630
11670
  this.caseEditFormSub = this.caseEditDataService.caseEditForm$.subscribe({
11631
11671
  next: editForm => this.editForm = editForm
11632
11672
  });
@@ -11687,7 +11727,7 @@ class CaseEditPageComponent {
11687
11727
  if (this.getPageNumber() !== undefined) {
11688
11728
  this.previousStep();
11689
11729
  }
11690
- CaseEditPageComponent.setFocusToTop();
11730
+ this.focusService.focus();
11691
11731
  }
11692
11732
  // Adding validation message to show it as Error Summary
11693
11733
  generateErrorMessage(fields, container, path, sourceFromComplexField) {
@@ -11765,7 +11805,7 @@ class CaseEditPageComponent {
11765
11805
  });
11766
11806
  }
11767
11807
  else {
11768
- this.validationErrors.push({ id, message: `Select or fill the required ${casefield.label} field` });
11808
+ this.validationErrors.push({ id, message: `Select or fill the required ${label} field` });
11769
11809
  fieldElement.markAsDirty();
11770
11810
  }
11771
11811
  }
@@ -11896,7 +11936,7 @@ class CaseEditPageComponent {
11896
11936
  // purposes)
11897
11937
  this.removeAllJudicialUserFormControls(this.currentPage, this.editForm);
11898
11938
  }
11899
- CaseEditPageComponent.setFocusToTop();
11939
+ this.focusService.focus();
11900
11940
  }
11901
11941
  updateFormData(jsonData) {
11902
11942
  for (const caseFieldId of Object.keys(jsonData.data)) {
@@ -12015,6 +12055,8 @@ class CaseEditPageComponent {
12015
12055
  else {
12016
12056
  this.caseEdit.cancelled.emit();
12017
12057
  }
12058
+ // clear CaseView cache to allow any incidental changes to get picked up once the edit has cancelled
12059
+ this.caseEdit.caseNotifier.removeCachedCase();
12018
12060
  this.clearValidationErrors();
12019
12061
  this.multipageComponentStateService.reset();
12020
12062
  }
@@ -12188,7 +12230,7 @@ class CaseEditPageComponent {
12188
12230
  }
12189
12231
  });
12190
12232
  }
12191
- static ɵfac = function CaseEditPageComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CaseEditPageComponent)(i0.ɵɵdirectiveInject(CaseEditComponent), i0.ɵɵdirectiveInject(i1$1.ActivatedRoute), i0.ɵɵdirectiveInject(FormValueService), i0.ɵɵdirectiveInject(FormErrorService), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef), i0.ɵɵdirectiveInject(PageValidationService), i0.ɵɵdirectiveInject(i1$3.MatLegacyDialog), i0.ɵɵdirectiveInject(CaseFieldService), i0.ɵɵdirectiveInject(CaseEditDataService), i0.ɵɵdirectiveInject(LoadingService), i0.ɵɵdirectiveInject(ValidPageListCaseFieldsService), i0.ɵɵdirectiveInject(MultipageComponentStateService), i0.ɵɵdirectiveInject(AddressesService), i0.ɵɵdirectiveInject(LinkedCasesService), i0.ɵɵdirectiveInject(CaseFlagStateService)); };
12233
+ static ɵfac = function CaseEditPageComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CaseEditPageComponent)(i0.ɵɵdirectiveInject(CaseEditComponent), i0.ɵɵdirectiveInject(i1$1.ActivatedRoute), i0.ɵɵdirectiveInject(FormValueService), i0.ɵɵdirectiveInject(FormErrorService), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef), i0.ɵɵdirectiveInject(PageValidationService), i0.ɵɵdirectiveInject(i1$3.MatLegacyDialog), i0.ɵɵdirectiveInject(CaseFieldService), i0.ɵɵdirectiveInject(CaseEditDataService), i0.ɵɵdirectiveInject(LoadingService), i0.ɵɵdirectiveInject(ValidPageListCaseFieldsService), i0.ɵɵdirectiveInject(MultipageComponentStateService), i0.ɵɵdirectiveInject(AddressesService), i0.ɵɵdirectiveInject(LinkedCasesService), i0.ɵɵdirectiveInject(CaseFlagStateService), i0.ɵɵdirectiveInject(FocusService)); };
12192
12234
  static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CaseEditPageComponent, selectors: [["ccd-case-edit-page"]], standalone: false, decls: 12, vars: 11, consts: [["titleBlock", ""], ["idBlock", ""], [4, "ngIf"], [4, "ngIf", "ngIfThen", "ngIfElse"], ["class", "govuk-error-summary", "aria-labelledby", "error-summary-title", "role", "alert", "tabindex", "-1", "data-module", "govuk-error-summary", 4, "ngIf"], [3, "error"], [3, "callbackErrorsContext", "triggerTextContinue", "triggerTextIgnore", "callbackErrorsSubject"], [1, "width-50"], ["class", "form", 3, "formGroup", "submit", 4, "ngIf"], [3, "eventCompletionParams", "eventCanBeCompleted", 4, "ngIf"], ["class", "govuk-heading-l", 4, "ngIf"], [1, "govuk-heading-l"], [1, "govuk-caption-l"], [3, "content"], ["class", "heading-h2", 4, "ngIf"], [1, "heading-h2"], ["aria-labelledby", "error-summary-title", "role", "alert", "tabindex", "-1", "data-module", "govuk-error-summary", 1, "govuk-error-summary"], ["id", "error-summary-title", 1, "govuk-error-summary__title"], ["class", "govuk-error-summary__body", 4, "ngFor", "ngForOf"], [1, "govuk-error-summary__body"], [1, "govuk-list", "govuk-error-summary__list"], ["tabindex", "0", 1, "validation-error", 3, "click", "keyup.enter"], [1, "form", 3, "submit", "formGroup"], ["id", "fieldset-case-data"], [2, "display", "none"], ["id", "caseEditForm", 3, "fields", "formGroup", "caseFields", "pageChangeSubject", "valuesChanged", 4, "ngIf"], ["class", "grid-row", 4, "ngIf"], [1, "form-group", "form-group-related"], ["class", "button button-secondary", "type", "button", 3, "disabled", "click", 4, "ngIf"], ["type", "submit", 1, "button", 3, "disabled"], [1, "cancel"], ["type", "button", 1, "govuk-js-link", 3, "click"], ["id", "caseEditForm", 3, "valuesChanged", "fields", "formGroup", "caseFields", "pageChangeSubject"], [1, "grid-row"], [1, "column-two-thirds", "rightBorderSeparator"], ["id", "caseEditForm1", 3, "fields", "formGroup", "caseFields"], [1, "column-one-third"], ["id", "caseEditForm2", 3, "fields", "formGroup", "caseFields"], ["type", "button", 1, "button", "button-secondary", 3, "click", "disabled"], [3, "eventCanBeCompleted", "eventCompletionParams"]], template: function CaseEditPageComponent_Template(rf, ctx) { if (rf & 1) {
12193
12235
  const _r1 = i0.ɵɵgetCurrentView();
12194
12236
  i0.ɵɵtemplate(0, CaseEditPageComponent_ng_container_0_Template, 3, 2, "ng-container", 2)(1, CaseEditPageComponent_div_1_Template, 1, 0, "div", 3)(2, CaseEditPageComponent_ng_template_2_Template, 3, 7, "ng-template", null, 0, i0.ɵɵtemplateRefExtractor)(4, CaseEditPageComponent_ng_template_4_Template, 1, 1, "ng-template", null, 1, i0.ɵɵtemplateRefExtractor)(6, CaseEditPageComponent_div_6_Template, 5, 4, "div", 4);
@@ -12221,8 +12263,8 @@ class CaseEditPageComponent {
12221
12263
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CaseEditPageComponent, [{
12222
12264
  type: Component,
12223
12265
  args: [{ selector: 'ccd-case-edit-page', standalone: false, template: "<ng-container *ngIf=\"currentPage\">\n <h1 *ngIf=\"!currentPage.label\" class=\"govuk-heading-l\">{{eventTrigger.name | rpxTranslate}}</h1>\n <ng-container *ngIf=\"currentPage.label\">\n <span class=\"govuk-caption-l\">{{ eventTrigger.name | rpxTranslate}}</span>\n <h1 class=\"govuk-heading-l\">{{currentPage.label | rpxTranslate}}</h1>\n </ng-container>\n</ng-container>\n\n<!--Case ID or Title -->\n<div *ngIf=\"getCaseTitle(); then titleBlock; else idBlock\"></div>\n<ng-template #titleBlock>\n <ccd-markdown [content]=\"getCaseTitle() | ccdCaseTitle: caseFields : editForm.controls['data'] | rpxTranslate\"></ccd-markdown>\n</ng-template>\n<ng-template #idBlock>\n <h2 *ngIf=\"getCaseId()\" class=\"heading-h2\">#{{ getCaseId() | ccdCaseReference }}</h2>\n</ng-template>\n\n<!-- Error message summary -->\n<div *ngIf=\"validationErrors.length > 0\" class=\"govuk-error-summary\" aria-labelledby=\"error-summary-title\" role=\"alert\" tabindex=\"-1\" data-module=\"govuk-error-summary\">\n <h2 class=\"govuk-error-summary__title\" id=\"error-summary-title\">\n {{'There is a problem' | rpxTranslate}}\n </h2>\n <div *ngFor=\"let validationError of validationErrors\" class=\"govuk-error-summary__body\">\n <ul class=\"govuk-list govuk-error-summary__list\">\n <li>\n <a (click)=\"navigateToErrorElement(validationError.id)\" (keyup.enter)=\"navigateToErrorElement(validationError.id)\" tabindex=\"0\" class=\"validation-error\">\n {{ validationError.message | rpxTranslate: getRpxTranslatePipeArgs(validationError.label | rpxTranslate): null }}\n </a>\n </li>\n </ul>\n </div>\n</div>\n\n<ccd-case-edit-generic-errors [error]=\"caseEdit.error\"></ccd-case-edit-generic-errors>\n\n<ccd-callback-errors\n [triggerTextContinue]=\"triggerTextStart\"\n [triggerTextIgnore]=\"triggerTextIgnoreWarnings\"\n [callbackErrorsSubject]=\"caseEdit.callbackErrorsSubject\"\n (callbackErrorsContext)=\"callbackErrorsNotify($event)\">\n</ccd-callback-errors>\n<div class=\"width-50\">\n <form *ngIf=\"currentPage\" class=\"form\" [formGroup]=\"editForm\" (submit)=\"nextStep()\">\n <fieldset id=\"fieldset-case-data\">\n <legend style=\"display: none;\"></legend>\n <!-- single column -->\n <ccd-case-edit-form id='caseEditForm' *ngIf=\"!currentPage.isMultiColumn()\" [fields]=\"currentPage.getCol1Fields()\"\n [formGroup]=\"editForm.controls['data']\" [caseFields]=\"caseFields\"\n [pageChangeSubject]=\"pageChangeSubject\"\n (valuesChanged)=\"applyValuesChanged($event)\"></ccd-case-edit-form>\n <!-- two columns -->\n <div *ngIf=\"currentPage.isMultiColumn()\" class=\"grid-row\">\n <div class=\"column-two-thirds rightBorderSeparator\">\n <ccd-case-edit-form id='caseEditForm1' [fields]=\"currentPage.getCol1Fields()\"\n [formGroup]=\"editForm.controls['data']\" [caseFields]=\"caseFields\"></ccd-case-edit-form>\n </div>\n <div class=\"column-one-third\">\n <ccd-case-edit-form id='caseEditForm2' [fields]=\"currentPage.getCol2Fields()\"\n [formGroup]=\"editForm.controls['data']\" [caseFields]=\"caseFields\"></ccd-case-edit-form>\n </div>\n </div>\n </fieldset>\n\n <div class=\"form-group form-group-related\">\n <button class=\"button button-secondary\" type=\"button\" (click)=\"toPreviousPage()\" *ngIf=\"!isAtStart()\" [disabled]=\"isDisabled()\">\n {{'Previous' | rpxTranslate}}\n </button>\n <button class=\"button\" type=\"submit\" [disabled]=\"submitting()\">{{triggerText | rpxTranslate}}</button>\n </div>\n\n <p class=\"cancel\"><button type=\"button\" (click)=\"cancel()\" class=\"govuk-js-link\">{{getCancelText() | rpxTranslate}}</button></p>\n </form>\n</div>\n\n<ccd-case-event-completion *ngIf=\"caseEdit.isEventCompletionChecksRequired\"\n [eventCompletionParams]=\"caseEdit.eventCompletionParams\"\n (eventCanBeCompleted)=\"onEventCanBeCompleted($event)\">\n</ccd-case-event-completion>\n", styles: [".rightBorderSeparator{border-right-width:4px;border-right-color:#ffcc02;border-right-style:solid}.validation-error{cursor:pointer;text-decoration:underline;color:#d4351c}\n"] }]
12224
- }], () => [{ type: CaseEditComponent }, { type: i1$1.ActivatedRoute }, { type: FormValueService }, { type: FormErrorService }, { type: i0.ChangeDetectorRef }, { type: PageValidationService }, { type: i1$3.MatLegacyDialog }, { type: CaseFieldService }, { type: CaseEditDataService }, { type: LoadingService }, { type: ValidPageListCaseFieldsService }, { type: MultipageComponentStateService }, { type: AddressesService }, { type: LinkedCasesService }, { type: CaseFlagStateService }], null); })();
12225
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CaseEditPageComponent, { className: "CaseEditPageComponent", filePath: "lib/shared/components/case-editor/case-edit-page/case-edit-page.component.ts", lineNumber: 35 }); })();
12266
+ }], () => [{ type: CaseEditComponent }, { type: i1$1.ActivatedRoute }, { type: FormValueService }, { type: FormErrorService }, { type: i0.ChangeDetectorRef }, { type: PageValidationService }, { type: i1$3.MatLegacyDialog }, { type: CaseFieldService }, { type: CaseEditDataService }, { type: LoadingService }, { type: ValidPageListCaseFieldsService }, { type: MultipageComponentStateService }, { type: AddressesService }, { type: LinkedCasesService }, { type: CaseFlagStateService }, { type: FocusService }], null); })();
12267
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CaseEditPageComponent, { className: "CaseEditPageComponent", filePath: "lib/shared/components/case-editor/case-edit-page/case-edit-page.component.ts", lineNumber: 36 }); })();
12226
12268
 
12227
12269
  class CallbackErrorsContext {
12228
12270
  triggerText;
@@ -13349,6 +13391,14 @@ var PaletteContext;
13349
13391
  PaletteContext["TABLE_VIEW"] = "TABLE_VIEW";
13350
13392
  })(PaletteContext || (PaletteContext = {}));
13351
13393
 
13394
+ // Identifies whether a read palette value came from persisted case data or the current edit form.
13395
+ // Form-origin DateTime values on Check Your Answers must not be service-local adjusted before submit.
13396
+ var PaletteValueOrigin;
13397
+ (function (PaletteValueOrigin) {
13398
+ PaletteValueOrigin["BACKEND"] = "BACKEND";
13399
+ PaletteValueOrigin["FORM"] = "FORM";
13400
+ })(PaletteValueOrigin || (PaletteValueOrigin = {}));
13401
+
13352
13402
  class AbstractFieldReadComponent extends AbstractFormFieldComponent {
13353
13403
  caseReference;
13354
13404
  topLevelFormGroup;
@@ -13356,13 +13406,14 @@ class AbstractFieldReadComponent extends AbstractFormFieldComponent {
13356
13406
  * Optional. Enable context-aware rendering of fields.
13357
13407
  */
13358
13408
  context = PaletteContext.DEFAULT;
13409
+ valueOrigin = PaletteValueOrigin.BACKEND;
13359
13410
  ngOnInit() {
13360
13411
  if (!this.caseField.metadata) {
13361
13412
  this.registerControl(new FormControl(this.caseField.value));
13362
13413
  }
13363
13414
  }
13364
13415
  static ɵfac = /*@__PURE__*/ (() => { let ɵAbstractFieldReadComponent_BaseFactory; return function AbstractFieldReadComponent_Factory(__ngFactoryType__) { return (ɵAbstractFieldReadComponent_BaseFactory || (ɵAbstractFieldReadComponent_BaseFactory = i0.ɵɵgetInheritedFactory(AbstractFieldReadComponent)))(__ngFactoryType__ || AbstractFieldReadComponent); }; })();
13365
- static ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: AbstractFieldReadComponent, inputs: { caseReference: "caseReference", topLevelFormGroup: "topLevelFormGroup", context: "context" }, features: [i0.ɵɵInheritDefinitionFeature] });
13416
+ static ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: AbstractFieldReadComponent, inputs: { caseReference: "caseReference", topLevelFormGroup: "topLevelFormGroup", context: "context", valueOrigin: "valueOrigin" }, features: [i0.ɵɵInheritDefinitionFeature] });
13366
13417
  }
13367
13418
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AbstractFieldReadComponent, [{
13368
13419
  type: Directive
@@ -13372,6 +13423,8 @@ class AbstractFieldReadComponent extends AbstractFormFieldComponent {
13372
13423
  type: Input
13373
13424
  }], context: [{
13374
13425
  type: Input
13426
+ }], valueOrigin: [{
13427
+ type: Input
13375
13428
  }] }); })();
13376
13429
 
13377
13430
  const _c0$Y = ["journeyChild"];
@@ -15109,7 +15162,7 @@ function ReadCollectionFieldComponent_table_0_tbody_2_Template(rf, ctx) { if (rf
15109
15162
  } if (rf & 2) {
15110
15163
  const ctx_r0 = i0.ɵɵnextContext(2);
15111
15164
  i0.ɵɵadvance(4);
15112
- i0.ɵɵproperty("caseField", i0.ɵɵpureFunction7(4, _c0$V, ctx_r0.caseField.label, ctx_r0.caseField.label, ctx_r0.caseField.field_type.collection_field_type, ctx_r0.caseField.display_context_parameter, ctx_r0.caseField.value, ctx_r0.caseField.hidden, ctx_r0.caseField))("context", ctx_r0.context)("caseFields", ctx_r0.caseFields)("topLevelFormGroup", ctx_r0.topLevelFormGroup);
15165
+ i0.ɵɵproperty("caseField", i0.ɵɵpureFunction7(5, _c0$V, ctx_r0.caseField.label, ctx_r0.caseField.label, ctx_r0.caseField.field_type.collection_field_type, ctx_r0.caseField.display_context_parameter, ctx_r0.caseField.value, ctx_r0.caseField.hidden, ctx_r0.caseField))("context", ctx_r0.context)("valueOrigin", ctx_r0.valueOrigin)("caseFields", ctx_r0.caseFields)("topLevelFormGroup", ctx_r0.topLevelFormGroup);
15113
15166
  } }
15114
15167
  function ReadCollectionFieldComponent_table_0_tbody_3_tr_1_Template(rf, ctx) { if (rf & 1) {
15115
15168
  i0.ɵɵelementStart(0, "tr")(1, "td");
@@ -15120,11 +15173,11 @@ function ReadCollectionFieldComponent_table_0_tbody_3_tr_1_Template(rf, ctx) { i
15120
15173
  const i_r3 = ctx.index;
15121
15174
  const ctx_r0 = i0.ɵɵnextContext(3);
15122
15175
  i0.ɵɵadvance(2);
15123
- i0.ɵɵproperty("caseField", i0.ɵɵpureFunction6(5, _c1$m, i_r3 + "", ctx_r0.caseField.label + " " + (i_r3 + 1), ctx_r0.caseField.field_type.collection_field_type, item_r2.value, ctx_r0.caseField.hidden, ctx_r0.caseField))("context", ctx_r0.context)("caseFields", ctx_r0.caseFields)("topLevelFormGroup", ctx_r0.topLevelFormGroup)("idPrefix", ctx_r0.buildIdPrefix(i_r3));
15176
+ i0.ɵɵproperty("caseField", i0.ɵɵpureFunction6(6, _c1$m, i_r3 + "", ctx_r0.caseField.label + " " + (i_r3 + 1), ctx_r0.caseField.field_type.collection_field_type, item_r2.value, ctx_r0.caseField.hidden, ctx_r0.caseField))("context", ctx_r0.context)("valueOrigin", ctx_r0.valueOrigin)("caseFields", ctx_r0.caseFields)("topLevelFormGroup", ctx_r0.topLevelFormGroup)("idPrefix", ctx_r0.buildIdPrefix(i_r3));
15124
15177
  } }
15125
15178
  function ReadCollectionFieldComponent_table_0_tbody_3_Template(rf, ctx) { if (rf & 1) {
15126
15179
  i0.ɵɵelementStart(0, "tbody");
15127
- i0.ɵɵtemplate(1, ReadCollectionFieldComponent_table_0_tbody_3_tr_1_Template, 3, 12, "tr", 6);
15180
+ i0.ɵɵtemplate(1, ReadCollectionFieldComponent_table_0_tbody_3_tr_1_Template, 3, 13, "tr", 6);
15128
15181
  i0.ɵɵelementEnd();
15129
15182
  } if (rf & 2) {
15130
15183
  const ctx_r0 = i0.ɵɵnextContext(2);
@@ -15134,7 +15187,7 @@ function ReadCollectionFieldComponent_table_0_tbody_3_Template(rf, ctx) { if (rf
15134
15187
  function ReadCollectionFieldComponent_table_0_Template(rf, ctx) { if (rf & 1) {
15135
15188
  i0.ɵɵelementStart(0, "table", 1);
15136
15189
  i0.ɵɵelementContainerStart(1, 2);
15137
- i0.ɵɵtemplate(2, ReadCollectionFieldComponent_table_0_tbody_2_Template, 5, 12, "tbody", 3)(3, ReadCollectionFieldComponent_table_0_tbody_3_Template, 2, 1, "tbody", 3);
15190
+ i0.ɵɵtemplate(2, ReadCollectionFieldComponent_table_0_tbody_2_Template, 5, 13, "tbody", 3)(3, ReadCollectionFieldComponent_table_0_tbody_3_Template, 2, 1, "tbody", 3);
15138
15191
  i0.ɵɵelementContainerEnd();
15139
15192
  i0.ɵɵelementEnd();
15140
15193
  } if (rf & 2) {
@@ -15162,7 +15215,7 @@ class ReadCollectionFieldComponent extends AbstractFieldReadComponent {
15162
15215
  return prefix;
15163
15216
  }
15164
15217
  static ɵfac = /*@__PURE__*/ (() => { let ɵReadCollectionFieldComponent_BaseFactory; return function ReadCollectionFieldComponent_Factory(__ngFactoryType__) { return (ɵReadCollectionFieldComponent_BaseFactory || (ɵReadCollectionFieldComponent_BaseFactory = i0.ɵɵgetInheritedFactory(ReadCollectionFieldComponent)))(__ngFactoryType__ || ReadCollectionFieldComponent); }; })();
15165
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ReadCollectionFieldComponent, selectors: [["ccd-read-collection-field"]], inputs: { caseFields: "caseFields" }, standalone: false, features: [i0.ɵɵInheritDefinitionFeature], decls: 1, vars: 1, consts: [["class", "collection-field-table", "aria-describedby", "collection table", 4, "ngIf"], ["aria-describedby", "collection table", 1, "collection-field-table"], [3, "ngSwitch"], [4, "ngSwitchCase"], ["id", "hiddenHeader", 2, "display", "none"], [3, "caseField", "context", "caseFields", "topLevelFormGroup"], [4, "ngFor", "ngForOf"], [3, "caseField", "context", "caseFields", "topLevelFormGroup", "idPrefix"]], template: function ReadCollectionFieldComponent_Template(rf, ctx) { if (rf & 1) {
15218
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ReadCollectionFieldComponent, selectors: [["ccd-read-collection-field"]], inputs: { caseFields: "caseFields" }, standalone: false, features: [i0.ɵɵInheritDefinitionFeature], decls: 1, vars: 1, consts: [["class", "collection-field-table", "aria-describedby", "collection table", 4, "ngIf"], ["aria-describedby", "collection table", 1, "collection-field-table"], [3, "ngSwitch"], [4, "ngSwitchCase"], ["id", "hiddenHeader", 2, "display", "none"], [3, "caseField", "context", "valueOrigin", "caseFields", "topLevelFormGroup"], [4, "ngFor", "ngForOf"], [3, "caseField", "context", "valueOrigin", "caseFields", "topLevelFormGroup", "idPrefix"]], template: function ReadCollectionFieldComponent_Template(rf, ctx) { if (rf & 1) {
15166
15219
  i0.ɵɵtemplate(0, ReadCollectionFieldComponent_table_0_Template, 4, 3, "table", 0);
15167
15220
  } if (rf & 2) {
15168
15221
  i0.ɵɵproperty("ngIf", ctx.caseField.value && ctx.caseField.value.length);
@@ -15170,7 +15223,7 @@ class ReadCollectionFieldComponent extends AbstractFieldReadComponent {
15170
15223
  }
15171
15224
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ReadCollectionFieldComponent, [{
15172
15225
  type: Component,
15173
- args: [{ selector: 'ccd-read-collection-field', standalone: false, template: "<table *ngIf=\"caseField.value && caseField.value.length \" class=\"collection-field-table\" aria-describedby=\"collection table\">\n <ng-container [ngSwitch]=\"isDisplayContextParameterAvailable\">\n <tbody *ngSwitchCase=\"true\">\n <tr>\n <th id=\"hiddenHeader\" style=\"display: none;\"></th>\n <td>\n <ccd-field-read\n [caseField]=\"{\n id: caseField.label,\n label: caseField.label,\n field_type: caseField.field_type.collection_field_type,\n display_context_parameter: caseField.display_context_parameter,\n value: caseField.value,\n hidden: caseField.hidden,\n parent: caseField\n }\"\n [context]=\"context\"\n [caseFields]=\"caseFields\"\n [topLevelFormGroup]=\"topLevelFormGroup\">\n </ccd-field-read>\n </td>\n </tr>\n </tbody>\n <tbody *ngSwitchCase=\"false\">\n <tr *ngFor=\"let item of caseField.value; let i = index\">\n <td>\n <ccd-field-read\n [caseField]=\"{\n id: i + '',\n label: caseField.label + ' ' + (i + 1),\n field_type: caseField.field_type.collection_field_type,\n value: item.value,\n hidden: caseField.hidden,\n parent: caseField\n }\"\n [context]=\"context\"\n [caseFields]=\"caseFields\"\n [topLevelFormGroup]=\"topLevelFormGroup\"\n [idPrefix]=\"buildIdPrefix(i)\">\n </ccd-field-read>\n </td>\n </tr>\n </tbody>\n </ng-container>\n</table>\n", styles: [".collection-field-table tr:first-child>td{padding-top:0}.collection-field-table tr:last-child>td{border-bottom:none}.collection-field-table td.collection-actions{width:1px;white-space:nowrap}.error-spacing{margin-top:10px}.collection-title{height:51px}.float-left{float:left;padding-top:8px}.float-right{float:right}.complex-panel{margin:13px 0;border:1px solid #bfc1c3}.complex-panel .complex-panel-title{background-color:#dee0e2;padding:5px 5px 2px;border-bottom:1px solid #bfc1c3;display:block;color:#0b0c0c;font-family:nta,Arial,sans-serif;font-weight:700;text-transform:none;font-size:16px;line-height:1.25}@media(min-width:641px){.complex-panel .complex-panel-title{font-size:19px;line-height:1.3157894737}}.complex-panel .complex-panel-table>tbody>tr>th{vertical-align:top}.complex-panel .complex-panel-table>tbody>tr:last-child>th,.complex-panel .complex-panel-table>tbody>tr:last-child>td{border-bottom:none}.complex-panel .complex-panel-simple-field th{padding-left:5px;width:295px}.complex-panel .complex-panel-compound-field td{padding:5px}.collection-indicator{border-left:solid 5px #b1b4b6}\n"] }]
15226
+ args: [{ selector: 'ccd-read-collection-field', standalone: false, template: "<table *ngIf=\"caseField.value && caseField.value.length \" class=\"collection-field-table\" aria-describedby=\"collection table\">\n <ng-container [ngSwitch]=\"isDisplayContextParameterAvailable\">\n <tbody *ngSwitchCase=\"true\">\n <tr>\n <th id=\"hiddenHeader\" style=\"display: none;\"></th>\n <td>\n <ccd-field-read\n [caseField]=\"{\n id: caseField.label,\n label: caseField.label,\n field_type: caseField.field_type.collection_field_type,\n display_context_parameter: caseField.display_context_parameter,\n value: caseField.value,\n hidden: caseField.hidden,\n parent: caseField\n }\"\n [context]=\"context\"\n [valueOrigin]=\"valueOrigin\"\n [caseFields]=\"caseFields\"\n [topLevelFormGroup]=\"topLevelFormGroup\">\n </ccd-field-read>\n </td>\n </tr>\n </tbody>\n <tbody *ngSwitchCase=\"false\">\n <tr *ngFor=\"let item of caseField.value; let i = index\">\n <td>\n <ccd-field-read\n [caseField]=\"{\n id: i + '',\n label: caseField.label + ' ' + (i + 1),\n field_type: caseField.field_type.collection_field_type,\n value: item.value,\n hidden: caseField.hidden,\n parent: caseField\n }\"\n [context]=\"context\"\n [valueOrigin]=\"valueOrigin\"\n [caseFields]=\"caseFields\"\n [topLevelFormGroup]=\"topLevelFormGroup\"\n [idPrefix]=\"buildIdPrefix(i)\">\n </ccd-field-read>\n </td>\n </tr>\n </tbody>\n </ng-container>\n</table>\n", styles: [".collection-field-table tr:first-child>td{padding-top:0}.collection-field-table tr:last-child>td{border-bottom:none}.collection-field-table td.collection-actions{width:1px;white-space:nowrap}.error-spacing{margin-top:10px}.collection-title{height:51px}.float-left{float:left;padding-top:8px}.float-right{float:right}.complex-panel{margin:13px 0;border:1px solid #bfc1c3}.complex-panel .complex-panel-title{background-color:#dee0e2;padding:5px 5px 2px;border-bottom:1px solid #bfc1c3;display:block;color:#0b0c0c;font-family:nta,Arial,sans-serif;font-weight:700;text-transform:none;font-size:16px;line-height:1.25}@media(min-width:641px){.complex-panel .complex-panel-title{font-size:19px;line-height:1.3157894737}}.complex-panel .complex-panel-table>tbody>tr>th{vertical-align:top}.complex-panel .complex-panel-table>tbody>tr:last-child>th,.complex-panel .complex-panel-table>tbody>tr:last-child>td{border-bottom:none}.complex-panel .complex-panel-simple-field th{padding-left:5px;width:295px}.complex-panel .complex-panel-compound-field td{padding:5px}.collection-indicator{border-left:solid 5px #b1b4b6}\n"] }]
15174
15227
  }], null, { caseFields: [{
15175
15228
  type: Input
15176
15229
  }] }); })();
@@ -15693,19 +15746,19 @@ function ReadComplexFieldComponent_ccd_read_complex_field_raw_1_Template(rf, ctx
15693
15746
  i0.ɵɵelement(0, "ccd-read-complex-field-raw", 4);
15694
15747
  } if (rf & 2) {
15695
15748
  const ctx_r0 = i0.ɵɵnextContext();
15696
- i0.ɵɵproperty("caseField", ctx_r0.caseField)("caseFields", ctx_r0.caseFields)("context", ctx_r0.context)("topLevelFormGroup", ctx_r0.topLevelFormGroup)("idPrefix", ctx_r0.idPrefix);
15749
+ i0.ɵɵproperty("caseField", ctx_r0.caseField)("caseFields", ctx_r0.caseFields)("context", ctx_r0.context)("valueOrigin", ctx_r0.valueOrigin)("topLevelFormGroup", ctx_r0.topLevelFormGroup)("idPrefix", ctx_r0.idPrefix);
15697
15750
  } }
15698
15751
  function ReadComplexFieldComponent_ccd_read_complex_field_collection_table_2_Template(rf, ctx) { if (rf & 1) {
15699
15752
  i0.ɵɵelement(0, "ccd-read-complex-field-collection-table", 5);
15700
15753
  } if (rf & 2) {
15701
15754
  const ctx_r0 = i0.ɵɵnextContext();
15702
- i0.ɵɵproperty("caseField", ctx_r0.caseField)("context", ctx_r0.context)("topLevelFormGroup", ctx_r0.topLevelFormGroup)("idPrefix", ctx_r0.idPrefix);
15755
+ i0.ɵɵproperty("caseField", ctx_r0.caseField)("context", ctx_r0.context)("valueOrigin", ctx_r0.valueOrigin)("topLevelFormGroup", ctx_r0.topLevelFormGroup)("idPrefix", ctx_r0.idPrefix);
15703
15756
  } }
15704
15757
  function ReadComplexFieldComponent_ccd_read_complex_field_table_3_Template(rf, ctx) { if (rf & 1) {
15705
15758
  i0.ɵɵelement(0, "ccd-read-complex-field-table", 4);
15706
15759
  } if (rf & 2) {
15707
15760
  const ctx_r0 = i0.ɵɵnextContext();
15708
- i0.ɵɵproperty("caseField", ctx_r0.caseField)("caseFields", ctx_r0.caseFields)("context", ctx_r0.context)("topLevelFormGroup", ctx_r0.topLevelFormGroup)("idPrefix", ctx_r0.idPrefix);
15761
+ i0.ɵɵproperty("caseField", ctx_r0.caseField)("caseFields", ctx_r0.caseFields)("context", ctx_r0.context)("valueOrigin", ctx_r0.valueOrigin)("topLevelFormGroup", ctx_r0.topLevelFormGroup)("idPrefix", ctx_r0.idPrefix);
15709
15762
  } }
15710
15763
  class ReadComplexFieldComponent extends AbstractFieldReadComponent {
15711
15764
  caseFields = [];
@@ -15739,9 +15792,9 @@ class ReadComplexFieldComponent extends AbstractFieldReadComponent {
15739
15792
  }
15740
15793
  }
15741
15794
  static ɵfac = /*@__PURE__*/ (() => { let ɵReadComplexFieldComponent_BaseFactory; return function ReadComplexFieldComponent_Factory(__ngFactoryType__) { return (ɵReadComplexFieldComponent_BaseFactory || (ɵReadComplexFieldComponent_BaseFactory = i0.ɵɵgetInheritedFactory(ReadComplexFieldComponent)))(__ngFactoryType__ || ReadComplexFieldComponent); }; })();
15742
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ReadComplexFieldComponent, selectors: [["ccd-read-complex-field"]], inputs: { caseFields: "caseFields" }, standalone: false, features: [i0.ɵɵInheritDefinitionFeature], decls: 4, vars: 3, consts: [[3, "ngSwitch"], [3, "caseField", "caseFields", "context", "topLevelFormGroup", "idPrefix", 4, "ngSwitchCase"], [3, "caseField", "context", "topLevelFormGroup", "idPrefix", 4, "ngSwitchCase"], [3, "caseField", "caseFields", "context", "topLevelFormGroup", "idPrefix", 4, "ngSwitchDefault"], [3, "caseField", "caseFields", "context", "topLevelFormGroup", "idPrefix"], [3, "caseField", "context", "topLevelFormGroup", "idPrefix"]], template: function ReadComplexFieldComponent_Template(rf, ctx) { if (rf & 1) {
15795
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ReadComplexFieldComponent, selectors: [["ccd-read-complex-field"]], inputs: { caseFields: "caseFields" }, standalone: false, features: [i0.ɵɵInheritDefinitionFeature], decls: 4, vars: 3, consts: [[3, "ngSwitch"], [3, "caseField", "caseFields", "context", "valueOrigin", "topLevelFormGroup", "idPrefix", 4, "ngSwitchCase"], [3, "caseField", "context", "valueOrigin", "topLevelFormGroup", "idPrefix", 4, "ngSwitchCase"], [3, "caseField", "caseFields", "context", "valueOrigin", "topLevelFormGroup", "idPrefix", 4, "ngSwitchDefault"], [3, "caseField", "caseFields", "context", "valueOrigin", "topLevelFormGroup", "idPrefix"], [3, "caseField", "context", "valueOrigin", "topLevelFormGroup", "idPrefix"]], template: function ReadComplexFieldComponent_Template(rf, ctx) { if (rf & 1) {
15743
15796
  i0.ɵɵelementContainerStart(0, 0);
15744
- i0.ɵɵtemplate(1, ReadComplexFieldComponent_ccd_read_complex_field_raw_1_Template, 1, 5, "ccd-read-complex-field-raw", 1)(2, ReadComplexFieldComponent_ccd_read_complex_field_collection_table_2_Template, 1, 4, "ccd-read-complex-field-collection-table", 2)(3, ReadComplexFieldComponent_ccd_read_complex_field_table_3_Template, 1, 5, "ccd-read-complex-field-table", 3);
15797
+ i0.ɵɵtemplate(1, ReadComplexFieldComponent_ccd_read_complex_field_raw_1_Template, 1, 6, "ccd-read-complex-field-raw", 1)(2, ReadComplexFieldComponent_ccd_read_complex_field_collection_table_2_Template, 1, 5, "ccd-read-complex-field-collection-table", 2)(3, ReadComplexFieldComponent_ccd_read_complex_field_table_3_Template, 1, 6, "ccd-read-complex-field-table", 3);
15745
15798
  i0.ɵɵelementContainerEnd();
15746
15799
  } if (rf & 2) {
15747
15800
  i0.ɵɵproperty("ngSwitch", ctx.context);
@@ -15753,15 +15806,50 @@ class ReadComplexFieldComponent extends AbstractFieldReadComponent {
15753
15806
  }
15754
15807
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ReadComplexFieldComponent, [{
15755
15808
  type: Component,
15756
- args: [{ selector: 'ccd-read-complex-field', standalone: false, template: "<ng-container [ngSwitch]=\"context\">\n <ccd-read-complex-field-raw\n *ngSwitchCase=\"paletteContext.CHECK_YOUR_ANSWER\"\n [caseField]=\"caseField\"\n [caseFields]=\"caseFields\"\n [context]=\"context\"\n [topLevelFormGroup]=\"topLevelFormGroup\"\n [idPrefix]=\"idPrefix\"\n ></ccd-read-complex-field-raw>\n <ccd-read-complex-field-collection-table\n *ngSwitchCase=\"paletteContext.TABLE_VIEW\"\n [caseField]=\"caseField\"\n [context]=\"context\"\n [topLevelFormGroup]=\"topLevelFormGroup\"\n [idPrefix]=\"idPrefix\"\n ></ccd-read-complex-field-collection-table>\n <ccd-read-complex-field-table\n *ngSwitchDefault\n [caseField]=\"caseField\"\n [caseFields]=\"caseFields\"\n [context]=\"context\"\n [topLevelFormGroup]=\"topLevelFormGroup\"\n [idPrefix]=\"idPrefix\"\n ></ccd-read-complex-field-table>\n</ng-container>\n" }]
15809
+ args: [{ selector: 'ccd-read-complex-field', standalone: false, template: "<ng-container [ngSwitch]=\"context\">\n <ccd-read-complex-field-raw\n *ngSwitchCase=\"paletteContext.CHECK_YOUR_ANSWER\"\n [caseField]=\"caseField\"\n [caseFields]=\"caseFields\"\n [context]=\"context\"\n [valueOrigin]=\"valueOrigin\"\n [topLevelFormGroup]=\"topLevelFormGroup\"\n [idPrefix]=\"idPrefix\"\n ></ccd-read-complex-field-raw>\n <ccd-read-complex-field-collection-table\n *ngSwitchCase=\"paletteContext.TABLE_VIEW\"\n [caseField]=\"caseField\"\n [context]=\"context\"\n [valueOrigin]=\"valueOrigin\"\n [topLevelFormGroup]=\"topLevelFormGroup\"\n [idPrefix]=\"idPrefix\"\n ></ccd-read-complex-field-collection-table>\n <ccd-read-complex-field-table\n *ngSwitchDefault\n [caseField]=\"caseField\"\n [caseFields]=\"caseFields\"\n [context]=\"context\"\n [valueOrigin]=\"valueOrigin\"\n [topLevelFormGroup]=\"topLevelFormGroup\"\n [idPrefix]=\"idPrefix\"\n ></ccd-read-complex-field-table>\n</ng-container>\n" }]
15757
15810
  }], null, { caseFields: [{
15758
15811
  type: Input
15759
15812
  }] }); })();
15760
15813
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ReadComplexFieldComponent, { className: "ReadComplexFieldComponent", filePath: "lib/shared/components/palette/complex/read-complex-field.component.ts", lineNumber: 11 }); })();
15761
15814
 
15762
15815
  class ReadDateFieldComponent extends AbstractFieldReadComponent {
15763
- timeZone = 'utc';
15764
- static ɵfac = /*@__PURE__*/ (() => { let ɵReadDateFieldComponent_BaseFactory; return function ReadDateFieldComponent_Factory(__ngFactoryType__) { return (ɵReadDateFieldComponent_BaseFactory || (ɵReadDateFieldComponent_BaseFactory = i0.ɵɵgetInheritedFactory(ReadDateFieldComponent)))(__ngFactoryType__ || ReadDateFieldComponent); }; })();
15816
+ caseNotifier;
15817
+ static SERVICES_RENDERED_IN_LOCAL_TIME = ['ABA2', 'ABA6']; // [FR, PROBATE]
15818
+ caseSubscription;
15819
+ caseHmctsServiceId;
15820
+ constructor(caseNotifier) {
15821
+ super();
15822
+ this.caseNotifier = caseNotifier;
15823
+ }
15824
+ ngOnInit() {
15825
+ super.ngOnInit();
15826
+ this.caseSubscription = this.caseNotifier?.caseView.subscribe((caseDetails) => {
15827
+ this.caseHmctsServiceId = caseDetails?.hmctsServiceId;
15828
+ });
15829
+ }
15830
+ ngOnDestroy() {
15831
+ if (this.caseSubscription) {
15832
+ this.caseSubscription.unsubscribe();
15833
+ }
15834
+ }
15835
+ // Most services display DateTime values as received from CCD; only the services listed in SERVICES_RENDERED_IN_LOCAL_TIME need converting to local time.
15836
+ get timeZone() {
15837
+ return this.shouldRenderInLocalTime() ? 'local' : 'utc';
15838
+ }
15839
+ shouldRenderInLocalTime() {
15840
+ return !this.isFormOriginField() &&
15841
+ ReadDateFieldComponent.SERVICES_RENDERED_IN_LOCAL_TIME.includes(this.getHmctsServiceId());
15842
+ }
15843
+ isFormOriginField() {
15844
+ return this.valueOrigin === PaletteValueOrigin.FORM;
15845
+ }
15846
+ getHmctsServiceId() {
15847
+ if (typeof this.caseField?.hmctsServiceId === 'string') {
15848
+ return this.caseField.hmctsServiceId;
15849
+ }
15850
+ return this.caseHmctsServiceId;
15851
+ }
15852
+ static ɵfac = function ReadDateFieldComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ReadDateFieldComponent)(i0.ɵɵdirectiveInject(CaseNotifier, 8)); };
15765
15853
  static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ReadDateFieldComponent, selectors: [["ccd-read-date-field"]], standalone: false, features: [i0.ɵɵInheritDefinitionFeature], decls: 3, vars: 5, consts: [[1, "text-16"]], template: function ReadDateFieldComponent_Template(rf, ctx) { if (rf & 1) {
15766
15854
  i0.ɵɵelementStart(0, "span", 0);
15767
15855
  i0.ɵɵtext(1);
@@ -15769,18 +15857,20 @@ class ReadDateFieldComponent extends AbstractFieldReadComponent {
15769
15857
  i0.ɵɵelementEnd();
15770
15858
  } if (rf & 2) {
15771
15859
  i0.ɵɵadvance();
15772
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind3(2, 1, ctx.caseField.value, "utc", ctx.caseField.dateTimeDisplayFormat));
15860
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind3(2, 1, ctx.caseField.value, ctx.timeZone, ctx.caseField.dateTimeDisplayFormat));
15773
15861
  } }, dependencies: [DatePipe], encapsulation: 2 });
15774
15862
  }
15775
15863
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ReadDateFieldComponent, [{
15776
15864
  type: Component,
15777
15865
  args: [{
15778
15866
  selector: 'ccd-read-date-field',
15779
- template: `<span class="text-16">{{caseField.value | ccdDate:'utc':caseField.dateTimeDisplayFormat}}</span>`,
15867
+ template: `<span class="text-16">{{caseField.value | ccdDate:timeZone:caseField.dateTimeDisplayFormat}}</span>`,
15780
15868
  standalone: false
15781
15869
  }]
15782
- }], null, null); })();
15783
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ReadDateFieldComponent, { className: "ReadDateFieldComponent", filePath: "lib/shared/components/palette/date/read-date-field.component.ts", lineNumber: 9 }); })();
15870
+ }], () => [{ type: CaseNotifier, decorators: [{
15871
+ type: Optional
15872
+ }] }], null); })();
15873
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ReadDateFieldComponent, { className: "ReadDateFieldComponent", filePath: "lib/shared/components/palette/date/read-date-field.component.ts", lineNumber: 13 }); })();
15784
15874
 
15785
15875
  function WriteDateContainerFieldComponent_ng_container_0_Template(rf, ctx) { if (rf & 1) {
15786
15876
  i0.ɵɵelementContainerStart(0);
@@ -25277,6 +25367,7 @@ class FieldReadComponent extends AbstractFieldReadComponent {
25277
25367
  component.instance['parent'] = this.parent;
25278
25368
  component.instance['caseReference'] = this.caseReference;
25279
25369
  component.instance['context'] = this.context;
25370
+ component.instance['valueOrigin'] = this.valueOrigin;
25280
25371
  component.instance['labelCanBeTranslated'] = this.labelCanBeTranslated(this.caseField);
25281
25372
  this.fieldContainer?.insert(component.hostView);
25282
25373
  });
@@ -29699,7 +29790,13 @@ function ReadComplexFieldRawComponent_ng_container_1_Template(rf, ctx) { if (rf
29699
29790
  * This is intended for rendering of Check Your Answer page.
29700
29791
  */
29701
29792
  class ReadComplexFieldRawComponent extends AbstractFieldReadComponent {
29793
+ // parent_ and value match the dummy path convention used by the table variant.
29794
+ static DUMMY_STRING_PRE = 'parent_';
29795
+ static DUMMY_STRING_POST = 'value';
29702
29796
  caseFields = [];
29797
+ get path() {
29798
+ return ReadComplexFieldRawComponent.DUMMY_STRING_PRE + this.idPrefix + ReadComplexFieldRawComponent.DUMMY_STRING_POST;
29799
+ }
29703
29800
  static ɵfac = /*@__PURE__*/ (() => { let ɵReadComplexFieldRawComponent_BaseFactory; return function ReadComplexFieldRawComponent_Factory(__ngFactoryType__) { return (ɵReadComplexFieldRawComponent_BaseFactory || (ɵReadComplexFieldRawComponent_BaseFactory = i0.ɵɵgetInheritedFactory(ReadComplexFieldRawComponent)))(__ngFactoryType__ || ReadComplexFieldRawComponent); }; })();
29704
29801
  static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ReadComplexFieldRawComponent, selectors: [["ccd-read-complex-field-raw"]], inputs: { caseFields: "caseFields" }, standalone: false, features: [i0.ɵɵInheritDefinitionFeature], decls: 3, vars: 12, consts: [[1, "complex-raw"], [4, "ngFor", "ngForOf"], [3, "hidden"], [1, "text-16"], [3, "caseField", "context", "caseFields", "topLevelFormGroup", "idPrefix"]], template: function ReadComplexFieldRawComponent_Template(rf, ctx) { if (rf & 1) {
29705
29802
  i0.ɵɵelementStart(0, "dl", 0);
@@ -29732,7 +29829,7 @@ function ReadComplexFieldTableComponent_ng_container_9_ng_container_1_Template(r
29732
29829
  i0.ɵɵadvance();
29733
29830
  i0.ɵɵproperty("hidden", field_r1.hidden);
29734
29831
  i0.ɵɵadvance(3);
29735
- i0.ɵɵproperty("topLevelFormGroup", ctx_r1.topLevelFormGroup)("caseFields", ctx_r1.caseFields)("caseField", field_r1)("context", ctx_r1.context);
29832
+ i0.ɵɵproperty("topLevelFormGroup", ctx_r1.topLevelFormGroup)("caseFields", ctx_r1.caseFields)("caseField", field_r1)("context", ctx_r1.context)("valueOrigin", ctx_r1.valueOrigin);
29736
29833
  } }
29737
29834
  function ReadComplexFieldTableComponent_ng_container_9_ng_template_3_Template(rf, ctx) { if (rf & 1) {
29738
29835
  i0.ɵɵelementStart(0, "tr", 10)(1, "th", 11)(2, "span", 3);
@@ -29747,15 +29844,15 @@ function ReadComplexFieldTableComponent_ng_container_9_ng_template_3_Template(rf
29747
29844
  const ctx_r1 = i0.ɵɵnextContext();
29748
29845
  i0.ɵɵproperty("hidden", field_r1.hidden);
29749
29846
  i0.ɵɵadvance(3);
29750
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(4, 6, field_r1.label));
29847
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(4, 7, field_r1.label));
29751
29848
  i0.ɵɵadvance(4);
29752
- i0.ɵɵproperty("topLevelFormGroup", ctx_r1.topLevelFormGroup)("caseFields", ctx_r1.caseFields)("caseField", field_r1)("context", ctx_r1.context);
29849
+ i0.ɵɵproperty("topLevelFormGroup", ctx_r1.topLevelFormGroup)("caseFields", ctx_r1.caseFields)("caseField", field_r1)("context", ctx_r1.context)("valueOrigin", ctx_r1.valueOrigin);
29753
29850
  } }
29754
29851
  function ReadComplexFieldTableComponent_ng_container_9_Template(rf, ctx) { if (rf & 1) {
29755
29852
  i0.ɵɵelementContainerStart(0);
29756
- i0.ɵɵtemplate(1, ReadComplexFieldTableComponent_ng_container_9_ng_container_1_Template, 5, 5, "ng-container", 6);
29853
+ i0.ɵɵtemplate(1, ReadComplexFieldTableComponent_ng_container_9_ng_container_1_Template, 5, 6, "ng-container", 6);
29757
29854
  i0.ɵɵpipe(2, "ccdIsCompound");
29758
- i0.ɵɵtemplate(3, ReadComplexFieldTableComponent_ng_container_9_ng_template_3_Template, 8, 8, "ng-template", null, 0, i0.ɵɵtemplateRefExtractor);
29855
+ i0.ɵɵtemplate(3, ReadComplexFieldTableComponent_ng_container_9_ng_template_3_Template, 8, 9, "ng-template", null, 0, i0.ɵɵtemplateRefExtractor);
29759
29856
  i0.ɵɵelementContainerEnd();
29760
29857
  } if (rf & 2) {
29761
29858
  const field_r1 = ctx.$implicit;
@@ -29782,7 +29879,7 @@ class ReadComplexFieldTableComponent extends AbstractFieldReadComponent {
29782
29879
  this.path = ReadComplexFieldTableComponent.DUMMY_STRING_PRE + this.idPrefix + ReadComplexFieldTableComponent.DUMMY_STRING_POST;
29783
29880
  }
29784
29881
  static ɵfac = /*@__PURE__*/ (() => { let ɵReadComplexFieldTableComponent_BaseFactory; return function ReadComplexFieldTableComponent_Factory(__ngFactoryType__) { return (ɵReadComplexFieldTableComponent_BaseFactory || (ɵReadComplexFieldTableComponent_BaseFactory = i0.ɵɵgetInheritedFactory(ReadComplexFieldTableComponent)))(__ngFactoryType__ || ReadComplexFieldTableComponent); }; })();
29785
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ReadComplexFieldTableComponent, selectors: [["ccd-read-complex-field-table"]], inputs: { caseFields: "caseFields" }, standalone: false, features: [i0.ɵɵInheritDefinitionFeature], decls: 11, vars: 17, consts: [["SimpleRow", ""], [1, "complex-panel"], [1, "complex-panel-title"], [1, "text-16"], ["aria-describedby", "complex field table", 1, "complex-panel-table"], [4, "ngFor", "ngForOf"], [4, "ngIf", "ngIfElse"], [1, "complex-panel-compound-field", 3, "hidden"], ["colspan", "2"], [3, "topLevelFormGroup", "caseFields", "caseField", "context"], [1, "complex-panel-simple-field", 3, "hidden"], ["id", "complex-panel-simple-field-label"]], template: function ReadComplexFieldTableComponent_Template(rf, ctx) { if (rf & 1) {
29882
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ReadComplexFieldTableComponent, selectors: [["ccd-read-complex-field-table"]], inputs: { caseFields: "caseFields" }, standalone: false, features: [i0.ɵɵInheritDefinitionFeature], decls: 11, vars: 17, consts: [["SimpleRow", ""], [1, "complex-panel"], [1, "complex-panel-title"], [1, "text-16"], ["aria-describedby", "complex field table", 1, "complex-panel-table"], [4, "ngFor", "ngForOf"], [4, "ngIf", "ngIfElse"], [1, "complex-panel-compound-field", 3, "hidden"], ["colspan", "2"], [3, "topLevelFormGroup", "caseFields", "caseField", "context", "valueOrigin"], [1, "complex-panel-simple-field", 3, "hidden"], ["id", "complex-panel-simple-field-label"]], template: function ReadComplexFieldTableComponent_Template(rf, ctx) { if (rf & 1) {
29786
29883
  i0.ɵɵelementStart(0, "div", 1)(1, "dl", 2)(2, "dt")(3, "span", 3);
29787
29884
  i0.ɵɵtext(4);
29788
29885
  i0.ɵɵpipe(5, "rpxTranslate");
@@ -29802,7 +29899,7 @@ class ReadComplexFieldTableComponent extends AbstractFieldReadComponent {
29802
29899
  }
29803
29900
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ReadComplexFieldTableComponent, [{
29804
29901
  type: Component,
29805
- args: [{ selector: 'ccd-read-complex-field-table', standalone: false, template: "<div class=\"complex-panel\">\n <dl class=\"complex-panel-title\"><dt><span class=\"text-16\">{{caseField.label | rpxTranslate}}</span></dt><dd></dd></dl>\n <table class=\"complex-panel-table\" aria-describedby=\"complex field table\">\n <tbody>\n <ng-container *ngFor=\"let field of caseField | ccdReadFieldsFilter:false :undefined :true :topLevelFormGroup :path :idPrefix\">\n <ng-container *ngIf=\"(field | ccdIsCompound); else SimpleRow\">\n <tr class=\"complex-panel-compound-field\" [hidden]=\"field.hidden\">\n <td colspan=\"2\">\n <span class=\"text-16\">\n <ccd-field-read [topLevelFormGroup]=\"topLevelFormGroup\" [caseFields]=\"caseFields\"\n [caseField]=\"field\" [context]=\"context\"></ccd-field-read>\n </span>\n </td>\n </tr>\n </ng-container>\n <ng-template #SimpleRow>\n <tr class=\"complex-panel-simple-field\" [hidden]=\"field.hidden\">\n <th id=\"complex-panel-simple-field-label\"><span class=\"text-16\">{{field.label | rpxTranslate}}</span></th>\n <td>\n <span class=\"text-16\">\n <ccd-field-read [topLevelFormGroup]=\"topLevelFormGroup\" [caseFields]=\"caseFields\"\n [caseField]=\"field\" [context]=\"context\"></ccd-field-read>\n </span>\n </td>\n </tr>\n </ng-template>\n </ng-container>\n </tbody>\n </table>\n</div>\n", styles: [".complex-panel{margin:13px 0;border:1px solid #bfc1c3}.complex-panel .complex-panel-title{background-color:#dee0e2;padding:5px 5px 2px;border-bottom:1px solid #bfc1c3;display:block;color:#0b0c0c;font-family:nta,Arial,sans-serif;font-weight:700;text-transform:none;font-size:16px;line-height:1.25}@media(min-width:641px){.complex-panel .complex-panel-title{font-size:19px;line-height:1.3157894737}}.complex-panel .complex-panel-table>tbody>tr>th{vertical-align:top}.complex-panel .complex-panel-table>tbody>tr:last-child>th,.complex-panel .complex-panel-table>tbody>tr:last-child>td{border-bottom:none}.complex-panel .complex-panel-simple-field th{padding-left:5px;width:295px}.complex-panel .complex-panel-compound-field td{padding:5px}\n"] }]
29902
+ args: [{ selector: 'ccd-read-complex-field-table', standalone: false, template: "<div class=\"complex-panel\">\n <dl class=\"complex-panel-title\"><dt><span class=\"text-16\">{{caseField.label | rpxTranslate}}</span></dt><dd></dd></dl>\n <table class=\"complex-panel-table\" aria-describedby=\"complex field table\">\n <tbody>\n <ng-container *ngFor=\"let field of caseField | ccdReadFieldsFilter:false :undefined :true :topLevelFormGroup :path :idPrefix\">\n <ng-container *ngIf=\"(field | ccdIsCompound); else SimpleRow\">\n <tr class=\"complex-panel-compound-field\" [hidden]=\"field.hidden\">\n <td colspan=\"2\">\n <span class=\"text-16\">\n <ccd-field-read [topLevelFormGroup]=\"topLevelFormGroup\" [caseFields]=\"caseFields\"\n [caseField]=\"field\" [context]=\"context\" [valueOrigin]=\"valueOrigin\"></ccd-field-read>\n </span>\n </td>\n </tr>\n </ng-container>\n <ng-template #SimpleRow>\n <tr class=\"complex-panel-simple-field\" [hidden]=\"field.hidden\">\n <th id=\"complex-panel-simple-field-label\"><span class=\"text-16\">{{field.label | rpxTranslate}}</span></th>\n <td>\n <span class=\"text-16\">\n <ccd-field-read [topLevelFormGroup]=\"topLevelFormGroup\" [caseFields]=\"caseFields\"\n [caseField]=\"field\" [context]=\"context\" [valueOrigin]=\"valueOrigin\"></ccd-field-read>\n </span>\n </td>\n </tr>\n </ng-template>\n </ng-container>\n </tbody>\n </table>\n</div>\n", styles: [".complex-panel{margin:13px 0;border:1px solid #bfc1c3}.complex-panel .complex-panel-title{background-color:#dee0e2;padding:5px 5px 2px;border-bottom:1px solid #bfc1c3;display:block;color:#0b0c0c;font-family:nta,Arial,sans-serif;font-weight:700;text-transform:none;font-size:16px;line-height:1.25}@media(min-width:641px){.complex-panel .complex-panel-title{font-size:19px;line-height:1.3157894737}}.complex-panel .complex-panel-table>tbody>tr>th{vertical-align:top}.complex-panel .complex-panel-table>tbody>tr:last-child>th,.complex-panel .complex-panel-table>tbody>tr:last-child>td{border-bottom:none}.complex-panel .complex-panel-simple-field th{padding-left:5px;width:295px}.complex-panel .complex-panel-compound-field td{padding:5px}\n"] }]
29806
29903
  }], null, { caseFields: [{
29807
29904
  type: Input
29808
29905
  }] }); })();
@@ -29836,7 +29933,7 @@ function ReadComplexFieldCollectionTableComponent_ng_container_12_ng_container_2
29836
29933
  const item_r7 = i0.ɵɵnextContext().$implicit;
29837
29934
  const ctx_r2 = i0.ɵɵnextContext();
29838
29935
  i0.ɵɵadvance();
29839
- i0.ɵɵproperty("caseField", ctx_r2.toCaseField(heading_r6, item_r7[heading_r6].label, ctx_r2.columnsHorizontalLabel[heading_r6].type, item_r7[heading_r6]))("context", ctx_r2.context);
29936
+ i0.ɵɵproperty("caseField", ctx_r2.toCaseField(heading_r6, item_r7[heading_r6].label, ctx_r2.columnsHorizontalLabel[heading_r6].type, item_r7[heading_r6]))("context", ctx_r2.context)("valueOrigin", ctx_r2.valueOrigin);
29840
29937
  } }
29841
29938
  function ReadComplexFieldCollectionTableComponent_ng_container_12_ng_container_2_ng_template_3_Template(rf, ctx) { if (rf & 1) {
29842
29939
  i0.ɵɵelementStart(0, "div");
@@ -29846,7 +29943,7 @@ function ReadComplexFieldCollectionTableComponent_ng_container_12_ng_container_2
29846
29943
  function ReadComplexFieldCollectionTableComponent_ng_container_12_ng_container_2_Template(rf, ctx) { if (rf & 1) {
29847
29944
  i0.ɵɵelementContainerStart(0);
29848
29945
  i0.ɵɵelementStart(1, "td", 4);
29849
- i0.ɵɵtemplate(2, ReadComplexFieldCollectionTableComponent_ng_container_12_ng_container_2_div_2_Template, 2, 2, "div", 17)(3, ReadComplexFieldCollectionTableComponent_ng_container_12_ng_container_2_ng_template_3_Template, 2, 0, "ng-template", null, 0, i0.ɵɵtemplateRefExtractor);
29946
+ i0.ɵɵtemplate(2, ReadComplexFieldCollectionTableComponent_ng_container_12_ng_container_2_div_2_Template, 2, 3, "div", 17)(3, ReadComplexFieldCollectionTableComponent_ng_container_12_ng_container_2_ng_template_3_Template, 2, 0, "ng-template", null, 0, i0.ɵɵtemplateRefExtractor);
29850
29947
  i0.ɵɵelementEnd();
29851
29948
  i0.ɵɵelementContainerEnd();
29852
29949
  } if (rf & 2) {
@@ -29865,14 +29962,14 @@ function ReadComplexFieldCollectionTableComponent_ng_container_12_ng_container_1
29865
29962
  const item_r7 = i0.ɵɵnextContext().$implicit;
29866
29963
  const ctx_r2 = i0.ɵɵnextContext();
29867
29964
  i0.ɵɵadvance();
29868
- i0.ɵɵproperty("caseField", ctx_r2.toCaseField("", vLabel_r9.label, vLabel_r9.field_type, item_r7[vLabel_r9.id]))("context", ctx_r2.context);
29965
+ i0.ɵɵproperty("caseField", ctx_r2.toCaseField("", vLabel_r9.label, vLabel_r9.field_type, item_r7[vLabel_r9.id]))("context", ctx_r2.context)("valueOrigin", ctx_r2.valueOrigin);
29869
29966
  } }
29870
29967
  function ReadComplexFieldCollectionTableComponent_ng_container_12_ng_container_11_tr_1_Template(rf, ctx) { if (rf & 1) {
29871
29968
  i0.ɵɵelementStart(0, "tr", 21)(1, "th", 8)(2, "span", 4);
29872
29969
  i0.ɵɵtext(3);
29873
29970
  i0.ɵɵpipe(4, "rpxTranslate");
29874
29971
  i0.ɵɵelementEnd()();
29875
- i0.ɵɵtemplate(5, ReadComplexFieldCollectionTableComponent_ng_container_12_ng_container_11_tr_1_td_5_Template, 2, 2, "td", 22);
29972
+ i0.ɵɵtemplate(5, ReadComplexFieldCollectionTableComponent_ng_container_12_ng_container_11_tr_1_td_5_Template, 2, 3, "td", 22);
29876
29973
  i0.ɵɵelementEnd();
29877
29974
  } if (rf & 2) {
29878
29975
  const vLabel_r9 = i0.ɵɵnextContext().$implicit;
@@ -29891,7 +29988,7 @@ function ReadComplexFieldCollectionTableComponent_ng_container_12_ng_container_1
29891
29988
  const ctx_r2 = i0.ɵɵnextContext(4);
29892
29989
  i0.ɵɵproperty("hidden", caseField_r10);
29893
29990
  i0.ɵɵadvance(3);
29894
- i0.ɵɵproperty("caseField", caseField_r10)("context", ctx_r2.context);
29991
+ i0.ɵɵproperty("caseField", caseField_r10)("context", ctx_r2.context)("valueOrigin", ctx_r2.valueOrigin);
29895
29992
  } }
29896
29993
  function ReadComplexFieldCollectionTableComponent_ng_container_12_ng_container_11_tr_2_ng_container_2_ng_template_3_td_5_Template(rf, ctx) { if (rf & 1) {
29897
29994
  i0.ɵɵelementStart(0, "td")(1, "span", 4);
@@ -29901,11 +29998,11 @@ function ReadComplexFieldCollectionTableComponent_ng_container_12_ng_container_1
29901
29998
  const caseField_r10 = i0.ɵɵnextContext(2).$implicit;
29902
29999
  const ctx_r2 = i0.ɵɵnextContext(4);
29903
30000
  i0.ɵɵadvance(2);
29904
- i0.ɵɵproperty("caseField", caseField_r10)("context", ctx_r2.context);
30001
+ i0.ɵɵproperty("caseField", caseField_r10)("context", ctx_r2.context)("valueOrigin", ctx_r2.valueOrigin);
29905
30002
  } }
29906
30003
  function ReadComplexFieldCollectionTableComponent_ng_container_12_ng_container_11_tr_2_ng_container_2_ng_template_3_td_6_Template(rf, ctx) { if (rf & 1) {
29907
30004
  i0.ɵɵelementStart(0, "td");
29908
- i0.ɵɵelement(1, "ccd-read-case-link-field", 18);
30005
+ i0.ɵɵelement(1, "ccd-read-case-link-field", 28);
29909
30006
  i0.ɵɵelementEnd();
29910
30007
  } if (rf & 2) {
29911
30008
  const caseField_r10 = i0.ɵɵnextContext(2).$implicit;
@@ -29920,7 +30017,7 @@ function ReadComplexFieldCollectionTableComponent_ng_container_12_ng_container_1
29920
30017
  i0.ɵɵtext(3);
29921
30018
  i0.ɵɵpipe(4, "rpxTranslate");
29922
30019
  i0.ɵɵelementEnd()();
29923
- i0.ɵɵtemplate(5, ReadComplexFieldCollectionTableComponent_ng_container_12_ng_container_11_tr_2_ng_container_2_ng_template_3_td_5_Template, 3, 2, "td", 27)(6, ReadComplexFieldCollectionTableComponent_ng_container_12_ng_container_11_tr_2_ng_container_2_ng_template_3_td_6_Template, 2, 2, "td", 27);
30020
+ i0.ɵɵtemplate(5, ReadComplexFieldCollectionTableComponent_ng_container_12_ng_container_11_tr_2_ng_container_2_ng_template_3_td_5_Template, 3, 3, "td", 27)(6, ReadComplexFieldCollectionTableComponent_ng_container_12_ng_container_11_tr_2_ng_container_2_ng_template_3_td_6_Template, 2, 2, "td", 27);
29924
30021
  i0.ɵɵelementEnd();
29925
30022
  } if (rf & 2) {
29926
30023
  const caseField_r10 = i0.ɵɵnextContext().$implicit;
@@ -29936,7 +30033,7 @@ function ReadComplexFieldCollectionTableComponent_ng_container_12_ng_container_1
29936
30033
  } }
29937
30034
  function ReadComplexFieldCollectionTableComponent_ng_container_12_ng_container_11_tr_2_ng_container_2_Template(rf, ctx) { if (rf & 1) {
29938
30035
  i0.ɵɵelementContainerStart(0);
29939
- i0.ɵɵtemplate(1, ReadComplexFieldCollectionTableComponent_ng_container_12_ng_container_11_tr_2_ng_container_2_tr_1_Template, 4, 3, "tr", 24);
30036
+ i0.ɵɵtemplate(1, ReadComplexFieldCollectionTableComponent_ng_container_12_ng_container_11_tr_2_ng_container_2_tr_1_Template, 4, 4, "tr", 24);
29940
30037
  i0.ɵɵpipe(2, "ccdIsCompound");
29941
30038
  i0.ɵɵtemplate(3, ReadComplexFieldCollectionTableComponent_ng_container_12_ng_container_11_tr_2_ng_container_2_ng_template_3_Template, 7, 6, "ng-template", null, 1, i0.ɵɵtemplateRefExtractor);
29942
30039
  i0.ɵɵelementContainerEnd();
@@ -30154,7 +30251,7 @@ class ReadComplexFieldCollectionTableComponent extends AbstractFieldReadComponen
30154
30251
  return result;
30155
30252
  }
30156
30253
  static ɵfac = /*@__PURE__*/ (() => { let ɵReadComplexFieldCollectionTableComponent_BaseFactory; return function ReadComplexFieldCollectionTableComponent_Factory(__ngFactoryType__) { return (ɵReadComplexFieldCollectionTableComponent_BaseFactory || (ɵReadComplexFieldCollectionTableComponent_BaseFactory = i0.ɵɵgetInheritedFactory(ReadComplexFieldCollectionTableComponent)))(__ngFactoryType__ || ReadComplexFieldCollectionTableComponent); }; })();
30157
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ReadComplexFieldCollectionTableComponent, selectors: [["ccd-read-complex-field-collection-table"]], standalone: false, features: [i0.ɵɵInheritDefinitionFeature], decls: 13, vars: 6, consts: [["showEmptyTd", ""], ["SimpleRow", ""], [1, "complex-panel", 3, "hidden"], [1, "complex-panel-title"], [1, "text-16"], ["aria-describedby", "complex panel table", 1, "complex-panel-table"], ["scope", "col", 4, "ngFor", "ngForOf"], [4, "ngFor", "ngForOf"], ["scope", "col"], ["href", "#", 1, "sort-widget", 3, "click", "keyup.enter", "innerHTML"], [1, "new-table-row", "accordion-heading", 3, "keyup", "click"], [2, "float", "right"], ["href", "#", 3, "click"], ["alt", "accordion-img", 1, "accordion-image", 3, "src"], [3, "hidden"], [3, "colSpan"], ["aria-describedby", "complex panel table expanded", 1, "complex-panel-table"], [4, "ngIf", "ngIfElse"], [3, "caseField", "context"], ["class", "complex-panel-simple-field accordion-body", 3, "hidden", 4, "ngIf"], [3, "hidden", 4, "ngIf"], [1, "complex-panel-simple-field", "accordion-body", 3, "hidden"], ["class", "text-16", 4, "ngIf"], ["colspan", "2"], ["class", "complex-panel-compound-field", 3, "hidden", 4, "ngIf", "ngIfElse"], [1, "complex-panel-compound-field", 3, "hidden"], [1, "complex-panel-nested-field", 3, "hidden"], [4, "ngIf"]], template: function ReadComplexFieldCollectionTableComponent_Template(rf, ctx) { if (rf & 1) {
30254
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ReadComplexFieldCollectionTableComponent, selectors: [["ccd-read-complex-field-collection-table"]], standalone: false, features: [i0.ɵɵInheritDefinitionFeature], decls: 13, vars: 6, consts: [["showEmptyTd", ""], ["SimpleRow", ""], [1, "complex-panel", 3, "hidden"], [1, "complex-panel-title"], [1, "text-16"], ["aria-describedby", "complex panel table", 1, "complex-panel-table"], ["scope", "col", 4, "ngFor", "ngForOf"], [4, "ngFor", "ngForOf"], ["scope", "col"], ["href", "#", 1, "sort-widget", 3, "click", "keyup.enter", "innerHTML"], [1, "new-table-row", "accordion-heading", 3, "keyup", "click"], [2, "float", "right"], ["href", "#", 3, "click"], ["alt", "accordion-img", 1, "accordion-image", 3, "src"], [3, "hidden"], [3, "colSpan"], ["aria-describedby", "complex panel table expanded", 1, "complex-panel-table"], [4, "ngIf", "ngIfElse"], [3, "caseField", "context", "valueOrigin"], ["class", "complex-panel-simple-field accordion-body", 3, "hidden", 4, "ngIf"], [3, "hidden", 4, "ngIf"], [1, "complex-panel-simple-field", "accordion-body", 3, "hidden"], ["class", "text-16", 4, "ngIf"], ["colspan", "2"], ["class", "complex-panel-compound-field", 3, "hidden", 4, "ngIf", "ngIfElse"], [1, "complex-panel-compound-field", 3, "hidden"], [1, "complex-panel-nested-field", 3, "hidden"], [4, "ngIf"], [3, "caseField", "context"]], template: function ReadComplexFieldCollectionTableComponent_Template(rf, ctx) { if (rf & 1) {
30158
30255
  i0.ɵɵelementStart(0, "div", 2)(1, "dl", 3)(2, "dt")(3, "span", 4);
30159
30256
  i0.ɵɵtext(4);
30160
30257
  i0.ɵɵpipe(5, "rpxTranslate");
@@ -30179,7 +30276,7 @@ class ReadComplexFieldCollectionTableComponent extends AbstractFieldReadComponen
30179
30276
  }
30180
30277
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ReadComplexFieldCollectionTableComponent, [{
30181
30278
  type: Component,
30182
- args: [{ selector: 'ccd-read-complex-field-collection-table', standalone: false, template: "<div class=\"complex-panel\" [hidden]=\"caseField.hidden\">\n <dl class=\"complex-panel-title\">\n <dt><span class=\"text-16\">{{caseField.label | rpxTranslate}}</span></dt>\n <dd></dd>\n </dl>\n <table class=\"complex-panel-table\" aria-describedby=\"complex panel table\">\n <tbody>\n <!-- <COMPLEX table field header>-->\n <tr>\n <th *ngFor=\"let heading of columns\" scope=\"col\">\n <span class=\"text-16\">{{columnsAllLabels[heading].label | rpxTranslate}}</span>\n <a href=\"#\"\n (click)=\"sortRowsByColumns(heading); $event.preventDefault()\"\n (keyup.enter)=\"sortRowsByColumns(heading)\"\n class=\"sort-widget\"\n [attr.aria-label]=\"'Sort ' + columnsAllLabels[heading].label | rpxTranslate\"\n [innerHTML]=\"sortWidget(columnsAllLabels[heading])\"></a>\n </th>\n <th></th>\n </tr>\n <!-- </COMPLEX table field header>-->\n <ng-container *ngFor=\"let item of rows; let i = index;\">\n <!-- <COMPLEX table collapsed view>-->\n <tr class=\"new-table-row accordion-heading\" (keyup)=\"$event.key === 'Enter' ? (isHidden[i] = !isHidden[i]) : null\" (click)=\"isHidden[i] = !isHidden[i]\"\n [class.last-accordion]=\"isHidden[i]\">\n <ng-container *ngFor=\"let heading of columns\">\n <td class=\"text-16\">\n <div *ngIf=\"item[heading]; else showEmptyTd\">\n <ccd-field-read\n [caseField]=\"toCaseField(heading, item[heading].label, columnsHorizontalLabel[heading].type, item[heading])\"\n [context]=\"context\"></ccd-field-read>\n </div>\n <ng-template #showEmptyTd>\n <div>&nbsp;</div>\n </ng-template>\n </td>\n </ng-container>\n <td>\n <div style=\"float: right;\">\n <a href=\"#\" (click)=\"$event.preventDefault()\"> <img src=\"{{ getImage(i) }}\" alt=\"accordion-img\" class=\"accordion-image\"/></a>\n </div>\n </td>\n </tr>\n <!-- </COMPLEX table collapsed view>-->\n <!-- <COMPLEX table expanded view>-->\n <tr [hidden]=\"isHidden[i]\">\n <td [colSpan]=\"columns.length + 1\">\n <table class=\"complex-panel-table\" aria-describedby=\"complex panel table expanded\">\n <tbody>\n <ng-container\n *ngFor=\"let vLabel of columnsVerticalLabel | keyvalue: keepOriginalOrder | ccdCollectionTableCaseFieldsFilter: caseField: rows[i] | ccdReadFieldsFilter:true :undefined :true\">\n <!-- <COMPLEX table expandable body simple field>-->\n <tr class=\"complex-panel-simple-field accordion-body\" *ngIf=\"item[vLabel.id]\" [hidden]=\"vLabel.hidden\">\n <th scope=\"col\"><span class=\"text-16\">{{ vLabel.label | rpxTranslate }}</span></th>\n <td *ngIf=\"vLabel['type'] !== 'Complex'\" class=\"text-16\">\n <ccd-field-read [caseField]=\"toCaseField('', vLabel.label, vLabel.field_type, item[vLabel.id])\"\n [context]=\"context\"></ccd-field-read>\n </td>\n </tr>\n <!-- </COMPLEX table expandable body simple field>-->\n\n <!-- <COMPLEX table expandable body complex field>-->\n <tr *ngIf=\"vLabel['type'] === 'Complex' && addCaseFieldValue(vLabel, item[vLabel.id])\" [hidden]=\"vLabel.hidden\">\n <td colspan=\"2\">\n <ng-container *ngFor=\"let caseField of vLabel | ccdReadFieldsFilter:true :undefined :true\">\n <tr class=\"complex-panel-compound-field\" *ngIf=\"(caseField | ccdIsCompound); else SimpleRow\" [hidden]=\"caseField\">\n <td colspan=\"2\">\n <span class=\"text-16\"><ccd-field-read [caseField]=\"caseField\" [context]=\"context\"></ccd-field-read></span>\n </td>\n </tr>\n <ng-template #SimpleRow>\n <tr class=\"complex-panel-nested-field\" [hidden]=\"caseField.hidden\">\n <th scope=\"col\"><span class=\"text-16\">{{caseField.label | rpxTranslate}}</span></th>\n <td *ngIf=\"!item[vLabel.id]?.hasOwnProperty('CaseReference')\">\n <span class=\"text-16\"><ccd-field-read [caseField]=\"caseField\" [context]=\"context\"></ccd-field-read></span>\n </td>\n <td *ngIf=\"item[vLabel.id]?.hasOwnProperty('CaseReference')\">\n <ccd-read-case-link-field [caseField]=\"addCaseReferenceValue(caseField, item[vLabel.id].CaseReference)\" [context]=\"context\"></ccd-read-case-link-field>\n </td>\n </tr>\n </ng-template>\n </ng-container>\n </td>\n </tr>\n <!-- <COMPLEX table expandable body complex field>-->\n </ng-container>\n </tbody>\n </table>\n </td>\n </tr>\n <!-- </COMPLEX table expanded view>-->\n </ng-container>\n </tbody>\n </table>\n</div>\n", styles: [".complex-panel{margin:13px 0;border:1px solid #bfc1c3}.complex-panel .complex-panel-title{background-color:#dee0e2;padding:5px 5px 2px;border-bottom:1px solid #bfc1c3;display:block;color:#0b0c0c;font-family:nta,Arial,sans-serif;font-weight:700;text-transform:none;font-size:16px;line-height:1.25}@media(min-width:641px){.complex-panel .complex-panel-title{font-size:19px;line-height:1.3157894737}}.complex-panel .complex-panel-table>tbody>tr>th{vertical-align:top}.complex-panel .complex-panel-table>tbody>tr:last-child>th{border-bottom:none}.complex-panel .complex-panel-table th{padding-left:5px;font-weight:700;border-bottom:none}.complex-panel .complex-panel-table td{padding-left:5px;padding-top:0;padding-bottom:0;border-bottom:none}.complex-panel .new-table-row{border-top:1px solid #bfc1c3}.complex-panel .complex-panel-simple-field th{padding-left:5px;padding-top:0;padding-bottom:0;width:295px}.complex-panel .complex-panel-nested-field th{padding-left:33px;padding-top:0;padding-bottom:0;width:200px}.complex-panel .complex-panel-compound-field td{padding:5px;border-bottom:none}.sort-widget{cursor:pointer;text-decoration:none;color:#0b0c0c}.accordion-wrapper{margin-bottom:20px}.accordion-wrapper .heading-medium{margin:0}.accordion-wrapper .accordion-heading{border-top:1px solid #bfc1c3;padding-top:20px;padding-bottom:10px;height:20px;cursor:pointer}.accordion-wrapper .accordion-heading .accordion-image{width:25px;margin-right:20px}.accordion-wrapper .accordion-body{margin-top:20px;margin-right:20px}.accordion-wrapper .last-accordion{border-bottom:1px solid #bfc1c3;padding-bottom:30px}\n"] }]
30279
+ args: [{ selector: 'ccd-read-complex-field-collection-table', standalone: false, template: "<div class=\"complex-panel\" [hidden]=\"caseField.hidden\">\n <dl class=\"complex-panel-title\">\n <dt><span class=\"text-16\">{{caseField.label | rpxTranslate}}</span></dt>\n <dd></dd>\n </dl>\n <table class=\"complex-panel-table\" aria-describedby=\"complex panel table\">\n <tbody>\n <!-- <COMPLEX table field header>-->\n <tr>\n <th *ngFor=\"let heading of columns\" scope=\"col\">\n <span class=\"text-16\">{{columnsAllLabels[heading].label | rpxTranslate}}</span>\n <a href=\"#\"\n (click)=\"sortRowsByColumns(heading); $event.preventDefault()\"\n (keyup.enter)=\"sortRowsByColumns(heading)\"\n class=\"sort-widget\"\n [attr.aria-label]=\"'Sort ' + columnsAllLabels[heading].label | rpxTranslate\"\n [innerHTML]=\"sortWidget(columnsAllLabels[heading])\"></a>\n </th>\n <th></th>\n </tr>\n <!-- </COMPLEX table field header>-->\n <ng-container *ngFor=\"let item of rows; let i = index;\">\n <!-- <COMPLEX table collapsed view>-->\n <tr class=\"new-table-row accordion-heading\" (keyup)=\"$event.key === 'Enter' ? (isHidden[i] = !isHidden[i]) : null\" (click)=\"isHidden[i] = !isHidden[i]\"\n [class.last-accordion]=\"isHidden[i]\">\n <ng-container *ngFor=\"let heading of columns\">\n <td class=\"text-16\">\n <div *ngIf=\"item[heading]; else showEmptyTd\">\n <ccd-field-read\n [caseField]=\"toCaseField(heading, item[heading].label, columnsHorizontalLabel[heading].type, item[heading])\"\n [context]=\"context\"\n [valueOrigin]=\"valueOrigin\"></ccd-field-read>\n </div>\n <ng-template #showEmptyTd>\n <div>&nbsp;</div>\n </ng-template>\n </td>\n </ng-container>\n <td>\n <div style=\"float: right;\">\n <a href=\"#\" (click)=\"$event.preventDefault()\"> <img src=\"{{ getImage(i) }}\" alt=\"accordion-img\" class=\"accordion-image\"/></a>\n </div>\n </td>\n </tr>\n <!-- </COMPLEX table collapsed view>-->\n <!-- <COMPLEX table expanded view>-->\n <tr [hidden]=\"isHidden[i]\">\n <td [colSpan]=\"columns.length + 1\">\n <table class=\"complex-panel-table\" aria-describedby=\"complex panel table expanded\">\n <tbody>\n <ng-container\n *ngFor=\"let vLabel of columnsVerticalLabel | keyvalue: keepOriginalOrder | ccdCollectionTableCaseFieldsFilter: caseField: rows[i] | ccdReadFieldsFilter:true :undefined :true\">\n <!-- <COMPLEX table expandable body simple field>-->\n <tr class=\"complex-panel-simple-field accordion-body\" *ngIf=\"item[vLabel.id]\" [hidden]=\"vLabel.hidden\">\n <th scope=\"col\"><span class=\"text-16\">{{ vLabel.label | rpxTranslate }}</span></th>\n <td *ngIf=\"vLabel['type'] !== 'Complex'\" class=\"text-16\">\n <ccd-field-read [caseField]=\"toCaseField('', vLabel.label, vLabel.field_type, item[vLabel.id])\"\n [context]=\"context\"\n [valueOrigin]=\"valueOrigin\"></ccd-field-read>\n </td>\n </tr>\n <!-- </COMPLEX table expandable body simple field>-->\n\n <!-- <COMPLEX table expandable body complex field>-->\n <tr *ngIf=\"vLabel['type'] === 'Complex' && addCaseFieldValue(vLabel, item[vLabel.id])\" [hidden]=\"vLabel.hidden\">\n <td colspan=\"2\">\n <ng-container *ngFor=\"let caseField of vLabel | ccdReadFieldsFilter:true :undefined :true\">\n <tr class=\"complex-panel-compound-field\" *ngIf=\"(caseField | ccdIsCompound); else SimpleRow\" [hidden]=\"caseField\">\n <td colspan=\"2\">\n <span class=\"text-16\"><ccd-field-read [caseField]=\"caseField\" [context]=\"context\" [valueOrigin]=\"valueOrigin\"></ccd-field-read></span>\n </td>\n </tr>\n <ng-template #SimpleRow>\n <tr class=\"complex-panel-nested-field\" [hidden]=\"caseField.hidden\">\n <th scope=\"col\"><span class=\"text-16\">{{caseField.label | rpxTranslate}}</span></th>\n <td *ngIf=\"!item[vLabel.id]?.hasOwnProperty('CaseReference')\">\n <span class=\"text-16\"><ccd-field-read [caseField]=\"caseField\" [context]=\"context\" [valueOrigin]=\"valueOrigin\"></ccd-field-read></span>\n </td>\n <td *ngIf=\"item[vLabel.id]?.hasOwnProperty('CaseReference')\">\n <ccd-read-case-link-field [caseField]=\"addCaseReferenceValue(caseField, item[vLabel.id].CaseReference)\" [context]=\"context\"></ccd-read-case-link-field>\n </td>\n </tr>\n </ng-template>\n </ng-container>\n </td>\n </tr>\n <!-- <COMPLEX table expandable body complex field>-->\n </ng-container>\n </tbody>\n </table>\n </td>\n </tr>\n <!-- </COMPLEX table expanded view>-->\n </ng-container>\n </tbody>\n </table>\n</div>\n", styles: [".complex-panel{margin:13px 0;border:1px solid #bfc1c3}.complex-panel .complex-panel-title{background-color:#dee0e2;padding:5px 5px 2px;border-bottom:1px solid #bfc1c3;display:block;color:#0b0c0c;font-family:nta,Arial,sans-serif;font-weight:700;text-transform:none;font-size:16px;line-height:1.25}@media(min-width:641px){.complex-panel .complex-panel-title{font-size:19px;line-height:1.3157894737}}.complex-panel .complex-panel-table>tbody>tr>th{vertical-align:top}.complex-panel .complex-panel-table>tbody>tr:last-child>th{border-bottom:none}.complex-panel .complex-panel-table th{padding-left:5px;font-weight:700;border-bottom:none}.complex-panel .complex-panel-table td{padding-left:5px;padding-top:0;padding-bottom:0;border-bottom:none}.complex-panel .new-table-row{border-top:1px solid #bfc1c3}.complex-panel .complex-panel-simple-field th{padding-left:5px;padding-top:0;padding-bottom:0;width:295px}.complex-panel .complex-panel-nested-field th{padding-left:33px;padding-top:0;padding-bottom:0;width:200px}.complex-panel .complex-panel-compound-field td{padding:5px;border-bottom:none}.sort-widget{cursor:pointer;text-decoration:none;color:#0b0c0c}.accordion-wrapper{margin-bottom:20px}.accordion-wrapper .heading-medium{margin:0}.accordion-wrapper .accordion-heading{border-top:1px solid #bfc1c3;padding-top:20px;padding-bottom:10px;height:20px;cursor:pointer}.accordion-wrapper .accordion-heading .accordion-image{width:25px;margin-right:20px}.accordion-wrapper .accordion-body{margin-top:20px;margin-right:20px}.accordion-wrapper .last-accordion{border-bottom:1px solid #bfc1c3;padding-bottom:30px}\n"] }]
30183
30280
  }], null, null); })();
30184
30281
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ReadComplexFieldCollectionTableComponent, { className: "ReadComplexFieldCollectionTableComponent", filePath: "lib/shared/components/palette/complex/read-complex-field-collection-table.component.ts", lineNumber: 13 }); })();
30185
30282
 
@@ -32765,13 +32862,13 @@ function CaseEditSubmitComponent_div_12_ng_container_1_ng_container_7_ng_contain
32765
32862
  i0.ɵɵadvance();
32766
32863
  i0.ɵɵattribute("colspan", ctx_r1.isLabel(field_r3) ? "2" : "1");
32767
32864
  i0.ɵɵadvance();
32768
- i0.ɵɵproperty("formGroup", ctx_r1.editForm.controls["data"])("topLevelFormGroup", ctx_r1.editForm.controls["data"])("caseField", ctx_r1.summaryCaseField(field_r3))("context", ctx_r1.paletteContext)("caseFields", ctx_r1.contextFields);
32865
+ i0.ɵɵproperty("formGroup", ctx_r1.editForm.controls["data"])("topLevelFormGroup", ctx_r1.editForm.controls["data"])("caseField", ctx_r1.summaryCaseField(field_r3))("context", ctx_r1.paletteContext)("valueOrigin", ctx_r1.paletteValueOrigin.FORM)("caseFields", ctx_r1.contextFields);
32769
32866
  i0.ɵɵadvance();
32770
32867
  i0.ɵɵproperty("ngIf", !ctx_r1.caseEdit.isCaseFlagSubmission);
32771
32868
  } }
32772
32869
  function CaseEditSubmitComponent_div_12_ng_container_1_ng_container_7_ng_container_1_ng_container_1_Template(rf, ctx) { if (rf & 1) {
32773
32870
  i0.ɵɵelementContainerStart(0);
32774
- i0.ɵɵtemplate(1, CaseEditSubmitComponent_div_12_ng_container_1_ng_container_7_ng_container_1_ng_container_1_ng_container_1_Template, 6, 12, "ng-container", 7);
32871
+ i0.ɵɵtemplate(1, CaseEditSubmitComponent_div_12_ng_container_1_ng_container_7_ng_container_1_ng_container_1_ng_container_1_Template, 6, 13, "ng-container", 7);
32775
32872
  i0.ɵɵelementContainerEnd();
32776
32873
  } if (rf & 2) {
32777
32874
  const field_r3 = ctx.$implicit;
@@ -32836,7 +32933,7 @@ function CaseEditSubmitComponent_div_12_ng_container_2_ng_container_3_tr_3_Templ
32836
32933
  i0.ɵɵadvance(2);
32837
32934
  i0.ɵɵtextInterpolate(field_r6.label);
32838
32935
  i0.ɵɵadvance(2);
32839
- i0.ɵɵproperty("formGroup", ctx_r1.editForm.controls["data"])("caseField", ctx_r1.summaryCaseField(field_r6));
32936
+ i0.ɵɵproperty("formGroup", ctx_r1.editForm.controls["data"])("caseField", ctx_r1.summaryCaseField(field_r6))("valueOrigin", ctx_r1.paletteValueOrigin.FORM);
32840
32937
  } }
32841
32938
  function CaseEditSubmitComponent_div_12_ng_container_2_ng_container_3_tr_4_Template(rf, ctx) { if (rf & 1) {
32842
32939
  i0.ɵɵelementStart(0, "tr", 36)(1, "td", 37);
@@ -32847,12 +32944,12 @@ function CaseEditSubmitComponent_div_12_ng_container_2_ng_container_3_tr_4_Templ
32847
32944
  const ctx_r1 = i0.ɵɵnextContext(3);
32848
32945
  i0.ɵɵproperty("caseField", field_r6)("formGroup", ctx_r1.editForm.controls["data"])("contextFields", ctx_r1.contextFields);
32849
32946
  i0.ɵɵadvance(2);
32850
- i0.ɵɵproperty("formGroup", ctx_r1.editForm.controls["data"])("caseField", ctx_r1.summaryCaseField(field_r6))("caseFields", ctx_r1.contextFields);
32947
+ i0.ɵɵproperty("formGroup", ctx_r1.editForm.controls["data"])("caseField", ctx_r1.summaryCaseField(field_r6))("valueOrigin", ctx_r1.paletteValueOrigin.FORM)("caseFields", ctx_r1.contextFields);
32851
32948
  } }
32852
32949
  function CaseEditSubmitComponent_div_12_ng_container_2_ng_container_3_Template(rf, ctx) { if (rf & 1) {
32853
32950
  i0.ɵɵelementContainerStart(0)(1, 29);
32854
32951
  i0.ɵɵpipe(2, "ccdIsCompound");
32855
- i0.ɵɵtemplate(3, CaseEditSubmitComponent_div_12_ng_container_2_ng_container_3_tr_3_Template, 5, 6, "tr", 30)(4, CaseEditSubmitComponent_div_12_ng_container_2_ng_container_3_tr_4_Template, 3, 6, "tr", 31);
32952
+ i0.ɵɵtemplate(3, CaseEditSubmitComponent_div_12_ng_container_2_ng_container_3_tr_3_Template, 5, 7, "tr", 30)(4, CaseEditSubmitComponent_div_12_ng_container_2_ng_container_3_tr_4_Template, 3, 7, "tr", 31);
32856
32953
  i0.ɵɵelementContainerEnd()();
32857
32954
  } if (rf & 2) {
32858
32955
  const field_r6 = ctx.$implicit;
@@ -32972,6 +33069,7 @@ class CaseEditSubmitComponent {
32972
33069
  profile;
32973
33070
  showSummaryFields;
32974
33071
  paletteContext = PaletteContext.CHECK_YOUR_ANSWER;
33072
+ paletteValueOrigin = PaletteValueOrigin;
32975
33073
  profileSubscription;
32976
33074
  contextFields;
32977
33075
  task;
@@ -33271,7 +33369,7 @@ class CaseEditSubmitComponent {
33271
33369
  return this.placeholderService.resolvePlaceholders(fields, stringToResolve);
33272
33370
  }
33273
33371
  static ɵfac = function CaseEditSubmitComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CaseEditSubmitComponent)(i0.ɵɵdirectiveInject(CaseEditComponent), i0.ɵɵdirectiveInject(FieldsUtils), i0.ɵɵdirectiveInject(CaseFieldService), i0.ɵɵdirectiveInject(i1$1.ActivatedRoute), i0.ɵɵdirectiveInject(OrderService), i0.ɵɵdirectiveInject(ProfileNotifier), i0.ɵɵdirectiveInject(MultipageComponentStateService), i0.ɵɵdirectiveInject(FormValidatorsService), i0.ɵɵdirectiveInject(CaseFlagStateService), i0.ɵɵdirectiveInject(LinkedCasesService), i0.ɵɵdirectiveInject(PlaceholderService)); };
33274
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CaseEditSubmitComponent, selectors: [["ccd-case-edit-submit"]], standalone: false, decls: 25, vars: 24, consts: [["titleBlock", ""], ["idBlock", ""], [1, "govuk-heading-l"], [4, "ngIf", "ngIfThen", "ngIfElse"], [3, "error"], [3, "callbackErrorsContext", "callbackErrorsSubject"], [1, "check-your-answers", 3, "submit", "formGroup"], [4, "ngIf"], [3, "eventCompletionParams", "eventCanBeCompleted", 4, "ngIf"], [1, "form-group", "form-group-related"], ["type", "button", 1, "button", "button-secondary", 3, "click", "disabled"], ["type", "submit", 1, "button", 3, "disabled"], [1, "cancel"], ["href", "#", 3, "click"], [3, "content"], ["class", "heading-h2", 4, "ngIf"], [1, "heading-h2"], ["class", "text-16", 4, "ngIf"], ["aria-describedby", "check your answers table", 1, "form-table"], [4, "ngFor", "ngForOf"], [1, "text-16"], ["ccdLabelSubstitutor", "", 3, "caseField", "hidden", "formGroup", "contextFields"], ["class", "valign-top case-field-label", 4, "ngIf"], [1, "form-cell", "case-field-content", "text-16"], [3, "formGroup", "topLevelFormGroup", "caseField", "context", "caseFields"], [1, "valign-top", "case-field-label"], [1, "valign-top", "check-your-answers__change", "case-field-change"], ["href", "#", 3, "click", 4, "ngIf"], ["aria-describedby", "summary fields table", 1, "summary-fields"], [3, "ngSwitch"], ["ccdLabelSubstitutor", "", 3, "caseField", "formGroup", "contextFields", 4, "ngSwitchCase"], ["class", "compound-field", "ccdLabelSubstitutor", "", 3, "caseField", "formGroup", "contextFields", 4, "ngSwitchCase"], ["ccdLabelSubstitutor", "", 3, "caseField", "formGroup", "contextFields"], ["id", "summary-field-label"], [1, "form-cell"], [3, "formGroup", "caseField"], ["ccdLabelSubstitutor", "", 1, "compound-field", 3, "caseField", "formGroup", "contextFields"], ["colspan", "2"], [3, "formGroup", "caseField", "caseFields"], ["id", "fieldset-event", "formGroupName", "event"], [2, "display", "none"], [1, "form-group", 3, "ngClass"], ["for", "field-trigger-summary", 1, "form-label"], [1, "form-hint"], ["class", "error-message", 4, "ngIf"], ["type", "text", "id", "field-trigger-summary", "formControlName", "summary", "maxlength", "1024", 1, "form-control", "bottom-30", "width-50", 3, "ngClass"], ["for", "field-trigger-description", 1, "form-label"], ["id", "field-trigger-description", "formControlName", "description", "maxlength", "65536", 1, "form-control", "bottom-30", "width-50", 3, "ngClass"], [1, "error-message"], [3, "eventCanBeCompleted", "eventCompletionParams"]], template: function CaseEditSubmitComponent_Template(rf, ctx) { if (rf & 1) {
33372
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CaseEditSubmitComponent, selectors: [["ccd-case-edit-submit"]], standalone: false, decls: 25, vars: 24, consts: [["titleBlock", ""], ["idBlock", ""], [1, "govuk-heading-l"], [4, "ngIf", "ngIfThen", "ngIfElse"], [3, "error"], [3, "callbackErrorsContext", "callbackErrorsSubject"], [1, "check-your-answers", 3, "submit", "formGroup"], [4, "ngIf"], [3, "eventCompletionParams", "eventCanBeCompleted", 4, "ngIf"], [1, "form-group", "form-group-related"], ["type", "button", 1, "button", "button-secondary", 3, "click", "disabled"], ["type", "submit", 1, "button", 3, "disabled"], [1, "cancel"], ["href", "#", 3, "click"], [3, "content"], ["class", "heading-h2", 4, "ngIf"], [1, "heading-h2"], ["class", "text-16", 4, "ngIf"], ["aria-describedby", "check your answers table", 1, "form-table"], [4, "ngFor", "ngForOf"], [1, "text-16"], ["ccdLabelSubstitutor", "", 3, "caseField", "hidden", "formGroup", "contextFields"], ["class", "valign-top case-field-label", 4, "ngIf"], [1, "form-cell", "case-field-content", "text-16"], [3, "formGroup", "topLevelFormGroup", "caseField", "context", "valueOrigin", "caseFields"], [1, "valign-top", "case-field-label"], [1, "valign-top", "check-your-answers__change", "case-field-change"], ["href", "#", 3, "click", 4, "ngIf"], ["aria-describedby", "summary fields table", 1, "summary-fields"], [3, "ngSwitch"], ["ccdLabelSubstitutor", "", 3, "caseField", "formGroup", "contextFields", 4, "ngSwitchCase"], ["class", "compound-field", "ccdLabelSubstitutor", "", 3, "caseField", "formGroup", "contextFields", 4, "ngSwitchCase"], ["ccdLabelSubstitutor", "", 3, "caseField", "formGroup", "contextFields"], ["id", "summary-field-label"], [1, "form-cell"], [3, "formGroup", "caseField", "valueOrigin"], ["ccdLabelSubstitutor", "", 1, "compound-field", 3, "caseField", "formGroup", "contextFields"], ["colspan", "2"], [3, "formGroup", "caseField", "valueOrigin", "caseFields"], ["id", "fieldset-event", "formGroupName", "event"], [2, "display", "none"], [1, "form-group", 3, "ngClass"], ["for", "field-trigger-summary", 1, "form-label"], [1, "form-hint"], ["class", "error-message", 4, "ngIf"], ["type", "text", "id", "field-trigger-summary", "formControlName", "summary", "maxlength", "1024", 1, "form-control", "bottom-30", "width-50", 3, "ngClass"], ["for", "field-trigger-description", 1, "form-label"], ["id", "field-trigger-description", "formControlName", "description", "maxlength", "65536", 1, "form-control", "bottom-30", "width-50", 3, "ngClass"], [1, "error-message"], [3, "eventCanBeCompleted", "eventCompletionParams"]], template: function CaseEditSubmitComponent_Template(rf, ctx) { if (rf & 1) {
33275
33373
  const _r1 = i0.ɵɵgetCurrentView();
33276
33374
  i0.ɵɵelementStart(0, "div")(1, "h1", 2);
33277
33375
  i0.ɵɵtext(2);
@@ -33332,7 +33430,7 @@ class CaseEditSubmitComponent {
33332
33430
  }
33333
33431
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CaseEditSubmitComponent, [{
33334
33432
  type: Component,
33335
- args: [{ selector: 'ccd-case-edit-submit', standalone: false, template: "<div>\n <!-- Event trigger name -->\n <h1 class=\"govuk-heading-l\">{{eventTrigger.name | rpxTranslate}}</h1>\n\n <!--Case ID or Title -->\n <div *ngIf=\"getCaseTitle(); then titleBlock; else idBlock\"></div>\n <ng-template #titleBlock>\n <ccd-markdown [content]=\"getCaseTitle() | ccdCaseTitle: contextFields : editForm.controls['data'] | rpxTranslate\"></ccd-markdown>\n </ng-template>\n <ng-template #idBlock>\n <h2 *ngIf=\"getCaseId()\" class=\"heading-h2\">#{{ getCaseId() | ccdCaseReference }}</h2>\n </ng-template>\n\n <ccd-case-edit-generic-errors [error]=\"caseEdit.error\"></ccd-case-edit-generic-errors>\n\n <ccd-callback-errors [callbackErrorsSubject]=\"caseEdit.callbackErrorsSubject\"\n (callbackErrorsContext)=\"callbackErrorsNotify($event)\"></ccd-callback-errors>\n\n <form class=\"check-your-answers\" [formGroup]=\"editForm\" (submit)=\"submit()\">\n <div *ngIf=\"!caseEdit.isEventCompletionChecksRequired\">\n <ng-container *ngIf=\"checkYourAnswerFieldsToDisplayExists()\">\n <h2 class=\"heading-h2\">{{pageTitle | rpxTranslate }}</h2>\n <span class=\"text-16\" *ngIf=\"!caseEdit.isCaseFlagSubmission\">{{'Check the information below carefully.' | rpxTranslate}}</span>\n\n <table class=\"form-table\" aria-describedby=\"check your answers table\">\n <tbody>\n <ng-container *ngFor=\"let page of wizard.pages\">\n <ng-container *ngIf=\"isShown(page)\">\n <ng-container *ngFor=\"let field of page\n | ccdPageFields: editForm\n | ccdReadFieldsFilter: false :undefined :true :allFieldsValues\n | ccdCYAPageLabelFilter\">\n <ng-container *ngIf=\"canShowFieldInCYA(field)\">\n <tr ccdLabelSubstitutor [caseField]=\"field\" [hidden]=\"field.hidden\"\n [formGroup]=\"editForm.controls['data']\" [contextFields]=\"contextFields\">\n <th *ngIf=\"!isLabel(field) && !caseEdit.isCaseFlagSubmission\" class=\"valign-top case-field-label\">\n <span class=\"text-16\">{{field.label | rpxTranslate}}</span>\n </th>\n <td class=\"form-cell case-field-content text-16\" [attr.colspan]=\"isLabel(field) ? '2' : '1'\">\n <ccd-field-read\n [formGroup]=\"editForm.controls['data']\" [topLevelFormGroup]=\"editForm.controls['data']\"\n [caseField]=\"summaryCaseField(field)\" [context]=\"paletteContext\" [caseFields]=\"contextFields\"></ccd-field-read>\n </td>\n <ng-container *ngIf=\"!caseEdit.isCaseFlagSubmission\">\n <td class=\"valign-top check-your-answers__change case-field-change\">\n <a *ngIf=\"isChangeAllowed(field)\" (click)=\"navigateToPage(page.id); $event.preventDefault()\"\n href=\"#\">\n <span class=\"text-16\" attr.aria-label=\"{{'Change' | rpxTranslate}} {{ field.label | rpxTranslate }}\">\n {{'Change' | rpxTranslate}}\n </span>\n </a>\n </td>\n </ng-container>\n </tr>\n </ng-container>\n </ng-container>\n </ng-container>\n </ng-container>\n </tbody>\n </table>\n </ng-container>\n <ng-container *ngIf=\"readOnlySummaryFieldsToDisplayExists()\">\n\n <table class=\"summary-fields\" aria-describedby=\"summary fields table\">\n <tbody>\n <ng-container *ngFor=\"let field of showSummaryFields\">\n <ng-container [ngSwitch]=\"!(field | ccdIsCompound)\">\n <tr *ngSwitchCase=\"true\" ccdLabelSubstitutor [caseField]=\"field\" [formGroup]=\"editForm.controls['data']\" [contextFields]=\"contextFields\">\n <th id=\"summary-field-label\">{{field.label}}</th>\n <td class=\"form-cell\">\n <ccd-field-read [formGroup]=\"editForm.controls['data']\" [caseField]=\"summaryCaseField(field)\"></ccd-field-read>\n </td>\n </tr>\n <tr *ngSwitchCase=\"false\" class=\"compound-field\" ccdLabelSubstitutor [caseField]=\"field\" [formGroup]=\"editForm.controls['data']\" [contextFields]=\"contextFields\">\n <td colspan=\"2\">\n <ccd-field-read [formGroup]=\"editForm.controls['data']\" [caseField]=\"summaryCaseField(field)\" [caseFields]=\"contextFields\"></ccd-field-read>\n </td>\n </tr>\n </ng-container>\n </ng-container>\n </tbody>\n </table>\n </ng-container>\n <ng-container *ngIf=\"showEventNotes()\">\n <fieldset id=\"fieldset-event\" formGroupName=\"event\">\n <legend style=\"display: none;\"></legend>\n <div class=\"form-group\" [ngClass]=\"{'form-group-error': !!summary && !summary.valid && (summary.dirty || summary.touched)}\">\n <label for=\"field-trigger-summary\" class=\"form-label\">\n Event summary (optional)\n <span class=\"form-hint\">A few words describing the purpose of the event.</span>\n </label>\n <span class=\"error-message\" *ngIf=\"summary?.errors && (summary.dirty || summary.touched)\">\n {{summary.errors | ccdFirstError: eventSummaryLabel | rpxTranslate}}\n </span>\n <input type=\"text\" id=\"field-trigger-summary\" class=\"form-control bottom-30 width-50\"\n [ngClass]=\"{'govuk-input--error': summary?.errors && (summary.dirty || summary.touched)}\" formControlName=\"summary\" maxlength=\"1024\">\n </div>\n <div class=\"form-group\" [ngClass]=\"{'form-group-error': !!description && !description.valid && (description.dirty || description.touched)}\">\n <label for=\"field-trigger-description\" class=\"form-label\">Event description (optional)</label>\n <span class=\"error-message\" *ngIf=\"description?.errors && (description.dirty || description.touched)\">\n {{description.errors | ccdFirstError: eventDescriptionLabel | rpxTranslate}}\n </span>\n <textarea id=\"field-trigger-description\" class=\"form-control bottom-30 width-50\" formControlName=\"description\"\n [ngClass]=\"{'govuk-input--error': description?.errors && (description.dirty || description.touched)}\" maxlength=\"65536\"></textarea>\n </div>\n </fieldset>\n </ng-container>\n </div>\n <ccd-case-event-completion *ngIf=\"caseEdit.isEventCompletionChecksRequired\"\n [eventCompletionParams]=\"caseEdit.eventCompletionParams\"\n (eventCanBeCompleted)=\"onEventCanBeCompleted($event)\">\n </ccd-case-event-completion>\n <div class=\"form-group form-group-related\">\n <button class=\"button button-secondary\" type=\"button\" [disabled]=\"!hasPrevious() || caseEdit.isSubmitting\" (click)=\"previous()\">\n {{'Previous' | rpxTranslate}}\n </button>\n <button type=\"submit\" [disabled]=\"isDisabled\" class=\"button\">\n {{triggerText | rpxTranslate}}\n </button>\n </div>\n <p class=\"cancel\">\n <a (click)=\"cancel(); $event.preventDefault()\" href=\"#\" [class.disabled]=\"caseEdit.isSubmitting\">{{getCancelText() | rpxTranslate}}</a>\n </p>\n </form>\n</div>\n\n", styles: ["#fieldset-case-data{margin-bottom:30px}#fieldset-case-data th{width:1%;white-space:nowrap;vertical-align:top}.compound-field td{padding:0}#confirmation-header{width:630px;background-color:#17958b;border:solid 1px #979797;color:#fff;text-align:center}#confirmation-body{width:630px;background-color:#fff}.valign-top{vertical-align:top}.summary-fields{margin-bottom:30px}.summary-fields tbody tr th,.summary-fields tbody tr td{border-bottom:0px}a.disabled{pointer-events:none;cursor:default}.case-field-label{width:45%}.case-field-content{width:50%}.no-bottom-border{border-bottom:none}.case-field-change{width:5%}.refresh-modal-backdrop{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000}.refresh-modal{background:#fff;padding:24px;max-width:520px;width:90%;box-shadow:0 8px 24px #0003;border-radius:4px;text-align:center}.refresh-modal .button{margin-top:12px}\n"] }]
33433
+ args: [{ selector: 'ccd-case-edit-submit', standalone: false, template: "<div>\n <!-- Event trigger name -->\n <h1 class=\"govuk-heading-l\">{{eventTrigger.name | rpxTranslate}}</h1>\n\n <!--Case ID or Title -->\n <div *ngIf=\"getCaseTitle(); then titleBlock; else idBlock\"></div>\n <ng-template #titleBlock>\n <ccd-markdown [content]=\"getCaseTitle() | ccdCaseTitle: contextFields : editForm.controls['data'] | rpxTranslate\"></ccd-markdown>\n </ng-template>\n <ng-template #idBlock>\n <h2 *ngIf=\"getCaseId()\" class=\"heading-h2\">#{{ getCaseId() | ccdCaseReference }}</h2>\n </ng-template>\n\n <ccd-case-edit-generic-errors [error]=\"caseEdit.error\"></ccd-case-edit-generic-errors>\n\n <ccd-callback-errors [callbackErrorsSubject]=\"caseEdit.callbackErrorsSubject\"\n (callbackErrorsContext)=\"callbackErrorsNotify($event)\"></ccd-callback-errors>\n\n <form class=\"check-your-answers\" [formGroup]=\"editForm\" (submit)=\"submit()\">\n <div *ngIf=\"!caseEdit.isEventCompletionChecksRequired\">\n <ng-container *ngIf=\"checkYourAnswerFieldsToDisplayExists()\">\n <h2 class=\"heading-h2\">{{pageTitle | rpxTranslate }}</h2>\n <span class=\"text-16\" *ngIf=\"!caseEdit.isCaseFlagSubmission\">{{'Check the information below carefully.' | rpxTranslate}}</span>\n\n <table class=\"form-table\" aria-describedby=\"check your answers table\">\n <tbody>\n <ng-container *ngFor=\"let page of wizard.pages\">\n <ng-container *ngIf=\"isShown(page)\">\n <ng-container *ngFor=\"let field of page\n | ccdPageFields: editForm\n | ccdReadFieldsFilter: false :undefined :true :allFieldsValues\n | ccdCYAPageLabelFilter\">\n <ng-container *ngIf=\"canShowFieldInCYA(field)\">\n <tr ccdLabelSubstitutor [caseField]=\"field\" [hidden]=\"field.hidden\"\n [formGroup]=\"editForm.controls['data']\" [contextFields]=\"contextFields\">\n <th *ngIf=\"!isLabel(field) && !caseEdit.isCaseFlagSubmission\" class=\"valign-top case-field-label\">\n <span class=\"text-16\">{{field.label | rpxTranslate}}</span>\n </th>\n <td class=\"form-cell case-field-content text-16\" [attr.colspan]=\"isLabel(field) ? '2' : '1'\">\n <ccd-field-read\n [formGroup]=\"editForm.controls['data']\" [topLevelFormGroup]=\"editForm.controls['data']\"\n [caseField]=\"summaryCaseField(field)\" [context]=\"paletteContext\" [valueOrigin]=\"paletteValueOrigin.FORM\" [caseFields]=\"contextFields\"></ccd-field-read>\n </td>\n <ng-container *ngIf=\"!caseEdit.isCaseFlagSubmission\">\n <td class=\"valign-top check-your-answers__change case-field-change\">\n <a *ngIf=\"isChangeAllowed(field)\" (click)=\"navigateToPage(page.id); $event.preventDefault()\"\n href=\"#\">\n <span class=\"text-16\" attr.aria-label=\"{{'Change' | rpxTranslate}} {{ field.label | rpxTranslate }}\">\n {{'Change' | rpxTranslate}}\n </span>\n </a>\n </td>\n </ng-container>\n </tr>\n </ng-container>\n </ng-container>\n </ng-container>\n </ng-container>\n </tbody>\n </table>\n </ng-container>\n <ng-container *ngIf=\"readOnlySummaryFieldsToDisplayExists()\">\n\n <table class=\"summary-fields\" aria-describedby=\"summary fields table\">\n <tbody>\n <ng-container *ngFor=\"let field of showSummaryFields\">\n <ng-container [ngSwitch]=\"!(field | ccdIsCompound)\">\n <tr *ngSwitchCase=\"true\" ccdLabelSubstitutor [caseField]=\"field\" [formGroup]=\"editForm.controls['data']\" [contextFields]=\"contextFields\">\n <th id=\"summary-field-label\">{{field.label}}</th>\n <td class=\"form-cell\">\n <ccd-field-read [formGroup]=\"editForm.controls['data']\" [caseField]=\"summaryCaseField(field)\" [valueOrigin]=\"paletteValueOrigin.FORM\"></ccd-field-read>\n </td>\n </tr>\n <tr *ngSwitchCase=\"false\" class=\"compound-field\" ccdLabelSubstitutor [caseField]=\"field\" [formGroup]=\"editForm.controls['data']\" [contextFields]=\"contextFields\">\n <td colspan=\"2\">\n <ccd-field-read [formGroup]=\"editForm.controls['data']\" [caseField]=\"summaryCaseField(field)\" [valueOrigin]=\"paletteValueOrigin.FORM\" [caseFields]=\"contextFields\"></ccd-field-read>\n </td>\n </tr>\n </ng-container>\n </ng-container>\n </tbody>\n </table>\n </ng-container>\n <ng-container *ngIf=\"showEventNotes()\">\n <fieldset id=\"fieldset-event\" formGroupName=\"event\">\n <legend style=\"display: none;\"></legend>\n <div class=\"form-group\" [ngClass]=\"{'form-group-error': !!summary && !summary.valid && (summary.dirty || summary.touched)}\">\n <label for=\"field-trigger-summary\" class=\"form-label\">\n Event summary (optional)\n <span class=\"form-hint\">A few words describing the purpose of the event.</span>\n </label>\n <span class=\"error-message\" *ngIf=\"summary?.errors && (summary.dirty || summary.touched)\">\n {{summary.errors | ccdFirstError: eventSummaryLabel | rpxTranslate}}\n </span>\n <input type=\"text\" id=\"field-trigger-summary\" class=\"form-control bottom-30 width-50\"\n [ngClass]=\"{'govuk-input--error': summary?.errors && (summary.dirty || summary.touched)}\" formControlName=\"summary\" maxlength=\"1024\">\n </div>\n <div class=\"form-group\" [ngClass]=\"{'form-group-error': !!description && !description.valid && (description.dirty || description.touched)}\">\n <label for=\"field-trigger-description\" class=\"form-label\">Event description (optional)</label>\n <span class=\"error-message\" *ngIf=\"description?.errors && (description.dirty || description.touched)\">\n {{description.errors | ccdFirstError: eventDescriptionLabel | rpxTranslate}}\n </span>\n <textarea id=\"field-trigger-description\" class=\"form-control bottom-30 width-50\" formControlName=\"description\"\n [ngClass]=\"{'govuk-input--error': description?.errors && (description.dirty || description.touched)}\" maxlength=\"65536\"></textarea>\n </div>\n </fieldset>\n </ng-container>\n </div>\n <ccd-case-event-completion *ngIf=\"caseEdit.isEventCompletionChecksRequired\"\n [eventCompletionParams]=\"caseEdit.eventCompletionParams\"\n (eventCanBeCompleted)=\"onEventCanBeCompleted($event)\">\n </ccd-case-event-completion>\n <div class=\"form-group form-group-related\">\n <button class=\"button button-secondary\" type=\"button\" [disabled]=\"!hasPrevious() || caseEdit.isSubmitting\" (click)=\"previous()\">\n {{'Previous' | rpxTranslate}}\n </button>\n <button type=\"submit\" [disabled]=\"isDisabled\" class=\"button\">\n {{triggerText | rpxTranslate}}\n </button>\n </div>\n <p class=\"cancel\">\n <a (click)=\"cancel(); $event.preventDefault()\" href=\"#\" [class.disabled]=\"caseEdit.isSubmitting\">{{getCancelText() | rpxTranslate}}</a>\n </p>\n </form>\n</div>\n", styles: ["#fieldset-case-data{margin-bottom:30px}#fieldset-case-data th{width:1%;white-space:nowrap;vertical-align:top}.compound-field td{padding:0}#confirmation-header{width:630px;background-color:#17958b;border:solid 1px #979797;color:#fff;text-align:center}#confirmation-body{width:630px;background-color:#fff}.valign-top{vertical-align:top}.summary-fields{margin-bottom:30px}.summary-fields tbody tr th,.summary-fields tbody tr td{border-bottom:0px}a.disabled{pointer-events:none;cursor:default}.case-field-label{width:45%}.case-field-content{width:50%}.no-bottom-border{border-bottom:none}.case-field-change{width:5%}.refresh-modal-backdrop{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000}.refresh-modal{background:#fff;padding:24px;max-width:520px;width:90%;box-shadow:0 8px 24px #0003;border-radius:4px;text-align:center}.refresh-modal .button{margin-top:12px}\n"] }]
33336
33434
  }], () => [{ type: CaseEditComponent }, { type: FieldsUtils }, { type: CaseFieldService }, { type: i1$1.ActivatedRoute }, { type: OrderService }, { type: ProfileNotifier }, { type: MultipageComponentStateService }, { type: FormValidatorsService }, { type: CaseFlagStateService }, { type: LinkedCasesService }, { type: PlaceholderService }], null); })();
33337
33435
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CaseEditSubmitComponent, { className: "CaseEditSubmitComponent", filePath: "lib/shared/components/case-editor/case-edit-submit/case-edit-submit.component.ts", lineNumber: 32 }); })();
33338
33436
 
@@ -33557,7 +33655,8 @@ class CaseEditorModule {
33557
33655
  EventCompletionStateMachineService,
33558
33656
  CaseFlagStateService,
33559
33657
  ValidPageListCaseFieldsService,
33560
- MultipageComponentStateService
33658
+ MultipageComponentStateService,
33659
+ FocusService
33561
33660
  ], imports: [CommonModule,
33562
33661
  RouterModule,
33563
33662
  FormsModule,
@@ -33640,7 +33739,8 @@ class CaseEditorModule {
33640
33739
  EventCompletionStateMachineService,
33641
33740
  CaseFlagStateService,
33642
33741
  ValidPageListCaseFieldsService,
33643
- MultipageComponentStateService
33742
+ MultipageComponentStateService,
33743
+ FocusService
33644
33744
  ]
33645
33745
  }]
33646
33746
  }], null, null); })();
@@ -40023,9 +40123,6 @@ class CreateCaseFiltersComponent {
40023
40123
  this.jurisdictions = jurisdictions;
40024
40124
  this.selectJurisdiction(this.jurisdictions, this.filterJurisdictionControl);
40025
40125
  });
40026
- if (document.getElementById('cc-jurisdiction')) {
40027
- document.getElementById('cc-jurisdiction').focus();
40028
- }
40029
40126
  }
40030
40127
  onJurisdictionIdChange() {
40031
40128
  this.resetCaseType();
@@ -41164,6 +41261,7 @@ class SearchResultComponent {
41164
41261
  placeholderService;
41165
41262
  browserService;
41166
41263
  sessionStorageService;
41264
+ caseFlagRefdataService;
41167
41265
  static PARAM_JURISDICTION = 'jurisdiction';
41168
41266
  static PARAM_CASE_TYPE = 'case-type';
41169
41267
  static PARAM_CASE_STATE = 'case-state';
@@ -41195,12 +41293,15 @@ class SearchResultComponent {
41195
41293
  draftsCount;
41196
41294
  consumerSortParameters = { column: null, order: null, type: null };
41197
41295
  selectedCases = [];
41198
- constructor(searchResultViewItemComparatorFactory, appConfig, activityService, caseReferencePipe, placeholderService, browserService, sessionStorageService) {
41296
+ hmctsServiceIdByCaseType = new Map();
41297
+ pendingHmctsServiceIdCaseTypes = new Set();
41298
+ constructor(searchResultViewItemComparatorFactory, appConfig, activityService, caseReferencePipe, placeholderService, browserService, sessionStorageService, caseFlagRefdataService) {
41199
41299
  this.activityService = activityService;
41200
41300
  this.caseReferencePipe = caseReferencePipe;
41201
41301
  this.placeholderService = placeholderService;
41202
41302
  this.browserService = browserService;
41203
41303
  this.sessionStorageService = sessionStorageService;
41304
+ this.caseFlagRefdataService = caseFlagRefdataService;
41204
41305
  this.searchResultViewItemComparatorFactory = searchResultViewItemComparatorFactory;
41205
41306
  this.paginationPageSize = appConfig.getPaginationPageSize();
41206
41307
  this.hideRows = false;
@@ -41230,6 +41331,7 @@ class SearchResultComponent {
41230
41331
  return a.order - b.order;
41231
41332
  });
41232
41333
  this.hydrateResultView();
41334
+ this.resolveHmctsServiceIdsForResults();
41233
41335
  this.draftsCount = this.draftsCount ? this.draftsCount : this.numberOfDrafts();
41234
41336
  }
41235
41337
  if (changes['page']) {
@@ -41377,8 +41479,48 @@ class SearchResultComponent {
41377
41479
  value: result.case_fields[col.case_field_id],
41378
41480
  display_context_parameter: col.display_context_parameter,
41379
41481
  display_context: col.display_context,
41482
+ hmctsServiceId: this.hmctsServiceIdByCaseType.get(this.getCaseTypeId(result)) || ''
41483
+ });
41484
+ }
41485
+ resolveHmctsServiceIdsForResults() {
41486
+ this.resultView.results.forEach((result) => {
41487
+ const caseTypeId = this.getCaseTypeId(result);
41488
+ if (!caseTypeId || !this.caseFlagRefdataService) {
41489
+ return;
41490
+ }
41491
+ if (this.hmctsServiceIdByCaseType.has(caseTypeId)) {
41492
+ this.applyHmctsServiceIdToResultFields(caseTypeId, this.hmctsServiceIdByCaseType.get(caseTypeId));
41493
+ return;
41494
+ }
41495
+ if (this.pendingHmctsServiceIdCaseTypes.has(caseTypeId)) {
41496
+ return;
41497
+ }
41498
+ this.pendingHmctsServiceIdCaseTypes.add(caseTypeId);
41499
+ this.caseFlagRefdataService.getHmctsServiceDetailsByCaseType(caseTypeId).subscribe({
41500
+ next: (serviceDetails) => {
41501
+ const hmctsServiceId = serviceDetails?.find((serviceDetail) => !!serviceDetail.service_code)?.service_code;
41502
+ if (hmctsServiceId) {
41503
+ this.hmctsServiceIdByCaseType.set(caseTypeId, hmctsServiceId);
41504
+ this.applyHmctsServiceIdToResultFields(caseTypeId, hmctsServiceId);
41505
+ }
41506
+ },
41507
+ error: () => this.pendingHmctsServiceIdCaseTypes.delete(caseTypeId),
41508
+ complete: () => this.pendingHmctsServiceIdCaseTypes.delete(caseTypeId)
41509
+ });
41380
41510
  });
41381
41511
  }
41512
+ applyHmctsServiceIdToResultFields(caseTypeId, hmctsServiceId) {
41513
+ this.resultView.results
41514
+ .filter((result) => this.getCaseTypeId(result) === caseTypeId)
41515
+ .forEach((result) => {
41516
+ Object.keys(result.columns || {}).forEach((columnId) => {
41517
+ result.columns[columnId].hmctsServiceId = hmctsServiceId;
41518
+ });
41519
+ });
41520
+ }
41521
+ getCaseTypeId(result) {
41522
+ return result?.case_fields?.['[CASE_TYPE]'] || this.caseType?.id;
41523
+ }
41382
41524
  getColumnsWithPrefix(col, result) {
41383
41525
  col.value = this.draftPrefixOrGet(col, result);
41384
41526
  col.value = this.placeholderService.resolvePlaceholders(result.case_fields, col.value);
@@ -41501,7 +41643,7 @@ class SearchResultComponent {
41501
41643
  }
41502
41644
  // eslint-disable-next-line @typescript-eslint/no-empty-function
41503
41645
  noop() { }
41504
- static ɵfac = function SearchResultComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SearchResultComponent)(i0.ɵɵdirectiveInject(SearchResultViewItemComparatorFactory), i0.ɵɵdirectiveInject(AbstractAppConfig), i0.ɵɵdirectiveInject(ActivityService), i0.ɵɵdirectiveInject(CaseReferencePipe), i0.ɵɵdirectiveInject(PlaceholderService), i0.ɵɵdirectiveInject(BrowserService), i0.ɵɵdirectiveInject(SessionStorageService)); };
41646
+ static ɵfac = function SearchResultComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SearchResultComponent)(i0.ɵɵdirectiveInject(SearchResultViewItemComparatorFactory), i0.ɵɵdirectiveInject(AbstractAppConfig), i0.ɵɵdirectiveInject(ActivityService), i0.ɵɵdirectiveInject(CaseReferencePipe), i0.ɵɵdirectiveInject(PlaceholderService), i0.ɵɵdirectiveInject(BrowserService), i0.ɵɵdirectiveInject(SessionStorageService), i0.ɵɵdirectiveInject(CaseFlagRefdataService, 8)); };
41505
41647
  static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SearchResultComponent, selectors: [["ccd-search-result"]], inputs: { caseLinkUrlTemplate: "caseLinkUrlTemplate", jurisdiction: "jurisdiction", caseType: "caseType", caseState: "caseState", caseFilterFG: "caseFilterFG", resultView: "resultView", page: "page", paginationMetadata: "paginationMetadata", metadataFields: "metadataFields", selectionEnabled: "selectionEnabled", showOnlySelected: "showOnlySelected", preSelectedCases: "preSelectedCases", consumerSortingEnabled: "consumerSortingEnabled" }, outputs: { selection: "selection", changePage: "changePage", clickCase: "clickCase", sortHandler: "sortHandler" }, standalone: false, features: [i0.ɵɵNgOnChangesFeature], decls: 3, vars: 3, consts: [["case_reference", ""], [4, "ngIf"], [3, "visibilityLabel", "autoHide", "maxSize", "screenReaderPaginationLabel", "screenReaderPageLabel", "screenReaderCurrentLabel", "pageChange", 4, "ngIf"], ["class", "notification", 4, "ngIf"], ["id", "search-result-heading__text", "tabindex", "-1", 1, "heading-h2"], ["class", "govuk-warning-text pagination-limit-warning", 4, "ngIf"], ["class", "pagination-top", 4, "ngIf"], ["class", "reset-selection", 4, "ngIf"], ["scope", "row"], ["class", "govuk-table__checkbox", 4, "ngIf"], ["class", "search-result-column-header", "scope", "col", 4, "ngFor", "ngForOf"], ["style", "width: 110px;", "scope", "col", 4, "ngIf"], [1, "govuk-warning-text", "pagination-limit-warning"], ["aria-hidden", "true", 1, "govuk-warning-text__icon"], [1, "govuk-warning-text__text"], [1, "govuk-warning-text__assistive"], [1, "pagination-top"], ["id", "search-result-summary__text", 1, "text-16"], [1, "govuk-!-font-weight-bold"], [1, "reset-selection"], ["href", "#", 1, "search-result-reset-link", 3, "click"], [1, "govuk-table__checkbox"], [1, "govuk-checkboxes__item"], ["id", "select-all", "name", "select-all", "type", "checkbox", 1, "govuk-checkboxes__input", 3, "change", "checked", "disabled"], ["for", "select-all", 1, "govuk-label", "govuk-checkboxes__label"], ["scope", "col", 1, "search-result-column-header"], [1, "search-result-column-label", 3, "click", "keyup"], ["class", "search-result-column-sort", 4, "ngIf"], [1, "search-result-column-sort"], ["href", "#", 1, "sort-widget", 3, "click", "keyup.enter", "innerHTML"], ["scope", "col", 2, "width", "110px"], [4, "ngFor", "ngForOf"], ["class", "govuk-table__checkbox", "scope", "col", 4, "ngIf"], ["class", "search-result-column-cell", "scope", "row", 4, "ngFor", "ngForOf"], ["scope", "col", 1, "govuk-table__checkbox"], ["type", "checkbox", 1, "govuk-checkboxes__input", 3, "change", "id", "name", "checked", "disabled"], [1, "govuk-label", "govuk-checkboxes__label", 3, "for"], ["scope", "row", 1, "search-result-column-cell"], ["class", "govuk-link", 3, "routerLink", 4, "ngIf"], ["class", "text-16", 3, "visibility", 4, "ngIf"], [1, "govuk-link", 3, "routerLink"], ["class", "text-16", 4, "ngIf"], [1, "text-16"], ["ccdLabelSubstitutor", "", 3, "caseField", "contextFields", "elementsToSubstitute", 4, "ngIf", "ngIfElse"], ["ccdLabelSubstitutor", "", 3, "caseField", "contextFields", "elementsToSubstitute"], [3, "caseId", "displayMode"], ["type", "checkbox", 1, "govuk-checkboxes__input", 3, "change", "keyup", "id", "name", "checked", "disabled"], [3, "pageChange", "visibilityLabel", "autoHide", "maxSize", "screenReaderPaginationLabel", "screenReaderPageLabel", "screenReaderCurrentLabel"], [1, "notification"]], template: function SearchResultComponent_Template(rf, ctx) { if (rf & 1) {
41506
41648
  i0.ɵɵtemplate(0, SearchResultComponent_table_0_Template, 16, 11, "table", 1)(1, SearchResultComponent_ccd_pagination_1_Template, 1, 6, "ccd-pagination", 2)(2, SearchResultComponent_div_2_Template, 4, 6, "div", 3);
41507
41649
  } if (rf & 2) {
@@ -41515,7 +41657,9 @@ class SearchResultComponent {
41515
41657
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SearchResultComponent, [{
41516
41658
  type: Component,
41517
41659
  args: [{ selector: 'ccd-search-result', standalone: false, template: "<table *ngIf=\"hasResults() || hasDrafts()\">\n <caption>\n <h2 class=\"heading-h2\" id=\"search-result-heading__text\" tabindex=\"-1\">{{ (caseState ? 'Your cases' : 'Search result') | rpxTranslate}}</h2>\n\n <div class=\"govuk-warning-text pagination-limit-warning\" *ngIf=\"paginationLimitEnforced\">\n <span class=\"govuk-warning-text__icon\" aria-hidden=\"true\">!</span>\n <strong class=\"govuk-warning-text__text\">\n <span class=\"govuk-warning-text__assistive\">{{'Warning' | rpxTranslate}}</span>\n {{'The total size of the result set is' | rpxTranslate}} {{paginationMetadata.totalResultsCount | number}}. {{'Only the first 10,000 records are available for display.' | rpxTranslate}}\n </strong>\n </div>\n\n <div *ngIf=\"(hasResults() || hasDrafts())\" class=\"pagination-top\">\n <output [attr.aria-label]=\"getTotalResults() + ' ' + ('results have been found' | rpxTranslate)\"></output>\n <span class=\"text-16\" id=\"search-result-summary__text\">{{'Showing' | rpxTranslate}}\n <span class=\"govuk-!-font-weight-bold\">{{ getFirstResult() }}</span>\n {{'to' | rpxTranslate}}\n <span class=\"govuk-!-font-weight-bold\">{{ getLastResult() }}</span>\n {{'of' | rpxTranslate}}\n <span class=\"govuk-!-font-weight-bold\">{{ getTotalResults() }}</span> {{'results' | rpxTranslate}}</span>\n </div>\n <div *ngIf=\"(hasResults() || hasDrafts()) && selectionEnabled\" class=\"reset-selection\"\n [attr.aria-label]=\"'Reset selection' | rpxTranslate\">\n <span><a class=\"search-result-reset-link\" href=\"#\" (click)=\"clearSelection(); $event.preventDefault()\">{{'Reset case selection' | rpxTranslate}}</a></span>\n </div>\n </caption>\n <thead>\n <tr scope=\"row\">\n <td *ngIf=\"selectionEnabled\" class=\"govuk-table__checkbox\">\n <div class=\"govuk-checkboxes__item\">\n <input class=\"govuk-checkboxes__input\" id=\"select-all\" name=\"select-all\" type=\"checkbox\" (change)=\"selectAll()\" [checked]=\"allOnPageSelected()\" [disabled]=\"!canAnyBeShared()\" />\n <label class=\"govuk-label govuk-checkboxes__label\" for=\"select-all\" [attr.aria-labelledby]=\"'select-all'\">\n </label>\n </div>\n </td>\n <th *ngFor=\"let col of resultView.columns\" class=\"search-result-column-header\"\n [attr.aria-sort]=\"isSortAscending(col) === null ? null : (isSortAscending(col) ? 'ascending' : 'descending')\" scope=\"col\">\n <div>\n <div class=\"search-result-column-label\" (click)=\"sort(col)\" (keyup)=\"noop()\">\n {{ isTranslatable(col) ? (col.label | rpxTranslate) : col.label }}\n </div>\n <div *ngIf=\"comparator(col)\" class=\"search-result-column-sort\">\n <a (click)=\"sort(col); $event.preventDefault()\" (keyup.enter)=\"sort(col)\" class=\"sort-widget\" [innerHTML]=\"sortWidget(col)\" [attr.aria-label]=\"'Sort ' + col.label | rpxTranslate\" href=\"#\"></a>\n </div>\n </div>\n </th>\n <th *ngIf=\"activityEnabled()\" style=\"width: 110px;\" scope=\"col\">&ZeroWidthSpace;</th>\n </tr>\n </thead>\n\n <tbody>\n <!-- sorted by consumer -->\n <ng-container *ngIf=\"consumerSortingEnabled\">\n <tr *ngFor=\"let result of resultView.results | paginate: { itemsPerPage: paginationPageSize, currentPage: selected.page, totalItems: resultTotal }\">\n <td *ngIf=\"selectionEnabled\" class=\"govuk-table__checkbox\" scope=\"col\">\n <div class=\"govuk-checkboxes__item\">\n <input class=\"govuk-checkboxes__input\" id=\"select-{{ result.case_id }}\" name=\"select-{{ result.case_id }}\"\n type=\"checkbox\" (change)=\"changeSelection(result)\" [checked]=\"isSelected(result)\" [disabled]=\"!canBeShared(result)\" />\n <label class=\"govuk-label govuk-checkboxes__label\" for=\"select-{{ result.case_id }}\" [attr.aria-labelledby]=\"'select-' + result.case_id\">\n </label>\n </div>\n </td>\n <td class=\"search-result-column-cell\" *ngFor=\"let col of resultView.columns; let colIndex = index\" scope=\"row\">\n <a *ngIf=\"colIndex == 0\" [routerLink]=\"prepareCaseLinkUrl(result.case_id)\"\n attr.aria-label=\"go to case with Case reference:{{ result.case_id | ccdCaseReference }}\" class=\"govuk-link\">\n <ng-container class=\"text-16\" *ngIf=\"!hideRows\">\n <ccd-field-read *ngIf=\"draftPrefixOrGet(col, result); else case_reference\"\n ccdLabelSubstitutor [caseField]=\"getColumnsWithPrefix(result.columns[col.case_field_id], result)\"\n [contextFields]=\"result.hydrated_case_fields\"\n [elementsToSubstitute]=\"['value']\"></ccd-field-read>\n <ng-template #case_reference>{{result.case_id | ccdCaseReference}}</ng-template>\n </ng-container>\n </a>\n <div *ngIf=\"colIndex != 0\" class=\"text-16\" [style.visibility]=\"hideRows ? 'hidden' : 'visible'\">\n <ccd-field-read ccdLabelSubstitutor\n [caseField]=\"result.columns[col.case_field_id]\"\n [contextFields]=\"result.hydrated_case_fields\"\n [elementsToSubstitute]=\"['value']\"></ccd-field-read>\n </div>\n </td>\n <td *ngIf=\"activityEnabled()\">\n <div [style.visibility]=\"hideRows ? 'hidden' : 'visible'\">\n <ccd-activity [caseId]=\"result.case_id\" [displayMode]=\"ICON\"></ccd-activity>\n </div>\n </td>\n </tr>\n </ng-container>\n <!-- sorted by toolkit -->\n <ng-container *ngIf=\"!consumerSortingEnabled\">\n <tr *ngFor=\"let result of resultView.results | ccdSortSearchResult : sortParameters | paginate: { itemsPerPage: paginationPageSize, currentPage: selected.page, totalItems: resultTotal }\">\n <td *ngIf=\"selectionEnabled\" class=\"govuk-table__checkbox\" scope=\"col\">\n <div class=\"govuk-checkboxes__item\">\n <input class=\"govuk-checkboxes__input\" id=\"select-{{ result.case_id }}\" name=\"select-{{ result.case_id }}\"\n type=\"checkbox\" (change)=\"changeSelection(result)\" [checked]=\"isSelected(result)\" [disabled]=\"!canBeShared(result)\" (keyup)=\"onKeyUp($event, result)\" />\n <label class=\"govuk-label govuk-checkboxes__label\" for=\"select-{{ result.case_id }}\" [attr.aria-labelledby]=\"'select-' + result.case_id\">\n </label>\n </div>\n </td>\n <td class=\"search-result-column-cell\" *ngFor=\"let col of resultView.columns; let colIndex = index\" scope=\"row\">\n\n <a *ngIf=\"colIndex == 0\" [routerLink]=\"prepareCaseLinkUrl(result.case_id)\"\n attr.aria-label=\"go to case with Case reference:{{ result.case_id | ccdCaseReference }}\" class=\"govuk-link\">\n <ng-container class=\"text-16\" *ngIf=\"!hideRows\">\n <ccd-field-read *ngIf=\"draftPrefixOrGet(col, result); else case_reference\"\n ccdLabelSubstitutor [caseField]=\"getColumnsWithPrefix(result.columns[col.case_field_id], result)\"\n [contextFields]=\"result.hydrated_case_fields\"\n [elementsToSubstitute]=\"['value']\"></ccd-field-read>\n <ng-template #case_reference>{{result.case_id | ccdCaseReference}}</ng-template>\n </ng-container>\n </a>\n <div *ngIf=\"colIndex != 0\" class=\"text-16\" [style.visibility]=\"hideRows ? 'hidden' : 'visible'\">\n <ccd-field-read ccdLabelSubstitutor\n [caseField]=\"result.columns[col.case_field_id]\"\n [contextFields]=\"result.hydrated_case_fields\"\n [elementsToSubstitute]=\"['value']\"></ccd-field-read>\n </div>\n </td>\n <td *ngIf=\"activityEnabled()\">\n <div [style.visibility]=\"hideRows ? 'hidden' : 'visible'\">\n <ccd-activity [caseId]=\"result.case_id\" [displayMode]=\"ICON\"></ccd-activity>\n </div>\n </td>\n </tr>\n </ng-container>\n\n </tbody>\n</table>\n\n<ccd-pagination\n *ngIf=\"hasResults()\"\n (pageChange)=\"goToPage($event)\"\n [visibilityLabel]=\"hideRows ? 'hidden' : 'visible'\"\n [autoHide]=\"true\"\n [maxSize]=\"8\"\n [screenReaderPaginationLabel]=\"'Pagination'\"\n [screenReaderPageLabel]=\"page\"\n [screenReaderCurrentLabel]=\"'You\\'re on page'\"></ccd-pagination>\n\n<div *ngIf=\"!(hasResults() || hasDrafts())\" class=\"notification\"\n[attr.aria-describedby]=\"'No cases found. Try using different filters.' | rpxTranslate\">\n{{'No cases found. Try using different filters.' | rpxTranslate}}\n</div>\n", styles: ["table thead tr th{vertical-align:top}table tbody tr td{font-size:16px;word-wrap:break-word}table tbody tr td a{float:left}table .caseid-col{white-space:nowrap}.notification{text-align:center;padding:30px 0;margin-top:75px}a:hover{color:#005ea5}.search-result-reset-link{padding-right:15px;padding-left:15px}.search-result-column-header{width:unset;table-layout:normal}.search-result-column-header div{display:table-cell;width:auto}@media screen and (max-width:379px){.search-result-column-header div{display:block;float:right}}.search-result-column-label{font-size:16px;font-weight:700;word-wrap:break-word;cursor:pointer;padding-right:15px}.search-result-column-sort{font-size:16px}.sort-widget{cursor:pointer;text-decoration:none;color:#231f20}span.heading-medium{margin-top:-20px}.govuk-table__checkbox{vertical-align:middle;padding-left:3px}#search-result-heading__text:focus{outline:none}\n"] }]
41518
- }], () => [{ type: SearchResultViewItemComparatorFactory }, { type: AbstractAppConfig }, { type: ActivityService }, { type: CaseReferencePipe }, { type: PlaceholderService }, { type: BrowserService }, { type: SessionStorageService }], { caseLinkUrlTemplate: [{
41660
+ }], () => [{ type: SearchResultViewItemComparatorFactory }, { type: AbstractAppConfig }, { type: ActivityService }, { type: CaseReferencePipe }, { type: PlaceholderService }, { type: BrowserService }, { type: SessionStorageService }, { type: CaseFlagRefdataService, decorators: [{
41661
+ type: Optional
41662
+ }] }], { caseLinkUrlTemplate: [{
41519
41663
  type: Input
41520
41664
  }], jurisdiction: [{
41521
41665
  type: Input
@@ -41550,7 +41694,7 @@ class SearchResultComponent {
41550
41694
  }], sortHandler: [{
41551
41695
  type: Output
41552
41696
  }] }); })();
41553
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SearchResultComponent, { className: "SearchResultComponent", filePath: "lib/shared/components/search-result/search-result.component.ts", lineNumber: 19 }); })();
41697
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SearchResultComponent, { className: "SearchResultComponent", filePath: "lib/shared/components/search-result/search-result.component.ts", lineNumber: 21 }); })();
41554
41698
 
41555
41699
  class SearchResultModule {
41556
41700
  static ɵfac = function SearchResultModule_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SearchResultModule)(); };
@@ -41851,5 +41995,5 @@ class TestRouteSnapshotBuilder {
41851
41995
  * Generated bundle index. Do not edit.
41852
41996
  */
41853
41997
 
41854
- export { AbstractAppConfig, AbstractFieldReadComponent, AbstractFieldWriteComponent, AbstractFieldWriteJourneyComponent, AbstractJourneyComponent, 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, COMPONENT_PORTAL_INJECTION_TOKEN, CallbackErrorsComponent, CallbackErrorsContext, CaseAccessUtils, CaseBasicAccessViewComponent, CaseChallengedAccessRequestComponent, CaseChallengedAccessSuccessComponent, CaseCreateComponent, CaseDetails, CaseEditComponent, CaseEditConfirmComponent, CaseEditDataModule, CaseEditDataService, CaseEditFormComponent, CaseEditPageComponent, CaseEditSubmitComponent, CaseEditWizardGuard, CaseEditorConfig, CaseEditorModule, CaseEvent, CaseEventCompletionComponent, CaseEventCompletionTaskCancelledComponent, CaseEventCompletionTaskReassignedComponent, CaseEventData, CaseEventTrigger, CaseEventTriggerComponent, CaseField, CaseFieldService, CaseFileViewFieldComponent, CaseFileViewFolderComponent, CaseFileViewFolderDocumentActionsComponent, CaseFileViewFolderSelectorComponent, CaseFileViewFolderSortComponent, CaseFileViewFolderToggleComponent, CaseFileViewOverlayMenuComponent, CaseFileViewService, CaseFlagCheckYourAnswersPageStep, CaseFlagDisplayContextParameter, CaseFlagErrorMessage, CaseFlagFieldState, CaseFlagFormFields, CaseFlagRefdataService, CaseFlagStatus, CaseFlagSummaryListComponent, CaseFlagSummaryListDisplayMode, CaseFlagTableComponent, 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, CloseQueryComponent, ConditionalShowFormDirective, ConditionalShowModule, ConditionalShowRegistrarService, ConfirmFlagStatusComponent, ConfirmStatusErrorMessage, ConfirmStatusStep, 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, EnumDisplayDescriptionPipe, 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, FlagFieldDisplayPipe, 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, LanguageInterpreterDisplayPipe, 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, ManageCaseFlagsLabelDisplayPipe, MarkdownComponent, MarkdownComponentModule, MoneyGbpInputComponent, MultipageComponentStateService, 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, QualifyingQuestionDetailComponent, QualifyingQuestionOptionsComponent, QualifyingQuestionService, QualifyingQuestionsErrorMessage, QueryAttachmentsReadComponent, QueryCaseDetailsHeaderComponent, QueryCheckYourAnswersComponent, QueryConfirmationComponent, QueryCreateContext, QueryDetailsComponent, QueryEventCompletionComponent, QueryItemResponseStatus, QueryListComponent, QueryListData, QueryListItem, QueryManagementService, QueryWriteAddDocumentsComponent, QueryWriteDateInputComponent, QueryWriteRaiseQueryComponent, QueryWriteRespondToQueryComponent, RaiseQueryErrorMessage, ReadCaseFlagFieldComponent, ReadCaseLinkFieldComponent, ReadCollectionFieldComponent, ReadComplexFieldCollectionTableComponent, ReadComplexFieldComponent, ReadComplexFieldRawComponent, ReadComplexFieldTableComponent, ReadCookieService, ReadDateFieldComponent, ReadDocumentFieldComponent, ReadDynamicListFieldComponent, ReadDynamicMultiSelectListFieldComponent, ReadDynamicRadioListFieldComponent, ReadEmailFieldComponent, ReadFieldsFilterPipe, ReadFixedListFieldComponent, ReadFixedRadioListFieldComponent, ReadJudicialUserFieldComponent, ReadLinkedCasesFieldComponent, ReadMoneyGbpFieldComponent, ReadMultiSelectListFieldComponent, ReadNumberFieldComponent, ReadOrderSummaryFieldComponent, ReadOrderSummaryRowComponent, ReadOrganisationFieldComponent, ReadOrganisationFieldRawComponent, ReadOrganisationFieldTableComponent, ReadPhoneUKFieldComponent, ReadQueryManagementFieldComponent, ReadTextAreaFieldComponent, ReadTextFieldComponent, ReadYesNoFieldComponent, RefdataCaseFlagType, RemoveDialogComponent, RequestOptionsBuilder, RespondToQueryErrorMessages, RetryUtil, RouterHelperService, RouterLinkComponent, SaveOrDiscardDialogComponent, SearchFiltersComponent, SearchFiltersModule, SearchFiltersWrapperComponent, SearchInput, SearchLanguageInterpreterComponent, SearchLanguageInterpreterErrorMessage, SearchLanguageInterpreterStep, SearchResultComponent, SearchResultModule, SearchResultView, SearchResultViewColumn, SearchResultViewItem, SearchResultViewItemComparatorFactory, SearchService, SelectFlagErrorMessage, SelectFlagLocationComponent, SelectFlagLocationErrorMessage, SelectFlagTypeComponent, SelectFlagTypeErrorMessage, SessionErrorPageComponent, SessionErrorRoute, SessionJsonErrorLogger, SessionStorageGuard, SessionStorageService, ShowCondition, SortOrder$1 as SortOrder, SortParameters, SortSearchResultPipe, StructuredLoggerService, TabComponent, TableColumnConfig, TableConfig, TabsComponent, TabsModule, TaskAssignedComponent, TaskCancelledComponent, TaskConflictComponent, TaskUnassignedComponent, Terms, TestRouteSnapshotBuilder, TranslatedMarkdownDirective, TranslatedMarkdownModule, UnLinkCasesComponent, UnsupportedFieldComponent, UpdateFlagAddTranslationErrorMessage, UpdateFlagAddTranslationFormComponent, UpdateFlagAddTranslationStep, UpdateFlagComponent, UpdateFlagErrorMessage, UpdateFlagStep, UpdateFlagTitleDisplayPipe, 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, caseMessagesMockData, createACL, createCaseEventTrigger, createCaseField, createComplexFieldOverride, createFieldType, createFixedListFieldType, createHiddenComplexFieldOverride, createMultiSelectListFieldType, createWizardPage, createWizardPageField, editorRouting, initDialog, newCaseField, safeJsonParse, textFieldType, viewerRouting };
41998
+ export { AbstractAppConfig, AbstractFieldReadComponent, AbstractFieldWriteComponent, AbstractFieldWriteJourneyComponent, AbstractJourneyComponent, 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, COMPONENT_PORTAL_INJECTION_TOKEN, CallbackErrorsComponent, CallbackErrorsContext, CaseAccessUtils, CaseBasicAccessViewComponent, CaseChallengedAccessRequestComponent, CaseChallengedAccessSuccessComponent, CaseCreateComponent, CaseDetails, CaseEditComponent, CaseEditConfirmComponent, CaseEditDataModule, CaseEditDataService, CaseEditFormComponent, CaseEditPageComponent, CaseEditSubmitComponent, CaseEditWizardGuard, CaseEditorConfig, CaseEditorModule, CaseEvent, CaseEventCompletionComponent, CaseEventCompletionTaskCancelledComponent, CaseEventCompletionTaskReassignedComponent, CaseEventData, CaseEventTrigger, CaseEventTriggerComponent, CaseField, CaseFieldService, CaseFileViewFieldComponent, CaseFileViewFolderComponent, CaseFileViewFolderDocumentActionsComponent, CaseFileViewFolderSelectorComponent, CaseFileViewFolderSortComponent, CaseFileViewFolderToggleComponent, CaseFileViewOverlayMenuComponent, CaseFileViewService, CaseFlagCheckYourAnswersPageStep, CaseFlagDisplayContextParameter, CaseFlagErrorMessage, CaseFlagFieldState, CaseFlagFormFields, CaseFlagRefdataService, CaseFlagStatus, CaseFlagSummaryListComponent, CaseFlagSummaryListDisplayMode, CaseFlagTableComponent, 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, CloseQueryComponent, ConditionalShowFormDirective, ConditionalShowModule, ConditionalShowRegistrarService, ConfirmFlagStatusComponent, ConfirmStatusErrorMessage, ConfirmStatusStep, 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, EnumDisplayDescriptionPipe, 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, FlagFieldDisplayPipe, FocusElementDirective, FocusElementModule, FocusService, FooterComponent, FormDocument, FormErrorService, FormValidatorsService, FormValueService, FormatTranslatorService, GreyBarService, HRef, HeaderBarComponent, HeadersModule, HttpError, HttpErrorService, HttpService, IsCompoundPipe, IsMandatoryPipe, IsReadOnlyAndNotCollectionPipe, IsReadOnlyPipe, JudicialworkerService, Jurisdiction, JurisdictionService, LabelFieldComponent, LabelSubstitutorDirective, LabelSubstitutorModule, LanguageInterpreterDisplayPipe, 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, ManageCaseFlagsLabelDisplayPipe, MarkdownComponent, MarkdownComponentModule, MoneyGbpInputComponent, MultipageComponentStateService, MultipleTasksExistComponent, NavigationComponent, NavigationItemComponent, NavigationNotifierService, NavigationOrigin, NoLinkedCasesComponent, NoTasksAvailableComponent, NotificationBannerComponent, NotificationBannerHeaderClass, NotificationBannerType, OrderService, OrderSummary, OrganisationConverter, OrganisationService, PageValidationService, PaginationComponent, PaginationMetadata, PaginationModule, PaletteContext, PaletteModule, PaletteService, PaletteUtilsModule, PaletteValueOrigin, Patterns, PaymentField, PhaseComponent, PipesModule, PlaceholderService, PrintUrlPipe, Profile, ProfileNotifier, ProfileService, QualifyingQuestionDetailComponent, QualifyingQuestionOptionsComponent, QualifyingQuestionService, QualifyingQuestionsErrorMessage, QueryAttachmentsReadComponent, QueryCaseDetailsHeaderComponent, QueryCheckYourAnswersComponent, QueryConfirmationComponent, QueryCreateContext, QueryDetailsComponent, QueryEventCompletionComponent, QueryItemResponseStatus, QueryListComponent, QueryListData, QueryListItem, QueryManagementService, QueryWriteAddDocumentsComponent, QueryWriteDateInputComponent, QueryWriteRaiseQueryComponent, QueryWriteRespondToQueryComponent, RaiseQueryErrorMessage, ReadCaseFlagFieldComponent, ReadCaseLinkFieldComponent, ReadCollectionFieldComponent, ReadComplexFieldCollectionTableComponent, ReadComplexFieldComponent, ReadComplexFieldRawComponent, ReadComplexFieldTableComponent, ReadCookieService, ReadDateFieldComponent, ReadDocumentFieldComponent, ReadDynamicListFieldComponent, ReadDynamicMultiSelectListFieldComponent, ReadDynamicRadioListFieldComponent, ReadEmailFieldComponent, ReadFieldsFilterPipe, ReadFixedListFieldComponent, ReadFixedRadioListFieldComponent, ReadJudicialUserFieldComponent, ReadLinkedCasesFieldComponent, ReadMoneyGbpFieldComponent, ReadMultiSelectListFieldComponent, ReadNumberFieldComponent, ReadOrderSummaryFieldComponent, ReadOrderSummaryRowComponent, ReadOrganisationFieldComponent, ReadOrganisationFieldRawComponent, ReadOrganisationFieldTableComponent, ReadPhoneUKFieldComponent, ReadQueryManagementFieldComponent, ReadTextAreaFieldComponent, ReadTextFieldComponent, ReadYesNoFieldComponent, RefdataCaseFlagType, RemoveDialogComponent, RequestOptionsBuilder, RespondToQueryErrorMessages, RetryUtil, RouterHelperService, RouterLinkComponent, SaveOrDiscardDialogComponent, SearchFiltersComponent, SearchFiltersModule, SearchFiltersWrapperComponent, SearchInput, SearchLanguageInterpreterComponent, SearchLanguageInterpreterErrorMessage, SearchLanguageInterpreterStep, SearchResultComponent, SearchResultModule, SearchResultView, SearchResultViewColumn, SearchResultViewItem, SearchResultViewItemComparatorFactory, SearchService, SelectFlagErrorMessage, SelectFlagLocationComponent, SelectFlagLocationErrorMessage, SelectFlagTypeComponent, SelectFlagTypeErrorMessage, SessionErrorPageComponent, SessionErrorRoute, SessionJsonErrorLogger, SessionStorageGuard, SessionStorageService, ShowCondition, SortOrder$1 as SortOrder, SortParameters, SortSearchResultPipe, StructuredLoggerService, TabComponent, TableColumnConfig, TableConfig, TabsComponent, TabsModule, TaskAssignedComponent, TaskCancelledComponent, TaskConflictComponent, TaskUnassignedComponent, Terms, TestRouteSnapshotBuilder, TranslatedMarkdownDirective, TranslatedMarkdownModule, UnLinkCasesComponent, UnsupportedFieldComponent, UpdateFlagAddTranslationErrorMessage, UpdateFlagAddTranslationFormComponent, UpdateFlagAddTranslationStep, UpdateFlagComponent, UpdateFlagErrorMessage, UpdateFlagStep, UpdateFlagTitleDisplayPipe, 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, caseMessagesMockData, createACL, createCaseEventTrigger, createCaseField, createComplexFieldOverride, createFieldType, createFixedListFieldType, createHiddenComplexFieldOverride, createMultiSelectListFieldType, createWizardPage, createWizardPageField, editorRouting, initDialog, newCaseField, safeJsonParse, textFieldType, viewerRouting };
41855
41999
  //# sourceMappingURL=hmcts-ccd-case-ui-toolkit.mjs.map