@hmcts/ccd-case-ui-toolkit 5.0.32-angular11-upgrade → 5.0.34-case-file-view-merge-into-angular-11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/hmcts-ccd-case-ui-toolkit.umd.js +5773 -1797
- package/bundles/hmcts-ccd-case-ui-toolkit.umd.js.map +1 -1
- package/bundles/hmcts-ccd-case-ui-toolkit.umd.min.js +1 -1
- package/bundles/hmcts-ccd-case-ui-toolkit.umd.min.js.map +1 -1
- package/esm2015/lib/app.config.js +1 -1
- package/esm2015/lib/shared/components/case-editor/case-edit-page/case-edit-page.component.js +15 -11
- package/esm2015/lib/shared/components/case-editor/services/cases.service.js +28 -1
- package/esm2015/lib/shared/components/case-editor/services/page-validation.service.js +10 -2
- package/esm2015/lib/shared/components/case-viewer/case-event-trigger/case-event-trigger.component.js +9 -2
- package/esm2015/lib/shared/components/case-viewer/case-full-access-view/case-full-access-view.component.js +37 -26
- package/esm2015/lib/shared/components/loading-spinner/loading-spinner.component.js +1 -1
- package/esm2015/lib/shared/components/palette/base-field/abstract-form-field.component.js +4 -2
- package/esm2015/lib/shared/components/palette/base-field/field-write.component.js +8 -14
- package/esm2015/lib/shared/components/palette/case-file-view/case-file-view-field-read.component.js +72 -0
- package/esm2015/lib/shared/components/palette/case-file-view/case-file-view-field.component.js +134 -0
- package/esm2015/lib/shared/components/palette/case-file-view/components/case-file-view-folder/case-file-view-folder-document-actions/case-file-view-folder-document-actions.component.js +52 -0
- package/esm2015/lib/shared/components/palette/case-file-view/components/case-file-view-folder/case-file-view-folder-sort/case-file-view-folder-sort.component.js +38 -0
- package/esm2015/lib/shared/components/palette/case-file-view/components/case-file-view-folder/case-file-view-folder.component.js +353 -0
- package/esm2015/lib/shared/components/palette/case-file-view/components/case-file-view-folder-selector/case-file-view-folder-selector.component.js +159 -0
- package/esm2015/lib/shared/components/palette/case-file-view/components/index.js +6 -0
- package/esm2015/lib/shared/components/palette/case-file-view/components/shared/case-file-view-overlay-menu/case-file-view-overlay-menu-item.model.js +2 -0
- package/esm2015/lib/shared/components/palette/case-file-view/components/shared/case-file-view-overlay-menu/case-file-view-overlay-menu.component.js +100 -0
- package/esm2015/lib/shared/components/palette/case-file-view/components/shared/index.js +2 -0
- package/esm2015/lib/shared/components/palette/case-file-view/index.js +4 -0
- package/esm2015/lib/shared/components/palette/case-flag/components/manage-case-flags/manage-case-flags.component.js +71 -41
- package/esm2015/lib/shared/components/palette/case-flag/domain/case-flag.model.js +1 -1
- package/esm2015/lib/shared/components/palette/case-flag/read-case-flag-field.component.js +2 -3
- package/esm2015/lib/shared/components/palette/case-flag/write-case-flag-field.component.js +13 -9
- package/esm2015/lib/shared/components/palette/case-link/components/before-you-start/before-you-start.component.js +125 -0
- package/esm2015/lib/shared/components/palette/case-link/components/check-your-answers/check-your-answers.component.js +198 -0
- package/esm2015/lib/shared/components/palette/case-link/components/index.js +10 -0
- package/esm2015/lib/shared/components/palette/case-link/components/link-cases/link-cases.component.js +497 -0
- package/esm2015/lib/shared/components/palette/case-link/components/linked-cases-table/linked-cases-from-table.component.js +221 -0
- package/esm2015/lib/shared/components/palette/case-link/components/linked-cases-table/linked-cases-to-table.component.js +286 -0
- package/esm2015/lib/shared/components/palette/case-link/components/no-linked-cases/no-linked-cases.component.js +76 -0
- package/esm2015/lib/shared/components/palette/case-link/components/read-linked-cases.component.js +178 -0
- package/esm2015/lib/shared/components/palette/case-link/components/unlink-cases/unlink-cases.component.js +216 -0
- package/esm2015/lib/shared/components/palette/case-link/components/write-linked-cases.component.js +260 -0
- package/esm2015/lib/shared/components/palette/case-link/domain/index.js +3 -0
- package/esm2015/lib/shared/components/palette/case-link/domain/linked-cases-state.model.js +2 -0
- package/esm2015/lib/shared/components/palette/case-link/domain/linked-cases.model.js +19 -0
- package/esm2015/lib/shared/components/palette/case-link/enums/index.js +2 -0
- package/esm2015/lib/shared/components/palette/case-link/enums/write-linked-cases-field.enum.js +33 -0
- package/esm2015/lib/shared/components/palette/case-link/index.js +4 -1
- package/esm2015/lib/shared/components/palette/case-link/read-case-link-field.component.js +28 -8
- package/esm2015/lib/shared/components/palette/case-link/services/index.js +2 -0
- package/esm2015/lib/shared/components/palette/case-link/services/jurisdiction.service.js +22 -0
- package/esm2015/lib/shared/components/palette/case-link/services/linked-cases.service.js +136 -0
- package/esm2015/lib/shared/components/palette/case-link/utils/validators.utils.js +27 -0
- package/esm2015/lib/shared/components/palette/case-link/write-case-link-field.component.js +79 -65
- package/esm2015/lib/shared/components/palette/index.js +7 -2
- package/esm2015/lib/shared/components/palette/palette.module.js +135 -27
- package/esm2015/lib/shared/components/palette/palette.service.js +28 -4
- package/esm2015/lib/shared/components/palette/utils/is-compound.pipe.js +2 -2
- package/esm2015/lib/shared/components/search-result/search-result.component.js +53 -46
- package/esm2015/lib/shared/domain/case-file-view/case-file-view-category.model.js +3 -0
- package/esm2015/lib/shared/domain/case-file-view/case-file-view-document.model.js +3 -0
- package/esm2015/lib/shared/domain/case-file-view/categories-and-documents.model.js +7 -0
- package/esm2015/lib/shared/domain/case-file-view/document-tree-node/document-tree-node-type.model.js +6 -0
- package/esm2015/lib/shared/domain/case-file-view/document-tree-node/document-tree-node.model.js +93 -0
- package/esm2015/lib/shared/domain/case-file-view/index.js +6 -0
- package/esm2015/lib/shared/domain/definition/field-type-enum.model.js +1 -1
- package/esm2015/lib/shared/pipes/complex/ccd-read-fields-filter.pipe.js +6 -2
- package/esm2015/lib/shared/pipes/index.js +2 -1
- package/esm2015/lib/shared/pipes/link-cases-reason-code/ccd-link-cases-reason-code.pipe.js +23 -0
- package/esm2015/lib/shared/pipes/link-cases-reason-code/index.js +2 -0
- package/esm2015/lib/shared/pipes/pipes.module.js +9 -5
- package/esm2015/lib/shared/services/case-file-view/case-file-view.service.js +46 -0
- package/esm2015/lib/shared/services/case-file-view/index.js +2 -0
- package/esm2015/lib/shared/services/common-data-service/common-data-service.js +22 -0
- package/esm2015/lib/shared/services/fields/fields.purger.js +128 -112
- package/esm2015/lib/shared/services/fields/fields.utils.js +11 -2
- package/esm2015/lib/shared/services/form/form-value.service.js +9 -7
- package/esm2015/lib/shared/services/index.js +2 -1
- package/esm2015/lib/shared/services/jurisdiction/jurisdiction.service.js +1 -1
- package/esm2015/lib/shared/services/search/search.service.js +8 -1
- package/esm2015/public-api.js +3 -1
- package/fesm2015/hmcts-ccd-case-ui-toolkit.js +5185 -1665
- package/fesm2015/hmcts-ccd-case-ui-toolkit.js.map +1 -1
- package/lib/app.config.d.ts +9 -1
- package/lib/app.config.d.ts.map +1 -1
- package/lib/shared/components/case-editor/case-edit-page/case-edit-page.component.d.ts +2 -0
- package/lib/shared/components/case-editor/case-edit-page/case-edit-page.component.d.ts.map +1 -1
- package/lib/shared/components/case-editor/services/cases.service.d.ts +7 -0
- package/lib/shared/components/case-editor/services/cases.service.d.ts.map +1 -1
- package/lib/shared/components/case-editor/services/page-validation.service.d.ts +1 -0
- package/lib/shared/components/case-editor/services/page-validation.service.d.ts.map +1 -1
- package/lib/shared/components/case-viewer/case-event-trigger/case-event-trigger.component.d.ts.map +1 -1
- package/lib/shared/components/case-viewer/case-full-access-view/case-full-access-view.component.d.ts +4 -3
- package/lib/shared/components/case-viewer/case-full-access-view/case-full-access-view.component.d.ts.map +1 -1
- package/lib/shared/components/palette/base-field/abstract-form-field.component.d.ts.map +1 -1
- package/lib/shared/components/palette/base-field/field-write.component.d.ts +2 -2
- package/lib/shared/components/palette/base-field/field-write.component.d.ts.map +1 -1
- package/lib/shared/components/palette/case-file-view/case-file-view-field-read.component.d.ts +8 -0
- package/lib/shared/components/palette/case-file-view/case-file-view-field-read.component.d.ts.map +1 -0
- package/lib/shared/components/palette/case-file-view/case-file-view-field.component.d.ts +33 -0
- package/lib/shared/components/palette/case-file-view/case-file-view-field.component.d.ts.map +1 -0
- package/lib/shared/components/palette/case-file-view/components/case-file-view-folder/case-file-view-folder-document-actions/case-file-view-folder-document-actions.component.d.ts +17 -0
- package/lib/shared/components/palette/case-file-view/components/case-file-view-folder/case-file-view-folder-document-actions/case-file-view-folder-document-actions.component.d.ts.map +1 -0
- package/lib/shared/components/palette/case-file-view/components/case-file-view-folder/case-file-view-folder-sort/case-file-view-folder-sort.component.d.ts +13 -0
- package/lib/shared/components/palette/case-file-view/components/case-file-view-folder/case-file-view-folder-sort/case-file-view-folder-sort.component.d.ts.map +1 -0
- package/lib/shared/components/palette/case-file-view/components/case-file-view-folder/case-file-view-folder.component.d.ts +53 -0
- package/lib/shared/components/palette/case-file-view/components/case-file-view-folder/case-file-view-folder.component.d.ts.map +1 -0
- package/lib/shared/components/palette/case-file-view/components/case-file-view-folder-selector/case-file-view-folder-selector.component.d.ts +28 -0
- package/lib/shared/components/palette/case-file-view/components/case-file-view-folder-selector/case-file-view-folder-selector.component.d.ts.map +1 -0
- package/lib/shared/components/palette/case-file-view/components/index.d.ts +6 -0
- package/lib/shared/components/palette/case-file-view/components/index.d.ts.map +1 -0
- package/lib/shared/components/palette/case-file-view/components/shared/case-file-view-overlay-menu/case-file-view-overlay-menu-item.model.d.ts +6 -0
- package/lib/shared/components/palette/case-file-view/components/shared/case-file-view-overlay-menu/case-file-view-overlay-menu-item.model.d.ts.map +1 -0
- package/lib/shared/components/palette/case-file-view/components/shared/case-file-view-overlay-menu/case-file-view-overlay-menu.component.d.ts +13 -0
- package/lib/shared/components/palette/case-file-view/components/shared/case-file-view-overlay-menu/case-file-view-overlay-menu.component.d.ts.map +1 -0
- package/lib/shared/components/palette/case-file-view/components/shared/index.d.ts +2 -0
- package/lib/shared/components/palette/case-file-view/components/shared/index.d.ts.map +1 -0
- package/lib/shared/components/palette/case-file-view/index.d.ts +4 -0
- package/lib/shared/components/palette/case-file-view/index.d.ts.map +1 -0
- package/lib/shared/components/palette/case-flag/components/manage-case-flags/manage-case-flags.component.d.ts +11 -5
- package/lib/shared/components/palette/case-flag/components/manage-case-flags/manage-case-flags.component.d.ts.map +1 -1
- package/lib/shared/components/palette/case-flag/domain/case-flag.model.d.ts +2 -0
- package/lib/shared/components/palette/case-flag/domain/case-flag.model.d.ts.map +1 -1
- package/lib/shared/components/palette/case-flag/read-case-flag-field.component.d.ts +0 -1
- package/lib/shared/components/palette/case-flag/read-case-flag-field.component.d.ts.map +1 -1
- package/lib/shared/components/palette/case-flag/write-case-flag-field.component.d.ts.map +1 -1
- package/lib/shared/components/palette/case-link/components/before-you-start/before-you-start.component.d.ts +19 -0
- package/lib/shared/components/palette/case-link/components/before-you-start/before-you-start.component.d.ts.map +1 -0
- package/lib/shared/components/palette/case-link/components/check-your-answers/check-your-answers.component.d.ts +18 -0
- package/lib/shared/components/palette/case-link/components/check-your-answers/check-your-answers.component.d.ts.map +1 -0
- package/lib/shared/components/palette/case-link/components/index.d.ts +10 -0
- package/lib/shared/components/palette/case-link/components/index.d.ts.map +1 -0
- package/lib/shared/components/palette/case-link/components/link-cases/link-cases.component.d.ts +45 -0
- package/lib/shared/components/palette/case-link/components/link-cases/link-cases.component.d.ts.map +1 -0
- package/lib/shared/components/palette/case-link/components/linked-cases-table/linked-cases-from-table.component.d.ts +42 -0
- package/lib/shared/components/palette/case-link/components/linked-cases-table/linked-cases-from-table.component.d.ts.map +1 -0
- package/lib/shared/components/palette/case-link/components/linked-cases-table/linked-cases-to-table.component.d.ts +45 -0
- package/lib/shared/components/palette/case-link/components/linked-cases-table/linked-cases-to-table.component.d.ts.map +1 -0
- package/lib/shared/components/palette/case-link/components/no-linked-cases/no-linked-cases.component.d.ts +12 -0
- package/lib/shared/components/palette/case-link/components/no-linked-cases/no-linked-cases.component.d.ts.map +1 -0
- package/lib/shared/components/palette/case-link/components/read-linked-cases.component.d.ts +37 -0
- package/lib/shared/components/palette/case-link/components/read-linked-cases.component.d.ts.map +1 -0
- package/lib/shared/components/palette/case-link/components/unlink-cases/unlink-cases.component.d.ts +38 -0
- package/lib/shared/components/palette/case-link/components/unlink-cases/unlink-cases.component.d.ts.map +1 -0
- package/lib/shared/components/palette/case-link/components/write-linked-cases.component.d.ts +45 -0
- package/lib/shared/components/palette/case-link/components/write-linked-cases.component.d.ts.map +1 -0
- package/lib/shared/components/palette/case-link/domain/index.d.ts +3 -0
- package/lib/shared/components/palette/case-link/domain/index.d.ts.map +1 -0
- package/lib/shared/components/palette/case-link/domain/linked-cases-state.model.d.ts +12 -0
- package/lib/shared/components/palette/case-link/domain/linked-cases-state.model.d.ts.map +1 -0
- package/lib/shared/components/palette/case-link/domain/linked-cases.model.d.ts +65 -0
- package/lib/shared/components/palette/case-link/domain/linked-cases.model.d.ts.map +1 -0
- package/lib/shared/components/palette/case-link/enums/index.d.ts +2 -0
- package/lib/shared/components/palette/case-link/enums/index.d.ts.map +1 -0
- package/lib/shared/components/palette/case-link/enums/write-linked-cases-field.enum.d.ts +29 -0
- package/lib/shared/components/palette/case-link/enums/write-linked-cases-field.enum.d.ts.map +1 -0
- package/lib/shared/components/palette/case-link/index.d.ts +3 -0
- package/lib/shared/components/palette/case-link/index.d.ts.map +1 -1
- package/lib/shared/components/palette/case-link/read-case-link-field.component.d.ts +3 -0
- package/lib/shared/components/palette/case-link/read-case-link-field.component.d.ts.map +1 -1
- package/lib/shared/components/palette/case-link/services/index.d.ts +2 -0
- package/lib/shared/components/palette/case-link/services/index.d.ts.map +1 -0
- package/lib/shared/components/palette/case-link/services/jurisdiction.service.d.ts +12 -0
- package/lib/shared/components/palette/case-link/services/jurisdiction.service.d.ts.map +1 -0
- package/lib/shared/components/palette/case-link/services/linked-cases.service.d.ts +51 -0
- package/lib/shared/components/palette/case-link/services/linked-cases.service.d.ts.map +1 -0
- package/lib/shared/components/palette/case-link/utils/validators.utils.d.ts +10 -0
- package/lib/shared/components/palette/case-link/utils/validators.utils.d.ts.map +1 -0
- package/lib/shared/components/palette/case-link/write-case-link-field.component.d.ts +14 -3
- package/lib/shared/components/palette/case-link/write-case-link-field.component.d.ts.map +1 -1
- package/lib/shared/components/palette/index.d.ts +6 -1
- package/lib/shared/components/palette/index.d.ts.map +1 -1
- package/lib/shared/components/palette/palette.module.d.ts +66 -45
- package/lib/shared/components/palette/palette.module.d.ts.map +1 -1
- package/lib/shared/components/palette/palette.service.d.ts +2 -0
- package/lib/shared/components/palette/palette.service.d.ts.map +1 -1
- package/lib/shared/domain/case-file-view/case-file-view-category.model.d.ts +9 -0
- package/lib/shared/domain/case-file-view/case-file-view-category.model.d.ts.map +1 -0
- package/lib/shared/domain/case-file-view/case-file-view-document.model.d.ts +8 -0
- package/lib/shared/domain/case-file-view/case-file-view-document.model.d.ts.map +1 -0
- package/lib/shared/domain/case-file-view/categories-and-documents.model.d.ts +12 -0
- package/lib/shared/domain/case-file-view/categories-and-documents.model.d.ts.map +1 -0
- package/lib/shared/domain/case-file-view/document-tree-node/document-tree-node-type.model.d.ts +5 -0
- package/lib/shared/domain/case-file-view/document-tree-node/document-tree-node-type.model.d.ts.map +1 -0
- package/lib/shared/domain/case-file-view/document-tree-node/document-tree-node.model.d.ts +14 -0
- package/lib/shared/domain/case-file-view/document-tree-node/document-tree-node.model.d.ts.map +1 -0
- package/lib/shared/domain/case-file-view/index.d.ts +6 -0
- package/lib/shared/domain/case-file-view/index.d.ts.map +1 -0
- package/lib/shared/domain/definition/field-type-enum.model.d.ts +1 -1
- package/lib/shared/domain/definition/field-type-enum.model.d.ts.map +1 -1
- package/lib/shared/pipes/complex/ccd-read-fields-filter.pipe.d.ts.map +1 -1
- package/lib/shared/pipes/index.d.ts +1 -0
- package/lib/shared/pipes/index.d.ts.map +1 -1
- package/lib/shared/pipes/link-cases-reason-code/ccd-link-cases-reason-code.pipe.d.ts +11 -0
- package/lib/shared/pipes/link-cases-reason-code/ccd-link-cases-reason-code.pipe.d.ts.map +1 -0
- package/lib/shared/pipes/link-cases-reason-code/index.d.ts +2 -0
- package/lib/shared/pipes/link-cases-reason-code/index.d.ts.map +1 -0
- package/lib/shared/pipes/pipes.module.d.ts +3 -2
- package/lib/shared/pipes/pipes.module.d.ts.map +1 -1
- package/lib/shared/services/case-file-view/case-file-view.service.d.ts +21 -0
- package/lib/shared/services/case-file-view/case-file-view.service.d.ts.map +1 -0
- package/lib/shared/services/case-file-view/index.d.ts +2 -0
- package/lib/shared/services/case-file-view/index.d.ts.map +1 -0
- package/lib/shared/services/common-data-service/common-data-service.d.ts +29 -0
- package/lib/shared/services/common-data-service/common-data-service.d.ts.map +1 -0
- package/lib/shared/services/fields/fields.purger.d.ts +19 -12
- package/lib/shared/services/fields/fields.purger.d.ts.map +1 -1
- package/lib/shared/services/fields/fields.utils.d.ts +1 -0
- package/lib/shared/services/fields/fields.utils.d.ts.map +1 -1
- package/lib/shared/services/form/form-value.service.d.ts.map +1 -1
- package/lib/shared/services/index.d.ts +1 -0
- package/lib/shared/services/index.d.ts.map +1 -1
- package/lib/shared/services/jurisdiction/jurisdiction.service.d.ts.map +1 -1
- package/lib/shared/services/search/search.service.d.ts +4 -0
- package/lib/shared/services/search/search.service.d.ts.map +1 -1
- package/package.json +1 -1
- package/public-api.d.ts +2 -0
- package/public-api.d.ts.map +1 -1
|
@@ -0,0 +1,353 @@
|
|
|
1
|
+
import { NestedTreeControl } from '@angular/cdk/tree';
|
|
2
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
3
|
+
import { FormControl, FormGroup } from '@angular/forms';
|
|
4
|
+
import { MatDialog } from '@angular/material/dialog';
|
|
5
|
+
import { Router } from '@angular/router';
|
|
6
|
+
import { Observable, of } from 'rxjs';
|
|
7
|
+
import { switchMap, tap } from 'rxjs/operators';
|
|
8
|
+
import { DocumentTreeNode, DocumentTreeNodeType } from '../../../../../domain/case-file-view';
|
|
9
|
+
import { DocumentManagementService, WindowService } from '../../../../../services';
|
|
10
|
+
import { CaseFileViewFolderSelectorComponent } from '../case-file-view-folder-selector/case-file-view-folder-selector.component';
|
|
11
|
+
import * as i0 from "@angular/core";
|
|
12
|
+
import * as i1 from "../../../../../services";
|
|
13
|
+
import * as i2 from "@angular/router";
|
|
14
|
+
import * as i3 from "@angular/material/dialog";
|
|
15
|
+
import * as i4 from "@angular/forms";
|
|
16
|
+
import * as i5 from "./case-file-view-folder-sort/case-file-view-folder-sort.component";
|
|
17
|
+
import * as i6 from "@angular/common";
|
|
18
|
+
import * as i7 from "@angular/cdk/tree";
|
|
19
|
+
import * as i8 from "./case-file-view-folder-document-actions/case-file-view-folder-document-actions.component";
|
|
20
|
+
function CaseFileViewFolderComponent_div_8_div_1_Template(rf, ctx) { if (rf & 1) {
|
|
21
|
+
i0.ɵɵelementStart(0, "div");
|
|
22
|
+
i0.ɵɵtext(1, " No results found ");
|
|
23
|
+
i0.ɵɵelementEnd();
|
|
24
|
+
} }
|
|
25
|
+
function CaseFileViewFolderComponent_div_8_cdk_nested_tree_node_4_Template(rf, ctx) { if (rf & 1) {
|
|
26
|
+
const _r6 = i0.ɵɵgetCurrentView();
|
|
27
|
+
i0.ɵɵelementStart(0, "cdk-nested-tree-node", 12);
|
|
28
|
+
i0.ɵɵelementStart(1, "button", 13);
|
|
29
|
+
i0.ɵɵlistener("click", function CaseFileViewFolderComponent_div_8_cdk_nested_tree_node_4_Template_button_click_1_listener() { i0.ɵɵrestoreView(_r6); const node_r4 = ctx.$implicit; const ctx_r5 = i0.ɵɵnextContext(2); ctx_r5.selectedNodeItem = node_r4; return ctx_r5.clickedDocument.emit(node_r4); });
|
|
30
|
+
i0.ɵɵelementStart(2, "div", 14);
|
|
31
|
+
i0.ɵɵelement(3, "img", 15);
|
|
32
|
+
i0.ɵɵelementEnd();
|
|
33
|
+
i0.ɵɵelementStart(4, "span", 16);
|
|
34
|
+
i0.ɵɵtext(5);
|
|
35
|
+
i0.ɵɵelementEnd();
|
|
36
|
+
i0.ɵɵelementStart(6, "div", 17);
|
|
37
|
+
i0.ɵɵelementStart(7, "ccd-case-file-view-folder-document-actions", 18);
|
|
38
|
+
i0.ɵɵlistener("changeFolderAction", function CaseFileViewFolderComponent_div_8_cdk_nested_tree_node_4_Template_ccd_case_file_view_folder_document_actions_changeFolderAction_7_listener() { i0.ɵɵrestoreView(_r6); const node_r4 = ctx.$implicit; const ctx_r7 = i0.ɵɵnextContext(2); return ctx_r7.triggerDocumentAction("changeFolder", node_r4); })("openInANewTabAction", function CaseFileViewFolderComponent_div_8_cdk_nested_tree_node_4_Template_ccd_case_file_view_folder_document_actions_openInANewTabAction_7_listener() { i0.ɵɵrestoreView(_r6); const node_r4 = ctx.$implicit; const ctx_r8 = i0.ɵɵnextContext(2); return ctx_r8.triggerDocumentAction("openInANewTab", node_r4); })("downloadAction", function CaseFileViewFolderComponent_div_8_cdk_nested_tree_node_4_Template_ccd_case_file_view_folder_document_actions_downloadAction_7_listener() { i0.ɵɵrestoreView(_r6); const node_r4 = ctx.$implicit; const ctx_r9 = i0.ɵɵnextContext(2); return ctx_r9.triggerDocumentAction("download", node_r4); })("printAction", function CaseFileViewFolderComponent_div_8_cdk_nested_tree_node_4_Template_ccd_case_file_view_folder_document_actions_printAction_7_listener() { i0.ɵɵrestoreView(_r6); const node_r4 = ctx.$implicit; const ctx_r10 = i0.ɵɵnextContext(2); return ctx_r10.triggerDocumentAction("print", node_r4); });
|
|
39
|
+
i0.ɵɵelementEnd();
|
|
40
|
+
i0.ɵɵelementEnd();
|
|
41
|
+
i0.ɵɵelementEnd();
|
|
42
|
+
i0.ɵɵelementEnd();
|
|
43
|
+
} if (rf & 2) {
|
|
44
|
+
const node_r4 = ctx.$implicit;
|
|
45
|
+
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
46
|
+
i0.ɵɵadvance(1);
|
|
47
|
+
i0.ɵɵclassProp("node--selected", (ctx_r2.selectedNodeItem == null ? null : ctx_r2.selectedNodeItem.name) === node_r4.name);
|
|
48
|
+
i0.ɵɵadvance(4);
|
|
49
|
+
i0.ɵɵtextInterpolate(node_r4.name);
|
|
50
|
+
i0.ɵɵadvance(2);
|
|
51
|
+
i0.ɵɵproperty("allowMoving", ctx_r2.allowMoving);
|
|
52
|
+
} }
|
|
53
|
+
function CaseFileViewFolderComponent_div_8_cdk_nested_tree_node_5_Template(rf, ctx) { if (rf & 1) {
|
|
54
|
+
i0.ɵɵelementStart(0, "cdk-nested-tree-node", 19);
|
|
55
|
+
i0.ɵɵelementStart(1, "button", 20);
|
|
56
|
+
i0.ɵɵelementStart(2, "div", 21);
|
|
57
|
+
i0.ɵɵelement(3, "img", 22);
|
|
58
|
+
i0.ɵɵelementStart(4, "span", 23);
|
|
59
|
+
i0.ɵɵtext(5);
|
|
60
|
+
i0.ɵɵelementEnd();
|
|
61
|
+
i0.ɵɵelementEnd();
|
|
62
|
+
i0.ɵɵelementStart(6, "span", 24);
|
|
63
|
+
i0.ɵɵtext(7);
|
|
64
|
+
i0.ɵɵelementEnd();
|
|
65
|
+
i0.ɵɵelementEnd();
|
|
66
|
+
i0.ɵɵelementStart(8, "div");
|
|
67
|
+
i0.ɵɵelementContainer(9, 25);
|
|
68
|
+
i0.ɵɵelementEnd();
|
|
69
|
+
i0.ɵɵelementEnd();
|
|
70
|
+
} if (rf & 2) {
|
|
71
|
+
const node_r11 = ctx.$implicit;
|
|
72
|
+
const ctx_r3 = i0.ɵɵnextContext(2);
|
|
73
|
+
i0.ɵɵadvance(2);
|
|
74
|
+
i0.ɵɵattribute("aria-label", "toggle " + node_r11.name);
|
|
75
|
+
i0.ɵɵadvance(1);
|
|
76
|
+
i0.ɵɵproperty("src", ctx_r3.nestedTreeControl.isExpanded(node_r11) ? "/assets/images/folder-open.png" : "/assets/images/folder.png", i0.ɵɵsanitizeUrl);
|
|
77
|
+
i0.ɵɵadvance(2);
|
|
78
|
+
i0.ɵɵtextInterpolate(node_r11.childDocumentCount);
|
|
79
|
+
i0.ɵɵadvance(2);
|
|
80
|
+
i0.ɵɵtextInterpolate(node_r11.name);
|
|
81
|
+
i0.ɵɵadvance(1);
|
|
82
|
+
i0.ɵɵclassProp("document-tree-invisible", !ctx_r3.nestedTreeControl.isExpanded(node_r11));
|
|
83
|
+
} }
|
|
84
|
+
function CaseFileViewFolderComponent_div_8_Template(rf, ctx) { if (rf & 1) {
|
|
85
|
+
i0.ɵɵelementStart(0, "div", 7);
|
|
86
|
+
i0.ɵɵtemplate(1, CaseFileViewFolderComponent_div_8_div_1_Template, 2, 0, "div", 8);
|
|
87
|
+
i0.ɵɵelementStart(2, "div");
|
|
88
|
+
i0.ɵɵelementStart(3, "cdk-tree", 9);
|
|
89
|
+
i0.ɵɵtemplate(4, CaseFileViewFolderComponent_div_8_cdk_nested_tree_node_4_Template, 8, 4, "cdk-nested-tree-node", 10);
|
|
90
|
+
i0.ɵɵtemplate(5, CaseFileViewFolderComponent_div_8_cdk_nested_tree_node_5_Template, 10, 6, "cdk-nested-tree-node", 11);
|
|
91
|
+
i0.ɵɵelementEnd();
|
|
92
|
+
i0.ɵɵelementEnd();
|
|
93
|
+
i0.ɵɵelementEnd();
|
|
94
|
+
} if (rf & 2) {
|
|
95
|
+
const ctx_r0 = i0.ɵɵnextContext();
|
|
96
|
+
i0.ɵɵadvance(1);
|
|
97
|
+
i0.ɵɵproperty("ngIf", !ctx_r0.nestedDataSource || ctx_r0.nestedDataSource.length === 0);
|
|
98
|
+
i0.ɵɵadvance(2);
|
|
99
|
+
i0.ɵɵproperty("dataSource", ctx_r0.nestedDataSource)("treeControl", ctx_r0.nestedTreeControl);
|
|
100
|
+
i0.ɵɵadvance(2);
|
|
101
|
+
i0.ɵɵproperty("cdkTreeNodeDefWhen", ctx_r0.nestedChildren);
|
|
102
|
+
} }
|
|
103
|
+
export const MEDIA_VIEWER_LOCALSTORAGE_KEY = 'media-viewer-info';
|
|
104
|
+
export class CaseFileViewFolderComponent {
|
|
105
|
+
constructor(windowService, router, documentManagementService, dialog) {
|
|
106
|
+
this.windowService = windowService;
|
|
107
|
+
this.router = router;
|
|
108
|
+
this.documentManagementService = documentManagementService;
|
|
109
|
+
this.dialog = dialog;
|
|
110
|
+
this.clickedDocument = new EventEmitter();
|
|
111
|
+
this.moveDocument = new EventEmitter();
|
|
112
|
+
this.categories = [];
|
|
113
|
+
this.getChildren = (node) => of(node.children);
|
|
114
|
+
this.nestedChildren = (_, nodeData) => nodeData.children;
|
|
115
|
+
this.nestedTreeControl = new NestedTreeControl(this.getChildren);
|
|
116
|
+
}
|
|
117
|
+
get documentCount() {
|
|
118
|
+
var _a;
|
|
119
|
+
if ((_a = this.nestedDataSource) === null || _a === void 0 ? void 0 : _a.length) {
|
|
120
|
+
return this.nestedDataSource.reduce((acc, item) => {
|
|
121
|
+
return acc + item.childDocumentCount;
|
|
122
|
+
}, 0);
|
|
123
|
+
}
|
|
124
|
+
else {
|
|
125
|
+
return 0;
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
ngOnInit() {
|
|
129
|
+
this.documentFilterFormGroup = new FormGroup({});
|
|
130
|
+
this.documentSearchFormControl = new FormControl('');
|
|
131
|
+
this.documentFilterFormGroup.addControl(CaseFileViewFolderComponent.DOCUMENT_SEARCH_FORM_CONTROL_NAME, this.documentSearchFormControl);
|
|
132
|
+
// Listen to search input and initiate filter documents if at least three characters entered
|
|
133
|
+
this.documentFilterSubscription = this.documentSearchFormControl.valueChanges.pipe(tap((searchTerm) => this.searchTermLength = searchTerm.length), switchMap((searchTerm) => this.filter(searchTerm.toLowerCase()).pipe())).subscribe(documentTreeData => {
|
|
134
|
+
this.nestedDataSource = documentTreeData;
|
|
135
|
+
this.nestedTreeControl.dataNodes = documentTreeData;
|
|
136
|
+
this.searchTermLength >= CaseFileViewFolderComponent.MINIMUM_SEARCH_CHARACTERS
|
|
137
|
+
? this.nestedTreeControl.expandAll()
|
|
138
|
+
: this.nestedTreeControl.collapseAll();
|
|
139
|
+
});
|
|
140
|
+
// Subscribe to the input categories and documents, and generate tree data and initialise cdk tree
|
|
141
|
+
this.categoriesAndDocumentsSubscription = this.categoriesAndDocuments.subscribe(categoriesAndDocuments => {
|
|
142
|
+
const categories = categoriesAndDocuments.categories;
|
|
143
|
+
this.categories = categories;
|
|
144
|
+
// Generate document tree data from categories
|
|
145
|
+
this.documentTreeData = this.generateTreeData(categories);
|
|
146
|
+
// Append uncategorised documents
|
|
147
|
+
if (categoriesAndDocuments.uncategorised_documents && categoriesAndDocuments.uncategorised_documents.length > 0) {
|
|
148
|
+
const uncategorisedDocuments = this.getUncategorisedDocuments(categoriesAndDocuments.uncategorised_documents);
|
|
149
|
+
this.documentTreeData.push(uncategorisedDocuments);
|
|
150
|
+
}
|
|
151
|
+
// Initialise cdk tree with generated data
|
|
152
|
+
this.nestedDataSource = this.documentTreeData;
|
|
153
|
+
this.nestedTreeControl.dataNodes = this.documentTreeData;
|
|
154
|
+
});
|
|
155
|
+
}
|
|
156
|
+
generateTreeData(categories) {
|
|
157
|
+
return categories.reduce((tree, node) => {
|
|
158
|
+
const newDocumentTreeNode = new DocumentTreeNode();
|
|
159
|
+
newDocumentTreeNode.name = node.category_name;
|
|
160
|
+
newDocumentTreeNode.type = DocumentTreeNodeType.FOLDER;
|
|
161
|
+
newDocumentTreeNode.children = [...this.generateTreeData(node.sub_categories), ...this.getDocuments(node.documents)];
|
|
162
|
+
return [
|
|
163
|
+
...tree,
|
|
164
|
+
newDocumentTreeNode,
|
|
165
|
+
];
|
|
166
|
+
}, []);
|
|
167
|
+
}
|
|
168
|
+
getDocuments(documents) {
|
|
169
|
+
const documentsToReturn = [];
|
|
170
|
+
documents.forEach(document => {
|
|
171
|
+
const documentTreeNode = new DocumentTreeNode();
|
|
172
|
+
documentTreeNode.name = document.document_filename;
|
|
173
|
+
documentTreeNode.type = DocumentTreeNodeType.DOCUMENT;
|
|
174
|
+
documentTreeNode.document_filename = document.document_filename;
|
|
175
|
+
documentTreeNode.document_binary_url = document.document_binary_url;
|
|
176
|
+
documentTreeNode.attribute_path = document.attribute_path;
|
|
177
|
+
documentsToReturn.push(documentTreeNode);
|
|
178
|
+
});
|
|
179
|
+
return documentsToReturn;
|
|
180
|
+
}
|
|
181
|
+
getUncategorisedDocuments(uncategorisedDocuments) {
|
|
182
|
+
const documents = [];
|
|
183
|
+
uncategorisedDocuments.forEach(document => {
|
|
184
|
+
const documentTreeNode = new DocumentTreeNode();
|
|
185
|
+
documentTreeNode.name = document.document_filename;
|
|
186
|
+
documentTreeNode.type = DocumentTreeNodeType.DOCUMENT;
|
|
187
|
+
documentTreeNode.document_filename = document.document_filename;
|
|
188
|
+
documentTreeNode.document_binary_url = document.document_binary_url;
|
|
189
|
+
documentTreeNode.attribute_path = document.attribute_path;
|
|
190
|
+
documents.push(documentTreeNode);
|
|
191
|
+
});
|
|
192
|
+
const uncategorisedNode = new DocumentTreeNode();
|
|
193
|
+
uncategorisedNode.name = CaseFileViewFolderComponent.UNCATEGORISED_DOCUMENTS_TITLE;
|
|
194
|
+
uncategorisedNode.type = DocumentTreeNodeType.FOLDER;
|
|
195
|
+
uncategorisedNode.children = documents;
|
|
196
|
+
return uncategorisedNode;
|
|
197
|
+
}
|
|
198
|
+
filter(searchTerm) {
|
|
199
|
+
// Make a copy of the data so we do not mutate the original
|
|
200
|
+
function copy(node) {
|
|
201
|
+
const documentTreeNode = new DocumentTreeNode();
|
|
202
|
+
return Object.assign(documentTreeNode, node);
|
|
203
|
+
}
|
|
204
|
+
let filteredData = this.documentTreeData;
|
|
205
|
+
if (searchTerm && searchTerm.length >= CaseFileViewFolderComponent.MINIMUM_SEARCH_CHARACTERS && this.documentFilterFormGroup.controls[CaseFileViewFolderComponent.DOCUMENT_SEARCH_FORM_CONTROL_NAME].value.length > 2) {
|
|
206
|
+
filteredData = this.documentTreeData.map(copy).filter(function filterTreeData(node) {
|
|
207
|
+
if (node.name && node.name.toLowerCase().includes(searchTerm) && node.type === DocumentTreeNodeType.DOCUMENT) {
|
|
208
|
+
return true;
|
|
209
|
+
}
|
|
210
|
+
// Call recursively if node has children
|
|
211
|
+
if (node.children) {
|
|
212
|
+
return (node.children = node.children.map(copy).filter(filterTreeData)).length;
|
|
213
|
+
}
|
|
214
|
+
});
|
|
215
|
+
}
|
|
216
|
+
return of(filteredData);
|
|
217
|
+
}
|
|
218
|
+
triggerDocumentAction(actionType, documentTreeNode) {
|
|
219
|
+
var _a;
|
|
220
|
+
switch (actionType) {
|
|
221
|
+
case ('changeFolder'):
|
|
222
|
+
this.openMoveDialog(documentTreeNode);
|
|
223
|
+
break;
|
|
224
|
+
case ('openInANewTab'):
|
|
225
|
+
this.windowService.setLocalStorage(MEDIA_VIEWER_LOCALSTORAGE_KEY, this.documentManagementService.getMediaViewerInfo({
|
|
226
|
+
document_binary_url: documentTreeNode.document_binary_url,
|
|
227
|
+
document_filename: documentTreeNode.document_filename
|
|
228
|
+
}));
|
|
229
|
+
this.windowService.openOnNewTab((_a = this.router.createUrlTree(['/media-viewer'])) === null || _a === void 0 ? void 0 : _a.toString());
|
|
230
|
+
break;
|
|
231
|
+
case ('download'):
|
|
232
|
+
// Create a URL from the document_binary_url property (absolute URL) and use the path portion (relative URL).
|
|
233
|
+
// This is necessary because the Manage Cases application will automatically apply a proxy to the request, with
|
|
234
|
+
// the correct remote endpoint
|
|
235
|
+
this.downloadFile(new URL(documentTreeNode.document_binary_url).pathname, documentTreeNode.document_filename);
|
|
236
|
+
break;
|
|
237
|
+
case ('print'):
|
|
238
|
+
this.printDocument(new URL(documentTreeNode.document_binary_url).pathname);
|
|
239
|
+
break;
|
|
240
|
+
default:
|
|
241
|
+
return;
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
sortDataSourceAscAlphabetically() {
|
|
245
|
+
const sortedData = this.nestedDataSource.map(item => {
|
|
246
|
+
item.sortChildrenAscending();
|
|
247
|
+
return item;
|
|
248
|
+
});
|
|
249
|
+
this.updateNodeData(sortedData);
|
|
250
|
+
}
|
|
251
|
+
sortDataSourceDescAlphabetically() {
|
|
252
|
+
const sortedData = this.nestedDataSource.map(item => {
|
|
253
|
+
item.sortChildrenDescending();
|
|
254
|
+
return item;
|
|
255
|
+
});
|
|
256
|
+
this.updateNodeData(sortedData);
|
|
257
|
+
}
|
|
258
|
+
updateNodeData(data) {
|
|
259
|
+
const prevSelected = this.nestedTreeControl.expansionModel.selected.map((item) => {
|
|
260
|
+
return item.name;
|
|
261
|
+
});
|
|
262
|
+
this.nestedTreeControl.collapseAll();
|
|
263
|
+
this.nestedDataSource = data.map((item) => {
|
|
264
|
+
const newDocumentTreeNode = new DocumentTreeNode();
|
|
265
|
+
newDocumentTreeNode.name = item.name;
|
|
266
|
+
newDocumentTreeNode.type = item.type;
|
|
267
|
+
newDocumentTreeNode.children = item.children;
|
|
268
|
+
return newDocumentTreeNode;
|
|
269
|
+
});
|
|
270
|
+
const flattenedArray = this.nestedDataSource.map((item) => {
|
|
271
|
+
return item.flattenedAll;
|
|
272
|
+
}).flat();
|
|
273
|
+
const newObjects = flattenedArray.filter((item) => {
|
|
274
|
+
return prevSelected.includes(item.name);
|
|
275
|
+
});
|
|
276
|
+
newObjects.forEach(object => this.nestedTreeControl.expand(object));
|
|
277
|
+
}
|
|
278
|
+
ngOnDestroy() {
|
|
279
|
+
var _a, _b;
|
|
280
|
+
(_a = this.categoriesAndDocumentsSubscription) === null || _a === void 0 ? void 0 : _a.unsubscribe();
|
|
281
|
+
(_b = this.documentFilterSubscription) === null || _b === void 0 ? void 0 : _b.unsubscribe();
|
|
282
|
+
}
|
|
283
|
+
openMoveDialog(node) {
|
|
284
|
+
const dialogRef = this.dialog.open(CaseFileViewFolderSelectorComponent, {
|
|
285
|
+
width: '570px',
|
|
286
|
+
data: { categories: this.categories, document: node }
|
|
287
|
+
});
|
|
288
|
+
dialogRef.afterClosed().subscribe(newCatId => {
|
|
289
|
+
if (newCatId) {
|
|
290
|
+
this.moveDocument.emit({ newCategory: newCatId, document: node });
|
|
291
|
+
}
|
|
292
|
+
});
|
|
293
|
+
}
|
|
294
|
+
printDocument(url) {
|
|
295
|
+
const printWindow = window.open(url);
|
|
296
|
+
printWindow.print();
|
|
297
|
+
}
|
|
298
|
+
downloadFile(url, downloadFileName) {
|
|
299
|
+
const a = document.createElement('a');
|
|
300
|
+
document.body.appendChild(a);
|
|
301
|
+
a.setAttribute('style', 'display: none');
|
|
302
|
+
a.href = url;
|
|
303
|
+
a.download = downloadFileName;
|
|
304
|
+
a.click();
|
|
305
|
+
a.remove();
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
CaseFileViewFolderComponent.UNCATEGORISED_DOCUMENTS_TITLE = 'Uncategorised documents';
|
|
309
|
+
CaseFileViewFolderComponent.DOCUMENT_SEARCH_FORM_CONTROL_NAME = 'documentSearchFormControl';
|
|
310
|
+
CaseFileViewFolderComponent.MINIMUM_SEARCH_CHARACTERS = 3;
|
|
311
|
+
CaseFileViewFolderComponent.ɵfac = function CaseFileViewFolderComponent_Factory(t) { return new (t || CaseFileViewFolderComponent)(i0.ɵɵdirectiveInject(i1.WindowService), i0.ɵɵdirectiveInject(i2.Router), i0.ɵɵdirectiveInject(i1.DocumentManagementService), i0.ɵɵdirectiveInject(i3.MatDialog)); };
|
|
312
|
+
CaseFileViewFolderComponent.ɵcmp = i0.ɵɵdefineComponent({ type: CaseFileViewFolderComponent, selectors: [["ccd-case-file-view-folder"]], inputs: { categoriesAndDocuments: "categoriesAndDocuments", allowMoving: "allowMoving" }, outputs: { clickedDocument: "clickedDocument", moveDocument: "moveDocument" }, decls: 9, vars: 3, 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-container__node document-tree-container__node--document", 4, "cdkTreeNodeDef"], ["class", "document-tree-container__node document-tree-container__folder", 4, "cdkTreeNodeDef", "cdkTreeNodeDefWhen"], [1, "document-tree-container__node", "document-tree-container__node--document"], [1, "node", 3, "click"], ["disabled", "", 1, "node__icon"], ["src", "/assets/img/case-file-view/case-file-view-document.svg", "alt", "Document icon", 1, "node__iconImg"], [1, "node__name", "node-name-document"], [1, "node__document-options"], [3, "allowMoving", "changeFolderAction", "openInANewTabAction", "downloadAction", "printAction"], [1, "document-tree-container__node", "document-tree-container__folder"], ["cdkTreeNodeToggle", "", 1, "node"], [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) {
|
|
313
|
+
i0.ɵɵelementStart(0, "div", 0);
|
|
314
|
+
i0.ɵɵelementStart(1, "div", 1);
|
|
315
|
+
i0.ɵɵelement(2, "input", 2);
|
|
316
|
+
i0.ɵɵelementEnd();
|
|
317
|
+
i0.ɵɵelementEnd();
|
|
318
|
+
i0.ɵɵelementStart(3, "div", 3);
|
|
319
|
+
i0.ɵɵelementStart(4, "div", 4);
|
|
320
|
+
i0.ɵɵtext(5);
|
|
321
|
+
i0.ɵɵelementEnd();
|
|
322
|
+
i0.ɵɵelementStart(6, "div");
|
|
323
|
+
i0.ɵɵelementStart(7, "ccd-case-file-view-folder-sort", 5);
|
|
324
|
+
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(); });
|
|
325
|
+
i0.ɵɵelementEnd();
|
|
326
|
+
i0.ɵɵelementEnd();
|
|
327
|
+
i0.ɵɵelementEnd();
|
|
328
|
+
i0.ɵɵtemplate(8, CaseFileViewFolderComponent_div_8_Template, 6, 4, "div", 6);
|
|
329
|
+
} if (rf & 2) {
|
|
330
|
+
i0.ɵɵadvance(1);
|
|
331
|
+
i0.ɵɵproperty("formGroup", ctx.documentFilterFormGroup);
|
|
332
|
+
i0.ɵɵadvance(4);
|
|
333
|
+
i0.ɵɵtextInterpolate1("Documents (", ctx.documentCount, ")");
|
|
334
|
+
i0.ɵɵadvance(3);
|
|
335
|
+
i0.ɵɵproperty("ngIf", ctx.documentTreeData);
|
|
336
|
+
} }, directives: [i4.NgControlStatusGroup, i4.FormGroupDirective, i4.DefaultValueAccessor, i4.NgControlStatus, i4.FormControlName, i5.CaseFileViewFolderSortComponent, i6.NgIf, i7.CdkTree, i7.CdkTreeNodeDef, i7.CdkNestedTreeNode, i8.CaseFileViewFolderDocumentActionsComponent, i7.CdkTreeNodeToggle, i7.CdkTreeNodeOutlet], styles: ["[_nghost-%COMP%]{display:flex;height:100%;flex-direction:column}[_nghost-%COMP%] .document-tree-container[_ngcontent-%COMP%]{flex:1 0}.document-filter-container[_ngcontent-%COMP%]{border-bottom:2px solid #c9c9c9}.document-filter-container[_ngcontent-%COMP%] .document-filter[_ngcontent-%COMP%]{padding: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-tree-container[_ngcontent-%COMP%]{padding:4px;overflow-x:hidden;overflow-y:scroll}.document-tree-container__node[_ngcontent-%COMP%]{display:block}.document-tree-container__node[_ngcontent-%COMP%] .document-tree-container__node[_ngcontent-%COMP%]{padding-left:40px}.document-tree-container[_ngcontent-%COMP%] .document-tree-invisible[_ngcontent-%COMP%]{display:none}.document-tree-container[_ngcontent-%COMP%]::-webkit-scrollbar{width:7px}.document-tree-container[_ngcontent-%COMP%]::-webkit-scrollbar-thumb{border:4px solid transparent;background-clip:padding-box;border-radius:9999px;background-color:#aaa}.document-tree-container[_ngcontent-%COMP%]::-webkit-scrollbar-button{display:none}.document-tree-container[_ngcontent-%COMP%]::-webkit-scrollbar-track-piece{background:#eee}.document-tree-container[_ngcontent-%COMP%]::-webkit-scrollbar-thumb{background:#ccc}.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}.node[_ngcontent-%COMP%]{display:flex;align-items:center;width:100%;padding:6px;background:none;border:0;cursor:pointer;white-space:nowrap}.node--selected[_ngcontent-%COMP%]{background:#fff2cc}.node__icon[_ngcontent-%COMP%]{position:relative;display:inline-block}.node__count[_ngcontent-%COMP%]{color:#fff;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:.875rem;padding-top:4px}.node__iconImg[_ngcontent-%COMP%]{display:block;height:30px;width:30px}.node__name[_ngcontent-%COMP%]{margin-left:6px;font-size:1rem;overflow:hidden;text-overflow:ellipsis}.node__document-options[_ngcontent-%COMP%]{margin-left:auto;margin-right:0}"] });
|
|
337
|
+
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CaseFileViewFolderComponent, [{
|
|
338
|
+
type: Component,
|
|
339
|
+
args: [{
|
|
340
|
+
selector: 'ccd-case-file-view-folder',
|
|
341
|
+
templateUrl: './case-file-view-folder.component.html',
|
|
342
|
+
styleUrls: ['./case-file-view-folder.component.scss'],
|
|
343
|
+
}]
|
|
344
|
+
}], function () { return [{ type: i1.WindowService }, { type: i2.Router }, { type: i1.DocumentManagementService }, { type: i3.MatDialog }]; }, { categoriesAndDocuments: [{
|
|
345
|
+
type: Input
|
|
346
|
+
}], allowMoving: [{
|
|
347
|
+
type: Input
|
|
348
|
+
}], clickedDocument: [{
|
|
349
|
+
type: Output
|
|
350
|
+
}], moveDocument: [{
|
|
351
|
+
type: Output
|
|
352
|
+
}] }); })();
|
|
353
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FzZS1maWxlLXZpZXctZm9sZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NjZC1jYXNlLXVpLXRvb2xraXQvc3JjL2xpYi9zaGFyZWQvY29tcG9uZW50cy9wYWxldHRlL2Nhc2UtZmlsZS12aWV3L2NvbXBvbmVudHMvY2FzZS1maWxlLXZpZXctZm9sZGVyL2Nhc2UtZmlsZS12aWV3LWZvbGRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jY2QtY2FzZS11aS10b29sa2l0L3NyYy9saWIvc2hhcmVkL2NvbXBvbmVudHMvcGFsZXR0ZS9jYXNlLWZpbGUtdmlldy9jb21wb25lbnRzL2Nhc2UtZmlsZS12aWV3LWZvbGRlci9jYXNlLWZpbGUtdmlldy1mb2xkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDdEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUYsT0FBTyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDckQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxVQUFVLEVBQUUsRUFBRSxFQUFnQixNQUFNLE1BQU0sQ0FBQztBQUNwRCxPQUFPLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2hELE9BQU8sRUFJTCxnQkFBZ0IsRUFDaEIsb0JBQW9CLEVBQ3JCLE1BQU0sc0NBQXNDLENBQUM7QUFDOUMsT0FBTyxFQUFF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NEM7UUFBQSxZQUErQjtRQUFBLGlCQUFNO1FBQ2pGLDJCQUFLO1FBQ0gseURBR0M7UUFGQyxnSkFBaUIscUNBQWlDLElBQUMscUlBQ2pDLHNDQUFrQyxJQUREO1FBRXBELGlCQUFpQztRQUNwQyxpQkFBTTtRQUNSLGlCQUFNO1FBRU4sNEVBMkNNOztRQS9Eb0MsZUFBcUM7UUFBckMsdURBQXFDO1FBV2pDLGVBQStCO1FBQS9CLDREQUErQjtRQVN2QyxlQUFzQjtRQUF0QiwyQ0FBc0I7O3VGREUvQywyQkFBMkI7Y0FMdkMsU0FBUztlQUFDO2dCQUNULFFBQVEsRUFBRSwyQkFBMkI7Z0JBQ3JDLFdBQVcsRUFBRSx3Q0FBd0M7Z0JBQ3JELFNBQVMsRUFBRSxDQUFDLHdDQUF3QyxDQUFDO2FBQ3REO3FKQU1pQixzQkFBc0I7a0JBQXJDLEtBQUs7WUFDVSxXQUFXO2tCQUExQixLQUFLO1lBQ1csZUFBZTtrQkFBL0IsTUFBTTtZQUNVLFlBQVk7a0JBQTVCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZXN0ZWRUcmVlQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay90cmVlJztcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE1hdERpYWxvZyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgc3dpdGNoTWFwLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge1xuICBDYXNlRmlsZVZpZXdDYXRlZ29yeSxcbiAgQ2FzZUZpbGVWaWV3RG9jdW1lbnQsXG4gIENhdGVnb3JpZXNBbmREb2N1bWVudHMsXG4gIERvY3VtZW50VHJlZU5vZGUsXG4gIERvY3VtZW50VHJlZU5vZGVUeXBlXG59IGZyb20gJy4uLy4uLy4uLy4uLy4uL2RvbWFpbi9jYXNlLWZpbGUtdmlldyc7XG5pbXBvcnQgeyBEb2N1bWVudE1hbmFnZW1lbnRTZXJ2aWNlLCBXaW5kb3dTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vc2VydmljZXMnO1xuaW1wb3J0IHsgQ2FzZUZpbGVWaWV3Rm9sZGVyU2VsZWN0b3JDb21wb25lbnQgfSBmcm9tICcuLi9jYXNlLWZpbGUtdmlldy1mb2xkZXItc2VsZWN0b3IvY2FzZS1maWxlLXZpZXctZm9sZGVyLXNlbGVjdG9yLmNvbXBvbmVudCc7XG5leHBvcnQgY29uc3QgTUVESUFfVklFV0VSX0xPQ0FMU1RPUkFHRV9LRVkgPSAnbWVkaWEtdmlld2VyLWluZm8nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjY2QtY2FzZS1maWxlLXZpZXctZm9sZGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Nhc2UtZmlsZS12aWV3LWZvbGRlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2Nhc2UtZmlsZS12aWV3LWZvbGRlci5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBDYXNlRmlsZVZpZXdGb2xkZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgc3RhdGljIHJlYWRvbmx5IFVOQ0FURUdPUklTRURfRE9DVU1FTlRTX1RJVExFID0gJ1VuY2F0ZWdvcmlzZWQgZG9jdW1lbnRzJztcbiAgcHJpdmF0ZSBzdGF0aWMgcmVhZG9ubHkgRE9DVU1FTlRfU0VBUkNIX0ZPUk1fQ09OVFJPTF9OQU1FID0gJ2RvY3VtZW50U2VhcmNoRm9ybUNvbnRyb2wnO1xuICBwcml2YXRlIHN0YXRpYyByZWFkb25seSBNSU5JTVVNX1NFQVJDSF9DSEFSQUNURVJTID0gMztcblxuICBASW5wdXQoKSBwdWJsaWMgY2F0ZWdvcmllc0FuZERvY3VtZW50czogT2JzZXJ2YWJsZTxDYXRlZ29yaWVzQW5kRG9jdW1lbnRzPjtcbiAgQElucHV0KCkgcHVibGljIGFsbG93TW92aW5nOiBib29sZWFuO1xuICBAT3V0cHV0KCkgcHVibGljIGNsaWNrZWREb2N1bWVudCA9IG5ldyBFdmVudEVtaXR0ZXI8RG9jdW1lbnRUcmVlTm9kZT4oKTtcbiAgQE91dHB1dCgpIHB1YmxpYyBtb3ZlRG9jdW1lbnQgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICBwdWJsaWMgbmVzdGVkVHJlZUNvbnRyb2w6IE5lc3RlZFRyZWVDb250cm9sPERvY3VtZW50VHJlZU5vZGU+O1xuICBwdWJsaWMgbmVzdGVkRGF0YVNvdXJjZTogRG9jdW1lbnRUcmVlTm9kZVtdO1xuICBwdWJsaWMgY2F0ZWdvcmllczogQ2FzZUZpbGVWaWV3Q2F0ZWdvcnlbXSA9IFtdO1xuICBwdWJsaWMgY2F0ZWdvcmllc0FuZERvY3VtZW50c1N1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICBwdWJsaWMgc2VsZWN0ZWROb2RlSXRlbTogRG9jdW1lbnRUcmVlTm9kZSB8IHVuZGVmaW5lZDtcblxuICBwdWJsaWMgZG9jdW1lbnRGaWx0ZXJGb3JtR3JvdXA6IEZvcm1Hcm91cDtcbiAgcHVibGljIGRvY3VtZW50U2VhcmNoRm9ybUNvbnRyb2w6IEZvcm1Db250cm9sO1xuICBwdWJsaWMgZG9jdW1lbnRUcmVlRGF0YTogRG9jdW1lbnRUcmVlTm9kZVtdO1xuICBwdWJsaWMgZG9jdW1lbnRGaWx0ZXJTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgcHVibGljIHNlYXJjaFRlcm1MZW5ndGg6IG51bWJlcjtcblxuICBwcml2YXRlIGdldENoaWxkcmVuID0gKG5vZGU6IERvY3VtZW50VHJlZU5vZGUpID0+IG9mKG5vZGUuY2hpbGRyZW4pO1xuICBwdWJsaWMgbmVzdGVkQ2hpbGRyZW4gPSAoXzogbnVtYmVyLCBub2RlRGF0YTogRG9jdW1lbnRUcmVlTm9kZSkgPT4gbm9kZURhdGEuY2hpbGRyZW47XG4gIHB1YmxpYyBnZXQgZG9jdW1lbnRDb3VudCgpIHtcbiAgICBpZiAodGhpcy5uZXN0ZWREYXRhU291cmNlPy5sZW5ndGgpIHtcbiAgICAgIHJldHVybiB0aGlzLm5lc3RlZERhdGFTb3VyY2UucmVkdWNlKChhY2MsIGl0ZW0pID0+IHtcbiAgICAgICAgcmV0dXJuIGFjYyArIGl0ZW0uY2hpbGREb2N1bWVudENvdW50O1xuICAgICAgfSwgMCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgd2luZG93U2VydmljZTogV2luZG93U2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJvdXRlcjogUm91dGVyLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZG9jdW1lbnRNYW5hZ2VtZW50U2VydmljZTogRG9jdW1lbnRNYW5hZ2VtZW50U2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRpYWxvZzogTWF0RGlhbG9nXG4gICkge1xuICAgIHRoaXMubmVzdGVkVHJlZUNvbnRyb2wgPSBuZXcgTmVzdGVkVHJlZUNvbnRyb2w8RG9jdW1lbnRUcmVlTm9kZT4odGhpcy5nZXRDaGlsZHJlbik7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5kb2N1bWVudEZpbHRlckZvcm1Hcm91cCA9IG5ldyBGb3JtR3JvdXAoe30pO1xuICAgIHRoaXMuZG9jdW1lbnRTZWFyY2hGb3JtQ29udHJvbCA9IG5ldyBGb3JtQ29udHJvbCgnJyk7XG4gICAgdGhpcy5kb2N1bWVudEZpbHRlckZvcm1Hcm91cC5hZGRDb250cm9sKENhc2VGaWxlVmlld0ZvbGRlckNvbXBvbmVudC5ET0NVTUVOVF9TRUFSQ0hfRk9STV9DT05UUk9MX05BTUUsIHRoaXMuZG9jdW1lbnRTZWFyY2hGb3JtQ29udHJvbCk7XG5cbiAgICAvLyBMaXN0ZW4gdG8gc2VhcmNoIGlucHV0IGFuZCBpbml0aWF0ZSBmaWx0ZXIgZG9jdW1lbnRzIGlmIGF0IGxlYXN0IHRocmVlIGNoYXJhY3RlcnMgZW50ZXJlZFxuICAgIHRoaXMuZG9jdW1lbnRGaWx0ZXJTdWJzY3JpcHRpb24gPSB0aGlzLmRvY3VtZW50U2VhcmNoRm9ybUNvbnRyb2wudmFsdWVDaGFuZ2VzLnBpcGUoXG4gICAgICB0YXAoKHNlYXJjaFRlcm06IHN0cmluZykgPT4gdGhpcy5zZWFyY2hUZXJtTGVuZ3RoID0gc2VhcmNoVGVybS5sZW5ndGgpLFxuICAgICAgc3dpdGNoTWFwKChzZWFyY2hUZXJtOiBzdHJpbmcpID0+IHRoaXMuZmlsdGVyKHNlYXJjaFRlcm0udG9Mb3dlckNhc2UoKSkucGlwZSgpKVxuICAgICkuc3Vic2NyaWJlKGRvY3VtZW50VHJlZURhdGEgPT4ge1xuICAgICAgdGhpcy5uZXN0ZWREYXRhU291cmNlID0gZG9jdW1lbnRUcmVlRGF0YTtcbiAgICAgIHRoaXMubmVzdGVkVHJlZUNvbnRyb2wuZGF0YU5vZGVzID0gZG9jdW1lbnRUcmVlRGF0YTtcbiAgICAgIHRoaXMuc2VhcmNoVGVybUxlbmd0aCA+PSBDYXNlRmlsZVZpZXdGb2xkZXJDb21wb25lbnQuTUlOSU1VTV9TRUFSQ0hfQ0hBUkFDVEVSU1xuICAgICAgICA/IHRoaXMubmVzdGVkVHJlZUNvbnRyb2wuZXhwYW5kQWxsKClcbiAgICAgICAgOiB0aGlzLm5lc3RlZFRyZWVDb250cm9sLmNvbGxhcHNlQWxsKCk7XG4gICAgfSk7XG5cbiAgICAvLyBTdWJzY3JpYmUgdG8gdGhlIGlucHV0IGNhdGVnb3JpZXMgYW5kIGRvY3VtZW50cywgYW5kIGdlbmVyYXRlIHRyZWUgZGF0YSBhbmQgaW5pdGlhbGlzZSBjZGsgdHJlZVxuICAgIHRoaXMuY2F0ZWdvcmllc0FuZERvY3VtZW50c1N1YnNjcmlwdGlvbiA9IHRoaXMuY2F0ZWdvcmllc0FuZERvY3VtZW50cy5zdWJzY3JpYmUoY2F0ZWdvcmllc0FuZERvY3VtZW50cyA9PiB7XG4gICAgICBjb25zdCBjYXRlZ29yaWVzID0gY2F0ZWdvcmllc0FuZERvY3VtZW50cy5jYXRlZ29yaWVzO1xuICAgICAgdGhpcy5jYXRlZ29yaWVzID0gY2F0ZWdvcmllcztcbiAgICAgIC8vIEdlbmVyYXRlIGRvY3VtZW50IHRyZWUgZGF0YSBmcm9tIGNhdGVnb3JpZXNcbiAgICAgIHRoaXMuZG9jdW1lbnRUcmVlRGF0YSA9IHRoaXMuZ2VuZXJhdGVUcmVlRGF0YShjYXRlZ29yaWVzKTtcbiAgICAgIC8vIEFwcGVuZCB1bmNhdGVnb3Jpc2VkIGRvY3VtZW50c1xuICAgICAgaWYgKGNhdGVnb3JpZXNBbmREb2N1bWVudHMudW5jYXRlZ29yaXNlZF9kb2N1bWVudHMgJiYgY2F0ZWdvcmllc0FuZERvY3VtZW50cy51bmNhdGVnb3Jpc2VkX2RvY3VtZW50cy5sZW5ndGggPiAwKSB7XG4gICAgICAgIGNvbnN0IHVuY2F0ZWdvcmlzZWREb2N1bWVudHMgPSB0aGlzLmdldFVuY2F0ZWdvcmlzZWREb2N1bWVudHMoY2F0ZWdvcmllc0FuZERvY3VtZW50cy51bmNhdGVnb3Jpc2VkX2RvY3VtZW50cyk7XG4gICAgICAgIHRoaXMuZG9jdW1lbnRUcmVlRGF0YS5wdXNoKHVuY2F0ZWdvcmlzZWREb2N1bWVudHMpO1xuICAgICAgfVxuXG4gICAgICAvLyBJbml0aWFsaXNlIGNkayB0cmVlIHdpdGggZ2VuZXJhdGVkIGRhdGFcbiAgICAgIHRoaXMubmVzdGVkRGF0YVNvdXJjZSA9IHRoaXMuZG9jdW1lbnRUcmVlRGF0YTtcbiAgICAgIHRoaXMubmVzdGVkVHJlZUNvbnRyb2wuZGF0YU5vZGVzID0gdGhpcy5kb2N1bWVudFRyZWVEYXRhO1xuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGdlbmVyYXRlVHJlZURhdGEoY2F0ZWdvcmllczogQ2FzZUZpbGVWaWV3Q2F0ZWdvcnlbXSk6IERvY3VtZW50VHJlZU5vZGVbXSB7XG4gICAgcmV0dXJuIGNhdGVnb3JpZXMucmVkdWNlKCh0cmVlLCBub2RlKSA9PiB7XG4gICAgICBjb25zdCBuZXdEb2N1bWVudFRyZWVOb2RlID0gbmV3IERvY3VtZW50VHJlZU5vZGUoKTtcbiAgICAgIG5ld0RvY3VtZW50VHJlZU5vZGUubmFtZSA9IG5vZGUuY2F0ZWdvcnlfbmFtZTtcbiAgICAgIG5ld0RvY3VtZW50VHJlZU5vZGUudHlwZSA9ICBEb2N1bWVudFRyZWVOb2RlVHlwZS5GT0xERVI7XG4gICAgICBuZXdEb2N1bWVudFRyZWVOb2RlLmNoaWxkcmVuID0gWy4uLnRoaXMuZ2VuZXJhdGVUcmVlRGF0YShub2RlLnN1Yl9jYXRlZ29yaWVzKSwgLi4udGhpcy5nZXREb2N1bWVudHMobm9kZS5kb2N1bWVudHMpXTtcblxuICAgICAgcmV0dXJuIFtcbiAgICAgICAgLi4udHJlZSxcbiAgICAgICAgbmV3RG9jdW1lbnRUcmVlTm9kZSxcbiAgICAgIF07XG4gICAgfSwgW10pO1xuICB9XG5cbiAgcHVibGljIGdldERvY3VtZW50cyhkb2N1bWVudHM6IENhc2VGaWxlVmlld0RvY3VtZW50W10pOiBEb2N1bWVudFRyZWVOb2RlW10ge1xuICAgIGNvbnN0IGRvY3VtZW50c1RvUmV0dXJuOiBEb2N1bWVudFRyZWVOb2RlW10gPSBbXTtcbiAgICBkb2N1bWVudHMuZm9yRWFjaChkb2N1bWVudCA9PiB7XG4gICAgICBjb25zdCBkb2N1bWVudFRyZWVOb2RlID0gbmV3IERvY3VtZW50VHJlZU5vZGUoKTtcbiAgICAgIGRvY3VtZW50VHJlZU5vZGUubmFtZSA9IGRvY3VtZW50LmRvY3VtZW50X2ZpbGVuYW1lO1xuICAgICAgZG9jdW1lbnRUcmVlTm9kZS50eXBlID0gRG9jdW1lbnRUcmVlTm9kZVR5cGUuRE9DVU1FTlQ7XG4gICAgICBkb2N1bWVudFRyZWVOb2RlLmRvY3VtZW50X2ZpbGVuYW1lID0gZG9jdW1lbnQuZG9jdW1lbnRfZmlsZW5hbWU7XG4gICAgICBkb2N1bWVudFRyZWVOb2RlLmRvY3VtZW50X2JpbmFyeV91cmwgPSBkb2N1bWVudC5kb2N1bWVudF9iaW5hcnlfdXJsO1xuICAgICAgZG9jdW1lbnRUcmVlTm9kZS5hdHRyaWJ1dGVfcGF0aCA9IGRvY3VtZW50LmF0dHJpYnV0ZV9wYXRoO1xuXG4gICAgICBkb2N1bWVudHNUb1JldHVybi5wdXNoKGRvY3VtZW50VHJlZU5vZGUpO1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIGRvY3VtZW50c1RvUmV0dXJuO1xuICB9XG5cbiAgcHVibGljIGdldFVuY2F0ZWdvcmlzZWREb2N1bWVudHModW5jYXRlZ29yaXNlZERvY3VtZW50czogQ2FzZUZpbGVWaWV3RG9jdW1lbnRbXSk6IERvY3VtZW50VHJlZU5vZGUge1xuICAgIGNvbnN0IGRvY3VtZW50czogRG9jdW1lbnRUcmVlTm9kZVtdID0gW107XG4gICAgdW5jYXRlZ29yaXNlZERvY3VtZW50cy5mb3JFYWNoKGRvY3VtZW50ID0+IHtcbiAgICAgIGNvbnN0IGRvY3VtZW50VHJlZU5vZGUgPSBuZXcgRG9jdW1lbnRUcmVlTm9kZSgpO1xuICAgICAgZG9jdW1lbnRUcmVlTm9kZS5uYW1lID0gZG9jdW1lbnQuZG9jdW1lbnRfZmlsZW5hbWU7XG4gICAgICBkb2N1bWVudFRyZWVOb2RlLnR5cGUgPSBEb2N1bWVudFRyZWVOb2RlVHlwZS5ET0NVTUVOVDtcbiAgICAgIGRvY3VtZW50VHJlZU5vZGUuZG9jdW1lbnRfZmlsZW5hbWUgPSBkb2N1bWVudC5kb2N1bWVudF9maWxlbmFtZTtcbiAgICAgIGRvY3VtZW50VHJlZU5vZGUuZG9jdW1lbnRfYmluYXJ5X3VybCA9IGRvY3VtZW50LmRvY3VtZW50X2JpbmFyeV91cmw7XG4gICAgICBkb2N1bWVudFRyZWVOb2RlLmF0dHJpYnV0ZV9wYXRoID0gZG9jdW1lbnQuYXR0cmlidXRlX3BhdGg7XG5cbiAgICAgIGRvY3VtZW50cy5wdXNoKGRvY3VtZW50VHJlZU5vZGUpO1xuICAgIH0pO1xuXG4gICAgY29uc3QgdW5jYXRlZ29yaXNlZE5vZGUgPSBuZXcgRG9jdW1lbnRUcmVlTm9kZSgpO1xuICAgIHVuY2F0ZWdvcmlzZWROb2RlLm5hbWUgPSBDYXNlRmlsZVZpZXdGb2xkZXJDb21wb25lbnQuVU5DQVRFR09SSVNFRF9ET0NVTUVOVFNfVElUTEU7XG4gICAgdW5jYXRlZ29yaXNlZE5vZGUudHlwZSA9IERvY3VtZW50VHJlZU5vZGVUeXBlLkZPTERFUjtcbiAgICB1bmNhdGVnb3Jpc2VkTm9kZS5jaGlsZHJlbiA9IGRvY3VtZW50cztcblxuICAgIHJldHVybiB1bmNhdGVnb3Jpc2VkTm9kZTtcbiAgfVxuXG4gIHB1YmxpYyBmaWx0ZXIoc2VhcmNoVGVybTogc3RyaW5nKTogT2JzZXJ2YWJsZTxEb2N1bWVudFRyZWVOb2RlW10+IHtcbiAgICAvLyBNYWtlIGEgY29weSBvZiB0aGUgZGF0YSBzbyB3ZSBkbyBub3QgbXV0YXRlIHRoZSBvcmlnaW5hbFxuICAgIGZ1bmN0aW9uIGNvcHkobm9kZTogRG9jdW1lbnRUcmVlTm9kZSkge1xuICAgICAgY29uc3QgZG9jdW1lbnRUcmVlTm9kZSA9IG5ldyBEb2N1bWVudFRyZWVOb2RlKCk7XG4gICAgICByZXR1cm4gT2JqZWN0LmFzc2lnbihkb2N1bWVudFRyZWVOb2RlLCBub2RlKTtcbiAgICB9XG5cbiAgICBsZXQgZmlsdGVyZWREYXRhID0gdGhpcy5kb2N1bWVudFRyZWVEYXRhO1xuICAgIGlmIChzZWFyY2hUZXJtICYmIHNlYXJjaFRlcm0ubGVuZ3RoID49IENhc2VGaWxlVmlld0ZvbGRlckNvbXBvbmVudC5NSU5JTVVNX1NFQVJDSF9DSEFSQUNURVJTICYmIHRoaXMuZG9jdW1lbnRGaWx0ZXJGb3JtR3JvdXAuY29udHJvbHNbQ2FzZUZpbGVWaWV3Rm9sZGVyQ29tcG9uZW50LkRPQ1VNRU5UX1NFQVJDSF9GT1JNX0NPTlRST0xfTkFNRV0udmFsdWUubGVuZ3RoID4gMikge1xuICAgICAgZmlsdGVyZWREYXRhID0gdGhpcy5kb2N1bWVudFRyZWVEYXRhLm1hcChjb3B5KS5maWx0ZXIoZnVuY3Rpb24gZmlsdGVyVHJlZURhdGEobm9kZTogRG9jdW1lbnRUcmVlTm9kZSkge1xuICAgICAgICBpZiAobm9kZS5uYW1lICYmIG5vZGUubmFtZS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKHNlYXJjaFRlcm0pICYmIG5vZGUudHlwZSA9PT0gRG9jdW1lbnRUcmVlTm9kZVR5cGUuRE9DVU1FTlQpIHtcbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgICAvLyBDYWxsIHJlY3Vyc2l2ZWx5IGlmIG5vZGUgaGFzIGNoaWxkcmVuXG4gICAgICAgIGlmIChub2RlLmNoaWxkcmVuKSB7XG4gICAgICAgICAgcmV0dXJuIChub2RlLmNoaWxkcmVuID0gbm9kZS5jaGlsZHJlbi5tYXAoY29weSkuZmlsdGVyKGZpbHRlclRyZWVEYXRhKSkubGVuZ3RoO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIG9mKGZpbHRlcmVkRGF0YSk7XG4gIH1cblxuICBwdWJsaWMgdHJpZ2dlckRvY3VtZW50QWN0aW9uKFxuICAgIGFjdGlvblR5cGU6ICdjaGFuZ2VGb2xkZXInIHwgJ29wZW5JbkFOZXdUYWInIHwgJ2Rvd25sb2FkJyB8ICdwcmludCcsXG4gICAgZG9jdW1lbnRUcmVlTm9kZTogRG9jdW1lbnRUcmVlTm9kZVxuICApOiB2b2lkIHtcbiAgICBzd2l0Y2goYWN0aW9uVHlwZSkge1xuICAgICAgY2FzZSgnY2hhbmdlRm9sZGVyJyk6XG4gICAgICAgIHRoaXMub3Blbk1vdmVEaWFsb2coZG9jdW1lbnRUcmVlTm9kZSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSgnb3BlbkluQU5ld1RhYicpOlxuICAgICAgICB0aGlzLndpbmRvd1NlcnZpY2Uuc2V0TG9jYWxTdG9yYWdlKE1FRElBX1ZJRVdFUl9MT0NBTFNUT1JBR0VfS0VZLFxuICAgICAgICAgIHRoaXMuZG9jdW1lbnRNYW5hZ2VtZW50U2VydmljZS5nZXRNZWRpYVZpZXdlckluZm8oe1xuICAgICAgICAgICAgZG9jdW1lbnRfYmluYXJ5X3VybDogZG9jdW1lbnRUcmVlTm9kZS5kb2N1bWVudF9iaW5hcnlfdXJsLFxuICAgICAgICAgICAgZG9jdW1lbnRfZmlsZW5hbWU6IGRvY3VtZW50VHJlZU5vZGUuZG9jdW1lbnRfZmlsZW5hbWVcbiAgICAgICAgICB9KSk7XG5cbiAgICAgICAgdGhpcy53aW5kb3dTZXJ2aWNlLm9wZW5Pbk5ld1RhYihcbiAgICAgICAgICB0aGlzLnJvdXRlci5jcmVhdGVVcmxUcmVlKFsnL21lZGlhLXZpZXdlciddKT8udG9TdHJpbmcoKVxuICAgICAgICApO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UoJ2Rvd25sb2FkJyk6XG4gICAgICAgIC8vIENyZWF0ZSBhIFVSTCBmcm9tIHRoZSBkb2N1bWVudF9iaW5hcnlfdXJsIHByb3BlcnR5IChhYnNvbHV0ZSBVUkwpIGFuZCB1c2UgdGhlIHBhdGggcG9ydGlvbiAocmVsYXRpdmUgVVJMKS5cbiAgICAgICAgLy8gVGhpcyBpcyBuZWNlc3NhcnkgYmVjYXVzZSB0aGUgTWFuYWdlIENhc2VzIGFwcGxpY2F0aW9uIHdpbGwgYXV0b21hdGljYWxseSBhcHBseSBhIHByb3h5IHRvIHRoZSByZXF1ZXN0LCB3aXRoXG4gICAgICAgIC8vIHRoZSBjb3JyZWN0IHJlbW90ZSBlbmRwb2ludFxuICAgICAgICB0aGlzLmRvd25sb2FkRmlsZShuZXcgVVJMKGRvY3VtZW50VHJlZU5vZGUuZG9jdW1lbnRfYmluYXJ5X3VybCkucGF0aG5hbWUsIGRvY3VtZW50VHJlZU5vZGUuZG9jdW1lbnRfZmlsZW5hbWUpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UoJ3ByaW50Jyk6XG4gICAgICAgIHRoaXMucHJpbnREb2N1bWVudChuZXcgVVJMKGRvY3VtZW50VHJlZU5vZGUuZG9jdW1lbnRfYmluYXJ5X3VybCkucGF0aG5hbWUpO1xuICAgICAgICBicmVhaztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgc29ydERhdGFTb3VyY2VBc2NBbHBoYWJldGljYWxseSgpIHtcbiAgICBjb25zdCBzb3J0ZWREYXRhID0gdGhpcy5uZXN0ZWREYXRhU291cmNlLm1hcChpdGVtID0+IHtcbiAgICAgIGl0ZW0uc29ydENoaWxkcmVuQXNjZW5kaW5nKCk7XG4gICAgICByZXR1cm4gaXRlbTtcbiAgICB9KTtcblxuICAgIHRoaXMudXBkYXRlTm9kZURhdGEoc29ydGVkRGF0YSk7XG4gIH1cblxuICBwdWJsaWMgc29ydERhdGFTb3VyY2VEZXNjQWxwaGFiZXRpY2FsbHkoKSB7XG4gICAgY29uc3Qgc29ydGVkRGF0YSA9IHRoaXMubmVzdGVkRGF0YVNvdXJjZS5tYXAoaXRlbSA9PiB7XG4gICAgICBpdGVtLnNvcnRDaGlsZHJlbkRlc2NlbmRpbmcoKTtcbiAgICAgIHJldHVybiBpdGVtO1xuICAgIH0pO1xuXG4gICAgdGhpcy51cGRhdGVOb2RlRGF0YShzb3J0ZWREYXRhKTtcbiAgfVxuXG4gIHB1YmxpYyB1cGRhdGVOb2RlRGF0YShkYXRhOiBEb2N1bWVudFRyZWVOb2RlW10pOiB2b2lkIHtcbiAgICBjb25zdCBwcmV2U2VsZWN0ZWQgPSB0aGlzLm5lc3RlZFRyZWVDb250cm9sLmV4cGFuc2lvbk1vZGVsLnNlbGVjdGVkLm1hcChcbiAgICAgIChpdGVtKSA9PiB7XG4gICAgICAgIHJldHVybiBpdGVtLm5hbWU7XG4gICAgICB9KTtcblxuICAgIHRoaXMubmVzdGVkVHJlZUNvbnRyb2wuY29sbGFwc2VBbGwoKTtcbiAgICB0aGlzLm5lc3RlZERhdGFTb3VyY2UgPSBkYXRhLm1hcCgoaXRlbSkgPT4ge1xuICAgICAgY29uc3QgbmV3RG9jdW1lbnRUcmVlTm9kZSA9IG5ldyBEb2N1bWVudFRyZWVOb2RlKCk7XG4gICAgICBuZXdEb2N1bWVudFRyZWVOb2RlLm5hbWUgPSBpdGVtLm5hbWU7XG4gICAgICBuZXdEb2N1bWVudFRyZWVOb2RlLnR5cGUgPSBpdGVtLnR5cGU7XG4gICAgICBuZXdEb2N1bWVudFRyZWVOb2RlLmNoaWxkcmVuID0gaXRlbS5jaGlsZHJlbjtcblxuICAgICAgcmV0dXJuIG5ld0RvY3VtZW50VHJlZU5vZGU7XG4gICAgfSk7XG5cbiAgICBjb25zdCBmbGF0dGVuZWRBcnJheSA9IHRoaXMubmVzdGVkRGF0YVNvdXJjZS5tYXAoKGl0ZW0pID0+IHtcbiAgICAgIHJldHVybiBpdGVtLmZsYXR0ZW5lZEFsbDtcbiAgICB9KS5mbGF0KCk7XG4gICAgY29uc3QgbmV3T2JqZWN0cyA9IGZsYXR0ZW5lZEFycmF5LmZpbHRlcigoaXRlbSkgPT4ge1xuICAgICAgcmV0dXJuIHByZXZTZWxlY3RlZC5pbmNsdWRlcyhpdGVtLm5hbWUpO1xuICAgIH0pO1xuICAgIG5ld09iamVjdHMuZm9yRWFjaChvYmplY3QgPT4gdGhpcy5uZXN0ZWRUcmVlQ29udHJvbC5leHBhbmQob2JqZWN0KSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5jYXRlZ29yaWVzQW5kRG9jdW1lbnRzU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICAgIHRoaXMuZG9jdW1lbnRGaWx0ZXJTdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwcml2YXRlIG9wZW5Nb3ZlRGlhbG9nKG5vZGU6IERvY3VtZW50VHJlZU5vZGUpOiB2b2lkIHtcbiAgICBjb25zdCBkaWFsb2dSZWYgPSB0aGlzLmRpYWxvZy5vcGVuKENhc2VGaWxlVmlld0ZvbGRlclNlbGVjdG9yQ29tcG9uZW50LCB7XG4gICAgICB3aWR0aDogJzU3MHB4JyxcbiAgICAgIGRhdGE6IHsgY2F0ZWdvcmllczogdGhpcy5jYXRlZ29yaWVzLCBkb2N1bWVudDogbm9kZSB9XG4gICAgfSk7XG5cbiAgICBkaWFsb2dSZWYuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUobmV3Q2F0SWQgPT4ge1xuICAgICAgaWYgKG5ld0NhdElkKSB7XG4gICAgICAgIHRoaXMubW92ZURvY3VtZW50LmVtaXQoe25ld0NhdGVnb3J5OiBuZXdDYXRJZCwgZG9jdW1lbnQ6IG5vZGV9KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBwcmludERvY3VtZW50KHVybDogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3QgcHJpbnRXaW5kb3cgPSB3aW5kb3cub3Blbih1cmwpO1xuICAgIHByaW50V2luZG93LnByaW50KCk7XG4gIH1cblxuICBwdWJsaWMgZG93bmxvYWRGaWxlKHVybDogc3RyaW5nLCBkb3dubG9hZEZpbGVOYW1lOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCBhID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpO1xuICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoYSk7XG4gICAgYS5zZXRBdHRyaWJ1dGUoJ3N0eWxlJywgJ2Rpc3BsYXk6IG5vbmUnKTtcbiAgICBhLmhyZWYgPSB1cmw7XG4gICAgYS5kb3dubG9hZCA9IGRvd25sb2FkRmlsZU5hbWU7XG4gICAgYS5jbGljaygpO1xuICAgIGEucmVtb3ZlKCk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJkb2N1bWVudC1maWx0ZXItY29udGFpbmVyXCI+XG4gIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwIGRvY3VtZW50LWZpbHRlclwiIFtmb3JtR3JvdXBdPVwiZG9jdW1lbnRGaWx0ZXJGb3JtR3JvdXBcIj5cbiAgICA8aW5wdXQgY2xhc3M9XCJmb3JtLWNvbnRyb2wgZG9jdW1lbnQtc2VhcmNoXCJcbiAgICAgIHR5cGU9XCJzZWFyY2hcIlxuICAgICAgaWQ9XCJkb2N1bWVudC1zZWFyY2hcIlxuICAgICAgbmFtZT1cImRvY3VtZW50U2VhcmNoRm9ybUNvbnRyb2xcIlxuICAgICAgZm9ybUNvbnRyb2xOYW1lPVwiZG9jdW1lbnRTZWFyY2hGb3JtQ29udHJvbFwiXG4gICAgICBwbGFjZWhvbGRlcj1cIlNlYXJjaCBieSBkb2N1bWVudCBuYW1lXCI+XG4gIDwvZGl2PlxuPC9kaXY+XG5cbjxkaXYgY2xhc3M9XCJkb2N1bWVudC1mb2xkZXJzLWhlYWRlclwiPlxuICA8ZGl2IGNsYXNzPVwiZG9jdW1lbnQtZm9sZGVycy1oZWFkZXJfX3RpdGxlXCI+RG9jdW1lbnRzICh7eyBkb2N1bWVudENvdW50IH19KTwvZGl2PlxuICA8ZGl2PlxuICAgIDxjY2QtY2FzZS1maWxlLXZpZXctZm9sZGVyLXNvcnRcbiAgICAgIChzb3J0QXNjZW5kaW5nKT1cInNvcnREYXRhU291cmNlQXNjQWxwaGFiZXRpY2FsbHkoKVwiXG4gICAgICAoc29ydERlc2NlbmRpbmcpPVwic29ydERhdGFTb3VyY2VEZXNjQWxwaGFiZXRpY2FsbHkoKVwiXG4gICAgPjwvY2NkLWNhc2UtZmlsZS12aWV3LWZvbGRlci1zb3J0PlxuICA8L2Rpdj5cbjwvZGl2PlxuXG48ZGl2IGNsYXNzPVwiZG9jdW1lbnQtdHJlZS1jb250YWluZXJcIiAqbmdJZj1cImRvY3VtZW50VHJlZURhdGFcIj5cbiAgPGRpdiAqbmdJZj1cIiFuZXN0ZWREYXRhU291cmNlIHx8IG5lc3RlZERhdGFTb3VyY2UubGVuZ3RoID09PSAwXCI+XG4gICAgTm8gcmVzdWx0cyBmb3VuZFxuICA8L2Rpdj5cbiAgPGRpdj5cbiAgICA8Y2RrLXRyZWUgW2RhdGFTb3VyY2VdPVwibmVzdGVkRGF0YVNvdXJjZVwiIFt0cmVlQ29udHJvbF09XCJuZXN0ZWRUcmVlQ29udHJvbFwiPlxuICAgICAgPCEtLSBkb2N1bWVudCAtLT5cbiAgICAgIDxjZGstbmVzdGVkLXRyZWUtbm9kZSBjbGFzcz1cImRvY3VtZW50LXRyZWUtY29udGFpbmVyX19ub2RlIGRvY3VtZW50LXRyZWUtY29udGFpbmVyX19ub2RlLS1kb2N1bWVudFwiICpjZGtUcmVlTm9kZURlZj1cImxldCBub2RlXCI+XG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJub2RlXCIgKGNsaWNrKT1cInNlbGVjdGVkTm9kZUl0ZW0gPSBub2RlOyBjbGlja2VkRG9jdW1lbnQuZW1pdChub2RlKVwiXG4gICAgICAgICAgICAgICAgW2NsYXNzLm5vZGUtLXNlbGVjdGVkXT1cInNlbGVjdGVkTm9kZUl0ZW0/Lm5hbWUgPT09IG5vZGUubmFtZVwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJub2RlX19pY29uXCIgZGlzYWJsZWQ+XG4gICAgICAgICAgICA8aW1nIHNyYz1cIi9hc3NldHMvaW1nL2Nhc2UtZmlsZS12aWV3L2Nhc2UtZmlsZS12aWV3LWRvY3VtZW50LnN2Z1wiIGNsYXNzPVwibm9kZV9faWNvbkltZ1wiIGFsdD1cIkRvY3VtZW50IGljb25cIj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cIm5vZGVfX25hbWUgbm9kZS1uYW1lLWRvY3VtZW50XCI+e3tub2RlLm5hbWV9fTwvc3Bhbj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibm9kZV9fZG9jdW1lbnQtb3B0aW9uc1wiPlxuICAgICAgICAgICAgPGNjZC1jYXNlLWZpbGUtdmlldy1mb2xkZXItZG9jdW1lbnQtYWN0aW9uc1xuICAgICAgICAgICAgICAoY2hhbmdlRm9sZGVyQWN0aW9uKT1cInRyaWdnZXJEb2N1bWVudEFjdGlvbignY2hhbmdlRm9sZGVyJywgbm9kZSlcIlxuICAgICAgICAgICAgICAob3BlbkluQU5ld1RhYkFjdGlvbik9XCJ0cmlnZ2VyRG9jdW1lbnRBY3Rpb24oJ29wZW5JbkFOZXdUYWInLCBub2RlKVwiXG4gICAgICAgICAgICAgIChkb3dubG9hZEFjdGlvbik9XCJ0cmlnZ2VyRG9jdW1lbnRBY3Rpb24oJ2Rvd25sb2FkJywgbm9kZSlcIlxuICAgICAgICAgICAgICAocHJpbnRBY3Rpb24pPVwidHJpZ2dlckRvY3VtZW50QWN0aW9uKCdwcmludCcsIG5vZGUpXCJcbiAgICAgICAgICAgICAgW2FsbG93TW92aW5nXT1cImFsbG93TW92aW5nXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgIDwvY2NkLWNhc2UtZmlsZS12aWV3LWZvbGRlci1kb2N1bWVudC1hY3Rpb25zPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvY2RrLW5lc3RlZC10cmVlLW5vZGU+XG4gICAgICA8IS0tIGZvbGRlci0tPlxuICAgICAgPGNkay1uZXN0ZWQtdHJlZS1ub2RlIGNsYXNzPVwiZG9jdW1lbnQtdHJlZS1jb250YWluZXJfX25vZGUgZG9jdW1lbnQtdHJlZS1jb250YWluZXJfX2ZvbGRlclwiICpjZGtUcmVlTm9kZURlZj1cImxldCBub2RlOyB3aGVuOiBuZXN0ZWRDaGlsZHJlblwiPlxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwibm9kZVwiIGNka1RyZWVOb2RlVG9nZ2xlPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJub2RlX19pY29uXCIgW2F0dHIuYXJpYS1sYWJlbF09XCIndG9nZ2xlICcgKyBub2RlLm5hbWVcIiA+XG4gICAgICAgICAgICA8aW1nIGNsYXNzPVwibm9kZV9faWNvbkltZ1wiXG4gICAgICAgICAgICAgICAgIFtzcmNdPVwibmVzdGVkVHJlZUNvbnRyb2wuaXNFeHBhbmRlZChub2RlKSA/ICcvYXNzZXRzL2ltYWdlcy9mb2xkZXItb3Blbi5wbmcnIDogJy9hc3NldHMvaW1hZ2VzL2ZvbGRlci5wbmcnXCIgYWx0PVwiRm9sZGVyIGljb25cIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibm9kZV9fY291bnRcIj57e25vZGUuY2hpbGREb2N1bWVudENvdW50fX08L3NwYW4+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJub2RlX19uYW1lIG5vZGVfX25hbWUtLWZvbGRlclwiPnt7bm9kZS5uYW1lfX08L3NwYW4+XG4gICAgICAgIDwvYnV0dG9uPlxuXG4gICAgICAgIDxkaXYgW2NsYXNzLmRvY3VtZW50LXRyZWUtaW52aXNpYmxlXT1cIiFuZXN0ZWRUcmVlQ29udHJvbC5pc0V4cGFuZGVkKG5vZGUpXCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciBjZGtUcmVlTm9kZU91dGxldD48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Nkay1uZXN0ZWQtdHJlZS1ub2RlPlxuICAgIDwvY2RrLXRyZWU+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
import { Component, Inject } from '@angular/core';
|
|
2
|
+
import { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/material/dialog";
|
|
5
|
+
import * as i2 from "@angular/common";
|
|
6
|
+
function CaseFileViewFolderSelectorComponent_ng_container_5_ng_container_1_Template(rf, ctx) { if (rf & 1) {
|
|
7
|
+
i0.ɵɵelementContainer(0);
|
|
8
|
+
} }
|
|
9
|
+
const _c0 = function (a0) { return { cat: a0, level: 1 }; };
|
|
10
|
+
function CaseFileViewFolderSelectorComponent_ng_container_5_Template(rf, ctx) { if (rf & 1) {
|
|
11
|
+
i0.ɵɵelementContainerStart(0);
|
|
12
|
+
i0.ɵɵtemplate(1, CaseFileViewFolderSelectorComponent_ng_container_5_ng_container_1_Template, 1, 0, "ng-container", 8);
|
|
13
|
+
i0.ɵɵelementContainerEnd();
|
|
14
|
+
} if (rf & 2) {
|
|
15
|
+
const cat_r3 = ctx.$implicit;
|
|
16
|
+
i0.ɵɵnextContext();
|
|
17
|
+
const _r1 = i0.ɵɵreference(13);
|
|
18
|
+
i0.ɵɵadvance(1);
|
|
19
|
+
i0.ɵɵproperty("ngTemplateOutlet", _r1)("ngTemplateOutletContext", i0.ɵɵpureFunction1(2, _c0, cat_r3));
|
|
20
|
+
} }
|
|
21
|
+
function CaseFileViewFolderSelectorComponent_ng_template_12_ng_container_5_ng_container_1_Template(rf, ctx) { if (rf & 1) {
|
|
22
|
+
i0.ɵɵelementContainer(0);
|
|
23
|
+
} }
|
|
24
|
+
const _c1 = function (a0, a1) { return { cat: a0, level: a1 }; };
|
|
25
|
+
function CaseFileViewFolderSelectorComponent_ng_template_12_ng_container_5_Template(rf, ctx) { if (rf & 1) {
|
|
26
|
+
i0.ɵɵelementContainerStart(0);
|
|
27
|
+
i0.ɵɵtemplate(1, CaseFileViewFolderSelectorComponent_ng_template_12_ng_container_5_ng_container_1_Template, 1, 0, "ng-container", 8);
|
|
28
|
+
i0.ɵɵelementContainerEnd();
|
|
29
|
+
} if (rf & 2) {
|
|
30
|
+
const subcat_r8 = ctx.$implicit;
|
|
31
|
+
const level_r6 = i0.ɵɵnextContext().level;
|
|
32
|
+
i0.ɵɵnextContext();
|
|
33
|
+
const _r1 = i0.ɵɵreference(13);
|
|
34
|
+
i0.ɵɵadvance(1);
|
|
35
|
+
i0.ɵɵproperty("ngTemplateOutlet", _r1)("ngTemplateOutletContext", i0.ɵɵpureFunction2(2, _c1, subcat_r8, level_r6 + 1));
|
|
36
|
+
} }
|
|
37
|
+
function CaseFileViewFolderSelectorComponent_ng_template_12_Template(rf, ctx) { if (rf & 1) {
|
|
38
|
+
const _r12 = i0.ɵɵgetCurrentView();
|
|
39
|
+
i0.ɵɵelementStart(0, "div", 9);
|
|
40
|
+
i0.ɵɵelementStart(1, "input", 10);
|
|
41
|
+
i0.ɵɵlistener("click", function CaseFileViewFolderSelectorComponent_ng_template_12_Template_input_click_1_listener($event) { i0.ɵɵrestoreView(_r12); const ctx_r11 = i0.ɵɵnextContext(); return ctx_r11.handleChange($event); });
|
|
42
|
+
i0.ɵɵelementEnd();
|
|
43
|
+
i0.ɵɵelementStart(2, "label", 11);
|
|
44
|
+
i0.ɵɵelement(3, "img", 12);
|
|
45
|
+
i0.ɵɵtext(4);
|
|
46
|
+
i0.ɵɵelementEnd();
|
|
47
|
+
i0.ɵɵtemplate(5, CaseFileViewFolderSelectorComponent_ng_template_12_ng_container_5_Template, 2, 5, "ng-container", 2);
|
|
48
|
+
i0.ɵɵelementEnd();
|
|
49
|
+
} if (rf & 2) {
|
|
50
|
+
const cat_r5 = ctx.cat;
|
|
51
|
+
const level_r6 = ctx.level;
|
|
52
|
+
i0.ɵɵadvance(1);
|
|
53
|
+
i0.ɵɵpropertyInterpolate1("name", "level-", level_r6, "");
|
|
54
|
+
i0.ɵɵproperty("id", cat_r5.category_id);
|
|
55
|
+
i0.ɵɵadvance(1);
|
|
56
|
+
i0.ɵɵproperty("for", cat_r5.category_id);
|
|
57
|
+
i0.ɵɵadvance(2);
|
|
58
|
+
i0.ɵɵtextInterpolate1(" ", cat_r5.category_name, " ");
|
|
59
|
+
i0.ɵɵadvance(1);
|
|
60
|
+
i0.ɵɵproperty("ngForOf", cat_r5.sub_categories);
|
|
61
|
+
} }
|
|
62
|
+
export class CaseFileViewFolderSelectorComponent {
|
|
63
|
+
constructor(dialogRef, data) {
|
|
64
|
+
this.dialogRef = dialogRef;
|
|
65
|
+
this.data = data;
|
|
66
|
+
this.currentCategories = [];
|
|
67
|
+
this.selected = '';
|
|
68
|
+
this.currentCategories = [...this.data.categories];
|
|
69
|
+
}
|
|
70
|
+
ngAfterViewInit() {
|
|
71
|
+
const path = this.findPath();
|
|
72
|
+
path.forEach(p => document.getElementById(p).checked = true);
|
|
73
|
+
}
|
|
74
|
+
handleChange(evt) {
|
|
75
|
+
if (evt.target.checked) {
|
|
76
|
+
this.select(evt.target.id);
|
|
77
|
+
// get level of this checkbox so we can clear all lower levels
|
|
78
|
+
let level = parseInt(evt.target.name.split('-')[1], 10) + 1;
|
|
79
|
+
let nodes = document.getElementsByName(`level-${level}`);
|
|
80
|
+
while (nodes.length > 0) {
|
|
81
|
+
nodes.forEach((node) => node.checked = false);
|
|
82
|
+
level += 1;
|
|
83
|
+
nodes = document.getElementsByName(`level-${level}`);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
select(categoryId) {
|
|
88
|
+
this.selected = categoryId;
|
|
89
|
+
}
|
|
90
|
+
cancel() {
|
|
91
|
+
this.dialogRef.close();
|
|
92
|
+
}
|
|
93
|
+
save() {
|
|
94
|
+
this.dialogRef.close(this.selected.length > 0 ? this.selected : null);
|
|
95
|
+
}
|
|
96
|
+
findPath() {
|
|
97
|
+
for (const c of this.data.categories) {
|
|
98
|
+
const r = this.containsDocument(c, this.data.document);
|
|
99
|
+
if (r) {
|
|
100
|
+
return r;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
containsDocument(cat, document) {
|
|
105
|
+
if (cat.documents.findIndex(doc => doc.document_binary_url === document.document_binary_url) > -1) {
|
|
106
|
+
return [cat.category_id];
|
|
107
|
+
}
|
|
108
|
+
for (const c of cat.sub_categories) {
|
|
109
|
+
const r = this.containsDocument(c, document);
|
|
110
|
+
if (r) {
|
|
111
|
+
return [cat.category_id, ...r];
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
return null;
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
CaseFileViewFolderSelectorComponent.ɵfac = function CaseFileViewFolderSelectorComponent_Factory(t) { return new (t || CaseFileViewFolderSelectorComponent)(i0.ɵɵdirectiveInject(i1.MatDialogRef), i0.ɵɵdirectiveInject(MAT_DIALOG_DATA)); };
|
|
118
|
+
CaseFileViewFolderSelectorComponent.ɵcmp = i0.ɵɵdefineComponent({ type: CaseFileViewFolderSelectorComponent, selectors: [["xui-case-file-view-folder-selector"]], decls: 14, vars: 2, consts: [[1, "govuk-heading-l"], [1, "folders", "govuk-radios", "govuk-radios--conditional"], [4, "ngFor", "ngForOf"], [1, "govuk-button-group"], ["type", "button", 1, "button", "button-primary", 3, "click"], [1, "cancel", 3, "click"], [1, "close", 3, "click"], ["folder", ""], [4, "ngTemplateOutlet", "ngTemplateOutletContext"], [1, "folder", "govuk-radios__item"], ["type", "radio", 1, "govuk-radios__input", 3, "name", "id", "click"], [1, "govuk-label", "govuk-radios__label", 3, "for"], ["src", "/assets/images/folder.png", "alt", "Folder icon", 1, "iconImg"]], template: function CaseFileViewFolderSelectorComponent_Template(rf, ctx) { if (rf & 1) {
|
|
119
|
+
i0.ɵɵelementStart(0, "h2", 0);
|
|
120
|
+
i0.ɵɵtext(1, "Move File");
|
|
121
|
+
i0.ɵɵelementEnd();
|
|
122
|
+
i0.ɵɵelementStart(2, "p");
|
|
123
|
+
i0.ɵɵtext(3);
|
|
124
|
+
i0.ɵɵelementEnd();
|
|
125
|
+
i0.ɵɵelementStart(4, "div", 1);
|
|
126
|
+
i0.ɵɵtemplate(5, CaseFileViewFolderSelectorComponent_ng_container_5_Template, 2, 4, "ng-container", 2);
|
|
127
|
+
i0.ɵɵelementEnd();
|
|
128
|
+
i0.ɵɵelementStart(6, "div", 3);
|
|
129
|
+
i0.ɵɵelementStart(7, "button", 4);
|
|
130
|
+
i0.ɵɵlistener("click", function CaseFileViewFolderSelectorComponent_Template_button_click_7_listener() { return ctx.save(); });
|
|
131
|
+
i0.ɵɵtext(8, "Save");
|
|
132
|
+
i0.ɵɵelementEnd();
|
|
133
|
+
i0.ɵɵelementStart(9, "a", 5);
|
|
134
|
+
i0.ɵɵlistener("click", function CaseFileViewFolderSelectorComponent_Template_a_click_9_listener() { return ctx.cancel(); });
|
|
135
|
+
i0.ɵɵtext(10, "Cancel");
|
|
136
|
+
i0.ɵɵelementEnd();
|
|
137
|
+
i0.ɵɵelementEnd();
|
|
138
|
+
i0.ɵɵelementStart(11, "div", 6);
|
|
139
|
+
i0.ɵɵlistener("click", function CaseFileViewFolderSelectorComponent_Template_div_click_11_listener() { return ctx.cancel(); });
|
|
140
|
+
i0.ɵɵelementEnd();
|
|
141
|
+
i0.ɵɵtemplate(12, CaseFileViewFolderSelectorComponent_ng_template_12_Template, 6, 5, "ng-template", null, 7, i0.ɵɵtemplateRefExtractor);
|
|
142
|
+
} if (rf & 2) {
|
|
143
|
+
i0.ɵɵadvance(3);
|
|
144
|
+
i0.ɵɵtextInterpolate1("Where do you want to move \"", ctx.data.document.document_filename, "\" file?");
|
|
145
|
+
i0.ɵɵadvance(2);
|
|
146
|
+
i0.ɵɵproperty("ngForOf", ctx.currentCategories);
|
|
147
|
+
} }, directives: [i2.NgForOf, i2.NgTemplateOutlet], styles: ["[_nghost-%COMP%]{position:relative;display:block}.folders[_ngcontent-%COMP%]{margin-bottom:20px}.folder[_ngcontent-%COMP%]{display:none;border-bottom:1px solid #ccc;border-top:1px solid #ccc;margin:0 0 -1px}.folders[_ngcontent-%COMP%] > .folder[_ngcontent-%COMP%], input[_ngcontent-%COMP%]:checked ~ .folder[_ngcontent-%COMP%]{display:block}.iconImg[_ngcontent-%COMP%]{position:relative;display:inline-block;height:28px}.folder[_ngcontent-%COMP%] > .folder[_ngcontent-%COMP%]{margin-left:20px}.folder[_ngcontent-%COMP%] label[_ngcontent-%COMP%]:before{top:3px}.folder[_ngcontent-%COMP%] label[_ngcontent-%COMP%]:after{top:13px}p[_ngcontent-%COMP%]{font-weight:700}button[_ngcontent-%COMP%]{margin-right:20px}.close[_ngcontent-%COMP%]{position:absolute;top:0;right:0;width:30px;height:30px;background:url(/assets/img/x.PNG) no-repeat 50%}.cancel[_ngcontent-%COMP%], .close[_ngcontent-%COMP%]{cursor:pointer}"] });
|
|
148
|
+
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CaseFileViewFolderSelectorComponent, [{
|
|
149
|
+
type: Component,
|
|
150
|
+
args: [{
|
|
151
|
+
selector: 'xui-case-file-view-folder-selector',
|
|
152
|
+
templateUrl: './case-file-view-folder-selector.component.html',
|
|
153
|
+
styleUrls: ['./case-file-view-folder-selector.component.scss']
|
|
154
|
+
}]
|
|
155
|
+
}], function () { return [{ type: i1.MatDialogRef }, { type: undefined, decorators: [{
|
|
156
|
+
type: Inject,
|
|
157
|
+
args: [MAT_DIALOG_DATA]
|
|
158
|
+
}] }]; }, null); })();
|
|
159
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FzZS1maWxlLXZpZXctZm9sZGVyLXNlbGVjdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NjZC1jYXNlLXVpLXRvb2xraXQvc3JjL2xpYi9zaGFyZWQvY29tcG9uZW50cy9wYWxldHRlL2Nhc2UtZmlsZS12aWV3L2NvbXBvbmVudHMvY2FzZS1maWxlLXZpZXctZm9sZGVyLXNlbGVjdG9yL2Nhc2UtZmlsZS12aWV3LWZvbGRlci1zZWxlY3Rvci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jY2QtY2FzZS11aS10b29sa2l0L3NyYy9saWIvc2hhcmVkL2NvbXBvbmVudHMvcGFsZXR0ZS9jYXNlLWZpbGUtdmlldy9jb21wb25lbnRzL2Nhc2UtZmlsZS12aWV3LWZvbGRlci1zZWxlY3Rvci9jYXNlLWZpbGUtdmlldy1mb2xkZXItc2VsZWN0b3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxZQUFZLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7Ozs7O0lDR2pFLHdCQUFrRjs7OztJQUR0Riw2QkFBb0Q7SUFDaEQscUhBQWtGO0lBQ3RGLDBCQUFlOzs7OztJQURJLGVBQXlCO0lBQXpCLHNDQUF5QiwrREFBQTs7O0lBaUJwQyx3QkFBMkY7Ozs7SUFEL0YsNkJBQXdEO0lBQ3BELG9JQUEyRjtJQUMvRiwwQkFBZTs7Ozs7O0lBREksZUFBeUI7SUFBekIsc0NBQXlCLGdGQUFBOzs7O0lBUGhELDhCQUF1QztJQUNuQyxpQ0FBK0g7SUFBakMsZ09BQThCO0lBQTVILGlCQUErSDtJQUMvSCxpQ0FBdUU7SUFDbkUsMEJBQXlFO0lBQ3pFLFlBQ0o7SUFBQSxpQkFBUTtJQUNSLHFIQUVlO0lBQ25CLGlCQUFNOzs7O0lBUjhDLGVBQXNCO0lBQXRCLHlEQUFzQjtJQUFDLHVDQUFzQjtJQUM5QyxlQUF1QjtJQUF2Qix3Q0FBdUI7SUFFbEUsZUFDSjtJQURJLHFEQUNKO0lBQ2lDLGVBQXFCO0lBQXJCLCtDQUFxQjs7QURWOUQsTUFBTSxPQUFPLG1DQUFtQztJQUs1QyxZQUNXLFNBQTRELEVBQ25DLElBQXdFO1FBRGpHLGNBQVMsR0FBVCxTQUFTLENBQW1EO1FBQ25DLFNBQUksR0FBSixJQUFJLENBQW9FO1FBTHJHLHNCQUFpQixHQUEyQixFQUFFLENBQUM7UUFDL0MsYUFBUSxHQUFXLEVBQUUsQ0FBQztRQU16QixJQUFJLENBQUMsaUJBQWlCLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVNLGVBQWU7UUFDbEIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQzdCLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBRSxRQUFRLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBc0IsQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLENBQUM7SUFDdkYsQ0FBQztJQUVNLFlBQVksQ0FBQyxHQUFHO1FBQ25CLElBQUksR0FBRyxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUU7WUFDcEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQzNCLDhEQUE4RDtZQUM5RCxJQUFJLEtBQUssR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUM1RCxJQUFJLEtBQUssR0FBRyxRQUFRLENBQUMsaUJBQWlCLENBQUMsU0FBUyxLQUFLLEVBQUUsQ0FBQyxDQUFDO1lBQ3pELE9BQU8sS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7Z0JBQ3JCLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFzQixFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQyxDQUFDO2dCQUNoRSxLQUFLLElBQUksQ0FBQyxDQUFDO2dCQUNYLEtBQUssR0FBRyxRQUFRLENBQUMsaUJBQWlCLENBQUMsU0FBUyxLQUFLLEVBQUUsQ0FBQyxDQUFDO2FBQ3hEO1NBQ0o7SUFDTCxDQUFDO0lBRU0sTUFBTSxDQUFDLFVBQWtCO1FBQzVCLElBQUksQ0FBQyxRQUFRLEdBQUcsVUFBVSxDQUFDO0lBQy9CLENBQUM7SUFFTSxNQUFNO1FBQ1QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRU0sSUFBSTtRQUNQLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDMUUsQ0FBQztJQUVPLFFBQVE7UUFDWixLQUFLLE1BQU0sQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ2xDLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUN2RCxJQUFJLENBQUMsRUFBRTtnQkFDSCxPQUFPLENBQUMsQ0FBQzthQUNaO1NBQ0o7SUFDTCxDQUFDO0lBRU8sZ0JBQWdCLENBQUMsR0FBeUIsRUFBRSxRQUEwQjtRQUMxRSxJQUFJLEdBQUcsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLG1CQUFtQixLQUFLLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFO1lBQy9GLE9BQU8sQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUM7U0FDNUI7UUFDRCxLQUFLLE1BQU0sQ0FBQyxJQUFJLEdBQUcsQ0FBQyxjQUFjLEVBQUU7WUFDaEMsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsRUFBRSxRQUFRLENBQUMsQ0FBQztZQUM3QyxJQUFJLENBQUMsRUFBRTtnQkFDSCxPQUFPLENBQUMsR0FBRyxDQUFDLFdBQVcsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO2FBQ2xDO1NBQ0o7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDOztzSEEvRFEsbUNBQW1DLDhEQU9oQyxlQUFlO3dFQVBsQixtQ0FBbUM7UUNWaEQsNkJBQTRCO1FBQUEseUJBQVM7UUFBQSxpQkFBSztRQUMxQyx5QkFBRztRQUFBLFlBQXVFO1FBQUEsaUJBQUk7UUFDOUUsOEJBQTREO1FBQ3hELHNHQUVlO1FBQ25CLGlCQUFNO1FBQ04sOEJBQWdDO1FBQzVCLGlDQUFxRTtRQUFqQixnSEFBUyxVQUFNLElBQUM7UUFBQyxvQkFBSTtRQUFBLGlCQUFTO1FBQ2xGLDRCQUFxQztRQUFsQywyR0FBUyxZQUFRLElBQUM7UUFBZ0IsdUJBQU07UUFBQSxpQkFBSTtRQUNuRCxpQkFBTTtRQUNOLCtCQUFzQztRQUFuQiw4R0FBUyxZQUFRLElBQUM7UUFBQyxpQkFBTTtRQUU1Qyx1SUFXYzs7UUF2QlgsZUFBdUU7UUFBdkUsc0dBQXVFO1FBRXhDLGVBQW9CO1FBQXBCLCtDQUFvQjs7dUZET3pDLG1DQUFtQztjQUwvQyxTQUFTO2VBQUM7Z0JBQ1AsUUFBUSxFQUFFLG9DQUFvQztnQkFDOUMsV0FBVyxFQUFFLGlEQUFpRDtnQkFDOUQsU0FBUyxFQUFFLENBQUMsaURBQWlELENBQUM7YUFDakU7O3NCQVFRLE1BQU07dUJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgSW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXREaWFsb2dSZWYsIE1BVF9ESUFMT0dfREFUQSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBEb2N1bWVudFRyZWVOb2RlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vZG9tYWluL2Nhc2UtZmlsZS12aWV3JztcbmltcG9ydCB7IENhc2VGaWxlVmlld0NhdGVnb3J5IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vZG9tYWluL2Nhc2UtZmlsZS12aWV3L2Nhc2UtZmlsZS12aWV3LWNhdGVnb3J5Lm1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd4dWktY2FzZS1maWxlLXZpZXctZm9sZGVyLXNlbGVjdG9yJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vY2FzZS1maWxlLXZpZXctZm9sZGVyLXNlbGVjdG9yLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9jYXNlLWZpbGUtdmlldy1mb2xkZXItc2VsZWN0b3IuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBDYXNlRmlsZVZpZXdGb2xkZXJTZWxlY3RvckNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuXG4gICAgcHVibGljIGN1cnJlbnRDYXRlZ29yaWVzOiBDYXNlRmlsZVZpZXdDYXRlZ29yeVtdID0gW107XG4gICAgcHVibGljIHNlbGVjdGVkOiBzdHJpbmcgPSAnJztcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwdWJsaWMgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8Q2FzZUZpbGVWaWV3Rm9sZGVyU2VsZWN0b3JDb21wb25lbnQ+LFxuICAgICAgICBASW5qZWN0KE1BVF9ESUFMT0dfREFUQSkgcHVibGljIGRhdGE6IHsgY2F0ZWdvcmllczogQ2FzZUZpbGVWaWV3Q2F0ZWdvcnlbXSwgZG9jdW1lbnQ6IERvY3VtZW50VHJlZU5vZGUgfVxuICAgICkge1xuICAgICAgICB0aGlzLmN1cnJlbnRDYXRlZ29yaWVzID0gWy4uLnRoaXMuZGF0YS5jYXRlZ29yaWVzXTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICBjb25zdCBwYXRoID0gdGhpcy5maW5kUGF0aCgpO1xuICAgICAgICBwYXRoLmZvckVhY2gocCA9PiAoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQocCkgYXMgSFRNTElucHV0RWxlbWVudCkuY2hlY2tlZCA9IHRydWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBoYW5kbGVDaGFuZ2UoZXZ0KSB7XG4gICAgICAgIGlmIChldnQudGFyZ2V0LmNoZWNrZWQpIHtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0KGV2dC50YXJnZXQuaWQpO1xuICAgICAgICAgICAgLy8gZ2V0IGxldmVsIG9mIHRoaXMgY2hlY2tib3ggc28gd2UgY2FuIGNsZWFyIGFsbCBsb3dlciBsZXZlbHNcbiAgICAgICAgICAgIGxldCBsZXZlbCA9IHBhcnNlSW50KGV2dC50YXJnZXQubmFtZS5zcGxpdCgnLScpWzFdLCAxMCkgKyAxO1xuICAgICAgICAgICAgbGV0IG5vZGVzID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeU5hbWUoYGxldmVsLSR7bGV2ZWx9YCk7XG4gICAgICAgICAgICB3aGlsZSAobm9kZXMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgIG5vZGVzLmZvckVhY2goKG5vZGU6IEhUTUxJbnB1dEVsZW1lbnQpID0+IG5vZGUuY2hlY2tlZCA9IGZhbHNlKTtcbiAgICAgICAgICAgICAgICBsZXZlbCArPSAxO1xuICAgICAgICAgICAgICAgIG5vZGVzID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeU5hbWUoYGxldmVsLSR7bGV2ZWx9YCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgc2VsZWN0KGNhdGVnb3J5SWQ6IHN0cmluZykge1xuICAgICAgICB0aGlzLnNlbGVjdGVkID0gY2F0ZWdvcnlJZDtcbiAgICB9XG5cbiAgICBwdWJsaWMgY2FuY2VsKCkge1xuICAgICAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzYXZlKCkge1xuICAgICAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZSh0aGlzLnNlbGVjdGVkLmxlbmd0aCA+IDAgPyB0aGlzLnNlbGVjdGVkIDogbnVsbCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBmaW5kUGF0aCgpOiBzdHJpbmdbXSB7XG4gICAgICAgIGZvciAoY29uc3QgYyBvZiB0aGlzLmRhdGEuY2F0ZWdvcmllcykge1xuICAgICAgICAgICAgY29uc3QgciA9IHRoaXMuY29udGFpbnNEb2N1bWVudChjLCB0aGlzLmRhdGEuZG9jdW1lbnQpO1xuICAgICAgICAgICAgaWYgKHIpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgY29udGFpbnNEb2N1bWVudChjYXQ6IENhc2VGaWxlVmlld0NhdGVnb3J5LCBkb2N1bWVudDogRG9jdW1lbnRUcmVlTm9kZSk6IHN0cmluZ1tdIHwgbnVsbCB7XG4gICAgICAgIGlmIChjYXQuZG9jdW1lbnRzLmZpbmRJbmRleChkb2MgPT4gZG9jLmRvY3VtZW50X2JpbmFyeV91cmwgPT09IGRvY3VtZW50LmRvY3VtZW50X2JpbmFyeV91cmwpID4gLTEpIHtcbiAgICAgICAgICAgIHJldHVybiBbY2F0LmNhdGVnb3J5X2lkXTtcbiAgICAgICAgfVxuICAgICAgICBmb3IgKGNvbnN0IGMgb2YgY2F0LnN1Yl9jYXRlZ29yaWVzKSB7XG4gICAgICAgICAgICBjb25zdCByID0gdGhpcy5jb250YWluc0RvY3VtZW50KGMsIGRvY3VtZW50KTtcbiAgICAgICAgICAgIGlmIChyKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIFtjYXQuY2F0ZWdvcnlfaWQsIC4uLnJdO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbn0iLCI8aDIgY2xhc3M9XCJnb3Z1ay1oZWFkaW5nLWxcIj5Nb3ZlIEZpbGU8L2gyPlxuPHA+V2hlcmUgZG8geW91IHdhbnQgdG8gbW92ZSBcInt7IGRhdGEuZG9jdW1lbnQuZG9jdW1lbnRfZmlsZW5hbWUgfX1cIiBmaWxlPzwvcD5cbjxkaXYgY2xhc3M9XCJmb2xkZXJzIGdvdnVrLXJhZGlvcyBnb3Z1ay1yYWRpb3MtLWNvbmRpdGlvbmFsXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgY2F0IG9mIGN1cnJlbnRDYXRlZ29yaWVzXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJmb2xkZXI7Y29udGV4dDp7Y2F0OmNhdCxsZXZlbDoxfVwiPjwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuPC9kaXY+XG48ZGl2IGNsYXNzPVwiZ292dWstYnV0dG9uLWdyb3VwXCI+XG4gICAgPGJ1dHRvbiBjbGFzcz1cImJ1dHRvbiBidXR0b24tcHJpbWFyeVwiIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwic2F2ZSgpXCI+U2F2ZTwvYnV0dG9uPlxuICAgIDxhIChjbGljayk9XCJjYW5jZWwoKVwiIGNsYXNzPVwiY2FuY2VsXCI+Q2FuY2VsPC9hPlxuPC9kaXY+XG48ZGl2IGNsYXNzPVwiY2xvc2VcIiAoY2xpY2spPVwiY2FuY2VsKClcIj48L2Rpdj5cblxuPG5nLXRlbXBsYXRlICNmb2xkZXIgbGV0LWNhdD1cImNhdFwiIGxldC1sZXZlbD1cImxldmVsXCI+XG4gICAgPGRpdiBjbGFzcz1cImZvbGRlciBnb3Z1ay1yYWRpb3NfX2l0ZW1cIj5cbiAgICAgICAgPGlucHV0IGNsYXNzPVwiZ292dWstcmFkaW9zX19pbnB1dFwiIHR5cGU9XCJyYWRpb1wiIG5hbWU9XCJsZXZlbC17e2xldmVsfX1cIiBbaWRdPVwiY2F0LmNhdGVnb3J5X2lkXCIgKGNsaWNrKT1cImhhbmRsZUNoYW5nZSgkZXZlbnQpXCIgLz5cbiAgICAgICAgPGxhYmVsIGNsYXNzPVwiZ292dWstbGFiZWwgZ292dWstcmFkaW9zX19sYWJlbFwiIFtmb3JdPVwiY2F0LmNhdGVnb3J5X2lkXCI+XG4gICAgICAgICAgICA8aW1nIGNsYXNzPVwiaWNvbkltZ1wiIHNyYz1cIi9hc3NldHMvaW1hZ2VzL2ZvbGRlci5wbmdcIiBhbHQ9XCJGb2xkZXIgaWNvblwiIC8+XG4gICAgICAgICAgICB7eyBjYXQuY2F0ZWdvcnlfbmFtZSB9fVxuICAgICAgICA8L2xhYmVsPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBzdWJjYXQgb2YgY2F0LnN1Yl9jYXRlZ29yaWVzXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZm9sZGVyO2NvbnRleHQ6e2NhdDpzdWJjYXQsbGV2ZWw6bGV2ZWwrMX1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG48L25nLXRlbXBsYXRlPiJdfQ==
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export * from './case-file-view-folder-selector/case-file-view-folder-selector.component';
|
|
2
|
+
export * from './case-file-view-folder/case-file-view-folder-document-actions/case-file-view-folder-document-actions.component';
|
|
3
|
+
export * from './case-file-view-folder/case-file-view-folder-sort/case-file-view-folder-sort.component';
|
|
4
|
+
export * from './case-file-view-folder/case-file-view-folder.component';
|
|
5
|
+
export * from './shared';
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jY2QtY2FzZS11aS10b29sa2l0L3NyYy9saWIvc2hhcmVkL2NvbXBvbmVudHMvcGFsZXR0ZS9jYXNlLWZpbGUtdmlldy9jb21wb25lbnRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsMkVBQTJFLENBQUM7QUFDMUYsY0FBYyxpSEFBaUgsQ0FBQztBQUNoSSxjQUFjLHlGQUF5RixDQUFDO0FBQ3hHLGNBQWMseURBQXlELENBQUM7QUFDeEUsY0FBYyxVQUFVLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2Nhc2UtZmlsZS12aWV3LWZvbGRlci1zZWxlY3Rvci9jYXNlLWZpbGUtdmlldy1mb2xkZXItc2VsZWN0b3IuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vY2FzZS1maWxlLXZpZXctZm9sZGVyL2Nhc2UtZmlsZS12aWV3LWZvbGRlci1kb2N1bWVudC1hY3Rpb25zL2Nhc2UtZmlsZS12aWV3LWZvbGRlci1kb2N1bWVudC1hY3Rpb25zLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2Nhc2UtZmlsZS12aWV3LWZvbGRlci9jYXNlLWZpbGUtdmlldy1mb2xkZXItc29ydC9jYXNlLWZpbGUtdmlldy1mb2xkZXItc29ydC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9jYXNlLWZpbGUtdmlldy1mb2xkZXIvY2FzZS1maWxlLXZpZXctZm9sZGVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZCc7XG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FzZS1maWxlLXZpZXctb3ZlcmxheS1tZW51LWl0ZW0ubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jY2QtY2FzZS11aS10b29sa2l0L3NyYy9saWIvc2hhcmVkL2NvbXBvbmVudHMvcGFsZXR0ZS9jYXNlLWZpbGUtdmlldy9jb21wb25lbnRzL3NoYXJlZC9jYXNlLWZpbGUtdmlldy1vdmVybGF5LW1lbnUvY2FzZS1maWxlLXZpZXctb3ZlcmxheS1tZW51LWl0ZW0ubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgQ2FzZUZpbGVWaWV3T3ZlcmxheU1lbnVJdGVtIHtcbiAgYWN0aW9uVGV4dDogc3RyaW5nO1xuICBpY29uU3JjPzogc3RyaW5nO1xuICBhY3Rpb25GbigpOiB2b2lkO1xufVxuIl19
|