@hmcts/ccd-case-ui-toolkit 5.0.25-case-file-view-all-document-count-v4 → 5.0.25-case-file-view-document-tree-functionalities-v6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/bundles/hmcts-ccd-case-ui-toolkit.umd.js +235 -354
  2. package/bundles/hmcts-ccd-case-ui-toolkit.umd.js.map +1 -1
  3. package/bundles/hmcts-ccd-case-ui-toolkit.umd.min.js +1 -1
  4. package/bundles/hmcts-ccd-case-ui-toolkit.umd.min.js.map +1 -1
  5. package/esm2015/lib/shared/components/palette/case-file-view/case-file-view-field.component.js +53 -21
  6. package/esm2015/lib/shared/components/palette/case-file-view/components/case-file-view-folder/case-file-view-folder.component.js +118 -82
  7. package/esm2015/lib/shared/components/palette/utils/is-compound.pipe.js +2 -2
  8. package/esm2015/lib/shared/domain/case-file-view/document-tree-node/document-tree-node-type.model.js +6 -0
  9. package/esm2015/lib/shared/domain/case-file-view/document-tree-node/document-tree-node.model.js +8 -7
  10. package/esm2015/lib/shared/domain/case-file-view/index.js +2 -1
  11. package/esm2015/lib/shared/services/case-file-view/case-file-view.service.js +5 -6
  12. package/esm2015/public-api.js +1 -3
  13. package/fesm2015/hmcts-ccd-case-ui-toolkit.js +209 -332
  14. package/fesm2015/hmcts-ccd-case-ui-toolkit.js.map +1 -1
  15. package/lib/shared/components/palette/case-file-view/case-file-view-field.component.d.ts +6 -3
  16. package/lib/shared/components/palette/case-file-view/case-file-view-field.component.d.ts.map +1 -1
  17. package/lib/shared/components/palette/case-file-view/components/case-file-view-folder/case-file-view-folder.component.d.ts +11 -5
  18. package/lib/shared/components/palette/case-file-view/components/case-file-view-folder/case-file-view-folder.component.d.ts.map +1 -1
  19. package/lib/shared/domain/case-file-view/document-tree-node/document-tree-node-type.model.d.ts +5 -0
  20. package/lib/shared/domain/case-file-view/document-tree-node/document-tree-node-type.model.d.ts.map +1 -0
  21. package/lib/shared/domain/case-file-view/document-tree-node/document-tree-node.model.d.ts +2 -1
  22. package/lib/shared/domain/case-file-view/document-tree-node/document-tree-node.model.d.ts.map +1 -1
  23. package/lib/shared/domain/case-file-view/index.d.ts +1 -0
  24. package/lib/shared/domain/case-file-view/index.d.ts.map +1 -1
  25. package/lib/shared/services/case-file-view/case-file-view.service.d.ts +2 -3
  26. package/lib/shared/services/case-file-view/case-file-view.service.d.ts.map +1 -1
  27. package/package.json +1 -1
  28. package/public-api.d.ts +0 -2
  29. package/public-api.d.ts.map +1 -1
  30. package/esm2015/lib/shared/components/palette/case-file-view/test-data/categories-and-documents-test-data.js +0 -192
  31. package/lib/shared/components/palette/case-file-view/test-data/categories-and-documents-test-data.d.ts +0 -3
  32. package/lib/shared/components/palette/case-file-view/test-data/categories-and-documents-test-data.d.ts.map +0 -1
@@ -19,24 +19,24 @@ import { isUndefined } from 'util';
19
19
  import { StateMachine } from '@edium/fsm';
20
20
  import * as i1$4 from 'ngx-md';
21
21
  import { NgxMdModule } from 'ngx-md';
22
- import * as i2 from '@angular/cdk/tree';
22
+ import * as i4 from '@angular/cdk/tree';
23
23
  import { NestedTreeControl, CdkTreeModule } from '@angular/cdk/tree';
24
24
  import * as i1$5 from '@angular/cdk/overlay';
25
25
  import { OverlayModule } from '@angular/cdk/overlay';
26
- import * as i4 from '@hmcts/media-viewer';
26
+ import * as i5 from '@hmcts/media-viewer';
27
27
  import { MediaViewerModule } from '@hmcts/media-viewer';
28
28
  import * as i1$6 from '@angular/material/dialog';
29
29
  import { MatDialogConfig } from '@angular/material/dialog';
30
- import * as i2$1 from '@nicky-lenaers/ngx-scroll-to';
30
+ import * as i2 from '@nicky-lenaers/ngx-scroll-to';
31
31
  import { ScrollToModule } from '@nicky-lenaers/ngx-scroll-to';
32
32
  import * as i4$1 from '@angular-material-components/datetime-picker';
33
33
  import { NGX_MAT_DATE_FORMATS, NgxMatDateAdapter, NgxMatDatetimePickerModule, NgxMatTimepickerModule, NgxMatNativeDateModule } from '@angular-material-components/datetime-picker';
34
34
  import { NgxMatMomentAdapter, NGX_MAT_MOMENT_DATE_ADAPTER_OPTIONS } from '@angular-material-components/moment-adapter';
35
- import * as i5 from '@angular/material/datepicker';
35
+ import * as i5$1 from '@angular/material/datepicker';
36
36
  import { MatDatepickerModule } from '@angular/material/datepicker';
37
37
  import * as i6 from '@angular/material/form-field';
38
38
  import { MatFormFieldModule } from '@angular/material/form-field';
39
- import * as i5$1 from '@angular/material/autocomplete';
39
+ import * as i5$2 from '@angular/material/autocomplete';
40
40
  import { MatAutocompleteModule } from '@angular/material/autocomplete';
41
41
  import * as i6$1 from '@angular/material/core';
42
42
  import { MAT_DATE_LOCALE } from '@angular/material/core';
@@ -114,13 +114,13 @@ function FooterComponent_div_3_Template(rf, ctx) { if (rf & 1) {
114
114
  i0.ɵɵadvance(3);
115
115
  i0.ɵɵtextInterpolate(ctx_r1.workhours);
116
116
  } }
117
- const _c0$Q = [[["", "footerSolsNavLinks", ""]], [["", "footerCaseWorkerNavLinks", ""]]];
117
+ const _c0$P = [[["", "footerSolsNavLinks", ""]], [["", "footerCaseWorkerNavLinks", ""]]];
118
118
  const _c1$n = ["[footerSolsNavLinks]", "[footerCaseWorkerNavLinks]"];
119
119
  class FooterComponent {
120
120
  }
121
121
  FooterComponent.ɵfac = function FooterComponent_Factory(t) { return new (t || FooterComponent)(); };
