@hmcts/ccd-case-ui-toolkit 5.0.7-angular11-upgrade → 5.0.8-angular11-upgrade
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 +21811 -14307
- package/bundles/hmcts-ccd-case-ui-toolkit.umd.js.map +1 -1
- package/bundles/hmcts-ccd-case-ui-toolkit.umd.min.js +2 -2
- package/bundles/hmcts-ccd-case-ui-toolkit.umd.min.js.map +1 -1
- package/esm2015/lib/shared/components/case-editor/case-create/case-create.component.js +94 -0
- package/esm2015/lib/shared/components/case-editor/case-create/index.js +2 -0
- package/esm2015/lib/shared/components/case-editor/case-edit/case-edit.component.js +113 -0
- package/esm2015/lib/shared/components/case-editor/case-edit/index.js +2 -0
- package/esm2015/lib/shared/components/case-editor/case-edit-confirm/case-edit-confirm.component.js +131 -0
- package/esm2015/lib/shared/components/case-editor/case-edit-confirm/index.js +2 -0
- package/esm2015/lib/shared/components/case-editor/case-edit-form/case-edit-form.component.js +146 -0
- package/esm2015/lib/shared/components/case-editor/case-edit-form/index.js +2 -0
- package/esm2015/lib/shared/components/case-editor/case-edit-page/case-edit-page-text.enum.js +11 -0
- package/esm2015/lib/shared/components/case-editor/case-edit-page/case-edit-page.component.js +654 -0
- package/esm2015/lib/shared/components/case-editor/case-edit-page/index.js +2 -0
- package/esm2015/lib/shared/components/case-editor/case-edit-submit/case-edit-submit.component.js +759 -0
- package/esm2015/lib/shared/components/case-editor/case-edit-submit/index.js +2 -0
- package/esm2015/lib/shared/components/case-editor/case-editor.module.js +185 -0
- package/esm2015/lib/shared/components/case-editor/case-event-completion/case-event-completion.component.js +89 -0
- package/esm2015/lib/shared/components/case-editor/case-event-completion/components/case-event-completion-task-cancelled/case-event-completion-task-cancelled.component.js +72 -0
- package/esm2015/lib/shared/components/case-editor/case-event-completion/components/case-event-completion-task-reassigned/case-event-completion-task-reassigned.component.js +157 -0
- package/esm2015/lib/shared/components/case-editor/case-event-completion/index.js +4 -0
- package/esm2015/lib/shared/components/case-editor/case-progress/case-progress.component.js +85 -0
- package/esm2015/lib/shared/components/case-editor/case-progress/index.js +2 -0
- package/esm2015/lib/shared/components/case-editor/domain/event-completion-params.model.js +2 -0
- package/esm2015/lib/shared/components/case-editor/domain/event-completion-portal-types.model.js +6 -0
- package/esm2015/lib/shared/components/case-editor/editor.routing.js +31 -0
- package/esm2015/lib/shared/components/case-editor/index.js +13 -0
- package/esm2015/lib/shared/components/case-editor/services/case-edit-wizard.guard.js +92 -0
- package/esm2015/lib/shared/components/case-editor/services/convert-href-to-router.service.js +41 -0
- package/esm2015/lib/shared/components/case-editor/services/event-completion-state-machine.service.js +162 -0
- package/esm2015/lib/shared/components/case-editor/services/event-trigger.service.js +20 -0
- package/esm2015/lib/shared/components/case-editor/services/index.js +12 -0
- package/esm2015/lib/shared/components/case-editor/services/page-validation.service.js +50 -0
- package/esm2015/lib/shared/components/case-editor/services/wizard-factory.service.js +7 -0
- package/esm2015/lib/shared/components/case-history/case-history.component.js +264 -0
- package/esm2015/lib/shared/components/case-history/case-history.module.js +52 -0
- package/esm2015/lib/shared/components/case-history/domain/case-history.model.js +28 -0
- package/esm2015/lib/shared/components/case-history/index.js +3 -0
- package/esm2015/lib/shared/components/case-history/services/case-history.service.js +40 -0
- package/esm2015/lib/shared/components/case-timeline/case-timeline.component.js +118 -0
- package/esm2015/lib/shared/components/case-timeline/case-timeline.module.js +46 -0
- package/esm2015/lib/shared/components/case-timeline/index.js +3 -0
- package/esm2015/lib/shared/components/case-viewer/case-basic-access-view/case-basic-access-view.component.js +195 -0
- package/esm2015/lib/shared/components/case-viewer/case-basic-access-view/index.js +2 -0
- package/esm2015/lib/shared/components/case-viewer/case-challenged-access-request/case-challenged-access-request.component.js +307 -0
- package/esm2015/lib/shared/components/case-viewer/case-challenged-access-request/index.js +2 -0
- package/esm2015/lib/shared/components/case-viewer/case-challenged-access-request/models/case-challenged-access-request.enum.js +20 -0
- package/esm2015/lib/shared/components/case-viewer/case-challenged-access-request/models/index.js +2 -0
- package/esm2015/lib/shared/components/case-viewer/case-challenged-access-success/case-challenged-access-success.component.js +64 -0
- package/esm2015/lib/shared/components/case-viewer/case-challenged-access-success/index.js +2 -0
- package/esm2015/lib/shared/components/case-viewer/case-event-trigger/case-event-trigger.component.js +120 -0
- package/esm2015/lib/shared/components/case-viewer/case-event-trigger/index.js +2 -0
- package/esm2015/lib/shared/components/case-viewer/case-full-access-view/case-full-access-view.component.js +545 -0
- package/esm2015/lib/shared/components/case-viewer/case-full-access-view/index.js +2 -0
- package/esm2015/lib/shared/components/case-viewer/case-review-specific-access-reject/case-review-specific-access-reject.component.js +63 -0
- package/esm2015/lib/shared/components/case-viewer/case-review-specific-access-reject/index.js +2 -0
- package/esm2015/lib/shared/components/case-viewer/case-review-specific-access-request/case-review-specific-access-request.component.js +258 -0
- package/esm2015/lib/shared/components/case-viewer/case-review-specific-access-request/index.js +2 -0
- package/esm2015/lib/shared/components/case-viewer/case-review-specific-access-request/models/case-review-specific-access-request.enum.js +18 -0
- package/esm2015/lib/shared/components/case-viewer/case-review-specific-access-request/models/index.js +2 -0
- package/esm2015/lib/shared/components/case-viewer/case-specific-access-request/case-specific-access-request.component.js +195 -0
- package/esm2015/lib/shared/components/case-viewer/case-specific-access-request/index.js +2 -0
- package/esm2015/lib/shared/components/case-viewer/case-specific-access-request/models/case-specific-access-request.enum.js +11 -0
- package/esm2015/lib/shared/components/case-viewer/case-specific-access-request/models/index.js +2 -0
- package/esm2015/lib/shared/components/case-viewer/case-specific-access-success/case-specific-access-success.component.js +60 -0
- package/esm2015/lib/shared/components/case-viewer/case-specific-access-success/index.js +2 -0
- package/esm2015/lib/shared/components/case-viewer/case-view/case-view.component.js +100 -0
- package/esm2015/lib/shared/components/case-viewer/case-view/index.js +2 -0
- package/esm2015/lib/shared/components/case-viewer/case-viewer.component.js +129 -0
- package/esm2015/lib/shared/components/case-viewer/case-viewer.module.js +155 -0
- package/esm2015/lib/shared/components/case-viewer/index.js +14 -0
- package/esm2015/lib/shared/components/case-viewer/printer/case-printer.component.js +111 -0
- package/esm2015/lib/shared/components/case-viewer/printer/index.js +4 -0
- package/esm2015/lib/shared/components/case-viewer/printer/pipes/index.js +2 -0
- package/esm2015/lib/shared/components/case-viewer/printer/pipes/print-url.pipe.js +60 -0
- package/esm2015/lib/shared/components/case-viewer/services/case.resolver.js +110 -0
- package/esm2015/lib/shared/components/case-viewer/services/event-trigger.resolver.js +64 -0
- package/esm2015/lib/shared/components/case-viewer/services/index.js +3 -0
- package/esm2015/lib/shared/components/case-viewer/viewer.routing.js +127 -0
- package/esm2015/lib/shared/components/event-trigger/event-trigger.component.js +108 -0
- package/esm2015/lib/shared/components/event-trigger/event-trigger.module.js +35 -0
- package/esm2015/lib/shared/components/event-trigger/index.js +3 -0
- package/esm2015/lib/shared/components/index.js +5 -5
- package/esm2015/lib/shared/components/palette/complex/index.js +1 -7
- package/esm2015/lib/shared/components/palette/complex/write-complex-field.component.js +2 -2
- package/esm2015/lib/shared/components/palette/palette.module.js +16 -27
- package/esm2015/lib/shared/components/search-result/index.js +3 -0
- package/esm2015/lib/shared/components/search-result/search-result.component.js +845 -0
- package/esm2015/lib/shared/components/search-result/search-result.module.js +67 -0
- package/esm2015/lib/shared/domain/case-view/role-request.model.js +1 -1
- package/esm2015/lib/shared/pipes/complex/ccd-collection-table-value-case-fields.pipe.js +29 -0
- package/esm2015/lib/shared/pipes/complex/ccd-cyapage-label-filter.pipe.js +29 -0
- package/esm2015/lib/shared/pipes/complex/ccd-read-fields-filter.pipe.js +154 -0
- package/esm2015/lib/shared/pipes/complex/ccd-tab-fields.pipe.js +31 -0
- package/esm2015/lib/shared/pipes/complex/cdd-page-fields.pipe.js +39 -0
- package/esm2015/lib/shared/pipes/complex/fields-filter.pipe.js +103 -0
- package/esm2015/lib/shared/pipes/complex/index.js +7 -0
- package/esm2015/lib/shared/pipes/index.js +3 -2
- package/esm2015/lib/shared/pipes/pipes.module.js +26 -9
- package/fesm2015/hmcts-ccd-case-ui-toolkit.js +19417 -12703
- package/fesm2015/hmcts-ccd-case-ui-toolkit.js.map +1 -1
- package/lib/shared/components/case-editor/case-create/case-create.component.d.ts +33 -0
- package/lib/shared/components/case-editor/case-create/case-create.component.d.ts.map +1 -0
- package/lib/shared/components/case-editor/case-create/index.d.ts +2 -0
- package/lib/shared/components/case-editor/case-create/index.d.ts.map +1 -0
- package/lib/shared/components/case-editor/case-edit/case-edit.component.d.ts +50 -0
- package/lib/shared/components/case-editor/case-edit/case-edit.component.d.ts.map +1 -0
- package/lib/shared/components/case-editor/case-edit/index.d.ts +2 -0
- package/lib/shared/components/case-editor/case-edit/index.d.ts.map +1 -0
- package/lib/shared/components/case-editor/case-edit-confirm/case-edit-confirm.component.d.ts +26 -0
- package/lib/shared/components/case-editor/case-edit-confirm/case-edit-confirm.component.d.ts.map +1 -0
- package/lib/shared/components/case-editor/case-edit-confirm/index.d.ts +2 -0
- package/lib/shared/components/case-editor/case-edit-confirm/index.d.ts.map +1 -0
- package/lib/shared/components/case-editor/case-edit-form/case-edit-form.component.d.ts +26 -0
- package/lib/shared/components/case-editor/case-edit-form/case-edit-form.component.d.ts.map +1 -0
- package/lib/shared/components/case-editor/case-edit-form/index.d.ts +2 -0
- package/lib/shared/components/case-editor/case-edit-form/index.d.ts.map +1 -0
- package/lib/shared/components/case-editor/case-edit-page/case-edit-page-text.enum.d.ts +10 -0
- package/lib/shared/components/case-editor/case-edit-page/case-edit-page-text.enum.d.ts.map +1 -0
- package/lib/shared/components/case-editor/case-edit-page/case-edit-page.component.d.ts +100 -0
- package/lib/shared/components/case-editor/case-edit-page/case-edit-page.component.d.ts.map +1 -0
- package/lib/shared/components/case-editor/case-edit-page/index.d.ts +2 -0
- package/lib/shared/components/case-editor/case-edit-page/index.d.ts.map +1 -0
- package/lib/shared/components/case-editor/case-edit-submit/case-edit-submit.component.d.ts +123 -0
- package/lib/shared/components/case-editor/case-edit-submit/case-edit-submit.component.d.ts.map +1 -0
- package/lib/shared/components/case-editor/case-edit-submit/index.d.ts +2 -0
- package/lib/shared/components/case-editor/case-edit-submit/index.d.ts.map +1 -0
- package/lib/shared/components/case-editor/case-editor.module.d.ts +27 -0
- package/lib/shared/components/case-editor/case-editor.module.d.ts.map +1 -0
- package/lib/shared/components/case-editor/case-event-completion/case-event-completion.component.d.ts +31 -0
- package/lib/shared/components/case-editor/case-event-completion/case-event-completion.component.d.ts.map +1 -0
- package/lib/shared/components/case-editor/case-event-completion/components/case-event-completion-task-cancelled/case-event-completion-task-cancelled.component.d.ts +11 -0
- package/lib/shared/components/case-editor/case-event-completion/components/case-event-completion-task-cancelled/case-event-completion-task-cancelled.component.d.ts.map +1 -0
- package/lib/shared/components/case-editor/case-event-completion/components/case-event-completion-task-reassigned/case-event-completion-task-reassigned.component.d.ts +32 -0
- package/lib/shared/components/case-editor/case-event-completion/components/case-event-completion-task-reassigned/case-event-completion-task-reassigned.component.d.ts.map +1 -0
- package/lib/shared/components/case-editor/case-event-completion/index.d.ts +4 -0
- package/lib/shared/components/case-editor/case-event-completion/index.d.ts.map +1 -0
- package/lib/shared/components/case-editor/case-progress/case-progress.component.d.ts +30 -0
- package/lib/shared/components/case-editor/case-progress/case-progress.component.d.ts.map +1 -0
- package/lib/shared/components/case-editor/case-progress/index.d.ts +2 -0
- package/lib/shared/components/case-editor/case-progress/index.d.ts.map +1 -0
- package/lib/shared/components/case-editor/domain/event-completion-params.model.d.ts +7 -0
- package/lib/shared/components/case-editor/domain/event-completion-params.model.d.ts.map +1 -0
- package/lib/shared/components/case-editor/domain/event-completion-portal-types.model.d.ts +5 -0
- package/lib/shared/components/case-editor/domain/event-completion-portal-types.model.d.ts.map +1 -0
- package/lib/shared/components/case-editor/editor.routing.d.ts +3 -0
- package/lib/shared/components/case-editor/editor.routing.d.ts.map +1 -0
- package/lib/shared/components/case-editor/index.d.ts +13 -0
- package/lib/shared/components/case-editor/index.d.ts.map +1 -0
- package/lib/shared/components/case-editor/services/case-edit-wizard.guard.d.ts +23 -0
- package/lib/shared/components/case-editor/services/case-edit-wizard.guard.d.ts.map +1 -0
- package/lib/shared/components/case-editor/services/convert-href-to-router.service.d.ts +14 -0
- package/lib/shared/components/case-editor/services/convert-href-to-router.service.d.ts.map +1 -0
- package/lib/shared/components/case-editor/services/event-completion-state-machine.service.d.ts +33 -0
- package/lib/shared/components/case-editor/services/event-completion-state-machine.service.d.ts.map +1 -0
- package/lib/shared/components/case-editor/services/event-trigger.service.d.ts +10 -0
- package/lib/shared/components/case-editor/services/event-trigger.service.d.ts.map +1 -0
- package/lib/shared/components/case-editor/services/index.d.ts +12 -0
- package/lib/shared/components/case-editor/services/index.d.ts.map +1 -0
- package/lib/shared/components/case-editor/services/page-validation.service.d.ts +17 -0
- package/lib/shared/components/case-editor/services/page-validation.service.d.ts.map +1 -0
- package/lib/shared/components/case-editor/services/wizard-factory.service.d.ts +6 -0
- package/lib/shared/components/case-editor/services/wizard-factory.service.d.ts.map +1 -0
- package/lib/shared/components/case-history/case-history.component.d.ts +33 -0
- package/lib/shared/components/case-history/case-history.component.d.ts.map +1 -0
- package/lib/shared/components/case-history/case-history.module.d.ts +14 -0
- package/lib/shared/components/case-history/case-history.module.d.ts.map +1 -0
- package/lib/shared/components/case-history/domain/case-history.model.d.ts +16 -0
- package/lib/shared/components/case-history/domain/case-history.model.d.ts.map +1 -0
- package/lib/shared/components/case-history/index.d.ts +3 -0
- package/lib/shared/components/case-history/index.d.ts.map +1 -0
- package/lib/shared/components/case-history/services/case-history.service.d.ts +17 -0
- package/lib/shared/components/case-history/services/case-history.service.d.ts.map +1 -0
- package/lib/shared/components/case-timeline/case-timeline.component.d.ts +27 -0
- package/lib/shared/components/case-timeline/case-timeline.component.d.ts.map +1 -0
- package/lib/shared/components/case-timeline/case-timeline.module.d.ts +13 -0
- package/lib/shared/components/case-timeline/case-timeline.module.d.ts.map +1 -0
- package/lib/shared/components/case-timeline/index.d.ts +3 -0
- package/lib/shared/components/case-timeline/index.d.ts.map +1 -0
- package/lib/shared/components/case-viewer/case-basic-access-view/case-basic-access-view.component.d.ts +19 -0
- package/lib/shared/components/case-viewer/case-basic-access-view/case-basic-access-view.component.d.ts.map +1 -0
- package/lib/shared/components/case-viewer/case-basic-access-view/index.d.ts +2 -0
- package/lib/shared/components/case-viewer/case-basic-access-view/index.d.ts.map +1 -0
- package/lib/shared/components/case-viewer/case-challenged-access-request/case-challenged-access-request.component.d.ts +40 -0
- package/lib/shared/components/case-viewer/case-challenged-access-request/case-challenged-access-request.component.d.ts.map +1 -0
- package/lib/shared/components/case-viewer/case-challenged-access-request/index.d.ts +2 -0
- package/lib/shared/components/case-viewer/case-challenged-access-request/index.d.ts.map +1 -0
- package/lib/shared/components/case-viewer/case-challenged-access-request/models/case-challenged-access-request.enum.d.ts +17 -0
- package/lib/shared/components/case-viewer/case-challenged-access-request/models/case-challenged-access-request.enum.d.ts.map +1 -0
- package/lib/shared/components/case-viewer/case-challenged-access-request/models/index.d.ts +2 -0
- package/lib/shared/components/case-viewer/case-challenged-access-request/models/index.d.ts.map +1 -0
- package/lib/shared/components/case-viewer/case-challenged-access-success/case-challenged-access-success.component.d.ts +12 -0
- package/lib/shared/components/case-viewer/case-challenged-access-success/case-challenged-access-success.component.d.ts.map +1 -0
- package/lib/shared/components/case-viewer/case-challenged-access-success/index.d.ts +2 -0
- package/lib/shared/components/case-viewer/case-challenged-access-success/index.d.ts.map +1 -0
- package/lib/shared/components/case-viewer/case-event-trigger/case-event-trigger.component.d.ts +41 -0
- package/lib/shared/components/case-viewer/case-event-trigger/case-event-trigger.component.d.ts.map +1 -0
- package/lib/shared/components/case-viewer/case-event-trigger/index.d.ts +2 -0
- package/lib/shared/components/case-viewer/case-event-trigger/index.d.ts.map +1 -0
- package/lib/shared/components/case-viewer/case-full-access-view/case-full-access-view.component.d.ts +90 -0
- package/lib/shared/components/case-viewer/case-full-access-view/case-full-access-view.component.d.ts.map +1 -0
- package/lib/shared/components/case-viewer/case-full-access-view/index.d.ts +2 -0
- package/lib/shared/components/case-viewer/case-full-access-view/index.d.ts.map +1 -0
- package/lib/shared/components/case-viewer/case-review-specific-access-reject/case-review-specific-access-reject.component.d.ts +14 -0
- package/lib/shared/components/case-viewer/case-review-specific-access-reject/case-review-specific-access-reject.component.d.ts.map +1 -0
- package/lib/shared/components/case-viewer/case-review-specific-access-reject/index.d.ts +2 -0
- package/lib/shared/components/case-viewer/case-review-specific-access-reject/index.d.ts.map +1 -0
- package/lib/shared/components/case-viewer/case-review-specific-access-request/case-review-specific-access-request.component.d.ts +49 -0
- package/lib/shared/components/case-viewer/case-review-specific-access-request/case-review-specific-access-request.component.d.ts.map +1 -0
- package/lib/shared/components/case-viewer/case-review-specific-access-request/index.d.ts +2 -0
- package/lib/shared/components/case-viewer/case-review-specific-access-request/index.d.ts.map +1 -0
- package/lib/shared/components/case-viewer/case-review-specific-access-request/models/case-review-specific-access-request.enum.d.ts +15 -0
- package/lib/shared/components/case-viewer/case-review-specific-access-request/models/case-review-specific-access-request.enum.d.ts.map +1 -0
- package/lib/shared/components/case-viewer/case-review-specific-access-request/models/index.d.ts +2 -0
- package/lib/shared/components/case-viewer/case-review-specific-access-request/models/index.d.ts.map +1 -0
- package/lib/shared/components/case-viewer/case-specific-access-request/case-specific-access-request.component.d.ts +33 -0
- package/lib/shared/components/case-viewer/case-specific-access-request/case-specific-access-request.component.d.ts.map +1 -0
- package/lib/shared/components/case-viewer/case-specific-access-request/index.d.ts +2 -0
- package/lib/shared/components/case-viewer/case-specific-access-request/index.d.ts.map +1 -0
- package/lib/shared/components/case-viewer/case-specific-access-request/models/case-specific-access-request.enum.d.ts +9 -0
- package/lib/shared/components/case-viewer/case-specific-access-request/models/case-specific-access-request.enum.d.ts.map +1 -0
- package/lib/shared/components/case-viewer/case-specific-access-request/models/index.d.ts +2 -0
- package/lib/shared/components/case-viewer/case-specific-access-request/models/index.d.ts.map +1 -0
- package/lib/shared/components/case-viewer/case-specific-access-success/case-specific-access-success.component.d.ts +12 -0
- package/lib/shared/components/case-viewer/case-specific-access-success/case-specific-access-success.component.d.ts.map +1 -0
- package/lib/shared/components/case-viewer/case-specific-access-success/index.d.ts +2 -0
- package/lib/shared/components/case-viewer/case-specific-access-success/index.d.ts.map +1 -0
- package/lib/shared/components/case-viewer/case-view/case-view.component.d.ts +32 -0
- package/lib/shared/components/case-viewer/case-view/case-view.component.d.ts.map +1 -0
- package/lib/shared/components/case-viewer/case-view/index.d.ts +2 -0
- package/lib/shared/components/case-viewer/case-view/index.d.ts.map +1 -0
- package/lib/shared/components/case-viewer/case-viewer.component.d.ts +32 -0
- package/lib/shared/components/case-viewer/case-viewer.component.d.ts.map +1 -0
- package/lib/shared/components/case-viewer/case-viewer.module.d.ts +36 -0
- package/lib/shared/components/case-viewer/case-viewer.module.d.ts.map +1 -0
- package/lib/shared/components/case-viewer/index.d.ts +14 -0
- package/lib/shared/components/case-viewer/index.d.ts.map +1 -0
- package/lib/shared/components/case-viewer/printer/case-printer.component.d.ts +24 -0
- package/lib/shared/components/case-viewer/printer/case-printer.component.d.ts.map +1 -0
- package/lib/shared/components/case-viewer/printer/index.d.ts +4 -0
- package/lib/shared/components/case-viewer/printer/index.d.ts.map +1 -0
- package/lib/shared/components/case-viewer/printer/pipes/index.d.ts +2 -0
- package/lib/shared/components/case-viewer/printer/pipes/index.d.ts.map +1 -0
- package/lib/shared/components/case-viewer/printer/pipes/print-url.pipe.d.ts +24 -0
- package/lib/shared/components/case-viewer/printer/pipes/print-url.pipe.d.ts.map +1 -0
- package/lib/shared/components/case-viewer/services/case.resolver.d.ts +29 -0
- package/lib/shared/components/case-viewer/services/case.resolver.d.ts.map +1 -0
- package/lib/shared/components/case-viewer/services/event-trigger.resolver.d.ts +26 -0
- package/lib/shared/components/case-viewer/services/event-trigger.resolver.d.ts.map +1 -0
- package/lib/shared/components/case-viewer/services/index.d.ts +3 -0
- package/lib/shared/components/case-viewer/services/index.d.ts.map +1 -0
- package/lib/shared/components/case-viewer/viewer.routing.d.ts +3 -0
- package/lib/shared/components/case-viewer/viewer.routing.d.ts.map +1 -0
- package/lib/shared/components/event-trigger/event-trigger.component.d.ts +24 -0
- package/lib/shared/components/event-trigger/event-trigger.component.d.ts.map +1 -0
- package/lib/shared/components/event-trigger/event-trigger.module.d.ts +11 -0
- package/lib/shared/components/event-trigger/event-trigger.module.d.ts.map +1 -0
- package/lib/shared/components/event-trigger/index.d.ts +3 -0
- package/lib/shared/components/event-trigger/index.d.ts.map +1 -0
- package/lib/shared/components/index.d.ts +4 -0
- package/lib/shared/components/index.d.ts.map +1 -1
- package/lib/shared/components/palette/complex/index.d.ts +0 -6
- package/lib/shared/components/palette/complex/index.d.ts.map +1 -1
- package/lib/shared/components/palette/complex/write-complex-field.component.d.ts.map +1 -1
- package/lib/shared/components/palette/palette.module.d.ts +87 -93
- package/lib/shared/components/palette/palette.module.d.ts.map +1 -1
- package/lib/shared/components/search-result/index.d.ts +3 -0
- package/lib/shared/components/search-result/index.d.ts.map +1 -0
- package/lib/shared/components/search-result/search-result.component.d.ts +111 -0
- package/lib/shared/components/search-result/search-result.component.d.ts.map +1 -0
- package/lib/shared/components/search-result/search-result.module.d.ts +16 -0
- package/lib/shared/components/search-result/search-result.module.d.ts.map +1 -0
- package/lib/shared/domain/case-view/role-request.model.d.ts.map +1 -1
- package/lib/shared/{components/palette → pipes}/complex/ccd-collection-table-value-case-fields.pipe.d.ts +1 -1
- package/lib/shared/pipes/complex/ccd-collection-table-value-case-fields.pipe.d.ts.map +1 -0
- package/lib/shared/{components/palette → pipes}/complex/ccd-cyapage-label-filter.pipe.d.ts +1 -1
- package/lib/shared/pipes/complex/ccd-cyapage-label-filter.pipe.d.ts.map +1 -0
- package/lib/shared/{components/palette → pipes}/complex/ccd-read-fields-filter.pipe.d.ts +1 -1
- package/lib/shared/pipes/complex/ccd-read-fields-filter.pipe.d.ts.map +1 -0
- package/lib/shared/{components/palette → pipes}/complex/ccd-tab-fields.pipe.d.ts +2 -2
- package/lib/shared/pipes/complex/ccd-tab-fields.pipe.d.ts.map +1 -0
- package/lib/shared/{components/palette → pipes}/complex/cdd-page-fields.pipe.d.ts +2 -2
- package/lib/shared/pipes/complex/cdd-page-fields.pipe.d.ts.map +1 -0
- package/lib/shared/{components/palette → pipes}/complex/fields-filter.pipe.d.ts +1 -1
- package/lib/shared/pipes/complex/fields-filter.pipe.d.ts.map +1 -0
- package/lib/shared/pipes/complex/index.d.ts +7 -0
- package/lib/shared/pipes/complex/index.d.ts.map +1 -0
- package/lib/shared/pipes/index.d.ts +2 -1
- package/lib/shared/pipes/index.d.ts.map +1 -1
- package/lib/shared/pipes/pipes.module.d.ts +7 -2
- package/lib/shared/pipes/pipes.module.d.ts.map +1 -1
- package/package.json +1 -1
- package/esm2015/lib/shared/components/palette/complex/ccd-collection-table-value-case-fields.pipe.js +0 -29
- package/esm2015/lib/shared/components/palette/complex/ccd-cyapage-label-filter.pipe.js +0 -29
- package/esm2015/lib/shared/components/palette/complex/ccd-read-fields-filter.pipe.js +0 -154
- package/esm2015/lib/shared/components/palette/complex/ccd-tab-fields.pipe.js +0 -31
- package/esm2015/lib/shared/components/palette/complex/cdd-page-fields.pipe.js +0 -39
- package/esm2015/lib/shared/components/palette/complex/fields-filter.pipe.js +0 -103
- package/lib/shared/components/palette/complex/ccd-collection-table-value-case-fields.pipe.d.ts.map +0 -1
- package/lib/shared/components/palette/complex/ccd-cyapage-label-filter.pipe.d.ts.map +0 -1
- package/lib/shared/components/palette/complex/ccd-read-fields-filter.pipe.d.ts.map +0 -1
- package/lib/shared/components/palette/complex/ccd-tab-fields.pipe.d.ts.map +0 -1
- package/lib/shared/components/palette/complex/cdd-page-fields.pipe.d.ts.map +0 -1
- package/lib/shared/components/palette/complex/fields-filter.pipe.d.ts.map +0 -1
|
@@ -0,0 +1,845 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import { FormGroup } from '@angular/forms';
|
|
3
|
+
import { AbstractAppConfig } from '../../../app.config';
|
|
4
|
+
import { PlaceholderService } from '../../directives/substitutor/services/placeholder.service';
|
|
5
|
+
import { DisplayMode } from '../../domain/activity/activity.model';
|
|
6
|
+
import { CaseField } from '../../domain/definition/case-field.model';
|
|
7
|
+
import { CaseState } from '../../domain/definition/case-state.model';
|
|
8
|
+
import { CaseType } from '../../domain/definition/case-type.model';
|
|
9
|
+
import { Jurisdiction } from '../../domain/definition/jurisdiction.model';
|
|
10
|
+
import { DRAFT_PREFIX } from '../../domain/draft.model';
|
|
11
|
+
import { PaginationMetadata } from '../../domain/pagination-metadata.model';
|
|
12
|
+
import { SearchResultView } from '../../domain/search/search-result-view.model';
|
|
13
|
+
import { SortOrder } from '../../domain/search/sorting/sort-order';
|
|
14
|
+
import { SortParameters } from '../../domain/search/sorting/sort-parameters';
|
|
15
|
+
import { CaseReferencePipe } from '../../pipes/case-reference/case-reference.pipe';
|
|
16
|
+
import { ActivityService } from '../../services/activity/activity.service';
|
|
17
|
+
import { BrowserService } from '../../services/browser/browser.service';
|
|
18
|
+
import { SearchResultViewItemComparatorFactory } from '../../services/search-result/sorting/search-result-view-item-comparator-factory';
|
|
19
|
+
import * as i0 from "@angular/core";
|
|
20
|
+
import * as i1 from "../../services/search-result/sorting/search-result-view-item-comparator-factory";
|
|
21
|
+
import * as i2 from "../../../app.config";
|
|
22
|
+
import * as i3 from "../../services/activity/activity.service";
|
|
23
|
+
import * as i4 from "../../pipes/case-reference/case-reference.pipe";
|
|
24
|
+
import * as i5 from "../../directives/substitutor/services/placeholder.service";
|
|
25
|
+
import * as i6 from "../../services/browser/browser.service";
|
|
26
|
+
import * as i7 from "@angular/common";
|
|
27
|
+
import * as i8 from "@angular/router";
|
|
28
|
+
import * as i9 from "../../directives/substitutor/label-substitutor.directive";
|
|
29
|
+
import * as i10 from "../activity/activity.component";
|
|
30
|
+
import * as i11 from "../pagination/pagination.component";
|
|
31
|
+
import * as i12 from "ngx-pagination";
|
|
32
|
+
import * as i13 from "../../pipes/search-result/sorting/sort-search-result.pipe";
|
|
33
|
+
function SearchResultComponent_table_0_div_4_Template(rf, ctx) { if (rf & 1) {
|
|
34
|
+
i0.ɵɵelementStart(0, "div", 11);
|
|
35
|
+
i0.ɵɵelementStart(1, "span", 12);
|
|
36
|
+
i0.ɵɵtext(2, "!");
|
|
37
|
+
i0.ɵɵelementEnd();
|
|
38
|
+
i0.ɵɵelementStart(3, "strong", 13);
|
|
39
|
+
i0.ɵɵelementStart(4, "span", 14);
|
|
40
|
+
i0.ɵɵtext(5, "Warning");
|
|
41
|
+
i0.ɵɵelementEnd();
|
|
42
|
+
i0.ɵɵtext(6);
|
|
43
|
+
i0.ɵɵpipe(7, "number");
|
|
44
|
+
i0.ɵɵelementEnd();
|
|
45
|
+
i0.ɵɵelementEnd();
|
|
46
|
+
} if (rf & 2) {
|
|
47
|
+
const ctx_r3 = i0.ɵɵnextContext(2);
|
|
48
|
+
i0.ɵɵadvance(6);
|
|
49
|
+
i0.ɵɵtextInterpolate1(" The total size of the result set is ", i0.ɵɵpipeBind1(7, 1, ctx_r3.paginationMetadata.total_results_count), ". Only the first 10,000 records are available for display. ");
|
|
50
|
+
} }
|
|
51
|
+
function SearchResultComponent_table_0_div_5_Template(rf, ctx) { if (rf & 1) {
|
|
52
|
+
i0.ɵɵelementStart(0, "div", 15);
|
|
53
|
+
i0.ɵɵelementStart(1, "span", 16);
|
|
54
|
+
i0.ɵɵtext(2, "Showing ");
|
|
55
|
+
i0.ɵɵelementStart(3, "span", 17);
|
|
56
|
+
i0.ɵɵtext(4);
|
|
57
|
+
i0.ɵɵelementEnd();
|
|
58
|
+
i0.ɵɵtext(5, " to ");
|
|
59
|
+
i0.ɵɵelementStart(6, "span", 17);
|
|
60
|
+
i0.ɵɵtext(7);
|
|
61
|
+
i0.ɵɵelementEnd();
|
|
62
|
+
i0.ɵɵtext(8, " of ");
|
|
63
|
+
i0.ɵɵelementStart(9, "span", 17);
|
|
64
|
+
i0.ɵɵtext(10);
|
|
65
|
+
i0.ɵɵelementEnd();
|
|
66
|
+
i0.ɵɵtext(11, " results");
|
|
67
|
+
i0.ɵɵelementEnd();
|
|
68
|
+
i0.ɵɵelementEnd();
|
|
69
|
+
} if (rf & 2) {
|
|
70
|
+
const ctx_r4 = i0.ɵɵnextContext(2);
|
|
71
|
+
i0.ɵɵattributeInterpolate1("aria-label", "", ctx_r4.getTotalResults(), " results have been found");
|
|
72
|
+
i0.ɵɵadvance(4);
|
|
73
|
+
i0.ɵɵtextInterpolate(ctx_r4.getFirstResult());
|
|
74
|
+
i0.ɵɵadvance(3);
|
|
75
|
+
i0.ɵɵtextInterpolate(ctx_r4.getLastResult());
|
|
76
|
+
i0.ɵɵadvance(3);
|
|
77
|
+
i0.ɵɵtextInterpolate(ctx_r4.getTotalResults());
|
|
78
|
+
} }
|
|
79
|
+
function SearchResultComponent_table_0_div_6_Template(rf, ctx) { if (rf & 1) {
|
|
80
|
+
const _r12 = i0.ɵɵgetCurrentView();
|
|
81
|
+
i0.ɵɵelementStart(0, "div", 18);
|
|
82
|
+
i0.ɵɵelementStart(1, "span");
|
|
83
|
+
i0.ɵɵelementStart(2, "a", 19);
|
|
84
|
+
i0.ɵɵlistener("click", function SearchResultComponent_table_0_div_6_Template_a_click_2_listener() { i0.ɵɵrestoreView(_r12); const ctx_r11 = i0.ɵɵnextContext(2); return ctx_r11.clearSelection(); });
|
|
85
|
+
i0.ɵɵtext(3, "Reset case selection");
|
|
86
|
+
i0.ɵɵelementEnd();
|
|
87
|
+
i0.ɵɵelementEnd();
|
|
88
|
+
i0.ɵɵelementEnd();
|
|
89
|
+
} }
|
|
90
|
+
function SearchResultComponent_table_0_th_9_Template(rf, ctx) { if (rf & 1) {
|
|
91
|
+
const _r14 = i0.ɵɵgetCurrentView();
|
|
92
|
+
i0.ɵɵelementStart(0, "th", 20);
|
|
93
|
+
i0.ɵɵelementStart(1, "div", 21);
|
|
94
|
+
i0.ɵɵelementStart(2, "input", 22);
|
|
95
|
+
i0.ɵɵlistener("change", function SearchResultComponent_table_0_th_9_Template_input_change_2_listener() { i0.ɵɵrestoreView(_r14); const ctx_r13 = i0.ɵɵnextContext(2); return ctx_r13.selectAll(); });
|
|
96
|
+
i0.ɵɵelementEnd();
|
|
97
|
+
i0.ɵɵelement(3, "label", 23);
|
|
98
|
+
i0.ɵɵelementEnd();
|
|
99
|
+
i0.ɵɵelementEnd();
|
|
100
|
+
} if (rf & 2) {
|
|
101
|
+
const ctx_r6 = i0.ɵɵnextContext(2);
|
|
102
|
+
i0.ɵɵadvance(2);
|
|
103
|
+
i0.ɵɵproperty("checked", ctx_r6.allOnPageSelected())("disabled", !ctx_r6.canAnyBeShared());
|
|
104
|
+
} }
|
|
105
|
+
function SearchResultComponent_table_0_th_10_div_6_Template(rf, ctx) { if (rf & 1) {
|
|
106
|
+
const _r19 = i0.ɵɵgetCurrentView();
|
|
107
|
+
i0.ɵɵelementStart(0, "div", 28);
|
|
108
|
+
i0.ɵɵelementStart(1, "a", 29);
|
|
109
|
+
i0.ɵɵlistener("click", function SearchResultComponent_table_0_th_10_div_6_Template_a_click_1_listener() { i0.ɵɵrestoreView(_r19); const col_r15 = i0.ɵɵnextContext().$implicit; const ctx_r17 = i0.ɵɵnextContext(2); return ctx_r17.sort(col_r15); });
|
|
110
|
+
i0.ɵɵelementEnd();
|
|
111
|
+
i0.ɵɵelementEnd();
|
|
112
|
+
} if (rf & 2) {
|
|
113
|
+
const col_r15 = i0.ɵɵnextContext().$implicit;
|
|
114
|
+
const ctx_r16 = i0.ɵɵnextContext(2);
|
|
115
|
+
i0.ɵɵadvance(1);
|
|
116
|
+
i0.ɵɵproperty("innerHTML", ctx_r16.sortWidget(col_r15), i0.ɵɵsanitizeHtml);
|
|
117
|
+
} }
|
|
118
|
+
function SearchResultComponent_table_0_th_10_Template(rf, ctx) { if (rf & 1) {
|
|
119
|
+
const _r22 = i0.ɵɵgetCurrentView();
|
|
120
|
+
i0.ɵɵelementStart(0, "th");
|
|
121
|
+
i0.ɵɵelementStart(1, "table", 24);
|
|
122
|
+
i0.ɵɵelementStart(2, "tr");
|
|
123
|
+
i0.ɵɵelement(3, "th", 25);
|
|
124
|
+
i0.ɵɵelementStart(4, "div", 26);
|
|
125
|
+
i0.ɵɵlistener("click", function SearchResultComponent_table_0_th_10_Template_div_click_4_listener() { i0.ɵɵrestoreView(_r22); const col_r15 = ctx.$implicit; const ctx_r21 = i0.ɵɵnextContext(2); return ctx_r21.sort(col_r15); });
|
|
126
|
+
i0.ɵɵtext(5);
|
|
127
|
+
i0.ɵɵelementEnd();
|
|
128
|
+
i0.ɵɵtemplate(6, SearchResultComponent_table_0_th_10_div_6_Template, 2, 1, "div", 27);
|
|
129
|
+
i0.ɵɵelementEnd();
|
|
130
|
+
i0.ɵɵelementEnd();
|
|
131
|
+
i0.ɵɵelementEnd();
|
|
132
|
+
} if (rf & 2) {
|
|
133
|
+
const col_r15 = ctx.$implicit;
|
|
134
|
+
const ctx_r7 = i0.ɵɵnextContext(2);
|
|
135
|
+
i0.ɵɵadvance(1);
|
|
136
|
+
i0.ɵɵattribute("aria-label", ctx_r7.sortLabelText(col_r15.label, ctx_r7.isSortAscending(col_r15)));
|
|
137
|
+
i0.ɵɵadvance(4);
|
|
138
|
+
i0.ɵɵtextInterpolate(col_r15.label);
|
|
139
|
+
i0.ɵɵadvance(1);
|
|
140
|
+
i0.ɵɵproperty("ngIf", ctx_r7.comparator(col_r15));
|
|
141
|
+
} }
|
|
142
|
+
function SearchResultComponent_table_0_th_11_Template(rf, ctx) { if (rf & 1) {
|
|
143
|
+
i0.ɵɵelement(0, "th", 30);
|
|
144
|
+
} }
|
|
145
|
+
function SearchResultComponent_table_0_ng_container_13_tr_1_td_1_Template(rf, ctx) { if (rf & 1) {
|
|
146
|
+
const _r30 = i0.ɵɵgetCurrentView();
|
|
147
|
+
i0.ɵɵelementStart(0, "td", 20);
|
|
148
|
+
i0.ɵɵelementStart(1, "div", 21);
|
|
149
|
+
i0.ɵɵelementStart(2, "input", 32);
|
|
150
|
+
i0.ɵɵlistener("change", function SearchResultComponent_table_0_ng_container_13_tr_1_td_1_Template_input_change_2_listener() { i0.ɵɵrestoreView(_r30); const result_r24 = i0.ɵɵnextContext().$implicit; const ctx_r28 = i0.ɵɵnextContext(3); return ctx_r28.changeSelection(result_r24); });
|
|
151
|
+
i0.ɵɵelementEnd();
|
|
152
|
+
i0.ɵɵelement(3, "label", 33);
|
|
153
|
+
i0.ɵɵelementEnd();
|
|
154
|
+
i0.ɵɵelementEnd();
|
|
155
|
+
} if (rf & 2) {
|
|
156
|
+
const result_r24 = i0.ɵɵnextContext().$implicit;
|
|
157
|
+
const ctx_r25 = i0.ɵɵnextContext(3);
|
|
158
|
+
i0.ɵɵadvance(2);
|
|
159
|
+
i0.ɵɵpropertyInterpolate1("id", "select-", result_r24.case_id, "");
|
|
160
|
+
i0.ɵɵpropertyInterpolate1("name", "select-", result_r24.case_id, "");
|
|
161
|
+
i0.ɵɵproperty("checked", ctx_r25.isSelected(result_r24))("disabled", !ctx_r25.canBeShared(result_r24));
|
|
162
|
+
i0.ɵɵadvance(1);
|
|
163
|
+
i0.ɵɵpropertyInterpolate1("for", "select-", result_r24.case_id, "");
|
|
164
|
+
} }
|
|
165
|
+
const _c0 = function () { return ["value"]; };
|
|
166
|
+
function SearchResultComponent_table_0_ng_container_13_tr_1_td_2_a_1_ng_container_2_ccd_field_read_1_Template(rf, ctx) { if (rf & 1) {
|
|
167
|
+
i0.ɵɵelement(0, "ccd-field-read", 42);
|
|
168
|
+
} if (rf & 2) {
|
|
169
|
+
const col_r32 = i0.ɵɵnextContext(3).$implicit;
|
|
170
|
+
const result_r24 = i0.ɵɵnextContext().$implicit;
|
|
171
|
+
const ctx_r37 = i0.ɵɵnextContext(3);
|
|
172
|
+
i0.ɵɵproperty("caseField", ctx_r37.getColumnsWithPrefix(result_r24.columns[col_r32.case_field_id], result_r24))("contextFields", result_r24.hydrated_case_fields)("elementsToSubstitute", i0.ɵɵpureFunction0(3, _c0));
|
|
173
|
+
} }
|
|
174
|
+
function SearchResultComponent_table_0_ng_container_13_tr_1_td_2_a_1_ng_container_2_ng_template_2_Template(rf, ctx) { if (rf & 1) {
|
|
175
|
+
i0.ɵɵtext(0);
|
|
176
|
+
i0.ɵɵpipe(1, "ccdCaseReference");
|
|
177
|
+
} if (rf & 2) {
|
|
178
|
+
const result_r24 = i0.ɵɵnextContext(4).$implicit;
|
|
179
|
+
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(1, 1, result_r24.case_id));
|
|
180
|
+
} }
|
|
181
|
+
function SearchResultComponent_table_0_ng_container_13_tr_1_td_2_a_1_ng_container_2_Template(rf, ctx) { if (rf & 1) {
|
|
182
|
+
i0.ɵɵelementContainerStart(0, 39);
|
|
183
|
+
i0.ɵɵtemplate(1, SearchResultComponent_table_0_ng_container_13_tr_1_td_2_a_1_ng_container_2_ccd_field_read_1_Template, 1, 4, "ccd-field-read", 40);
|
|
184
|
+
i0.ɵɵtemplate(2, SearchResultComponent_table_0_ng_container_13_tr_1_td_2_a_1_ng_container_2_ng_template_2_Template, 2, 3, "ng-template", null, 41, i0.ɵɵtemplateRefExtractor);
|
|
185
|
+
i0.ɵɵelementContainerEnd();
|
|
186
|
+
} if (rf & 2) {
|
|
187
|
+
const _r38 = i0.ɵɵreference(3);
|
|
188
|
+
const col_r32 = i0.ɵɵnextContext(2).$implicit;
|
|
189
|
+
const result_r24 = i0.ɵɵnextContext().$implicit;
|
|
190
|
+
const ctx_r36 = i0.ɵɵnextContext(3);
|
|
191
|
+
i0.ɵɵadvance(1);
|
|
192
|
+
i0.ɵɵproperty("ngIf", ctx_r36.draftPrefixOrGet(col_r32, result_r24))("ngIfElse", _r38);
|
|
193
|
+
} }
|
|
194
|
+
function SearchResultComponent_table_0_ng_container_13_tr_1_td_2_a_1_Template(rf, ctx) { if (rf & 1) {
|
|
195
|
+
i0.ɵɵelementStart(0, "a", 37);
|
|
196
|
+
i0.ɵɵpipe(1, "ccdCaseReference");
|
|
197
|
+
i0.ɵɵtemplate(2, SearchResultComponent_table_0_ng_container_13_tr_1_td_2_a_1_ng_container_2_Template, 4, 2, "ng-container", 38);
|
|
198
|
+
i0.ɵɵelementEnd();
|
|
199
|
+
} if (rf & 2) {
|
|
200
|
+
const result_r24 = i0.ɵɵnextContext(2).$implicit;
|
|
201
|
+
const ctx_r34 = i0.ɵɵnextContext(3);
|
|
202
|
+
i0.ɵɵattributeInterpolate1("aria-label", "go to case with Case reference:", i0.ɵɵpipeBind1(1, 3, result_r24.case_id), "");
|
|
203
|
+
i0.ɵɵproperty("routerLink", ctx_r34.prepareCaseLinkUrl(result_r24.case_id));
|
|
204
|
+
i0.ɵɵadvance(2);
|
|
205
|
+
i0.ɵɵproperty("ngIf", !ctx_r34.hideRows);
|
|
206
|
+
} }
|
|
207
|
+
function SearchResultComponent_table_0_ng_container_13_tr_1_td_2_div_2_Template(rf, ctx) { if (rf & 1) {
|
|
208
|
+
i0.ɵɵelementStart(0, "div", 39);
|
|
209
|
+
i0.ɵɵelement(1, "ccd-field-read", 42);
|
|
210
|
+
i0.ɵɵelementEnd();
|
|
211
|
+
} if (rf & 2) {
|
|
212
|
+
const col_r32 = i0.ɵɵnextContext().$implicit;
|
|
213
|
+
const result_r24 = i0.ɵɵnextContext().$implicit;
|
|
214
|
+
const ctx_r35 = i0.ɵɵnextContext(3);
|
|
215
|
+
i0.ɵɵstyleProp("visibility", ctx_r35.hideRows ? "hidden" : "visible");
|
|
216
|
+
i0.ɵɵadvance(1);
|
|
217
|
+
i0.ɵɵproperty("caseField", result_r24.columns[col_r32.case_field_id])("contextFields", result_r24.hydrated_case_fields)("elementsToSubstitute", i0.ɵɵpureFunction0(5, _c0));
|
|
218
|
+
} }
|
|
219
|
+
function SearchResultComponent_table_0_ng_container_13_tr_1_td_2_Template(rf, ctx) { if (rf & 1) {
|
|
220
|
+
i0.ɵɵelementStart(0, "td", 34);
|
|
221
|
+
i0.ɵɵtemplate(1, SearchResultComponent_table_0_ng_container_13_tr_1_td_2_a_1_Template, 3, 5, "a", 35);
|
|
222
|
+
i0.ɵɵtemplate(2, SearchResultComponent_table_0_ng_container_13_tr_1_td_2_div_2_Template, 2, 6, "div", 36);
|
|
223
|
+
i0.ɵɵelementEnd();
|
|
224
|
+
} if (rf & 2) {
|
|
225
|
+
const colIndex_r33 = ctx.index;
|
|
226
|
+
i0.ɵɵadvance(1);
|
|
227
|
+
i0.ɵɵproperty("ngIf", colIndex_r33 == 0);
|
|
228
|
+
i0.ɵɵadvance(1);
|
|
229
|
+
i0.ɵɵproperty("ngIf", colIndex_r33 != 0);
|
|
230
|
+
} }
|
|
231
|
+
function SearchResultComponent_table_0_ng_container_13_tr_1_td_3_Template(rf, ctx) { if (rf & 1) {
|
|
232
|
+
i0.ɵɵelementStart(0, "td");
|
|
233
|
+
i0.ɵɵelementStart(1, "div");
|
|
234
|
+
i0.ɵɵelement(2, "ccd-activity", 43);
|
|
235
|
+
i0.ɵɵelementEnd();
|
|
236
|
+
i0.ɵɵelementEnd();
|
|
237
|
+
} if (rf & 2) {
|
|
238
|
+
const result_r24 = i0.ɵɵnextContext().$implicit;
|
|
239
|
+
const ctx_r27 = i0.ɵɵnextContext(3);
|
|
240
|
+
i0.ɵɵadvance(1);
|
|
241
|
+
i0.ɵɵstyleProp("visibility", ctx_r27.hideRows ? "hidden" : "visible");
|
|
242
|
+
i0.ɵɵadvance(1);
|
|
243
|
+
i0.ɵɵproperty("caseId", result_r24.case_id)("displayMode", ctx_r27.ICON);
|
|
244
|
+
} }
|
|
245
|
+
function SearchResultComponent_table_0_ng_container_13_tr_1_Template(rf, ctx) { if (rf & 1) {
|
|
246
|
+
i0.ɵɵelementStart(0, "tr");
|
|
247
|
+
i0.ɵɵtemplate(1, SearchResultComponent_table_0_ng_container_13_tr_1_td_1_Template, 4, 5, "td", 8);
|
|
248
|
+
i0.ɵɵtemplate(2, SearchResultComponent_table_0_ng_container_13_tr_1_td_2_Template, 3, 2, "td", 31);
|
|
249
|
+
i0.ɵɵtemplate(3, SearchResultComponent_table_0_ng_container_13_tr_1_td_3_Template, 3, 4, "td", 0);
|
|
250
|
+
i0.ɵɵelementEnd();
|
|
251
|
+
} if (rf & 2) {
|
|
252
|
+
const ctx_r23 = i0.ɵɵnextContext(3);
|
|
253
|
+
i0.ɵɵadvance(1);
|
|
254
|
+
i0.ɵɵproperty("ngIf", ctx_r23.selectionEnabled);
|
|
255
|
+
i0.ɵɵadvance(1);
|
|
256
|
+
i0.ɵɵproperty("ngForOf", ctx_r23.resultView.columns);
|
|
257
|
+
i0.ɵɵadvance(1);
|
|
258
|
+
i0.ɵɵproperty("ngIf", ctx_r23.activityEnabled());
|
|
259
|
+
} }
|
|
260
|
+
const _c1 = function (a0, a1, a2) { return { itemsPerPage: a0, currentPage: a1, totalItems: a2 }; };
|
|
261
|
+
function SearchResultComponent_table_0_ng_container_13_Template(rf, ctx) { if (rf & 1) {
|
|
262
|
+
i0.ɵɵelementContainerStart(0);
|
|
263
|
+
i0.ɵɵtemplate(1, SearchResultComponent_table_0_ng_container_13_tr_1_Template, 4, 3, "tr", 9);
|
|
264
|
+
i0.ɵɵpipe(2, "paginate");
|
|
265
|
+
i0.ɵɵelementContainerEnd();
|
|
266
|
+
} if (rf & 2) {
|
|
267
|
+
const ctx_r9 = i0.ɵɵnextContext(2);
|
|
268
|
+
i0.ɵɵadvance(1);
|
|
269
|
+
i0.ɵɵproperty("ngForOf", i0.ɵɵpipeBind2(2, 1, ctx_r9.resultView.results, i0.ɵɵpureFunction3(4, _c1, ctx_r9.paginationPageSize, ctx_r9.selected.page, ctx_r9.resultTotal)));
|
|
270
|
+
} }
|
|
271
|
+
function SearchResultComponent_table_0_ng_container_14_tr_1_td_1_Template(rf, ctx) { if (rf & 1) {
|
|
272
|
+
const _r56 = i0.ɵɵgetCurrentView();
|
|
273
|
+
i0.ɵɵelementStart(0, "td", 20);
|
|
274
|
+
i0.ɵɵelementStart(1, "div", 21);
|
|
275
|
+
i0.ɵɵelementStart(2, "input", 44);
|
|
276
|
+
i0.ɵɵlistener("change", function SearchResultComponent_table_0_ng_container_14_tr_1_td_1_Template_input_change_2_listener() { i0.ɵɵrestoreView(_r56); const result_r50 = i0.ɵɵnextContext().$implicit; const ctx_r54 = i0.ɵɵnextContext(3); return ctx_r54.changeSelection(result_r50); })("keyup", function SearchResultComponent_table_0_ng_container_14_tr_1_td_1_Template_input_keyup_2_listener($event) { i0.ɵɵrestoreView(_r56); const result_r50 = i0.ɵɵnextContext().$implicit; const ctx_r57 = i0.ɵɵnextContext(3); return ctx_r57.onKeyUp($event, result_r50); });
|
|
277
|
+
i0.ɵɵelementEnd();
|
|
278
|
+
i0.ɵɵelement(3, "label", 33);
|
|
279
|
+
i0.ɵɵelementEnd();
|
|
280
|
+
i0.ɵɵelementEnd();
|
|
281
|
+
} if (rf & 2) {
|
|
282
|
+
const result_r50 = i0.ɵɵnextContext().$implicit;
|
|
283
|
+
const ctx_r51 = i0.ɵɵnextContext(3);
|
|
284
|
+
i0.ɵɵadvance(2);
|
|
285
|
+
i0.ɵɵpropertyInterpolate1("id", "select-", result_r50.case_id, "");
|
|
286
|
+
i0.ɵɵpropertyInterpolate1("name", "select-", result_r50.case_id, "");
|
|
287
|
+
i0.ɵɵproperty("checked", ctx_r51.isSelected(result_r50))("disabled", !ctx_r51.canBeShared(result_r50));
|
|
288
|
+
i0.ɵɵadvance(1);
|
|
289
|
+
i0.ɵɵpropertyInterpolate1("for", "select-", result_r50.case_id, "");
|
|
290
|
+
} }
|
|
291
|
+
function SearchResultComponent_table_0_ng_container_14_tr_1_td_2_a_1_ng_container_2_ccd_field_read_1_Template(rf, ctx) { if (rf & 1) {
|
|
292
|
+
i0.ɵɵelement(0, "ccd-field-read", 42);
|
|
293
|
+
} if (rf & 2) {
|
|
294
|
+
const col_r60 = i0.ɵɵnextContext(3).$implicit;
|
|
295
|
+
const result_r50 = i0.ɵɵnextContext().$implicit;
|
|
296
|
+
const ctx_r65 = i0.ɵɵnextContext(3);
|
|
297
|
+
i0.ɵɵproperty("caseField", ctx_r65.getColumnsWithPrefix(result_r50.columns[col_r60.case_field_id], result_r50))("contextFields", result_r50.hydrated_case_fields)("elementsToSubstitute", i0.ɵɵpureFunction0(3, _c0));
|
|
298
|
+
} }
|
|
299
|
+
function SearchResultComponent_table_0_ng_container_14_tr_1_td_2_a_1_ng_container_2_ng_template_2_Template(rf, ctx) { if (rf & 1) {
|
|
300
|
+
i0.ɵɵtext(0);
|
|
301
|
+
i0.ɵɵpipe(1, "ccdCaseReference");
|
|
302
|
+
} if (rf & 2) {
|
|
303
|
+
const result_r50 = i0.ɵɵnextContext(4).$implicit;
|
|
304
|
+
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(1, 1, result_r50.case_id));
|
|
305
|
+
} }
|
|
306
|
+
function SearchResultComponent_table_0_ng_container_14_tr_1_td_2_a_1_ng_container_2_Template(rf, ctx) { if (rf & 1) {
|
|
307
|
+
i0.ɵɵelementContainerStart(0, 39);
|
|
308
|
+
i0.ɵɵtemplate(1, SearchResultComponent_table_0_ng_container_14_tr_1_td_2_a_1_ng_container_2_ccd_field_read_1_Template, 1, 4, "ccd-field-read", 40);
|
|
309
|
+
i0.ɵɵtemplate(2, SearchResultComponent_table_0_ng_container_14_tr_1_td_2_a_1_ng_container_2_ng_template_2_Template, 2, 3, "ng-template", null, 41, i0.ɵɵtemplateRefExtractor);
|
|
310
|
+
i0.ɵɵelementContainerEnd();
|
|
311
|
+
} if (rf & 2) {
|
|
312
|
+
const _r66 = i0.ɵɵreference(3);
|
|
313
|
+
const col_r60 = i0.ɵɵnextContext(2).$implicit;
|
|
314
|
+
const result_r50 = i0.ɵɵnextContext().$implicit;
|
|
315
|
+
const ctx_r64 = i0.ɵɵnextContext(3);
|
|
316
|
+
i0.ɵɵadvance(1);
|
|
317
|
+
i0.ɵɵproperty("ngIf", ctx_r64.draftPrefixOrGet(col_r60, result_r50))("ngIfElse", _r66);
|
|
318
|
+
} }
|
|
319
|
+
function SearchResultComponent_table_0_ng_container_14_tr_1_td_2_a_1_Template(rf, ctx) { if (rf & 1) {
|
|
320
|
+
i0.ɵɵelementStart(0, "a", 37);
|
|
321
|
+
i0.ɵɵpipe(1, "ccdCaseReference");
|
|
322
|
+
i0.ɵɵtemplate(2, SearchResultComponent_table_0_ng_container_14_tr_1_td_2_a_1_ng_container_2_Template, 4, 2, "ng-container", 38);
|
|
323
|
+
i0.ɵɵelementEnd();
|
|
324
|
+
} if (rf & 2) {
|
|
325
|
+
const result_r50 = i0.ɵɵnextContext(2).$implicit;
|
|
326
|
+
const ctx_r62 = i0.ɵɵnextContext(3);
|
|
327
|
+
i0.ɵɵattributeInterpolate1("aria-label", "go to case with Case reference:", i0.ɵɵpipeBind1(1, 3, result_r50.case_id), "");
|
|
328
|
+
i0.ɵɵproperty("routerLink", ctx_r62.prepareCaseLinkUrl(result_r50.case_id));
|
|
329
|
+
i0.ɵɵadvance(2);
|
|
330
|
+
i0.ɵɵproperty("ngIf", !ctx_r62.hideRows);
|
|
331
|
+
} }
|
|
332
|
+
function SearchResultComponent_table_0_ng_container_14_tr_1_td_2_div_2_Template(rf, ctx) { if (rf & 1) {
|
|
333
|
+
i0.ɵɵelementStart(0, "div", 39);
|
|
334
|
+
i0.ɵɵelement(1, "ccd-field-read", 42);
|
|
335
|
+
i0.ɵɵelementEnd();
|
|
336
|
+
} if (rf & 2) {
|
|
337
|
+
const col_r60 = i0.ɵɵnextContext().$implicit;
|
|
338
|
+
const result_r50 = i0.ɵɵnextContext().$implicit;
|
|
339
|
+
const ctx_r63 = i0.ɵɵnextContext(3);
|
|
340
|
+
i0.ɵɵstyleProp("visibility", ctx_r63.hideRows ? "hidden" : "visible");
|
|
341
|
+
i0.ɵɵadvance(1);
|
|
342
|
+
i0.ɵɵproperty("caseField", result_r50.columns[col_r60.case_field_id])("contextFields", result_r50.hydrated_case_fields)("elementsToSubstitute", i0.ɵɵpureFunction0(5, _c0));
|
|
343
|
+
} }
|
|
344
|
+
function SearchResultComponent_table_0_ng_container_14_tr_1_td_2_Template(rf, ctx) { if (rf & 1) {
|
|
345
|
+
i0.ɵɵelementStart(0, "td", 34);
|
|
346
|
+
i0.ɵɵtemplate(1, SearchResultComponent_table_0_ng_container_14_tr_1_td_2_a_1_Template, 3, 5, "a", 35);
|
|
347
|
+
i0.ɵɵtemplate(2, SearchResultComponent_table_0_ng_container_14_tr_1_td_2_div_2_Template, 2, 6, "div", 36);
|
|
348
|
+
i0.ɵɵelementEnd();
|
|
349
|
+
} if (rf & 2) {
|
|
350
|
+
const colIndex_r61 = ctx.index;
|
|
351
|
+
i0.ɵɵadvance(1);
|
|
352
|
+
i0.ɵɵproperty("ngIf", colIndex_r61 == 0);
|
|
353
|
+
i0.ɵɵadvance(1);
|
|
354
|
+
i0.ɵɵproperty("ngIf", colIndex_r61 != 0);
|
|
355
|
+
} }
|
|
356
|
+
function SearchResultComponent_table_0_ng_container_14_tr_1_td_3_Template(rf, ctx) { if (rf & 1) {
|
|
357
|
+
i0.ɵɵelementStart(0, "td");
|
|
358
|
+
i0.ɵɵelementStart(1, "div");
|
|
359
|
+
i0.ɵɵelement(2, "ccd-activity", 43);
|
|
360
|
+
i0.ɵɵelementEnd();
|
|
361
|
+
i0.ɵɵelementEnd();
|
|
362
|
+
} if (rf & 2) {
|
|
363
|
+
const result_r50 = i0.ɵɵnextContext().$implicit;
|
|
364
|
+
const ctx_r53 = i0.ɵɵnextContext(3);
|
|
365
|
+
i0.ɵɵadvance(1);
|
|
366
|
+
i0.ɵɵstyleProp("visibility", ctx_r53.hideRows ? "hidden" : "visible");
|
|
367
|
+
i0.ɵɵadvance(1);
|
|
368
|
+
i0.ɵɵproperty("caseId", result_r50.case_id)("displayMode", ctx_r53.ICON);
|
|
369
|
+
} }
|
|
370
|
+
function SearchResultComponent_table_0_ng_container_14_tr_1_Template(rf, ctx) { if (rf & 1) {
|
|
371
|
+
i0.ɵɵelementStart(0, "tr");
|
|
372
|
+
i0.ɵɵtemplate(1, SearchResultComponent_table_0_ng_container_14_tr_1_td_1_Template, 4, 5, "td", 8);
|
|
373
|
+
i0.ɵɵtemplate(2, SearchResultComponent_table_0_ng_container_14_tr_1_td_2_Template, 3, 2, "td", 31);
|
|
374
|
+
i0.ɵɵtemplate(3, SearchResultComponent_table_0_ng_container_14_tr_1_td_3_Template, 3, 4, "td", 0);
|
|
375
|
+
i0.ɵɵelementEnd();
|
|
376
|
+
} if (rf & 2) {
|
|
377
|
+
const ctx_r49 = i0.ɵɵnextContext(3);
|
|
378
|
+
i0.ɵɵadvance(1);
|
|
379
|
+
i0.ɵɵproperty("ngIf", ctx_r49.selectionEnabled);
|
|
380
|
+
i0.ɵɵadvance(1);
|
|
381
|
+
i0.ɵɵproperty("ngForOf", ctx_r49.resultView.columns);
|
|
382
|
+
i0.ɵɵadvance(1);
|
|
383
|
+
i0.ɵɵproperty("ngIf", ctx_r49.activityEnabled());
|
|
384
|
+
} }
|
|
385
|
+
function SearchResultComponent_table_0_ng_container_14_Template(rf, ctx) { if (rf & 1) {
|
|
386
|
+
i0.ɵɵelementContainerStart(0);
|
|
387
|
+
i0.ɵɵtemplate(1, SearchResultComponent_table_0_ng_container_14_tr_1_Template, 4, 3, "tr", 9);
|
|
388
|
+
i0.ɵɵpipe(2, "paginate");
|
|
389
|
+
i0.ɵɵpipe(3, "ccdSortSearchResult");
|
|
390
|
+
i0.ɵɵelementContainerEnd();
|
|
391
|
+
} if (rf & 2) {
|
|
392
|
+
const ctx_r10 = i0.ɵɵnextContext(2);
|
|
393
|
+
i0.ɵɵadvance(1);
|
|
394
|
+
i0.ɵɵproperty("ngForOf", i0.ɵɵpipeBind2(2, 1, i0.ɵɵpipeBind2(3, 4, ctx_r10.resultView.results, ctx_r10.sortParameters), i0.ɵɵpureFunction3(7, _c1, ctx_r10.paginationPageSize, ctx_r10.selected.page, ctx_r10.resultTotal)));
|
|
395
|
+
} }
|
|
396
|
+
function SearchResultComponent_table_0_Template(rf, ctx) { if (rf & 1) {
|
|
397
|
+
i0.ɵɵelementStart(0, "table");
|
|
398
|
+
i0.ɵɵelementStart(1, "caption");
|
|
399
|
+
i0.ɵɵelementStart(2, "h2", 3);
|
|
400
|
+
i0.ɵɵtext(3);
|
|
401
|
+
i0.ɵɵelementEnd();
|
|
402
|
+
i0.ɵɵtemplate(4, SearchResultComponent_table_0_div_4_Template, 8, 3, "div", 4);
|
|
403
|
+
i0.ɵɵtemplate(5, SearchResultComponent_table_0_div_5_Template, 12, 4, "div", 5);
|
|
404
|
+
i0.ɵɵtemplate(6, SearchResultComponent_table_0_div_6_Template, 4, 0, "div", 6);
|
|
405
|
+
i0.ɵɵelementEnd();
|
|
406
|
+
i0.ɵɵelementStart(7, "thead");
|
|
407
|
+
i0.ɵɵelementStart(8, "tr", 7);
|
|
408
|
+
i0.ɵɵtemplate(9, SearchResultComponent_table_0_th_9_Template, 4, 2, "th", 8);
|
|
409
|
+
i0.ɵɵtemplate(10, SearchResultComponent_table_0_th_10_Template, 7, 3, "th", 9);
|
|
410
|
+
i0.ɵɵtemplate(11, SearchResultComponent_table_0_th_11_Template, 1, 0, "th", 10);
|
|
411
|
+
i0.ɵɵelementEnd();
|
|
412
|
+
i0.ɵɵelementEnd();
|
|
413
|
+
i0.ɵɵelementStart(12, "tbody");
|
|
414
|
+
i0.ɵɵtemplate(13, SearchResultComponent_table_0_ng_container_13_Template, 3, 8, "ng-container", 0);
|
|
415
|
+
i0.ɵɵtemplate(14, SearchResultComponent_table_0_ng_container_14_Template, 4, 11, "ng-container", 0);
|
|
416
|
+
i0.ɵɵelementEnd();
|
|
417
|
+
i0.ɵɵelementEnd();
|
|
418
|
+
} if (rf & 2) {
|
|
419
|
+
const ctx_r0 = i0.ɵɵnextContext();
|
|
420
|
+
i0.ɵɵadvance(3);
|
|
421
|
+
i0.ɵɵtextInterpolate(ctx_r0.caseState ? "Your cases" : "Search result");
|
|
422
|
+
i0.ɵɵadvance(1);
|
|
423
|
+
i0.ɵɵproperty("ngIf", ctx_r0.paginationLimitEnforced);
|
|
424
|
+
i0.ɵɵadvance(1);
|
|
425
|
+
i0.ɵɵproperty("ngIf", ctx_r0.hasResults() || ctx_r0.hasDrafts());
|
|
426
|
+
i0.ɵɵadvance(1);
|
|
427
|
+
i0.ɵɵproperty("ngIf", (ctx_r0.hasResults() || ctx_r0.hasDrafts()) && ctx_r0.selectionEnabled);
|
|
428
|
+
i0.ɵɵadvance(3);
|
|
429
|
+
i0.ɵɵproperty("ngIf", ctx_r0.selectionEnabled);
|
|
430
|
+
i0.ɵɵadvance(1);
|
|
431
|
+
i0.ɵɵproperty("ngForOf", ctx_r0.resultView.columns);
|
|
432
|
+
i0.ɵɵadvance(1);
|
|
433
|
+
i0.ɵɵproperty("ngIf", ctx_r0.activityEnabled());
|
|
434
|
+
i0.ɵɵadvance(2);
|
|
435
|
+
i0.ɵɵproperty("ngIf", ctx_r0.consumerSortingEnabled);
|
|
436
|
+
i0.ɵɵadvance(1);
|
|
437
|
+
i0.ɵɵproperty("ngIf", !ctx_r0.consumerSortingEnabled);
|
|
438
|
+
} }
|
|
439
|
+
function SearchResultComponent_ccd_pagination_1_Template(rf, ctx) { if (rf & 1) {
|
|
440
|
+
const _r78 = i0.ɵɵgetCurrentView();
|
|
441
|
+
i0.ɵɵelementStart(0, "ccd-pagination", 45);
|
|
442
|
+
i0.ɵɵlistener("pageChange", function SearchResultComponent_ccd_pagination_1_Template_ccd_pagination_pageChange_0_listener($event) { i0.ɵɵrestoreView(_r78); const ctx_r77 = i0.ɵɵnextContext(); return ctx_r77.goToPage($event); });
|
|
443
|
+
i0.ɵɵelementEnd();
|
|
444
|
+
} if (rf & 2) {
|
|
445
|
+
const ctx_r1 = i0.ɵɵnextContext();
|
|
446
|
+
i0.ɵɵproperty("visibilityLabel", ctx_r1.hideRows ? "hidden" : "visible")("autoHide", true)("maxSize", 8)("screenReaderPaginationLabel", "Pagination")("screenReaderPageLabel", ctx_r1.page)("screenReaderCurrentLabel", "You're on page");
|
|
447
|
+
} }
|
|
448
|
+
function SearchResultComponent_div_2_Template(rf, ctx) { if (rf & 1) {
|
|
449
|
+
i0.ɵɵelementStart(0, "div", 46);
|
|
450
|
+
i0.ɵɵtext(1, " No cases found. Try using different filters.\n");
|
|
451
|
+
i0.ɵɵelementEnd();
|
|
452
|
+
} }
|
|
453
|
+
export class SearchResultComponent {
|
|
454
|
+
constructor(searchResultViewItemComparatorFactory, appConfig, activityService, caseReferencePipe, placeholderService, browserService, cdr) {
|
|
455
|
+
this.activityService = activityService;
|
|
456
|
+
this.caseReferencePipe = caseReferencePipe;
|
|
457
|
+
this.placeholderService = placeholderService;
|
|
458
|
+
this.browserService = browserService;
|
|
459
|
+
this.cdr = cdr;
|
|
460
|
+
this.ICON = DisplayMode.ICON;
|
|
461
|
+
this.selectionEnabled = false;
|
|
462
|
+
this.showOnlySelected = false;
|
|
463
|
+
this.preSelectedCases = [];
|
|
464
|
+
this.consumerSortingEnabled = false;
|
|
465
|
+
this.selection = new EventEmitter();
|
|
466
|
+
this.changePage = new EventEmitter();
|
|
467
|
+
this.clickCase = new EventEmitter();
|
|
468
|
+
this.sortHandler = new EventEmitter();
|
|
469
|
+
this.paginationLimitEnforced = false;
|
|
470
|
+
this.selected = {};
|
|
471
|
+
this.consumerSortParameters = { column: null, order: null, type: null };
|
|
472
|
+
this.selectedCases = [];
|
|
473
|
+
this.PAGINATION_MAX_ITEM_RESULT = 10000;
|
|
474
|
+
this.searchResultViewItemComparatorFactory = searchResultViewItemComparatorFactory;
|
|
475
|
+
this.paginationPageSize = appConfig.getPaginationPageSize();
|
|
476
|
+
this.hideRows = false;
|
|
477
|
+
}
|
|
478
|
+
get resultTotal() {
|
|
479
|
+
const total = this.paginationMetadata.total_results_count;
|
|
480
|
+
const maximumResultReached = total >= this.PAGINATION_MAX_ITEM_RESULT;
|
|
481
|
+
this.paginationLimitEnforced = maximumResultReached;
|
|
482
|
+
return maximumResultReached ? this.PAGINATION_MAX_ITEM_RESULT : total;
|
|
483
|
+
}
|
|
484
|
+
ngAfterViewInit() {
|
|
485
|
+
if (this.preSelectedCases) {
|
|
486
|
+
for (const preSelectedCase of this.preSelectedCases) {
|
|
487
|
+
if (this.selectedCases && !this.selectedCases.some(aCase => aCase.case_id === preSelectedCase.case_id)) {
|
|
488
|
+
this.selectedCases.push(preSelectedCase);
|
|
489
|
+
}
|
|
490
|
+
}
|
|
491
|
+
}
|
|
492
|
+
this.selection.emit(this.selectedCases);
|
|
493
|
+
}
|
|
494
|
+
ngOnChanges(changes) {
|
|
495
|
+
if (changes['resultView']) {
|
|
496
|
+
this.hideRows = false;
|
|
497
|
+
this.sortParameters = undefined;
|
|
498
|
+
// Clone `resultView` to prevent sorting the external variable
|
|
499
|
+
this.resultView = {
|
|
500
|
+
columns: this.resultView.columns.slice(0),
|
|
501
|
+
results: this.resultView.results.slice(0),
|
|
502
|
+
hasDrafts: this.resultView.hasDrafts
|
|
503
|
+
};
|
|
504
|
+
this.resultView.columns = this.resultView.columns.sort((a, b) => {
|
|
505
|
+
return a.order - b.order;
|
|
506
|
+
});
|
|
507
|
+
this.hydrateResultView();
|
|
508
|
+
this.draftsCount = this.draftsCount ? this.draftsCount : this.numberOfDrafts();
|
|
509
|
+
this.cdr.detectChanges();
|
|
510
|
+
}
|
|
511
|
+
if (changes['page']) {
|
|
512
|
+
this.selected.page = (changes['page']).currentValue;
|
|
513
|
+
this.cdr.detectChanges();
|
|
514
|
+
}
|
|
515
|
+
}
|
|
516
|
+
clearSelection() {
|
|
517
|
+
this.selectedCases = [];
|
|
518
|
+
this.selection.emit(this.selectedCases);
|
|
519
|
+
}
|
|
520
|
+
canBeShared(caseView) {
|
|
521
|
+
return caseView.supplementary_data && caseView.supplementary_data.hasOwnProperty('orgs_assigned_users');
|
|
522
|
+
}
|
|
523
|
+
canAnyBeShared() {
|
|
524
|
+
for (let i = 0, l = this.resultView.results.length; i < l; i++) {
|
|
525
|
+
if (this.canBeShared(this.resultView.results[i])) {
|
|
526
|
+
return true;
|
|
527
|
+
}
|
|
528
|
+
}
|
|
529
|
+
return false;
|
|
530
|
+
}
|
|
531
|
+
selectAll() {
|
|
532
|
+
if (this.allOnPageSelected()) {
|
|
533
|
+
// all cases already selected, so unselect all on this page
|
|
534
|
+
this.resultView.results.forEach(c => {
|
|
535
|
+
this.selectedCases.forEach((s, i) => {
|
|
536
|
+
if (c.case_id === s.case_id) {
|
|
537
|
+
this.selectedCases.splice(i, 1);
|
|
538
|
+
}
|
|
539
|
+
});
|
|
540
|
+
});
|
|
541
|
+
}
|
|
542
|
+
else {
|
|
543
|
+
this.resultView.results.forEach(c => {
|
|
544
|
+
if (!this.isSelected(c) && this.canBeShared(c)) {
|
|
545
|
+
this.selectedCases.push(c);
|
|
546
|
+
}
|
|
547
|
+
});
|
|
548
|
+
}
|
|
549
|
+
this.selection.emit(this.selectedCases);
|
|
550
|
+
}
|
|
551
|
+
changeSelection(c) {
|
|
552
|
+
if (this.isSelected(c)) {
|
|
553
|
+
this.selectedCases.forEach((s, i) => {
|
|
554
|
+
if (c.case_id === s.case_id) {
|
|
555
|
+
this.selectedCases.splice(i, 1);
|
|
556
|
+
}
|
|
557
|
+
});
|
|
558
|
+
}
|
|
559
|
+
else {
|
|
560
|
+
if (this.canBeShared(c)) {
|
|
561
|
+
this.selectedCases.push(c);
|
|
562
|
+
}
|
|
563
|
+
}
|
|
564
|
+
this.selection.emit(this.selectedCases);
|
|
565
|
+
}
|
|
566
|
+
isSelected(c) {
|
|
567
|
+
for (let i = 0, l = this.selectedCases.length; i < l; i++) {
|
|
568
|
+
if (c.case_id === this.selectedCases[i].case_id) {
|
|
569
|
+
return true;
|
|
570
|
+
}
|
|
571
|
+
}
|
|
572
|
+
return false;
|
|
573
|
+
}
|
|
574
|
+
allOnPageSelected() {
|
|
575
|
+
let canBeSharedCount = 0;
|
|
576
|
+
for (let i = 0, l = this.resultView.results.length; i < l; i++) {
|
|
577
|
+
const r = this.resultView.results[i];
|
|
578
|
+
if (this.canBeShared(r)) {
|
|
579
|
+
canBeSharedCount++;
|
|
580
|
+
}
|
|
581
|
+
if (!this.isSelected(r) && this.canBeShared(r)) {
|
|
582
|
+
return false;
|
|
583
|
+
}
|
|
584
|
+
}
|
|
585
|
+
if (canBeSharedCount === 0) {
|
|
586
|
+
return false;
|
|
587
|
+
}
|
|
588
|
+
return true;
|
|
589
|
+
}
|
|
590
|
+
/**
|
|
591
|
+
* Hydrates result view with case field definitions.
|
|
592
|
+
*/
|
|
593
|
+
// A longer term resolution is to move this piece of logic to the backend
|
|
594
|
+
hydrateResultView() {
|
|
595
|
+
this.resultView.results.forEach(result => {
|
|
596
|
+
const caseFields = [];
|
|
597
|
+
Object.keys(result.case_fields).forEach(fieldId => {
|
|
598
|
+
const field = result.case_fields[fieldId];
|
|
599
|
+
caseFields.push(Object.assign(new CaseField(), {
|
|
600
|
+
id: fieldId,
|
|
601
|
+
label: null,
|
|
602
|
+
field_type: {},
|
|
603
|
+
value: field,
|
|
604
|
+
display_context: null,
|
|
605
|
+
}));
|
|
606
|
+
});
|
|
607
|
+
result.hydrated_case_fields = caseFields;
|
|
608
|
+
result.columns = {};
|
|
609
|
+
this.resultView.columns.forEach(col => {
|
|
610
|
+
result.columns[col.case_field_id] = this.buildCaseField(col, result);
|
|
611
|
+
});
|
|
612
|
+
});
|
|
613
|
+
}
|
|
614
|
+
goToPage(page) {
|
|
615
|
+
this.hideRows = true;
|
|
616
|
+
this.selected.init = false;
|
|
617
|
+
this.selected.jurisdiction = this.jurisdiction;
|
|
618
|
+
this.selected.caseType = this.caseType;
|
|
619
|
+
this.selected.caseState = this.caseState;
|
|
620
|
+
this.selected.formGroup = this.caseFilterFG;
|
|
621
|
+
this.selected.metadataFields = this.metadataFields;
|
|
622
|
+
this.selected.page = page;
|
|
623
|
+
// Apply filters
|
|
624
|
+
const queryParams = {};
|
|
625
|
+
queryParams[SearchResultComponent.PARAM_JURISDICTION] = this.selected.jurisdiction ? this.selected.jurisdiction.id : null;
|
|
626
|
+
queryParams[SearchResultComponent.PARAM_CASE_TYPE] = this.selected.caseType ? this.selected.caseType.id : null;
|
|
627
|
+
queryParams[SearchResultComponent.PARAM_CASE_STATE] = this.selected.caseState ? this.selected.caseState.id : null;
|
|
628
|
+
this.changePage.emit({
|
|
629
|
+
selected: this.selected,
|
|
630
|
+
queryParams
|
|
631
|
+
});
|
|
632
|
+
const topContainer = document.getElementById('top');
|
|
633
|
+
if (topContainer) {
|
|
634
|
+
if (document.activeElement instanceof HTMLElement) {
|
|
635
|
+
document.activeElement.blur();
|
|
636
|
+
}
|
|
637
|
+
topContainer.focus();
|
|
638
|
+
}
|
|
639
|
+
}
|
|
640
|
+
buildCaseField(col, result) {
|
|
641
|
+
return Object.assign(new CaseField(), {
|
|
642
|
+
id: col.case_field_id,
|
|
643
|
+
label: col.label,
|
|
644
|
+
field_type: col.case_field_type,
|
|
645
|
+
value: result.case_fields[col.case_field_id],
|
|
646
|
+
display_context_parameter: col.display_context_parameter,
|
|
647
|
+
display_context: col.display_context,
|
|
648
|
+
});
|
|
649
|
+
}
|
|
650
|
+
getColumnsWithPrefix(col, result) {
|
|
651
|
+
col.value = this.draftPrefixOrGet(col, result);
|
|
652
|
+
col.value = this.placeholderService.resolvePlaceholders(result.case_fields, col.value);
|
|
653
|
+
return col;
|
|
654
|
+
}
|
|
655
|
+
hasResults() {
|
|
656
|
+
return this.resultView.results.length && this.paginationMetadata.total_pages_count;
|
|
657
|
+
}
|
|
658
|
+
hasDrafts() {
|
|
659
|
+
return this.resultView.hasDrafts();
|
|
660
|
+
}
|
|
661
|
+
comparator(column) {
|
|
662
|
+
return this.searchResultViewItemComparatorFactory.createSearchResultViewItemComparator(column);
|
|
663
|
+
}
|
|
664
|
+
sort(column) {
|
|
665
|
+
if (this.consumerSortingEnabled) {
|
|
666
|
+
if (column.case_field_id !== this.consumerSortParameters.column) {
|
|
667
|
+
this.consumerSortParameters.order = SortOrder.DESCENDING;
|
|
668
|
+
}
|
|
669
|
+
else {
|
|
670
|
+
this.consumerSortParameters.order = this.consumerSortParameters.order === SortOrder.DESCENDING ?
|
|
671
|
+
SortOrder.ASCENDING :
|
|
672
|
+
SortOrder.DESCENDING;
|
|
673
|
+
}
|
|
674
|
+
this.consumerSortParameters.column = column.case_field_id;
|
|
675
|
+
this.consumerSortParameters.type = column.case_field_type.type;
|
|
676
|
+
this.sortHandler.emit(this.consumerSortParameters);
|
|
677
|
+
}
|
|
678
|
+
else {
|
|
679
|
+
if (this.comparator(column) === undefined) {
|
|
680
|
+
return;
|
|
681
|
+
}
|
|
682
|
+
else if (this.isSortAscending(column)) {
|
|
683
|
+
this.sortParameters = new SortParameters(this.comparator(column), SortOrder.ASCENDING);
|
|
684
|
+
}
|
|
685
|
+
else {
|
|
686
|
+
this.sortParameters = new SortParameters(this.comparator(column), SortOrder.DESCENDING);
|
|
687
|
+
}
|
|
688
|
+
}
|
|
689
|
+
}
|
|
690
|
+
sortWidget(column) {
|
|
691
|
+
let condition = false;
|
|
692
|
+
if (this.consumerSortingEnabled) {
|
|
693
|
+
const isColumn = column.case_field_id === this.consumerSortParameters.column;
|
|
694
|
+
const isAscending = this.consumerSortParameters.order === SortOrder.ASCENDING;
|
|
695
|
+
condition = !isColumn || (isColumn && isAscending);
|
|
696
|
+
}
|
|
697
|
+
else {
|
|
698
|
+
condition = this.isSortAscending(column);
|
|
699
|
+
}
|
|
700
|
+
return condition ? '▼' : '▲';
|
|
701
|
+
}
|
|
702
|
+
activityEnabled() {
|
|
703
|
+
return this.activityService.isEnabled;
|
|
704
|
+
}
|
|
705
|
+
hyphenateIfCaseReferenceOrGet(col, result) {
|
|
706
|
+
if (col.case_field_id === '[CASE_REFERENCE]') {
|
|
707
|
+
return this.caseReferencePipe.transform(result.case_fields[col.case_field_id]);
|
|
708
|
+
}
|
|
709
|
+
else {
|
|
710
|
+
if (col.id) {
|
|
711
|
+
if (col.id === '[CASE_REFERENCE]') {
|
|
712
|
+
return this.caseReferencePipe.transform(result.case_fields[col.id]);
|
|
713
|
+
}
|
|
714
|
+
else {
|
|
715
|
+
return result.case_fields[col.id];
|
|
716
|
+
}
|
|
717
|
+
}
|
|
718
|
+
else {
|
|
719
|
+
return result.case_fields[col.case_field_id];
|
|
720
|
+
}
|
|
721
|
+
}
|
|
722
|
+
}
|
|
723
|
+
draftPrefixOrGet(col, result) {
|
|
724
|
+
return result.case_id.startsWith(DRAFT_PREFIX) ? DRAFT_PREFIX : this.hyphenateIfCaseReferenceOrGet(col, result);
|
|
725
|
+
}
|
|
726
|
+
getFirstResult() {
|
|
727
|
+
const currentPage = (this.selected.page ? this.selected.page : 1);
|
|
728
|
+
return ((currentPage - 1) * this.paginationPageSize) + 1 + this.getDraftsCountIfNotPageOne(currentPage);
|
|
729
|
+
}
|
|
730
|
+
getLastResult() {
|
|
731
|
+
const currentPage = (this.selected.page ? this.selected.page : 1);
|
|
732
|
+
return ((currentPage - 1) * this.paginationPageSize) + this.resultView.results.length + this.getDraftsCountIfNotPageOne(currentPage);
|
|
733
|
+
}
|
|
734
|
+
getTotalResults() {
|
|
735
|
+
const total = this.paginationMetadata.total_results_count + this.draftsCount;
|
|
736
|
+
return total >= this.PAGINATION_MAX_ITEM_RESULT ? this.PAGINATION_MAX_ITEM_RESULT : total;
|
|
737
|
+
}
|
|
738
|
+
prepareCaseLinkUrl(caseId) {
|
|
739
|
+
let url = this.caseLinkUrlTemplate;
|
|
740
|
+
url = url.replace('jurisdiction_id', this.jurisdiction.id);
|
|
741
|
+
url = url.replace('caseType_id', this.caseType.id);
|
|
742
|
+
url = url.replace('case_id', caseId);
|
|
743
|
+
return url;
|
|
744
|
+
}
|
|
745
|
+
goToCase(caseId) {
|
|
746
|
+
this.clickCase.emit({
|
|
747
|
+
caseId
|
|
748
|
+
});
|
|
749
|
+
}
|
|
750
|
+
onKeyUp($event, c) {
|
|
751
|
+
if ($event.key === 'Space') {
|
|
752
|
+
if (this.browserService.isFirefox || this.browserService.isSafari || this.browserService.isIEOrEdge) {
|
|
753
|
+
this.changeSelection(c);
|
|
754
|
+
}
|
|
755
|
+
}
|
|
756
|
+
}
|
|
757
|
+
isSortAscending(column) {
|
|
758
|
+
const currentSortOrder = this.currentSortOrder(column);
|
|
759
|
+
return currentSortOrder === SortOrder.UNSORTED || currentSortOrder === SortOrder.DESCENDING;
|
|
760
|
+
}
|
|
761
|
+
sortLabelText(label, isAscending) {
|
|
762
|
+
return `Sort by ${label} ${isAscending ? 'ascending' : 'descending'}`;
|
|
763
|
+
}
|
|
764
|
+
currentSortOrder(column) {
|
|
765
|
+
let isAscending = true;
|
|
766
|
+
let isDescending = true;
|
|
767
|
+
if (this.comparator(column) === undefined) {
|
|
768
|
+
return SortOrder.UNSORTED;
|
|
769
|
+
}
|
|
770
|
+
for (let i = 0; i < this.resultView.results.length - 1; i++) {
|
|
771
|
+
const comparison = this.comparator(column).compare(this.resultView.results[i], this.resultView.results[i + 1]);
|
|
772
|
+
isDescending = isDescending && comparison <= 0;
|
|
773
|
+
isAscending = isAscending && comparison >= 0;
|
|
774
|
+
if (!isAscending && !isDescending) {
|
|
775
|
+
break;
|
|
776
|
+
}
|
|
777
|
+
}
|
|
778
|
+
return isAscending ? SortOrder.ASCENDING : isDescending ? SortOrder.DESCENDING : SortOrder.UNSORTED;
|
|
779
|
+
}
|
|
780
|
+
getDraftsCountIfNotPageOne(currentPage) {
|
|
781
|
+
return currentPage > 1 ? this.draftsCount : 0;
|
|
782
|
+
}
|
|
783
|
+
numberOfDrafts() {
|
|
784
|
+
return this.resultView.results.filter(_ => _.case_id.startsWith(DRAFT_PREFIX)).length;
|
|
785
|
+
}
|
|
786
|
+
}
|
|
787
|
+
SearchResultComponent.PARAM_JURISDICTION = 'jurisdiction';
|
|
788
|
+
SearchResultComponent.PARAM_CASE_TYPE = 'case-type';
|
|
789
|
+
SearchResultComponent.PARAM_CASE_STATE = 'case-state';
|
|
790
|
+
SearchResultComponent.ɵfac = function SearchResultComponent_Factory(t) { return new (t || SearchResultComponent)(i0.ɵɵdirectiveInject(i1.SearchResultViewItemComparatorFactory), i0.ɵɵdirectiveInject(i2.AbstractAppConfig), i0.ɵɵdirectiveInject(i3.ActivityService), i0.ɵɵdirectiveInject(i4.CaseReferencePipe), i0.ɵɵdirectiveInject(i5.PlaceholderService), i0.ɵɵdirectiveInject(i6.BrowserService), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)); };
|
|
791
|
+
SearchResultComponent.ɵcmp = i0.ɵɵdefineComponent({ type: SearchResultComponent, selectors: [["ccd-search-result"]], inputs: { caseLinkUrlTemplate: "caseLinkUrlTemplate", jurisdiction: "jurisdiction", caseType: "caseType", caseState: "caseState", caseFilterFG: "caseFilterFG", resultView: "resultView", page: "page", paginationMetadata: "paginationMetadata", metadataFields: "metadataFields", selectionEnabled: "selectionEnabled", showOnlySelected: "showOnlySelected", preSelectedCases: "preSelectedCases", consumerSortingEnabled: "consumerSortingEnabled" }, outputs: { selection: "selection", changePage: "changePage", clickCase: "clickCase", sortHandler: "sortHandler" }, features: [i0.ɵɵNgOnChangesFeature], decls: 3, vars: 3, consts: [[4, "ngIf"], [3, "visibilityLabel", "autoHide", "maxSize", "screenReaderPaginationLabel", "screenReaderPageLabel", "screenReaderCurrentLabel", "pageChange", 4, "ngIf"], ["class", "notification", "aria-label", "No cases found. Try using different filters.", 4, "ngIf"], ["id", "search-result-heading__text", "tabindex", "-1", 1, "heading-h2"], ["class", "govuk-warning-text pagination-limit-warning", 4, "ngIf"], ["class", "pagination-top", "role", "status", 4, "ngIf"], ["class", "reset-selection", "attr.aria-label", "Reset selection", 4, "ngIf"], ["scope", "row"], ["class", "govuk-table__checkbox", "scope", "col", 4, "ngIf"], [4, "ngFor", "ngForOf"], ["class", "search-result-column-activity", "style", "width: 110px;", 4, "ngIf"], [1, "govuk-warning-text", "pagination-limit-warning"], ["aria-hidden", "true", 1, "govuk-warning-text__icon"], [1, "govuk-warning-text__text"], [1, "govuk-warning-text__assistive"], ["role", "status", 1, "pagination-top"], ["id", "search-result-summary__text", 1, "text-16"], [1, "govuk-!-font-weight-bold"], ["attr.aria-label", "Reset selection", 1, "reset-selection"], ["href", "javascript:void()", 1, "search-result-reset-link", 3, "click"], ["scope", "col", 1, "govuk-table__checkbox"], [1, "govuk-checkboxes__item"], ["id", "select-all", "name", "select-all", "type", "checkbox", 1, "govuk-checkboxes__input", 3, "checked", "disabled", "change"], ["for", "select-all", 1, "govuk-label", "govuk-checkboxes__label"], [1, "search-result-column-header"], [2, "display", "none"], [1, "search-result-column-label", 3, "click"], ["class", "search-result-column-sort", 4, "ngIf"], [1, "search-result-column-sort"], ["href", "javascript:void(0)", 1, "sort-widget", 3, "innerHTML", "click"], [1, "search-result-column-activity", 2, "width", "110px"], ["class", "search-result-column-cell", "scope", "row", 4, "ngFor", "ngForOf"], ["type", "checkbox", 1, "govuk-checkboxes__input", 3, "id", "name", "checked", "disabled", "change"], [1, "govuk-label", "govuk-checkboxes__label", 3, "for"], ["scope", "row", 1, "search-result-column-cell"], ["class", "govuk-link", 3, "routerLink", 4, "ngIf"], ["class", "text-16", 3, "visibility", 4, "ngIf"], [1, "govuk-link", 3, "routerLink"], ["class", "text-16", 4, "ngIf"], [1, "text-16"], ["ccdLabelSubstitutor", "", 3, "caseField", "contextFields", "elementsToSubstitute", 4, "ngIf", "ngIfElse"], ["case_reference", ""], ["ccdLabelSubstitutor", "", 3, "caseField", "contextFields", "elementsToSubstitute"], [3, "caseId", "displayMode"], ["type", "checkbox", 1, "govuk-checkboxes__input", 3, "id", "name", "checked", "disabled", "change", "keyup"], [3, "visibilityLabel", "autoHide", "maxSize", "screenReaderPaginationLabel", "screenReaderPageLabel", "screenReaderCurrentLabel", "pageChange"], ["aria-label", "No cases found. Try using different filters.", 1, "notification"]], template: function SearchResultComponent_Template(rf, ctx) { if (rf & 1) {
|
|
792
|
+
i0.ɵɵtemplate(0, SearchResultComponent_table_0_Template, 15, 9, "table", 0);
|
|
793
|
+
i0.ɵɵtemplate(1, SearchResultComponent_ccd_pagination_1_Template, 1, 6, "ccd-pagination", 1);
|
|
794
|
+
i0.ɵɵtemplate(2, SearchResultComponent_div_2_Template, 2, 0, "div", 2);
|
|
795
|
+
} if (rf & 2) {
|
|
796
|
+
i0.ɵɵproperty("ngIf", ctx.hasResults() || ctx.hasDrafts());
|
|
797
|
+
i0.ɵɵadvance(1);
|
|
798
|
+
i0.ɵɵproperty("ngIf", ctx.hasResults());
|
|
799
|
+
i0.ɵɵadvance(1);
|
|
800
|
+
i0.ɵɵproperty("ngIf", !(ctx.hasResults() || ctx.hasDrafts()));
|
|
801
|
+
} }, directives: [i7.NgIf, i7.NgForOf, i8.RouterLinkWithHref, i9.LabelSubstitutorDirective, i10.ActivityComponent, i11.PaginationComponent], pipes: [i7.DecimalPipe, i12.PaginatePipe, i4.CaseReferencePipe, i13.SortSearchResultPipe], styles: ["table[_ngcontent-%COMP%] thead[_ngcontent-%COMP%] tr[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{vertical-align:top}table[_ngcontent-%COMP%] tbody[_ngcontent-%COMP%] tr[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{font-size:16px;word-wrap:break-word}table[_ngcontent-%COMP%] tbody[_ngcontent-%COMP%] tr[_ngcontent-%COMP%] td[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{float:left}table[_ngcontent-%COMP%] .caseid-col[_ngcontent-%COMP%]{white-space:nowrap}.notification[_ngcontent-%COMP%]{text-align:center;padding:30px 0;margin-top:75px}a[_ngcontent-%COMP%]:hover{color:#005ea5}.search-result-reset-link[_ngcontent-%COMP%]{padding-right:15px;padding-left:15px}.search-result-column-header[_ngcontent-%COMP%]{width:unset;table-layout:normal}.search-result-column-header[_ngcontent-%COMP%] div[_ngcontent-%COMP%]{display:table-cell;width:auto}@media screen and (max-width:379px){.search-result-column-header[_ngcontent-%COMP%] div[_ngcontent-%COMP%]{display:block;float:right}}.search-result-column-label[_ngcontent-%COMP%]{font-size:16px;font-weight:700;word-wrap:break-word;cursor:pointer;padding-right:15px}.search-result-column-sort[_ngcontent-%COMP%]{font-size:16px}.sort-widget[_ngcontent-%COMP%]{cursor:pointer;text-decoration:none;color:#231f20}span.heading-medium[_ngcontent-%COMP%]{margin-top:-20px}.govuk-table__checkbox[_ngcontent-%COMP%]{vertical-align:middle;padding-left:3px}#search-result-heading__text[_ngcontent-%COMP%]:focus{outline:none}"], changeDetection: 0 });
|
|
802
|
+
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SearchResultComponent, [{
|
|
803
|
+
type: Component,
|
|
804
|
+
args: [{
|
|
805
|
+
selector: 'ccd-search-result',
|
|
806
|
+
templateUrl: './search-result.component.html',
|
|
807
|
+
styleUrls: ['./search-result.component.scss'],
|
|
808
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
|
809
|
+
}]
|
|
810
|
+
}], function () { return [{ type: i1.SearchResultViewItemComparatorFactory }, { type: i2.AbstractAppConfig }, { type: i3.ActivityService }, { type: i4.CaseReferencePipe }, { type: i5.PlaceholderService }, { type: i6.BrowserService }, { type: i0.ChangeDetectorRef }]; }, { caseLinkUrlTemplate: [{
|
|
811
|
+
type: Input
|
|
812
|
+
}], jurisdiction: [{
|
|
813
|
+
type: Input
|
|
814
|
+
}], caseType: [{
|
|
815
|
+
type: Input
|
|
816
|
+
}], caseState: [{
|
|
817
|
+
type: Input
|
|
818
|
+
}], caseFilterFG: [{
|
|
819
|
+
type: Input
|
|
820
|
+
}], resultView: [{
|
|
821
|
+
type: Input
|
|
822
|
+
}], page: [{
|
|
823
|
+
type: Input
|
|
824
|
+
}], paginationMetadata: [{
|
|
825
|
+
type: Input
|
|
826
|
+
}], metadataFields: [{
|
|
827
|
+
type: Input
|
|
828
|
+
}], selectionEnabled: [{
|
|
829
|
+
type: Input
|
|
830
|
+
}], showOnlySelected: [{
|
|
831
|
+
type: Input
|
|
832
|
+
}], preSelectedCases: [{
|
|
833
|
+
type: Input
|
|
834
|
+
}], consumerSortingEnabled: [{
|
|
835
|
+
type: Input
|
|
836
|
+
}], selection: [{
|
|
837
|
+
type: Output
|
|
838
|
+
}], changePage: [{
|
|
839
|
+
type: Output
|
|
840
|
+
}], clickCase: [{
|
|
841
|
+
type: Output
|
|
842
|
+
}], sortHandler: [{
|
|
843
|
+
type: Output
|
|
844
|
+
}] }); })();
|
|
845
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLXJlc3VsdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jY2QtY2FzZS11aS10b29sa2l0L3NyYy9saWIvc2hhcmVkL2NvbXBvbmVudHMvc2VhcmNoLXJlc3VsdC9zZWFyY2gtcmVzdWx0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NjZC1jYXNlLXVpLXRvb2xraXQvc3JjL2xpYi9zaGFyZWQvY29tcG9uZW50cy9zZWFyY2gtcmVzdWx0L3NlYXJjaC1yZXN1bHQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQix1QkFBdUIsRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBYSxNQUFNLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQzVKLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwyREFBMkQsQ0FBQztBQUMvRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDbkUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDbkUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUc1RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUs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QVksQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO0lBQ3hGLENBQUM7O0FBN2JzQix3Q0FBa0IsR0FBRyxjQUFjLENBQUM7QUFDcEMscUNBQWUsR0FBRyxXQUFXLENBQUM7QUFDOUIsc0NBQWdCLEdBQUcsWUFBWSxDQUFDOzBGQUo1QyxxQkFBcUI7MERBQXJCLHFCQUFxQjtRQzVCbEMsMkVBK0hRO1FBRVIsNEZBUWtFO1FBRWxFLHNFQUdNOztRQTlJRSwwREFBaUM7UUFrSXRDLGVBQWtCO1FBQWxCLHVDQUFrQjtRQVNmLGVBQW9DO1FBQXBDLDZEQUFvQzs7dUZEL0c3QixxQkFBcUI7Y0FOakMsU0FBUztlQUFDO2dCQUNULFFBQVEsRUFBRSxtQkFBbUI7Z0JBQzdCLFdBQVcsRUFBRSxnQ0FBZ0M7Z0JBQzdDLFNBQVMsRUFBRSxDQUFDLGdDQUFnQyxDQUFDO2dCQUM3QyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTthQUNoRDtvUkFVUSxtQkFBbUI7a0JBRHpCLEtBQUs7WUFJQyxZQUFZO2tCQURsQixLQUFLO1lBSUMsUUFBUTtrQkFEZCxLQUFLO1lBSUMsU0FBUztrQkFEZixLQUFLO1lBSUMsWUFBWTtrQkFEbEIsS0FBSztZQUlDLFVBQVU7a0JBRGhCLEtBQUs7WUFJQyxJQUFJO2tCQURWLEtBQUs7WUFJQyxrQkFBa0I7a0JBRHhCLEtBQUs7WUFJQyxjQUFjO2tCQURwQixLQUFLO1lBSUMsZ0JBQWdCO2tCQUR0QixLQUFLO1lBSUMsZ0JBQWdCO2tCQUR0QixLQUFLO1lBSUMsZ0JBQWdCO2tCQUR0QixLQUFLO1lBSUMsc0JBQXNCO2tCQUQ1QixLQUFLO1lBSUMsU0FBUztrQkFEZixNQUFNO1lBSUEsVUFBVTtrQkFEaEIsTUFBTTtZQUlBLFNBQVM7a0JBRGYsTUFBTTtZQUlBLFdBQVc7a0JBRGpCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPdXRwdXQsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEFic3RyYWN0QXBwQ29uZmlnIH0gZnJvbSAnLi4vLi4vLi4vYXBwLmNvbmZpZyc7XG5pbXBvcnQgeyBQbGFjZWhvbGRlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL3N1YnN0aXR1dG9yL3NlcnZpY2VzL3BsYWNlaG9sZGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgRGlzcGxheU1vZGUgfSBmcm9tICcuLi8uLi9kb21haW4vYWN0aXZpdHkvYWN0aXZpdHkubW9kZWwnO1xuaW1wb3J0IHsgQ2FzZUZpZWxkIH0gZnJvbSAnLi4vLi4vZG9tYWluL2RlZmluaXRpb24vY2FzZS1maWVsZC5tb2RlbCc7XG5pbXBvcnQgeyBDYXNlU3RhdGUgfSBmcm9tICcuLi8uLi9kb21haW4vZGVmaW5pdGlvbi9jYXNlLXN0YXRlLm1vZGVsJztcbmltcG9ydCB7IENhc2VUeXBlIH0gZnJvbSAnLi4vLi4vZG9tYWluL2RlZmluaXRpb24vY2FzZS10eXBlLm1vZGVsJztcbmltcG9ydCB7IEp1cmlzZGljdGlvbiB9IGZyb20gJy4uLy4uL2RvbWFpbi9kZWZpbml0aW9uL2p1cmlzZGljdGlvbi5tb2RlbCc7XG5pbXBvcnQgeyBEUkFGVF9QUkVGSVggfSBmcm9tICcuLi8uLi9kb21haW4vZHJhZnQubW9kZWwnO1xuaW1wb3J0IHsgUGFnaW5hdGlvbk1ldGFkYXRhIH0gZnJvbSAnLi4vLi4vZG9tYWluL3BhZ2luYXRpb24tbWV0YWRhdGEubW9kZWwnO1xuaW1wb3J0IHsgU2VhcmNoUmVzdWx0Vmlld0NvbHVtbiB9IGZyb20gJy4uLy4uL2RvbWFpbi9zZWFyY2gvc2VhcmNoLXJlc3VsdC12aWV3LWNvbHVtbi5tb2RlbCc7XG5pbXBvcnQgeyBTZWFyY2hSZXN1bHRWaWV3SXRlbSB9IGZyb20gJy4uLy4uL2RvbWFpbi9zZWFyY2gvc2VhcmNoLXJlc3VsdC12aWV3LWl0ZW0ubW9kZWwnO1xuaW1wb3J0IHsgU2VhcmNoUmVzdWx0VmlldyB9IGZyb20gJy4uLy4uL2RvbWFpbi9zZWFyY2gvc2VhcmNoLXJlc3VsdC12aWV3Lm1vZGVsJztcbmltcG9ydCB7IFNlYXJjaFJlc3VsdFZpZXdJdGVtQ29tcGFyYXRvciB9IGZyb20gJy4uLy4uL2RvbWFpbi9zZWFyY2gvc29ydGluZy9zZWFyY2gtcmVzdWx0LXZpZXctaXRlbS1jb21wYXJhdG9yJztcbmltcG9ydCB7IFNvcnRPcmRlciB9IGZyb20gJy4uLy4uL2RvbWFpbi9zZWFyY2gvc29ydGluZy9zb3J0LW9yZGVyJztcbmltcG9ydCB7IFNvcnRQYXJhbWV0ZXJzIH0gZnJvbSAnLi4vLi4vZG9tYWluL3NlYXJjaC9zb3J0aW5nL3NvcnQtcGFyYW1ldGVycyc7XG5pbXBvcnQgeyBDYXNlUmVmZXJlbmNlUGlwZSB9IGZyb20gJy4uLy4uL3BpcGVzL2Nhc2UtcmVmZXJlbmNlL2Nhc2UtcmVmZXJlbmNlLnBpcGUnO1xuaW1wb3J0IHsgQWN0aXZpdHlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvYWN0aXZpdHkvYWN0aXZpdHkuc2VydmljZSc7XG5pbXBvcnQgeyBCcm93c2VyU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2Jyb3dzZXIvYnJvd3Nlci5zZXJ2aWNlJztcbmltcG9ydCB7IFNlYXJjaFJlc3VsdFZpZXdJdGVtQ29tcGFyYXRvckZhY3RvcnkgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9zZWFyY2gtcmVzdWx0L3NvcnRpbmcvc2VhcmNoLXJlc3VsdC12aWV3LWl0ZW0tY29tcGFyYXRvci1mYWN0b3J5JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY2NkLXNlYXJjaC1yZXN1bHQnLFxuICB0ZW1wbGF0ZVVybDogJy4vc2VhcmNoLXJlc3VsdC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3NlYXJjaC1yZXN1bHQuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgU2VhcmNoUmVzdWx0Q29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzLCBBZnRlclZpZXdJbml0IHtcblxuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFBBUkFNX0pVUklTRElDVElPTiA9ICdqdXJpc2RpY3Rpb24nO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFBBUkFNX0NBU0VfVFlQRSA9ICdjYXNlLXR5cGUnO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFBBUkFNX0NBU0VfU1RBVEUgPSAnY2FzZS1zdGF0ZSc7XG5cbiAgcHVibGljIElDT04gPSBEaXNwbGF5TW9kZS5JQ09OO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBjYXNlTGlua1VybFRlbXBsYXRlOiBzdHJpbmc7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGp1cmlzZGljdGlvbjogSnVyaXNkaWN0aW9uO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBjYXNlVHlwZTogQ2FzZVR5cGU7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGNhc2VTdGF0ZTogQ2FzZVN0YXRlO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBjYXNlRmlsdGVyRkc6IEZvcm1Hcm91cDtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgcmVzdWx0VmlldzogU2VhcmNoUmVzdWx0VmlldztcblxuICBASW5wdXQoKVxuICBwdWJsaWMgcGFnZTogbnVtYmVyO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBwYWdpbmF0aW9uTWV0YWRhdGE6IFBhZ2luYXRpb25NZXRhZGF0YTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgbWV0YWRhdGFGaWVsZHM6IHN0cmluZ1tdO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZWxlY3Rpb25FbmFibGVkID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNob3dPbmx5U2VsZWN0ZWQgPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgcHJlU2VsZWN0ZWRDYXNlczogU2VhcmNoUmVzdWx0Vmlld0l0ZW1bXSA9IFtdO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBjb25zdW1lclNvcnRpbmdFbmFibGVkID0gZmFsc2U7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBzZWxlY3Rpb24gPSBuZXcgRXZlbnRFbWl0dGVyPFNlYXJjaFJlc3VsdFZpZXdJdGVtW10+KCk7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBjaGFuZ2VQYWdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIGNsaWNrQ2FzZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBzb3J0SGFuZGxlcjogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgcHVibGljIHBhZ2luYXRpb25MaW1pdEVuZm9yY2VkID0gZmFsc2U7XG5cbiAgcHVibGljIHBhZ2luYXRpb25QYWdlU2l6ZTogbnVtYmVyO1xuXG4gIHB1YmxpYyBoaWRlUm93czogYm9vbGVhbjtcblxuICBwdWJsaWMgc2VsZWN0ZWQ6IHtcbiAgICBpbml0PzogYm9vbGVhbixcbiAgICBqdXJpc2RpY3Rpb24/OiBKdXJpc2RpY3Rpb24sXG4gICAgY2FzZVR5cGU/OiBDYXNlVHlwZSxcbiAgICBjYXNlU3RhdGU/OiBDYXNlU3RhdGUsXG4gICAgZm9ybUdyb3VwPzogRm9ybUdyb3VwLFxuICAgIG1ldGFkYXRhRmllbGRzPzogc3RyaW5nW10sXG4gICAgcGFnZT86IG51bWJlclxuICB9ID0ge307XG5cbiAgcHVibGljIHNvcnRQYXJhbWV0ZXJzOiBTb3J0UGFyYW1ldGVycztcbiAgcHVibGljIHNlYXJjaFJlc3VsdFZpZXdJdGVtQ29tcGFyYXRvckZhY3Rvcnk6IFNlYXJjaFJlc3VsdFZpZXdJdGVtQ29tcGFyYXRvckZhY3Rvcnk7XG4gIHB1YmxpYyBkcmFmdHNDb3VudDogbnVtYmVyO1xuXG4gIHB1YmxpYyBjb25zdW1lclNvcnRQYXJhbWV0ZXJzOiB7IGNvbHVtbjogc3RyaW5nLCBvcmRlcjogU29ydE9yZGVyLCB0eXBlOiBzdHJpbmcgfSA9IHsgY29sdW1uOiBudWxsLCBvcmRlcjogbnVsbCwgdHlwZTogbnVsbCB9O1xuXG4gIHB1YmxpYyBzZWxlY3RlZENhc2VzOiBTZWFyY2hSZXN1bHRWaWV3SXRlbVtdID0gW107XG5cbiAgcHJpdmF0ZSByZWFkb25seSBQQUdJTkFUSU9OX01BWF9JVEVNX1JFU1VMVCA9IDEwMDAwO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHNlYXJjaFJlc3VsdFZpZXdJdGVtQ29tcGFyYXRvckZhY3Rvcnk6IFNlYXJjaFJlc3VsdFZpZXdJdGVtQ29tcGFyYXRvckZhY3RvcnksXG4gICAgYXBwQ29uZmlnOiBBYnN0cmFjdEFwcENvbmZpZyxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGFjdGl2aXR5U2VydmljZTogQWN0aXZpdHlTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgY2FzZVJlZmVyZW5jZVBpcGU6IENhc2VSZWZlcmVuY2VQaXBlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcGxhY2Vob2xkZXJTZXJ2aWNlOiBQbGFjZWhvbGRlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBicm93c2VyU2VydmljZTogQnJvd3NlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBjZHI6IENoYW5nZURldGVjdG9yUmVmXG4gICkge1xuICAgIHRoaXMuc2VhcmNoUmVzdWx0Vmlld0l0ZW1Db21wYXJhdG9yRmFjdG9yeSA9IHNlYXJjaFJlc3VsdFZpZXdJdGVtQ29tcGFyYXRvckZhY3Rvcnk7XG4gICAgdGhpcy5wYWdpbmF0aW9uUGFnZVNpemUgPSBhcHBDb25maWcuZ2V0UGFnaW5hdGlvblBhZ2VTaXplKCk7XG4gICAgdGhpcy5oaWRlUm93cyA9IGZhbHNlO1xuICB9XG5cbiAgcHVibGljIGdldCByZXN1bHRUb3RhbCgpOiBudW1iZXIge1xuICAgIGNvbnN0IHRvdGFsID0gdGhpcy5wYWdpbmF0aW9uTWV0YWRhdGEudG90YWxfcmVzdWx0c19jb3VudDtcbiAgICBjb25zdCBtYXhpbXVtUmVzdWx0UmVhY2hlZCA9IHRvdGFsID49IHRoaXMuUEFHSU5BVElPTl9NQVhfSVRFTV9SRVNVTFQ7XG4gICAgdGhpcy5wYWdpbmF0aW9uTGltaXRFbmZvcmNlZCA9IG1heGltdW1SZXN1bHRSZWFjaGVkO1xuXG4gICAgcmV0dXJuIG1heGltdW1SZXN1bHRSZWFjaGVkID8gdGhpcy5QQUdJTkFUSU9OX01BWF9JVEVNX1JFU1VMVCA6IHRvdGFsO1xuICB9XG5cbiAgcHVibGljIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5wcmVTZWxlY3RlZENhc2VzKSB7XG4gICAgICBmb3IgKGNvbnN0IHByZVNlbGVjdGVkQ2FzZSBvZiB0aGlzLnByZVNlbGVjdGVkQ2FzZXMpIHtcbiAgICAgICAgaWYgKHRoaXMuc2VsZWN0ZWRDYXNlcyAmJiAhdGhpcy5zZWxlY3RlZENhc2VzLnNvbWUoYUNhc2UgPT4gYUNhc2UuY2FzZV9pZCA9PT0gcHJlU2VsZWN0ZWRDYXNlLmNhc2VfaWQpKSB7XG4gICAgICAgICAgdGhpcy5zZWxlY3RlZENhc2VzLnB1c2gocHJlU2VsZWN0ZWRDYXNlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICB0aGlzLnNlbGVjdGlvbi5lbWl0KHRoaXMuc2VsZWN0ZWRDYXNlcyk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuXG4gICAgaWYgKGNoYW5nZXNbJ3Jlc3VsdFZpZXcnXSkge1xuICAgICAgdGhpcy5oaWRlUm93cyA9IGZhbHNlO1xuXG4gICAgICB0aGlzLnNvcnRQYXJhbWV0ZXJzID0gdW5kZWZpbmVkO1xuICAgICAgLy8gQ2xvbmUgYHJlc3VsdFZpZXdgIHRvIHByZXZlbnQgc29ydGluZyB0aGUgZXh0ZXJuYWwgdmFyaWFibGVcbiAgICAgIHRoaXMucmVzdWx0VmlldyA9IHtcbiAgICAgICAgY29sdW1uczogdGhpcy5yZXN1bHRWaWV3LmNvbHVtbnMuc2xpY2UoMCksXG4gICAgICAgIHJlc3VsdHM6IHRoaXMucmVzdWx0Vmlldy5yZXN1bHRzLnNsaWNlKDApLFxuICAgICAgICBoYXNEcmFmdHM6IHRoaXMucmVzdWx0Vmlldy5oYXNEcmFmdHNcbiAgICAgIH07XG5cbiAgICAgIHRoaXMucmVzdWx0Vmlldy5jb2x1bW5zID0gdGhpcy5yZXN1bHRWaWV3LmNvbHVtbnMuc29ydCgoYTogU2VhcmNoUmVzdWx0Vmlld0NvbHVtbiwgYjogU2VhcmNoUmVzdWx0Vmlld0NvbHVtbikgPT4ge1xuICAgICAgICByZXR1cm4gYS5vcmRlciAtIGIub3JkZXI7XG4gICAgICB9KTtcblxuICAgICAgdGhpcy5oeWRyYXRlUmVzdWx0VmlldygpO1xuICAgICAgdGhpcy5kcmFmdHNDb3VudCA9IHRoaXMuZHJhZnRzQ291bnQgPyB0aGlzLmRyYWZ0c0NvdW50IDogdGhpcy5udW1iZXJPZkRyYWZ0cygpO1xuXG4gICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuICAgIGlmIChjaGFuZ2VzWydwYWdlJ10pIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWQucGFnZSA9IChjaGFuZ2VzWydwYWdlJ10pLmN1cnJlbnRWYWx1ZTtcbiAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgY2xlYXJTZWxlY3Rpb24oKTogdm9pZCB7XG4gICAgdGhpcy5zZWxlY3RlZENhc2VzID0gW107XG4gICAgdGhpcy5zZWxlY3Rpb24uZW1pdCh0aGlzLnNlbGVjdGVkQ2FzZXMpO1xuICB9XG5cbiAgcHVibGljIGNhbkJlU2hhcmVkKGNhc2VWaWV3OiBTZWFyY2hSZXN1bHRWaWV3SXRlbSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBjYXNlVmlldy5zdXBwbGVtZW50YXJ5X2RhdGEgJiYgY2FzZVZpZXcuc3VwcGxlbWVudGFyeV9kYXRhLmhhc093blByb3BlcnR5KCdvcmdzX2Fzc2lnbmVkX3VzZXJzJyk7XG4gIH1cblxuICBwdWJsaWMgY2FuQW55QmVTaGFyZWQoKTogYm9vbGVhbiB7XG4gICAgZm9yIChsZXQgaSA9IDAsIGwgPSB0aGlzLnJlc3VsdFZpZXcucmVzdWx0cy5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgIGlmICh0aGlzLmNhbkJlU2hhcmVkKHRoaXMucmVzdWx0Vmlldy5yZXN1bHRzW2ldKSkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgcHVibGljIHNlbGVjdEFsbCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5hbGxPblBhZ2VTZWxlY3RlZCgpKSB7XG4gICAgICAvLyBhbGwgY2FzZXMgYWxyZWFkeSBzZWxlY3RlZCwgc28gdW5zZWxlY3QgYWxsIG9uIHRoaXMgcGFnZVxuICAgICAgdGhpcy5yZXN1bHRWaWV3LnJlc3VsdHMuZm9yRWFjaChjID0+IHtcbiAgICAgICAgdGhpcy5zZWxlY3RlZENhc2VzLmZvckVhY2goKHMsIGkpID0+IHtcbiAgICAgICAgICBpZiAoYy5jYXNlX2lkID09PSBzLmNhc2VfaWQpIHtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRDYXNlcy5zcGxpY2UoaSwgMSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnJlc3VsdFZpZXcucmVzdWx0cy5mb3JFYWNoKGMgPT4ge1xuICAgICAgICBpZiAoIXRoaXMuaXNTZWxlY3RlZChjKSAmJiB0aGlzLmNhbkJlU2hhcmVkKGMpKSB7XG4gICAgICAgICAgdGhpcy5zZWxlY3RlZENhc2VzLnB1c2goYyk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgICB0aGlzLnNlbGVjdGlvbi5lbWl0KHRoaXMuc2VsZWN0ZWRDYXNlcyk7XG4gIH1cblxuICBwdWJsaWMgY2hhbmdlU2VsZWN0aW9uKGM6IFNlYXJjaFJlc3VsdFZpZXdJdGVtKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuaXNTZWxlY3RlZChjKSkge1xuICAgICAgdGhpcy5zZWxlY3RlZENhc2VzLmZvckVhY2goKHMsIGkpID0+IHtcbiAgICAgICAgaWYgKGMuY2FzZV9pZCA9PT0gcy5jYXNlX2lkKSB7XG4gICAgICAgICAgdGhpcy5zZWxlY3RlZENhc2VzLnNwbGljZShpLCAxKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICh0aGlzLmNhbkJlU2hhcmVkKGMpKSB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRDYXNlcy5wdXNoKGMpO1xuICAgICAgfVxuICAgIH1cbiAgICB0aGlzLnNlbGVjdGlvbi5lbWl0KHRoaXMuc2VsZWN0ZWRDYXNlcyk7XG4gIH1cblxuICBwdWJsaWMgaXNTZWxlY3RlZChjOiBTZWFyY2hSZXN1bHRWaWV3SXRlbSk6IGJvb2xlYW4ge1xuICAgIGZvciAobGV0IGkgPSAwLCBsID0gdGhpcy5zZWxlY3RlZENhc2VzLmxlbmd0aDsgaSA8IGw7IGkrKykge1xuICAgICAgaWYgKGMuY2FzZV9pZCA9PT0gdGhpcy5zZWxlY3RlZENhc2VzW2ldLmNhc2VfaWQpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHB1YmxpYyBhbGxPblBhZ2VTZWxlY3RlZCgpOiBib29sZWFuIHtcbiAgICBsZXQgY2FuQmVTaGFyZWRDb3VudCA9IDA7XG4gICAgZm9yIChsZXQgaSA9IDAsIGwgPSB0aGlzLnJlc3VsdFZpZXcucmVzdWx0cy5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgIGNvbnN0IHIgPSB0aGlzLnJlc3VsdFZpZXcucmVzdWx0c1tpXTtcbiAgICAgIGlmICh0aGlzLmNhbkJlU2hhcmVkKHIpKSB7XG4gICAgICAgIGNhbkJlU2hhcmVkQ291bnQgKys7XG4gICAgICB9XG4gICAgICBpZiAoIXRoaXMuaXNTZWxlY3RlZChyKSAmJiB0aGlzLmNhbkJlU2hhcmVkKHIpKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG4gICAgaWYgKGNhbkJlU2hhcmVkQ291bnQgPT09IDApIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICAvKipcbiAgICogSHlkcmF0ZXMgcmVzdWx0IHZpZXcgd2l0aCBjYXNlIGZpZWxkIGRlZmluaXRpb25zLlxuICAgKi9cbiAgLy8gQSBsb25nZXIgdGVybSByZXNvbHV0aW9uIGlzIHRvIG1vdmUgdGhpcyBwaWVjZSBvZiBsb2dpYyB0byB0aGUgYmFja2VuZFxuICBwdWJsaWMgaHlkcmF0ZVJlc3VsdFZpZXcoKTogdm9pZCB7XG4gICAgdGhpcy5yZXN1bHRWaWV3LnJlc3VsdHMuZm9yRWFjaChyZXN1bHQgPT4ge1xuICAgICAgY29uc3QgY2FzZUZpZWxkcyA9IFtdO1xuXG4gICAgICBPYmplY3Qua2V5cyhyZXN1bHQuY2FzZV9maWVsZHMpLmZvckVhY2goZmllbGRJZCA9PiB7XG5cbiAgICAgICAgY29uc3QgZmllbGQgPSByZXN1bHQuY2FzZV9maWVsZHNbZmllbGRJZF07XG5cbiAgICAgICAgY2FzZUZpZWxkcy5wdXNoKE9iamVjdC5hc3NpZ24obmV3IENhc2VGaWVsZCgpLCB7XG4gICAgICAgICAgaWQ6IGZpZWxkSWQsXG4gICAgICAgICAgbGFiZWw6IG51bGwsXG4gICAgICAgICAgZmllbGRfdHlwZToge30sXG4gICAgICAgICAgdmFsdWU6IGZpZWxkLFxuICAgICAgICAgIGRpc3BsYXlfY29udGV4dDogbnVsbCxcbiAgICAgICAgfSkpO1xuICAgICAgfSk7XG5cbiAgICAgIHJlc3VsdC5oeWRyYXRlZF9jYXNlX2ZpZWxkcyA9IGNhc2VGaWVsZHM7XG4gICAgICByZXN1bHQuY29sdW1ucyA9IHt9O1xuXG4gICAgICB0aGlzLnJlc3VsdFZpZXcuY29sdW1ucy5mb3JFYWNoKGNvbCA9PiB7XG4gICAgICAgIHJlc3VsdC5jb2x1bW5zW2NvbC5jYXNlX2ZpZWxkX2lkXSA9IHRoaXMuYnVpbGRDYXNlRmllbGQoY29sLCByZXN1bHQpO1xuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgfVxuXG4gIHB1YmxpYyBnb1RvUGFnZShwYWdlKTogdm9pZCB7XG4gICAgdGhpcy5oaWRlUm93cyA9IHRydWU7XG4gICAgdGhpcy5zZWxlY3RlZC5pbml0ID0gZmFsc2U7XG4gICAgdGhpcy5zZWxlY3RlZC5qdXJpc2RpY3Rpb24gPSB0aGlzLmp1cmlzZGljdGlvbjtcbiAgICB0aGlzLnNlbGVjdGVkLmNhc2VUeXBlID0gdGhpcy5jYXNlVHlwZTtcbiAgICB0aGlzLnNlbGVjdGVkLmNhc2VTdGF0ZSA9IHRoaXMuY2FzZVN0YXRlO1xuICAgIHRoaXMuc2VsZWN0ZWQuZm9ybUdyb3VwID0gdGhpcy5jYXNlRmlsdGVyRkc7XG4gICAgdGhpcy5zZWxlY3RlZC5tZXRhZGF0YUZpZWxkcyA9IHRoaXMubWV0YWRhdGFGaWVsZHM7XG4gICAgdGhpcy5zZWxlY3RlZC5wYWdlID0gcGFnZTtcbiAgICAvLyBBcHBseSBmaWx0ZXJzXG4gICAgY29uc3QgcXVlcnlQYXJhbXMgPSB7fTtcbiAgICBxdWVyeVBhcmFtc1tTZWFyY2hSZXN1bHRDb21wb25lbnQuUEFSQU1fSlVSSVNESUNUSU9OXSA9IHRoaXMuc2VsZWN0ZWQuanVyaXNkaWN0aW9uID8gdGhpcy5zZWxlY3RlZC5qdXJpc2RpY3Rpb24uaWQgOiBudWxsO1xuICAgIHF1ZXJ5UGFyYW1zW1NlYXJjaFJlc3VsdENvbXBvbmVudC5QQVJBTV9DQVNFX1RZUEVdID0gdGhpcy5zZWxlY3RlZC5jYXNlVHlwZSA/IHRoaXMuc2VsZWN0ZWQuY2FzZVR5cGUuaWQgOiBudWxsO1xuICAgIHF1ZXJ5UGFyYW1zW1NlYXJjaFJlc3VsdENvbXBvbmVudC5QQVJBTV9DQVNFX1NUQVRFXSA9IHRoaXMuc2VsZWN0ZWQuY2FzZVN0YXRlID8gdGhpcy5zZWxlY3RlZC5jYXNlU3RhdGUuaWQgOiBudWxsO1xuICAgIHRoaXMuY2hhbmdlUGFnZS5lbWl0KHtcbiAgICAgIHNlbGVjdGVkOiB0aGlzLnNlbGVjdGVkLFxuICAgICAgcXVlcnlQYXJhbXNcbiAgICB9KTtcblxuICAgIGNvbnN0IHRvcENvbnRhaW5lciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0b3AnKTtcbiAgICBpZiAodG9wQ29udGFpbmVyKSB7XG4gICAgICBpZiAoZG9jdW1lbnQuYWN0aXZlRWxlbWVudCBpbnN0YW5jZW9mIEhUTUxFbGVtZW50KSB7XG4gICAgICAgIGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQuYmx1cigpO1xuICAgICAgfVxuICAgICAgdG9wQ29udGFpbmVyLmZvY3VzKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGJ1aWxkQ2FzZUZpZWxkKGNvbDogU2VhcmNoUmVzdWx0Vmlld0NvbHVtbiwgcmVzdWx0OiBTZWFyY2hSZXN1bHRWaWV3SXRlbSk6IENhc2VGaWVsZCB7XG4gICAgcmV0dXJuIE9iamVjdC5hc3NpZ24obmV3IENhc2VGaWVsZCgpLCB7XG4gICAgICBpZDogY29sLmNhc2VfZmllbGRfaWQsXG4gICAgICBsYWJlbDogY29sLmxhYmVsLFxuICAgICAgZmllbGRfdHlwZTogY29sLmNhc2VfZmllbGRfdHlwZSxcbiAgICAgIHZhbHVlOiByZXN1bHQuY2FzZV9maWVsZHNbY29sLmNhc2VfZmllbGRfaWRdLFxuICAgICAgZGlzcGxheV9jb250ZXh0X3BhcmFtZXRlcjogY29sLmRpc3BsYXlfY29udGV4dF9wYXJhbWV0ZXIsXG4gICAgICBkaXNwbGF5X2NvbnRleHQ6IGNvbC5kaXNwbGF5X2NvbnRleHQsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0Q29sdW1uc1dpdGhQcmVmaXgoY29sOiBDYXNlRmllbGQsIHJlc3VsdDogU2VhcmNoUmVzdWx0Vmlld0l0ZW0pOiBDYXNlRmllbGQge1xuICAgIGNvbC52YWx1ZSA9IHRoaXMuZHJhZnRQcmVmaXhPckdldChjb2wsIHJlc3VsdCk7XG4gICAgY29sLnZhbHVlID0gdGhpcy5wbGFjZWhvbGRlclNlcnZpY2UucmVzb2x2ZVBsYWNlaG9sZGVycyhyZXN1bHQuY2FzZV9maWVsZHMsIGNvbC52YWx1ZSk7XG4gICAgcmV0dXJuIGNvbDtcbiAgfVxuXG4gIHB1YmxpYyBoYXNSZXN1bHRzKCk6IGFueSB7XG4gICAgcmV0dXJuIHRoaXMucmVzdWx0Vmlldy5yZXN1bHRzLmxlbmd0aCAmJiB0aGlzLnBhZ2luYXRpb25NZXRhZGF0YS50b3RhbF9wYWdlc19jb3VudDtcbiAgfVxuXG4gIHB1YmxpYyBoYXNEcmFmdHMoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMucmVzdWx0Vmlldy5oYXNEcmFmdHMoKTtcbiAgfVxuXG4gIHB1YmxpYyBjb21wYXJhdG9yKGNvbHVtbjogU2VhcmNoUmVzdWx0Vmlld0NvbHVtbik6IFNlYXJjaFJlc3VsdFZpZXdJdGVtQ29tcGFyYXRvciB7XG4gICAgcmV0dXJuIHRoaXMuc2VhcmNoUmVzdWx0Vmlld0l0ZW1Db21wYXJhdG9yRmFjdG9yeS5jcmVhdGVTZWFyY2hSZXN1bHRWaWV3SXRlbUNvbXBhcmF0b3IoY29sdW1uKTtcbiAgfVxuXG4gIHB1YmxpYyBzb3J0KGNvbHVtbjogU2VhcmNoUmVzdWx0Vmlld0NvbHVtbikge1xuICAgIGlmICh0aGlzLmNvbnN1bWVyU29ydGluZ0VuYWJsZWQpIHtcbiAgICAgIGlmIChjb2x1bW4uY2FzZV9maWVsZF9pZCAhPT0gdGhpcy5jb25zdW1lclNvcnRQYXJhbWV0ZXJzLmNvbHVtbikge1xuICAgICAgICB0aGlzLmNvbnN1bWVyU29ydFBhcmFtZXRlcnMub3JkZXIgPSBTb3J0T3JkZXIuREVTQ0VORElORztcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuY29uc3VtZXJTb3J0UGFyYW1ldGVycy5vcmRlciA9IHRoaXMuY29uc3VtZXJTb3J0UGFyYW1ldGVycy5vcmRlciA9PT0gU29ydE9yZGVyLkRFU0NFTkRJTkcgP1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTb3J0T3JkZXIuQVNDRU5ESU5HIDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU29ydE9yZGVyLkRFU0NFTkRJTkc7XG4gICAgICB9XG4gICAgICB0aGlzLmNvbnN1bWVyU29ydFBhcmFtZXRlcnMuY29sdW1uID0gY29sdW1uLmNhc2VfZmllbGRfaWQ7XG4gICAgICB0aGlzLmNvbnN1bWVyU29ydFBhcmFtZXRlcnMudHlwZSA9IGNvbHVtbi5jYXNlX2ZpZWxkX3R5cGUudHlwZTtcbiAgICAgIHRoaXMuc29ydEhhbmRsZXIuZW1pdCh0aGlzLmNvbnN1bWVyU29ydFBhcmFtZXRlcnMpO1xuICAgIH0gZWxzZSB7XG4gICAgICBpZiAodGhpcy5jb21wYXJhdG9yKGNvbHVtbikgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9IGVsc2UgaWYgKHRoaXMuaXNTb3J0QXNjZW5kaW5nKGNvbHVtbikpIHtcbiAgICAgICAgdGhpcy5zb3J0UGFyYW1ldGVycyA9IG5ldyBTb3J0UGFyYW1ldGVycyh0aGlzLmNvbXBhcmF0b3IoY29sdW1uKSwgU29ydE9yZGVyLkFTQ0VORElORyk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnNvcnRQYXJhbWV0ZXJzID0gbmV3IFNvcnRQYXJhbWV0ZXJzKHRoaXMuY29tcGFyYXRvcihjb2x1bW4pLCBTb3J0T3JkZXIuREVTQ0VORElORyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHNvcnRXaWRnZXQoY29sdW1uOiBTZWFyY2hSZXN1bHRWaWV3Q29sdW1uKSB7XG4gICAgbGV0IGNvbmRpdGlvbiA9IGZhbHNlO1xuICAgIGlmICh0aGlzLmNvbnN1bWVyU29ydGluZ0VuYWJsZWQpIHtcbiAgICAgIGNvbnN0IGlzQ29sdW1uID0gY29sdW1uLmNhc2VfZmllbGRfaWQgPT09IHRoaXMuY29uc3VtZXJTb3J0UGFyYW1ldGVycy5jb2x1bW47XG4gICAgICBjb25zdCBpc0FzY2VuZGluZyA9IHRoaXMuY29uc3VtZXJTb3J0UGFyYW1ldGVycy5vcmRlciA9PT0gU29ydE9yZGVyLkFTQ0VORElORztcbiAgICAgIGNvbmRpdGlvbiA9ICFpc0NvbHVtbiB8fCAoaXNDb2x1bW4gJiYgaXNBc2NlbmRpbmcpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25kaXRpb24gPSB0aGlzLmlzU29ydEFzY2VuZGluZyhjb2x1bW4pO1xuICAgIH1cblxuICAgIHJldHVybiBjb25kaXRpb24gPyAnJiM5NjYwOycgOiAnJiM5NjUwOyc7XG4gIH1cblxuICBwdWJsaWMgYWN0aXZpdHlFbmFibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmFjdGl2aXR5U2VydmljZS5pc0VuYWJsZWQ7XG4gIH1cblxuICBwdWJsaWMgaHlwaGVuYXRlSWZDYXNlUmVmZXJlbmNlT3JHZXQoY29sLCByZXN1bHQpOiBhbnkge1xuICAgIGlmIChjb2wuY2FzZV9maWVsZF9pZCA9PT0gJ1tDQVNFX1JFRkVSRU5DRV0nKSB7XG4gICAgICByZXR1cm4gdGhpcy5jYXNlUmVmZXJlbmNlUGlwZS50cmFuc2Zvcm0ocmVzdWx0LmNhc2VfZmllbGRzW2NvbC5jYXNlX2ZpZWxkX2lkXSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmIChjb2wuaWQpIHtcbiAgICAgICAgaWYgKGNvbC5pZCA9PT0gJ1tDQVNFX1JFRkVSRU5DRV0nKSB7XG4gICAgICAgICAgcmV0dXJuIHRoaXMuY2FzZVJlZmVyZW5jZVBpcGUudHJhbnNmb3JtKHJlc3VsdC5jYXNlX2ZpZWxkc1tjb2wuaWRdKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXR1cm4gcmVzdWx0LmNhc2VfZmllbGRzW2NvbC5pZF07XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiByZXN1bHQuY2FzZV9maWVsZHNbY29sLmNhc2VfZmllbGRfaWRdO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBkcmFmdFByZWZpeE9yR2V0KGNvbCwgcmVzdWx0KTogYW55IHtcbiAgICByZXR1cm4gcmVzdWx0LmNhc2VfaWQuc3RhcnRzV2l0aChEUkFGVF9QUkVGSVgpID8gRFJBRlRfUFJFRklYIDogdGhpcy5oeXBoZW5hdGVJZkNhc2VSZWZlcmVuY2VPckdldChjb2wsIHJlc3VsdCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0Rmlyc3RSZXN1bHQoKTogbnVtYmVyIHtcbiAgICBjb25zdCBjdXJyZW50UGFnZSA9ICh0aGlzLnNlbGVjdGVkLnBhZ2UgPyB0aGlzLnNlbGVjdGVkLnBhZ2UgOiAxKTtcbiAgICByZXR1cm4gKChjdXJyZW50UGFnZSAtIDEpICogdGhpcy5wYWdpbmF0aW9uUGFnZVNpemUpICsgMSArIHRoaXMuZ2V0RHJhZnRzQ291bnRJZk5vdFBhZ2VPbmUoY3VycmVudFBhZ2UpO1xuICB9XG5cbiAgcHVibGljIGdldExhc3RSZXN1bHQoKTogbnVtYmVyIHtcbiAgICBjb25zdCBjdXJyZW50UGFnZSA9ICh0aGlzLnNlbGVjdGVkLnBhZ2UgPyB0aGlzLnNlbGVjdGVkLnBhZ2UgOiAxKTtcbiAgICByZXR1cm4gKChjdXJyZW50UGFnZSAtIDEpICogdGhpcy5wYWdpbmF0aW9uUGFnZVNpemUpICsgdGhpcy5yZXN1bHRWaWV3LnJlc3VsdHMubGVuZ3RoICsgdGhpcy5nZXREcmFmdHNDb3VudElmTm90UGFnZU9uZShjdXJyZW50UGFnZSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0VG90YWxSZXN1bHRzKCk6IG51bWJlciB7XG4gICAgY29uc3QgdG90YWwgPSB0aGlzLnBhZ2luYXRpb25NZXRhZGF0YS50b3RhbF9yZXN1bHRzX2NvdW50ICsgdGhpcy5kcmFmdHNDb3VudDtcblxuICAgIHJldHVybiB0b3RhbCA+PSB0aGlzLlBBR0lOQVRJT05fTUFYX0lURU1fUkVTVUxUID8gdGhpcy5QQUdJTkFUSU9OX01BWF9JVEVNX1JFU1VMVCA6IHRvdGFsO1xuICB9XG5cbiAgcHVibGljIHByZXBhcmVDYXNlTGlua1VybChjYXNlSWQ6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgbGV0IHVybCA9IHRoaXMuY2FzZUxpbmtVcmxUZW1wbGF0ZTtcbiAgICB1cmwgPSB1cmwucmVwbGFjZSgnanVyaXNkaWN0aW9uX2lkJywgdGhpcy5qdXJpc2RpY3Rpb24uaWQpO1xuICAgIHVybCA9IHVybC5yZXBsYWNlKCdjYXNlVHlwZV9pZCcsIHRoaXMuY2FzZVR5cGUuaWQpO1xuICAgIHVybCA9IHVybC5yZXBsYWNlKCdjYXNlX2lkJywgY2FzZUlkKTtcblxuICAgIHJldHVybiB1cmw7XG4gIH1cblxuICBwdWJsaWMgZ29Ub0Nhc2UoY2FzZUlkOiBzdHJpbmcpIHtcbiAgICB0aGlzLmNsaWNrQ2FzZS5lbWl0KHtcbiAgICAgIGNhc2VJZFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG9uS2V5VXAoJGV2ZW50OiBLZXlib2FyZEV2ZW50LCBjOiBTZWFyY2hSZXN1bHRWaWV3SXRlbSk6IHZvaWQge1xuICAgIGlmICgkZXZlbnQua2V5ID09PSAnU3BhY2UnKSB7XG4gICAgICBpZiAodGhpcy5icm93c2VyU2VydmljZS5pc0ZpcmVmb3ggfHwgdGhpcy5icm93c2VyU2VydmljZS5pc1NhZmFyaSB8fCB0aGlzLmJyb3dzZXJTZXJ2aWNlLmlzSUVPckVkZ2UpIHtcbiAgICAgICAgdGhpcy5jaGFuZ2VTZWxlY3Rpb24oYyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGlzU29ydEFzY2VuZGluZyhjb2x1bW46IFNlYXJjaFJlc3VsdFZpZXdDb2x1bW4pOiBib29sZWFuIHtcbiAgICBjb25zdCBjdXJyZW50U29ydE9yZGVyID0gdGhpcy5jdXJyZW50U29ydE9yZGVyKGNvbHVtbik7XG5cbiAgICByZXR1cm4gY3VycmVudFNvcnRPcmRlciA9PT0gU29ydE9yZGVyLlVOU09SVEVEIHx8IGN1cnJlbnRTb3J0T3JkZXIgPT09IFNvcnRPcmRlci5ERVNDRU5ESU5HO1xuICB9XG5cbiAgcHVibGljIHNvcnRMYWJlbFRleHQobGFiZWw6IHN0cmluZywgaXNBc2NlbmRpbmc6IGJvb2xlYW4pOiBzdHJpbmcge1xuICAgIHJldHVybiBgU29ydCBieSAke2xhYmVsfSAkeyBpc0FzY2VuZGluZyA/ICdhc2NlbmRpbmcnIDogJ2Rlc2NlbmRpbmcnfWA7XG4gIH1cblxuICBwcml2YXRlIGN1cnJlbnRTb3J0T3JkZXIoY29sdW1uOiBTZWFyY2hSZXN1bHRWaWV3Q29sdW1uKTogU29ydE9yZGVyIHtcblxuICAgIGxldCBpc0FzY2VuZGluZyA9IHRydWU7XG4gICAgbGV0IGlzRGVzY2VuZGluZyA9IHRydWU7XG5cbiAgICBpZiAodGhpcy5jb21wYXJhdG9yKGNvbHVtbikgPT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuIFNvcnRPcmRlci5VTlNPUlRFRDtcbiAgICB9XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnJlc3VsdFZpZXcucmVzdWx0cy5sZW5ndGggLSAxOyBpKyspIHtcbiAgICAgIGNvbnN0IGNvbXBhcmlzb24gPSB0aGlzLmNvbXBhcmF0b3IoY29sdW1uKS5jb21wYXJlKHRoaXMucmVzdWx0Vmlldy5yZXN1bHRzW2ldLCB0aGlzLnJlc3VsdFZpZXcucmVzdWx0c1tpICsgMV0pO1xuICAgICAgaXNEZXNjZW5kaW5nID0gaXNEZXNjZW5kaW5nICYmIGNvbXBhcmlzb24gPD0gMDtcbiAgICAgIGlzQXNjZW5kaW5nID0gaXNBc2NlbmRpbmcgJiYgY29tcGFyaXNvbiA+PSAwO1xuICAgICAgaWYgKCFpc0FzY2VuZGluZyAmJiAhaXNEZXNjZW5kaW5nKSB7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gaXNBc2NlbmRpbmcgPyBTb3J0T3JkZXIuQVNDRU5ESU5HIDogaXNEZXNjZW5kaW5nID8gU29ydE9yZGVyLkRFU0NFTkRJTkcgOiBTb3J0T3JkZXIuVU5TT1JURUQ7XG4gIH1cblxuICBwcml2YXRlIGdldERyYWZ0c0NvdW50SWZOb3RQYWdlT25lKGN1cnJlbnRQYWdlKTogbnVtYmVyIHtcbiAgICByZXR1cm4gY3VycmVudFBhZ2UgPiAxID8gdGhpcy5kcmFmdHNDb3VudCA6IDA7XG4gIH1cblxuICBwcml2YXRlIG51bWJlck9mRHJhZnRzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMucmVzdWx0Vmlldy5yZXN1bHRzLmZpbHRlcihfID0+IF8uY2FzZV9pZC5zdGFydHNXaXRoKERSQUZUX1BSRUZJWCkpLmxlbmd0aDtcbiAgfVxufVxuIiwiPHRhYmxlICpuZ0lmPVwiaGFzUmVzdWx0cygpIHx8IGhhc0RyYWZ0cygpXCI+XG4gIDxjYXB0aW9uPlxuICAgIDxoMiBjbGFzcz1cImhlYWRpbmctaDJcIiBpZD1cInNlYXJjaC1yZXN1bHQtaGVhZGluZ19fdGV4dFwiIHRhYmluZGV4PVwiLTFcIj57eyBjYXNlU3RhdGUgPyAnWW91ciBjYXNlcycgOiAnU2VhcmNoIHJlc3VsdCcgfX08L2gyPlxuXG4gICAgPGRpdiBjbGFzcz1cImdvdnVrLXdhcm5pbmctdGV4dCBwYWdpbmF0aW9uLWxpbWl0LXdhcm5pbmdcIiAqbmdJZj1cInBhZ2luYXRpb25MaW1pdEVuZm9yY2VkXCI+XG4gICAgICA8c3BhbiBjbGFzcz1cImdvdnVrLXdhcm5pbmctdGV4dF9faWNvblwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPiE8L3NwYW4+XG4gICAgICA8c3Ryb25nIGNsYXNzPVwiZ292dWstd2FybmluZy10ZXh0X190ZXh0XCI+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiZ292dWstd2FybmluZy10ZXh0X19hc3Npc3RpdmVcIj5XYXJuaW5nPC9zcGFuPlxuICAgICAgICBUaGUgdG90YWwgc2l6ZSBvZiB0aGUgcmVzdWx0IHNldCBpcyB7e3BhZ2luYXRpb25NZXRhZGF0YS50b3RhbF9yZXN1bHRzX2NvdW50IHwgbnVtYmVyfX0uIE9ubHkgdGhlIGZpcnN0IDEwLDAwMCByZWNvcmRzIGFyZSBhdmFpbGFibGUgZm9yIGRpc3BsYXkuXG4gICAgICA8L3N0cm9uZz5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgKm5nSWY9XCIoaGFzUmVzdWx0cygpIHx8IGhhc0RyYWZ0cygpKVwiIGNsYXNzPVwicGFnaW5hdGlvbi10b3BcIlxuICAgICAgYXR0ci5hcmlhLWxhYmVsPVwie3sgZ2V0VG90YWxSZXN1bHRzKCkgfX0gcmVzdWx0cyBoYXZlIGJlZW4gZm91bmRcIiByb2xlPVwic3RhdHVzXCI+XG4gICAgICA8c3BhbiBjbGFzcz1cInRleHQtMTZcIiBpZD1cInNlYXJjaC1yZXN1bHQtc3VtbWFyeV9fdGV4dFwiPlNob3dpbmcgXG4gICAgICAgIDxzcGFuIGNsYXNzPVwiZ292dWstIS1mb250LXdlaWdodC1ib2xkXCI+e3sgZ2V0Rmlyc3RSZXN1bHQoKSB9fTwvc3Bhbj5cbiAgICAgICAgdG9cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJnb3Z1ay0hLWZvbnQtd2VpZ2h0LWJvbGRcIj57eyBnZXRMYXN0UmVzdWx0KCkgfX08L3NwYW4+XG4gICAgICAgIG9mXG4gICAgICAgIDxzcGFuIGNsYXNzPVwiZ292dWstIS1mb250LXdlaWdodC1ib2xkXCI+e3sgZ2V0VG90YWxSZXN1bHRzKCkgfX08L3NwYW4+IHJlc3VsdHM8L3NwYW4+XG4gICAgPC9kaXY+XG4gICAgPGRpdiAqbmdJZj1cIihoYXNSZXN1bHRzKCkgfHwgaGFzRHJhZnRzKCkpICYmIHNlbGVjdGlvbkVuYWJsZWRcIiBjbGFzcz1cInJlc2V0LXNlbGVjdGlvblwiXG4gICAgICBhdHRyLmFyaWEtbGFiZWw9XCJSZXNldCBzZWxlY3Rpb25cIj5cbiAgICAgIDxzcGFuPjxhIGNsYXNzPVwic2VhcmNoLXJlc3VsdC1yZXNldC1saW5rXCIgaHJlZj1cImphdmFzY3JpcHQ6dm9pZCgpXCIgKGNsaWNrKT1cImNsZWFyU2VsZWN0aW9uKClcIj5SZXNldCBjYXNlIHNlbGVjdGlvbjwvYT48L3NwYW4+XG4gICAgPC9kaXY+XG4gIDwvY2FwdGlvbj5cbiAgPHRoZWFkPlxuICAgIDx0ciBzY29wZT1cInJvd1wiPlxuICAgICAgPHRoICpuZ0lmPVwic2VsZWN0aW9uRW5hYmxlZFwiIGNsYXNzPVwiZ292dWstdGFibGVfX2NoZWNrYm94XCIgc2NvcGU9XCJjb2xcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImdvdnVrLWNoZWNrYm94ZXNfX2l0ZW1cIj5cbiAgICAgICAgICA8aW5wdXQgY2xhc3M9XCJnb3Z1ay1jaGVja2JveGVzX19pbnB1dFwiIGlkPVwic2VsZWN0LWFsbFwiIG5hbWU9XCJzZWxlY3QtYWxsXCIgdHlwZT1cImNoZWNrYm94XCIgKGNoYW5nZSk9XCJzZWxlY3RBbGwoKVwiIFtjaGVja2VkXT1cImFsbE9uUGFnZVNlbGVjdGVkKClcIiBbZGlzYWJsZWRdPVwiIWNhbkFueUJlU2hhcmVkKClcIiAvPlxuICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImdvdnVrLWxhYmVsIGdvdnVrLWNoZWNrYm94ZXNfX2xhYmVsXCIgZm9yPVwic2VsZWN0LWFsbFwiPlxuICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC90aD5cbiAgICAgIDx0aCAqbmdGb3I9XCJsZXQgY29sIG9mIHJlc3VsdFZpZXcuY29sdW1uc1wiPlxuICAgICAgICA8dGFibGUgY2xhc3M9XCJzZWFyY2gtcmVzdWx0LWNvbHVtbi1oZWFkZXJcIlxuICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwic29ydExhYmVsVGV4dChjb2wubGFiZWwsIGlzU29ydEFzY2VuZGluZyhjb2wpKVwiPlxuICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgIDx0aCBzdHlsZT1cImRpc3BsYXk6IG5vbmU7XCI+PC90aD5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzZWFyY2gtcmVzdWx0LWNvbHVtbi1sYWJlbFwiIChjbGljayk9XCJzb3J0KGNvbClcIj57e2NvbC5sYWJlbH19PC9kaXY+XG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiY29tcGFyYXRvcihjb2wpXCIgY2xhc3M9XCJzZWFyY2gtcmVzdWx0LWNvbHVtbi1zb3J0XCI+XG4gICAgICAgICAgICAgIDxhIChjbGljayk9XCJzb3J0KGNvbClcIiBjbGFzcz1cInNvcnQtd2lkZ2V0XCIgW2lubmVySFRNTF09XCJzb3J0V2lkZ2V0KGNvbClcIiBocmVmPVwiamF2YXNjcmlwdDp2b2lkKDApXCI+PC9hPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC90cj5cbiAgICAgICAgPC90YWJsZT5cbiAgICAgIDwvdGg+XG4gICAgICA8dGggKm5nSWY9XCJhY3Rpdml0eUVuYWJsZWQoKVwiIGNsYXNzPVwic2VhcmNoLXJlc3VsdC1jb2x1bW4tYWN0aXZpdHlcIiBzdHlsZT1cIndpZHRoOiAxMTBweDtcIj48L3RoPlxuICAgIDwvdHI+XG4gIDwvdGhlYWQ+XG4gIDx0Ym9keT5cblxuICAgIDwhLS0gc29ydGVkIGJ5IGNvbnN1bWVyIC0tPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjb25zdW1lclNvcnRpbmdFbmFibGVkXCI+XG4gICAgICA8dHIgKm5nRm9yPVwibGV0IHJlc3VsdCBvZiByZXN1bHRWaWV3LnJlc3VsdHMgfCBwYWdpbmF0ZTogeyBpdGVtc1BlclBhZ2U6IHBhZ2luYXRpb25QYWdlU2l6ZSwgY3VycmVudFBhZ2U6IHNlbGVjdGVkLnBhZ2UsIHRvdGFsSXRlbXM6IHJlc3VsdFRvdGFsIH1cIj5cbiAgICAgICAgPHRkICpuZ0lmPVwic2VsZWN0aW9uRW5hYmxlZFwiIGNsYXNzPVwiZ292dWstdGFibGVfX2NoZWNrYm94XCIgc2NvcGU9XCJjb2xcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZ292dWstY2hlY2tib3hlc19faXRlbVwiPlxuICAgICAgICAgICAgPGlucHV0IGNsYXNzPVwiZ292dWstY2hlY2tib3hlc19faW5wdXRcIiBpZD1cInNlbGVjdC17eyByZXN1bHQuY2FzZV9pZCB9fVwiIG5hbWU9XCJzZWxlY3Qte3sgcmVzdWx0LmNhc2VfaWQgfX1cIlxuICAgICAgICAgICAgICB0eXBlPVwiY2hlY2tib3hcIiAoY2hhbmdlKT1cImNoYW5nZVNlbGVjdGlvbihyZXN1bHQpXCIgW2NoZWNrZWRdPVwiaXNTZWxlY3RlZChyZXN1bHQpXCIgW2Rpc2FibGVkXT1cIiFjYW5CZVNoYXJlZChyZXN1bHQpXCIgLz5cbiAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImdvdnVrLWxhYmVsIGdvdnVrLWNoZWNrYm94ZXNfX2xhYmVsXCIgZm9yPVwic2VsZWN0LXt7IHJlc3VsdC5jYXNlX2lkIH19XCI+XG4gICAgICAgICAgICA8L2xhYmVsPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L3RkPlxuICAgICAgICA8dGQgY2xhc3M9XCJzZWFyY2gtcmVzdWx0LWNvbHVtbi1jZWxsXCIgKm5nRm9yPVwibGV0IGNvbCBvZiByZXN1bHRWaWV3LmNvbHVtbnM7IGxldCBjb2xJbmRleCA9IGluZGV4XCIgc2NvcGU9XCJyb3dcIj5cbiAgICAgICAgICA8YSAqbmdJZj1cImNvbEluZGV4ID09IDBcIiBbcm91dGVyTGlua109XCJwcmVwYXJlQ2FzZUxpbmtVcmwocmVzdWx0LmNhc2VfaWQpXCJcbiAgICAgICAgICAgIGF0dHIuYXJpYS1sYWJlbD1cImdvIHRvIGNhc2Ugd2l0aCBDYXNlIHJlZmVyZW5jZTp7eyByZXN1bHQuY2FzZV9pZCB8IGNjZENhc2VSZWZlcmVuY2UgfX1cIiBjbGFzcz1cImdvdnVrLWxpbmtcIj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgY2xhc3M9XCJ0ZXh0LTE2XCIgKm5nSWY9XCIhaGlkZVJvd3NcIj5cbiAgICAgICAgICAgICAgPGNjZC1maWVsZC1yZWFkICpuZ0lmPVwiZHJhZnRQcmVmaXhPckdldChjb2wsIHJlc3VsdCk7IGVsc2UgY2FzZV9yZWZlcmVuY2VcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2NkTGFiZWxTdWJzdGl0dXRvciBbY2FzZUZpZWxkXT1cImdldENvbHVtbnNXaXRoUHJlZml4KHJlc3VsdC5jb2x1bW5zW2NvbC5jYXNlX2ZpZWxkX2lkXSwgcmVzdWx0KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY29udGV4dEZpZWxkc109XCJyZXN1bHQuaHlkcmF0ZWRfY2FzZV9maWVsZHNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2VsZW1lbnRzVG9TdWJzdGl0dXRlXT1cIlsndmFsdWUnXVwiPjwvY2NkLWZpZWxkLXJlYWQ+XG4gICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjY2FzZV9yZWZlcmVuY2U+e3tyZXN1bHQuY2FzZV9pZCB8IGNjZENhc2VSZWZlcmVuY2V9fTwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICA8L2E+XG4gICAgICAgICAgPGRpdiAqbmdJZj1cImNvbEluZGV4ICE9IDBcIiBjbGFzcz1cInRleHQtMTZcIiBbc3R5bGUudmlzaWJpbGl0eV09XCJoaWRlUm93cyA/ICdoaWRkZW4nIDogJ3Zpc2libGUnXCI+XG4gICAgICAgICAgICA8Y2NkLWZpZWxkLXJlYWQgY2NkTGFiZWxTdWJzdGl0dXRvclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjYXNlRmllbGRdPVwicmVzdWx0LmNvbHVtbnNbY29sLmNhc2VfZmllbGRfaWRdXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY29udGV4dEZpZWxkc109XCJyZXN1bHQuaHlkcmF0ZWRfY2FzZV9maWVsZHNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtlbGVtZW50c1RvU3Vic3RpdHV0ZV09XCJbJ3ZhbHVlJ11cIj48L2NjZC1maWVsZC1yZWFkPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L3RkPlxuICAgICAgICA8dGQgKm5nSWY9XCJhY3Rpdml0eUVuYWJsZWQoKVwiPlxuICAgICAgICAgIDxkaXYgW3N0eWxlLnZpc2liaWxpdHldPVwiaGlkZVJvd3MgPyAnaGlkZGVuJyA6ICd2aXNpYmxlJ1wiPlxuICAgICAgICAgICAgPGNjZC1hY3Rpdml0eSBbY2FzZUlkXT1cInJlc3VsdC5jYXNlX2lkXCIgW2Rpc3BsYXlNb2RlXT1cIklDT05cIj48L2NjZC1hY3Rpdml0eT5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC90ZD5cbiAgICAgIDwvdHI+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPCEtLSBzb3J0ZWQgYnkgdG9vbGtpdCAtLT5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWNvbnN1bWVyU29ydGluZ0VuYWJsZWRcIj5cbiAgICAgIDx0ciAqbmdGb3I9XCJsZXQgcmVzdWx0IG9mIHJlc3VsdFZpZXcucmVzdWx0cyB8IGNjZFNvcnRTZWFyY2hSZXN1bHQgOiBzb3J0UGFyYW1ldGVycyB8IHBhZ2luYXRlOiB7IGl0ZW1zUGVyUGFnZTogcGFnaW5hdGlvblBhZ2VTaXplLCBjdXJyZW50UGFnZTogc2VsZWN0ZWQucGFnZSwgdG90YWxJdGVtczogcmVzdWx0VG90YWwgfVwiPlxuICAgICAgICA8dGQgKm5nSWY9XCJzZWxlY3Rpb25FbmFibGVkXCIgY2xhc3M9XCJnb3Z1ay10YWJsZV9fY2hlY2tib3hcIiBzY29wZT1cImNvbFwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJnb3Z1ay1jaGVja2JveGVzX19pdGVtXCI+XG4gICAgICAgICAgICA8aW5wdXQgY2xhc3M9XCJnb3Z1ay1jaGVja2JveGVzX19pbnB1dFwiIGlkPVwic2VsZWN0LXt7IHJlc3VsdC5jYXNlX2lkIH19XCIgbmFtZT1cInNlbGVjdC17eyByZXN1bHQuY2FzZV9pZCB9fVwiXG4gICAgICAgICAgICAgIHR5cGU9XCJjaGVja2JveFwiIChjaGFuZ2UpPVwiY2hhbmdlU2VsZWN0aW9uKHJlc3VsdClcIiBbY2hlY2tlZF09XCJpc1NlbGVjdGVkKHJlc3VsdClcIiBbZGlzYWJsZWRdPVwiIWNhbkJlU2hhcmVkKHJlc3VsdClcIiAoa2V5dXApPVwib25LZXlVcCgkZXZlbnQsIHJlc3VsdClcIiAvPlxuICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZ292dWstbGFiZWwgZ292dWstY2hlY2tib3hlc19fbGFiZWxcIiBmb3I9XCJzZWxlY3Qte3sgcmVzdWx0LmNhc2VfaWQgfX1cIj5cbiAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvdGQ+XG4gICAgICAgIDx0ZCBjbGFzcz1cInNlYXJjaC1yZXN1bHQtY29sdW1uLWNlbGxcIiAqbmdGb3I9XCJsZXQgY29sIG9mIHJlc3VsdFZpZXcuY29sdW1uczsgbGV0IGNvbEluZGV4ID0gaW5kZXhcIiBzY29wZT1cInJvd1wiPlxuXG4gICAgICAgICAgPGEgKm5nSWY9XCJjb2xJbmRleCA9PSAwXCIgW3JvdXRlckxpbmtdPVwicHJlcGFyZUNhc2VMaW5rVXJsKHJlc3VsdC5jYXNlX2lkKVwiXG4gICAgICAgICAgICBhdHRyLmFyaWEtbGFiZWw9XCJnbyB0byBjYXNlIHdpdGggQ2FzZSByZWZlcmVuY2U6e3sgcmVzdWx0LmNhc2VfaWQgfCBjY2RDYXNlUmVmZXJlbmNlIH19XCIgY2xhc3M9XCJnb3Z1ay1saW5rXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyIGNsYXNzPVwidGV4dC0xNlwiICpuZ0lmPVwiIWhpZGVSb3dzXCI+XG4gICAgICAgICAgICAgIDxjY2QtZmllbGQtcmVhZCAqbmdJZj1cImRyYWZ0UHJlZml4T3JHZXQoY29sLCByZXN1bHQpOyBlbHNlIGNhc2VfcmVmZXJlbmNlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNjZExhYmVsU3Vic3RpdHV0b3IgW2Nhc2VGaWVsZF09XCJnZXRDb2x1bW5zV2l0aFByZWZpeChyZXN1bHQuY29sdW1uc1tjb2wuY2FzZV9maWVsZF9pZF0sIHJlc3VsdClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NvbnRleHRGaWVsZHNdPVwicmVzdWx0Lmh5ZHJhdGVkX2Nhc2VfZmllbGRzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtlbGVtZW50c1RvU3Vic3RpdHV0ZV09XCJbJ3ZhbHVlJ11cIj48L2NjZC1maWVsZC1yZWFkPlxuICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI2Nhc2VfcmVmZXJlbmNlPnt7cmVzdWx0LmNhc2VfaWQgfCBjY2RDYXNlUmVmZXJlbmNlfX08L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgPC9hPlxuICAgICAgICAgIDxkaXYgKm5nSWY9XCJjb2xJbmRleCAhPSAwXCIgY2xhc3M9XCJ0ZXh0LTE2XCIgW3N0eWxlLnZpc2liaWxpdHldPVwiaGlkZVJvd3MgPyAnaGlkZGVuJyA6ICd2aXNpYmxlJ1wiPlxuICAgICAgICAgICAgPGNjZC1maWVsZC1yZWFkIGNjZExhYmVsU3Vic3RpdHV0b3JcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2FzZUZpZWxkXT1cInJlc3VsdC5jb2x1bW5zW2NvbC5jYXNlX2ZpZWxkX2lkXVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NvbnRleHRGaWVsZHNdPVwicmVzdWx0Lmh5ZHJhdGVkX2Nhc2VfZmllbGRzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZWxlbWVudHNUb1N1YnN0aXR1dGVdPVwiWyd2YWx1ZSddXCI+PC9jY2QtZmllbGQtcmVhZD5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC90ZD5cbiAgICAgICAgPHRkICpuZ0lmPVwiYWN0aXZpdHlFbmFibGVkKClcIj5cbiAgICAgICAgICA8ZGl2IFtzdHlsZS52aXNpYmlsaXR5XT1cImhpZGVSb3dzID8gJ2hpZGRlbicgOiAndmlzaWJsZSdcIj5cbiAgICAgICAgICAgIDxjY2QtYWN0aXZpdHkgW2Nhc2VJZF09XCJyZXN1bHQuY2FzZV9pZFwiIFtkaXNwbGF5TW9kZV09XCJJQ09OXCI+PC9jY2QtYWN0aXZpdHk+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvdGQ+XG4gICAgICA8L3RyPlxuICAgIDwvbmctY29udGFpbmVyPlxuXG4gIDwvdGJvZHk+XG48L3RhYmxlPlxuXG48Y2NkLXBhZ2luYXRpb24gXG4gICpuZ0lmPVwiaGFzUmVzdWx0cygpXCJcbiAgKHBhZ2VDaGFuZ2UpPVwiZ29Ub1BhZ2UoJGV2ZW50KVwiXG4gIFt2aXNpYmlsaXR5TGFiZWxdPVwiaGlkZVJvd3MgPyAnaGlkZGVuJyA6ICd2aXNpYmxlJ1wiIFxuICBbYXV0b0hpZGVdPVwidHJ1ZVwiXG4gIFttYXhTaXplXT1cIjhcIlxuICBbc2NyZWVuUmVhZGVyUGFnaW5hdGlvbkxhYmVsXT1cIidQYWdpbmF0aW9uJ1wiXG4gIFtzY3JlZW5SZWFkZXJQYWdlTGFiZWxdPVwicGFnZVwiXG4gIFtzY3JlZW5SZWFkZXJDdXJyZW50TGFiZWxdPVwiJ1lvdVxcJ3JlIG9uIHBhZ2UnXCI+PC9jY2QtcGFnaW5hdGlvbj5cblxuPGRpdiAqbmdJZj1cIiEoaGFzUmVzdWx0cygpIHx8IGhhc0RyYWZ0cygpKVwiIGNsYXNzPVwibm90aWZpY2F0aW9uXCJcbiAgYXJpYS1sYWJlbD1cIk5vIGNhc2VzIGZvdW5kLiBUcnkgdXNpbmcgZGlmZmVyZW50IGZpbHRlcnMuXCI+XG4gIE5vIGNhc2VzIGZvdW5kLiBUcnkgdXNpbmcgZGlmZmVyZW50IGZpbHRlcnMuXG48L2Rpdj5cbiJdfQ==
|