@hmcts/ccd-case-ui-toolkit 7.2.21 → 7.2.23-mid-event-callback
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.
- package/esm2022/lib/shared/components/palette/palette.module.mjs +7 -2
- package/esm2022/lib/shared/components/palette/query-management/components/query-case-details-header/query-case-details-header.component.mjs +3 -3
- package/esm2022/lib/shared/components/palette/query-management/components/query-check-your-answers/query-check-your-answers.component.mjs +56 -199
- package/esm2022/lib/shared/components/palette/query-management/components/query-write/query-write-raise-query/query-write-raise-query.component.mjs +121 -62
- package/esm2022/lib/shared/components/palette/query-management/components/query-write/query-write-respond-to-query/query-write-respond-to-query.component.mjs +56 -17
- package/esm2022/lib/shared/components/palette/query-management/constants/query-management.constants.mjs +7 -0
- package/esm2022/lib/shared/components/palette/query-management/read-query-management-field.component.mjs +18 -9
- package/esm2022/lib/shared/components/palette/query-management/services/index.mjs +2 -1
- package/esm2022/lib/shared/components/palette/query-management/services/query-management.service.mjs +179 -0
- package/fesm2022/hmcts-ccd-case-ui-toolkit.mjs +667 -533
- package/fesm2022/hmcts-ccd-case-ui-toolkit.mjs.map +1 -1
- package/lib/shared/components/palette/palette.module.d.ts.map +1 -1
- package/lib/shared/components/palette/query-management/components/query-check-your-answers/query-check-your-answers.component.d.ts +15 -13
- package/lib/shared/components/palette/query-management/components/query-check-your-answers/query-check-your-answers.component.d.ts.map +1 -1
- package/lib/shared/components/palette/query-management/components/query-write/query-write-raise-query/query-write-raise-query.component.d.ts +24 -3
- package/lib/shared/components/palette/query-management/components/query-write/query-write-raise-query/query-write-raise-query.component.d.ts.map +1 -1
- package/lib/shared/components/palette/query-management/components/query-write/query-write-respond-to-query/query-write-respond-to-query.component.d.ts +12 -3
- package/lib/shared/components/palette/query-management/components/query-write/query-write-respond-to-query/query-write-respond-to-query.component.d.ts.map +1 -1
- package/lib/shared/components/palette/query-management/constants/query-management.constants.d.ts +7 -0
- package/lib/shared/components/palette/query-management/constants/query-management.constants.d.ts.map +1 -0
- package/lib/shared/components/palette/query-management/services/index.d.ts +1 -0
- package/lib/shared/components/palette/query-management/services/index.d.ts.map +1 -1
- package/lib/shared/components/palette/query-management/services/query-management.service.d.ts +21 -0
- package/lib/shared/components/palette/query-management/services/query-management.service.d.ts.map +1 -0
- package/package.json +1 -1
|
@@ -20637,252 +20637,6 @@ class QualifyingQuestionService {
|
|
|
20637
20637
|
type: Injectable
|
|
20638
20638
|
}], null, null); })();
|
|
20639
20639
|
|
|
20640
|
-
function QualifyingQuestionOptionsComponent_ng_container_0_ng_container_10_Template(rf, ctx) { if (rf & 1) {
|
|
20641
|
-
i0.ɵɵelementContainerStart(0);
|
|
20642
|
-
i0.ɵɵelementStart(1, "p", 8)(2, "span", 9);
|
|
20643
|
-
i0.ɵɵtext(3);
|
|
20644
|
-
i0.ɵɵpipe(4, "rpxTranslate");
|
|
20645
|
-
i0.ɵɵelementEnd();
|
|
20646
|
-
i0.ɵɵtext(5);
|
|
20647
|
-
i0.ɵɵpipe(6, "rpxTranslate");
|
|
20648
|
-
i0.ɵɵelementEnd();
|
|
20649
|
-
i0.ɵɵelementContainerEnd();
|
|
20650
|
-
} if (rf & 2) {
|
|
20651
|
-
const ctx_r0 = i0.ɵɵnextContext(2);
|
|
20652
|
-
i0.ɵɵadvance(3);
|
|
20653
|
-
i0.ɵɵtextInterpolate1("", i0.ɵɵpipeBind1(4, 2, "Error:"), " ");
|
|
20654
|
-
i0.ɵɵadvance(2);
|
|
20655
|
-
i0.ɵɵtextInterpolate1("", i0.ɵɵpipeBind1(6, 4, ctx_r0.qualifyingQuestionsErrorMessage.SELECT_AN_OPTION), " ");
|
|
20656
|
-
} }
|
|
20657
|
-
function QualifyingQuestionOptionsComponent_ng_container_0_ng_container_12_ng_container_1_Template(rf, ctx) { if (rf & 1) {
|
|
20658
|
-
i0.ɵɵelementContainerStart(0);
|
|
20659
|
-
i0.ɵɵelementStart(1, "div", 13);
|
|
20660
|
-
i0.ɵɵtext(2);
|
|
20661
|
-
i0.ɵɵpipe(3, "rpxTranslate");
|
|
20662
|
-
i0.ɵɵelementEnd();
|
|
20663
|
-
i0.ɵɵelementContainerEnd();
|
|
20664
|
-
} if (rf & 2) {
|
|
20665
|
-
i0.ɵɵadvance(2);
|
|
20666
|
-
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(3, 1, "If your issue is not covered by the options above, raise a query:"));
|
|
20667
|
-
} }
|
|
20668
|
-
function QualifyingQuestionOptionsComponent_ng_container_0_ng_container_12_Template(rf, ctx) { if (rf & 1) {
|
|
20669
|
-
const _r2 = i0.ɵɵgetCurrentView();
|
|
20670
|
-
i0.ɵɵelementContainerStart(0);
|
|
20671
|
-
i0.ɵɵtemplate(1, QualifyingQuestionOptionsComponent_ng_container_0_ng_container_12_ng_container_1_Template, 4, 3, "ng-container", 0);
|
|
20672
|
-
i0.ɵɵelementStart(2, "div", 10)(3, "input", 11);
|
|
20673
|
-
i0.ɵɵlistener("change", function QualifyingQuestionOptionsComponent_ng_container_0_ng_container_12_Template_input_change_3_listener() { const qualifyingQuestion_r3 = i0.ɵɵrestoreView(_r2).$implicit; const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.onSelectionChange(qualifyingQuestion_r3)); });
|
|
20674
|
-
i0.ɵɵelementEnd();
|
|
20675
|
-
i0.ɵɵelementStart(4, "label", 12);
|
|
20676
|
-
i0.ɵɵtext(5);
|
|
20677
|
-
i0.ɵɵpipe(6, "rpxTranslate");
|
|
20678
|
-
i0.ɵɵelementEnd()();
|
|
20679
|
-
i0.ɵɵelementContainerEnd();
|
|
20680
|
-
} if (rf & 2) {
|
|
20681
|
-
const qualifyingQuestion_r3 = ctx.$implicit;
|
|
20682
|
-
const isLast_r4 = ctx.last;
|
|
20683
|
-
const ctx_r0 = i0.ɵɵnextContext(2);
|
|
20684
|
-
i0.ɵɵadvance();
|
|
20685
|
-
i0.ɵɵproperty("ngIf", isLast_r4);
|
|
20686
|
-
i0.ɵɵadvance(2);
|
|
20687
|
-
i0.ɵɵpropertyInterpolate("id", qualifyingQuestion_r3.name);
|
|
20688
|
-
i0.ɵɵproperty("formControl", ctx_r0.qualifyingQuestionsControl)("value", qualifyingQuestion_r3);
|
|
20689
|
-
i0.ɵɵadvance();
|
|
20690
|
-
i0.ɵɵproperty("for", qualifyingQuestion_r3.name);
|
|
20691
|
-
i0.ɵɵadvance();
|
|
20692
|
-
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(6, 6, qualifyingQuestion_r3.name));
|
|
20693
|
-
} }
|
|
20694
|
-
function QualifyingQuestionOptionsComponent_ng_container_0_Template(rf, ctx) { if (rf & 1) {
|
|
20695
|
-
i0.ɵɵelementContainerStart(0);
|
|
20696
|
-
i0.ɵɵelementStart(1, "div", 1)(2, "fieldset", 2)(3, "legend", 3)(4, "h1", 4);
|
|
20697
|
-
i0.ɵɵtext(5);
|
|
20698
|
-
i0.ɵɵpipe(6, "rpxTranslate");
|
|
20699
|
-
i0.ɵɵelementEnd()();
|
|
20700
|
-
i0.ɵɵelementStart(7, "h2", 5);
|
|
20701
|
-
i0.ɵɵtext(8);
|
|
20702
|
-
i0.ɵɵpipe(9, "rpxTranslate");
|
|
20703
|
-
i0.ɵɵelementEnd();
|
|
20704
|
-
i0.ɵɵtemplate(10, QualifyingQuestionOptionsComponent_ng_container_0_ng_container_10_Template, 7, 6, "ng-container", 0);
|
|
20705
|
-
i0.ɵɵelementStart(11, "div", 6);
|
|
20706
|
-
i0.ɵɵtemplate(12, QualifyingQuestionOptionsComponent_ng_container_0_ng_container_12_Template, 7, 8, "ng-container", 7);
|
|
20707
|
-
i0.ɵɵpipe(13, "async");
|
|
20708
|
-
i0.ɵɵelementEnd()()();
|
|
20709
|
-
i0.ɵɵelementContainerEnd();
|
|
20710
|
-
} if (rf & 2) {
|
|
20711
|
-
const ctx_r0 = i0.ɵɵnextContext();
|
|
20712
|
-
i0.ɵɵadvance();
|
|
20713
|
-
i0.ɵɵclassProp("govuk-form-group--error", ctx_r0.displayError);
|
|
20714
|
-
i0.ɵɵadvance(4);
|
|
20715
|
-
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(6, 6, "Raise a new query"), " ");
|
|
20716
|
-
i0.ɵɵadvance(3);
|
|
20717
|
-
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(9, 8, "What do you need help to do?"), " ");
|
|
20718
|
-
i0.ɵɵadvance(2);
|
|
20719
|
-
i0.ɵɵproperty("ngIf", ctx_r0.displayError);
|
|
20720
|
-
i0.ɵɵadvance(2);
|
|
20721
|
-
i0.ɵɵproperty("ngForOf", i0.ɵɵpipeBind1(13, 10, ctx_r0.qualifyingQuestions$));
|
|
20722
|
-
} }
|
|
20723
|
-
class QualifyingQuestionOptionsComponent {
|
|
20724
|
-
route;
|
|
20725
|
-
router;
|
|
20726
|
-
qualifyingQuestionService;
|
|
20727
|
-
qualifyingQuestionsControl;
|
|
20728
|
-
qualifyingQuestions$;
|
|
20729
|
-
questionSelected = new EventEmitter();
|
|
20730
|
-
qualifyingQuestionsErrorMessage = QualifyingQuestionsErrorMessage;
|
|
20731
|
-
caseId;
|
|
20732
|
-
constructor(route, router, qualifyingQuestionService) {
|
|
20733
|
-
this.route = route;
|
|
20734
|
-
this.router = router;
|
|
20735
|
-
this.qualifyingQuestionService = qualifyingQuestionService;
|
|
20736
|
-
}
|
|
20737
|
-
ngOnInit() {
|
|
20738
|
-
this.caseId = this.route.snapshot.params.cid;
|
|
20739
|
-
// Check if there's already a selected qualifying question from the service
|
|
20740
|
-
const savedSelection = this.qualifyingQuestionService.getQualifyingQuestionSelection();
|
|
20741
|
-
if (savedSelection) {
|
|
20742
|
-
this.qualifyingQuestionsControl.setValue(savedSelection);
|
|
20743
|
-
}
|
|
20744
|
-
}
|
|
20745
|
-
click() {
|
|
20746
|
-
this.router.navigate(['cases', 'case-details', this.caseId], { fragment: 'Queries' });
|
|
20747
|
-
}
|
|
20748
|
-
get displayError() {
|
|
20749
|
-
return this.qualifyingQuestionsControl.touched && this.qualifyingQuestionsControl.hasError('required');
|
|
20750
|
-
}
|
|
20751
|
-
onSelectionChange(qualifyingQuestion) {
|
|
20752
|
-
this.questionSelected.emit(qualifyingQuestion);
|
|
20753
|
-
}
|
|
20754
|
-
static ɵfac = function QualifyingQuestionOptionsComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || QualifyingQuestionOptionsComponent)(i0.ɵɵdirectiveInject(i1$1.ActivatedRoute), i0.ɵɵdirectiveInject(i1$1.Router), i0.ɵɵdirectiveInject(QualifyingQuestionService)); };
|
|
20755
|
-
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: QualifyingQuestionOptionsComponent, selectors: [["ccd-qualifying-question-options"]], inputs: { qualifyingQuestionsControl: "qualifyingQuestionsControl", qualifyingQuestions$: "qualifyingQuestions$" }, outputs: { questionSelected: "questionSelected" }, decls: 1, vars: 1, consts: [[4, "ngIf"], [1, "govuk-form-group"], [1, "govuk-fieldset"], [1, "govuk-fieldset__legend", "govuk-fieldset__legend--l"], [1, "govuk-fieldset__heading"], [1, "govuk-heading-m", "govuk-!-margin-top-10"], ["data-module", "govuk-radios", 1, "govuk-radios"], [4, "ngFor", "ngForOf"], [1, "govuk-error-message"], [1, "govuk-visually-hidden"], [1, "govuk-radios__item"], ["name", "qualifyingQuestionOption", "type", "radio", 1, "govuk-radios__input", 3, "change", "id", "formControl", "value"], [1, "govuk-label", "govuk-radios__label", 3, "for"], [1, "qm-qualifying-question__divider"]], template: function QualifyingQuestionOptionsComponent_Template(rf, ctx) { if (rf & 1) {
|
|
20756
|
-
i0.ɵɵtemplate(0, QualifyingQuestionOptionsComponent_ng_container_0_Template, 14, 12, "ng-container", 0);
|
|
20757
|
-
} if (rf & 2) {
|
|
20758
|
-
i0.ɵɵproperty("ngIf", ctx.qualifyingQuestionsControl);
|
|
20759
|
-
} }, dependencies: [i5.NgForOf, i5.NgIf, i4.DefaultValueAccessor, i4.RadioControlValueAccessor, i4.NgControlStatus, i4.FormControlDirective, i5.AsyncPipe, i1.RpxTranslatePipe], encapsulation: 2 });
|
|
20760
|
-
}
|
|
20761
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(QualifyingQuestionOptionsComponent, [{
|
|
20762
|
-
type: Component,
|
|
20763
|
-
args: [{ selector: 'ccd-qualifying-question-options', template: "<ng-container *ngIf=\"qualifyingQuestionsControl\">\n <div class=\"govuk-form-group\" [class.govuk-form-group--error]=\"displayError\">\n <fieldset class=\"govuk-fieldset\">\n <legend class=\"govuk-fieldset__legend govuk-fieldset__legend--l\">\n <h1 class=\"govuk-fieldset__heading\">\n {{ 'Raise a new query' | rpxTranslate }}\n </h1>\n </legend>\n <h2 class=\"govuk-heading-m govuk-!-margin-top-10\">\n {{ 'What do you need help to do?' | rpxTranslate }}\n </h2>\n\n <ng-container *ngIf=\"displayError\">\n <p class=\"govuk-error-message\">\n <span class=\"govuk-visually-hidden\">{{ 'Error:' | rpxTranslate }} </span>{{\n qualifyingQuestionsErrorMessage.SELECT_AN_OPTION | rpxTranslate }}\n </p>\n </ng-container>\n\n <div class=\"govuk-radios\" data-module=\"govuk-radios\">\n <ng-container *ngFor=\"let qualifyingQuestion of qualifyingQuestions$ | async; let isLast = last\">\n <ng-container *ngIf=\"isLast\">\n <div class=\"qm-qualifying-question__divider\">{{ 'If your issue is not covered by the options above, raise a query:' | rpxTranslate }}</div>\n </ng-container>\n <div class=\"govuk-radios__item\">\n <input class=\"govuk-radios__input\" \n id=\"{{qualifyingQuestion.name}}\" \n name=\"qualifyingQuestionOption\"\n type=\"radio\" [formControl]=\"qualifyingQuestionsControl\" \n [value]=\"qualifyingQuestion\"\n (change)=\"onSelectionChange(qualifyingQuestion)\">\n <label class=\"govuk-label govuk-radios__label\" [for]=\"qualifyingQuestion.name\">{{ qualifyingQuestion.name |\n rpxTranslate }}</label>\n </div>\n </ng-container>\n </div>\n </fieldset>\n </div>\n</ng-container>\n" }]
|
|
20764
|
-
}], () => [{ type: i1$1.ActivatedRoute }, { type: i1$1.Router }, { type: QualifyingQuestionService }], { qualifyingQuestionsControl: [{
|
|
20765
|
-
type: Input
|
|
20766
|
-
}], qualifyingQuestions$: [{
|
|
20767
|
-
type: Input
|
|
20768
|
-
}], questionSelected: [{
|
|
20769
|
-
type: Output
|
|
20770
|
-
}] }); })();
|
|
20771
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(QualifyingQuestionOptionsComponent, { className: "QualifyingQuestionOptionsComponent", filePath: "lib/shared/components/palette/query-management/components/qualifying-questions/qualifying-question-options/qualifying-question-options.component.ts", lineNumber: 13 }); })();
|
|
20772
|
-
|
|
20773
|
-
function QueryAttachmentsReadComponent_ng_container_0_ccd_read_collection_field_1_Template(rf, ctx) { if (rf & 1) {
|
|
20774
|
-
i0.ɵɵelement(0, "ccd-read-collection-field", 2);
|
|
20775
|
-
} if (rf & 2) {
|
|
20776
|
-
const ctx_r0 = i0.ɵɵnextContext(2);
|
|
20777
|
-
i0.ɵɵproperty("caseField", ctx_r0.caseFieldWithAttachments);
|
|
20778
|
-
} }
|
|
20779
|
-
function QueryAttachmentsReadComponent_ng_container_0_Template(rf, ctx) { if (rf & 1) {
|
|
20780
|
-
i0.ɵɵelementContainerStart(0);
|
|
20781
|
-
i0.ɵɵtemplate(1, QueryAttachmentsReadComponent_ng_container_0_ccd_read_collection_field_1_Template, 1, 1, "ccd-read-collection-field", 1);
|
|
20782
|
-
i0.ɵɵelementContainerEnd();
|
|
20783
|
-
} if (rf & 2) {
|
|
20784
|
-
const ctx_r0 = i0.ɵɵnextContext();
|
|
20785
|
-
i0.ɵɵadvance();
|
|
20786
|
-
i0.ɵɵproperty("ngIf", (ctx_r0.attachments == null ? null : ctx_r0.attachments.length) > 0);
|
|
20787
|
-
} }
|
|
20788
|
-
class QueryAttachmentsReadComponent {
|
|
20789
|
-
attachments;
|
|
20790
|
-
caseFieldWithAttachments;
|
|
20791
|
-
ngOnChanges() {
|
|
20792
|
-
this.caseFieldWithAttachments = Object.assign(new CaseField(), {
|
|
20793
|
-
id: '',
|
|
20794
|
-
label: '',
|
|
20795
|
-
hint_text: '',
|
|
20796
|
-
field_type: Object.assign(new FieldType(), {
|
|
20797
|
-
id: 'QueryDocuments',
|
|
20798
|
-
type: 'QueryDocuments',
|
|
20799
|
-
min: null,
|
|
20800
|
-
max: null,
|
|
20801
|
-
regular_expression: null,
|
|
20802
|
-
fixed_list_items: [],
|
|
20803
|
-
complex_fields: [],
|
|
20804
|
-
collection_field_type: Object.assign(new FieldType(), {
|
|
20805
|
-
id: 'Document',
|
|
20806
|
-
type: 'Document',
|
|
20807
|
-
min: null,
|
|
20808
|
-
max: null,
|
|
20809
|
-
regular_expression: null,
|
|
20810
|
-
fixed_list_items: [],
|
|
20811
|
-
complex_fields: [],
|
|
20812
|
-
collection_field_type: null
|
|
20813
|
-
})
|
|
20814
|
-
}),
|
|
20815
|
-
display_context_parameter: '#COLLECTION(allowInsert,allowUpdate)',
|
|
20816
|
-
value: []
|
|
20817
|
-
});
|
|
20818
|
-
this.caseFieldWithAttachments.value = this.attachments;
|
|
20819
|
-
}
|
|
20820
|
-
static ɵfac = function QueryAttachmentsReadComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || QueryAttachmentsReadComponent)(); };
|
|
20821
|
-
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: QueryAttachmentsReadComponent, selectors: [["ccd-query-attachments-read"]], inputs: { attachments: "attachments" }, features: [i0.ɵɵNgOnChangesFeature], decls: 1, vars: 1, consts: [[4, "ngIf"], [3, "caseField", 4, "ngIf"], [3, "caseField"]], template: function QueryAttachmentsReadComponent_Template(rf, ctx) { if (rf & 1) {
|
|
20822
|
-
i0.ɵɵtemplate(0, QueryAttachmentsReadComponent_ng_container_0_Template, 2, 1, "ng-container", 0);
|
|
20823
|
-
} if (rf & 2) {
|
|
20824
|
-
i0.ɵɵproperty("ngIf", (ctx.attachments == null ? null : ctx.attachments.length) > 0);
|
|
20825
|
-
} }, styles: ["ccd-query-attachments-read .collection-field-table tr>td{border-bottom:none;padding-bottom:0}\n"], encapsulation: 2 });
|
|
20826
|
-
}
|
|
20827
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(QueryAttachmentsReadComponent, [{
|
|
20828
|
-
type: Component,
|
|
20829
|
-
args: [{ selector: 'ccd-query-attachments-read', encapsulation: ViewEncapsulation.None, template: "<ng-container *ngIf=\"attachments?.length > 0\">\n <ccd-read-collection-field\n *ngIf=\"attachments?.length > 0\"\n [caseField]=\"caseFieldWithAttachments\"\n >\n </ccd-read-collection-field>\n</ng-container>\n", styles: ["ccd-query-attachments-read .collection-field-table tr>td{border-bottom:none;padding-bottom:0}\n"] }]
|
|
20830
|
-
}], null, { attachments: [{
|
|
20831
|
-
type: Input
|
|
20832
|
-
}] }); })();
|
|
20833
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(QueryAttachmentsReadComponent, { className: "QueryAttachmentsReadComponent", filePath: "lib/shared/components/palette/query-management/components/query-attachments-read/query-attachments-read.component.ts", lineNumber: 10 }); })();
|
|
20834
|
-
|
|
20835
|
-
function QueryCaseDetailsHeaderComponent_h1_0_Template(rf, ctx) { if (rf & 1) {
|
|
20836
|
-
i0.ɵɵelementStart(0, "h1", 2);
|
|
20837
|
-
i0.ɵɵtext(1);
|
|
20838
|
-
i0.ɵɵpipe(2, "ccdCaseReference");
|
|
20839
|
-
i0.ɵɵelementEnd();
|
|
20840
|
-
} if (rf & 2) {
|
|
20841
|
-
const ctx_r0 = i0.ɵɵnextContext();
|
|
20842
|
-
i0.ɵɵadvance();
|
|
20843
|
-
i0.ɵɵtextInterpolate1("#", i0.ɵɵpipeBind1(2, 1, ctx_r0.caseDetails.case_id), "");
|
|
20844
|
-
} }
|
|
20845
|
-
function QueryCaseDetailsHeaderComponent_div_1_Template(rf, ctx) { if (rf & 1) {
|
|
20846
|
-
i0.ɵɵelementStart(0, "div", 3);
|
|
20847
|
-
i0.ɵɵelement(1, "ccd-label-field", 4);
|
|
20848
|
-
i0.ɵɵelementEnd();
|
|
20849
|
-
} if (rf & 2) {
|
|
20850
|
-
const ctx_r0 = i0.ɵɵnextContext();
|
|
20851
|
-
i0.ɵɵadvance();
|
|
20852
|
-
i0.ɵɵproperty("caseField", ctx_r0.caseTitle)("caseFields", ctx_r0.caseFields);
|
|
20853
|
-
} }
|
|
20854
|
-
class QueryCaseDetailsHeaderComponent {
|
|
20855
|
-
caseDetails;
|
|
20856
|
-
caseTitle;
|
|
20857
|
-
caseFields;
|
|
20858
|
-
ngOnInit() {
|
|
20859
|
-
this.caseTitle = new CaseField();
|
|
20860
|
-
this.caseTitle.label = this.caseDetails.state.title_display;
|
|
20861
|
-
this.caseFields = this.getCaseFieldsInfo();
|
|
20862
|
-
}
|
|
20863
|
-
getCaseFieldsInfo() {
|
|
20864
|
-
const caseDataFields = this.caseDetails.tabs.reduce((acc, tab) => {
|
|
20865
|
-
return acc.concat(tab.fields);
|
|
20866
|
-
}, []);
|
|
20867
|
-
return caseDataFields.concat(this.caseDetails.metadataFields);
|
|
20868
|
-
}
|
|
20869
|
-
static ɵfac = function QueryCaseDetailsHeaderComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || QueryCaseDetailsHeaderComponent)(); };
|
|
20870
|
-
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: QueryCaseDetailsHeaderComponent, selectors: [["ccd-query-case-details-header"]], inputs: { caseDetails: "caseDetails" }, decls: 2, vars: 2, consts: [["class", "heading-h1", 4, "ngIf"], ["class", "case-title", 4, "ngIf"], [1, "heading-h1"], [1, "case-title"], [3, "caseField", "caseFields"]], template: function QueryCaseDetailsHeaderComponent_Template(rf, ctx) { if (rf & 1) {
|
|
20871
|
-
i0.ɵɵtemplate(0, QueryCaseDetailsHeaderComponent_h1_0_Template, 3, 3, "h1", 0)(1, QueryCaseDetailsHeaderComponent_div_1_Template, 2, 2, "div", 1);
|
|
20872
|
-
} if (rf & 2) {
|
|
20873
|
-
i0.ɵɵproperty("ngIf", !ctx.caseTitle.label);
|
|
20874
|
-
i0.ɵɵadvance();
|
|
20875
|
-
i0.ɵɵproperty("ngIf", ctx.caseTitle.label);
|
|
20876
|
-
} }, dependencies: [i5.NgIf, LabelFieldComponent, CaseReferencePipe], encapsulation: 2 });
|
|
20877
|
-
}
|
|
20878
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(QueryCaseDetailsHeaderComponent, [{
|
|
20879
|
-
type: Component,
|
|
20880
|
-
args: [{ selector: 'ccd-query-case-details-header', template: "<h1 *ngIf=\"!caseTitle.label\" class=\"heading-h1\">#{{ caseDetails.case_id | ccdCaseReference}}</h1>\n<div *ngIf=\"caseTitle.label\" class=\"case-title\">\n <ccd-label-field [caseField]=\"caseTitle\" [caseFields]=\"caseFields\"></ccd-label-field>\n</div>\n" }]
|
|
20881
|
-
}], null, { caseDetails: [{
|
|
20882
|
-
type: Input
|
|
20883
|
-
}] }); })();
|
|
20884
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(QueryCaseDetailsHeaderComponent, { className: "QueryCaseDetailsHeaderComponent", filePath: "lib/shared/components/palette/query-management/components/query-case-details-header/query-case-details-header.component.ts", lineNumber: 10 }); })();
|
|
20885
|
-
|
|
20886
20640
|
var QueryCreateContext;
|
|
20887
20641
|
(function (QueryCreateContext) {
|
|
20888
20642
|
QueryCreateContext["NEW_QUERY_QUALIFYING_QUESTION_OPTIONS"] = "NewQueryQualifyingQuestionOptions";
|
|
@@ -21091,16 +20845,438 @@ class QueryManagementUtils {
|
|
|
21091
20845
|
static isNonEmptyObject(elem) {
|
|
21092
20846
|
return this.isObject(elem) && Object.keys(elem).length !== 0;
|
|
21093
20847
|
}
|
|
21094
|
-
static formattedDate(date) {
|
|
21095
|
-
const formattedDate = moment(date).format('YYYY-MM-DD');
|
|
21096
|
-
return formattedDate;
|
|
20848
|
+
static formattedDate(date) {
|
|
20849
|
+
const formattedDate = moment(date).format('YYYY-MM-DD');
|
|
20850
|
+
return formattedDate;
|
|
20851
|
+
}
|
|
20852
|
+
static ɵfac = function QueryManagementUtils_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || QueryManagementUtils)(); };
|
|
20853
|
+
static ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: QueryManagementUtils, factory: QueryManagementUtils.ɵfac });
|
|
20854
|
+
}
|
|
20855
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(QueryManagementUtils, [{
|
|
20856
|
+
type: Injectable
|
|
20857
|
+
}], null, null); })();
|
|
20858
|
+
|
|
20859
|
+
const CASE_QUERIES_COLLECTION_ID = 'CaseQueriesCollection';
|
|
20860
|
+
const FIELD_TYPE_COMPLEX = 'Complex';
|
|
20861
|
+
const DISPLAY_CONTEXT_READONLY = 'READONLY';
|
|
20862
|
+
const QM_SELECT_FIRST_COLLECTION = 'selectFirstCollection';
|
|
20863
|
+
const QM_COLLECTION_PROMPT = 'promptQmCollection';
|
|
20864
|
+
const CIVIL_JURISDICTION = 'CIVIL';
|
|
20865
|
+
|
|
20866
|
+
class QueryManagementService {
|
|
20867
|
+
router;
|
|
20868
|
+
sessionStorageService;
|
|
20869
|
+
caseQueriesCollections;
|
|
20870
|
+
fieldId;
|
|
20871
|
+
constructor(router, sessionStorageService) {
|
|
20872
|
+
this.router = router;
|
|
20873
|
+
this.sessionStorageService = sessionStorageService;
|
|
20874
|
+
}
|
|
20875
|
+
generateCaseQueriesCollectionData(formGroup, queryCreateContext, queryItem, messageId // Get the message ID from route params (if present)
|
|
20876
|
+
) {
|
|
20877
|
+
let currentUserDetails;
|
|
20878
|
+
try {
|
|
20879
|
+
currentUserDetails = JSON.parse(this.sessionStorageService.getItem(USER_DETAILS));
|
|
20880
|
+
}
|
|
20881
|
+
catch (e) {
|
|
20882
|
+
console.error('Could not parse USER_DETAILS from session storage:', e);
|
|
20883
|
+
currentUserDetails = {};
|
|
20884
|
+
}
|
|
20885
|
+
const caseMessage = queryCreateContext === QueryCreateContext.NEW_QUERY
|
|
20886
|
+
? QueryManagementUtils.getNewQueryData(formGroup, currentUserDetails)
|
|
20887
|
+
: QueryManagementUtils.getRespondOrFollowupQueryData(formGroup, queryItem, currentUserDetails);
|
|
20888
|
+
const isNewQuery = queryCreateContext === QueryCreateContext.NEW_QUERY; // Check if this is a new query
|
|
20889
|
+
// Check if the field ID has been set dynamically
|
|
20890
|
+
if (!this.fieldId) {
|
|
20891
|
+
console.error('Error: Field ID for CaseQueriesCollection not found. Cannot proceed with data generation.');
|
|
20892
|
+
this.router.navigate(['/', 'service-down']);
|
|
20893
|
+
throw new Error('Field ID for CaseQueriesCollection not found. Aborting query data generation.');
|
|
20894
|
+
}
|
|
20895
|
+
// Initialize new query data structure
|
|
20896
|
+
const newQueryData = {};
|
|
20897
|
+
if (this.caseQueriesCollections?.length) {
|
|
20898
|
+
let matchedCollection;
|
|
20899
|
+
// If it's not a new query, try to find the existing collection with the message ID
|
|
20900
|
+
if (!isNewQuery && messageId) {
|
|
20901
|
+
matchedCollection = this.caseQueriesCollections.find((collection) => collection.caseMessages.some((message) => message.value.id === messageId));
|
|
20902
|
+
}
|
|
20903
|
+
if (matchedCollection) {
|
|
20904
|
+
// Append the new case message to the matched collection's caseMessages
|
|
20905
|
+
matchedCollection.caseMessages.push({
|
|
20906
|
+
id: null,
|
|
20907
|
+
value: caseMessage
|
|
20908
|
+
});
|
|
20909
|
+
// Add the matched collection to newQueryData
|
|
20910
|
+
newQueryData[this.fieldId] = {
|
|
20911
|
+
...matchedCollection, // Keep existing data intact
|
|
20912
|
+
caseMessages: [...matchedCollection.caseMessages] // Append the updated messages array
|
|
20913
|
+
};
|
|
20914
|
+
}
|
|
20915
|
+
else {
|
|
20916
|
+
// Use partyName from the first collection (assumption: all share the same party)
|
|
20917
|
+
const originalPartyName = this.caseQueriesCollections?.[0]?.partyName ?? currentUserDetails?.name;
|
|
20918
|
+
// If no collection matches, or it's a new query
|
|
20919
|
+
newQueryData[this.fieldId] = {
|
|
20920
|
+
partyName: originalPartyName,
|
|
20921
|
+
roleOnCase: '', // Not returned by CCD
|
|
20922
|
+
caseMessages: [
|
|
20923
|
+
{
|
|
20924
|
+
id: null,
|
|
20925
|
+
value: caseMessage
|
|
20926
|
+
}
|
|
20927
|
+
]
|
|
20928
|
+
};
|
|
20929
|
+
// If caseQueriesCollections is not empty, append its data
|
|
20930
|
+
newQueryData[this.fieldId].caseMessages.push(...this.caseQueriesCollections.flatMap((collection) => collection.caseMessages));
|
|
20931
|
+
}
|
|
20932
|
+
}
|
|
20933
|
+
else {
|
|
20934
|
+
// If there are no existing collections, create a new one (e.g., for new queries)
|
|
20935
|
+
newQueryData[this.fieldId] = {
|
|
20936
|
+
partyName: currentUserDetails?.name || `${currentUserDetails?.forename} ${currentUserDetails?.surname}`, // Not returned by CCD
|
|
20937
|
+
roleOnCase: '', // Not returned by CCD
|
|
20938
|
+
caseMessages: [
|
|
20939
|
+
{
|
|
20940
|
+
id: null,
|
|
20941
|
+
value: caseMessage
|
|
20942
|
+
}
|
|
20943
|
+
]
|
|
20944
|
+
};
|
|
20945
|
+
}
|
|
20946
|
+
return newQueryData;
|
|
20947
|
+
}
|
|
20948
|
+
setCaseQueriesCollectionData(eventData, queryCreateContext, caseDetails, messageId) {
|
|
20949
|
+
const resolvedFieldId = this.resolveFieldId(eventData, queryCreateContext, caseDetails, messageId);
|
|
20950
|
+
if (!resolvedFieldId) {
|
|
20951
|
+
console.error('Failed to resolve fieldId for CaseQueriesCollection. Cannot proceed.');
|
|
20952
|
+
return;
|
|
20953
|
+
}
|
|
20954
|
+
this.fieldId = resolvedFieldId;
|
|
20955
|
+
this.caseQueriesCollections = eventData.case_fields.reduce((acc, field) => {
|
|
20956
|
+
if (field.id === this.fieldId) {
|
|
20957
|
+
const extracted = QueryManagementUtils.extractCaseQueriesFromCaseField(field);
|
|
20958
|
+
if (extracted && typeof extracted === 'object') {
|
|
20959
|
+
acc.push(extracted);
|
|
20960
|
+
}
|
|
20961
|
+
}
|
|
20962
|
+
return acc;
|
|
20963
|
+
}, []);
|
|
20964
|
+
}
|
|
20965
|
+
resolveFieldId(eventData, queryCreateContext, caseDetails, messageId) {
|
|
20966
|
+
// Step 1: Filter candidate fields (must be editable CaseQueriesCollection fields)
|
|
20967
|
+
const candidateFields = eventData?.case_fields?.filter((field) => field.field_type.id === CASE_QUERIES_COLLECTION_ID &&
|
|
20968
|
+
field.field_type.type === FIELD_TYPE_COMPLEX &&
|
|
20969
|
+
field.display_context !== DISPLAY_CONTEXT_READONLY);
|
|
20970
|
+
if (!candidateFields?.length) {
|
|
20971
|
+
console.warn('No editable CaseQueriesCollection fields found.');
|
|
20972
|
+
return null;
|
|
20973
|
+
}
|
|
20974
|
+
const numberOfCollections = candidateFields.length;
|
|
20975
|
+
const jurisdictionId = caseDetails?.case_type?.jurisdiction?.id ?? '';
|
|
20976
|
+
// Step 2: If messageId is present, try to locate the field containing that message
|
|
20977
|
+
if (messageId) {
|
|
20978
|
+
const fieldByMessage = candidateFields.find((field) => field?.value?.caseMessages?.some((msg) => msg?.value?.id === messageId));
|
|
20979
|
+
if (fieldByMessage) {
|
|
20980
|
+
return fieldByMessage.id; // Found the matching field by message ID
|
|
20981
|
+
}
|
|
20982
|
+
}
|
|
20983
|
+
// Step 3: Handle new queries
|
|
20984
|
+
if (queryCreateContext === QueryCreateContext.NEW_QUERY) {
|
|
20985
|
+
// If there's only one collection, use it
|
|
20986
|
+
if (numberOfCollections === 1) {
|
|
20987
|
+
return candidateFields[0].id;
|
|
20988
|
+
}
|
|
20989
|
+
// For multiple collections, use jurisdiction-based resolution strategy
|
|
20990
|
+
if (this.getCollectionSelectionMethod(jurisdictionId) === QM_SELECT_FIRST_COLLECTION) {
|
|
20991
|
+
// Choose the one with the lowest order from the first wizard page
|
|
20992
|
+
const firstOrdered = this.getCaseQueriesCollectionFieldOrderFromWizardPages(eventData);
|
|
20993
|
+
if (firstOrdered) {
|
|
20994
|
+
return firstOrdered.id;
|
|
20995
|
+
}
|
|
20996
|
+
}
|
|
20997
|
+
else {
|
|
20998
|
+
console.error(`Error: Multiple CaseQueriesCollections are not supported yet for the ${jurisdictionId} jurisdiction`);
|
|
20999
|
+
return null;
|
|
21000
|
+
}
|
|
21001
|
+
}
|
|
21002
|
+
// Step 4: Fallback — if none of the above succeeded
|
|
21003
|
+
console.warn('Could not determine fieldId for context:', queryCreateContext);
|
|
21004
|
+
return null;
|
|
21005
|
+
}
|
|
21006
|
+
getCaseQueriesCollectionFieldOrderFromWizardPages(eventData) {
|
|
21007
|
+
const candidateFields = eventData?.case_fields?.filter((field) => field.field_type.id === CASE_QUERIES_COLLECTION_ID &&
|
|
21008
|
+
field.field_type.type === FIELD_TYPE_COMPLEX &&
|
|
21009
|
+
field.display_context !== DISPLAY_CONTEXT_READONLY);
|
|
21010
|
+
if (!candidateFields?.length) {
|
|
21011
|
+
return undefined;
|
|
21012
|
+
}
|
|
21013
|
+
const firstPageFields = eventData?.wizard_pages?.[0]?.wizard_page_fields;
|
|
21014
|
+
if (!firstPageFields) {
|
|
21015
|
+
return undefined;
|
|
21016
|
+
}
|
|
21017
|
+
return candidateFields
|
|
21018
|
+
.map((field) => {
|
|
21019
|
+
const wizardField = firstPageFields.find((f) => f.case_field_id === field.id);
|
|
21020
|
+
return { field, order: wizardField?.order ?? Number.MAX_SAFE_INTEGER };
|
|
21021
|
+
})
|
|
21022
|
+
.sort((a, b) => a.order - b.order)[0]?.field;
|
|
21023
|
+
}
|
|
21024
|
+
getCollectionSelectionMethod(jurisdiction) {
|
|
21025
|
+
return jurisdiction.toUpperCase() === CIVIL_JURISDICTION ? QM_SELECT_FIRST_COLLECTION : QM_COLLECTION_PROMPT;
|
|
21026
|
+
}
|
|
21027
|
+
static ɵfac = function QueryManagementService_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || QueryManagementService)(i0.ɵɵinject(i1$1.Router), i0.ɵɵinject(SessionStorageService)); };
|
|
21028
|
+
static ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: QueryManagementService, factory: QueryManagementService.ɵfac, providedIn: 'root' });
|
|
21029
|
+
}
|
|
21030
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(QueryManagementService, [{
|
|
21031
|
+
type: Injectable,
|
|
21032
|
+
args: [{ providedIn: 'root' }]
|
|
21033
|
+
}], () => [{ type: i1$1.Router }, { type: SessionStorageService }], null); })();
|
|
21034
|
+
|
|
21035
|
+
function QualifyingQuestionOptionsComponent_ng_container_0_ng_container_10_Template(rf, ctx) { if (rf & 1) {
|
|
21036
|
+
i0.ɵɵelementContainerStart(0);
|
|
21037
|
+
i0.ɵɵelementStart(1, "p", 8)(2, "span", 9);
|
|
21038
|
+
i0.ɵɵtext(3);
|
|
21039
|
+
i0.ɵɵpipe(4, "rpxTranslate");
|
|
21040
|
+
i0.ɵɵelementEnd();
|
|
21041
|
+
i0.ɵɵtext(5);
|
|
21042
|
+
i0.ɵɵpipe(6, "rpxTranslate");
|
|
21043
|
+
i0.ɵɵelementEnd();
|
|
21044
|
+
i0.ɵɵelementContainerEnd();
|
|
21045
|
+
} if (rf & 2) {
|
|
21046
|
+
const ctx_r0 = i0.ɵɵnextContext(2);
|
|
21047
|
+
i0.ɵɵadvance(3);
|
|
21048
|
+
i0.ɵɵtextInterpolate1("", i0.ɵɵpipeBind1(4, 2, "Error:"), " ");
|
|
21049
|
+
i0.ɵɵadvance(2);
|
|
21050
|
+
i0.ɵɵtextInterpolate1("", i0.ɵɵpipeBind1(6, 4, ctx_r0.qualifyingQuestionsErrorMessage.SELECT_AN_OPTION), " ");
|
|
21051
|
+
} }
|
|
21052
|
+
function QualifyingQuestionOptionsComponent_ng_container_0_ng_container_12_ng_container_1_Template(rf, ctx) { if (rf & 1) {
|
|
21053
|
+
i0.ɵɵelementContainerStart(0);
|
|
21054
|
+
i0.ɵɵelementStart(1, "div", 13);
|
|
21055
|
+
i0.ɵɵtext(2);
|
|
21056
|
+
i0.ɵɵpipe(3, "rpxTranslate");
|
|
21057
|
+
i0.ɵɵelementEnd();
|
|
21058
|
+
i0.ɵɵelementContainerEnd();
|
|
21059
|
+
} if (rf & 2) {
|
|
21060
|
+
i0.ɵɵadvance(2);
|
|
21061
|
+
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(3, 1, "If your issue is not covered by the options above, raise a query:"));
|
|
21062
|
+
} }
|
|
21063
|
+
function QualifyingQuestionOptionsComponent_ng_container_0_ng_container_12_Template(rf, ctx) { if (rf & 1) {
|
|
21064
|
+
const _r2 = i0.ɵɵgetCurrentView();
|
|
21065
|
+
i0.ɵɵelementContainerStart(0);
|
|
21066
|
+
i0.ɵɵtemplate(1, QualifyingQuestionOptionsComponent_ng_container_0_ng_container_12_ng_container_1_Template, 4, 3, "ng-container", 0);
|
|
21067
|
+
i0.ɵɵelementStart(2, "div", 10)(3, "input", 11);
|
|
21068
|
+
i0.ɵɵlistener("change", function QualifyingQuestionOptionsComponent_ng_container_0_ng_container_12_Template_input_change_3_listener() { const qualifyingQuestion_r3 = i0.ɵɵrestoreView(_r2).$implicit; const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.onSelectionChange(qualifyingQuestion_r3)); });
|
|
21069
|
+
i0.ɵɵelementEnd();
|
|
21070
|
+
i0.ɵɵelementStart(4, "label", 12);
|
|
21071
|
+
i0.ɵɵtext(5);
|
|
21072
|
+
i0.ɵɵpipe(6, "rpxTranslate");
|
|
21073
|
+
i0.ɵɵelementEnd()();
|
|
21074
|
+
i0.ɵɵelementContainerEnd();
|
|
21075
|
+
} if (rf & 2) {
|
|
21076
|
+
const qualifyingQuestion_r3 = ctx.$implicit;
|
|
21077
|
+
const isLast_r4 = ctx.last;
|
|
21078
|
+
const ctx_r0 = i0.ɵɵnextContext(2);
|
|
21079
|
+
i0.ɵɵadvance();
|
|
21080
|
+
i0.ɵɵproperty("ngIf", isLast_r4);
|
|
21081
|
+
i0.ɵɵadvance(2);
|
|
21082
|
+
i0.ɵɵpropertyInterpolate("id", qualifyingQuestion_r3.name);
|
|
21083
|
+
i0.ɵɵproperty("formControl", ctx_r0.qualifyingQuestionsControl)("value", qualifyingQuestion_r3);
|
|
21084
|
+
i0.ɵɵadvance();
|
|
21085
|
+
i0.ɵɵproperty("for", qualifyingQuestion_r3.name);
|
|
21086
|
+
i0.ɵɵadvance();
|
|
21087
|
+
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(6, 6, qualifyingQuestion_r3.name));
|
|
21088
|
+
} }
|
|
21089
|
+
function QualifyingQuestionOptionsComponent_ng_container_0_Template(rf, ctx) { if (rf & 1) {
|
|
21090
|
+
i0.ɵɵelementContainerStart(0);
|
|
21091
|
+
i0.ɵɵelementStart(1, "div", 1)(2, "fieldset", 2)(3, "legend", 3)(4, "h1", 4);
|
|
21092
|
+
i0.ɵɵtext(5);
|
|
21093
|
+
i0.ɵɵpipe(6, "rpxTranslate");
|
|
21094
|
+
i0.ɵɵelementEnd()();
|
|
21095
|
+
i0.ɵɵelementStart(7, "h2", 5);
|
|
21096
|
+
i0.ɵɵtext(8);
|
|
21097
|
+
i0.ɵɵpipe(9, "rpxTranslate");
|
|
21098
|
+
i0.ɵɵelementEnd();
|
|
21099
|
+
i0.ɵɵtemplate(10, QualifyingQuestionOptionsComponent_ng_container_0_ng_container_10_Template, 7, 6, "ng-container", 0);
|
|
21100
|
+
i0.ɵɵelementStart(11, "div", 6);
|
|
21101
|
+
i0.ɵɵtemplate(12, QualifyingQuestionOptionsComponent_ng_container_0_ng_container_12_Template, 7, 8, "ng-container", 7);
|
|
21102
|
+
i0.ɵɵpipe(13, "async");
|
|
21103
|
+
i0.ɵɵelementEnd()()();
|
|
21104
|
+
i0.ɵɵelementContainerEnd();
|
|
21105
|
+
} if (rf & 2) {
|
|
21106
|
+
const ctx_r0 = i0.ɵɵnextContext();
|
|
21107
|
+
i0.ɵɵadvance();
|
|
21108
|
+
i0.ɵɵclassProp("govuk-form-group--error", ctx_r0.displayError);
|
|
21109
|
+
i0.ɵɵadvance(4);
|
|
21110
|
+
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(6, 6, "Raise a new query"), " ");
|
|
21111
|
+
i0.ɵɵadvance(3);
|
|
21112
|
+
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(9, 8, "What do you need help to do?"), " ");
|
|
21113
|
+
i0.ɵɵadvance(2);
|
|
21114
|
+
i0.ɵɵproperty("ngIf", ctx_r0.displayError);
|
|
21115
|
+
i0.ɵɵadvance(2);
|
|
21116
|
+
i0.ɵɵproperty("ngForOf", i0.ɵɵpipeBind1(13, 10, ctx_r0.qualifyingQuestions$));
|
|
21117
|
+
} }
|
|
21118
|
+
class QualifyingQuestionOptionsComponent {
|
|
21119
|
+
route;
|
|
21120
|
+
router;
|
|
21121
|
+
qualifyingQuestionService;
|
|
21122
|
+
qualifyingQuestionsControl;
|
|
21123
|
+
qualifyingQuestions$;
|
|
21124
|
+
questionSelected = new EventEmitter();
|
|
21125
|
+
qualifyingQuestionsErrorMessage = QualifyingQuestionsErrorMessage;
|
|
21126
|
+
caseId;
|
|
21127
|
+
constructor(route, router, qualifyingQuestionService) {
|
|
21128
|
+
this.route = route;
|
|
21129
|
+
this.router = router;
|
|
21130
|
+
this.qualifyingQuestionService = qualifyingQuestionService;
|
|
21131
|
+
}
|
|
21132
|
+
ngOnInit() {
|
|
21133
|
+
this.caseId = this.route.snapshot.params.cid;
|
|
21134
|
+
// Check if there's already a selected qualifying question from the service
|
|
21135
|
+
const savedSelection = this.qualifyingQuestionService.getQualifyingQuestionSelection();
|
|
21136
|
+
if (savedSelection) {
|
|
21137
|
+
this.qualifyingQuestionsControl.setValue(savedSelection);
|
|
21138
|
+
}
|
|
21139
|
+
}
|
|
21140
|
+
click() {
|
|
21141
|
+
this.router.navigate(['cases', 'case-details', this.caseId], { fragment: 'Queries' });
|
|
21142
|
+
}
|
|
21143
|
+
get displayError() {
|
|
21144
|
+
return this.qualifyingQuestionsControl.touched && this.qualifyingQuestionsControl.hasError('required');
|
|
21145
|
+
}
|
|
21146
|
+
onSelectionChange(qualifyingQuestion) {
|
|
21147
|
+
this.questionSelected.emit(qualifyingQuestion);
|
|
21148
|
+
}
|
|
21149
|
+
static ɵfac = function QualifyingQuestionOptionsComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || QualifyingQuestionOptionsComponent)(i0.ɵɵdirectiveInject(i1$1.ActivatedRoute), i0.ɵɵdirectiveInject(i1$1.Router), i0.ɵɵdirectiveInject(QualifyingQuestionService)); };
|
|
21150
|
+
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: QualifyingQuestionOptionsComponent, selectors: [["ccd-qualifying-question-options"]], inputs: { qualifyingQuestionsControl: "qualifyingQuestionsControl", qualifyingQuestions$: "qualifyingQuestions$" }, outputs: { questionSelected: "questionSelected" }, decls: 1, vars: 1, consts: [[4, "ngIf"], [1, "govuk-form-group"], [1, "govuk-fieldset"], [1, "govuk-fieldset__legend", "govuk-fieldset__legend--l"], [1, "govuk-fieldset__heading"], [1, "govuk-heading-m", "govuk-!-margin-top-10"], ["data-module", "govuk-radios", 1, "govuk-radios"], [4, "ngFor", "ngForOf"], [1, "govuk-error-message"], [1, "govuk-visually-hidden"], [1, "govuk-radios__item"], ["name", "qualifyingQuestionOption", "type", "radio", 1, "govuk-radios__input", 3, "change", "id", "formControl", "value"], [1, "govuk-label", "govuk-radios__label", 3, "for"], [1, "qm-qualifying-question__divider"]], template: function QualifyingQuestionOptionsComponent_Template(rf, ctx) { if (rf & 1) {
|
|
21151
|
+
i0.ɵɵtemplate(0, QualifyingQuestionOptionsComponent_ng_container_0_Template, 14, 12, "ng-container", 0);
|
|
21152
|
+
} if (rf & 2) {
|
|
21153
|
+
i0.ɵɵproperty("ngIf", ctx.qualifyingQuestionsControl);
|
|
21154
|
+
} }, dependencies: [i5.NgForOf, i5.NgIf, i4.DefaultValueAccessor, i4.RadioControlValueAccessor, i4.NgControlStatus, i4.FormControlDirective, i5.AsyncPipe, i1.RpxTranslatePipe], encapsulation: 2 });
|
|
21155
|
+
}
|
|
21156
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(QualifyingQuestionOptionsComponent, [{
|
|
21157
|
+
type: Component,
|
|
21158
|
+
args: [{ selector: 'ccd-qualifying-question-options', template: "<ng-container *ngIf=\"qualifyingQuestionsControl\">\n <div class=\"govuk-form-group\" [class.govuk-form-group--error]=\"displayError\">\n <fieldset class=\"govuk-fieldset\">\n <legend class=\"govuk-fieldset__legend govuk-fieldset__legend--l\">\n <h1 class=\"govuk-fieldset__heading\">\n {{ 'Raise a new query' | rpxTranslate }}\n </h1>\n </legend>\n <h2 class=\"govuk-heading-m govuk-!-margin-top-10\">\n {{ 'What do you need help to do?' | rpxTranslate }}\n </h2>\n\n <ng-container *ngIf=\"displayError\">\n <p class=\"govuk-error-message\">\n <span class=\"govuk-visually-hidden\">{{ 'Error:' | rpxTranslate }} </span>{{\n qualifyingQuestionsErrorMessage.SELECT_AN_OPTION | rpxTranslate }}\n </p>\n </ng-container>\n\n <div class=\"govuk-radios\" data-module=\"govuk-radios\">\n <ng-container *ngFor=\"let qualifyingQuestion of qualifyingQuestions$ | async; let isLast = last\">\n <ng-container *ngIf=\"isLast\">\n <div class=\"qm-qualifying-question__divider\">{{ 'If your issue is not covered by the options above, raise a query:' | rpxTranslate }}</div>\n </ng-container>\n <div class=\"govuk-radios__item\">\n <input class=\"govuk-radios__input\" \n id=\"{{qualifyingQuestion.name}}\" \n name=\"qualifyingQuestionOption\"\n type=\"radio\" [formControl]=\"qualifyingQuestionsControl\" \n [value]=\"qualifyingQuestion\"\n (change)=\"onSelectionChange(qualifyingQuestion)\">\n <label class=\"govuk-label govuk-radios__label\" [for]=\"qualifyingQuestion.name\">{{ qualifyingQuestion.name |\n rpxTranslate }}</label>\n </div>\n </ng-container>\n </div>\n </fieldset>\n </div>\n</ng-container>\n" }]
|
|
21159
|
+
}], () => [{ type: i1$1.ActivatedRoute }, { type: i1$1.Router }, { type: QualifyingQuestionService }], { qualifyingQuestionsControl: [{
|
|
21160
|
+
type: Input
|
|
21161
|
+
}], qualifyingQuestions$: [{
|
|
21162
|
+
type: Input
|
|
21163
|
+
}], questionSelected: [{
|
|
21164
|
+
type: Output
|
|
21165
|
+
}] }); })();
|
|
21166
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(QualifyingQuestionOptionsComponent, { className: "QualifyingQuestionOptionsComponent", filePath: "lib/shared/components/palette/query-management/components/qualifying-questions/qualifying-question-options/qualifying-question-options.component.ts", lineNumber: 13 }); })();
|
|
21167
|
+
|
|
21168
|
+
function QueryAttachmentsReadComponent_ng_container_0_ccd_read_collection_field_1_Template(rf, ctx) { if (rf & 1) {
|
|
21169
|
+
i0.ɵɵelement(0, "ccd-read-collection-field", 2);
|
|
21170
|
+
} if (rf & 2) {
|
|
21171
|
+
const ctx_r0 = i0.ɵɵnextContext(2);
|
|
21172
|
+
i0.ɵɵproperty("caseField", ctx_r0.caseFieldWithAttachments);
|
|
21173
|
+
} }
|
|
21174
|
+
function QueryAttachmentsReadComponent_ng_container_0_Template(rf, ctx) { if (rf & 1) {
|
|
21175
|
+
i0.ɵɵelementContainerStart(0);
|
|
21176
|
+
i0.ɵɵtemplate(1, QueryAttachmentsReadComponent_ng_container_0_ccd_read_collection_field_1_Template, 1, 1, "ccd-read-collection-field", 1);
|
|
21177
|
+
i0.ɵɵelementContainerEnd();
|
|
21178
|
+
} if (rf & 2) {
|
|
21179
|
+
const ctx_r0 = i0.ɵɵnextContext();
|
|
21180
|
+
i0.ɵɵadvance();
|
|
21181
|
+
i0.ɵɵproperty("ngIf", (ctx_r0.attachments == null ? null : ctx_r0.attachments.length) > 0);
|
|
21182
|
+
} }
|
|
21183
|
+
class QueryAttachmentsReadComponent {
|
|
21184
|
+
attachments;
|
|
21185
|
+
caseFieldWithAttachments;
|
|
21186
|
+
ngOnChanges() {
|
|
21187
|
+
this.caseFieldWithAttachments = Object.assign(new CaseField(), {
|
|
21188
|
+
id: '',
|
|
21189
|
+
label: '',
|
|
21190
|
+
hint_text: '',
|
|
21191
|
+
field_type: Object.assign(new FieldType(), {
|
|
21192
|
+
id: 'QueryDocuments',
|
|
21193
|
+
type: 'QueryDocuments',
|
|
21194
|
+
min: null,
|
|
21195
|
+
max: null,
|
|
21196
|
+
regular_expression: null,
|
|
21197
|
+
fixed_list_items: [],
|
|
21198
|
+
complex_fields: [],
|
|
21199
|
+
collection_field_type: Object.assign(new FieldType(), {
|
|
21200
|
+
id: 'Document',
|
|
21201
|
+
type: 'Document',
|
|
21202
|
+
min: null,
|
|
21203
|
+
max: null,
|
|
21204
|
+
regular_expression: null,
|
|
21205
|
+
fixed_list_items: [],
|
|
21206
|
+
complex_fields: [],
|
|
21207
|
+
collection_field_type: null
|
|
21208
|
+
})
|
|
21209
|
+
}),
|
|
21210
|
+
display_context_parameter: '#COLLECTION(allowInsert,allowUpdate)',
|
|
21211
|
+
value: []
|
|
21212
|
+
});
|
|
21213
|
+
this.caseFieldWithAttachments.value = this.attachments;
|
|
21214
|
+
}
|
|
21215
|
+
static ɵfac = function QueryAttachmentsReadComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || QueryAttachmentsReadComponent)(); };
|
|
21216
|
+
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: QueryAttachmentsReadComponent, selectors: [["ccd-query-attachments-read"]], inputs: { attachments: "attachments" }, features: [i0.ɵɵNgOnChangesFeature], decls: 1, vars: 1, consts: [[4, "ngIf"], [3, "caseField", 4, "ngIf"], [3, "caseField"]], template: function QueryAttachmentsReadComponent_Template(rf, ctx) { if (rf & 1) {
|
|
21217
|
+
i0.ɵɵtemplate(0, QueryAttachmentsReadComponent_ng_container_0_Template, 2, 1, "ng-container", 0);
|
|
21218
|
+
} if (rf & 2) {
|
|
21219
|
+
i0.ɵɵproperty("ngIf", (ctx.attachments == null ? null : ctx.attachments.length) > 0);
|
|
21220
|
+
} }, styles: ["ccd-query-attachments-read .collection-field-table tr>td{border-bottom:none;padding-bottom:0}\n"], encapsulation: 2 });
|
|
21221
|
+
}
|
|
21222
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(QueryAttachmentsReadComponent, [{
|
|
21223
|
+
type: Component,
|
|
21224
|
+
args: [{ selector: 'ccd-query-attachments-read', encapsulation: ViewEncapsulation.None, template: "<ng-container *ngIf=\"attachments?.length > 0\">\n <ccd-read-collection-field\n *ngIf=\"attachments?.length > 0\"\n [caseField]=\"caseFieldWithAttachments\"\n >\n </ccd-read-collection-field>\n</ng-container>\n", styles: ["ccd-query-attachments-read .collection-field-table tr>td{border-bottom:none;padding-bottom:0}\n"] }]
|
|
21225
|
+
}], null, { attachments: [{
|
|
21226
|
+
type: Input
|
|
21227
|
+
}] }); })();
|
|
21228
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(QueryAttachmentsReadComponent, { className: "QueryAttachmentsReadComponent", filePath: "lib/shared/components/palette/query-management/components/query-attachments-read/query-attachments-read.component.ts", lineNumber: 10 }); })();
|
|
21229
|
+
|
|
21230
|
+
function QueryCaseDetailsHeaderComponent_h1_0_Template(rf, ctx) { if (rf & 1) {
|
|
21231
|
+
i0.ɵɵelementStart(0, "h1", 2);
|
|
21232
|
+
i0.ɵɵtext(1);
|
|
21233
|
+
i0.ɵɵpipe(2, "ccdCaseReference");
|
|
21234
|
+
i0.ɵɵelementEnd();
|
|
21235
|
+
} if (rf & 2) {
|
|
21236
|
+
const ctx_r0 = i0.ɵɵnextContext();
|
|
21237
|
+
i0.ɵɵadvance();
|
|
21238
|
+
i0.ɵɵtextInterpolate1("#", i0.ɵɵpipeBind1(2, 1, ctx_r0.caseDetails.case_id), "");
|
|
21239
|
+
} }
|
|
21240
|
+
function QueryCaseDetailsHeaderComponent_div_1_Template(rf, ctx) { if (rf & 1) {
|
|
21241
|
+
i0.ɵɵelementStart(0, "div", 3);
|
|
21242
|
+
i0.ɵɵelement(1, "ccd-label-field", 4);
|
|
21243
|
+
i0.ɵɵelementEnd();
|
|
21244
|
+
} if (rf & 2) {
|
|
21245
|
+
const ctx_r0 = i0.ɵɵnextContext();
|
|
21246
|
+
i0.ɵɵadvance();
|
|
21247
|
+
i0.ɵɵproperty("caseField", ctx_r0.caseTitle)("caseFields", ctx_r0.caseFields);
|
|
21248
|
+
} }
|
|
21249
|
+
class QueryCaseDetailsHeaderComponent {
|
|
21250
|
+
caseDetails;
|
|
21251
|
+
caseTitle;
|
|
21252
|
+
caseFields;
|
|
21253
|
+
ngOnInit() {
|
|
21254
|
+
this.caseTitle = new CaseField();
|
|
21255
|
+
this.caseTitle.label = this.caseDetails?.state?.title_display;
|
|
21256
|
+
this.caseFields = this.getCaseFieldsInfo();
|
|
21257
|
+
}
|
|
21258
|
+
getCaseFieldsInfo() {
|
|
21259
|
+
const caseDataFields = this.caseDetails?.tabs?.reduce((acc, tab) => {
|
|
21260
|
+
return acc.concat(tab.fields);
|
|
21261
|
+
}, []);
|
|
21262
|
+
return caseDataFields.concat(this.caseDetails.metadataFields);
|
|
21097
21263
|
}
|
|
21098
|
-
static ɵfac = function
|
|
21099
|
-
static
|
|
21264
|
+
static ɵfac = function QueryCaseDetailsHeaderComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || QueryCaseDetailsHeaderComponent)(); };
|
|
21265
|
+
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: QueryCaseDetailsHeaderComponent, selectors: [["ccd-query-case-details-header"]], inputs: { caseDetails: "caseDetails" }, decls: 2, vars: 2, consts: [["class", "heading-h1", 4, "ngIf"], ["class", "case-title", 4, "ngIf"], [1, "heading-h1"], [1, "case-title"], [3, "caseField", "caseFields"]], template: function QueryCaseDetailsHeaderComponent_Template(rf, ctx) { if (rf & 1) {
|
|
21266
|
+
i0.ɵɵtemplate(0, QueryCaseDetailsHeaderComponent_h1_0_Template, 3, 3, "h1", 0)(1, QueryCaseDetailsHeaderComponent_div_1_Template, 2, 2, "div", 1);
|
|
21267
|
+
} if (rf & 2) {
|
|
21268
|
+
i0.ɵɵproperty("ngIf", !ctx.caseTitle.label);
|
|
21269
|
+
i0.ɵɵadvance();
|
|
21270
|
+
i0.ɵɵproperty("ngIf", ctx.caseTitle.label);
|
|
21271
|
+
} }, dependencies: [i5.NgIf, LabelFieldComponent, CaseReferencePipe], encapsulation: 2 });
|
|
21100
21272
|
}
|
|
21101
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(
|
|
21102
|
-
type:
|
|
21103
|
-
|
|
21273
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(QueryCaseDetailsHeaderComponent, [{
|
|
21274
|
+
type: Component,
|
|
21275
|
+
args: [{ selector: 'ccd-query-case-details-header', template: "<h1 *ngIf=\"!caseTitle.label\" class=\"heading-h1\">#{{ caseDetails.case_id | ccdCaseReference}}</h1>\n<div *ngIf=\"caseTitle.label\" class=\"case-title\">\n <ccd-label-field [caseField]=\"caseTitle\" [caseFields]=\"caseFields\"></ccd-label-field>\n</div>\n" }]
|
|
21276
|
+
}], null, { caseDetails: [{
|
|
21277
|
+
type: Input
|
|
21278
|
+
}] }); })();
|
|
21279
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(QueryCaseDetailsHeaderComponent, { className: "QueryCaseDetailsHeaderComponent", filePath: "lib/shared/components/palette/query-management/components/query-case-details-header/query-case-details-header.component.ts", lineNumber: 10 }); })();
|
|
21104
21280
|
|
|
21105
21281
|
function QueryCheckYourAnswersComponent_div_0_div_2_li_6_Template(rf, ctx) { if (rf & 1) {
|
|
21106
21282
|
i0.ɵɵelementStart(0, "li")(1, "a", 28);
|
|
@@ -21336,15 +21512,14 @@ function QueryCheckYourAnswersComponent_div_0_dl_26_Template(rf, ctx) { if (rf &
|
|
|
21336
21512
|
i0.ɵɵpipe(11, "rpxTranslate");
|
|
21337
21513
|
i0.ɵɵelementEnd()()()();
|
|
21338
21514
|
} if (rf & 2) {
|
|
21339
|
-
let tmp_3_0;
|
|
21340
21515
|
let tmp_4_0;
|
|
21341
21516
|
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
21342
21517
|
i0.ɵɵadvance(3);
|
|
21343
|
-
i0.ɵɵ
|
|
21518
|
+
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(4, 3, "Closing the query"), " ");
|
|
21344
21519
|
i0.ɵɵadvance(3);
|
|
21345
|
-
i0.ɵɵtextInterpolate1(" ", ((tmp_4_0 = ctx_r2.formGroup.get("closeQuery")) == null ? null : tmp_4_0.value) ? "I want to close this query" : i0.ɵɵpipeBind1(7,
|
|
21520
|
+
i0.ɵɵtextInterpolate1(" ", ((tmp_4_0 = ctx_r2.formGroup.get("closeQuery")) == null ? null : tmp_4_0.value) ? "I want to close this query" : i0.ɵɵpipeBind1(7, 5, "No answer"), " ");
|
|
21346
21521
|
i0.ɵɵadvance(4);
|
|
21347
|
-
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(11,
|
|
21522
|
+
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(11, 7, "Change"), " ");
|
|
21348
21523
|
} }
|
|
21349
21524
|
function QueryCheckYourAnswersComponent_div_0_Template(rf, ctx) { if (rf & 1) {
|
|
21350
21525
|
const _r1 = i0.ɵɵgetCurrentView();
|
|
@@ -21371,7 +21546,7 @@ function QueryCheckYourAnswersComponent_div_0_Template(rf, ctx) { if (rf & 1) {
|
|
|
21371
21546
|
i0.ɵɵtext(22);
|
|
21372
21547
|
i0.ɵɵpipe(23, "rpxTranslate");
|
|
21373
21548
|
i0.ɵɵelementEnd()()()();
|
|
21374
|
-
i0.ɵɵtemplate(24, QueryCheckYourAnswersComponent_div_0_dl_24_Template, 14, 9, "dl", 13)(25, QueryCheckYourAnswersComponent_div_0_dl_25_Template, 11, 7, "dl", 13)(26, QueryCheckYourAnswersComponent_div_0_dl_26_Template, 12,
|
|
21549
|
+
i0.ɵɵtemplate(24, QueryCheckYourAnswersComponent_div_0_dl_24_Template, 14, 9, "dl", 13)(25, QueryCheckYourAnswersComponent_div_0_dl_25_Template, 11, 7, "dl", 13)(26, QueryCheckYourAnswersComponent_div_0_dl_26_Template, 12, 9, "dl", 13);
|
|
21375
21550
|
i0.ɵɵelement(27, "br");
|
|
21376
21551
|
i0.ɵɵelementStart(28, "div")(29, "button", 20);
|
|
21377
21552
|
i0.ɵɵlistener("click", function QueryCheckYourAnswersComponent_div_0_Template_button_click_29_listener() { i0.ɵɵrestoreView(_r1); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.goBack()); });
|
|
@@ -21428,20 +21603,27 @@ class QueryCheckYourAnswersComponent {
|
|
|
21428
21603
|
casesService;
|
|
21429
21604
|
caseNotifier;
|
|
21430
21605
|
workAllocationService;
|
|
21431
|
-
sessionStorageService;
|
|
21432
21606
|
qualifyingQuestionService;
|
|
21607
|
+
queryManagementService;
|
|
21608
|
+
errorNotifierService;
|
|
21609
|
+
alertService;
|
|
21433
21610
|
RAISE_A_QUERY_EVENT_TRIGGER_ID = 'queryManagementRaiseQuery';
|
|
21434
21611
|
RESPOND_TO_QUERY_EVENT_TRIGGER_ID = 'queryManagementRespondQuery';
|
|
21435
21612
|
CASE_QUERIES_COLLECTION_ID = 'CaseQueriesCollection';
|
|
21613
|
+
static TRIGGER_TEXT_CONTINUE = 'Ignore Warning and Continue';
|
|
21614
|
+
static TRIGGER_TEXT_START = 'Continue';
|
|
21436
21615
|
FIELD_TYPE_COMPLEX = 'Complex';
|
|
21437
21616
|
DISPLAY_CONTEXT_READONLY = 'READONLY';
|
|
21438
21617
|
QM_SELECT_FIRST_COLLECTION = 'selectFirstCollection';
|
|
21439
21618
|
QM_COLLECTION_PROMPT = 'promptQmCollection';
|
|
21440
21619
|
CIVIL_JURISDICTION = 'CIVIL';
|
|
21620
|
+
triggerTextStart = QueryCheckYourAnswersComponent.TRIGGER_TEXT_START;
|
|
21621
|
+
triggerTextIgnoreWarnings = QueryCheckYourAnswersComponent.TRIGGER_TEXT_CONTINUE;
|
|
21441
21622
|
formGroup;
|
|
21442
21623
|
queryItem;
|
|
21443
21624
|
queryCreateContext;
|
|
21444
21625
|
eventData = null;
|
|
21626
|
+
qmCaseQueriesCollectionData;
|
|
21445
21627
|
backClicked = new EventEmitter();
|
|
21446
21628
|
querySubmitted = new EventEmitter();
|
|
21447
21629
|
callbackConfirmationMessage = new EventEmitter();
|
|
@@ -21460,20 +21642,24 @@ class QueryCheckYourAnswersComponent {
|
|
|
21460
21642
|
filteredTasks = [];
|
|
21461
21643
|
readyToSubmit;
|
|
21462
21644
|
isSubmitting = false;
|
|
21645
|
+
messgaeId;
|
|
21463
21646
|
callbackErrorsSubject = new Subject();
|
|
21464
21647
|
error;
|
|
21465
|
-
constructor(route, router, casesService, caseNotifier, workAllocationService,
|
|
21648
|
+
constructor(route, router, casesService, caseNotifier, workAllocationService, qualifyingQuestionService, queryManagementService, errorNotifierService, alertService) {
|
|
21466
21649
|
this.route = route;
|
|
21467
21650
|
this.router = router;
|
|
21468
21651
|
this.casesService = casesService;
|
|
21469
21652
|
this.caseNotifier = caseNotifier;
|
|
21470
21653
|
this.workAllocationService = workAllocationService;
|
|
21471
|
-
this.sessionStorageService = sessionStorageService;
|
|
21472
21654
|
this.qualifyingQuestionService = qualifyingQuestionService;
|
|
21655
|
+
this.queryManagementService = queryManagementService;
|
|
21656
|
+
this.errorNotifierService = errorNotifierService;
|
|
21657
|
+
this.alertService = alertService;
|
|
21473
21658
|
}
|
|
21474
21659
|
ngOnInit() {
|
|
21475
21660
|
this.queryId = this.route.snapshot.params.qid;
|
|
21476
21661
|
this.tid = this.route.snapshot.queryParams?.tid;
|
|
21662
|
+
this.messgaeId = this.route.snapshot.params.dataid;
|
|
21477
21663
|
this.caseNotifier.caseView.pipe(take(1)).subscribe((caseDetails) => {
|
|
21478
21664
|
this.caseDetails = caseDetails;
|
|
21479
21665
|
// Find the appropriate event trigger based on the queryCreateContext
|
|
@@ -21502,8 +21688,23 @@ class QueryCheckYourAnswersComponent {
|
|
|
21502
21688
|
}
|
|
21503
21689
|
},
|
|
21504
21690
|
error: (error) => {
|
|
21505
|
-
console.error('Error in searchTasksSubscription:', error);
|
|
21506
21691
|
this.readyToSubmit = false;
|
|
21692
|
+
if (error.status !== 401 && error.status !== 403) {
|
|
21693
|
+
this.errorNotifierService.announceError(error);
|
|
21694
|
+
this.alertService.error({ phrase: error.message });
|
|
21695
|
+
console.error('Error occurred while fetching event data:', error);
|
|
21696
|
+
this.callbackErrorsSubject.next(error);
|
|
21697
|
+
}
|
|
21698
|
+
else {
|
|
21699
|
+
this.errorMessages = [
|
|
21700
|
+
{
|
|
21701
|
+
title: 'Error',
|
|
21702
|
+
description: 'Something unexpected happened. Please try again later.',
|
|
21703
|
+
fieldId: 'field-id'
|
|
21704
|
+
}
|
|
21705
|
+
];
|
|
21706
|
+
}
|
|
21707
|
+
window.scrollTo({ left: 0, top: 0, behavior: 'smooth' });
|
|
21507
21708
|
}
|
|
21508
21709
|
});
|
|
21509
21710
|
}
|
|
@@ -21514,6 +21715,7 @@ class QueryCheckYourAnswersComponent {
|
|
|
21514
21715
|
ngOnDestroy() {
|
|
21515
21716
|
this.createEventSubscription?.unsubscribe();
|
|
21516
21717
|
this.searchTasksSubscription?.unsubscribe();
|
|
21718
|
+
this.callbackErrorsSubject?.unsubscribe();
|
|
21517
21719
|
}
|
|
21518
21720
|
goBack() {
|
|
21519
21721
|
this.backClicked.emit(true);
|
|
@@ -21522,20 +21724,7 @@ class QueryCheckYourAnswersComponent {
|
|
|
21522
21724
|
if (this.isSubmitting) {
|
|
21523
21725
|
return;
|
|
21524
21726
|
}
|
|
21525
|
-
|
|
21526
|
-
if (!this.fieldId) {
|
|
21527
|
-
console.error('Error: Field ID is missing. Cannot proceed with submission.');
|
|
21528
|
-
this.errorMessages = [
|
|
21529
|
-
{
|
|
21530
|
-
title: 'Error',
|
|
21531
|
-
description: 'This case is not configured for query management.',
|
|
21532
|
-
fieldId: 'field-id'
|
|
21533
|
-
}
|
|
21534
|
-
];
|
|
21535
|
-
window.scrollTo({ left: 0, top: 0, behavior: 'smooth' });
|
|
21536
|
-
return;
|
|
21537
|
-
}
|
|
21538
|
-
const data = this.generateCaseQueriesCollectionData();
|
|
21727
|
+
const data = this.qmCaseQueriesCollectionData;
|
|
21539
21728
|
const createEvent$ = this.createEvent(data);
|
|
21540
21729
|
this.isSubmitting = true;
|
|
21541
21730
|
if (this.queryCreateContext === QueryCreateContext.RESPOND) {
|
|
@@ -21596,172 +21785,7 @@ class QueryCheckYourAnswersComponent {
|
|
|
21596
21785
|
handleError(error) {
|
|
21597
21786
|
console.error('Error in API calls:', error);
|
|
21598
21787
|
this.isSubmitting = false;
|
|
21599
|
-
|
|
21600
|
-
this.error = null;
|
|
21601
|
-
this.callbackErrorsSubject.next(error);
|
|
21602
|
-
}
|
|
21603
|
-
else {
|
|
21604
|
-
if (error && error.status !== 401 && error.status !== 403) {
|
|
21605
|
-
this.error = error;
|
|
21606
|
-
}
|
|
21607
|
-
else {
|
|
21608
|
-
this.router.navigate(['/', 'service-down']);
|
|
21609
|
-
}
|
|
21610
|
-
}
|
|
21611
|
-
window.scrollTo({ left: 0, top: 0, behavior: 'smooth' });
|
|
21612
|
-
}
|
|
21613
|
-
generateCaseQueriesCollectionData() {
|
|
21614
|
-
const currentUserDetails = JSON.parse(this.sessionStorageService.getItem(USER_DETAILS));
|
|
21615
|
-
const caseMessage = this.queryCreateContext === QueryCreateContext.NEW_QUERY
|
|
21616
|
-
? QueryManagementUtils.getNewQueryData(this.formGroup, currentUserDetails)
|
|
21617
|
-
: QueryManagementUtils.getRespondOrFollowupQueryData(this.formGroup, this.queryItem, currentUserDetails);
|
|
21618
|
-
const messageId = this.route.snapshot.params.dataid; // Get the message ID from route params (if present)
|
|
21619
|
-
const isNewQuery = this.queryCreateContext === QueryCreateContext.NEW_QUERY; // Check if this is a new query
|
|
21620
|
-
// Check if the field ID has been set dynamically
|
|
21621
|
-
if (!this.fieldId) {
|
|
21622
|
-
console.error('Error: Field ID for CaseQueriesCollection not found. Cannot proceed with data generation.');
|
|
21623
|
-
this.router.navigate(['/', 'service-down']);
|
|
21624
|
-
}
|
|
21625
|
-
// Initialize new query data structure
|
|
21626
|
-
const newQueryData = {};
|
|
21627
|
-
if (this.caseQueriesCollections?.length) {
|
|
21628
|
-
let matchedCollection;
|
|
21629
|
-
// If it's not a new query, try to find the existing collection with the message ID
|
|
21630
|
-
if (!isNewQuery && messageId) {
|
|
21631
|
-
matchedCollection = this.caseQueriesCollections.find((collection) => collection.caseMessages.some((message) => message.value.id === messageId));
|
|
21632
|
-
}
|
|
21633
|
-
if (matchedCollection) {
|
|
21634
|
-
// Append the new case message to the matched collection's caseMessages
|
|
21635
|
-
matchedCollection.caseMessages.push({
|
|
21636
|
-
id: null,
|
|
21637
|
-
value: caseMessage
|
|
21638
|
-
});
|
|
21639
|
-
// Add the matched collection to newQueryData
|
|
21640
|
-
newQueryData[this.fieldId] = {
|
|
21641
|
-
...matchedCollection, // Keep existing data intact
|
|
21642
|
-
caseMessages: [...matchedCollection.caseMessages] // Append the updated messages array
|
|
21643
|
-
};
|
|
21644
|
-
}
|
|
21645
|
-
else {
|
|
21646
|
-
// Use partyName from the first collection (assumption: all share the same party)
|
|
21647
|
-
const originalPartyName = this.caseQueriesCollections[0].partyName;
|
|
21648
|
-
// If no collection matches, or it's a new query
|
|
21649
|
-
newQueryData[this.fieldId] = {
|
|
21650
|
-
partyName: originalPartyName,
|
|
21651
|
-
roleOnCase: '', // Not returned by CCD
|
|
21652
|
-
caseMessages: [
|
|
21653
|
-
{
|
|
21654
|
-
id: null,
|
|
21655
|
-
value: caseMessage
|
|
21656
|
-
}
|
|
21657
|
-
]
|
|
21658
|
-
};
|
|
21659
|
-
// If caseQueriesCollections is not empty, append its data
|
|
21660
|
-
newQueryData[this.fieldId].caseMessages.push(...this.caseQueriesCollections.flatMap((collection) => collection.caseMessages));
|
|
21661
|
-
}
|
|
21662
|
-
}
|
|
21663
|
-
else {
|
|
21664
|
-
// If there are no existing collections, create a new one (e.g., for new queries)
|
|
21665
|
-
newQueryData[this.fieldId] = {
|
|
21666
|
-
partyName: currentUserDetails?.name || `${currentUserDetails?.forename} ${currentUserDetails?.surname}`, // Not returned by CCD
|
|
21667
|
-
roleOnCase: '', // Not returned by CCD
|
|
21668
|
-
caseMessages: [
|
|
21669
|
-
{
|
|
21670
|
-
id: null,
|
|
21671
|
-
value: caseMessage
|
|
21672
|
-
}
|
|
21673
|
-
]
|
|
21674
|
-
};
|
|
21675
|
-
}
|
|
21676
|
-
return newQueryData;
|
|
21677
|
-
}
|
|
21678
|
-
setCaseQueriesCollectionData() {
|
|
21679
|
-
if (this.eventData?.case_fields?.length) {
|
|
21680
|
-
// Workaround for multiple qmCaseQueriesCollections that are not to be appearing in the eventData
|
|
21681
|
-
// Counts number qmCaseQueriesCollections
|
|
21682
|
-
const numberOfCaseQueriesCollections = this.eventData?.case_fields?.filter((caseField) => caseField.field_type.id === this.CASE_QUERIES_COLLECTION_ID &&
|
|
21683
|
-
caseField.field_type.type === this.FIELD_TYPE_COMPLEX && caseField.display_context !== this.DISPLAY_CONTEXT_READONLY)?.length || 0;
|
|
21684
|
-
this.caseQueriesCollections = this.eventData.case_fields.reduce((acc, caseField) => {
|
|
21685
|
-
// Extract the ID based on conditions, updating this.fieldId dynamically
|
|
21686
|
-
this.extractCaseQueryId(caseField, numberOfCaseQueriesCollections);
|
|
21687
|
-
const extractedCaseQueriesFromCaseField = QueryManagementUtils.extractCaseQueriesFromCaseField(caseField);
|
|
21688
|
-
if (extractedCaseQueriesFromCaseField && typeof extractedCaseQueriesFromCaseField === 'object') {
|
|
21689
|
-
acc.push(extractedCaseQueriesFromCaseField);
|
|
21690
|
-
}
|
|
21691
|
-
return acc;
|
|
21692
|
-
}, []);
|
|
21693
|
-
}
|
|
21694
|
-
}
|
|
21695
|
-
extractCaseQueryId(data, count) {
|
|
21696
|
-
const { id, value } = data;
|
|
21697
|
-
const messageId = this.route.snapshot.params.dataid;
|
|
21698
|
-
// Check if the field_type matches CaseQueriesCollection and type is Complex
|
|
21699
|
-
if (data.field_type.id === this.CASE_QUERIES_COLLECTION_ID && data.field_type.type === this.FIELD_TYPE_COMPLEX) {
|
|
21700
|
-
if (this.isNewQueryContext(data)) {
|
|
21701
|
-
// If there is more than one qmCaseQueriesCollection, pick the one with the lowest order
|
|
21702
|
-
if (count > 1) {
|
|
21703
|
-
if (!this.handleMultipleCollections()) {
|
|
21704
|
-
return;
|
|
21705
|
-
}
|
|
21706
|
-
}
|
|
21707
|
-
else {
|
|
21708
|
-
// Set the field ID dynamically based on the extracted data
|
|
21709
|
-
this.fieldId = id; // Store the ID for use in generating newQueryData
|
|
21710
|
-
}
|
|
21711
|
-
}
|
|
21712
|
-
// If messageId is present, find the corresponding case message
|
|
21713
|
-
this.setMessageFieldId(messageId, value, id);
|
|
21714
|
-
}
|
|
21715
|
-
}
|
|
21716
|
-
setMessageFieldId(messageId, value, id) {
|
|
21717
|
-
if (messageId && value?.caseMessages) {
|
|
21718
|
-
// If a matching message is found, set the fieldId to the corresponding id
|
|
21719
|
-
const matchedMessage = value?.caseMessages?.find((message) => message.value.id === messageId);
|
|
21720
|
-
if (matchedMessage) {
|
|
21721
|
-
this.fieldId = id;
|
|
21722
|
-
}
|
|
21723
|
-
}
|
|
21724
|
-
}
|
|
21725
|
-
isNewQueryContext(data) {
|
|
21726
|
-
return this.queryCreateContext === QueryCreateContext.NEW_QUERY && data.display_context !== this.DISPLAY_CONTEXT_READONLY;
|
|
21727
|
-
}
|
|
21728
|
-
handleMultipleCollections() {
|
|
21729
|
-
const jurisdictionId = this.caseDetails?.case_type?.jurisdiction?.id;
|
|
21730
|
-
if (!jurisdictionId) {
|
|
21731
|
-
console.error('Jurisdiction ID is missing.');
|
|
21732
|
-
return false;
|
|
21733
|
-
}
|
|
21734
|
-
if (this.getCollectionSelectionMethod(jurisdictionId) === this.QM_SELECT_FIRST_COLLECTION) {
|
|
21735
|
-
// Pick the collection with the lowest order
|
|
21736
|
-
this.fieldId = this.getCaseQueriesCollectionFieldOrderFromWizardPages()?.id;
|
|
21737
|
-
}
|
|
21738
|
-
else {
|
|
21739
|
-
// Display Error, for now, until EXUI-2644 is implemented
|
|
21740
|
-
console.error(`Error: Multiple CaseQueriesCollections are not supported yet for the ${jurisdictionId} jurisdiction`);
|
|
21741
|
-
return false;
|
|
21742
|
-
}
|
|
21743
|
-
return true;
|
|
21744
|
-
}
|
|
21745
|
-
getCaseQueriesCollectionFieldOrderFromWizardPages() {
|
|
21746
|
-
const candidateFields = this.eventData?.case_fields?.filter((field) => field.field_type.id === this.CASE_QUERIES_COLLECTION_ID &&
|
|
21747
|
-
field.field_type.type === this.FIELD_TYPE_COMPLEX &&
|
|
21748
|
-
field.display_context !== this.DISPLAY_CONTEXT_READONLY);
|
|
21749
|
-
if (!candidateFields?.length) {
|
|
21750
|
-
return undefined;
|
|
21751
|
-
}
|
|
21752
|
-
const firstPageFields = this.eventData?.wizard_pages?.[0]?.wizard_page_fields;
|
|
21753
|
-
if (!firstPageFields) {
|
|
21754
|
-
return undefined;
|
|
21755
|
-
}
|
|
21756
|
-
return candidateFields
|
|
21757
|
-
.map((field) => {
|
|
21758
|
-
const wizardField = firstPageFields.find((f) => f.case_field_id === field.id);
|
|
21759
|
-
return { field, order: wizardField?.order ?? Number.MAX_SAFE_INTEGER };
|
|
21760
|
-
})
|
|
21761
|
-
.sort((a, b) => a.order - b.order)[0]?.field;
|
|
21762
|
-
}
|
|
21763
|
-
getCollectionSelectionMethod(jurisdiction) {
|
|
21764
|
-
return jurisdiction.toUpperCase() === this.CIVIL_JURISDICTION ? this.QM_SELECT_FIRST_COLLECTION : this.QM_COLLECTION_PROMPT;
|
|
21788
|
+
this.router.navigate(['/', 'service-down']);
|
|
21765
21789
|
}
|
|
21766
21790
|
getDocumentAttachments() {
|
|
21767
21791
|
const attachmentsValue = this.formGroup.get('attachments').value;
|
|
@@ -21773,8 +21797,14 @@ class QueryCheckYourAnswersComponent {
|
|
|
21773
21797
|
isServiceErrorFound(error) {
|
|
21774
21798
|
return !!(error?.callbackErrors?.length);
|
|
21775
21799
|
}
|
|
21776
|
-
|
|
21777
|
-
|
|
21800
|
+
setCaseQueriesCollectionData() {
|
|
21801
|
+
if (!this.eventData) {
|
|
21802
|
+
console.warn('Event data not available; skipping collection setup.');
|
|
21803
|
+
}
|
|
21804
|
+
this.queryManagementService.setCaseQueriesCollectionData(this.eventData, this.queryCreateContext, this.caseDetails, this.messgaeId);
|
|
21805
|
+
}
|
|
21806
|
+
static ɵfac = function QueryCheckYourAnswersComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || QueryCheckYourAnswersComponent)(i0.ɵɵdirectiveInject(i1$1.ActivatedRoute), i0.ɵɵdirectiveInject(i1$1.Router), i0.ɵɵdirectiveInject(CasesService), i0.ɵɵdirectiveInject(CaseNotifier), i0.ɵɵdirectiveInject(WorkAllocationService), i0.ɵɵdirectiveInject(QualifyingQuestionService), i0.ɵɵdirectiveInject(QueryManagementService), i0.ɵɵdirectiveInject(ErrorNotifierService), i0.ɵɵdirectiveInject(AlertService)); };
|
|
21807
|
+
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: QueryCheckYourAnswersComponent, selectors: [["ccd-query-check-your-answers"]], inputs: { formGroup: "formGroup", queryItem: "queryItem", queryCreateContext: "queryCreateContext", eventData: "eventData", qmCaseQueriesCollectionData: "qmCaseQueriesCollectionData" }, outputs: { backClicked: "backClicked", querySubmitted: "querySubmitted", callbackConfirmationMessage: "callbackConfirmationMessage" }, decls: 1, vars: 1, consts: [["defaultCheckYourAnswersTitle", ""], ["isHearingRelatedFalse", ""], ["class", "govuk-grid-row", 4, "ngIf"], [1, "govuk-grid-row"], [1, "govuk-grid-column-two-thirds-from-desktop"], ["class", "govuk-error-summary", "aria-labelledby", "error-summary-title", "role", "alert", "tabindex", "-1", "data-module", "govuk-error-summary", 4, "ngIf"], ["class", "error-summary", "role", "group", "aria-labelledby", "edit-case-event_error-summary-heading", "tabindex", "-1", 4, "ngIf"], [3, "callbackErrorsSubject"], [4, "ngIf"], [1, "govuk-heading-l"], [4, "ngIf", "ngIfElse"], [1, "govuk-!-margin-bottom-4"], [3, "caseDetails"], ["class", "govuk-summary-list govuk-!-margin-bottom-0", 4, "ngIf"], [1, "govuk-summary-list", "govuk-!-margin-bottom-0"], [1, "govuk-summary-list__row"], [1, "govuk-summary-list__key"], [1, "govuk-summary-list__value"], [1, "govuk-summary-list__actions"], ["href", "javascript:void(0)", 1, "govuk-link", 3, "click"], ["data-module", "govuk-button", 1, "govuk-button", "govuk-button--secondary", "govuk-!-margin-right-3", 3, "click"], ["data-module", "govuk-button", "type", "submit", 1, "govuk-button", 3, "click"], [3, "eventCompletionParams"], ["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"], [1, "govuk-error-summary__body"], [1, "govuk-list", "govuk-error-summary__list"], [4, "ngFor", "ngForOf"], ["href", "javascript:void(0)", 1, "validation-error", 3, "id"], ["role", "group", "aria-labelledby", "edit-case-event_error-summary-heading", "tabindex", "-1", 1, "error-summary"], ["id", "event_error-summary-heading", 1, "heading-h3", "error-summary-heading"], ["class", "error-summary-list", 4, "ngIf"], [1, "error-summary-list"], ["class", "ccd-error-summary-li", 4, "ngFor", "ngForOf"], [1, "ccd-error-summary-li"], [1, "govuk-caption-l"], ["href", "javascript:void(0)", "class", "govuk-link", 3, "click", 4, "ngIf"], ["class", "govuk-summary-list__row", 4, "ngIf"], [1, "govuk-summary-list__value", "govuk-summary-list__value--documentAttached"], [3, "attachments", 4, "ngIf"], [3, "attachments"]], template: function QueryCheckYourAnswersComponent_Template(rf, ctx) { if (rf & 1) {
|
|
21778
21808
|
i0.ɵɵtemplate(0, QueryCheckYourAnswersComponent_div_0_Template, 36, 25, "div", 2);
|
|
21779
21809
|
} if (rf & 2) {
|
|
21780
21810
|
i0.ɵɵproperty("ngIf", ctx.readyToSubmit);
|
|
@@ -21782,8 +21812,8 @@ class QueryCheckYourAnswersComponent {
|
|
|
21782
21812
|
}
|
|
21783
21813
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(QueryCheckYourAnswersComponent, [{
|
|
21784
21814
|
type: Component,
|
|
21785
|
-
args: [{ selector: 'ccd-query-check-your-answers', template: "<div class=\"govuk-grid-row\" *ngIf=\"readyToSubmit\">\n <div class=\"govuk-grid-column-two-thirds-from-desktop\">\n <!-- Error message summary -->\n <div *ngIf=\"errorMessages.length > 0\" class=\"govuk-error-summary\"\n aria-labelledby=\"error-summary-title\" role=\"alert\" tabindex=\"-1\"\n 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 class=\"govuk-error-summary__body\">\n <ul class=\"govuk-list govuk-error-summary__list\">\n <li *ngFor=\"let errorMessage of errorMessages\">\n <a [id]=\"'error-' + errorMessage.fieldId\" href=\"javascript:void(0)\"\n class=\"validation-error\">{{ errorMessage.description | rpxTranslate }}</a>\n </li>\n </ul>\n </div>\n </div>\n\n <div *ngIf=\"error && (error.details || error.message)\" class=\"error-summary\" role=\"group\" aria-labelledby=\"edit-case-event_error-summary-heading\" tabindex=\"-1\">\n <h3 class=\"heading-h3 error-summary-heading\" id=\"event_error-summary-heading\">\n The event could not be created\n </h3>\n <p>{{error.message}}</p>\n <ul *ngIf=\"error.details?.field_errors\" class=\"error-summary-list\">\n <li *ngFor=\"let fieldError of error.details.field_errors\" class=\"ccd-error-summary-li\">{{fieldError.message}}</li>\n </ul>\n </div>\n\n <ccd-callback-errors [callbackErrorsSubject]=\"callbackErrorsSubject\"></ccd-callback-errors>\n\n <ng-container *ngIf=\"queryCreateContext === queryCreateContextEnum.NEW_QUERY\">\n <div class=\"govuk-caption-l\">{{ 'Raise a query' | rpxTranslate }}</div>\n </ng-container>\n\n <h1 class=\"govuk-heading-l\">\n <ng-container *ngIf=\"queryCreateContext === queryCreateContextEnum.RESPOND; else defaultCheckYourAnswersTitle\">\n {{ 'Review query response details' | rpxTranslate }}\n </ng-container>\n\n <ng-template #defaultCheckYourAnswersTitle>\n {{ 'Review query details' | rpxTranslate }}\n </ng-template>\n </h1>\n <div class=\"govuk-!-margin-bottom-4\">\n <ccd-query-case-details-header [caseDetails]=\"caseDetails\"></ccd-query-case-details-header>\n </div>\n\n <dl *ngIf=\"queryCreateContext !== queryCreateContextEnum.FOLLOWUP\" class=\"govuk-summary-list govuk-!-margin-bottom-0\">\n <div class=\"govuk-summary-list__row\">\n <dt class=\"govuk-summary-list__key\">\n {{ queryCreateContext === queryCreateContextEnum.RESPOND ? 'Submitted query' : 'Query subject' | rpxTranslate }}\n </dt>\n <dd class=\"govuk-summary-list__value\">\n {{ queryCreateContext === queryCreateContextEnum.RESPOND ? queryItem.subject : formGroup.get('subject')?.value }}\n </dd>\n <dd class=\"govuk-summary-list__actions\">\n <a *ngIf=\"queryCreateContext === queryCreateContextEnum.NEW_QUERY\" \n href=\"javascript:void(0)\" class=\"govuk-link\" (click)=\"goBack()\">\n {{ 'Change' | rpxTranslate }}\n </a>\n </dd>\n </div>\n </dl>\n\n <dl class=\"govuk-summary-list govuk-!-margin-bottom-0\">\n <div class=\"govuk-summary-list__row\">\n <dt class=\"govuk-summary-list__key\">\n {{ queryCreateContext === queryCreateContextEnum.RESPOND ? 'Response detail' : 'Query detail' | rpxTranslate }}\n </dt>\n <dd class=\"govuk-summary-list__value\">\n {{ formGroup.get('body')?.value }}\n </dd>\n <dd class=\"govuk-summary-list__actions\">\n <a href=\"javascript:void(0)\" class=\"govuk-link\" (click)=\"goBack()\">\n {{ 'Change' | rpxTranslate }}\n </a>\n </dd>\n </div>\n </dl>\n\n <dl *ngIf=\"queryCreateContext === queryCreateContextEnum.NEW_QUERY\" class=\"govuk-summary-list govuk-!-margin-bottom-0\">\n <div class=\"govuk-summary-list__row\">\n <dt class=\"govuk-summary-list__key\">\n {{ 'Is the query hearing related?' | rpxTranslate }}\n </dt>\n <dd class=\"govuk-summary-list__value\">\n <ng-container *ngIf=\"formGroup.get('isHearingRelated')?.value === true; else isHearingRelatedFalse\">\n {{ 'Is the query hearing related?' | rpxTranslate: null : 'Yes' }}\n </ng-container>\n <ng-template #isHearingRelatedFalse>\n {{ 'Is the query hearing related?' | rpxTranslate: null : 'No' }}\n </ng-template>\n </dd>\n <dd class=\"govuk-summary-list__actions\">\n <a href=\"javascript:void(0)\" class=\"govuk-link\" (click)=\"goBack()\">\n {{ 'Change' | rpxTranslate }}\n </a>\n </dd>\n </div>\n\n <div *ngIf=\"formGroup.get('isHearingRelated')?.value\" class=\"govuk-summary-list__row\">\n <dt class=\"govuk-summary-list__key\">\n {{ queryCreateContext === queryCreateContextEnum.NEW_QUERY\n ? 'What is the date of the hearing?'\n : 'What is the date of the hearing your query is related to?' | rpxTranslate }}\n </dt>\n <dd class=\"govuk-summary-list__value\">\n {{ formGroup.get('hearingDate')?.value | date: 'dd MMM yyyy' }}\n </dd>\n <dd class=\"govuk-summary-list__actions\">\n <a href=\"javascript:void(0)\" class=\"govuk-link\" (click)=\"goBack()\">\n {{ 'Change' | rpxTranslate }}\n </a>\n </dd>\n </div>\n </dl>\n <dl class=\"govuk-summary-list govuk-!-margin-bottom-0\" *ngIf=\"this.formGroup.get('attachments').value.length > 0\">\n <div class=\"govuk-summary-list__row\">\n <dt class=\"govuk-summary-list__key\">\n {{ queryCreateContext === queryCreateContextEnum.NEW_QUERY ? 'Upload a file to the query' : 'Document attached' | rpxTranslate }}\n </dt>\n <dd class=\"govuk-summary-list__value govuk-summary-list__value--documentAttached\">\n <ccd-query-attachments-read\n *ngIf=\"this.formGroup.get('attachments').value\"\n [attachments]=\"attachments\"\n >\n </ccd-query-attachments-read>\n </dd>\n <dd class=\"govuk-summary-list__actions\">\n <a href=\"javascript:void(0)\" class=\"govuk-link\" (click)=\"goBack()\">\n {{ 'Change' | rpxTranslate }}\n </a>\n </dd>\n </div>\n </dl>\n\n <dl *ngIf=\"queryCreateContext === queryCreateContextEnum.RESPOND\" class=\"govuk-summary-list govuk-!-margin-bottom-0\">\n <div class=\"govuk-summary-list__row\">\n <dt class=\"govuk-summary-list__key\">\n {{ 'Closing the query' | rpxTranslate }}
|
|
21786
|
-
}], () => [{ type: i1$1.ActivatedRoute }, { type: i1$1.Router }, { type: CasesService }, { type: CaseNotifier }, { type: WorkAllocationService }, { type:
|
|
21815
|
+
args: [{ selector: 'ccd-query-check-your-answers', template: "<div class=\"govuk-grid-row\" *ngIf=\"readyToSubmit\">\n <div class=\"govuk-grid-column-two-thirds-from-desktop\">\n <!-- Error message summary -->\n <div *ngIf=\"errorMessages.length > 0\" class=\"govuk-error-summary\"\n aria-labelledby=\"error-summary-title\" role=\"alert\" tabindex=\"-1\"\n 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 class=\"govuk-error-summary__body\">\n <ul class=\"govuk-list govuk-error-summary__list\">\n <li *ngFor=\"let errorMessage of errorMessages\">\n <a [id]=\"'error-' + errorMessage.fieldId\" href=\"javascript:void(0)\"\n class=\"validation-error\">{{ errorMessage.description | rpxTranslate }}</a>\n </li>\n </ul>\n </div>\n </div>\n\n <div *ngIf=\"error && (error.details || error.message)\" class=\"error-summary\" role=\"group\" aria-labelledby=\"edit-case-event_error-summary-heading\" tabindex=\"-1\">\n <h3 class=\"heading-h3 error-summary-heading\" id=\"event_error-summary-heading\">\n The event could not be created\n </h3>\n <p>{{error.message}}</p>\n <ul *ngIf=\"error.details?.field_errors\" class=\"error-summary-list\">\n <li *ngFor=\"let fieldError of error.details.field_errors\" class=\"ccd-error-summary-li\">{{fieldError.message}}</li>\n </ul>\n </div>\n\n <ccd-callback-errors [callbackErrorsSubject]=\"callbackErrorsSubject\"></ccd-callback-errors>\n\n <ng-container *ngIf=\"queryCreateContext === queryCreateContextEnum.NEW_QUERY\">\n <div class=\"govuk-caption-l\">{{ 'Raise a query' | rpxTranslate }}</div>\n </ng-container>\n\n <h1 class=\"govuk-heading-l\">\n <ng-container *ngIf=\"queryCreateContext === queryCreateContextEnum.RESPOND; else defaultCheckYourAnswersTitle\">\n {{ 'Review query response details' | rpxTranslate }}\n </ng-container>\n\n <ng-template #defaultCheckYourAnswersTitle>\n {{ 'Review query details' | rpxTranslate }}\n </ng-template>\n </h1>\n <div class=\"govuk-!-margin-bottom-4\">\n <ccd-query-case-details-header [caseDetails]=\"caseDetails\"></ccd-query-case-details-header>\n </div>\n\n <dl *ngIf=\"queryCreateContext !== queryCreateContextEnum.FOLLOWUP\" class=\"govuk-summary-list govuk-!-margin-bottom-0\">\n <div class=\"govuk-summary-list__row\">\n <dt class=\"govuk-summary-list__key\">\n {{ queryCreateContext === queryCreateContextEnum.RESPOND ? 'Submitted query' : 'Query subject' | rpxTranslate }}\n </dt>\n <dd class=\"govuk-summary-list__value\">\n {{ queryCreateContext === queryCreateContextEnum.RESPOND ? queryItem.subject : formGroup.get('subject')?.value }}\n </dd>\n <dd class=\"govuk-summary-list__actions\">\n <a *ngIf=\"queryCreateContext === queryCreateContextEnum.NEW_QUERY\" \n href=\"javascript:void(0)\" class=\"govuk-link\" (click)=\"goBack()\">\n {{ 'Change' | rpxTranslate }}\n </a>\n </dd>\n </div>\n </dl>\n\n <dl class=\"govuk-summary-list govuk-!-margin-bottom-0\">\n <div class=\"govuk-summary-list__row\">\n <dt class=\"govuk-summary-list__key\">\n {{ queryCreateContext === queryCreateContextEnum.RESPOND ? 'Response detail' : 'Query detail' | rpxTranslate }}\n </dt>\n <dd class=\"govuk-summary-list__value\">\n {{ formGroup.get('body')?.value }}\n </dd>\n <dd class=\"govuk-summary-list__actions\">\n <a href=\"javascript:void(0)\" class=\"govuk-link\" (click)=\"goBack()\">\n {{ 'Change' | rpxTranslate }}\n </a>\n </dd>\n </div>\n </dl>\n\n <dl *ngIf=\"queryCreateContext === queryCreateContextEnum.NEW_QUERY\" class=\"govuk-summary-list govuk-!-margin-bottom-0\">\n <div class=\"govuk-summary-list__row\">\n <dt class=\"govuk-summary-list__key\">\n {{ 'Is the query hearing related?' | rpxTranslate }}\n </dt>\n <dd class=\"govuk-summary-list__value\">\n <ng-container *ngIf=\"formGroup.get('isHearingRelated')?.value === true; else isHearingRelatedFalse\">\n {{ 'Is the query hearing related?' | rpxTranslate: null : 'Yes' }}\n </ng-container>\n <ng-template #isHearingRelatedFalse>\n {{ 'Is the query hearing related?' | rpxTranslate: null : 'No' }}\n </ng-template>\n </dd>\n <dd class=\"govuk-summary-list__actions\">\n <a href=\"javascript:void(0)\" class=\"govuk-link\" (click)=\"goBack()\">\n {{ 'Change' | rpxTranslate }}\n </a>\n </dd>\n </div>\n\n <div *ngIf=\"formGroup.get('isHearingRelated')?.value\" class=\"govuk-summary-list__row\">\n <dt class=\"govuk-summary-list__key\">\n {{ queryCreateContext === queryCreateContextEnum.NEW_QUERY\n ? 'What is the date of the hearing?'\n : 'What is the date of the hearing your query is related to?' | rpxTranslate }}\n </dt>\n <dd class=\"govuk-summary-list__value\">\n {{ formGroup.get('hearingDate')?.value | date: 'dd MMM yyyy' }}\n </dd>\n <dd class=\"govuk-summary-list__actions\">\n <a href=\"javascript:void(0)\" class=\"govuk-link\" (click)=\"goBack()\">\n {{ 'Change' | rpxTranslate }}\n </a>\n </dd>\n </div>\n </dl>\n <dl class=\"govuk-summary-list govuk-!-margin-bottom-0\" *ngIf=\"this.formGroup.get('attachments').value.length > 0\">\n <div class=\"govuk-summary-list__row\">\n <dt class=\"govuk-summary-list__key\">\n {{ queryCreateContext === queryCreateContextEnum.NEW_QUERY ? 'Upload a file to the query' : 'Document attached' | rpxTranslate }}\n </dt>\n <dd class=\"govuk-summary-list__value govuk-summary-list__value--documentAttached\">\n <ccd-query-attachments-read\n *ngIf=\"this.formGroup.get('attachments').value\"\n [attachments]=\"attachments\"\n >\n </ccd-query-attachments-read>\n </dd>\n <dd class=\"govuk-summary-list__actions\">\n <a href=\"javascript:void(0)\" class=\"govuk-link\" (click)=\"goBack()\">\n {{ 'Change' | rpxTranslate }}\n </a>\n </dd>\n </div>\n </dl>\n\n <dl *ngIf=\"queryCreateContext === queryCreateContextEnum.RESPOND\" class=\"govuk-summary-list govuk-!-margin-bottom-0\">\n <div class=\"govuk-summary-list__row\">\n <dt class=\"govuk-summary-list__key\">\n {{ 'Closing the query' | rpxTranslate }}\n </dt>\n <dd class=\"govuk-summary-list__value\">\n {{ formGroup.get('closeQuery')?.value ? 'I want to close this query' : 'No answer' | rpxTranslate }}\n </dd>\n <dd class=\"govuk-summary-list__actions\">\n <a href=\"javascript:void(0)\" class=\"govuk-link\" (click)=\"goBack()\">\n {{ 'Change' | rpxTranslate }}\n </a>\n </dd>\n </div>\n </dl>\n\n <br>\n\n <div>\n <button class=\"govuk-button govuk-button--secondary govuk-!-margin-right-3\" data-module=\"govuk-button\"\n (click)=\"goBack()\">\n {{ 'Previous' | rpxTranslate }}\n </button>\n <button class=\"govuk-button\" data-module=\"govuk-button\" type=\"submit\" (click)=\"submit()\">\n {{ 'Submit' | rpxTranslate }}\n </button>\n </div>\n </div>\n\n <ccd-query-event-completion [eventCompletionParams]=\"eventCompletionParams\"> \n </ccd-query-event-completion>\n</div>\n", styles: [".govuk-summary-list__value--documentAttached{vertical-align:middle}\n"] }]
|
|
21816
|
+
}], () => [{ type: i1$1.ActivatedRoute }, { type: i1$1.Router }, { type: CasesService }, { type: CaseNotifier }, { type: WorkAllocationService }, { type: QualifyingQuestionService }, { type: QueryManagementService }, { type: ErrorNotifierService }, { type: AlertService }], { formGroup: [{
|
|
21787
21817
|
type: Input
|
|
21788
21818
|
}], queryItem: [{
|
|
21789
21819
|
type: Input
|
|
@@ -21791,6 +21821,8 @@ class QueryCheckYourAnswersComponent {
|
|
|
21791
21821
|
type: Input
|
|
21792
21822
|
}], eventData: [{
|
|
21793
21823
|
type: Input
|
|
21824
|
+
}], qmCaseQueriesCollectionData: [{
|
|
21825
|
+
type: Input
|
|
21794
21826
|
}], backClicked: [{
|
|
21795
21827
|
type: Output
|
|
21796
21828
|
}], querySubmitted: [{
|
|
@@ -21798,7 +21830,7 @@ class QueryCheckYourAnswersComponent {
|
|
|
21798
21830
|
}], callbackConfirmationMessage: [{
|
|
21799
21831
|
type: Output
|
|
21800
21832
|
}] }); })();
|
|
21801
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(QueryCheckYourAnswersComponent, { className: "QueryCheckYourAnswersComponent", filePath: "lib/shared/components/palette/query-management/components/query-check-your-answers/query-check-your-answers.component.ts", lineNumber:
|
|
21833
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(QueryCheckYourAnswersComponent, { className: "QueryCheckYourAnswersComponent", filePath: "lib/shared/components/palette/query-management/components/query-check-your-answers/query-check-your-answers.component.ts", lineNumber: 31 }); })();
|
|
21802
21834
|
|
|
21803
21835
|
function QueryDetailsComponent_ng_container_0_p_1_Template(rf, ctx) { if (rf & 1) {
|
|
21804
21836
|
const _r1 = i0.ɵɵgetCurrentView();
|
|
@@ -22568,8 +22600,14 @@ class QueryWriteDateInputComponent {
|
|
|
22568
22600
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(QueryWriteDateInputComponent, { className: "QueryWriteDateInputComponent", filePath: "lib/shared/components/palette/query-management/components/query-write/query-write-date-input/query-write-date-input.component.ts", lineNumber: 15 }); })();
|
|
22569
22601
|
|
|
22570
22602
|
const _c0$C = a0 => ({ "govuk-form-group--error": a0 });
|
|
22603
|
+
function QueryWriteRaiseQueryComponent_ccd_query_case_details_header_9_Template(rf, ctx) { if (rf & 1) {
|
|
22604
|
+
i0.ɵɵelement(0, "ccd-query-case-details-header", 5);
|
|
22605
|
+
} if (rf & 2) {
|
|
22606
|
+
const ctx_r0 = i0.ɵɵnextContext();
|
|
22607
|
+
i0.ɵɵproperty("caseDetails", ctx_r0.caseDetails);
|
|
22608
|
+
} }
|
|
22571
22609
|
function QueryWriteRaiseQueryComponent_div_11_p_19_Template(rf, ctx) { if (rf & 1) {
|
|
22572
|
-
i0.ɵɵelementStart(0, "p",
|
|
22610
|
+
i0.ɵɵelementStart(0, "p", 33)(1, "span", 11);
|
|
22573
22611
|
i0.ɵɵtext(2);
|
|
22574
22612
|
i0.ɵɵpipe(3, "rpxTranslate");
|
|
22575
22613
|
i0.ɵɵelementEnd();
|
|
@@ -22577,14 +22615,14 @@ function QueryWriteRaiseQueryComponent_div_11_p_19_Template(rf, ctx) { if (rf &
|
|
|
22577
22615
|
i0.ɵɵpipe(5, "rpxTranslate");
|
|
22578
22616
|
i0.ɵɵelementEnd();
|
|
22579
22617
|
} if (rf & 2) {
|
|
22580
|
-
const
|
|
22618
|
+
const ctx_r0 = i0.ɵɵnextContext(2);
|
|
22581
22619
|
i0.ɵɵadvance(2);
|
|
22582
22620
|
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(3, 2, "Error:"));
|
|
22583
22621
|
i0.ɵɵadvance(2);
|
|
22584
|
-
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(5, 4,
|
|
22622
|
+
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(5, 4, ctx_r0.getSubjectErrorMessage()), " ");
|
|
22585
22623
|
} }
|
|
22586
22624
|
function QueryWriteRaiseQueryComponent_div_11_p_29_Template(rf, ctx) { if (rf & 1) {
|
|
22587
|
-
i0.ɵɵelementStart(0, "p",
|
|
22625
|
+
i0.ɵɵelementStart(0, "p", 34)(1, "span", 11);
|
|
22588
22626
|
i0.ɵɵtext(2);
|
|
22589
22627
|
i0.ɵɵpipe(3, "rpxTranslate");
|
|
22590
22628
|
i0.ɵɵelementEnd();
|
|
@@ -22592,14 +22630,14 @@ function QueryWriteRaiseQueryComponent_div_11_p_29_Template(rf, ctx) { if (rf &
|
|
|
22592
22630
|
i0.ɵɵpipe(5, "rpxTranslate");
|
|
22593
22631
|
i0.ɵɵelementEnd();
|
|
22594
22632
|
} if (rf & 2) {
|
|
22595
|
-
const
|
|
22633
|
+
const ctx_r0 = i0.ɵɵnextContext(2);
|
|
22596
22634
|
i0.ɵɵadvance(2);
|
|
22597
22635
|
i0.ɵɵtextInterpolate1("", i0.ɵɵpipeBind1(3, 2, "Error:"), " ");
|
|
22598
22636
|
i0.ɵɵadvance(2);
|
|
22599
|
-
i0.ɵɵtextInterpolate1("", i0.ɵɵpipeBind1(5, 4,
|
|
22637
|
+
i0.ɵɵtextInterpolate1("", i0.ɵɵpipeBind1(5, 4, ctx_r0.raiseQueryErrorMessage.QUERY_BODY), " ");
|
|
22600
22638
|
} }
|
|
22601
22639
|
function QueryWriteRaiseQueryComponent_div_11_p_38_Template(rf, ctx) { if (rf & 1) {
|
|
22602
|
-
i0.ɵɵelementStart(0, "p",
|
|
22640
|
+
i0.ɵɵelementStart(0, "p", 35)(1, "span", 11);
|
|
22603
22641
|
i0.ɵɵtext(2);
|
|
22604
22642
|
i0.ɵɵpipe(3, "rpxTranslate");
|
|
22605
22643
|
i0.ɵɵelementEnd();
|
|
@@ -22607,14 +22645,14 @@ function QueryWriteRaiseQueryComponent_div_11_p_38_Template(rf, ctx) { if (rf &
|
|
|
22607
22645
|
i0.ɵɵpipe(5, "rpxTranslate");
|
|
22608
22646
|
i0.ɵɵelementEnd();
|
|
22609
22647
|
} if (rf & 2) {
|
|
22610
|
-
const
|
|
22648
|
+
const ctx_r0 = i0.ɵɵnextContext(2);
|
|
22611
22649
|
i0.ɵɵadvance(2);
|
|
22612
22650
|
i0.ɵɵtextInterpolate1("", i0.ɵɵpipeBind1(3, 2, "Error:"), " ");
|
|
22613
22651
|
i0.ɵɵadvance(2);
|
|
22614
|
-
i0.ɵɵtextInterpolate1("", i0.ɵɵpipeBind1(5, 4,
|
|
22652
|
+
i0.ɵɵtextInterpolate1("", i0.ɵɵpipeBind1(5, 4, ctx_r0.raiseQueryErrorMessage.QUERY_HEARING_RELATED), " ");
|
|
22615
22653
|
} }
|
|
22616
22654
|
function QueryWriteRaiseQueryComponent_div_11_ng_container_50_p_7_Template(rf, ctx) { if (rf & 1) {
|
|
22617
|
-
i0.ɵɵelementStart(0, "p",
|
|
22655
|
+
i0.ɵɵelementStart(0, "p", 41)(1, "span", 11);
|
|
22618
22656
|
i0.ɵɵtext(2);
|
|
22619
22657
|
i0.ɵɵpipe(3, "rpxTranslate");
|
|
22620
22658
|
i0.ɵɵelementEnd();
|
|
@@ -22622,134 +22660,158 @@ function QueryWriteRaiseQueryComponent_div_11_ng_container_50_p_7_Template(rf, c
|
|
|
22622
22660
|
i0.ɵɵpipe(5, "rpxTranslate");
|
|
22623
22661
|
i0.ɵɵelementEnd();
|
|
22624
22662
|
} if (rf & 2) {
|
|
22625
|
-
const
|
|
22663
|
+
const ctx_r0 = i0.ɵɵnextContext(3);
|
|
22626
22664
|
i0.ɵɵadvance(2);
|
|
22627
22665
|
i0.ɵɵtextInterpolate1("", i0.ɵɵpipeBind1(3, 2, "Error:"), " ");
|
|
22628
22666
|
i0.ɵɵadvance(2);
|
|
22629
|
-
i0.ɵɵtextInterpolate1("", i0.ɵɵpipeBind1(5, 4,
|
|
22667
|
+
i0.ɵɵtextInterpolate1("", i0.ɵɵpipeBind1(5, 4, ctx_r0.raiseQueryErrorMessage.QUERY_HEARING_DATE), " ");
|
|
22630
22668
|
} }
|
|
22631
22669
|
function QueryWriteRaiseQueryComponent_div_11_ng_container_50_Template(rf, ctx) { if (rf & 1) {
|
|
22632
22670
|
i0.ɵɵelementContainerStart(0);
|
|
22633
|
-
i0.ɵɵelementStart(1, "div",
|
|
22671
|
+
i0.ɵɵelementStart(1, "div", 36)(2, "fieldset", 37)(3, "legend")(4, "label", 38);
|
|
22634
22672
|
i0.ɵɵtext(5);
|
|
22635
22673
|
i0.ɵɵpipe(6, "rpxTranslate");
|
|
22636
22674
|
i0.ɵɵelementEnd()();
|
|
22637
|
-
i0.ɵɵtemplate(7, QueryWriteRaiseQueryComponent_div_11_ng_container_50_p_7_Template, 6, 6, "p",
|
|
22638
|
-
i0.ɵɵelement(8, "ccd-query-write-date-input",
|
|
22675
|
+
i0.ɵɵtemplate(7, QueryWriteRaiseQueryComponent_div_11_ng_container_50_p_7_Template, 6, 6, "p", 39);
|
|
22676
|
+
i0.ɵɵelement(8, "ccd-query-write-date-input", 40);
|
|
22639
22677
|
i0.ɵɵelementEnd()();
|
|
22640
22678
|
i0.ɵɵelementContainerEnd();
|
|
22641
22679
|
} if (rf & 2) {
|
|
22642
|
-
const
|
|
22680
|
+
const ctx_r0 = i0.ɵɵnextContext(2);
|
|
22643
22681
|
i0.ɵɵadvance();
|
|
22644
|
-
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(5, _c0$C,
|
|
22682
|
+
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(5, _c0$C, ctx_r0.submitted && ctx_r0.formGroup.get("isHearingRelated").value === true && ctx_r0.formGroup.get("hearingDate").value === null));
|
|
22645
22683
|
i0.ɵɵadvance(4);
|
|
22646
22684
|
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(6, 3, "What is the date of the hearing?"), " ");
|
|
22647
22685
|
i0.ɵɵadvance(2);
|
|
22648
|
-
i0.ɵɵproperty("ngIf",
|
|
22686
|
+
i0.ɵɵproperty("ngIf", ctx_r0.submitted && ctx_r0.formGroup.get("isHearingRelated").value === true && ctx_r0.formGroup.get("hearingDate").value === null);
|
|
22649
22687
|
} }
|
|
22650
22688
|
function QueryWriteRaiseQueryComponent_div_11_Template(rf, ctx) { if (rf & 1) {
|
|
22651
|
-
const
|
|
22652
|
-
i0.ɵɵelementStart(0, "div",
|
|
22689
|
+
const _r2 = i0.ɵɵgetCurrentView();
|
|
22690
|
+
i0.ɵɵelementStart(0, "div", 6)(1, "div", 7)(2, "div")(3, "div", 8)(4, "span", 9);
|
|
22653
22691
|
i0.ɵɵtext(5, "!");
|
|
22654
22692
|
i0.ɵɵelementEnd();
|
|
22655
|
-
i0.ɵɵelementStart(6, "strong",
|
|
22693
|
+
i0.ɵɵelementStart(6, "strong", 10)(7, "span", 11);
|
|
22656
22694
|
i0.ɵɵtext(8, "Warning");
|
|
22657
22695
|
i0.ɵɵelementEnd();
|
|
22658
|
-
i0.ɵɵelement(9, "ccd-markdown",
|
|
22696
|
+
i0.ɵɵelement(9, "ccd-markdown", 12);
|
|
22659
22697
|
i0.ɵɵpipe(10, "rpxTranslate");
|
|
22660
22698
|
i0.ɵɵelementEnd()();
|
|
22661
|
-
i0.ɵɵelementStart(11, "div",
|
|
22699
|
+
i0.ɵɵelementStart(11, "div", 13)(12, "div", 14)(13, "label", 15);
|
|
22662
22700
|
i0.ɵɵtext(14);
|
|
22663
22701
|
i0.ɵɵpipe(15, "rpxTranslate");
|
|
22664
22702
|
i0.ɵɵelementEnd()();
|
|
22665
|
-
i0.ɵɵelementStart(16, "div",
|
|
22703
|
+
i0.ɵɵelementStart(16, "div", 16);
|
|
22666
22704
|
i0.ɵɵtext(17);
|
|
22667
22705
|
i0.ɵɵpipe(18, "rpxTranslate");
|
|
22668
22706
|
i0.ɵɵelementEnd();
|
|
22669
|
-
i0.ɵɵtemplate(19, QueryWriteRaiseQueryComponent_div_11_p_19_Template, 6, 6, "p",
|
|
22670
|
-
i0.ɵɵelementStart(20, "input",
|
|
22671
|
-
i0.ɵɵlistener("input", function QueryWriteRaiseQueryComponent_div_11_Template_input_input_20_listener() { i0.ɵɵrestoreView(
|
|
22707
|
+
i0.ɵɵtemplate(19, QueryWriteRaiseQueryComponent_div_11_p_19_Template, 6, 6, "p", 17);
|
|
22708
|
+
i0.ɵɵelementStart(20, "input", 18);
|
|
22709
|
+
i0.ɵɵlistener("input", function QueryWriteRaiseQueryComponent_div_11_Template_input_input_20_listener() { i0.ɵɵrestoreView(_r2); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.onSubjectInput()); });
|
|
22672
22710
|
i0.ɵɵelementEnd()();
|
|
22673
|
-
i0.ɵɵelementStart(21, "div",
|
|
22711
|
+
i0.ɵɵelementStart(21, "div", 13)(22, "div", 14)(23, "label", 19);
|
|
22674
22712
|
i0.ɵɵtext(24);
|
|
22675
22713
|
i0.ɵɵpipe(25, "rpxTranslate");
|
|
22676
22714
|
i0.ɵɵelementEnd()();
|
|
22677
|
-
i0.ɵɵelementStart(26, "div",
|
|
22715
|
+
i0.ɵɵelementStart(26, "div", 20);
|
|
22678
22716
|
i0.ɵɵtext(27);
|
|
22679
22717
|
i0.ɵɵpipe(28, "rpxTranslate");
|
|
22680
22718
|
i0.ɵɵelementEnd();
|
|
22681
|
-
i0.ɵɵtemplate(29, QueryWriteRaiseQueryComponent_div_11_p_29_Template, 6, 6, "p",
|
|
22682
|
-
i0.ɵɵelementStart(30, "textarea",
|
|
22719
|
+
i0.ɵɵtemplate(29, QueryWriteRaiseQueryComponent_div_11_p_29_Template, 6, 6, "p", 21);
|
|
22720
|
+
i0.ɵɵelementStart(30, "textarea", 22);
|
|
22683
22721
|
i0.ɵɵtext(31, " ");
|
|
22684
22722
|
i0.ɵɵelementEnd()();
|
|
22685
|
-
i0.ɵɵelementStart(32, "div",
|
|
22723
|
+
i0.ɵɵelementStart(32, "div", 13)(33, "fieldset", 23)(34, "legend")(35, "label", 24);
|
|
22686
22724
|
i0.ɵɵtext(36);
|
|
22687
22725
|
i0.ɵɵpipe(37, "rpxTranslate");
|
|
22688
22726
|
i0.ɵɵelementEnd()();
|
|
22689
|
-
i0.ɵɵtemplate(38, QueryWriteRaiseQueryComponent_div_11_p_38_Template, 6, 6, "p",
|
|
22690
|
-
i0.ɵɵelementStart(39, "div",
|
|
22691
|
-
i0.ɵɵelement(41, "input",
|
|
22692
|
-
i0.ɵɵelementStart(42, "label",
|
|
22727
|
+
i0.ɵɵtemplate(38, QueryWriteRaiseQueryComponent_div_11_p_38_Template, 6, 6, "p", 25);
|
|
22728
|
+
i0.ɵɵelementStart(39, "div", 26)(40, "div", 27);
|
|
22729
|
+
i0.ɵɵelement(41, "input", 28);
|
|
22730
|
+
i0.ɵɵelementStart(42, "label", 29);
|
|
22693
22731
|
i0.ɵɵtext(43);
|
|
22694
22732
|
i0.ɵɵpipe(44, "rpxTranslate");
|
|
22695
22733
|
i0.ɵɵelementEnd()();
|
|
22696
|
-
i0.ɵɵelementStart(45, "div",
|
|
22697
|
-
i0.ɵɵelement(46, "input",
|
|
22698
|
-
i0.ɵɵelementStart(47, "label",
|
|
22734
|
+
i0.ɵɵelementStart(45, "div", 27);
|
|
22735
|
+
i0.ɵɵelement(46, "input", 30);
|
|
22736
|
+
i0.ɵɵelementStart(47, "label", 31);
|
|
22699
22737
|
i0.ɵɵtext(48);
|
|
22700
22738
|
i0.ɵɵpipe(49, "rpxTranslate");
|
|
22701
22739
|
i0.ɵɵelementEnd()()()();
|
|
22702
|
-
i0.ɵɵtemplate(50, QueryWriteRaiseQueryComponent_div_11_ng_container_50_Template, 9, 7, "ng-container",
|
|
22740
|
+
i0.ɵɵtemplate(50, QueryWriteRaiseQueryComponent_div_11_ng_container_50_Template, 9, 7, "ng-container", 32);
|
|
22703
22741
|
i0.ɵɵelementEnd()()()();
|
|
22704
22742
|
} if (rf & 2) {
|
|
22705
|
-
const
|
|
22743
|
+
const ctx_r0 = i0.ɵɵnextContext();
|
|
22706
22744
|
i0.ɵɵadvance();
|
|
22707
|
-
i0.ɵɵproperty("formGroup",
|
|
22745
|
+
i0.ɵɵproperty("formGroup", ctx_r0.formGroup);
|
|
22708
22746
|
i0.ɵɵadvance(8);
|
|
22709
|
-
i0.ɵɵproperty("content", i0.ɵɵpipeBind1(10, 23,
|
|
22747
|
+
i0.ɵɵproperty("content", i0.ɵɵpipeBind1(10, 23, ctx_r0.serviceMessage));
|
|
22710
22748
|
i0.ɵɵadvance(2);
|
|
22711
|
-
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(43, _c0$C,
|
|
22749
|
+
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(43, _c0$C, ctx_r0.submitted && ctx_r0.formGroup.get("subject").hasError("required")));
|
|
22712
22750
|
i0.ɵɵadvance(3);
|
|
22713
22751
|
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(15, 25, "Query subject"), " ");
|
|
22714
22752
|
i0.ɵɵadvance(3);
|
|
22715
22753
|
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(18, 27, "The subject should be a summary of your query"), " ");
|
|
22716
22754
|
i0.ɵɵadvance(2);
|
|
22717
|
-
i0.ɵɵproperty("ngIf",
|
|
22755
|
+
i0.ɵɵproperty("ngIf", ctx_r0.submitted && (ctx_r0.formGroup.get("subject").hasError("required") || ctx_r0.formGroup.get("subject").hasError("maxlength")));
|
|
22718
22756
|
i0.ɵɵadvance(2);
|
|
22719
|
-
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(45, _c0$C,
|
|
22757
|
+
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(45, _c0$C, ctx_r0.submitted && ctx_r0.formGroup.get("body").hasError("required")));
|
|
22720
22758
|
i0.ɵɵadvance(3);
|
|
22721
22759
|
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(25, 29, "Query detail"), " ");
|
|
22722
22760
|
i0.ɵɵadvance(3);
|
|
22723
22761
|
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(28, 31, "Include as many details as possible so case workers can respond to your query"), " ");
|
|
22724
22762
|
i0.ɵɵadvance(2);
|
|
22725
|
-
i0.ɵɵproperty("ngIf",
|
|
22763
|
+
i0.ɵɵproperty("ngIf", ctx_r0.submitted && ctx_r0.formGroup.get("body").hasError("required"));
|
|
22726
22764
|
i0.ɵɵadvance();
|
|
22727
|
-
i0.ɵɵclassProp("govuk-textarea--error",
|
|
22765
|
+
i0.ɵɵclassProp("govuk-textarea--error", ctx_r0.submitted && ctx_r0.formGroup.get("body").hasError("required"));
|
|
22728
22766
|
i0.ɵɵproperty("formControlName", "body");
|
|
22729
22767
|
i0.ɵɵadvance(2);
|
|
22730
|
-
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(47, _c0$C,
|
|
22768
|
+
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(47, _c0$C, ctx_r0.submitted && ctx_r0.formGroup.get("isHearingRelated").hasError("required")));
|
|
22731
22769
|
i0.ɵɵadvance(4);
|
|
22732
22770
|
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(37, 33, "Is the query hearing related?"), " ");
|
|
22733
22771
|
i0.ɵɵadvance(2);
|
|
22734
|
-
i0.ɵɵproperty("ngIf",
|
|
22772
|
+
i0.ɵɵproperty("ngIf", ctx_r0.submitted && ctx_r0.formGroup.get("isHearingRelated").hasError("required"));
|
|
22735
22773
|
i0.ɵɵadvance(3);
|
|
22736
|
-
i0.ɵɵproperty("checked",
|
|
22774
|
+
i0.ɵɵproperty("checked", ctx_r0.formGroup.get("isHearingRelated").value === true)("value", true);
|
|
22737
22775
|
i0.ɵɵadvance(2);
|
|
22738
22776
|
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind3(44, 35, "Is the query hearing related?", null, "Yes"), " ");
|
|
22739
22777
|
i0.ɵɵadvance(3);
|
|
22740
|
-
i0.ɵɵproperty("checked",
|
|
22778
|
+
i0.ɵɵproperty("checked", ctx_r0.formGroup.get("isHearingRelated").value === false)("value", false);
|
|
22741
22779
|
i0.ɵɵadvance(2);
|
|
22742
22780
|
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind3(49, 39, "Is the query hearing related?", null, "No"), " ");
|
|
22743
22781
|
i0.ɵɵadvance(2);
|
|
22744
|
-
i0.ɵɵproperty("ngIf",
|
|
22782
|
+
i0.ɵɵproperty("ngIf", ctx_r0.formGroup.get("isHearingRelated").value);
|
|
22745
22783
|
} }
|
|
22746
22784
|
class QueryWriteRaiseQueryComponent {
|
|
22785
|
+
queryManagementService;
|
|
22786
|
+
route;
|
|
22747
22787
|
formGroup;
|
|
22748
22788
|
submitted;
|
|
22749
22789
|
caseDetails;
|
|
22750
22790
|
showForm;
|
|
22751
22791
|
serviceMessage;
|
|
22792
|
+
queryCreateContext;
|
|
22793
|
+
eventData = null;
|
|
22794
|
+
queryItem;
|
|
22795
|
+
validate;
|
|
22796
|
+
triggerSubmission;
|
|
22797
|
+
queryDataCreated = new EventEmitter();
|
|
22752
22798
|
raiseQueryErrorMessage = RaiseQueryErrorMessage;
|
|
22799
|
+
eventCompletionParams;
|
|
22800
|
+
messgaeId;
|
|
22801
|
+
constructor(queryManagementService, route) {
|
|
22802
|
+
this.queryManagementService = queryManagementService;
|
|
22803
|
+
this.route = route;
|
|
22804
|
+
}
|
|
22805
|
+
ngOnChanges() {
|
|
22806
|
+
this.messgaeId = this.route.snapshot.params.dataid;
|
|
22807
|
+
const isCollectionDataSet = this.setCaseQueriesCollectionData();
|
|
22808
|
+
if (isCollectionDataSet) {
|
|
22809
|
+
if (this.triggerSubmission) {
|
|
22810
|
+
const data = this.generateCaseQueriesCollectionData();
|
|
22811
|
+
this.queryDataCreated.emit(data);
|
|
22812
|
+
}
|
|
22813
|
+
}
|
|
22814
|
+
}
|
|
22753
22815
|
onSubjectInput() {
|
|
22754
22816
|
const control = this.formGroup.get('subject');
|
|
22755
22817
|
const value = control?.value;
|
|
@@ -22767,8 +22829,19 @@ class QueryWriteRaiseQueryComponent {
|
|
|
22767
22829
|
}
|
|
22768
22830
|
return '';
|
|
22769
22831
|
}
|
|
22770
|
-
|
|
22771
|
-
|
|
22832
|
+
setCaseQueriesCollectionData() {
|
|
22833
|
+
if (!this.eventData) {
|
|
22834
|
+
console.warn('Event data not available; skipping collection setup.');
|
|
22835
|
+
return false;
|
|
22836
|
+
}
|
|
22837
|
+
this.queryManagementService.setCaseQueriesCollectionData(this.eventData, this.queryCreateContext, this.caseDetails, this.messgaeId);
|
|
22838
|
+
return true;
|
|
22839
|
+
}
|
|
22840
|
+
generateCaseQueriesCollectionData() {
|
|
22841
|
+
return this.queryManagementService.generateCaseQueriesCollectionData(this.formGroup, this.queryCreateContext, this.queryItem, this.messgaeId);
|
|
22842
|
+
}
|
|
22843
|
+
static ɵfac = function QueryWriteRaiseQueryComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || QueryWriteRaiseQueryComponent)(i0.ɵɵdirectiveInject(QueryManagementService), i0.ɵɵdirectiveInject(i1$1.ActivatedRoute)); };
|
|
22844
|
+
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: QueryWriteRaiseQueryComponent, selectors: [["ccd-query-write-raise-query"]], inputs: { formGroup: "formGroup", submitted: "submitted", caseDetails: "caseDetails", showForm: "showForm", serviceMessage: "serviceMessage", queryCreateContext: "queryCreateContext", eventData: "eventData", queryItem: "queryItem", validate: "validate", triggerSubmission: "triggerSubmission" }, outputs: { queryDataCreated: "queryDataCreated" }, features: [i0.ɵɵNgOnChangesFeature], decls: 12, vars: 8, consts: [[1, "govuk-!-margin-bottom-6"], [1, "govuk-caption-l"], [1, "govuk-heading-l", "govuk-!-margin-bottom-4"], [3, "caseDetails", 4, "ngIf"], ["class", "govuk-!-margin-bottom-4", 4, "ngIf"], [3, "caseDetails"], [1, "govuk-!-margin-bottom-4"], [3, "formGroup"], [1, "govuk-warning-text"], ["aria-hidden", "true", 1, "govuk-warning-text__icon"], [1, "govuk-warning-text__text"], [1, "govuk-visually-hidden"], [3, "content"], [1, "govuk-form-group", 3, "ngClass"], [1, "govuk-label-wrapper"], ["for", "subject", 1, "govuk-label", "govuk-label--m", "govuk-!-font-weight-bold"], ["id", "subject-hint", 1, "govuk-hint"], ["id", "subject-error", "class", "govuk-error-message", 4, "ngIf"], ["type", "text", "id", "subject", "formControlName", "subject", "maxlength", "200", "aria-describedby", "subject-error", 1, "govuk-input", 3, "input"], ["for", "body", 1, "govuk-label", "govuk-label--m", "govuk-!-font-weight-bold"], ["id", "body-hint", 1, "govuk-hint"], ["id", "body-error", "class", "govuk-error-message", 4, "ngIf"], ["id", "body", "name", "body", "rows", "5", "aria-describedby", "body-hint body-error", 1, "govuk-textarea", 3, "formControlName"], [1, "govuk-fieldset"], [1, "govuk-label", "govuk-label--m", "govuk-!-font-weight-bold"], ["id", "isHearingRelated-error", "class", "govuk-error-message", 4, "ngIf"], ["data-module", "govuk-radios", 1, "govuk-radios", "govuk-radios--inline"], [1, "govuk-radios__item"], ["id", "isHearingRelated-yes", "name", "isHearingRelated", "type", "radio", "formControlName", "isHearingRelated", 1, "govuk-radios__input", 3, "checked", "value"], ["for", "isHearingRelated-yes", 1, "govuk-label", "govuk-radios__label"], ["id", "isHearingRelated-no", "name", "isHearingRelated", "type", "radio", "formControlName", "isHearingRelated", 1, "govuk-radios__input", 3, "checked", "value"], ["for", "isHearingRelated-no", 1, "govuk-label", "govuk-radios__label"], [4, "ngIf"], ["id", "subject-error", 1, "govuk-error-message"], ["id", "body-error", 1, "govuk-error-message"], ["id", "isHearingRelated-error", 1, "govuk-error-message"], [1, "govuk-radios__conditional", "govuk-!-margin-top-1", 3, "ngClass"], ["role", "group", 1, "govuk-fieldset"], [1, "govuk-label", "govuk-label--s"], ["id", "hearingDate-error", "class", "govuk-error-message", 4, "ngIf"], ["formControlName", "hearingDate"], ["id", "hearingDate-error", 1, "govuk-error-message"]], template: function QueryWriteRaiseQueryComponent_Template(rf, ctx) { if (rf & 1) {
|
|
22772
22845
|
i0.ɵɵelementStart(0, "div")(1, "div", 0)(2, "div", 1);
|
|
22773
22846
|
i0.ɵɵtext(3);
|
|
22774
22847
|
i0.ɵɵpipe(4, "rpxTranslate");
|
|
@@ -22778,7 +22851,7 @@ class QueryWriteRaiseQueryComponent {
|
|
|
22778
22851
|
i0.ɵɵpipe(7, "rpxTranslate");
|
|
22779
22852
|
i0.ɵɵelementEnd()();
|
|
22780
22853
|
i0.ɵɵelementStart(8, "div");
|
|
22781
|
-
i0.ɵɵ
|
|
22854
|
+
i0.ɵɵtemplate(9, QueryWriteRaiseQueryComponent_ccd_query_case_details_header_9_Template, 1, 1, "ccd-query-case-details-header", 3);
|
|
22782
22855
|
i0.ɵɵelementEnd();
|
|
22783
22856
|
i0.ɵɵelement(10, "hr");
|
|
22784
22857
|
i0.ɵɵtemplate(11, QueryWriteRaiseQueryComponent_div_11_Template, 51, 49, "div", 4);
|
|
@@ -22789,15 +22862,15 @@ class QueryWriteRaiseQueryComponent {
|
|
|
22789
22862
|
i0.ɵɵadvance(3);
|
|
22790
22863
|
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(7, 6, "Enter query details"));
|
|
22791
22864
|
i0.ɵɵadvance(3);
|
|
22792
|
-
i0.ɵɵproperty("
|
|
22865
|
+
i0.ɵɵproperty("ngIf", ctx.caseDetails);
|
|
22793
22866
|
i0.ɵɵadvance(2);
|
|
22794
22867
|
i0.ɵɵproperty("ngIf", ctx.showForm);
|
|
22795
22868
|
} }, encapsulation: 2 });
|
|
22796
22869
|
}
|
|
22797
22870
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(QueryWriteRaiseQueryComponent, [{
|
|
22798
22871
|
type: Component,
|
|
22799
|
-
args: [{ selector: 'ccd-query-write-raise-query', template: "<div>\n <div class=\"govuk-!-margin-bottom-6\">\n <div class=\"govuk-caption-l\">{{ 'Raise a query' | rpxTranslate }}</div>\n <h1 class=\"govuk-heading-l govuk-!-margin-bottom-4\">{{ 'Enter query details' | rpxTranslate }}</h1>\n </div>\n\n <div>\n <ccd-query-case-details-header [caseDetails]=\"caseDetails\"></ccd-query-case-details-header>\n </div>\n\n <hr>\n\n <div class=\"govuk-!-margin-bottom-4\" *ngIf=\"showForm\">\n <div [formGroup]=\"formGroup\">\n <div>\n <div class=\"govuk-warning-text\">\n <span class=\"govuk-warning-text__icon\" aria-hidden=\"true\">!</span>\n <strong class=\"govuk-warning-text__text\">\n <span class=\"govuk-visually-hidden\">Warning</span>\n <ccd-markdown\n [content]=\"serviceMessage | rpxTranslate\">\n </ccd-markdown>\n </strong>\n </div>\n <div class=\"govuk-form-group\" [ngClass]=\"{'govuk-form-group--error': submitted && formGroup.get('subject').hasError('required')}\">\n <div class=\"govuk-label-wrapper\">\n <label class=\"govuk-label govuk-label--m govuk-!-font-weight-bold\" for=\"subject\">\n {{ 'Query subject' | rpxTranslate }}\n </label>\n </div>\n <div id=\"subject-hint\" class=\"govuk-hint\">\n {{ 'The subject should be a summary of your query' | rpxTranslate }}\n </div>\n <p id=\"subject-error\" class=\"govuk-error-message\"\n *ngIf=\"submitted && (formGroup.get('subject').hasError('required') || formGroup.get('subject').hasError('maxlength'))\">\n <span class=\"govuk-visually-hidden\">{{ 'Error:' | rpxTranslate }}</span>\n {{ getSubjectErrorMessage() | rpxTranslate }}\n </p>\n\n <input type=\"text\"\n id=\"subject\"\n class=\"govuk-input\"\n formControlName=\"subject\"\n maxlength=\"200\"\n (input)=\"onSubjectInput()\"\n aria-describedby=\"subject-error\" />\n </div>\n\n <div class=\"govuk-form-group\"\n [ngClass]=\"{'govuk-form-group--error': submitted && formGroup.get('body').hasError('required')}\">\n <div class=\"govuk-label-wrapper\">\n <label class=\"govuk-label govuk-label--m govuk-!-font-weight-bold\" for=\"body\">\n {{ 'Query detail' | rpxTranslate }}\n </label>\n </div>\n <div id=\"body-hint\" class=\"govuk-hint\">\n {{ 'Include as many details as possible so case workers can respond to your query' | rpxTranslate }}\n </div>\n <p id=\"body-error\" class=\"govuk-error-message\"\n *ngIf=\"submitted && formGroup.get('body').hasError('required')\">\n <span class=\"govuk-visually-hidden\">{{ 'Error:' | rpxTranslate }} </span>{{ raiseQueryErrorMessage.QUERY_BODY | rpxTranslate }}\n </p>\n <textarea [formControlName]=\"'body'\"\n id=\"body\" name=\"body\" rows=\"5\"\n aria-describedby=\"body-hint body-error\"\n class=\"govuk-textarea\"\n [class.govuk-textarea--error]=\"submitted && formGroup.get('body').hasError('required')\"\n >\n </textarea>\n </div>\n\n <div class=\"govuk-form-group\"\n [ngClass]=\"{'govuk-form-group--error': submitted && formGroup.get('isHearingRelated').hasError('required')}\">\n <fieldset class=\"govuk-fieldset\">\n <legend>\n <label class=\"govuk-label govuk-label--m govuk-!-font-weight-bold\">\n {{ 'Is the query hearing related?' | rpxTranslate }}\n </label>\n </legend>\n <p id=\"isHearingRelated-error\" class=\"govuk-error-message\"\n *ngIf=\"submitted && formGroup.get('isHearingRelated').hasError('required')\">\n <span class=\"govuk-visually-hidden\">{{ 'Error:' | rpxTranslate }} </span>{{ raiseQueryErrorMessage.QUERY_HEARING_RELATED | rpxTranslate }}\n </p>\n <div class=\"govuk-radios govuk-radios--inline\" data-module=\"govuk-radios\">\n <div class=\"govuk-radios__item\">\n <input class=\"govuk-radios__input\" id=\"isHearingRelated-yes\" name=\"isHearingRelated\"\n type=\"radio\"\n formControlName=\"isHearingRelated\"\n [checked]=\"formGroup.get('isHearingRelated').value === true\" [value]=\"true\"\n >\n <label class=\"govuk-label govuk-radios__label\" for=\"isHearingRelated-yes\">\n {{ 'Is the query hearing related?' | rpxTranslate: null : 'Yes' }}\n </label>\n </div>\n <div class=\"govuk-radios__item\">\n <input class=\"govuk-radios__input\" id=\"isHearingRelated-no\" name=\"isHearingRelated\"\n type=\"radio\"\n formControlName=\"isHearingRelated\"\n [checked]=\"formGroup.get('isHearingRelated').value === false\" [value]=\"false\"\n >\n <label class=\"govuk-label govuk-radios__label\" for=\"isHearingRelated-no\">\n {{ 'Is the query hearing related?' | rpxTranslate: null : 'No' }}\n </label>\n </div>\n </div>\n </fieldset>\n\n <ng-container *ngIf=\"formGroup.get('isHearingRelated').value\">\n <div class=\"govuk-radios__conditional govuk-!-margin-top-1\"\n [ngClass]=\"{'govuk-form-group--error': submitted &&\n formGroup.get('isHearingRelated').value === true &&\n formGroup.get('hearingDate').value === null}\">\n <fieldset class=\"govuk-fieldset\" role=\"group\">\n <legend>\n <label class=\"govuk-label govuk-label--s\">\n {{ 'What is the date of the hearing?' | rpxTranslate }}\n </label>\n </legend>\n <p id=\"hearingDate-error\" class=\"govuk-error-message\"\n *ngIf=\"submitted && formGroup.get('isHearingRelated').value === true && formGroup.get('hearingDate').value === null\">\n <span class=\"govuk-visually-hidden\">{{ 'Error:' | rpxTranslate }} </span>{{ raiseQueryErrorMessage.QUERY_HEARING_DATE | rpxTranslate }}\n </p>\n <ccd-query-write-date-input formControlName=\"hearingDate\"></ccd-query-write-date-input>\n </fieldset>\n </div>\n </ng-container>\n </div>\n </div>\n </div>\n</div>\n" }]
|
|
22800
|
-
}],
|
|
22872
|
+
args: [{ selector: 'ccd-query-write-raise-query', template: "<div>\n <div class=\"govuk-!-margin-bottom-6\">\n <div class=\"govuk-caption-l\">{{ 'Raise a query' | rpxTranslate }}</div>\n <h1 class=\"govuk-heading-l govuk-!-margin-bottom-4\">{{ 'Enter query details' | rpxTranslate }}</h1>\n </div>\n\n <div>\n <ccd-query-case-details-header [caseDetails]=\"caseDetails\" *ngIf=\"caseDetails\"></ccd-query-case-details-header>\n </div>\n\n <hr>\n\n <div class=\"govuk-!-margin-bottom-4\" *ngIf=\"showForm\">\n <div [formGroup]=\"formGroup\">\n <div>\n <div class=\"govuk-warning-text\">\n <span class=\"govuk-warning-text__icon\" aria-hidden=\"true\">!</span>\n <strong class=\"govuk-warning-text__text\">\n <span class=\"govuk-visually-hidden\">Warning</span>\n <ccd-markdown\n [content]=\"serviceMessage | rpxTranslate\">\n </ccd-markdown>\n </strong>\n </div>\n <div class=\"govuk-form-group\" [ngClass]=\"{'govuk-form-group--error': submitted && formGroup.get('subject').hasError('required')}\">\n <div class=\"govuk-label-wrapper\">\n <label class=\"govuk-label govuk-label--m govuk-!-font-weight-bold\" for=\"subject\">\n {{ 'Query subject' | rpxTranslate }}\n </label>\n </div>\n <div id=\"subject-hint\" class=\"govuk-hint\">\n {{ 'The subject should be a summary of your query' | rpxTranslate }}\n </div>\n <p id=\"subject-error\" class=\"govuk-error-message\"\n *ngIf=\"submitted && (formGroup.get('subject').hasError('required') || formGroup.get('subject').hasError('maxlength'))\">\n <span class=\"govuk-visually-hidden\">{{ 'Error:' | rpxTranslate }}</span>\n {{ getSubjectErrorMessage() | rpxTranslate }}\n </p>\n\n <input type=\"text\"\n id=\"subject\"\n class=\"govuk-input\"\n formControlName=\"subject\"\n maxlength=\"200\"\n (input)=\"onSubjectInput()\"\n aria-describedby=\"subject-error\" />\n </div>\n\n <div class=\"govuk-form-group\"\n [ngClass]=\"{'govuk-form-group--error': submitted && formGroup.get('body').hasError('required')}\">\n <div class=\"govuk-label-wrapper\">\n <label class=\"govuk-label govuk-label--m govuk-!-font-weight-bold\" for=\"body\">\n {{ 'Query detail' | rpxTranslate }}\n </label>\n </div>\n <div id=\"body-hint\" class=\"govuk-hint\">\n {{ 'Include as many details as possible so case workers can respond to your query' | rpxTranslate }}\n </div>\n <p id=\"body-error\" class=\"govuk-error-message\"\n *ngIf=\"submitted && formGroup.get('body').hasError('required')\">\n <span class=\"govuk-visually-hidden\">{{ 'Error:' | rpxTranslate }} </span>{{ raiseQueryErrorMessage.QUERY_BODY | rpxTranslate }}\n </p>\n <textarea [formControlName]=\"'body'\"\n id=\"body\" name=\"body\" rows=\"5\"\n aria-describedby=\"body-hint body-error\"\n class=\"govuk-textarea\"\n [class.govuk-textarea--error]=\"submitted && formGroup.get('body').hasError('required')\"\n >\n </textarea>\n </div>\n\n <div class=\"govuk-form-group\"\n [ngClass]=\"{'govuk-form-group--error': submitted && formGroup.get('isHearingRelated').hasError('required')}\">\n <fieldset class=\"govuk-fieldset\">\n <legend>\n <label class=\"govuk-label govuk-label--m govuk-!-font-weight-bold\">\n {{ 'Is the query hearing related?' | rpxTranslate }}\n </label>\n </legend>\n <p id=\"isHearingRelated-error\" class=\"govuk-error-message\"\n *ngIf=\"submitted && formGroup.get('isHearingRelated').hasError('required')\">\n <span class=\"govuk-visually-hidden\">{{ 'Error:' | rpxTranslate }} </span>{{ raiseQueryErrorMessage.QUERY_HEARING_RELATED | rpxTranslate }}\n </p>\n <div class=\"govuk-radios govuk-radios--inline\" data-module=\"govuk-radios\">\n <div class=\"govuk-radios__item\">\n <input class=\"govuk-radios__input\" id=\"isHearingRelated-yes\" name=\"isHearingRelated\"\n type=\"radio\"\n formControlName=\"isHearingRelated\"\n [checked]=\"formGroup.get('isHearingRelated').value === true\" [value]=\"true\"\n >\n <label class=\"govuk-label govuk-radios__label\" for=\"isHearingRelated-yes\">\n {{ 'Is the query hearing related?' | rpxTranslate: null : 'Yes' }}\n </label>\n </div>\n <div class=\"govuk-radios__item\">\n <input class=\"govuk-radios__input\" id=\"isHearingRelated-no\" name=\"isHearingRelated\"\n type=\"radio\"\n formControlName=\"isHearingRelated\"\n [checked]=\"formGroup.get('isHearingRelated').value === false\" [value]=\"false\"\n >\n <label class=\"govuk-label govuk-radios__label\" for=\"isHearingRelated-no\">\n {{ 'Is the query hearing related?' | rpxTranslate: null : 'No' }}\n </label>\n </div>\n </div>\n </fieldset>\n\n <ng-container *ngIf=\"formGroup.get('isHearingRelated').value\">\n <div class=\"govuk-radios__conditional govuk-!-margin-top-1\"\n [ngClass]=\"{'govuk-form-group--error': submitted &&\n formGroup.get('isHearingRelated').value === true &&\n formGroup.get('hearingDate').value === null}\">\n <fieldset class=\"govuk-fieldset\" role=\"group\">\n <legend>\n <label class=\"govuk-label govuk-label--s\">\n {{ 'What is the date of the hearing?' | rpxTranslate }}\n </label>\n </legend>\n <p id=\"hearingDate-error\" class=\"govuk-error-message\"\n *ngIf=\"submitted && formGroup.get('isHearingRelated').value === true && formGroup.get('hearingDate').value === null\">\n <span class=\"govuk-visually-hidden\">{{ 'Error:' | rpxTranslate }} </span>{{ raiseQueryErrorMessage.QUERY_HEARING_DATE | rpxTranslate }}\n </p>\n <ccd-query-write-date-input formControlName=\"hearingDate\"></ccd-query-write-date-input>\n </fieldset>\n </div>\n </ng-container>\n </div>\n </div>\n </div>\n</div>\n" }]
|
|
22873
|
+
}], () => [{ type: QueryManagementService }, { type: i1$1.ActivatedRoute }], { formGroup: [{
|
|
22801
22874
|
type: Input
|
|
22802
22875
|
}], submitted: [{
|
|
22803
22876
|
type: Input
|
|
@@ -22807,11 +22880,29 @@ class QueryWriteRaiseQueryComponent {
|
|
|
22807
22880
|
type: Input
|
|
22808
22881
|
}], serviceMessage: [{
|
|
22809
22882
|
type: Input
|
|
22883
|
+
}], queryCreateContext: [{
|
|
22884
|
+
type: Input
|
|
22885
|
+
}], eventData: [{
|
|
22886
|
+
type: Input
|
|
22887
|
+
}], queryItem: [{
|
|
22888
|
+
type: Input
|
|
22889
|
+
}], validate: [{
|
|
22890
|
+
type: Input
|
|
22891
|
+
}], triggerSubmission: [{
|
|
22892
|
+
type: Input
|
|
22893
|
+
}], queryDataCreated: [{
|
|
22894
|
+
type: Output
|
|
22810
22895
|
}] }); })();
|
|
22811
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(QueryWriteRaiseQueryComponent, { className: "QueryWriteRaiseQueryComponent", filePath: "lib/shared/components/palette/query-management/components/query-write/query-write-raise-query/query-write-raise-query.component.ts", lineNumber:
|
|
22896
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(QueryWriteRaiseQueryComponent, { className: "QueryWriteRaiseQueryComponent", filePath: "lib/shared/components/palette/query-management/components/query-write/query-write-raise-query/query-write-raise-query.component.ts", lineNumber: 19 }); })();
|
|
22812
22897
|
|
|
22898
|
+
function QueryWriteRespondToQueryComponent_ccd_query_case_details_header_9_Template(rf, ctx) { if (rf & 1) {
|
|
22899
|
+
i0.ɵɵelement(0, "ccd-query-case-details-header", 8);
|
|
22900
|
+
} if (rf & 2) {
|
|
22901
|
+
const ctx_r0 = i0.ɵɵnextContext();
|
|
22902
|
+
i0.ɵɵproperty("caseDetails", ctx_r0.caseDetails);
|
|
22903
|
+
} }
|
|
22813
22904
|
function QueryWriteRespondToQueryComponent_div_12_div_1_p_10_Template(rf, ctx) { if (rf & 1) {
|
|
22814
|
-
i0.ɵɵelementStart(0, "p",
|
|
22905
|
+
i0.ɵɵelementStart(0, "p", 17)(1, "span", 18);
|
|
22815
22906
|
i0.ɵɵtext(2);
|
|
22816
22907
|
i0.ɵɵpipe(3, "rpxTranslate");
|
|
22817
22908
|
i0.ɵɵelementEnd();
|
|
@@ -22826,16 +22917,16 @@ function QueryWriteRespondToQueryComponent_div_12_div_1_p_10_Template(rf, ctx) {
|
|
|
22826
22917
|
i0.ɵɵtextInterpolate1("", ctx_r0.queryCreateContext === ctx_r0.queryCreateContextEnum.RESPOND ? ctx_r0.raiseQueryErrorMessages.RESPOND_QUERY_BODY : i0.ɵɵpipeBind1(5, 4, ctx_r0.raiseQueryErrorMessages.QUERY_BODY), " ");
|
|
22827
22918
|
} }
|
|
22828
22919
|
function QueryWriteRespondToQueryComponent_div_12_div_1_Template(rf, ctx) { if (rf & 1) {
|
|
22829
|
-
i0.ɵɵelementStart(0, "div")(1, "h1",
|
|
22920
|
+
i0.ɵɵelementStart(0, "div")(1, "h1", 10);
|
|
22830
22921
|
i0.ɵɵtext(2);
|
|
22831
22922
|
i0.ɵɵpipe(3, "rpxTranslate");
|
|
22832
22923
|
i0.ɵɵelementEnd();
|
|
22833
|
-
i0.ɵɵelementStart(4, "div",
|
|
22924
|
+
i0.ɵɵelementStart(4, "div", 11)(5, "div", 12)(6, "div", 13)(7, "label", 14);
|
|
22834
22925
|
i0.ɵɵtext(8);
|
|
22835
22926
|
i0.ɵɵpipe(9, "rpxTranslate");
|
|
22836
22927
|
i0.ɵɵelementEnd()();
|
|
22837
|
-
i0.ɵɵtemplate(10, QueryWriteRespondToQueryComponent_div_12_div_1_p_10_Template, 6, 6, "p",
|
|
22838
|
-
i0.ɵɵelementStart(11, "textarea",
|
|
22928
|
+
i0.ɵɵtemplate(10, QueryWriteRespondToQueryComponent_div_12_div_1_p_10_Template, 6, 6, "p", 15);
|
|
22929
|
+
i0.ɵɵelementStart(11, "textarea", 16);
|
|
22839
22930
|
i0.ɵɵtext(12, " ");
|
|
22840
22931
|
i0.ɵɵelementEnd()()()();
|
|
22841
22932
|
} if (rf & 2) {
|
|
@@ -22858,7 +22949,7 @@ function QueryWriteRespondToQueryComponent_div_12_div_1_Template(rf, ctx) { if (
|
|
|
22858
22949
|
i0.ɵɵproperty("formControlName", "body");
|
|
22859
22950
|
} }
|
|
22860
22951
|
function QueryWriteRespondToQueryComponent_div_12_Template(rf, ctx) { if (rf & 1) {
|
|
22861
|
-
i0.ɵɵelementStart(0, "div",
|
|
22952
|
+
i0.ɵɵelementStart(0, "div", 9);
|
|
22862
22953
|
i0.ɵɵtemplate(1, QueryWriteRespondToQueryComponent_div_12_div_1_Template, 13, 13, "div", 7);
|
|
22863
22954
|
i0.ɵɵelementEnd();
|
|
22864
22955
|
} if (rf & 2) {
|
|
@@ -22867,14 +22958,14 @@ function QueryWriteRespondToQueryComponent_div_12_Template(rf, ctx) { if (rf & 1
|
|
|
22867
22958
|
i0.ɵɵproperty("ngIf", !ctx_r0.hasRespondedToQuery);
|
|
22868
22959
|
} }
|
|
22869
22960
|
function QueryWriteRespondToQueryComponent_ng_container_13_ccd_close_query_1_Template(rf, ctx) { if (rf & 1) {
|
|
22870
|
-
i0.ɵɵelement(0, "ccd-close-query",
|
|
22961
|
+
i0.ɵɵelement(0, "ccd-close-query", 11);
|
|
22871
22962
|
} if (rf & 2) {
|
|
22872
22963
|
const ctx_r0 = i0.ɵɵnextContext(2);
|
|
22873
22964
|
i0.ɵɵproperty("formGroup", ctx_r0.formGroup);
|
|
22874
22965
|
} }
|
|
22875
22966
|
function QueryWriteRespondToQueryComponent_ng_container_13_Template(rf, ctx) { if (rf & 1) {
|
|
22876
22967
|
i0.ɵɵelementContainerStart(0);
|
|
22877
|
-
i0.ɵɵtemplate(1, QueryWriteRespondToQueryComponent_ng_container_13_ccd_close_query_1_Template, 1, 1, "ccd-close-query",
|
|
22968
|
+
i0.ɵɵtemplate(1, QueryWriteRespondToQueryComponent_ng_container_13_ccd_close_query_1_Template, 1, 1, "ccd-close-query", 19);
|
|
22878
22969
|
i0.ɵɵelementContainerEnd();
|
|
22879
22970
|
} if (rf & 2) {
|
|
22880
22971
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
@@ -22884,12 +22975,16 @@ function QueryWriteRespondToQueryComponent_ng_container_13_Template(rf, ctx) { i
|
|
|
22884
22975
|
class QueryWriteRespondToQueryComponent {
|
|
22885
22976
|
caseNotifier;
|
|
22886
22977
|
route;
|
|
22978
|
+
queryManagementService;
|
|
22887
22979
|
queryItem;
|
|
22888
22980
|
formGroup;
|
|
22889
22981
|
queryCreateContext;
|
|
22890
22982
|
submitted = false;
|
|
22891
22983
|
caseQueriesCollections;
|
|
22892
22984
|
showForm;
|
|
22985
|
+
triggerSubmission;
|
|
22986
|
+
eventData = null;
|
|
22987
|
+
queryDataCreated = new EventEmitter();
|
|
22893
22988
|
hasRespondedToQueryTask = new EventEmitter();
|
|
22894
22989
|
queryCreateContextEnum = QueryCreateContext;
|
|
22895
22990
|
raiseQueryErrorMessages = RaiseQueryErrorMessage;
|
|
@@ -22899,11 +22994,13 @@ class QueryWriteRespondToQueryComponent {
|
|
|
22899
22994
|
queryResponseStatus;
|
|
22900
22995
|
queryListData;
|
|
22901
22996
|
hasRespondedToQuery = false;
|
|
22997
|
+
messgaeId;
|
|
22902
22998
|
static QUERY_ITEM_RESPOND = '3';
|
|
22903
22999
|
static QUERY_ITEM_FOLLOWUP = '4';
|
|
22904
|
-
constructor(caseNotifier, route) {
|
|
23000
|
+
constructor(caseNotifier, route, queryManagementService) {
|
|
22905
23001
|
this.caseNotifier = caseNotifier;
|
|
22906
23002
|
this.route = route;
|
|
23003
|
+
this.queryManagementService = queryManagementService;
|
|
22907
23004
|
}
|
|
22908
23005
|
ngOnInit() {
|
|
22909
23006
|
this.queryItemId = this.route.snapshot.params.qid;
|
|
@@ -22945,13 +23042,31 @@ class QueryWriteRespondToQueryComponent {
|
|
|
22945
23042
|
: matchingMessage?.id;
|
|
22946
23043
|
this.queryListData = queryWithChildren?.queries.find((query) => query?.id === targetId);
|
|
22947
23044
|
this.queryResponseStatus = this.queryListData?.responseStatus;
|
|
23045
|
+
const isCollectionDataSet = this.setCaseQueriesCollectionData();
|
|
23046
|
+
if (isCollectionDataSet) {
|
|
23047
|
+
if (this.triggerSubmission) {
|
|
23048
|
+
const data = this.generateCaseQueriesCollectionData();
|
|
23049
|
+
this.queryDataCreated.emit(data);
|
|
23050
|
+
}
|
|
23051
|
+
}
|
|
22948
23052
|
}
|
|
22949
23053
|
hasResponded(value) {
|
|
22950
23054
|
this.hasRespondedToQuery = value;
|
|
22951
23055
|
this.hasRespondedToQueryTask.emit(value);
|
|
22952
23056
|
}
|
|
22953
|
-
|
|
22954
|
-
|
|
23057
|
+
setCaseQueriesCollectionData() {
|
|
23058
|
+
if (!this.eventData) {
|
|
23059
|
+
console.warn('Event data not available; skipping collection setup.');
|
|
23060
|
+
return false;
|
|
23061
|
+
}
|
|
23062
|
+
this.queryManagementService.setCaseQueriesCollectionData(this.eventData, this.queryCreateContext, this.caseDetails, this.messgaeId);
|
|
23063
|
+
return true;
|
|
23064
|
+
}
|
|
23065
|
+
generateCaseQueriesCollectionData() {
|
|
23066
|
+
return this.queryManagementService.generateCaseQueriesCollectionData(this.formGroup, this.queryCreateContext, this.queryItem, this.messgaeId);
|
|
23067
|
+
}
|
|
23068
|
+
static ɵfac = function QueryWriteRespondToQueryComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || QueryWriteRespondToQueryComponent)(i0.ɵɵdirectiveInject(CaseNotifier), i0.ɵɵdirectiveInject(i1$1.ActivatedRoute), i0.ɵɵdirectiveInject(QueryManagementService)); };
|
|
23069
|
+
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: QueryWriteRespondToQueryComponent, selectors: [["ccd-query-write-respond-to-query"]], inputs: { queryItem: "queryItem", formGroup: "formGroup", queryCreateContext: "queryCreateContext", submitted: "submitted", caseQueriesCollections: "caseQueriesCollections", showForm: "showForm", triggerSubmission: "triggerSubmission", eventData: "eventData" }, outputs: { queryDataCreated: "queryDataCreated", hasRespondedToQueryTask: "hasRespondedToQueryTask" }, features: [i0.ɵɵNgOnChangesFeature], decls: 14, vars: 11, consts: [[1, "govuk-!-margin-bottom-6"], [1, "govuk-caption-l"], [1, "govuk-heading-l", "govuk-!-margin-bottom-0"], [1, "govuk-!-margin-bottom-4"], [3, "caseDetails", 4, "ngIf"], [3, "hasResponded", "query", "queryResponseStatus"], ["class", "query-respond", 4, "ngIf"], [4, "ngIf"], [3, "caseDetails"], [1, "query-respond"], [1, "govuk-heading-m"], [3, "formGroup"], [1, "govuk-form-group", "body-textarea"], [1, "govuk-label-wrapper"], ["for", "body", 1, "govuk-label", "govuk-label--m", "govuk-!-font-weight-bold"], ["id", "body-error", "class", "govuk-error-message", 4, "ngIf"], ["id", "body", "name", "body", "rows", "5", "aria-describedby", "body-hint body-error", 1, "govuk-textarea", 3, "formControlName"], ["id", "body-error", 1, "govuk-error-message"], [1, "govuk-visually-hidden"], [3, "formGroup", 4, "ngIf"]], template: function QueryWriteRespondToQueryComponent_Template(rf, ctx) { if (rf & 1) {
|
|
22955
23070
|
i0.ɵɵelementStart(0, "div", 0)(1, "div", 0)(2, "div", 1);
|
|
22956
23071
|
i0.ɵɵtext(3);
|
|
22957
23072
|
i0.ɵɵpipe(4, "rpxTranslate");
|
|
@@ -22961,7 +23076,7 @@ class QueryWriteRespondToQueryComponent {
|
|
|
22961
23076
|
i0.ɵɵpipe(7, "rpxTranslate");
|
|
22962
23077
|
i0.ɵɵelementEnd()();
|
|
22963
23078
|
i0.ɵɵelementStart(8, "div", 3);
|
|
22964
|
-
i0.ɵɵ
|
|
23079
|
+
i0.ɵɵtemplate(9, QueryWriteRespondToQueryComponent_ccd_query_case_details_header_9_Template, 1, 1, "ccd-query-case-details-header", 4);
|
|
22965
23080
|
i0.ɵɵelementEnd();
|
|
22966
23081
|
i0.ɵɵelementStart(10, "div")(11, "ccd-query-details", 5);
|
|
22967
23082
|
i0.ɵɵlistener("hasResponded", function QueryWriteRespondToQueryComponent_Template_ccd_query_details_hasResponded_11_listener($event) { return ctx.hasResponded($event); });
|
|
@@ -22973,7 +23088,7 @@ class QueryWriteRespondToQueryComponent {
|
|
|
22973
23088
|
i0.ɵɵadvance(3);
|
|
22974
23089
|
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(7, 9, "Query details"));
|
|
22975
23090
|
i0.ɵɵadvance(3);
|
|
22976
|
-
i0.ɵɵproperty("
|
|
23091
|
+
i0.ɵɵproperty("ngIf", ctx.caseDetails);
|
|
22977
23092
|
i0.ɵɵadvance(2);
|
|
22978
23093
|
i0.ɵɵproperty("query", ctx.queryListData)("queryResponseStatus", ctx.queryResponseStatus);
|
|
22979
23094
|
i0.ɵɵadvance();
|
|
@@ -22984,8 +23099,8 @@ class QueryWriteRespondToQueryComponent {
|
|
|
22984
23099
|
}
|
|
22985
23100
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(QueryWriteRespondToQueryComponent, [{
|
|
22986
23101
|
type: Component,
|
|
22987
|
-
args: [{ selector: 'ccd-query-write-respond-to-query', template: "<div class=\"govuk-!-margin-bottom-6\">\n <div class=\"govuk-!-margin-bottom-6\">\n <div class=\"govuk-caption-l\">{{ 'Respond to a query' | rpxTranslate }}</div>\n <h1 class=\"govuk-heading-l govuk-!-margin-bottom-0\">{{ 'Query details' | rpxTranslate }}</h1>\n </div>\n\n <div class=\"govuk-!-margin-bottom-4\">\n <ccd-query-case-details-header [caseDetails]=\"caseDetails\"></ccd-query-case-details-header>\n </div>\n\n <div>\n <ccd-query-details [query]=\"queryListData\"\n [queryResponseStatus]=\"queryResponseStatus\"\n (hasResponded)=\"hasResponded($event)\"></ccd-query-details>\n </div>\n</div>\n<div class=\"query-respond\" *ngIf=\"showForm\">\n <div *ngIf=\"!hasRespondedToQuery\">\n <h1 class=\"govuk-heading-m\">\n {{ queryCreateContext === queryCreateContextEnum.RESPOND ? 'Respond to a query' : 'Ask a follow-up question' | rpxTranslate }}\n </h1>\n\n <div [formGroup]=\"formGroup\">\n <div class=\"govuk-form-group body-textarea\"\n [class.govuk-form-group--error]=\"submitted && formGroup.get('body')?.hasError('required')\">\n <div class=\"govuk-label-wrapper\">\n <label class=\"govuk-label govuk-label--m govuk-!-font-weight-bold\" for=\"body\">\n {{ queryCreateContext === queryCreateContextEnum.RESPOND ? 'Response detail' : 'Query Body' | rpxTranslate }}\n </label>\n </div>\n <p id=\"body-error\" class=\"govuk-error-message\"\n *ngIf=\"submitted && formGroup.get('body')?.hasError('required')\">\n <span class=\"govuk-visually-hidden\">{{ 'Error:' | rpxTranslate }} </span>{{ queryCreateContext === queryCreateContextEnum.RESPOND ? raiseQueryErrorMessages.RESPOND_QUERY_BODY : raiseQueryErrorMessages.QUERY_BODY | rpxTranslate }}\n </p>\n <textarea [formControlName]=\"'body'\" class=\"govuk-textarea\"\n [class.govuk-textarea--error]=\"submitted && formGroup.get('body')?.hasError('required')\" id=\"body\"\n name=\"body\" rows=\"5\" aria-describedby=\"body-hint body-error\">\n </textarea>\n </div>\n </div>\n </div>\n</div>\n\n<ng-container *ngIf=\"queryCreateContext === queryCreateContextEnum.RESPOND\">\n <ccd-close-query *ngIf=\"!hasRespondedToQuery\"\n [formGroup]=\"formGroup\">\n </ccd-close-query>\n</ng-container>", styles: [".query-respond{width:100%;max-width:720px}\n"] }]
|
|
22988
|
-
}], () => [{ type: CaseNotifier }, { type: i1$1.ActivatedRoute }], { queryItem: [{
|
|
23102
|
+
args: [{ selector: 'ccd-query-write-respond-to-query', template: "<div class=\"govuk-!-margin-bottom-6\">\n <div class=\"govuk-!-margin-bottom-6\">\n <div class=\"govuk-caption-l\">{{ 'Respond to a query' | rpxTranslate }}</div>\n <h1 class=\"govuk-heading-l govuk-!-margin-bottom-0\">{{ 'Query details' | rpxTranslate }}</h1>\n </div>\n\n <div class=\"govuk-!-margin-bottom-4\">\n <ccd-query-case-details-header [caseDetails]=\"caseDetails\" *ngIf=\"caseDetails\"></ccd-query-case-details-header>\n </div>\n\n <div>\n <ccd-query-details [query]=\"queryListData\"\n [queryResponseStatus]=\"queryResponseStatus\"\n (hasResponded)=\"hasResponded($event)\"></ccd-query-details>\n </div>\n</div>\n<div class=\"query-respond\" *ngIf=\"showForm\">\n <div *ngIf=\"!hasRespondedToQuery\">\n <h1 class=\"govuk-heading-m\">\n {{ queryCreateContext === queryCreateContextEnum.RESPOND ? 'Respond to a query' : 'Ask a follow-up question' | rpxTranslate }}\n </h1>\n\n <div [formGroup]=\"formGroup\">\n <div class=\"govuk-form-group body-textarea\"\n [class.govuk-form-group--error]=\"submitted && formGroup.get('body')?.hasError('required')\">\n <div class=\"govuk-label-wrapper\">\n <label class=\"govuk-label govuk-label--m govuk-!-font-weight-bold\" for=\"body\">\n {{ queryCreateContext === queryCreateContextEnum.RESPOND ? 'Response detail' : 'Query Body' | rpxTranslate }}\n </label>\n </div>\n <p id=\"body-error\" class=\"govuk-error-message\"\n *ngIf=\"submitted && formGroup.get('body')?.hasError('required')\">\n <span class=\"govuk-visually-hidden\">{{ 'Error:' | rpxTranslate }} </span>{{ queryCreateContext === queryCreateContextEnum.RESPOND ? raiseQueryErrorMessages.RESPOND_QUERY_BODY : raiseQueryErrorMessages.QUERY_BODY | rpxTranslate }}\n </p>\n <textarea [formControlName]=\"'body'\" class=\"govuk-textarea\"\n [class.govuk-textarea--error]=\"submitted && formGroup.get('body')?.hasError('required')\" id=\"body\"\n name=\"body\" rows=\"5\" aria-describedby=\"body-hint body-error\">\n </textarea>\n </div>\n </div>\n </div>\n</div>\n\n<ng-container *ngIf=\"queryCreateContext === queryCreateContextEnum.RESPOND\">\n <ccd-close-query *ngIf=\"!hasRespondedToQuery\"\n [formGroup]=\"formGroup\">\n </ccd-close-query>\n</ng-container>", styles: [".query-respond{width:100%;max-width:720px}\n"] }]
|
|
23103
|
+
}], () => [{ type: CaseNotifier }, { type: i1$1.ActivatedRoute }, { type: QueryManagementService }], { queryItem: [{
|
|
22989
23104
|
type: Input
|
|
22990
23105
|
}], formGroup: [{
|
|
22991
23106
|
type: Input
|
|
@@ -22997,10 +23112,16 @@ class QueryWriteRespondToQueryComponent {
|
|
|
22997
23112
|
type: Input
|
|
22998
23113
|
}], showForm: [{
|
|
22999
23114
|
type: Input
|
|
23115
|
+
}], triggerSubmission: [{
|
|
23116
|
+
type: Input
|
|
23117
|
+
}], eventData: [{
|
|
23118
|
+
type: Input
|
|
23119
|
+
}], queryDataCreated: [{
|
|
23120
|
+
type: Output
|
|
23000
23121
|
}], hasRespondedToQueryTask: [{
|
|
23001
23122
|
type: Output
|
|
23002
23123
|
}] }); })();
|
|
23003
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(QueryWriteRespondToQueryComponent, { className: "QueryWriteRespondToQueryComponent", filePath: "lib/shared/components/palette/query-management/components/query-write/query-write-respond-to-query/query-write-respond-to-query.component.ts", lineNumber:
|
|
23124
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(QueryWriteRespondToQueryComponent, { className: "QueryWriteRespondToQueryComponent", filePath: "lib/shared/components/palette/query-management/components/query-write/query-write-respond-to-query/query-write-respond-to-query.component.ts", lineNumber: 18 }); })();
|
|
23004
23125
|
|
|
23005
23126
|
function QueryConfirmationComponent_main_0_ng_container_3_Template(rf, ctx) { if (rf & 1) {
|
|
23006
23127
|
i0.ɵɵelementContainerStart(0);
|
|
@@ -23217,23 +23338,32 @@ function ReadQueryManagementFieldComponent_ng_template_1_ng_container_1_ng_conta
|
|
|
23217
23338
|
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(3, 2, "Ask a follow-up question"), " ");
|
|
23218
23339
|
} }
|
|
23219
23340
|
function ReadQueryManagementFieldComponent_ng_template_1_ng_container_1_ng_template_2_Template(rf, ctx) { if (rf & 1) {
|
|
23220
|
-
i0.ɵɵelementStart(0, "div")(1, "
|
|
23341
|
+
i0.ɵɵelementStart(0, "div")(1, "button", 9);
|
|
23221
23342
|
i0.ɵɵtext(2);
|
|
23222
23343
|
i0.ɵɵpipe(3, "rpxTranslate");
|
|
23223
23344
|
i0.ɵɵelementEnd();
|
|
23224
|
-
i0.ɵɵelementStart(4, "p");
|
|
23345
|
+
i0.ɵɵelementStart(4, "p", 10);
|
|
23225
23346
|
i0.ɵɵtext(5);
|
|
23226
23347
|
i0.ɵɵpipe(6, "rpxTranslate");
|
|
23348
|
+
i0.ɵɵelementEnd();
|
|
23349
|
+
i0.ɵɵelementStart(7, "p");
|
|
23350
|
+
i0.ɵɵtext(8);
|
|
23351
|
+
i0.ɵɵpipe(9, "rpxTranslate");
|
|
23227
23352
|
i0.ɵɵelementEnd()();
|
|
23228
23353
|
} if (rf & 2) {
|
|
23229
|
-
i0.ɵɵ
|
|
23230
|
-
i0.ɵɵ
|
|
23354
|
+
const ctx_r1 = i0.ɵɵnextContext(3);
|
|
23355
|
+
i0.ɵɵadvance();
|
|
23356
|
+
i0.ɵɵproperty("routerLink", i0.ɵɵpureFunction2(10, _c0$B, ctx_r1.caseId, ctx_r1.query.id));
|
|
23357
|
+
i0.ɵɵadvance();
|
|
23358
|
+
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(3, 4, "Ask a follow-up question"), " ");
|
|
23359
|
+
i0.ɵɵadvance(3);
|
|
23360
|
+
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(6, 6, "Your query is under review"));
|
|
23231
23361
|
i0.ɵɵadvance(3);
|
|
23232
|
-
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(
|
|
23362
|
+
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(9, 8, "Our team will read your query and respond. Do not submit the same query more than once."));
|
|
23233
23363
|
} }
|
|
23234
23364
|
function ReadQueryManagementFieldComponent_ng_template_1_ng_container_1_Template(rf, ctx) { if (rf & 1) {
|
|
23235
23365
|
i0.ɵɵelementContainerStart(0);
|
|
23236
|
-
i0.ɵɵtemplate(1, ReadQueryManagementFieldComponent_ng_template_1_ng_container_1_ng_container_1_Template, 4, 7, "ng-container", 2)(2, ReadQueryManagementFieldComponent_ng_template_1_ng_container_1_ng_template_2_Template,
|
|
23366
|
+
i0.ɵɵtemplate(1, ReadQueryManagementFieldComponent_ng_template_1_ng_container_1_ng_container_1_Template, 4, 7, "ng-container", 2)(2, ReadQueryManagementFieldComponent_ng_template_1_ng_container_1_ng_template_2_Template, 10, 13, "ng-template", null, 1, i0.ɵɵtemplateRefExtractor);
|
|
23237
23367
|
i0.ɵɵelementContainerEnd();
|
|
23238
23368
|
} if (rf & 2) {
|
|
23239
23369
|
const queryIsInReview_r5 = i0.ɵɵreference(3);
|
|
@@ -23268,7 +23398,7 @@ function ReadQueryManagementFieldComponent_ng_template_1_Template(rf, ctx) { if
|
|
|
23268
23398
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
23269
23399
|
i0.ɵɵproperty("query", ctx_r1.query)("caseId", ctx_r1.caseId);
|
|
23270
23400
|
i0.ɵɵadvance();
|
|
23271
|
-
i0.ɵɵproperty("ngIf", !ctx_r1.isInternalUser() && !ctx_r1.isQueryClosed);
|
|
23401
|
+
i0.ɵɵproperty("ngIf", !ctx_r1.isInternalUser() && !ctx_r1.isQueryClosed && (ctx_r1.query == null ? null : ctx_r1.query.children == null ? null : ctx_r1.query.children.length) > 0);
|
|
23272
23402
|
i0.ɵɵadvance();
|
|
23273
23403
|
i0.ɵɵproperty("ngIf", !ctx_r1.isInternalUser() && ctx_r1.isQueryClosed);
|
|
23274
23404
|
} }
|
|
@@ -23336,7 +23466,7 @@ class ReadQueryManagementFieldComponent extends AbstractFieldReadComponent {
|
|
|
23336
23466
|
}
|
|
23337
23467
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ReadQueryManagementFieldComponent, [{
|
|
23338
23468
|
type: Component,
|
|
23339
|
-
args: [{ selector: 'ccd-read-query-management-field', template: "<ng-container *ngIf=\"showQueryList; else singleQueryDetails\">\n <ng-container *ngFor=\"let caseQueriesCollection of caseQueriesCollections\">\n <div *ngIf=\"showQueryList\" class=\"govuk-!-margin-top-8 govuk-!-margin-bottom-8\">\n <ccd-query-list (selectedQuery)=\"setQuery($event)\" [caseQueriesCollection]=\"caseQueriesCollection\"></ccd-query-list>\n </div>\n </ng-container>\n</ng-container>\n\n<ng-template #singleQueryDetails>\n <ccd-query-details\n [query]=\"query\"\n (backClicked)=\"showQueryList = true\"\n [caseId]=\"caseId\"\n ></ccd-query-details>\n\n <ng-container *ngIf=\"!isInternalUser() && !isQueryClosed\">\n <ng-container *ngIf=\"query?.children?.length > 0 && query?.children?.length % 2 === 1; else queryIsInReview\">\n <button id=\"ask-follow-up-question\" class=\"govuk-button\" data-module=\"govuk-button\"\n [routerLink]=\"['/query-management', 'query', caseId, '4', query.id]\">\n {{ 'Ask a follow-up question' | rpxTranslate }}\n </button>\n </ng-container>\n\n <ng-template #queryIsInReview>\n <div>\n <p class=\"govuk-!-font-weight-bold\">{{ 'Your query is under review' | rpxTranslate }}</p>\n <p>{{ 'Our team will read your query and respond. Do not submit the same query more than once.' | rpxTranslate }}</p>\n </div>\n </ng-template>\n </ng-container>\n <ng-container *ngIf=\"!isInternalUser() && isQueryClosed\">\n <div class=\"govuk-warning-text\">\n <span aria-hidden=\"true\" class=\"govuk-warning-text__icon\">!</span>\n <strong class=\"govuk-warning-text__text\">\n <span class=\"govuk-visually-hidden\">Warning</span>\n <p class=\"qm-service-message govuk-!-font-weight-bold\">{{ 'This query has been closed by court staff.' | rpxTranslate }}</p>\n </strong>\n </div>\n </ng-container>\n</ng-template>\n" }]
|
|
23469
|
+
args: [{ selector: 'ccd-read-query-management-field', template: "<ng-container *ngIf=\"showQueryList; else singleQueryDetails\">\n <ng-container *ngFor=\"let caseQueriesCollection of caseQueriesCollections\">\n <div *ngIf=\"showQueryList\" class=\"govuk-!-margin-top-8 govuk-!-margin-bottom-8\">\n <ccd-query-list (selectedQuery)=\"setQuery($event)\" [caseQueriesCollection]=\"caseQueriesCollection\"></ccd-query-list>\n </div>\n </ng-container>\n</ng-container>\n\n<ng-template #singleQueryDetails>\n <ccd-query-details\n [query]=\"query\"\n (backClicked)=\"showQueryList = true\"\n [caseId]=\"caseId\"\n ></ccd-query-details>\n\n <ng-container *ngIf=\"!isInternalUser() && !isQueryClosed && query?.children?.length > 0\">\n <ng-container *ngIf=\"query?.children?.length > 0 && query?.children?.length % 2 === 1; else queryIsInReview\">\n <button id=\"ask-follow-up-question\" class=\"govuk-button\" data-module=\"govuk-button\"\n [routerLink]=\"['/query-management', 'query', caseId, '4', query.id]\">\n {{ 'Ask a follow-up question' | rpxTranslate }}\n </button>\n </ng-container>\n\n <ng-template #queryIsInReview>\n <div>\n <button id=\"ask-follow-up-question\" class=\"govuk-button\" data-module=\"govuk-button\"\n [routerLink]=\"['/query-management', 'query', caseId, '4', query.id]\">\n {{ 'Ask a follow-up question' | rpxTranslate }}\n </button>\n <p class=\"govuk-!-font-weight-bold\">{{ 'Your query is under review' | rpxTranslate }}</p>\n <p>{{ 'Our team will read your query and respond. Do not submit the same query more than once.' | rpxTranslate }}</p>\n </div>\n </ng-template>\n </ng-container>\n <ng-container *ngIf=\"!isInternalUser() && isQueryClosed\">\n <div class=\"govuk-warning-text\">\n <span aria-hidden=\"true\" class=\"govuk-warning-text__icon\">!</span>\n <strong class=\"govuk-warning-text__text\">\n <span class=\"govuk-visually-hidden\">Warning</span>\n <p class=\"qm-service-message govuk-!-font-weight-bold\">{{ 'This query has been closed by court staff.' | rpxTranslate }}</p>\n </strong>\n </div>\n </ng-container>\n</ng-template>\n" }]
|
|
23340
23470
|
}], () => [{ type: i1$1.ActivatedRoute }, { type: SessionStorageService }, { type: CaseNotifier }], null); })();
|
|
23341
23471
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ReadQueryManagementFieldComponent, { className: "ReadQueryManagementFieldComponent", filePath: "lib/shared/components/palette/query-management/read-query-management-field.component.ts", lineNumber: 15 }); })();
|
|
23342
23472
|
|
|
@@ -30603,6 +30733,8 @@ class PaletteModule {
|
|
|
30603
30733
|
CommonDataService,
|
|
30604
30734
|
LinkedCasesService,
|
|
30605
30735
|
QualifyingQuestionService,
|
|
30736
|
+
QueryManagementUtils,
|
|
30737
|
+
QueryManagementService,
|
|
30606
30738
|
{ provide: MAT_LEGACY_DATE_LOCALE, useValue: 'en-GB' }
|
|
30607
30739
|
], imports: [CommonModule,
|
|
30608
30740
|
RouterModule,
|
|
@@ -30720,6 +30852,8 @@ class PaletteModule {
|
|
|
30720
30852
|
CommonDataService,
|
|
30721
30853
|
LinkedCasesService,
|
|
30722
30854
|
QualifyingQuestionService,
|
|
30855
|
+
QueryManagementUtils,
|
|
30856
|
+
QueryManagementService,
|
|
30723
30857
|
{ provide: MAT_LEGACY_DATE_LOCALE, useValue: 'en-GB' }
|
|
30724
30858
|
],
|
|
30725
30859
|
schemas: [CUSTOM_ELEMENTS_SCHEMA]
|
|
@@ -40126,5 +40260,5 @@ class TestRouteSnapshotBuilder {
|
|
|
40126
40260
|
* Generated bundle index. Do not edit.
|
|
40127
40261
|
*/
|
|
40128
40262
|
|
|
40129
|
-
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, 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, SessionStorageService, ShowCondition, SortOrder$1 as SortOrder, SortParameters, SortSearchResultPipe, TabComponent, TableColumnConfig, TableConfig, TabsComponent, TabsModule, TaskAssignedComponent, TaskCancelledComponent, TaskConflictComponent, TaskUnassignedComponent, Terms, TestRouteSnapshotBuilder, 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, textFieldType, viewerRouting };
|
|
40263
|
+
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, SessionStorageService, ShowCondition, SortOrder$1 as SortOrder, SortParameters, SortSearchResultPipe, TabComponent, TableColumnConfig, TableConfig, TabsComponent, TabsModule, TaskAssignedComponent, TaskCancelledComponent, TaskConflictComponent, TaskUnassignedComponent, Terms, TestRouteSnapshotBuilder, 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, textFieldType, viewerRouting };
|
|
40130
40264
|
//# sourceMappingURL=hmcts-ccd-case-ui-toolkit.mjs.map
|