122
122
  FooterComponent.ɵcmp = i0.ɵɵdefineComponent({ type: FooterComponent, selectors: [["cut-footer-bar"]], inputs: { email: "email", isSolicitor: "isSolicitor", phone: "phone", workhours: "workhours" }, ngContentSelectors: _c1$n, decls: 4, vars: 4, consts: [["id", "footer", "role", "footer", 1, "group", "js-footer"], [1, "footer-wrapper"], ["class", "footer-meta", 4, "ngIf"], [1, "footer-meta"], [1, "footer-meta-inner"], [1, "open-government-licence"], [1, "logo"], ["href", "https://www.nationalarchives.gov.uk/doc/open-government-licence/version/3/", "rel", "license"], [1, "copyright"], ["href", "https://www.nationalarchives.gov.uk/information-management/re-using-public-sector-information/copyright-and-re-use/crown-copyright/"], [1, "title"], [1, "footer-text"], [1, "email"], [3, "href"], [1, "phone"], [1, "work-hours"]], template: function FooterComponent_Template(rf, ctx) { if (rf & 1) {
123
- i0.ɵɵprojectionDef(_c0$Q);
123
+ i0.ɵɵprojectionDef(_c0$P);
124
124
  i0.ɵɵelementStart(0, "footer", 0);
125
125
  i0.ɵɵelementStart(1, "div", 1);
126
126
  i0.ɵɵtemplate(2, FooterComponent_div_2_Template, 15, 0, "div", 2);
@@ -187,7 +187,7 @@ function HeaderBarComponent_div_9_Template(rf, ctx) { if (rf & 1) {
187
187
  i0.ɵɵadvance(3);
188
188
  i0.ɵɵtextInterpolate(ctx_r2.title);
189
189
  } }
190
- const _c0$P = [[["", "headerNavigation", ""]]];
190
+ const _c0$O = [[["", "headerNavigation", ""]]];
191
191
  const _c1$m = ["[headerNavigation]"];
192
192
  class HeaderBarComponent {
193
193
  constructor() {
@@ -199,7 +199,7 @@ class HeaderBarComponent {
199
199
  }
200
200
  HeaderBarComponent.ɵfac = function HeaderBarComponent_Factory(t) { return new (t || HeaderBarComponent)(); };
201
201
  HeaderBarComponent.ɵcmp = i0.ɵɵdefineComponent({ type: HeaderBarComponent, selectors: [["cut-header-bar"]], inputs: { title: "title", isSolicitor: "isSolicitor", username: "username" }, outputs: { signOutRequest: "signOutRequest" }, ngContentSelectors: _c1$m, decls: 15, vars: 8, consts: [["role", "banner", "id", "global-header", 1, "with-proposition"], [1, "header-wrapper"], [1, "header-global"], [4, "ngIf"], ["class", "global-header", 4, "ngIf"], [1, "header-proposition"], [1, "content"], ["href", "#proposition-links", 1, "js-header-toggle", "menu"], ["id", "proposition-menu", 4, "ngIf"], [1, "proposition-right"], ["id", "user-name"], ["id", "sign-out", "href", "javascript:void(0)", 3, "click"], ["href", "https://www.gov.uk", "title", "Go to the GOV.UK homepage", "id", "logo", 1, "content", 2, "margin-left", "0px"], ["src", "/img/gov.uk_logotype_crown_invert_trans.png?0.23.0", "width", "36", "height", "32", "alt", ""], [1, "global-header"], [1, "title"], ["id", "proposition-menu"], [1, "title-solicitor"], ["id", "proposition-name"]], template: function HeaderBarComponent_Template(rf, ctx) { if (rf & 1) {
202
- i0.ɵɵprojectionDef(_c0$P);
202
+ i0.ɵɵprojectionDef(_c0$O);
203
203
  i0.ɵɵelementStart(0, "header", 0);
204
204
  i0.ɵɵelementStart(1, "div", 1);
205
205
  i0.ɵɵelementStart(2, "div", 2);
@@ -256,13 +256,13 @@ HeaderBarComponent.ɵcmp = i0.ɵɵdefineComponent({ type: HeaderBarComponent, se
256
256
  type: Output
257
257
  }] }); })();
258
258
 
259
- const _c0$O = [[["", "leftNavLinks", ""]], [["", "rightNavLinks", ""]]];
259
+ const _c0$N = [[["", "leftNavLinks", ""]], [["", "rightNavLinks", ""]]];
260
260
  const _c1$l = ["[leftNavLinks]", "[rightNavLinks]"];
261
261
  class NavigationComponent {
262
262
  }
263
263
  NavigationComponent.ɵfac = function NavigationComponent_Factory(t) { return new (t || NavigationComponent)(); };
264
264
  NavigationComponent.ɵcmp = i0.ɵɵdefineComponent({ type: NavigationComponent, selectors: [["cut-nav-bar"]], inputs: { isSolicitor: "isSolicitor" }, ngContentSelectors: _c1$l, decls: 4, vars: 2, consts: [[1, "cut-nav-bar"]], template: function NavigationComponent_Template(rf, ctx) { if (rf & 1) {
265
- i0.ɵɵprojectionDef(_c0$O);
265
+ i0.ɵɵprojectionDef(_c0$N);
266
266
  i0.ɵɵelementStart(0, "div");
267
267
  i0.ɵɵelementStart(1, "nav", 0);
268
268
  i0.ɵɵprojection(2);
@@ -379,13 +379,13 @@ HeadersModule.ɵinj = i0.ɵɵdefineInjector({ imports: [[CommonModule, RouterMod
379
379
  }]
380
380
  }], null, null); })();
381
381
 
382
- const _c0$N = [[["", "topBody", ""]], [["", "leftBody", ""]], [["", "rightBody", ""]]];
382
+ const _c0$M = [[["", "topBody", ""]], [["", "leftBody", ""]], [["", "rightBody", ""]]];
383
383
  const _c1$k = ["[topBody]", "[leftBody]", "[rightBody]"];
384
384
  class BodyComponent {
385
385
  }
386
386
  BodyComponent.ɵfac = function BodyComponent_Factory(t) { return new (t || BodyComponent)(); };
387
387
  BodyComponent.ɵcmp = i0.ɵɵdefineComponent({ type: BodyComponent, selectors: [["cut-body"]], ngContentSelectors: _c1$k, decls: 4, vars: 0, consts: [[1, "global-display"]], template: function BodyComponent_Template(rf, ctx) { if (rf & 1) {
388
- i0.ɵɵprojectionDef(_c0$N);
388
+ i0.ɵɵprojectionDef(_c0$M);
389
389
  i0.ɵɵelementStart(0, "div", 0);
390
390
  i0.ɵɵprojection(1);
391
391
  i0.ɵɵprojection(2, 1);
@@ -402,7 +402,7 @@ BodyComponent.ɵcmp = i0.ɵɵdefineComponent({ type: BodyComponent, selectors: [
402
402
  }]
403
403
  }], null, null); })();
404
404
 
405
- const _c0$M = function (a0) { return { "govuk-input--error": a0 }; };
405
+ const _c0$L = function (a0) { return { "govuk-input--error": a0 }; };
406
406
  function DateInputComponent_div_16_Template(rf, ctx) { if (rf & 1) {
407
407
  const _r8 = i0.ɵɵgetCurrentView();
408
408
  i0.ɵɵelementStart(0, "div", 12);
@@ -418,7 +418,7 @@ function DateInputComponent_div_16_Template(rf, ctx) { if (rf & 1) {
418
418
  i0.ɵɵadvance(1);
419
419
  i0.ɵɵproperty("for", ctx_r3.hourId());
420
420
  i0.ɵɵadvance(2);
421
- i0.ɵɵproperty("id", ctx_r3.hourId())("name", ctx_r3.hourId())("value", ctx_r3.displayHour)("ngClass", i0.ɵɵpureFunction1(5, _c0$M, ctx_r3.isInvalid));
421
+ i0.ɵɵproperty("id", ctx_r3.hourId())("name", ctx_r3.hourId())("value", ctx_r3.displayHour)("ngClass", i0.ɵɵpureFunction1(5, _c0$L, ctx_r3.isInvalid));
422
422
  } }
423
423
  function DateInputComponent_div_17_Template(rf, ctx) { if (rf & 1) {
424
424
  const _r13 = i0.ɵɵgetCurrentView();
@@ -435,7 +435,7 @@ function DateInputComponent_div_17_Template(rf, ctx) { if (rf & 1) {
435
435
  i0.ɵɵadvance(1);
436
436
  i0.ɵɵproperty("for", ctx_r4.minuteId());
437
437
  i0.ɵɵadvance(2);
438
- i0.ɵɵproperty("id", ctx_r4.minuteId())("name", ctx_r4.minuteId())("value", ctx_r4.displayMinute)("ngClass", i0.ɵɵpureFunction1(5, _c0$M, ctx_r4.isInvalid));
438
+ i0.ɵɵproperty("id", ctx_r4.minuteId())("name", ctx_r4.minuteId())("value", ctx_r4.displayMinute)("ngClass", i0.ɵɵpureFunction1(5, _c0$L, ctx_r4.isInvalid));
439
439
  } }
440
440
  function DateInputComponent_div_18_Template(rf, ctx) { if (rf & 1) {
441
441
  const _r18 = i0.ɵɵgetCurrentView();
@@ -452,7 +452,7 @@ function DateInputComponent_div_18_Template(rf, ctx) { if (rf & 1) {
452
452
  i0.ɵɵadvance(1);
453
453
  i0.ɵɵproperty("for", ctx_r5.secondId());
454
454
  i0.ɵɵadvance(2);
455
- i0.ɵɵproperty("id", ctx_r5.secondId())("name", ctx_r5.secondId())("value", ctx_r5.displaySecond)("ngClass", i0.ɵɵpureFunction1(5, _c0$M, ctx_r5.isInvalid));
455
+ i0.ɵɵproperty("id", ctx_r5.secondId())("name", ctx_r5.secondId())("value", ctx_r5.displaySecond)("ngClass", i0.ɵɵpureFunction1(5, _c0$L, ctx_r5.isInvalid));
456
456
  } }
457
457
  class DateInputComponent {
458
458
  constructor() {
@@ -681,15 +681,15 @@ DateInputComponent.ɵcmp = i0.ɵɵdefineComponent({ type: DateInputComponent, se
681
681
  i0.ɵɵadvance(2);
682
682
  i0.ɵɵproperty("for", ctx.dayId());
683
683
  i0.ɵɵadvance(2);
684
- i0.ɵɵproperty("id", ctx.dayId())("name", ctx.dayId())("value", ctx.displayDay)("ngClass", i0.ɵɵpureFunction1(18, _c0$M, ctx.isInvalid));
684
+ i0.ɵɵproperty("id", ctx.dayId())("name", ctx.dayId())("value", ctx.displayDay)("ngClass", i0.ɵɵpureFunction1(18, _c0$L, ctx.isInvalid));
685
685
  i0.ɵɵadvance(3);
686
686
  i0.ɵɵproperty("for", ctx.monthId());
687
687
  i0.ɵɵadvance(2);
688
- i0.ɵɵproperty("id", ctx.monthId())("name", ctx.monthId())("value", ctx.displayMonth)("ngClass", i0.ɵɵpureFunction1(20, _c0$M, ctx.isInvalid));
688
+ i0.ɵɵproperty("id", ctx.monthId())("name", ctx.monthId())("value", ctx.displayMonth)("ngClass", i0.ɵɵpureFunction1(20, _c0$L, ctx.isInvalid));
689
689
  i0.ɵɵadvance(3);
690
690
  i0.ɵɵproperty("for", ctx.yearId());
691
691
  i0.ɵɵadvance(2);
692
- i0.ɵɵproperty("id", ctx.yearId())("name", ctx.yearId())("value", ctx.displayYear)("ngClass", i0.ɵɵpureFunction1(22, _c0$M, ctx.isInvalid));
692
+ i0.ɵɵproperty("id", ctx.yearId())("name", ctx.yearId())("value", ctx.displayYear)("ngClass", i0.ɵɵpureFunction1(22, _c0$L, ctx.isInvalid));
693
693
  i0.ɵɵadvance(2);
694
694
  i0.ɵɵproperty("ngIf", ctx.isDateTime);
695
695
  i0.ɵɵadvance(1);
@@ -759,7 +759,7 @@ function AlertComponent_ng_container_5_Template(rf, ctx) { if (rf & 1) {
759
759
  i0.ɵɵelementEnd();
760
760
  i0.ɵɵelementContainerEnd();
761
761
  } }
762
- const _c0$L = ["*"];
762
+ const _c0$K = ["*"];
763
763
  var AlertMessageType;
764
764
  (function (AlertMessageType) {
765
765
  AlertMessageType["WARNING"] = "warning";
@@ -779,7 +779,7 @@ AlertComponent.TYPE_SUCCESS = 'success';
779
779
  AlertComponent.TYPE_ERROR = 'error';
780
780
  AlertComponent.TYPE_INFORMATION = 'information';
781
781
  AlertComponent.ɵfac = function AlertComponent_Factory(t) { return new (t || AlertComponent)(); };
782
- AlertComponent.ɵcmp = i0.ɵɵdefineComponent({ type: AlertComponent, selectors: [["cut-alert"]], inputs: { type: "type", showIcon: "showIcon" }, ngContentSelectors: _c0$L, decls: 10, vars: 10, consts: [[1, "hmcts-banner"], [3, "ngSwitch"], [4, "ngSwitchCase"], [1, "hmcts-banner__message"], [1, "hmcts-banner__assistive"], ["fill", "currentColor", "role", "presentation", "focusable", "false", "xmlns", "http://www.w3.org/2000/svg", "viewBox", "0 0 25 25", "height", "25", "width", "25", 1, "hmcts-banner__icon"], ["d", "M13.6,15.4h-2.3v-4.5h2.3V15.4z M13.6,19.8h-2.3v-2.2h2.3V19.8z M0,23.2h25L12.5,2L0,23.2z"], ["d", "M25,6.2L8.7,23.2L0,14.1l4-4.2l4.7,4.9L21,2L25,6.2z"], ["d", "M13.7,18.5h-2.4v-2.4h2.4V18.5z M12.5,13.7c-0.7,0-1.2-0.5-1.2-1.2V7.7c0-0.7,0.5-1.2,1.2-1.2s1.2,0.5,1.2,1.2v4.8\n C13.7,13.2,13.2,13.7,12.5,13.7z M12.5,0.5c-6.6,0-12,5.4-12,12s5.4,12,12,12s12-5.4,12-12S19.1,0.5,12.5,0.5z"]], template: function AlertComponent_Template(rf, ctx) { if (rf & 1) {
782
+ AlertComponent.ɵcmp = i0.ɵɵdefineComponent({ type: AlertComponent, selectors: [["cut-alert"]], inputs: { type: "type", showIcon: "showIcon" }, ngContentSelectors: _c0$K, decls: 10, vars: 10, consts: [[1, "hmcts-banner"], [3, "ngSwitch"], [4, "ngSwitchCase"], [1, "hmcts-banner__message"], [1, "hmcts-banner__assistive"], ["fill", "currentColor", "role", "presentation", "focusable", "false", "xmlns", "http://www.w3.org/2000/svg", "viewBox", "0 0 25 25", "height", "25", "width", "25", 1, "hmcts-banner__icon"], ["d", "M13.6,15.4h-2.3v-4.5h2.3V15.4z M13.6,19.8h-2.3v-2.2h2.3V19.8z M0,23.2h25L12.5,2L0,23.2z"], ["d", "M25,6.2L8.7,23.2L0,14.1l4-4.2l4.7,4.9L21,2L25,6.2z"], ["d", "M13.7,18.5h-2.4v-2.4h2.4V18.5z M12.5,13.7c-0.7,0-1.2-0.5-1.2-1.2V7.7c0-0.7,0.5-1.2,1.2-1.2s1.2,0.5,1.2,1.2v4.8\n C13.7,13.2,13.2,13.7,12.5,13.7z M12.5,0.5c-6.6,0-12,5.4-12,12s5.4,12,12,12s12-5.4,12-12S19.1,0.5,12.5,0.5z"]], template: function AlertComponent_Template(rf, ctx) { if (rf & 1) {
783
783
  i0.ɵɵprojectionDef();
784
784
  i0.ɵɵelementStart(0, "div", 0);
785
785
  i0.ɵɵelementContainerStart(1, 1);
@@ -868,7 +868,7 @@ AlertModule.ɵinj = i0.ɵɵdefineInjector({ imports: [[CommonModule]] });
868
868
  }]
869
869
  }], null, null); })();
870
870
 
871
- const _c0$K = function (a0) { return { "js-hidden": a0 }; };
871
+ const _c0$J = function (a0) { return { "js-hidden": a0 }; };
872
872
  const _c1$j = ["*"];
873
873
  class TabComponent {
874
874
  }
@@ -879,7 +879,7 @@ TabComponent.ɵcmp = i0.ɵɵdefineComponent({ type: TabComponent, selectors: [["
879
879
  i0.ɵɵprojection(1);
880
880
  i0.ɵɵelementEnd();
881
881
  } if (rf & 2) {
882
- i0.ɵɵproperty("id", ctx.id)("ngClass", i0.ɵɵpureFunction1(3, _c0$K, !ctx.selected));
882
+ i0.ɵɵproperty("id", ctx.id)("ngClass", i0.ɵɵpureFunction1(3, _c0$J, !ctx.selected));
883
883
  i0.ɵɵattribute("aria-hidden", !ctx.selected);
884
884
  } }, directives: [i1.NgClass], styles: [".tabs-toggle[_ngcontent-%COMP%]{display:block;padding:10px 15px 3px;margin-bottom:8px}.tabs-toggle[aria-selected=true][_ngcontent-%COMP%]{color:#0b0c0c;text-decoration:none;border-bottom:none}.tabs-toggle[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{color:#005ea5}@media (max-width:640px){.tabs-list[_ngcontent-%COMP%]{border-bottom:1px solid #bfc1c3;margin-left:-15px;margin-right:-15px}.tabs-toggle[_ngcontent-%COMP%]{border-top:1px solid #bfc1c3}.tabs-toggle[_ngcontent-%COMP%]:focus{color:#0b0c0c;outline:none}}@media (min-width:641px){.tabs-panel[_ngcontent-%COMP%]{border-top:1px solid #bfc1c3;clear:both;overflow:hidden}.tabs-list[_ngcontent-%COMP%]{float:left}.tabs-list-item[_ngcontent-%COMP%]{float:left;position:relative;bottom:-1px;padding-top:10px}.tabs-toggle[_ngcontent-%COMP%]{background-color:#dee0e2;border:1px solid transparent;float:left;margin:0 6px 0 0;text-decoration:none}.tabs-toggle[_ngcontent-%COMP%]:visited{color:#005ea5}.tabs-toggle-selected[_ngcontent-%COMP%], .tabs-toggle[aria-selected=true][_ngcontent-%COMP%]{background-color:#fff;border-bottom:0;border-color:#bfc1c3;padding-bottom:11px;margin-bottom:0;color:#0b0c0c}}"] });
885
885
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(TabComponent, [{
@@ -899,7 +899,7 @@ TabComponent.ɵcmp = i0.ɵɵdefineComponent({ type: TabComponent, selectors: [["
899
899
  type: Input
900
900
  }] }); })();
901
901
 
902
- const _c0$J = ["tab"];
902
+ const _c0$I = ["tab"];
903
903
  const _c1$i = function () { return ["."]; };
904
904
  const _c2$3 = function (a0) { return { "tabs-toggle-selected": a0 }; };
905
905
  function TabsComponent_li_2_Template(rf, ctx) { if (rf & 1) {
@@ -944,7 +944,7 @@ TabsComponent.ɵcmp = i0.ɵɵdefineComponent({ type: TabsComponent, selectors: [
944
944
  let _t;
945
945
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.panels = _t);
946
946
  } }, viewQuery: function TabsComponent_Query(rf, ctx) { if (rf & 1) {
947
- i0.ɵɵviewQuery(_c0$J, 1);
947
+ i0.ɵɵviewQuery(_c0$I, 1);
948
948
  } if (rf & 2) {
949
949
  let _t;
950
950
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.tabs = _t);
@@ -1009,7 +1009,7 @@ TabsModule.ɵinj = i0.ɵɵdefineInjector({ imports: [[
1009
1009
  }]
1010
1010
  }], null, null); })();
1011
1011
 
1012
- const _c0$I = function (a0, a1) { return { caseLocked: a0, someoneViewing: a1 }; };
1012
+ const _c0$H = function (a0, a1) { return { caseLocked: a0, someoneViewing: a1 }; };
1013
1013
  class ActivityBannerComponent {
1014
1014
  constructor() { }
1015
1015
  ngOnInit() {
@@ -1026,7 +1026,7 @@ ActivityBannerComponent.ɵcmp = i0.ɵɵdefineComponent({ type: ActivityBannerCom
1026
1026
  i0.ɵɵelementEnd();
1027
1027
  i0.ɵɵelementEnd();
1028
1028
  } if (rf & 2) {
1029
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction2(4, _c0$I, ctx.bannerType === "editor", ctx.bannerType === "viewer"));
1029
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction2(4, _c0$H, ctx.bannerType === "editor", ctx.bannerType === "viewer"));
1030
1030
  i0.ɵɵadvance(2);
1031
1031
  i0.ɵɵpropertyInterpolate("alt", ctx.description);
1032
1032
  i0.ɵɵpropertyInterpolate("src", ctx.imageLink, i0.ɵɵsanitizeUrl);
@@ -5658,10 +5658,9 @@ CaseFieldService.ɵprov = i0.ɵɵdefineInjectable({ token: CaseFieldService, fac
5658
5658
  }], null, null); })();
5659
5659
 
5660
5660
  class CaseFileViewService {
5661
- constructor(http, appConfig, errorService) {
5661
+ constructor(http, appConfig) {
5662
5662
  this.http = http;
5663
5663
  this.appConfig = appConfig;
5664
- this.errorService = errorService;
5665
5664
  }
5666
5665
  /**
5667
5666
  * Retrieves the categories and documents for a case.
@@ -5691,11 +5690,11 @@ class CaseFileViewService {
5691
5690
  return of(null);
5692
5691
  }
5693
5692
  }
5694
- CaseFileViewService.ɵfac = function CaseFileViewService_Factory(t) { return new (t || CaseFileViewService)(i0.ɵɵinject(HttpService), i0.ɵɵinject(AbstractAppConfig), i0.ɵɵinject(HttpErrorService)); };
5693
+ CaseFileViewService.ɵfac = function CaseFileViewService_Factory(t) { return new (t || CaseFileViewService)(i0.ɵɵinject(HttpService), i0.ɵɵinject(AbstractAppConfig)); };
5695
5694
  CaseFileViewService.ɵprov = i0.ɵɵdefineInjectable({ token: CaseFileViewService, factory: CaseFileViewService.ɵfac });
5696
5695
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CaseFileViewService, [{
5697
5696
  type: Injectable
5698
- }], function () { return [{ type: HttpService }, { type: AbstractAppConfig }, { type: HttpErrorService }]; }, null); })();
5697
+ }], function () { return [{ type: HttpService }, { type: AbstractAppConfig }]; }, null); })();
5699
5698
 
5700
5699
  class DocumentManagementService {
5701
5700
  constructor(http, appConfig) {
@@ -7604,7 +7603,7 @@ class IsCompoundPipe {
7604
7603
  }
7605
7604
  }
7606
7605
  IsCompoundPipe.COMPOUND_TYPES = [
7607
- 'Complex', 'Label', 'AddressGlobal', 'AddressUK', 'AddressGlobalUK', 'CasePaymentHistoryViewer', 'CaseHistoryViewer', 'Organisation', 'WaysToPay'
7606
+ 'Complex', 'Label', 'AddressGlobal', 'AddressUK', 'AddressGlobalUK', 'CasePaymentHistoryViewer', 'CaseHistoryViewer', 'Organisation', 'WaysToPay', 'ComponentLauncher'
7608
7607
  ];
7609
7608
  IsCompoundPipe.EXCLUDE = [
7610
7609
  'CaseLink', 'JudicialUser'
@@ -7827,7 +7826,7 @@ FieldLabelPipe.ɵpipe = i0.ɵɵdefinePipe({ name: "ccdFieldLabel", type: FieldLa
7827
7826
  }]
7828
7827
  }], null, null); })();
7829
7828
 
7830
- const _c0$H = ["writeComplexFieldComponent"];
7829
+ const _c0$G = ["writeComplexFieldComponent"];
7831
7830
  function WriteAddressFieldComponent_div_1_div_4_span_4_Template(rf, ctx) { if (rf & 1) {
7832
7831
  i0.ɵɵelementStart(0, "span", 14);
7833
7832
  i0.ɵɵtext(1, "Enter the Postcode");
@@ -8020,7 +8019,7 @@ class WriteAddressFieldComponent extends AbstractFieldWriteComponent {
8020
8019
  }
8021
8020
  WriteAddressFieldComponent.ɵfac = function WriteAddressFieldComponent_Factory(t) { return new (t || WriteAddressFieldComponent)(i0.ɵɵdirectiveInject(AddressesService), i0.ɵɵdirectiveInject(IsCompoundPipe)); };
8022
8021
  WriteAddressFieldComponent.ɵcmp = i0.ɵɵdefineComponent({ type: WriteAddressFieldComponent, selectors: [["ccd-write-address-field"]], viewQuery: function WriteAddressFieldComponent_Query(rf, ctx) { if (rf & 1) {
8023
- i0.ɵɵviewQuery(_c0$H, 1);
8022
+ i0.ɵɵviewQuery(_c0$G, 1);
8024
8023
  i0.ɵɵviewQuery(FocusElementDirective, 1);
8025
8024
  } if (rf & 2) {
8026
8025
  let _t;
@@ -8068,6 +8067,12 @@ class CaseFileViewDocument {
8068
8067
  class CategoriesAndDocuments {
8069
8068
  }
8070
8069
 
8070
+ var DocumentTreeNodeType;
8071
+ (function (DocumentTreeNodeType) {
8072
+ DocumentTreeNodeType["FOLDER"] = "folder";
8073
+ DocumentTreeNodeType["DOCUMENT"] = "document";
8074
+ })(DocumentTreeNodeType || (DocumentTreeNodeType = {}));
8075
+
8071
8076
  class DocumentTreeNode {
8072
8077
  get childDocumentCount() {
8073
8078
  const countChildren = (childNodes) => {
@@ -8087,9 +8092,9 @@ class DocumentTreeNode {
8087
8092
  var _a, _b;
8088
8093
  const sortAscending = () => {
8089
8094
  return (a, b) => {
8090
- const nameA = a.name.toUpperCase(); // ignore upper and lowercase
8091
- const nameB = b.name.toUpperCase(); // ignore upper and lowercase
8092
- if (a.type === 'category' || b.type === 'category') {
8095
+ const nameA = a.name.toUpperCase();
8096
+ const nameB = b.name.toUpperCase();
8097
+ if (a.type === DocumentTreeNodeType.FOLDER || b.type === DocumentTreeNodeType.FOLDER) {
8093
8098
  return 0;
8094
8099
  }
8095
8100
  if (nameA < nameB) {
@@ -8109,9 +8114,9 @@ class DocumentTreeNode {
8109
8114
  var _a, _b;
8110
8115
  const sortDescending = () => {
8111
8116
  return (a, b) => {
8112
- const nameA = a.name.toUpperCase(); // ignore upper and lowercase
8113
- const nameB = b.name.toUpperCase(); // ignore upper and lowercase
8114
- if (a.type === 'category' || b.type === 'category') {
8117
+ const nameA = a.name.toUpperCase();
8118
+ const nameB = b.name.toUpperCase();
8119
+ if (a.type === DocumentTreeNodeType.FOLDER || b.type === DocumentTreeNodeType.FOLDER) {
8115
8120
  return 0;
8116
8121
  }
8117
8122
  if (nameA > nameB) {
@@ -8158,198 +8163,6 @@ __decorate([
8158
8163
  __metadata("design:paramtypes", [])
8159
8164
  ], DocumentTreeNode.prototype, "childDocumentCount", null);
8160
8165
 
8161
- const categoriesAndDocumentsTestData = {
8162
- case_version: 1,
8163
- categories: [
8164
- {
8165
- category_id: 'Beers',
8166
- category_name: 'Beers',
8167
- category_order: 1,
8168
- documents: [
8169
- {
8170
- document_url: '/test',
8171
- document_filename: 'Lager encyclopedia',
8172
- document_binary_url: '/test/binary',
8173
- attribute_path: '',
8174
- upload_timestamp: ''
8175
- },
8176
- {
8177
- document_url: '/test',
8178
- document_filename: 'Beers encyclopedia',
8179
- document_binary_url: '/test/binary',
8180
- attribute_path: '',
8181
- upload_timestamp: ''
8182
- },
8183
- {
8184
- document_url: '/test',
8185
- document_filename: 'Ale encyclopedia',
8186
- document_binary_url: '/test/binary',
8187
- attribute_path: '',
8188
- upload_timestamp: ''
8189
- }
8190
- ],
8191
- sub_categories: [
8192
- {
8193
- category_id: 'BeersBitters',
8194
- category_name: 'Bitters',
8195
- category_order: 1,
8196
- documents: [],
8197
- sub_categories: []
8198
- },
8199
- {
8200
- category_id: 'BeersAmerican',
8201
- category_name: 'American',
8202
- category_order: 2,
8203
- documents: [],
8204
- sub_categories: []
8205
- },
8206
- {
8207
- category_id: 'BeersAsian',
8208
- category_name: 'Asian',
8209
- category_order: 3,
8210
- documents: [],
8211
- sub_categories: []
8212
- }
8213
- ]
8214
- },
8215
- {
8216
- category_id: 'Wines',
8217
- category_name: 'Wines',
8218
- category_order: 2,
8219
- documents: [],
8220
- sub_categories: [
8221
- {
8222
- category_id: 'WinesFrench',
8223
- category_name: 'French',
8224
- category_order: 1,
8225
- documents: [],
8226
- sub_categories: []
8227
- },
8228
- {
8229
- category_id: 'WinesItalian',
8230
- category_name: 'Italian',
8231
- category_order: 2,
8232
- documents: [],
8233
- sub_categories: []
8234
- }
8235
- ]
8236
- },
8237
- {
8238
- category_id: 'Spirits',
8239
- category_name: 'Spirits',
8240
- category_order: 3,
8241
- documents: [],
8242
- sub_categories: [
8243
- {
8244
- category_id: 'SpiritsWhisky',
8245
- category_name: 'Scotch whisky',
8246
- category_order: 1,
8247
- documents: [],
8248
- sub_categories: [
8249
- {
8250
- category_id: 'WhiskyHighland',
8251
- category_name: 'Highland',
8252
- category_order: 1,
8253
- documents: [],
8254
- sub_categories: [
8255
- {
8256
- category_id: 'WhiskyHighland1',
8257
- category_name: 'Highland 1',
8258
- category_order: 1,
8259
- documents: [],
8260
- sub_categories: []
8261
- }
8262
- ]
8263
- },
8264
- {
8265
- category_id: 'WhiskyLowland',
8266
- category_name: 'Lowland',
8267
- category_order: 2,
8268
- documents: [],
8269
- sub_categories: [
8270
- {
8271
- category_id: 'WhiskyLowland1',
8272
- category_name: 'Lowland 1',
8273
- category_order: 1,
8274
- documents: [
8275
- {
8276
- document_url: '/test',
8277
- document_filename: 'Details about Whisky Lowland 1',
8278
- document_binary_url: '/test/binary',
8279
- attribute_path: '',
8280
- upload_timestamp: ''
8281
- }
8282
- ],
8283
- sub_categories: []
8284
- },
8285
- {
8286
- category_id: 'WhiskyLowland2',
8287
- category_name: 'Lowland 2',
8288
- category_order: 2,
8289
- documents: [],
8290
- sub_categories: []
8291
- }
8292
- ]
8293
- },
8294
- {
8295
- category_id: 'WhiskyIslay',
8296
- category_name: 'Islay',
8297
- category_order: 3,
8298
- documents: [
8299
- {
8300
- document_url: '/test',
8301
- document_filename: 'Details about Whisky Islay',
8302
- document_binary_url: '/test/binary',
8303
- attribute_path: '',
8304
- upload_timestamp: ''
8305
- },
8306
- {
8307
- document_url: '/test',
8308
- document_filename: 'More information about Whisky Islay',
8309
- document_binary_url: '/test/binary',
8310
- attribute_path: '',
8311
- upload_timestamp: ''
8312
- }
8313
- ],
8314
- sub_categories: []
8315
- },
8316
- {
8317
- category_id: 'WhiskySpeyside',
8318
- category_name: 'Speyside',
8319
- category_order: 4,
8320
- documents: [],
8321
- sub_categories: []
8322
- },
8323
- {
8324
- category_id: 'WhiskyCampbeltown',
8325
- category_name: 'Campbeltown',
8326
- category_order: 5,
8327
- documents: [],
8328
- sub_categories: []
8329
- }
8330
- ]
8331
- }
8332
- ]
8333
- }
8334
- ],
8335
- uncategorised_documents: [
8336
- {
8337
- document_url: '/uncategorised-document-1',
8338
- document_filename: 'Uncategorised document 1',
8339
- document_binary_url: '/test/binary',
8340
- attribute_path: '',
8341
- upload_timestamp: ''
8342
- },
8343
- {
8344
- document_url: '/uncategorised-document-2',
8345
- document_filename: 'Uncategorised document 2',
8346
- document_binary_url: '/test/binary',
8347
- attribute_path: '',
8348
- upload_timestamp: ''
8349
- }
8350
- ]
8351
- };
8352
-
8353
8166
  function CaseFileViewOverlayMenuComponent_ng_template_0_ng_container_1_Template(rf, ctx) { if (rf & 1) {
8354
8167
  i0.ɵɵelementContainerStart(0);
8355
8168
  i0.ɵɵelementStart(1, "div", 4);
@@ -8475,51 +8288,74 @@ CaseFileViewFolderSortComponent.ɵcmp = i0.ɵɵdefineComponent({ type: CaseFileV
8475
8288
  type: Output
8476
8289
  }] }); })();
8477
8290
 
8478
- const _c0$G = ["tree"];
8479
- function CaseFileViewFolderComponent_cdk_nested_tree_node_7_Template(rf, ctx) { if (rf & 1) {
8480
- i0.ɵɵelementStart(0, "cdk-nested-tree-node", 7);
8481
- i0.ɵɵelementStart(1, "div", 8);
8482
- i0.ɵɵelementStart(2, "button", 9);
8483
- i0.ɵɵelement(3, "img", 10);
8291
+ function CaseFileViewFolderComponent_div_8_div_1_Template(rf, ctx) { if (rf & 1) {
8292
+ i0.ɵɵelementStart(0, "div");
8293
+ i0.ɵɵtext(1, " No results found ");
8294
+ i0.ɵɵelementEnd();
8295
+ } }
8296
+ function CaseFileViewFolderComponent_div_8_cdk_nested_tree_node_3_Template(rf, ctx) { if (rf & 1) {
8297
+ i0.ɵɵelementStart(0, "cdk-nested-tree-node", 12);
8298
+ i0.ɵɵelementStart(1, "div", 13);
8299
+ i0.ɵɵelementStart(2, "button", 14);
8300
+ i0.ɵɵelement(3, "img", 15);
8484
8301
  i0.ɵɵelementEnd();
8485
- i0.ɵɵelementStart(4, "span", 11);
8302
+ i0.ɵɵelementStart(4, "span", 16);
8486
8303
  i0.ɵɵtext(5);
8487
8304
  i0.ɵɵelementEnd();
8488
8305
  i0.ɵɵelementEnd();
8489
8306
  i0.ɵɵelementEnd();
8490
8307
  } if (rf & 2) {
8491
- const node_r2 = ctx.$implicit;
8308
+ const node_r4 = ctx.$implicit;
8492
8309
  i0.ɵɵadvance(5);
8493
- i0.ɵɵtextInterpolate(node_r2.name);
8494
- } }
8495
- function CaseFileViewFolderComponent_cdk_nested_tree_node_8_Template(rf, ctx) { if (rf & 1) {
8496
- i0.ɵɵelementStart(0, "cdk-nested-tree-node", 7);
8497
- i0.ɵɵelementStart(1, "div", 12);
8498
- i0.ɵɵelementStart(2, "button", 13);
8499
- i0.ɵɵelement(3, "img", 14);
8500
- i0.ɵɵelementStart(4, "span", 15);
8310
+ i0.ɵɵtextInterpolate(node_r4.name);
8311
+ } }
8312
+ function CaseFileViewFolderComponent_div_8_cdk_nested_tree_node_4_Template(rf, ctx) { if (rf & 1) {
8313
+ i0.ɵɵelementStart(0, "cdk-nested-tree-node", 12);
8314
+ i0.ɵɵelementStart(1, "div", 13);
8315
+ i0.ɵɵelementStart(2, "button", 17);
8316
+ i0.ɵɵelement(3, "img", 18);
8317
+ i0.ɵɵelementStart(4, "span", 19);
8501
8318
  i0.ɵɵtext(5);
8502
8319
  i0.ɵɵelementEnd();
8503
8320
  i0.ɵɵelementEnd();
8504
- i0.ɵɵelementStart(6, "span", 16);
8321
+ i0.ɵɵelementStart(6, "span", 20);
8505
8322
  i0.ɵɵtext(7);
8506
8323
  i0.ɵɵelementEnd();
8507
8324
  i0.ɵɵelementEnd();
8508
8325
  i0.ɵɵelementStart(8, "div");
8509
- i0.ɵɵelementContainer(9, 17);
8326
+ i0.ɵɵelementContainer(9, 21);
8510
8327
  i0.ɵɵelementEnd();
8511
8328
  i0.ɵɵelementEnd();
8512
8329
  } if (rf & 2) {
8513
- const node_r3 = ctx.$implicit;
8514
- const ctx_r1 = i0.ɵɵnextContext();
8330
+ const node_r5 = ctx.$implicit;
8331
+ const ctx_r3 = i0.ɵɵnextContext(2);
8515
8332
  i0.ɵɵadvance(2);
8516
- i0.ɵɵattribute("aria-label", "toggle " + node_r3.name);
8517
- i0.ɵɵadvance(3);
8518
- i0.ɵɵtextInterpolate(node_r3.childDocumentCount);
8333
+ i0.ɵɵattribute("aria-label", "toggle " + node_r5.name);
8334
+ i0.ɵɵadvance(1);
8335
+ i0.ɵɵproperty("src", ctx_r3.nestedTreeControl.isExpanded(node_r5) ? "/assets/images/folder-open.png" : "/assets/images/folder.png", i0.ɵɵsanitizeUrl);
8336
+ i0.ɵɵadvance(2);
8337
+ i0.ɵɵtextInterpolate(node_r5.childDocumentCount);
8519
8338
  i0.ɵɵadvance(2);
8520
- i0.ɵɵtextInterpolate(node_r3.name);
8339
+ i0.ɵɵtextInterpolate(node_r5.name);
8340
+ i0.ɵɵadvance(1);
8341
+ i0.ɵɵclassProp("document-tree-invisible", !ctx_r3.nestedTreeControl.isExpanded(node_r5));
8342
+ } }
8343
+ function CaseFileViewFolderComponent_div_8_Template(rf, ctx) { if (rf & 1) {
8344
+ i0.ɵɵelementStart(0, "div", 7);
8345
+ i0.ɵɵtemplate(1, CaseFileViewFolderComponent_div_8_div_1_Template, 2, 0, "div", 8);
8346
+ i0.ɵɵelementStart(2, "cdk-tree", 9);
8347
+ i0.ɵɵtemplate(3, CaseFileViewFolderComponent_div_8_cdk_nested_tree_node_3_Template, 6, 1, "cdk-nested-tree-node", 10);
8348
+ i0.ɵɵtemplate(4, CaseFileViewFolderComponent_div_8_cdk_nested_tree_node_4_Template, 10, 6, "cdk-nested-tree-node", 11);
8349
+ i0.ɵɵelementEnd();
8350
+ i0.ɵɵelementEnd();
8351
+ } if (rf & 2) {
8352
+ const ctx_r0 = i0.ɵɵnextContext();
8521
8353
  i0.ɵɵadvance(1);
8522
- i0.ɵɵclassProp("document-tree-invisible", !ctx_r1.nestedTreeControl.isExpanded(node_r3));
8354
+ i0.ɵɵproperty("ngIf", !ctx_r0.nestedDataSource || ctx_r0.nestedDataSource.length === 0);
8355
+ i0.ɵɵadvance(1);
8356
+ i0.ɵɵproperty("dataSource", ctx_r0.nestedDataSource)("treeControl", ctx_r0.nestedTreeControl);
8357
+ i0.ɵɵadvance(2);
8358
+ i0.ɵɵproperty("cdkTreeNodeDefWhen", ctx_r0.nestedChildren);
8523
8359
  } }
8524
8360
  class CaseFileViewFolderComponent {
8525
8361
  constructor() {
@@ -8528,37 +8364,38 @@ class CaseFileViewFolderComponent {
8528
8364
  this.nestedChildren = (_, nodeData) => nodeData.children;
8529
8365
  this.nestedTreeControl = new NestedTreeControl(this.getChildren);
8530
8366
  }
8531
- get documentCount() {
8532
- var _a;
8533
- if ((_a = this.nestedDataSource) === null || _a === void 0 ? void 0 : _a.length) {
8534
- return this.nestedDataSource.reduce((acc, item) => {
8535
- return acc + item.childDocumentCount;
8536
- }, 0);
8537
- }
8538
- else {
8539
- return 0;
8540
- }
8541
- }
8542
8367
  ngOnInit() {
8368
+ this.documentFilterFormGroup = new FormGroup({});
8369
+ this.documentSearchFormControl = new FormControl('');
8370
+ this.documentFilterFormGroup.addControl(CaseFileViewFolderComponent.DOCUMENT_SEARCH_FORM_CONTROL_NAME, this.documentSearchFormControl);
8371
+ // Listen to search input and initiate filter documents if at least three characters entered
8372
+ this.documentFilterSubscription = this.documentSearchFormControl.valueChanges.pipe(tap((searchTerm) => this.searchTermLength = searchTerm.length), switchMap((searchTerm) => this.filter(searchTerm.toLowerCase()).pipe())).subscribe(documentTreeData => {
8373
+ this.nestedDataSource = documentTreeData;
8374
+ this.nestedTreeControl.dataNodes = documentTreeData;
8375
+ this.searchTermLength >= CaseFileViewFolderComponent.MINIMUM_SEARCH_CHARACTERS
8376
+ ? this.nestedTreeControl.expandAll()
8377
+ : this.nestedTreeControl.collapseAll();
8378
+ });
8379
+ // Subscribe to the input categories and documents, and generate tree data and initialise cdk tree
8543
8380
  this.categoriesAndDocumentsSubscription = this.categoriesAndDocuments.subscribe(categoriesAndDocuments => {
8544
- // Using the mock data for now as we have to display the documents as well for demo purpose
8545
- const categories = this.loadCategories(); // categoriesAndDocuments.categories;
8381
+ const categories = categoriesAndDocuments.categories;
8546
8382
  // Generate document tree data from categories
8547
- const treeData = this.generateTreeData(categories);
8383
+ this.documentTreeData = this.generateTreeData(categories);
8548
8384
  // Append uncategorised documents
8549
8385
  if (categoriesAndDocuments.uncategorised_documents && categoriesAndDocuments.uncategorised_documents.length > 0) {
8550
8386
  const uncategorisedDocuments = this.getUncategorisedDocuments(categoriesAndDocuments.uncategorised_documents);
8551
- treeData.push(uncategorisedDocuments);
8387
+ this.documentTreeData.push(uncategorisedDocuments);
8552
8388
  }
8553
8389
  // Initialise cdk tree with generated data
8554
- this.nestedDataSource = treeData;
8390
+ this.nestedDataSource = this.documentTreeData;
8391
+ this.nestedTreeControl.dataNodes = this.documentTreeData;
8555
8392
  });
8556
8393
  }
8557
8394
  generateTreeData(categories) {
8558
8395
  return categories.reduce((tree, node) => {
8559
8396
  const newDocumentTreeNode = new DocumentTreeNode();
8560
8397
  newDocumentTreeNode.name = node.category_name;
8561
- newDocumentTreeNode.type = 'category';
8398
+ newDocumentTreeNode.type = DocumentTreeNodeType.FOLDER;
8562
8399
  newDocumentTreeNode.children = [...this.generateTreeData(node.sub_categories), ...this.getDocuments(node.documents)];
8563
8400
  return [
8564
8401
  ...tree,
@@ -8571,7 +8408,7 @@ class CaseFileViewFolderComponent {
8571
8408
  documents.forEach(document => {
8572
8409
  const documentTreeNode = new DocumentTreeNode();
8573
8410
  documentTreeNode.name = document.document_filename;
8574
- documentTreeNode.type = 'document';
8411
+ documentTreeNode.type = DocumentTreeNodeType.DOCUMENT;
8575
8412
  documentsToReturn.push(documentTreeNode);
8576
8413
  });
8577
8414
  return documentsToReturn;
@@ -8581,15 +8418,35 @@ class CaseFileViewFolderComponent {
8581
8418
  uncategorisedDocuments.forEach(document => {
8582
8419
  const documentTreeNode = new DocumentTreeNode();
8583
8420
  documentTreeNode.name = document.document_filename;
8584
- documentTreeNode.type = 'document';
8421
+ documentTreeNode.type = DocumentTreeNodeType.DOCUMENT;
8585
8422
  documents.push(documentTreeNode);
8586
8423
  });
8587
8424
  const uncategorisedNode = new DocumentTreeNode();
8588
8425
  uncategorisedNode.name = CaseFileViewFolderComponent.UNCATEGORISED_DOCUMENTS_TITLE;
8589
- uncategorisedNode.type = 'category';
8426
+ uncategorisedNode.type = DocumentTreeNodeType.FOLDER;
8590
8427
  uncategorisedNode.children = documents;
8591
8428
  return uncategorisedNode;
8592
8429
  }
8430
+ filter(searchTerm) {
8431
+ // Make a copy of the data so we do not mutate the original
8432
+ function copy(node) {
8433
+ const documentTreeNode = new DocumentTreeNode();
8434
+ return Object.assign(documentTreeNode, node);
8435
+ }
8436
+ let filteredData = this.documentTreeData;
8437
+ if (searchTerm && searchTerm.length >= CaseFileViewFolderComponent.MINIMUM_SEARCH_CHARACTERS && this.documentFilterFormGroup.controls[CaseFileViewFolderComponent.DOCUMENT_SEARCH_FORM_CONTROL_NAME].value.length > 2) {
8438
+ filteredData = this.documentTreeData.map(copy).filter(function filterTreeData(node) {
8439
+ if (node.name && node.name.toLowerCase().includes(searchTerm) && node.type === DocumentTreeNodeType.DOCUMENT) {
8440
+ return true;
8441
+ }
8442
+ // Call recursively if node has children
8443
+ if (node.children) {
8444
+ return (node.children = node.children.map(copy).filter(filterTreeData)).length;
8445
+ }
8446
+ });
8447
+ }
8448
+ return of(filteredData);
8449
+ }
8593
8450
  sortDataSourceAscAlphabetically() {
8594
8451
  const sortedData = this.nestedDataSource.map(item => {
8595
8452
  item.sortChildrenAscending();
@@ -8608,11 +8465,6 @@ class CaseFileViewFolderComponent {
8608
8465
  });
8609
8466
  this.updateNodeData(sortedData);
8610
8467
  }
8611
- ngOnDestroy() {
8612
- if (this.categoriesAndDocumentsSubscription) {
8613
- this.categoriesAndDocumentsSubscription.unsubscribe();
8614
- }
8615
- }
8616
8468
  updateNodeData(data) {
8617
8469
  const prevSelected = this.nestedTreeControl.expansionModel.selected.map((item) => {
8618
8470
  return item.name;
@@ -8633,42 +8485,39 @@ class CaseFileViewFolderComponent {
8633
8485
  });
8634
8486
  newObjects.forEach(object => this.nestedTreeControl.expand(object));
8635
8487
  }
8636
- loadCategories() {
8637
- return categoriesAndDocumentsTestData.categories;
8488
+ ngOnDestroy() {
8489
+ var _a, _b;
8490
+ (_a = this.categoriesAndDocumentsSubscription) === null || _a === void 0 ? void 0 : _a.unsubscribe();
8491
+ (_b = this.documentFilterSubscription) === null || _b === void 0 ? void 0 : _b.unsubscribe();
8638
8492
  }
8639
8493
  }
8640
8494
  CaseFileViewFolderComponent.UNCATEGORISED_DOCUMENTS_TITLE = 'Uncategorised documents';
8495
+ CaseFileViewFolderComponent.DOCUMENT_SEARCH_FORM_CONTROL_NAME = 'documentSearchFormControl';
8496
+ CaseFileViewFolderComponent.MINIMUM_SEARCH_CHARACTERS = 3;
8641
8497
  CaseFileViewFolderComponent.ɵfac = function CaseFileViewFolderComponent_Factory(t) { return new (t || CaseFileViewFolderComponent)(); };
8642
- CaseFileViewFolderComponent.ɵcmp = i0.ɵɵdefineComponent({ type: CaseFileViewFolderComponent, selectors: [["ccd-case-file-view-folder"]], viewQuery: function CaseFileViewFolderComponent_Query(rf, ctx) { if (rf & 1) {
8643
- i0.ɵɵviewQuery(_c0$G, 3);
8644
- } if (rf & 2) {
8645
- let _t;
8646
- i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.tree = _t.first);
8647
- } }, inputs: { categoriesAndDocuments: "categoriesAndDocuments" }, decls: 9, vars: 4, consts: [[1, "document-folders-header"], [1, "document-folders-header__title"], [3, "sortAscending", "sortDescending"], [1, "document-tree-container"], [3, "dataSource", "treeControl"], ["class", "document-tree-node", 4, "cdkTreeNodeDef"], ["class", "document-tree-node", 4, "cdkTreeNodeDef", "cdkTreeNodeDefWhen"], [1, "document-tree-node"], [1, "node"], ["mat-icon-button", "", "disabled", "", 1, "node__icon"], ["src", "/assets/images/document.png", "alt", "Document icon", 1, "node__iconImg"], [1, "node__name", "node-name-document"], ["cdkTreeNodeToggle", "", 1, "node"], ["mat-icon-button", "", 1, "node__icon"], ["src", "/assets/images/folder.png", "alt", "Folder icon", 1, "node__iconImg"], [1, "node__count"], [1, "node__name", "node__name--folder"], ["cdkTreeNodeOutlet", ""]], template: function CaseFileViewFolderComponent_Template(rf, ctx) { if (rf & 1) {
8498
+ CaseFileViewFolderComponent.ɵcmp = i0.ɵɵdefineComponent({ type: CaseFileViewFolderComponent, selectors: [["ccd-case-file-view-folder"]], inputs: { categoriesAndDocuments: "categoriesAndDocuments" }, decls: 9, vars: 2, consts: [[1, "document-filter-container"], [1, "form-group", "document-filter", 3, "formGroup"], ["type", "search", "id", "document-search", "name", "documentSearchFormControl", "formControlName", "documentSearchFormControl", "placeholder", "Search by document name", 1, "form-control", "document-search"], [1, "document-folders-header"], [1, "document-folders-header__title"], [3, "sortAscending", "sortDescending"], ["class", "document-tree-container", 4, "ngIf"], [1, "document-tree-container"], [4, "ngIf"], [3, "dataSource", "treeControl"], ["class", "document-tree-node", 4, "cdkTreeNodeDef"], ["class", "document-tree-node", 4, "cdkTreeNodeDef", "cdkTreeNodeDefWhen"], [1, "document-tree-node"], ["cdkTreeNodeToggle", "", 1, "node"], ["mat-icon-button", "", "disabled", "", 1, "node__icon"], ["src", "/assets/images/document.png", "alt", "Document icon", 1, "node__iconImg"], [1, "node__name", "node-name-document"], ["mat-icon-button", "", 1, "node__icon"], ["alt", "Folder icon", 1, "node__iconImg", 3, "src"], [1, "node__count"], [1, "node__name", "node__name--folder"], ["cdkTreeNodeOutlet", ""]], template: function CaseFileViewFolderComponent_Template(rf, ctx) { if (rf & 1) {
8648
8499
  i0.ɵɵelementStart(0, "div", 0);
8649
8500
  i0.ɵɵelementStart(1, "div", 1);
8650
- i0.ɵɵtext(2);
8501
+ i0.ɵɵelement(2, "input", 2);
8651
8502
  i0.ɵɵelementEnd();
8652
- i0.ɵɵelementStart(3, "div");
8653
- i0.ɵɵelementStart(4, "ccd-case-file-view-folder-sort", 2);
8654
- i0.ɵɵlistener("sortAscending", function CaseFileViewFolderComponent_Template_ccd_case_file_view_folder_sort_sortAscending_4_listener() { return ctx.sortDataSourceAscAlphabetically(); })("sortDescending", function CaseFileViewFolderComponent_Template_ccd_case_file_view_folder_sort_sortDescending_4_listener() { return ctx.sortDataSourceDescAlphabetically(); });
8655
8503
  i0.ɵɵelementEnd();
8504
+ i0.ɵɵelementStart(3, "div", 3);
8505
+ i0.ɵɵelementStart(4, "div", 4);
8506
+ i0.ɵɵtext(5, "Documents");
8656
8507
  i0.ɵɵelementEnd();
8508
+ i0.ɵɵelementStart(6, "div");
8509
+ i0.ɵɵelementStart(7, "ccd-case-file-view-folder-sort", 5);
8510
+ i0.ɵɵlistener("sortAscending", function CaseFileViewFolderComponent_Template_ccd_case_file_view_folder_sort_sortAscending_7_listener() { return ctx.sortDataSourceAscAlphabetically(); })("sortDescending", function CaseFileViewFolderComponent_Template_ccd_case_file_view_folder_sort_sortDescending_7_listener() { return ctx.sortDataSourceDescAlphabetically(); });
8657
8511
  i0.ɵɵelementEnd();
8658
- i0.ɵɵelementStart(5, "div", 3);
8659
- i0.ɵɵelementStart(6, "cdk-tree", 4);
8660
- i0.ɵɵtemplate(7, CaseFileViewFolderComponent_cdk_nested_tree_node_7_Template, 6, 1, "cdk-nested-tree-node", 5);
8661
- i0.ɵɵtemplate(8, CaseFileViewFolderComponent_cdk_nested_tree_node_8_Template, 10, 5, "cdk-nested-tree-node", 6);
8662
8512
  i0.ɵɵelementEnd();
8663
8513
  i0.ɵɵelementEnd();
8514
+ i0.ɵɵtemplate(8, CaseFileViewFolderComponent_div_8_Template, 5, 4, "div", 6);
8664
8515
  } if (rf & 2) {
8665
- i0.ɵɵadvance(2);
8666
- i0.ɵɵtextInterpolate1("Documents (", ctx.documentCount, ")");
8667
- i0.ɵɵadvance(4);
8668
- i0.ɵɵproperty("dataSource", ctx.nestedDataSource)("treeControl", ctx.nestedTreeControl);
8669
- i0.ɵɵadvance(2);
8670
- i0.ɵɵproperty("cdkTreeNodeDefWhen", ctx.nestedChildren);
8671
- } }, directives: [CaseFileViewFolderSortComponent, i2.CdkTree, i2.CdkTreeNodeDef, i2.CdkNestedTreeNode, i2.CdkTreeNodeToggle, i2.CdkTreeNodeOutlet], styles: [".document-folders-header[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;border-bottom:2px solid #c9c9c9;padding:10px}.document-folders-header__title[_ngcontent-%COMP%]{font-weight:700}.document-tree-container[_ngcontent-%COMP%]{margin:4px}.document-tree-container[_ngcontent-%COMP%] .document-tree-invisible[_ngcontent-%COMP%]{display:none}.document-tree-container[_ngcontent-%COMP%] .document-tree[_ngcontent-%COMP%] li[_ngcontent-%COMP%], .document-tree-container[_ngcontent-%COMP%] .document-tree[_ngcontent-%COMP%] ul[_ngcontent-%COMP%]{margin-top:0;margin-bottom:0;list-style-type:none}.document-tree-container[_ngcontent-%COMP%] .document-tree-node[_ngcontent-%COMP%]{display:block}.document-tree-container[_ngcontent-%COMP%] .document-tree-node[_ngcontent-%COMP%] .document-tree-node[_ngcontent-%COMP%]{padding-left:40px}.node[_ngcontent-%COMP%]{display:flex;align-items:center;padding:6px 0}.node__icon[_ngcontent-%COMP%]{position:relative;background:none;border:0}.node__iconImg[_ngcontent-%COMP%]{display:block;height:24px}.node__count[_ngcontent-%COMP%]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;padding-top:4px}.node__name[_ngcontent-%COMP%]{margin-left:6px}"] });
8516
+ i0.ɵɵadvance(1);
8517
+ i0.ɵɵproperty("formGroup", ctx.documentFilterFormGroup);
8518
+ i0.ɵɵadvance(7);
8519
+ i0.ɵɵproperty("ngIf", ctx.documentTreeData);
8520
+ } }, directives: [i1$3.NgControlStatusGroup, i1$3.FormGroupDirective, i1$3.DefaultValueAccessor, i1$3.NgControlStatus, i1$3.FormControlName, CaseFileViewFolderSortComponent, i1.NgIf, i4.CdkTree, i4.CdkTreeNodeDef, i4.CdkNestedTreeNode, i4.CdkTreeNodeToggle, i4.CdkTreeNodeOutlet], styles: [".document-filter-container[_ngcontent-%COMP%]{border-bottom:2px solid #c9c9c9;padding-bottom:4px}.document-filter-container[_ngcontent-%COMP%] .document-filter[_ngcontent-%COMP%]{height:70%;padding:8px 8px 0;margin-bottom:10px}.document-filter-container[_ngcontent-%COMP%] .document-filter[_ngcontent-%COMP%] .document-search[_ngcontent-%COMP%]{background:url(/assets/images/icon-search-black.svg) no-repeat 100% #fff;background-position-x:calc(100% - 4px);padding-right:30px;width:100%}.document-filter-container[_ngcontent-%COMP%] .documents-title[_ngcontent-%COMP%]{height:30%;margin-left:8px;font-weight:700}.document-folders-header[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;border-bottom:2px solid #c9c9c9;padding:10px}.document-folders-header__title[_ngcontent-%COMP%]{font-weight:700}.document-tree-container[_ngcontent-%COMP%]{margin:4px;overflow-x:hidden;overflow-y:scroll;height:400px}.document-tree-container[_ngcontent-%COMP%] .document-tree-invisible[_ngcontent-%COMP%]{display:none}.document-tree-container[_ngcontent-%COMP%] .document-tree[_ngcontent-%COMP%] li[_ngcontent-%COMP%], .document-tree-container[_ngcontent-%COMP%] .document-tree[_ngcontent-%COMP%] ul[_ngcontent-%COMP%]{margin-top:0;margin-bottom:0;list-style-type:none}.document-tree-container[_ngcontent-%COMP%] .document-tree-node[_ngcontent-%COMP%]{display:block}.document-tree-container[_ngcontent-%COMP%] .document-tree-node[_ngcontent-%COMP%] .document-tree-node[_ngcontent-%COMP%]{padding-left:40px}.node[_ngcontent-%COMP%]{display:flex;align-items:center;padding:6px 0;white-space:nowrap;cursor:pointer}.node__icon[_ngcontent-%COMP%]{position:relative;background:none;border:0;padding:6px}.node__iconImg[_ngcontent-%COMP%]{display:block;height:24px;width:24px}.node__count[_ngcontent-%COMP%]{color:#fff;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);padding-top:4px}.node__name[_ngcontent-%COMP%]{margin-left:4px}.document-tree[_ngcontent-%COMP%]::-webkit-scrollbar{width:.5em}.document-tree[_ngcontent-%COMP%]::-webkit-scrollbar-button{display:none}.document-tree[_ngcontent-%COMP%]::-webkit-scrollbar-track-piece{background:#eee}.document-tree[_ngcontent-%COMP%]::-webkit-scrollbar-thumb{background:#ccc}"] });
8672
8521
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CaseFileViewFolderComponent, [{
8673
8522
  type: Component,
8674
8523
  args: [{
@@ -8678,20 +8527,54 @@ CaseFileViewFolderComponent.ɵcmp = i0.ɵɵdefineComponent({ type: CaseFileViewF
8678
8527
  }]
8679
8528
  }], function () { return []; }, { categoriesAndDocuments: [{
8680
8529
  type: Input
8681
- }], tree: [{
8682
- type: ViewChild,
8683
- args: ['tree', { static: true }]
8684
8530
  }] }); })();
8685
8531
 
8532
+ function CaseFileViewFieldComponent_div_0_Template(rf, ctx) { if (rf & 1) {
8533
+ i0.ɵɵelementStart(0, "div", 2);
8534
+ i0.ɵɵelementStart(1, "h1", 3);
8535
+ i0.ɵɵtext(2, "Sorry, there is a problem with the service");
8536
+ i0.ɵɵelementEnd();
8537
+ i0.ɵɵelementStart(3, "p", 4);
8538
+ i0.ɵɵtext(4, "Try again later.");
8539
+ i0.ɵɵelementEnd();
8540
+ i0.ɵɵelementEnd();
8541
+ } }
8542
+ function CaseFileViewFieldComponent_div_1_Template(rf, ctx) { if (rf & 1) {
8543
+ i0.ɵɵelementStart(0, "div");
8544
+ i0.ɵɵelementStart(1, "h2", 5);
8545
+ i0.ɵɵtext(2, "Case file");
8546
+ i0.ɵɵelementEnd();
8547
+ i0.ɵɵelementStart(3, "div", 6);
8548
+ i0.ɵɵelementStart(4, "div", 7);
8549
+ i0.ɵɵelement(5, "ccd-case-file-view-folder", 8);
8550
+ i0.ɵɵelementEnd();
8551
+ i0.ɵɵelement(6, "div", 9);
8552
+ i0.ɵɵelementStart(7, "div", 10);
8553
+ i0.ɵɵelement(8, "mv-media-viewer", 11);
8554
+ i0.ɵɵelementEnd();
8555
+ i0.ɵɵelementEnd();
8556
+ i0.ɵɵelementEnd();
8557
+ } if (rf & 2) {
8558
+ const ctx_r1 = i0.ɵɵnextContext();
8559
+ i0.ɵɵadvance(5);
8560
+ i0.ɵɵproperty("categoriesAndDocuments", ctx_r1.categoriesAndDocuments$);
8561
+ i0.ɵɵadvance(3);
8562
+ i0.ɵɵproperty("url", "")("showToolbar", true)("contentType", "pdf");
8563
+ } }
8686
8564
  class CaseFileViewFieldComponent {
8687
8565
  constructor(elementRef, route, caseFileViewService) {
8688
8566
  this.elementRef = elementRef;
8689
8567
  this.route = route;
8690
8568
  this.caseFileViewService = caseFileViewService;
8569
+ this.getCategoriesAndDocumentsError = false;
8691
8570
  }
8692
8571
  ngOnInit() {
8693
8572
  const cid = this.route.snapshot.paramMap.get(CaseFileViewFieldComponent.PARAM_CASE_ID);
8694
8573
  this.categoriesAndDocuments$ = this.caseFileViewService.getCategoriesAndDocuments(cid);
8574
+ this.categoriesAndDocumentsSubscription = this.categoriesAndDocuments$.subscribe({
8575
+ next: _ => { },
8576
+ error: _ => this.getCategoriesAndDocumentsError = true
8577
+ });
8695
8578
  }
8696
8579
  ngAfterViewInit() {
8697
8580
  const slider = this.elementRef.nativeElement.querySelector('.slider');
@@ -8715,28 +8598,22 @@ class CaseFileViewFieldComponent {
8715
8598
  documentTreeContainer.setAttribute('style', `width: ${calculatedWidth}%`);
8716
8599
  });
8717
8600
  }
8601
+ ngOnDestroy() {
8602
+ if (this.categoriesAndDocumentsSubscription) {
8603
+ this.categoriesAndDocumentsSubscription.unsubscribe();
8604
+ }
8605
+ }
8718
8606
  }
8719
8607
  CaseFileViewFieldComponent.PARAM_CASE_ID = 'cid';
8720
8608
  CaseFileViewFieldComponent.ɵfac = function CaseFileViewFieldComponent_Factory(t) { return new (t || CaseFileViewFieldComponent)(i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i1$1.ActivatedRoute), i0.ɵɵdirectiveInject(CaseFileViewService)); };
8721
- CaseFileViewFieldComponent.ɵcmp = i0.ɵɵdefineComponent({ type: CaseFileViewFieldComponent, selectors: [["ccd-case-file-view-field"]], decls: 8, vars: 4, consts: [[1, "govuk-heading-l"], ["id", "case-file-view", 1, "govuk-form-group"], [1, "document-tree-container"], [3, "categoriesAndDocuments"], [1, "slider"], [1, "media-viewer-container"], [3, "url", "downloadFileName", "showToolbar", "contentType"]], template: function CaseFileViewFieldComponent_Template(rf, ctx) { if (rf & 1) {
8722
- i0.ɵɵelementStart(0, "h2", 0);
8723
- i0.ɵɵtext(1, "Case file");
8724
- i0.ɵɵelementEnd();
8725
- i0.ɵɵelementStart(2, "div", 1);
8726
- i0.ɵɵelementStart(3, "div", 2);
8727
- i0.ɵɵelement(4, "ccd-case-file-view-folder", 3);
8728
- i0.ɵɵelementEnd();
8729
- i0.ɵɵelement(5, "div", 4);
8730
- i0.ɵɵelementStart(6, "div", 5);
8731
- i0.ɵɵelement(7, "mv-media-viewer", 6);
8732
- i0.ɵɵelementEnd();
8733
- i0.ɵɵelementEnd();
8609
+ CaseFileViewFieldComponent.ɵcmp = i0.ɵɵdefineComponent({ type: CaseFileViewFieldComponent, selectors: [["ccd-case-file-view-field"]], decls: 2, vars: 2, consts: [["class", "govuk-grid-column-two-thirds", 4, "ngIf"], [4, "ngIf"], [1, "govuk-grid-column-two-thirds"], [1, "govuk-heading-xl"], [1, "govuk-body"], [1, "govuk-heading-l"], ["id", "case-file-view", 1, "govuk-form-group"], [1, "document-tree-container"], [3, "categoriesAndDocuments"], [1, "slider"], [1, "media-viewer-container"], [3, "url", "downloadFileName", "showToolbar", "contentType"]], template: function CaseFileViewFieldComponent_Template(rf, ctx) { if (rf & 1) {
8610
+ i0.ɵɵtemplate(0, CaseFileViewFieldComponent_div_0_Template, 5, 0, "div", 0);
8611
+ i0.ɵɵtemplate(1, CaseFileViewFieldComponent_div_1_Template, 9, 4, "div", 1);
8734
8612
  } if (rf & 2) {
8735
- i0.ɵɵadvance(4);
8736
- i0.ɵɵproperty("categoriesAndDocuments", ctx.categoriesAndDocuments$);
8737
- i0.ɵɵadvance(3);
8738
- i0.ɵɵproperty("url", "")("showToolbar", true)("contentType", "pdf");
8739
- } }, directives: [CaseFileViewFolderComponent, i4.ɵcs], styles: ["#case-file-view[_ngcontent-%COMP%]{display:flex;border:2px solid #c9c9c9}#case-file-view[_ngcontent-%COMP%] .document-tree-container[_ngcontent-%COMP%]{background-color:#faf8f8;width:30%;min-height:400px;min-width:10%}#case-file-view[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%]{width:.2%;background-color:#6b6b6b}#case-file-view[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%]:focus, #case-file-view[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%]:hover{cursor:col-resize}#case-file-view[_ngcontent-%COMP%] .media-viewer-container[_ngcontent-%COMP%]{flex:1 1 0%}"] });
8613
+ i0.ɵɵproperty("ngIf", ctx.getCategoriesAndDocumentsError);
8614
+ i0.ɵɵadvance(1);
8615
+ i0.ɵɵproperty("ngIf", !ctx.getCategoriesAndDocumentsError);
8616
+ } }, directives: [i1.NgIf, CaseFileViewFolderComponent, i5.ɵcs], styles: ["#case-file-view[_ngcontent-%COMP%]{display:flex;border:2px solid #c9c9c9}#case-file-view[_ngcontent-%COMP%] .document-tree-container[_ngcontent-%COMP%]{background-color:#faf8f8;width:30%;min-height:400px;min-width:10%}#case-file-view[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%]{width:.2%;background-color:#6b6b6b}#case-file-view[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%]:focus, #case-file-view[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%]:hover{cursor:col-resize}#case-file-view[_ngcontent-%COMP%] .media-viewer-container[_ngcontent-%COMP%]{flex:1 1 0%}"] });
8740
8617
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CaseFileViewFieldComponent, [{
8741
8618
  type: Component,
8742
8619
  args: [{
@@ -9481,7 +9358,7 @@ class WriteCollectionFieldComponent extends AbstractFieldWriteComponent {
9481
9358
  return notSimple.indexOf(caseField.field_type.collection_field_type.type) < 0;
9482
9359
  }
9483
9360
  }
9484
- WriteCollectionFieldComponent.ɵfac = function WriteCollectionFieldComponent_Factory(t) { return new (t || WriteCollectionFieldComponent)(i0.ɵɵdirectiveInject(i1$6.MatDialog), i0.ɵɵdirectiveInject(i2$1.ScrollToService), i0.ɵɵdirectiveInject(ProfileNotifier)); };
9361
+ WriteCollectionFieldComponent.ɵfac = function WriteCollectionFieldComponent_Factory(t) { return new (t || WriteCollectionFieldComponent)(i0.ɵɵdirectiveInject(i1$6.MatDialog), i0.ɵɵdirectiveInject(i2.ScrollToService), i0.ɵɵdirectiveInject(ProfileNotifier)); };
9485
9362
  WriteCollectionFieldComponent.ɵcmp = i0.ɵɵdefineComponent({ type: WriteCollectionFieldComponent, selectors: [["ccd-write-collection-field"]], viewQuery: function WriteCollectionFieldComponent_Query(rf, ctx) { if (rf & 1) {
9486
9363
  i0.ɵɵviewQuery(_c0$D, 1);
9487
9364
  } if (rf & 2) {
@@ -9523,7 +9400,7 @@ WriteCollectionFieldComponent.ɵcmp = i0.ɵɵdefineComponent({ type: WriteCollec
9523
9400
  templateUrl: './write-collection-field.html',
9524
9401
  styleUrls: ['./collection-field.scss']
9525
9402
  }]
9526
- }], function () { return [{ type: i1$6.MatDialog }, { type: i2$1.ScrollToService }, { type: ProfileNotifier }]; }, { caseFields: [{
9403
+ }], function () { return [{ type: i1$6.MatDialog }, { type: i2.ScrollToService }, { type: ProfileNotifier }]; }, { caseFields: [{
9527
9404
  type: Input
9528
9405
  }], formGroup: [{
9529
9406
  type: Input
@@ -10467,7 +10344,7 @@ DatetimePickerComponent.ɵcmp = i0.ɵɵdefineComponent({ type: DatetimePickerCom
10467
10344
  i0.ɵɵproperty("for", _r6);
10468
10345
  i0.ɵɵadvance(1);
10469
10346
  i0.ɵɵproperty("color", ctx.color)("touchUi", ctx.touchUi)("hideTime", ctx.hideTime)("startView", ctx.startView)("stepHour", ctx.stepHour)("stepSecond", ctx.stepSecond)("stepMinute", ctx.stepMinute)("showSeconds", ctx.showSeconds)("showSpinners", ctx.showSpinners)("disableMinute", ctx.disableMinute)("enableMeridian", ctx.enableMeridian);
10470
- } }, directives: [i1.NgClass, i1.NgIf, i1$3.DefaultValueAccessor, i4$1.NgxMatDatetimeInput, i1$3.NgControlStatus, i1$3.FormControlDirective, i5.MatDatepickerToggle, i6.MatSuffix, i4$1.NgxMatDatetimePicker], pipes: [FieldLabelPipe, FirstErrorPipe], styles: ["@charset \"UTF-8\";.datepicker-container{display:inline-block;position:relative;min-width:298px}.datepicker-container .govuk-input{height:35px;min-width:298px;width:auto;padding-right:40px;border:1px solid #000}.datepicker-container .govuk-input:focus{outline:1px solid #fd0;border:1px solid #000}.datepicker-container .govuk-input::-ms-clear{display:none}.datepicker-container .datepicker-wrapper-input{position:relative;display:inline-block;top:-20%;border:0}.datepicker-container .datepicker-wrapper-input:focus{border:0;outline:none}.datepicker-container .mat-icon-button{height:32px;width:32px}.datepicker-container .mat-icon-button:focus{outline:1px solid #fd0}.datepicker-container .mat-icon-button .mat-datepicker-toggle-default-icon{position:relative;top:-5px}.datepicker-container .mat-datepicker-toggle{position:absolute;right:0}.cdk-overlay-container .mat-datepicker-content{border:1px solid #000;border-radius:0;max-width:295px}.cdk-overlay-container .mat-datepicker-content .mat-calendar-table{width:calc(100% - 1px);table-layout:fixed}.cdk-overlay-container .mat-datepicker-content .mat-calendar-header{height:34px;border-bottom:1px ridge #bfc1c3}.cdk-overlay-container .mat-datepicker-content .mat-calendar-period-button{left:14%;min-width:125px;border-right:1px ridge #bfc1c3;border-left:1px ridge #bfc1c3;border-radius:0;top:-20px;width:200%}.cdk-overlay-container .mat-datepicker-content .mat-calendar-period-button .mat-button-wrapper{text-align:center;font-weight:700}.cdk-overlay-container .mat-datepicker-content .mat-calendar-period-button:focus{border:2px solid #000}.cdk-overlay-container .mat-datepicker-content .mat-calendar-previous-button{left:-73%;top:-20px;border:2px solid transparent;border-radius:0}.cdk-overlay-container .mat-datepicker-content .mat-calendar-previous-button:focus{border-color:#000}.cdk-overlay-container .mat-datepicker-content .mat-calendar-previous-button:after{border-left-width:5px;border-top-width:5px;color:#000;padding:4px;top:-2px;left:-2px}.cdk-overlay-container .mat-datepicker-content .mat-calendar-next-button{top:-20px;left:1%;border:2px solid transparent;border-radius:0}.cdk-overlay-container .mat-datepicker-content .mat-calendar-next-button:focus{border-color:#000}.cdk-overlay-container .mat-datepicker-content .mat-calendar-next-button:after{border-right-width:5px;border-top-width:5px;color:#000;padding:4px;top:-2px;left:-2px}.cdk-overlay-container .mat-datepicker-content .mat-button-wrapper{text-transform:capitalize!important}.cdk-overlay-container .mat-datepicker-content .mat-calendar{border-bottom:1px solid #000}.cdk-overlay-container .mat-datepicker-content .mat-calendar-table-header-divider{padding:0;border-bottom:none}.cdk-overlay-container .mat-datepicker-content .mat-calendar-table-header-divider:after{height:0}.cdk-overlay-container .mat-datepicker-content .mat-calendar-content{padding:0}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header{color:#000}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header th.ng-star-inserted{font-weight:700;font-size:15px;padding-top:2%;padding-bottom:2%;-moz-column-width:20px;column-width:20px}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header tr:first-of-type th{visibility:hidden}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header tr:first-of-type th:after{visibility:visible;color:#000;position:relative;left:-15px}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header tr:first-of-type th:first-of-type:after{content:\"MON\"}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header tr:first-of-type th:nth-of-type(2):after{left:-12px;content:\"TUE\"}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header tr:first-of-type th:nth-of-type(3):after{left:-18px;content:\"WED\"}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header tr:first-of-type th:nth-of-type(4):after{left:-14px;content:\"THU\"}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header tr:first-of-type th:nth-of-type(5):after{left:-10px;content:\"FRI\"}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header tr:first-of-type th:nth-of-type(6):after{content:\"SAT\"}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header tr:first-of-type th:nth-of-type(7):after{content:\"SUN\"}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-label{font-weight:700;font-size:large;color:#000}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-selected{border:none;background-color:transparent;color:#fff}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-active{background-color:#5694ca}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-today{border:none;box-shadow:none}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-cell{border:1px ridge #bfc1c3}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-cell[aria-selected=true]{background-color:#1d70b8;outline:3px solid #fd0;border:2px solid #000;outline-offset:1px;z-index:1}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table{border-collapse:separate;border-spacing:10px}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table .mat-calendar-body-active{background-color:#5694ca}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table .mat-calendar-body-cell{border:1px solid #bfc1c3}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table .mat-calendar-body-cell .mat-calendar-body-cell-content{border:none}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table .mat-calendar-body-cell .mat-calendar-body-selected{border:none;box-shadow:none;background-color:transparent}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table .mat-calendar-body-cell[aria-selected=true]{background-color:#1d70b8;outline:2px solid #fd0}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table{border-collapse:separate;border-spacing:20px}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table tr:first-of-type{visibility:collapse}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table .mat-calendar-body-active{background-color:#5694ca}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table .mat-calendar-body-cell{border:1px solid #bfc1c3}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table .mat-calendar-body-cell .mat-calendar-body-cell-content{border:none}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table .mat-calendar-body-cell .mat-calendar-body-selected{border:none;box-shadow:none;background-color:transparent}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table .mat-calendar-body-cell[aria-selected=true]{background-color:#1d70b8;outline:3px solid #fd0;border:2px solid #000;outline-offset:1px}.cdk-overlay-container .mat-datepicker-content .time-container{height:80px;padding-top:0}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker{width:100%}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table{margin-left:0!important}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tbody{position:relative}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr .mat-icon-button .mat-button-wrapper{width:auto;height:auto}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr .mat-icon-button:focus{outline:none}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:first-child{position:absolute;left:49px;top:15px;z-index:2}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:first-child button:disabled{display:none}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:first-child td:first-child [aria-label=\"expand_less icon\"]{position:absolute;left:-2px;top:25px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:first-child td:nth-child(3) [aria-label=\"expand_less icon\"].mat-icon-button{position:absolute;left:82px!important;top:25px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:first-child td:nth-child(5) [aria-label=\"expand_less icon\"].mat-icon-button{position:absolute;left:169px!important;top:25px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:first-child td:last-child [aria-label=\"expand_less icon\"].mat-icon-button{left:153px!important}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:first-child td:nth-last-child(2) [aria-label=\"expand_less icon\"].mat-icon-button{left:65px!important}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2){display:flex;padding:20px 0 20px 15px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2) td{margin-right:30px;text-align:right}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2) td:first-child .mat-form-field{width:50px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2) td:first-child .mat-form-field:before{color:#000;content:\"Hours\";position:relative;top:-5px;left:-5px;font-size:15px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2) td:nth-child(3) .mat-form-field:before{color:#000;content:\"Minutes\";position:relative;top:-5px;font-size:15px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2) td:last-child{text-align:left;left:-15px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2) .mat-form-field-disabled{display:none}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2) td:nth-of-type(5) .mat-form-field:before{color:#000;content:\"Seconds\";position:relative;top:-5px;font-size:15px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2) .meridian{border-bottom:none}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2) .meridian .mat-button{height:30px;top:21px;border-radius:0;color:#000;border-color:#000;background-color:#dee0e2;display:flex;justify-content:center}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2) .meridian .mat-button .mat-button-wrapper{position:relative;top:-2px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(4){display:flex;padding:2rem 0 2rem 15px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(4) td{margin-right:30px;text-align:right}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(4) td:last-child{text-align:left}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:last-child{position:absolute;left:49px;top:40px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:last-child button:disabled{display:none}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:last-child td:first-child [aria-label=\"expand_more icon\"]{position:absolute;top:15px;left:-2px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:last-child td:nth-child(3) [aria-label=\"expand_more icon\"].mat-icon-button{position:absolute;left:82px!important;top:15px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:last-child td:nth-child(5) [aria-label=\"expand_more icon\"].mat-icon-button{position:absolute;top:15px;left:169px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:last-child td:last-child [aria-label=\"expand_more icon\"].mat-icon-button{left:65px!important}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:last-child td:last-child.ng-star-inserted [aria-label=\"expand_more icon\"].mat-icon-button{left:153px!important}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr td{padding:0;border-bottom:0;position:relative}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr .spacer{display:none}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr .mat-icon{visibility:hidden;display:none}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr .mat-button-wrapper{display:block;width:15px;height:8px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr .mat-form-field-wrapper{padding-bottom:0}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr .mat-form-field{width:auto;max-width:none}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr [aria-label=\"expand_less icon\"].mat-icon-button .mat-button-wrapper:after{content:\" \u25B2\"}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr [aria-label=\"expand_more icon\"].mat-icon-button .mat-button-wrapper:after{content:\"\u25BC\"}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr .mat-form-field-flex{width:100%}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr .mat-form-field-flex .mat-form-field-infix{border:1px solid #000;height:20px;width:37px;display:flex;justify-content:center;align-items:center}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr .mat-form-field-underline{visibility:hidden}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr input{height:33px;width:37px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr input:focus{border-color:#000}.cdk-overlay-container .mat-datepicker-content .actions{padding-bottom:20px;margin-top:20px;justify-content:flex-start}.cdk-overlay-container .mat-datepicker-content .actions .mat-button{background-color:#00823b;position:relative;display:-moz-inline-stack;display:inline-block;padding:.526315em .789473em .263157em;border:none;border-radius:0;outline:1px solid transparent;outline-offset:-1px;-webkit-appearance:none;box-shadow:0 2px 0 #003618;font-size:1em;line-height:1.25;text-decoration:none;-webkit-font-smoothing:antialiased;color:#fff;box-sizing:border-box;vertical-align:top;width:80px;cursor:pointer}.cdk-overlay-container .mat-datepicker-content .actions .mat-button:focus{outline:2px solid #fd0}.cdk-overlay-container .mat-datepicker-content .actions .mat-button:hover{background-color:#006400}.cdk-overlay-container .mat-datepicker-content .actions .mat-button .mat-icon{visibility:hidden}.cdk-overlay-container .mat-datepicker-content .actions .mat-button .mat-button-wrapper:before{color:#fff;content:\"Confirm\";position:relative;font-size:15px;left:-3px}"], encapsulation: 2 });
10347
+ } }, directives: [i1.NgClass, i1.NgIf, i1$3.DefaultValueAccessor, i4$1.NgxMatDatetimeInput, i1$3.NgControlStatus, i1$3.FormControlDirective, i5$1.MatDatepickerToggle, i6.MatSuffix, i4$1.NgxMatDatetimePicker], pipes: [FieldLabelPipe, FirstErrorPipe], styles: ["@charset \"UTF-8\";.datepicker-container{display:inline-block;position:relative;min-width:298px}.datepicker-container .govuk-input{height:35px;min-width:298px;width:auto;padding-right:40px;border:1px solid #000}.datepicker-container .govuk-input:focus{outline:1px solid #fd0;border:1px solid #000}.datepicker-container .govuk-input::-ms-clear{display:none}.datepicker-container .datepicker-wrapper-input{position:relative;display:inline-block;top:-20%;border:0}.datepicker-container .datepicker-wrapper-input:focus{border:0;outline:none}.datepicker-container .mat-icon-button{height:32px;width:32px}.datepicker-container .mat-icon-button:focus{outline:1px solid #fd0}.datepicker-container .mat-icon-button .mat-datepicker-toggle-default-icon{position:relative;top:-5px}.datepicker-container .mat-datepicker-toggle{position:absolute;right:0}.cdk-overlay-container .mat-datepicker-content{border:1px solid #000;border-radius:0;max-width:295px}.cdk-overlay-container .mat-datepicker-content .mat-calendar-table{width:calc(100% - 1px);table-layout:fixed}.cdk-overlay-container .mat-datepicker-content .mat-calendar-header{height:34px;border-bottom:1px ridge #bfc1c3}.cdk-overlay-container .mat-datepicker-content .mat-calendar-period-button{left:14%;min-width:125px;border-right:1px ridge #bfc1c3;border-left:1px ridge #bfc1c3;border-radius:0;top:-20px;width:200%}.cdk-overlay-container .mat-datepicker-content .mat-calendar-period-button .mat-button-wrapper{text-align:center;font-weight:700}.cdk-overlay-container .mat-datepicker-content .mat-calendar-period-button:focus{border:2px solid #000}.cdk-overlay-container .mat-datepicker-content .mat-calendar-previous-button{left:-73%;top:-20px;border:2px solid transparent;border-radius:0}.cdk-overlay-container .mat-datepicker-content .mat-calendar-previous-button:focus{border-color:#000}.cdk-overlay-container .mat-datepicker-content .mat-calendar-previous-button:after{border-left-width:5px;border-top-width:5px;color:#000;padding:4px;top:-2px;left:-2px}.cdk-overlay-container .mat-datepicker-content .mat-calendar-next-button{top:-20px;left:1%;border:2px solid transparent;border-radius:0}.cdk-overlay-container .mat-datepicker-content .mat-calendar-next-button:focus{border-color:#000}.cdk-overlay-container .mat-datepicker-content .mat-calendar-next-button:after{border-right-width:5px;border-top-width:5px;color:#000;padding:4px;top:-2px;left:-2px}.cdk-overlay-container .mat-datepicker-content .mat-button-wrapper{text-transform:capitalize!important}.cdk-overlay-container .mat-datepicker-content .mat-calendar{border-bottom:1px solid #000}.cdk-overlay-container .mat-datepicker-content .mat-calendar-table-header-divider{padding:0;border-bottom:none}.cdk-overlay-container .mat-datepicker-content .mat-calendar-table-header-divider:after{height:0}.cdk-overlay-container .mat-datepicker-content .mat-calendar-content{padding:0}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header{color:#000}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header th.ng-star-inserted{font-weight:700;font-size:15px;padding-top:2%;padding-bottom:2%;-moz-column-width:20px;column-width:20px}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header tr:first-of-type th{visibility:hidden}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header tr:first-of-type th:after{visibility:visible;color:#000;position:relative;left:-15px}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header tr:first-of-type th:first-of-type:after{content:\"MON\"}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header tr:first-of-type th:nth-of-type(2):after{left:-12px;content:\"TUE\"}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header tr:first-of-type th:nth-of-type(3):after{left:-18px;content:\"WED\"}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header tr:first-of-type th:nth-of-type(4):after{left:-14px;content:\"THU\"}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header tr:first-of-type th:nth-of-type(5):after{left:-10px;content:\"FRI\"}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header tr:first-of-type th:nth-of-type(6):after{content:\"SAT\"}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header tr:first-of-type th:nth-of-type(7):after{content:\"SUN\"}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-label{font-weight:700;font-size:large;color:#000}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-selected{border:none;background-color:transparent;color:#fff}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-active{background-color:#5694ca}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-today{border:none;box-shadow:none}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-cell{border:1px ridge #bfc1c3}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-cell[aria-selected=true]{background-color:#1d70b8;outline:3px solid #fd0;border:2px solid #000;outline-offset:1px;z-index:1}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table{border-collapse:separate;border-spacing:10px}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table .mat-calendar-body-active{background-color:#5694ca}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table .mat-calendar-body-cell{border:1px solid #bfc1c3}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table .mat-calendar-body-cell .mat-calendar-body-cell-content{border:none}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table .mat-calendar-body-cell .mat-calendar-body-selected{border:none;box-shadow:none;background-color:transparent}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table .mat-calendar-body-cell[aria-selected=true]{background-color:#1d70b8;outline:2px solid #fd0}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table{border-collapse:separate;border-spacing:20px}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table tr:first-of-type{visibility:collapse}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table .mat-calendar-body-active{background-color:#5694ca}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table .mat-calendar-body-cell{border:1px solid #bfc1c3}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table .mat-calendar-body-cell .mat-calendar-body-cell-content{border:none}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table .mat-calendar-body-cell .mat-calendar-body-selected{border:none;box-shadow:none;background-color:transparent}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table .mat-calendar-body-cell[aria-selected=true]{background-color:#1d70b8;outline:3px solid #fd0;border:2px solid #000;outline-offset:1px}.cdk-overlay-container .mat-datepicker-content .time-container{height:80px;padding-top:0}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker{width:100%}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table{margin-left:0!important}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tbody{position:relative}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr .mat-icon-button .mat-button-wrapper{width:auto;height:auto}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr .mat-icon-button:focus{outline:none}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:first-child{position:absolute;left:49px;top:15px;z-index:2}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:first-child button:disabled{display:none}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:first-child td:first-child [aria-label=\"expand_less icon\"]{position:absolute;left:-2px;top:25px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:first-child td:nth-child(3) [aria-label=\"expand_less icon\"].mat-icon-button{position:absolute;left:82px!important;top:25px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:first-child td:nth-child(5) [aria-label=\"expand_less icon\"].mat-icon-button{position:absolute;left:169px!important;top:25px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:first-child td:last-child [aria-label=\"expand_less icon\"].mat-icon-button{left:153px!important}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:first-child td:nth-last-child(2) [aria-label=\"expand_less icon\"].mat-icon-button{left:65px!important}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2){display:flex;padding:20px 0 20px 15px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2) td{margin-right:30px;text-align:right}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2) td:first-child .mat-form-field{width:50px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2) td:first-child .mat-form-field:before{color:#000;content:\"Hours\";position:relative;top:-5px;left:-5px;font-size:15px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2) td:nth-child(3) .mat-form-field:before{color:#000;content:\"Minutes\";position:relative;top:-5px;font-size:15px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2) td:last-child{text-align:left;left:-15px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2) .mat-form-field-disabled{display:none}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2) td:nth-of-type(5) .mat-form-field:before{color:#000;content:\"Seconds\";position:relative;top:-5px;font-size:15px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2) .meridian{border-bottom:none}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2) .meridian .mat-button{height:30px;top:21px;border-radius:0;color:#000;border-color:#000;background-color:#dee0e2;display:flex;justify-content:center}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2) .meridian .mat-button .mat-button-wrapper{position:relative;top:-2px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(4){display:flex;padding:2rem 0 2rem 15px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(4) td{margin-right:30px;text-align:right}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(4) td:last-child{text-align:left}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:last-child{position:absolute;left:49px;top:40px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:last-child button:disabled{display:none}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:last-child td:first-child [aria-label=\"expand_more icon\"]{position:absolute;top:15px;left:-2px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:last-child td:nth-child(3) [aria-label=\"expand_more icon\"].mat-icon-button{position:absolute;left:82px!important;top:15px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:last-child td:nth-child(5) [aria-label=\"expand_more icon\"].mat-icon-button{position:absolute;top:15px;left:169px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:last-child td:last-child [aria-label=\"expand_more icon\"].mat-icon-button{left:65px!important}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:last-child td:last-child.ng-star-inserted [aria-label=\"expand_more icon\"].mat-icon-button{left:153px!important}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr td{padding:0;border-bottom:0;position:relative}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr .spacer{display:none}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr .mat-icon{visibility:hidden;display:none}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr .mat-button-wrapper{display:block;width:15px;height:8px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr .mat-form-field-wrapper{padding-bottom:0}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr .mat-form-field{width:auto;max-width:none}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr [aria-label=\"expand_less icon\"].mat-icon-button .mat-button-wrapper:after{content:\" \u25B2\"}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr [aria-label=\"expand_more icon\"].mat-icon-button .mat-button-wrapper:after{content:\"\u25BC\"}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr .mat-form-field-flex{width:100%}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr .mat-form-field-flex .mat-form-field-infix{border:1px solid #000;height:20px;width:37px;display:flex;justify-content:center;align-items:center}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr .mat-form-field-underline{visibility:hidden}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr input{height:33px;width:37px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr input:focus{border-color:#000}.cdk-overlay-container .mat-datepicker-content .actions{padding-bottom:20px;margin-top:20px;justify-content:flex-start}.cdk-overlay-container .mat-datepicker-content .actions .mat-button{background-color:#00823b;position:relative;display:-moz-inline-stack;display:inline-block;padding:.526315em .789473em .263157em;border:none;border-radius:0;outline:1px solid transparent;outline-offset:-1px;-webkit-appearance:none;box-shadow:0 2px 0 #003618;font-size:1em;line-height:1.25;text-decoration:none;-webkit-font-smoothing:antialiased;color:#fff;box-sizing:border-box;vertical-align:top;width:80px;cursor:pointer}.cdk-overlay-container .mat-datepicker-content .actions .mat-button:focus{outline:2px solid #fd0}.cdk-overlay-container .mat-datepicker-content .actions .mat-button:hover{background-color:#006400}.cdk-overlay-container .mat-datepicker-content .actions .mat-button .mat-icon{visibility:hidden}.cdk-overlay-container .mat-datepicker-content .actions .mat-button .mat-button-wrapper:before{color:#fff;content:\"Confirm\";position:relative;font-size:15px;left:-3px}"], encapsulation: 2 });
10471
10348
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DatetimePickerComponent, [{
10472
10349
  type: Component,
10473
10350
  args: [{
@@ -12619,7 +12496,7 @@ WriteJudicialUserFieldComponent.ɵcmp = i0.ɵɵdefineComponent({ type: WriteJudi
12619
12496
  i0.ɵɵproperty("ngForOf", ctx.filteredJudicialUsers);
12620
12497
  i0.ɵɵadvance(1);
12621
12498
  i0.ɵɵproperty("ngIf", !(ctx.filteredJudicialUsers == null ? null : ctx.filteredJudicialUsers.length) && ctx.showAutocomplete);
12622
- } }, directives: [i1$3.NgControlStatusGroup, i1$3.FormGroupDirective, i1.NgIf, i1$3.DefaultValueAccessor, i5$1.MatAutocompleteTrigger, i1$3.NgControlStatus, i1$3.FormControlDirective, i5$1.MatAutocomplete, i1.NgForOf, i6$1.MatOption, i1.NgClass], pipes: [FieldLabelPipe], styles: [".mat-option[_ngcontent-%COMP%]:hover{background:#2596be}.mat-option.select-option[_ngcontent-%COMP%]:hover{background:#1d70b8;color:#fff}.hide-autocomplete[_ngcontent-%COMP%]{display:none}"] });
12499
+ } }, directives: [i1$3.NgControlStatusGroup, i1$3.FormGroupDirective, i1.NgIf, i1$3.DefaultValueAccessor, i5$2.MatAutocompleteTrigger, i1$3.NgControlStatus, i1$3.FormControlDirective, i5$2.MatAutocomplete, i1.NgForOf, i6$1.MatOption, i1.NgClass], pipes: [FieldLabelPipe], styles: [".mat-option[_ngcontent-%COMP%]:hover{background:#2596be}.mat-option.select-option[_ngcontent-%COMP%]:hover{background:#1d70b8;color:#fff}.hide-autocomplete[_ngcontent-%COMP%]{display:none}"] });
12623
12500
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(WriteJudicialUserFieldComponent, [{
12624
12501
  type: Component,
12625
12502
  args: [{
@@ -17297,7 +17174,7 @@ PaletteModule.ɵinj = i0.ɵɵdefineInjector({ providers: [
17297
17174
  MatAutocompleteModule,
17298
17175
  CdkTreeModule,
17299
17176
  OverlayModule,
17300
- PaymentLibModule, i2$1.ScrollToModule, MediaViewerModule], exports: [NgxMatDatetimePickerModule,
17177
+ PaymentLibModule, i2.ScrollToModule, MediaViewerModule], exports: [NgxMatDatetimePickerModule,
17301
17178
  NgxMatNativeDateModule,
17302
17179
  NgxMatTimepickerModule,
17303
17180
  TabsModule,