@hmcts/ccd-case-ui-toolkit 6.19.13-restricted-case-access → 6.19.13-welsh-translation-FirstErrorPipe-fix
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 +9857 -4934
- package/bundles/hmcts-ccd-case-ui-toolkit.umd.js.map +1 -1
- package/bundles/hmcts-ccd-case-ui-toolkit.umd.min.js +1 -1
- package/bundles/hmcts-ccd-case-ui-toolkit.umd.min.js.map +1 -1
- package/esm2015/lib/app.config.js +1 -1
- package/esm2015/lib/shared/components/case-editor/case-edit/case-edit.component.js +2 -2
- package/esm2015/lib/shared/components/case-editor/case-edit-confirm/case-edit-confirm.component.js +1 -1
- package/esm2015/lib/shared/components/case-editor/case-edit-generic-errors/case-edit-generic-errors.component.js +1 -1
- package/esm2015/lib/shared/components/case-editor/case-edit-page/case-edit-page.component.js +2 -11
- package/esm2015/lib/shared/components/case-editor/case-edit-submit/case-edit-submit-titles.enum.js +7 -0
- package/esm2015/lib/shared/components/case-editor/case-edit-submit/case-edit-submit.component.js +167 -128
- package/esm2015/lib/shared/components/case-editor/case-editor.module.js +17 -21
- package/esm2015/lib/shared/components/case-editor/case-event-completion/case-event-completion.component.js +2 -3
- package/esm2015/lib/shared/components/case-editor/case-event-completion/components/case-event-completion-task-cancelled/case-event-completion-task-cancelled.component.js +2 -2
- package/esm2015/lib/shared/components/case-editor/case-event-completion/components/case-event-completion-task-reassigned/case-event-completion-task-reassigned.component.js +2 -2
- package/esm2015/lib/shared/components/case-editor/services/case-flag-state.service.js +19 -0
- package/esm2015/lib/shared/components/case-editor/services/cases.service.js +6 -1
- package/esm2015/lib/shared/components/case-viewer/case-event-trigger/case-event-trigger.component.js +5 -18
- package/esm2015/lib/shared/components/case-viewer/case-full-access-view/case-full-access-view.component.js +77 -49
- package/esm2015/lib/shared/components/case-viewer/case-viewer.module.js +5 -2
- package/esm2015/lib/shared/components/case-viewer/services/case.resolver.js +9 -16
- package/esm2015/lib/shared/components/palette/base-field/field-read.component.js +1 -1
- package/esm2015/lib/shared/components/palette/case-flag/components/add-comments/add-comments.component.js +76 -33
- package/esm2015/lib/shared/components/palette/case-flag/components/case-flag-summary-list/case-flag-summary-list.component.js +264 -45
- package/esm2015/lib/shared/components/palette/case-flag/components/case-flag-table/case-flag-table.component.js +144 -73
- package/esm2015/lib/shared/components/palette/case-flag/components/confirm-flag-status/confirm-flag-status.component.js +181 -0
- package/esm2015/lib/shared/components/palette/case-flag/components/index.js +4 -1
- package/esm2015/lib/shared/components/palette/case-flag/components/manage-case-flags/manage-case-flags.component.js +72 -77
- package/esm2015/lib/shared/components/palette/case-flag/components/search-language-interpreter/search-language-interpreter-control-names.enum.js +6 -0
- package/esm2015/lib/shared/components/palette/case-flag/components/search-language-interpreter/search-language-interpreter.component.js +133 -101
- package/esm2015/lib/shared/components/palette/case-flag/components/select-flag-location/select-flag-location.component.js +21 -8
- package/esm2015/lib/shared/components/palette/case-flag/components/select-flag-type/select-flag-type.component.js +223 -114
- package/esm2015/lib/shared/components/palette/case-flag/components/update-flag/update-flag-add-translation-form/update-flag-add-translation-form.component.js +292 -0
- package/esm2015/lib/shared/components/palette/case-flag/components/update-flag/update-flag.component.js +465 -109
- package/esm2015/lib/shared/components/palette/case-flag/domain/case-flag-state.model.js +1 -1
- package/esm2015/lib/shared/components/palette/case-flag/domain/case-flag.model.js +1 -1
- package/esm2015/lib/shared/components/palette/case-flag/domain/language.model.js +1 -1
- package/esm2015/lib/shared/components/palette/case-flag/enums/add-comments-error-message.enum.js +2 -1
- package/esm2015/lib/shared/components/palette/case-flag/enums/add-comments-step.enum.js +3 -1
- package/esm2015/lib/shared/components/palette/case-flag/enums/case-flag-check-your-answers-step.enum.js +12 -0
- package/esm2015/lib/shared/components/palette/case-flag/enums/case-flag-display-context-parameter.enum.js +15 -0
- package/esm2015/lib/shared/components/palette/case-flag/enums/case-flag-form-fields.enum.js +13 -0
- package/esm2015/lib/shared/components/palette/case-flag/enums/case-flag-status.enum.js +3 -2
- package/esm2015/lib/shared/components/palette/case-flag/enums/case-flag-wizard-step-title.enum.js +11 -3
- package/esm2015/lib/shared/components/palette/case-flag/enums/confirm-status-error-message.enum.js +6 -0
- package/esm2015/lib/shared/components/palette/case-flag/enums/confirm-status-step.enum.js +6 -0
- package/esm2015/lib/shared/components/palette/case-flag/enums/index.js +9 -2
- package/esm2015/lib/shared/components/palette/case-flag/enums/select-flag-error-message.enum.js +3 -2
- package/esm2015/lib/shared/components/palette/case-flag/enums/select-flag-type-error-message.enum.js +4 -1
- package/esm2015/lib/shared/components/palette/case-flag/enums/update-flag-add-translation-error-message.enum.js +6 -0
- package/esm2015/lib/shared/components/palette/case-flag/enums/update-flag-add-translation-step.enum.js +6 -0
- package/esm2015/lib/shared/components/palette/case-flag/enums/update-flag-error-message.enum.js +5 -1
- package/esm2015/lib/shared/components/palette/case-flag/enums/update-flag-step.enum.js +7 -2
- package/esm2015/lib/shared/components/palette/case-flag/enums/write-case-flag-field.enum.js +10 -7
- package/esm2015/lib/shared/components/palette/case-flag/index.js +2 -1
- package/esm2015/lib/shared/components/palette/case-flag/pipes/flag-field-display.pipe.js +41 -0
- package/esm2015/lib/shared/components/palette/case-flag/pipes/index.js +5 -0
- package/esm2015/lib/shared/components/palette/case-flag/pipes/language-interpreter-display.pipe.js +41 -0
- package/esm2015/lib/shared/components/palette/case-flag/pipes/manage-case-flags-label-display.pipe.js +109 -0
- package/esm2015/lib/shared/components/palette/case-flag/pipes/update-flag-title-display.pipe.js +77 -0
- package/esm2015/lib/shared/components/palette/case-flag/read-case-flag-field.component.js +153 -51
- package/esm2015/lib/shared/components/palette/case-flag/write-case-flag-field.component.js +387 -171
- package/esm2015/lib/shared/components/palette/case-link/write-case-link-field.component.js +4 -5
- package/esm2015/lib/shared/components/palette/collection/write-collection-field.component.js +34 -37
- package/esm2015/lib/shared/components/palette/complex/read-complex-field.component.js +9 -7
- package/esm2015/lib/shared/components/palette/complex/sort-order.js +7 -0
- package/esm2015/lib/shared/components/palette/date/write-date-field.component.js +4 -5
- package/esm2015/lib/shared/components/palette/datetime-picker/datetime-picker.component.js +4 -5
- package/esm2015/lib/shared/components/palette/dynamic-list/write-dynamic-list-field.component.js +4 -5
- package/esm2015/lib/shared/components/palette/dynamic-radio-list/write-dynamic-radio-list-field.component.js +4 -5
- package/esm2015/lib/shared/components/palette/email/write-email-field.component.js +4 -5
- package/esm2015/lib/shared/components/palette/fixed-list/write-fixed-list-field.component.js +4 -5
- package/esm2015/lib/shared/components/palette/fixed-radio-list/write-fixed-radio-list-field.component.js +4 -5
- package/esm2015/lib/shared/components/palette/index.js +3 -1
- package/esm2015/lib/shared/components/palette/markdown/index.js +2 -1
- package/esm2015/lib/shared/components/palette/markdown/markdown-component.module.js +42 -0
- package/esm2015/lib/shared/components/palette/money-gbp/write-money-gbp-field.component.js +4 -5
- package/esm2015/lib/shared/components/palette/multi-select-list/write-multi-select-list-field.component.js +4 -5
- package/esm2015/lib/shared/components/palette/number/write-number-field.component.js +4 -5
- package/esm2015/lib/shared/components/palette/palette.module.js +147 -50
- package/esm2015/lib/shared/components/palette/palette.service.js +4 -2
- package/esm2015/lib/shared/components/palette/phone-uk/write-phone-uk-field.component.js +4 -5
- package/esm2015/lib/shared/components/palette/query-management/__mocks__/index.js +210 -0
- package/esm2015/lib/shared/components/palette/query-management/components/index.js +13 -0
- package/esm2015/lib/shared/components/palette/query-management/components/qualifying-questions/qualifying-question-detail/qualifying-question-detail.component.js +45 -0
- package/esm2015/lib/shared/components/palette/query-management/components/qualifying-questions/qualifying-question-options/qualifying-question-options.component.js +154 -0
- package/esm2015/lib/shared/components/palette/query-management/components/query-attachments-read/query-attachments-read.component.js +69 -0
- package/esm2015/lib/shared/components/palette/query-management/components/query-case-details-header/query-case-details-header.component.js +64 -0
- package/esm2015/lib/shared/components/palette/query-management/components/query-check-your-answers/query-check-your-answers.component.js +316 -0
- package/esm2015/lib/shared/components/palette/query-management/components/query-details/query-details.component.js +380 -0
- package/esm2015/lib/shared/components/palette/query-management/components/query-event-completion/query-event-completion.component.js +25 -0
- package/esm2015/lib/shared/components/palette/query-management/components/query-list/query-list.component.js +181 -0
- package/esm2015/lib/shared/components/palette/query-management/components/query-write/query-write-add-documents/query-write-add-documents.component.js +78 -0
- package/esm2015/lib/shared/components/palette/query-management/components/query-write/query-write-date-input/query-write-date-input.component.js +125 -0
- package/esm2015/lib/shared/components/palette/query-management/components/query-write/query-write-raise-query/query-write-raise-query.component.js +239 -0
- package/esm2015/lib/shared/components/palette/query-management/components/query-write/query-write-respond-to-query/query-write-respond-to-query.component.js +120 -0
- package/esm2015/lib/shared/components/palette/query-management/enums/index.js +6 -0
- package/esm2015/lib/shared/components/palette/query-management/enums/qualifying-questions-error-message.enum.js +5 -0
- package/esm2015/lib/shared/components/palette/query-management/enums/query-item-response-status.enum.js +6 -0
- package/esm2015/lib/shared/components/palette/query-management/enums/raise-query-error-message.enum.js +10 -0
- package/esm2015/lib/shared/components/palette/query-management/enums/respond-to-query-error-messages.enum.js +6 -0
- package/esm2015/lib/shared/components/palette/query-management/index.js +7 -0
- package/esm2015/lib/shared/components/palette/query-management/models/case-queries-collection.model.js +2 -0
- package/esm2015/lib/shared/components/palette/query-management/models/index.js +8 -0
- package/esm2015/lib/shared/components/palette/query-management/models/qualifying-questions/casetype-qualifying-questions.model.js +2 -0
- package/esm2015/lib/shared/components/palette/query-management/models/qualifying-questions/qualifying-question.model.js +2 -0
- package/esm2015/lib/shared/components/palette/query-management/models/query-create-context.enum.js +9 -0
- package/esm2015/lib/shared/components/palette/query-management/models/query-list/query-list-column/query-list-column.model.js +2 -0
- package/esm2015/lib/shared/components/palette/query-management/models/query-list/query-list-data/query-list-data.model.js +18 -0
- package/esm2015/lib/shared/components/palette/query-management/models/query-list/query-list-item/query-list-item.model.js +41 -0
- package/esm2015/lib/shared/components/palette/query-management/read-query-management-field.component.js +128 -0
- package/esm2015/lib/shared/components/palette/query-management/utils/query-management.utils.js +22 -0
- package/esm2015/lib/shared/components/palette/text/write-text-field.component.js +4 -5
- package/esm2015/lib/shared/components/palette/text-area/write-text-area-field.component.js +4 -5
- package/esm2015/lib/shared/components/palette/utils/first-error.pipe.js +16 -9
- package/esm2015/lib/shared/components/palette/yes-no/read-yes-no-field.component.js +7 -5
- package/esm2015/lib/shared/components/palette/yes-no/write-yes-no-field.component.js +8 -8
- package/esm2015/lib/shared/domain/case-flag/flag-type.model.js +17 -2
- package/esm2015/lib/shared/domain/case-view/case-view-event-ids.enum.js +6 -0
- package/esm2015/lib/shared/domain/case-view/case-view-trigger.model.js +1 -2
- package/esm2015/lib/shared/domain/definition/display-context-enum.model.js +3 -1
- package/esm2015/lib/shared/domain/http/http-error.model.js +1 -8
- package/esm2015/lib/shared/fixture/shared.test.fixture.js +2 -1
- package/esm2015/lib/shared/pipes/generic/enum-display-description/enum-display-description.pipe.js +16 -0
- package/esm2015/lib/shared/pipes/generic/index.js +2 -0
- package/esm2015/lib/shared/pipes/index.js +3 -2
- package/esm2015/lib/shared/pipes/pipes.module.js +9 -5
- package/esm2015/lib/shared/services/case-flag/case-flag-refdata.service.js +9 -3
- package/esm2015/lib/shared/services/fields/fields.utils.js +21 -3
- package/esm2015/lib/shared/services/form/form-value.service.js +14 -11
- package/esm2015/lib/shared/services/http/http-error.service.js +5 -4
- package/esm2015/lib/shared/services/jurisdiction/jurisdiction.service.js +2 -1
- package/esm2015/lib/shared/services/request/request.options.builder.js +7 -1
- package/fesm2015/hmcts-ccd-case-ui-toolkit.js +8445 -4051
- package/fesm2015/hmcts-ccd-case-ui-toolkit.js.map +1 -1
- package/lib/app.config.d.ts +0 -2
- package/lib/app.config.d.ts.map +1 -1
- package/lib/shared/components/case-editor/case-edit/case-edit.component.d.ts.map +1 -1
- package/lib/shared/components/case-editor/case-edit-page/case-edit-page.component.d.ts.map +1 -1
- package/lib/shared/components/case-editor/case-edit-submit/case-edit-submit-titles.enum.d.ts +6 -0
- package/lib/shared/components/case-editor/case-edit-submit/case-edit-submit-titles.enum.d.ts.map +1 -0
- package/lib/shared/components/case-editor/case-edit-submit/case-edit-submit.component.d.ts +1 -1
- package/lib/shared/components/case-editor/case-edit-submit/case-edit-submit.component.d.ts.map +1 -1
- package/lib/shared/components/case-editor/case-editor.module.d.ts +17 -20
- package/lib/shared/components/case-editor/case-editor.module.d.ts.map +1 -1
- 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 -1
- 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 -1
- package/lib/shared/components/case-editor/services/case-flag-state.service.d.ts +11 -0
- package/lib/shared/components/case-editor/services/case-flag-state.service.d.ts.map +1 -0
- package/lib/shared/components/case-editor/services/cases.service.d.ts +1 -0
- package/lib/shared/components/case-editor/services/cases.service.d.ts.map +1 -1
- package/lib/shared/components/case-viewer/case-event-trigger/case-event-trigger.component.d.ts.map +1 -1
- package/lib/shared/components/case-viewer/case-full-access-view/case-full-access-view.component.d.ts +6 -2
- package/lib/shared/components/case-viewer/case-full-access-view/case-full-access-view.component.d.ts.map +1 -1
- package/lib/shared/components/case-viewer/case-viewer.module.d.ts +4 -4
- package/lib/shared/components/case-viewer/case-viewer.module.d.ts.map +1 -1
- package/lib/shared/components/case-viewer/services/case.resolver.d.ts +1 -3
- package/lib/shared/components/case-viewer/services/case.resolver.d.ts.map +1 -1
- package/lib/shared/components/palette/base-field/field-read.component.d.ts.map +1 -1
- package/lib/shared/components/palette/case-flag/components/add-comments/add-comments.component.d.ts +6 -2
- package/lib/shared/components/palette/case-flag/components/add-comments/add-comments.component.d.ts.map +1 -1
- package/lib/shared/components/palette/case-flag/components/case-flag-summary-list/case-flag-summary-list.component.d.ts +23 -8
- package/lib/shared/components/palette/case-flag/components/case-flag-summary-list/case-flag-summary-list.component.d.ts.map +1 -1
- package/lib/shared/components/palette/case-flag/components/case-flag-table/case-flag-table.component.d.ts +2 -1
- package/lib/shared/components/palette/case-flag/components/case-flag-table/case-flag-table.component.d.ts.map +1 -1
- package/lib/shared/components/palette/case-flag/components/confirm-flag-status/confirm-flag-status.component.d.ts +28 -0
- package/lib/shared/components/palette/case-flag/components/confirm-flag-status/confirm-flag-status.component.d.ts.map +1 -0
- package/lib/shared/components/palette/case-flag/components/index.d.ts +3 -0
- package/lib/shared/components/palette/case-flag/components/index.d.ts.map +1 -1
- package/lib/shared/components/palette/case-flag/components/manage-case-flags/manage-case-flags.component.d.ts +4 -8
- package/lib/shared/components/palette/case-flag/components/manage-case-flags/manage-case-flags.component.d.ts.map +1 -1
- package/lib/shared/components/palette/case-flag/components/search-language-interpreter/search-language-interpreter-control-names.enum.d.ts +5 -0
- package/lib/shared/components/palette/case-flag/components/search-language-interpreter/search-language-interpreter-control-names.enum.d.ts.map +1 -0
- package/lib/shared/components/palette/case-flag/components/search-language-interpreter/search-language-interpreter.component.d.ts +10 -8
- package/lib/shared/components/palette/case-flag/components/search-language-interpreter/search-language-interpreter.component.d.ts.map +1 -1
- package/lib/shared/components/palette/case-flag/components/select-flag-location/select-flag-location.component.d.ts +2 -1
- package/lib/shared/components/palette/case-flag/components/select-flag-location/select-flag-location.component.d.ts.map +1 -1
- package/lib/shared/components/palette/case-flag/components/select-flag-type/select-flag-type.component.d.ts +16 -9
- package/lib/shared/components/palette/case-flag/components/select-flag-type/select-flag-type.component.d.ts.map +1 -1
- package/lib/shared/components/palette/case-flag/components/update-flag/update-flag-add-translation-form/update-flag-add-translation-form.component.d.ts +27 -0
- package/lib/shared/components/palette/case-flag/components/update-flag/update-flag-add-translation-form/update-flag-add-translation-form.component.d.ts.map +1 -0
- package/lib/shared/components/palette/case-flag/components/update-flag/update-flag.component.d.ts +26 -11
- package/lib/shared/components/palette/case-flag/components/update-flag/update-flag.component.d.ts.map +1 -1
- package/lib/shared/components/palette/case-flag/domain/case-flag-state.model.d.ts +1 -10
- package/lib/shared/components/palette/case-flag/domain/case-flag-state.model.d.ts.map +1 -1
- package/lib/shared/components/palette/case-flag/domain/case-flag.model.d.ts +12 -1
- package/lib/shared/components/palette/case-flag/domain/case-flag.model.d.ts.map +1 -1
- package/lib/shared/components/palette/case-flag/domain/language.model.d.ts +1 -0
- package/lib/shared/components/palette/case-flag/domain/language.model.d.ts.map +1 -1
- package/lib/shared/components/palette/case-flag/enums/add-comments-error-message.enum.d.ts +1 -0
- package/lib/shared/components/palette/case-flag/enums/add-comments-error-message.enum.d.ts.map +1 -1
- package/lib/shared/components/palette/case-flag/enums/add-comments-step.enum.d.ts +3 -1
- package/lib/shared/components/palette/case-flag/enums/add-comments-step.enum.d.ts.map +1 -1
- package/lib/shared/components/palette/case-flag/enums/case-flag-check-your-answers-step.enum.d.ts +11 -0
- package/lib/shared/components/palette/case-flag/enums/case-flag-check-your-answers-step.enum.d.ts.map +1 -0
- package/lib/shared/components/palette/case-flag/enums/case-flag-display-context-parameter.enum.d.ts +14 -0
- package/lib/shared/components/palette/case-flag/enums/case-flag-display-context-parameter.enum.d.ts.map +1 -0
- package/lib/shared/components/palette/case-flag/enums/case-flag-form-fields.enum.d.ts +12 -0
- package/lib/shared/components/palette/case-flag/enums/case-flag-form-fields.enum.d.ts.map +1 -0
- package/lib/shared/components/palette/case-flag/enums/case-flag-status.enum.d.ts +2 -1
- package/lib/shared/components/palette/case-flag/enums/case-flag-status.enum.d.ts.map +1 -1
- package/lib/shared/components/palette/case-flag/enums/case-flag-wizard-step-title.enum.d.ts +11 -3
- package/lib/shared/components/palette/case-flag/enums/case-flag-wizard-step-title.enum.d.ts.map +1 -1
- package/lib/shared/components/palette/case-flag/enums/confirm-status-error-message.enum.d.ts +5 -0
- package/lib/shared/components/palette/case-flag/enums/confirm-status-error-message.enum.d.ts.map +1 -0
- package/lib/shared/components/palette/case-flag/enums/confirm-status-step.enum.d.ts +5 -0
- package/lib/shared/components/palette/case-flag/enums/confirm-status-step.enum.d.ts.map +1 -0
- package/lib/shared/components/palette/case-flag/enums/index.d.ts +8 -1
- package/lib/shared/components/palette/case-flag/enums/index.d.ts.map +1 -1
- package/lib/shared/components/palette/case-flag/enums/select-flag-error-message.enum.d.ts +2 -1
- package/lib/shared/components/palette/case-flag/enums/select-flag-error-message.enum.d.ts.map +1 -1
- package/lib/shared/components/palette/case-flag/enums/select-flag-type-error-message.enum.d.ts +3 -0
- package/lib/shared/components/palette/case-flag/enums/select-flag-type-error-message.enum.d.ts.map +1 -1
- package/lib/shared/components/palette/case-flag/enums/update-flag-add-translation-error-message.enum.d.ts +5 -0
- package/lib/shared/components/palette/case-flag/enums/update-flag-add-translation-error-message.enum.d.ts.map +1 -0
- package/lib/shared/components/palette/case-flag/enums/update-flag-add-translation-step.enum.d.ts +5 -0
- package/lib/shared/components/palette/case-flag/enums/update-flag-add-translation-step.enum.d.ts.map +1 -0
- package/lib/shared/components/palette/case-flag/enums/update-flag-error-message.enum.d.ts +5 -1
- package/lib/shared/components/palette/case-flag/enums/update-flag-error-message.enum.d.ts.map +1 -1
- package/lib/shared/components/palette/case-flag/enums/update-flag-step.enum.d.ts +7 -2
- package/lib/shared/components/palette/case-flag/enums/update-flag-step.enum.d.ts.map +1 -1
- package/lib/shared/components/palette/case-flag/enums/write-case-flag-field.enum.d.ts +7 -4
- package/lib/shared/components/palette/case-flag/enums/write-case-flag-field.enum.d.ts.map +1 -1
- package/lib/shared/components/palette/case-flag/index.d.ts +1 -0
- package/lib/shared/components/palette/case-flag/index.d.ts.map +1 -1
- package/lib/shared/components/palette/case-flag/pipes/flag-field-display.pipe.d.ts +19 -0
- package/lib/shared/components/palette/case-flag/pipes/flag-field-display.pipe.d.ts.map +1 -0
- package/lib/shared/components/palette/case-flag/pipes/index.d.ts +5 -0
- package/lib/shared/components/palette/case-flag/pipes/index.d.ts.map +1 -0
- package/lib/shared/components/palette/case-flag/pipes/language-interpreter-display.pipe.d.ts +18 -0
- package/lib/shared/components/palette/case-flag/pipes/language-interpreter-display.pipe.d.ts.map +1 -0
- package/lib/shared/components/palette/case-flag/pipes/manage-case-flags-label-display.pipe.d.ts +25 -0
- package/lib/shared/components/palette/case-flag/pipes/manage-case-flags-label-display.pipe.d.ts.map +1 -0
- package/lib/shared/components/palette/case-flag/pipes/update-flag-title-display.pipe.d.ts +21 -0
- package/lib/shared/components/palette/case-flag/pipes/update-flag-title-display.pipe.d.ts.map +1 -0
- package/lib/shared/components/palette/case-flag/read-case-flag-field.component.d.ts +12 -8
- package/lib/shared/components/palette/case-flag/read-case-flag-field.component.d.ts.map +1 -1
- package/lib/shared/components/palette/case-flag/write-case-flag-field.component.d.ts +51 -26
- package/lib/shared/components/palette/case-flag/write-case-flag-field.component.d.ts.map +1 -1
- package/lib/shared/components/palette/collection/write-collection-field.component.d.ts +3 -2
- package/lib/shared/components/palette/collection/write-collection-field.component.d.ts.map +1 -1
- package/lib/shared/components/palette/complex/sort-order.d.ts +6 -0
- package/lib/shared/components/palette/complex/sort-order.d.ts.map +1 -0
- package/lib/shared/components/palette/index.d.ts +2 -0
- package/lib/shared/components/palette/index.d.ts.map +1 -1
- package/lib/shared/components/palette/markdown/index.d.ts +1 -0
- package/lib/shared/components/palette/markdown/index.d.ts.map +1 -1
- package/lib/shared/components/palette/markdown/markdown-component.module.d.ts +13 -0
- package/lib/shared/components/palette/markdown/markdown-component.module.d.ts.map +1 -0
- package/lib/shared/components/palette/palette.module.d.ts +140 -118
- package/lib/shared/components/palette/palette.module.d.ts.map +1 -1
- package/lib/shared/components/palette/palette.service.d.ts.map +1 -1
- package/lib/shared/components/palette/query-management/__mocks__/index.d.ts +11 -0
- package/lib/shared/components/palette/query-management/__mocks__/index.d.ts.map +1 -0
- package/lib/shared/components/palette/query-management/components/index.d.ts +13 -0
- package/lib/shared/components/palette/query-management/components/index.d.ts.map +1 -0
- package/lib/shared/components/palette/query-management/components/qualifying-questions/qualifying-question-detail/qualifying-question-detail.component.d.ts +8 -0
- package/lib/shared/components/palette/query-management/components/qualifying-questions/qualifying-question-detail/qualifying-question-detail.component.d.ts.map +1 -0
- package/lib/shared/components/palette/query-management/components/qualifying-questions/qualifying-question-options/qualifying-question-options.component.d.ts +22 -0
- package/lib/shared/components/palette/query-management/components/qualifying-questions/qualifying-question-options/qualifying-question-options.component.d.ts.map +1 -0
- package/lib/shared/components/palette/query-management/components/query-attachments-read/query-attachments-read.component.d.ts +11 -0
- package/lib/shared/components/palette/query-management/components/query-attachments-read/query-attachments-read.component.d.ts.map +1 -0
- package/lib/shared/components/palette/query-management/components/query-case-details-header/query-case-details-header.component.d.ts +10 -0
- package/lib/shared/components/palette/query-management/components/query-case-details-header/query-case-details-header.component.d.ts.map +1 -0
- package/lib/shared/components/palette/query-management/components/query-check-your-answers/query-check-your-answers.component.d.ts +30 -0
- package/lib/shared/components/palette/query-management/components/query-check-your-answers/query-check-your-answers.component.d.ts.map +1 -0
- package/lib/shared/components/palette/query-management/components/query-details/query-details.component.d.ts +16 -0
- package/lib/shared/components/palette/query-management/components/query-details/query-details.component.d.ts.map +1 -0
- package/lib/shared/components/palette/query-management/components/query-event-completion/query-event-completion.component.d.ts +9 -0
- package/lib/shared/components/palette/query-management/components/query-event-completion/query-event-completion.component.d.ts.map +1 -0
- package/lib/shared/components/palette/query-management/components/query-list/query-list.component.d.ts +18 -0
- package/lib/shared/components/palette/query-management/components/query-list/query-list.component.d.ts.map +1 -0
- package/lib/shared/components/palette/query-management/components/query-write/query-write-add-documents/query-write-add-documents.component.d.ts +20 -0
- package/lib/shared/components/palette/query-management/components/query-write/query-write-add-documents/query-write-add-documents.component.d.ts.map +1 -0
- package/lib/shared/components/palette/query-management/components/query-write/query-write-date-input/query-write-date-input.component.d.ts +20 -0
- package/lib/shared/components/palette/query-management/components/query-write/query-write-date-input/query-write-date-input.component.d.ts.map +1 -0
- package/lib/shared/components/palette/query-management/components/query-write/query-write-raise-query/query-write-raise-query.component.d.ts +11 -0
- package/lib/shared/components/palette/query-management/components/query-write/query-write-raise-query/query-write-raise-query.component.d.ts.map +1 -0
- package/lib/shared/components/palette/query-management/components/query-write/query-write-respond-to-query/query-write-respond-to-query.component.d.ts +21 -0
- package/lib/shared/components/palette/query-management/components/query-write/query-write-respond-to-query/query-write-respond-to-query.component.d.ts.map +1 -0
- package/lib/shared/components/palette/query-management/enums/index.d.ts +6 -0
- package/lib/shared/components/palette/query-management/enums/index.d.ts.map +1 -0
- package/lib/shared/components/palette/query-management/enums/qualifying-questions-error-message.enum.d.ts +4 -0
- package/lib/shared/components/palette/query-management/enums/qualifying-questions-error-message.enum.d.ts.map +1 -0
- package/lib/shared/components/palette/query-management/enums/query-item-response-status.enum.d.ts +5 -0
- package/lib/shared/components/palette/query-management/enums/query-item-response-status.enum.d.ts.map +1 -0
- package/lib/shared/components/palette/query-management/enums/raise-query-error-message.enum.d.ts +9 -0
- package/lib/shared/components/palette/query-management/enums/raise-query-error-message.enum.d.ts.map +1 -0
- package/lib/shared/components/palette/query-management/enums/respond-to-query-error-messages.enum.d.ts +5 -0
- package/lib/shared/components/palette/query-management/enums/respond-to-query-error-messages.enum.d.ts.map +1 -0
- package/lib/shared/components/palette/query-management/index.d.ts +7 -0
- package/lib/shared/components/palette/query-management/index.d.ts.map +1 -0
- package/lib/shared/components/palette/query-management/models/case-queries-collection.model.d.ts +27 -0
- package/lib/shared/components/palette/query-management/models/case-queries-collection.model.d.ts.map +1 -0
- package/lib/shared/components/palette/query-management/models/index.d.ts +8 -0
- package/lib/shared/components/palette/query-management/models/index.d.ts.map +1 -0
- package/lib/shared/components/palette/query-management/models/qualifying-questions/casetype-qualifying-questions.model.d.ts +5 -0
- package/lib/shared/components/palette/query-management/models/qualifying-questions/casetype-qualifying-questions.model.d.ts.map +1 -0
- package/lib/shared/components/palette/query-management/models/qualifying-questions/qualifying-question.model.d.ts +6 -0
- package/lib/shared/components/palette/query-management/models/qualifying-questions/qualifying-question.model.d.ts.map +1 -0
- package/lib/shared/components/palette/query-management/models/query-create-context.enum.d.ts +8 -0
- package/lib/shared/components/palette/query-management/models/query-create-context.enum.d.ts.map +1 -0
- package/lib/shared/components/palette/query-management/models/query-list/query-list-column/query-list-column.model.d.ts +7 -0
- package/lib/shared/components/palette/query-management/models/query-list/query-list-column/query-list-column.model.d.ts.map +1 -0
- package/lib/shared/components/palette/query-management/models/query-list/query-list-data/query-list-data.model.d.ts +10 -0
- package/lib/shared/components/palette/query-management/models/query-list/query-list-data/query-list-data.model.d.ts.map +1 -0
- package/lib/shared/components/palette/query-management/models/query-list/query-list-item/query-list-item.model.d.ts +22 -0
- package/lib/shared/components/palette/query-management/models/query-list/query-list-item/query-list-item.model.d.ts.map +1 -0
- package/lib/shared/components/palette/query-management/read-query-management-field.component.d.ts +18 -0
- package/lib/shared/components/palette/query-management/read-query-management-field.component.d.ts.map +1 -0
- package/lib/shared/components/palette/query-management/utils/query-management.utils.d.ts +12 -0
- package/lib/shared/components/palette/query-management/utils/query-management.utils.d.ts.map +1 -0
- package/lib/shared/components/palette/utils/first-error.pipe.d.ts +8 -5
- package/lib/shared/components/palette/utils/first-error.pipe.d.ts.map +1 -1
- package/lib/shared/domain/case-flag/flag-type.model.d.ts +6 -1
- package/lib/shared/domain/case-flag/flag-type.model.d.ts.map +1 -1
- package/lib/shared/domain/case-view/case-view-event-ids.enum.d.ts +5 -0
- package/lib/shared/domain/case-view/case-view-event-ids.enum.d.ts.map +1 -0
- package/lib/shared/domain/case-view/case-view-trigger.model.d.ts +0 -1
- package/lib/shared/domain/case-view/case-view-trigger.model.d.ts.map +1 -1
- package/lib/shared/domain/definition/display-context-enum.model.d.ts +3 -1
- package/lib/shared/domain/definition/display-context-enum.model.d.ts.map +1 -1
- package/lib/shared/domain/http/http-error.model.d.ts.map +1 -1
- package/lib/shared/fixture/shared.test.fixture.d.ts.map +1 -1
- package/lib/shared/pipes/generic/enum-display-description/enum-display-description.pipe.d.ts +8 -0
- package/lib/shared/pipes/generic/enum-display-description/enum-display-description.pipe.d.ts.map +1 -0
- package/lib/shared/pipes/generic/index.d.ts +2 -0
- package/lib/shared/pipes/generic/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 +3 -2
- package/lib/shared/pipes/pipes.module.d.ts.map +1 -1
- package/lib/shared/services/case-flag/case-flag-refdata.service.d.ts +3 -2
- package/lib/shared/services/case-flag/case-flag-refdata.service.d.ts.map +1 -1
- package/lib/shared/services/fields/fields.utils.d.ts +1 -0
- package/lib/shared/services/fields/fields.utils.d.ts.map +1 -1
- package/lib/shared/services/form/form-value.service.d.ts.map +1 -1
- package/lib/shared/services/http/http-error.service.d.ts.map +1 -1
- package/lib/shared/services/jurisdiction/jurisdiction.service.d.ts.map +1 -1
- package/lib/shared/services/request/request.options.builder.d.ts.map +1 -1
- package/package.json +1 -1
package/esm2015/lib/shared/components/palette/case-flag/pipes/update-flag-title-display.pipe.js
ADDED
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { AsyncPipe } from '@angular/common';
|
|
2
|
+
import { ChangeDetectorRef, Pipe } from '@angular/core';
|
|
3
|
+
import { RpxTranslationService } from 'rpx-xui-translation';
|
|
4
|
+
import { map } from 'rxjs/operators';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "rpx-xui-translation";
|
|
7
|
+
export class UpdateFlagTitleDisplayPipe extends AsyncPipe {
|
|
8
|
+
constructor(translationService, ref) {
|
|
9
|
+
super(ref);
|
|
10
|
+
this.translationService = translationService;
|
|
11
|
+
this.ref = ref;
|
|
12
|
+
this.languageObservables = new Map();
|
|
13
|
+
}
|
|
14
|
+
transform(value) {
|
|
15
|
+
if (typeof value === 'object') {
|
|
16
|
+
// Use a map from FlagType code + name + name_cy to an Observable returned by RpxTranslationService, to keep
|
|
17
|
+
// track of which Observables exist already. This is to avoid problems with the async pipe, caused by a new
|
|
18
|
+
// Observable being created by the pipe() operator every time it is called for the same fieldName
|
|
19
|
+
const languageObservableKey = `${value['flagCode']}_${value['name']}_${value['name_cy']}`;
|
|
20
|
+
if (!this.languageObservables.has(languageObservableKey)) {
|
|
21
|
+
const o = this.translationService.language$.pipe(map((_) => {
|
|
22
|
+
const flagName = this.getFlagName(value);
|
|
23
|
+
const flagDescription = this.getFlagDescription(value);
|
|
24
|
+
const flagComment = this.getFlagComments(value);
|
|
25
|
+
return flagName === flagDescription
|
|
26
|
+
? `${flagDescription}${flagComment}`
|
|
27
|
+
: `${flagName}, ${flagDescription}${flagComment}`;
|
|
28
|
+
}));
|
|
29
|
+
this.languageObservables.set(languageObservableKey, o);
|
|
30
|
+
return super.transform(o);
|
|
31
|
+
}
|
|
32
|
+
return super.transform(this.languageObservables.get(languageObservableKey));
|
|
33
|
+
}
|
|
34
|
+
return null;
|
|
35
|
+
}
|
|
36
|
+
getFlagName(flagDetail) {
|
|
37
|
+
return flagDetail.subTypeValue || flagDetail.subTypeValue_cy
|
|
38
|
+
? this.translationService.language === 'cy'
|
|
39
|
+
? `${flagDetail.name_cy || flagDetail.name}, ${flagDetail.subTypeValue_cy || flagDetail.subTypeValue}`
|
|
40
|
+
: `${flagDetail.name || flagDetail.name_cy}, ${flagDetail.subTypeValue || flagDetail.subTypeValue_cy}`
|
|
41
|
+
: this.translationService.language === 'cy'
|
|
42
|
+
? flagDetail.name_cy || flagDetail.name
|
|
43
|
+
: flagDetail.name || flagDetail.name_cy;
|
|
44
|
+
}
|
|
45
|
+
getFlagDescription(flagDetail) {
|
|
46
|
+
/* istanbul ignore else */
|
|
47
|
+
if (flagDetail && flagDetail.name) {
|
|
48
|
+
/* istanbul ignore else */
|
|
49
|
+
if (flagDetail.name === 'Other' && flagDetail.otherDescription ||
|
|
50
|
+
flagDetail.name_cy === 'Arall' && flagDetail.otherDescription_cy) {
|
|
51
|
+
return this.translationService.language === 'cy'
|
|
52
|
+
? flagDetail.otherDescription_cy || flagDetail.otherDescription
|
|
53
|
+
: flagDetail.otherDescription || flagDetail.otherDescription_cy;
|
|
54
|
+
}
|
|
55
|
+
return this.getFlagName(flagDetail);
|
|
56
|
+
}
|
|
57
|
+
return '';
|
|
58
|
+
}
|
|
59
|
+
getFlagComments(flagDetail) {
|
|
60
|
+
if (flagDetail.flagComment || flagDetail.flagComment_cy) {
|
|
61
|
+
return this.translationService.language === 'cy'
|
|
62
|
+
? ` - ${flagDetail.flagComment_cy || flagDetail.flagComment}`
|
|
63
|
+
: ` - ${flagDetail.flagComment || flagDetail.flagComment_cy}`;
|
|
64
|
+
}
|
|
65
|
+
return '';
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
UpdateFlagTitleDisplayPipe.ɵfac = function UpdateFlagTitleDisplayPipe_Factory(t) { return new (t || UpdateFlagTitleDisplayPipe)(i0.ɵɵdirectiveInject(i1.RpxTranslationService), i0.ɵɵinjectPipeChangeDetectorRef()); };
|
|
69
|
+
UpdateFlagTitleDisplayPipe.ɵpipe = i0.ɵɵdefinePipe({ name: "updateFlagTitleDisplay", type: UpdateFlagTitleDisplayPipe, pure: false });
|
|
70
|
+
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(UpdateFlagTitleDisplayPipe, [{
|
|
71
|
+
type: Pipe,
|
|
72
|
+
args: [{
|
|
73
|
+
name: 'updateFlagTitleDisplay',
|
|
74
|
+
pure: false
|
|
75
|
+
}]
|
|
76
|
+
}], function () { return [{ type: i1.RpxTranslationService }, { type: i0.ChangeDetectorRef }]; }, null); })();
|
|
77
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBkYXRlLWZsYWctdGl0bGUtZGlzcGxheS5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2NkLWNhc2UtdWktdG9vbGtpdC9zcmMvbGliL3NoYXJlZC9jb21wb25lbnRzL3BhbGV0dGUvY2FzZS1mbGFnL3BpcGVzL3VwZGF0ZS1mbGFnLXRpdGxlLWRpc3BsYXkucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDNUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFNUQsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7QUFPckMsTUFBTSxPQUFPLDBCQUEyQixTQUFRLFNBQVM7SUFHdkQsWUFDbUIsa0JBQXlDLEVBQ3pDLEdBQXNCO1FBRXZDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUhNLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBdUI7UUFDekMsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFKakMsd0JBQW1CLEdBQUcsSUFBSSxHQUFHLEVBQThCLENBQUM7SUFPcEUsQ0FBQztJQUtNLFNBQVMsQ0FBaUIsS0FBUTtRQUN2QyxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRTtZQUM3Qiw0R0FBNEc7WUFDNUcsMkdBQTJHO1lBQzNHLGlHQUFpRztZQUNqRyxNQUFNLHFCQUFxQixHQUFHLEdBQUcsS0FBSyxDQUFDLFVBQVUsQ0FBQyxJQUFJLEtBQUssQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQztZQUMxRixJQUFJLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsQ0FB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QVcsRUFBRTtnQkFDN0QsQ0FBQyxDQUFDLE1BQU0sVUFBVSxDQUFDLFdBQVcsSUFBSSxVQUFVLENBQUMsY0FBYyxFQUFFLENBQUM7U0FDakU7UUFDRCxPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7O29HQXRFVSwwQkFBMEI7MkZBQTFCLDBCQUEwQjt1RkFBMUIsMEJBQTBCO2NBSnRDLElBQUk7ZUFBQztnQkFDSixJQUFJLEVBQUUsd0JBQXdCO2dCQUM5QixJQUFJLEVBQUUsS0FBSzthQUNaIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXN5bmNQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBScHhUcmFuc2xhdGlvblNlcnZpY2UgfSBmcm9tICdycHgteHVpLXRyYW5zbGF0aW9uJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YnNjcmliYWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgRmxhZ0RldGFpbCB9IGZyb20gJy4uL2RvbWFpbic7XG5cbkBQaXBlKHtcbiAgbmFtZTogJ3VwZGF0ZUZsYWdUaXRsZURpc3BsYXknLFxuICBwdXJlOiBmYWxzZVxufSlcbmV4cG9ydCBjbGFzcyBVcGRhdGVGbGFnVGl0bGVEaXNwbGF5UGlwZSBleHRlbmRzIEFzeW5jUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICBwcml2YXRlIGxhbmd1YWdlT2JzZXJ2YWJsZXMgPSBuZXcgTWFwPHN0cmluZywgT2JzZXJ2YWJsZTxzdHJpbmc+PigpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdHJhbnNsYXRpb25TZXJ2aWNlOiBScHhUcmFuc2xhdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSByZWY6IENoYW5nZURldGVjdG9yUmVmXG4gICkge1xuICAgIHN1cGVyKHJlZik7XG4gIH1cblxuICBwdWJsaWMgdHJhbnNmb3JtPFQ+KG9iajogbnVsbHx1bmRlZmluZWQpOiBudWxsO1xuICBwdWJsaWMgdHJhbnNmb3JtPFQ+KG9iajogT2JzZXJ2YWJsZTxUPnxTdWJzY3JpYmFibGU8VD58UHJvbWlzZTxUPnxudWxsfHVuZGVmaW5lZCk6IFR8bnVsbDtcbiAgcHVibGljIHRyYW5zZm9ybTxUID0gRmxhZ0RldGFpbD4odmFsdWU6IFQpOiBzdHJpbmd8bnVsbDtcbiAgcHVibGljIHRyYW5zZm9ybTxUID0gRmxhZ0RldGFpbD4odmFsdWU6IFQpOiBzdHJpbmd8bnVsbCB7XG4gICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ29iamVjdCcpIHtcbiAgICAgIC8vIFVzZSBhIG1hcCBmcm9tIEZsYWdUeXBlIGNvZGUgKyBuYW1lICsgbmFtZV9jeSB0byBhbiBPYnNlcnZhYmxlIHJldHVybmVkIGJ5IFJweFRyYW5zbGF0aW9uU2VydmljZSwgdG8ga2VlcFxuICAgICAgLy8gdHJhY2sgb2Ygd2hpY2ggT2JzZXJ2YWJsZXMgZXhpc3QgYWxyZWFkeS4gVGhpcyBpcyB0byBhdm9pZCBwcm9ibGVtcyB3aXRoIHRoZSBhc3luYyBwaXBlLCBjYXVzZWQgYnkgYSBuZXdcbiAgICAgIC8vIE9ic2VydmFibGUgYmVpbmcgY3JlYXRlZCBieSB0aGUgcGlwZSgpIG9wZXJhdG9yIGV2ZXJ5IHRpbWUgaXQgaXMgY2FsbGVkIGZvciB0aGUgc2FtZSBmaWVsZE5hbWVcbiAgICAgIGNvbnN0IGxhbmd1YWdlT2JzZXJ2YWJsZUtleSA9IGAke3ZhbHVlWydmbGFnQ29kZSddfV8ke3ZhbHVlWyduYW1lJ119XyR7dmFsdWVbJ25hbWVfY3knXX1gO1xuICAgICAgaWYgKCF0aGlzLmxhbmd1YWdlT2JzZXJ2YWJsZXMuaGFzKGxhbmd1YWdlT2JzZXJ2YWJsZUtleSkpIHtcbiAgICAgICAgY29uc3QgbzogT2JzZXJ2YWJsZTxzdHJpbmc+ID0gdGhpcy50cmFuc2xhdGlvblNlcnZpY2UubGFuZ3VhZ2UkLnBpcGUoXG4gICAgICAgICAgbWFwKChfKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBmbGFnTmFtZSA9IHRoaXMuZ2V0RmxhZ05hbWUodmFsdWUgYXMgdW5rbm93biBhcyBGbGFnRGV0YWlsKTtcbiAgICAgICAgICAgIGNvbnN0IGZsYWdEZXNjcmlwdGlvbiA9IHRoaXMuZ2V0RmxhZ0Rlc2NyaXB0aW9uKHZhbHVlIGFzIHVua25vd24gYXMgRmxhZ0RldGFpbCk7XG4gICAgICAgICAgICBjb25zdCBmbGFnQ29tbWVudCA9IHRoaXMuZ2V0RmxhZ0NvbW1lbnRzKHZhbHVlIGFzIHVua25vd24gYXMgRmxhZ0RldGFpbCk7XG4gICAgICAgICAgICByZXR1cm4gZmxhZ05hbWUgPT09IGZsYWdEZXNjcmlwdGlvblxuICAgICAgICAgICAgICA/IGAke2ZsYWdEZXNjcmlwdGlvbn0ke2ZsYWdDb21tZW50fWBcbiAgICAgICAgICAgICAgOiBgJHtmbGFnTmFtZX0sICR7ZmxhZ0Rlc2NyaXB0aW9ufSR7ZmxhZ0NvbW1lbnR9YDtcbiAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgICAgICB0aGlzLmxhbmd1YWdlT2JzZXJ2YWJsZXMuc2V0KGxhbmd1YWdlT2JzZXJ2YWJsZUtleSwgbyk7XG4gICAgICAgIHJldHVybiBzdXBlci50cmFuc2Zvcm08c3RyaW5nPihvKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBzdXBlci50cmFuc2Zvcm08c3RyaW5nPih0aGlzLmxhbmd1YWdlT2JzZXJ2YWJsZXMuZ2V0KGxhbmd1YWdlT2JzZXJ2YWJsZUtleSkpO1xuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHB1YmxpYyBnZXRGbGFnTmFtZShmbGFnRGV0YWlsOiBGbGFnRGV0YWlsKTogc3RyaW5nIHtcbiAgICByZXR1cm4gZmxhZ0RldGFpbC5zdWJUeXBlVmFsdWUgfHwgZmxhZ0RldGFpbC5zdWJUeXBlVmFsdWVfY3lcbiAgICAgID8gdGhpcy50cmFuc2xhdGlvblNlcnZpY2UubGFuZ3VhZ2UgPT09ICdjeSdcbiAgICAgICAgPyBgJHtmbGFnRGV0YWlsLm5hbWVfY3kgfHwgZmxhZ0RldGFpbC5uYW1lfSwgJHtmbGFnRGV0YWlsLnN1YlR5cGVWYWx1ZV9jeSB8fCBmbGFnRGV0YWlsLnN1YlR5cGVWYWx1ZX1gXG4gICAgICAgIDogYCR7ZmxhZ0RldGFpbC5uYW1lIHx8IGZsYWdEZXRhaWwubmFtZV9jeX0sICR7ZmxhZ0RldGFpbC5zdWJUeXBlVmFsdWUgfHwgZmxhZ0RldGFpbC5zdWJUeXBlVmFsdWVfY3l9YFxuICAgICAgOiB0aGlzLnRyYW5zbGF0aW9uU2VydmljZS5sYW5ndWFnZSA9PT0gJ2N5J1xuICAgICAgICA/IGZsYWdEZXRhaWwubmFtZV9jeSB8fCBmbGFnRGV0YWlsLm5hbWVcbiAgICAgICAgOiBmbGFnRGV0YWlsLm5hbWUgfHwgZmxhZ0RldGFpbC5uYW1lX2N5O1xuICB9XG5cbiAgcHVibGljIGdldEZsYWdEZXNjcmlwdGlvbihmbGFnRGV0YWlsOiBGbGFnRGV0YWlsKTogc3RyaW5nIHtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgIGlmIChmbGFnRGV0YWlsICYmIGZsYWdEZXRhaWwubmFtZSkge1xuICAgICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICAgIGlmIChmbGFnRGV0YWlsLm5hbWUgPT09ICdPdGhlcicgJiYgZmxhZ0RldGFpbC5vdGhlckRlc2NyaXB0aW9uIHx8XG4gICAgICAgIGZsYWdEZXRhaWwubmFtZV9jeSA9PT0gJ0FyYWxsJyAmJiBmbGFnRGV0YWlsLm90aGVyRGVzY3JpcHRpb25fY3kpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudHJhbnNsYXRpb25TZXJ2aWNlLmxhbmd1YWdlID09PSAnY3knXG4gICAgICAgICAgPyBmbGFnRGV0YWlsLm90aGVyRGVzY3JpcHRpb25fY3kgfHwgZmxhZ0RldGFpbC5vdGhlckRlc2NyaXB0aW9uXG4gICAgICAgICAgOiBmbGFnRGV0YWlsLm90aGVyRGVzY3JpcHRpb24gfHwgZmxhZ0RldGFpbC5vdGhlckRlc2NyaXB0aW9uX2N5O1xuICAgICAgfVxuICAgICAgcmV0dXJuIHRoaXMuZ2V0RmxhZ05hbWUoZmxhZ0RldGFpbCk7XG4gICAgfVxuICAgIHJldHVybiAnJztcbiAgfVxuXG4gIHB1YmxpYyBnZXRGbGFnQ29tbWVudHMoZmxhZ0RldGFpbDogRmxhZ0RldGFpbCk6IHN0cmluZyB7XG4gICAgaWYgKGZsYWdEZXRhaWwuZmxhZ0NvbW1lbnQgfHwgZmxhZ0RldGFpbC5mbGFnQ29tbWVudF9jeSkge1xuICAgICAgcmV0dXJuIHRoaXMudHJhbnNsYXRpb25TZXJ2aWNlLmxhbmd1YWdlID09PSAnY3knXG4gICAgICAgID8gYCAtICR7ZmxhZ0RldGFpbC5mbGFnQ29tbWVudF9jeSB8fCBmbGFnRGV0YWlsLmZsYWdDb21tZW50fWBcbiAgICAgICAgOiBgIC0gJHtmbGFnRGV0YWlsLmZsYWdDb21tZW50IHx8IGZsYWdEZXRhaWwuZmxhZ0NvbW1lbnRfY3l9YDtcbiAgICB9XG4gICAgcmV0dXJuICcnO1xuICB9XG59XG4iXX0=
|
|
@@ -1,70 +1,134 @@
|
|
|
1
1
|
import { Component } from '@angular/core';
|
|
2
|
-
import { ActivatedRoute } from '@angular/router';
|
|
2
|
+
import { ActivatedRoute, Router } from '@angular/router';
|
|
3
3
|
import { FieldsUtils } from '../../../services/fields';
|
|
4
|
+
import { CaseFlagStateService } from '../../case-editor/services/case-flag-state.service';
|
|
4
5
|
import { AbstractFieldReadComponent } from '../base-field/abstract-field-read.component';
|
|
5
6
|
import { PaletteContext } from '../base-field/palette-context.enum';
|
|
6
|
-
import {
|
|
7
|
+
import { CaseFlagDisplayContextParameter, CaseFlagStatus } from './enums';
|
|
7
8
|
import * as i0 from "@angular/core";
|
|
8
9
|
import * as i1 from "@angular/router";
|
|
9
|
-
|
|
10
|
+
import * as i2 from "../../case-editor/services/case-flag-state.service";
|
|
11
|
+
function ReadCaseFlagFieldComponent_ng_container_0_Template(rf, ctx) { if (rf & 1) {
|
|
12
|
+
const _r3 = i0.ɵɵgetCurrentView();
|
|
10
13
|
i0.ɵɵelementContainerStart(0);
|
|
11
|
-
i0.ɵɵ
|
|
14
|
+
i0.ɵɵelementStart(1, "ccd-case-flag-summary-list", 1);
|
|
15
|
+
i0.ɵɵlistener("changeButtonEmitter", function ReadCaseFlagFieldComponent_ng_container_0_Template_ccd_case_flag_summary_list_changeButtonEmitter_1_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r2 = i0.ɵɵnextContext(); return ctx_r2.navigateBackToForm($event); });
|
|
16
|
+
i0.ɵɵelementEnd();
|
|
12
17
|
i0.ɵɵelementContainerEnd();
|
|
13
18
|
} if (rf & 2) {
|
|
14
19
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
15
20
|
i0.ɵɵadvance(1);
|
|
16
|
-
i0.ɵɵproperty("flagForSummaryDisplay", ctx_r0.flagForSummaryDisplay)("
|
|
21
|
+
i0.ɵɵproperty("flagForSummaryDisplay", ctx_r0.flagForSummaryDisplay)("displayContextParameter", ctx_r0.displayContextParameter);
|
|
17
22
|
} }
|
|
18
|
-
function
|
|
23
|
+
function ReadCaseFlagFieldComponent_ng_container_1_ng_container_2_div_4_ccd_case_flag_table_1_Template(rf, ctx) { if (rf & 1) {
|
|
19
24
|
i0.ɵɵelement(0, "ccd-case-flag-table", 8);
|
|
20
25
|
} if (rf & 2) {
|
|
21
|
-
const
|
|
22
|
-
i0.ɵɵ
|
|
26
|
+
const flagData_r7 = i0.ɵɵnextContext().$implicit;
|
|
27
|
+
const ctx_r8 = i0.ɵɵnextContext(3);
|
|
28
|
+
i0.ɵɵproperty("tableCaption", "")("flagData", flagData_r7)("firstColumnHeader", flagData_r7.flags.partyName)("caseFlagsExternalUser", ctx_r8.caseFlagsExternalUser);
|
|
29
|
+
} }
|
|
30
|
+
function ReadCaseFlagFieldComponent_ng_container_1_ng_container_2_div_4_Template(rf, ctx) { if (rf & 1) {
|
|
31
|
+
i0.ɵɵelementStart(0, "div");
|
|
32
|
+
i0.ɵɵtemplate(1, ReadCaseFlagFieldComponent_ng_container_1_ng_container_2_div_4_ccd_case_flag_table_1_Template, 1, 4, "ccd-case-flag-table", 7);
|
|
33
|
+
i0.ɵɵelementEnd();
|
|
34
|
+
} if (rf & 2) {
|
|
35
|
+
const flagData_r7 = ctx.$implicit;
|
|
36
|
+
i0.ɵɵadvance(1);
|
|
37
|
+
i0.ɵɵproperty("ngIf", flagData_r7.flags.partyName);
|
|
38
|
+
} }
|
|
39
|
+
function ReadCaseFlagFieldComponent_ng_container_1_ng_container_2_Template(rf, ctx) { if (rf & 1) {
|
|
40
|
+
i0.ɵɵelementContainerStart(0);
|
|
41
|
+
i0.ɵɵelementStart(1, "h2", 5);
|
|
42
|
+
i0.ɵɵtext(2);
|
|
43
|
+
i0.ɵɵpipe(3, "rpxTranslate");
|
|
44
|
+
i0.ɵɵelementEnd();
|
|
45
|
+
i0.ɵɵtemplate(4, ReadCaseFlagFieldComponent_ng_container_1_ng_container_2_div_4_Template, 2, 1, "div", 6);
|
|
46
|
+
i0.ɵɵelementContainerEnd();
|
|
47
|
+
} if (rf & 2) {
|
|
48
|
+
const ctx_r4 = i0.ɵɵnextContext(2);
|
|
49
|
+
i0.ɵɵadvance(2);
|
|
50
|
+
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(3, 2, "Support requested"), " ");
|
|
51
|
+
i0.ɵɵadvance(2);
|
|
52
|
+
i0.ɵɵproperty("ngForOf", ctx_r4.partyLevelCaseFlagData);
|
|
53
|
+
} }
|
|
54
|
+
function ReadCaseFlagFieldComponent_ng_container_1_ng_container_3_div_4_ccd_case_flag_table_1_Template(rf, ctx) { if (rf & 1) {
|
|
55
|
+
i0.ɵɵelement(0, "ccd-case-flag-table", 10);
|
|
56
|
+
i0.ɵɵpipe(1, "rpxTranslate");
|
|
57
|
+
} if (rf & 2) {
|
|
58
|
+
const flagData_r12 = i0.ɵɵnextContext().$implicit;
|
|
59
|
+
i0.ɵɵproperty("tableCaption", flagData_r12.flags.partyName)("flagData", flagData_r12)("firstColumnHeader", i0.ɵɵpipeBind1(1, 3, "Party level flags"));
|
|
23
60
|
} }
|
|
24
|
-
function
|
|
61
|
+
function ReadCaseFlagFieldComponent_ng_container_1_ng_container_3_div_4_Template(rf, ctx) { if (rf & 1) {
|
|
25
62
|
i0.ɵɵelementStart(0, "div");
|
|
26
|
-
i0.ɵɵtemplate(1,
|
|
63
|
+
i0.ɵɵtemplate(1, ReadCaseFlagFieldComponent_ng_container_1_ng_container_3_div_4_ccd_case_flag_table_1_Template, 2, 5, "ccd-case-flag-table", 9);
|
|
27
64
|
i0.ɵɵelementEnd();
|
|
28
65
|
} if (rf & 2) {
|
|
29
|
-
const
|
|
66
|
+
const flagData_r12 = ctx.$implicit;
|
|
30
67
|
i0.ɵɵadvance(1);
|
|
31
|
-
i0.ɵɵproperty("ngIf",
|
|
68
|
+
i0.ɵɵproperty("ngIf", flagData_r12.flags.partyName);
|
|
32
69
|
} }
|
|
33
|
-
function
|
|
70
|
+
function ReadCaseFlagFieldComponent_ng_container_1_ng_container_3_div_5_Template(rf, ctx) { if (rf & 1) {
|
|
34
71
|
i0.ɵɵelementStart(0, "div");
|
|
35
|
-
i0.ɵɵelement(1, "ccd-case-flag-table",
|
|
72
|
+
i0.ɵɵelement(1, "ccd-case-flag-table", 10);
|
|
73
|
+
i0.ɵɵpipe(2, "rpxTranslate");
|
|
74
|
+
i0.ɵɵpipe(3, "rpxTranslate");
|
|
36
75
|
i0.ɵɵelementEnd();
|
|
37
76
|
} if (rf & 2) {
|
|
38
|
-
const
|
|
77
|
+
const ctx_r11 = i0.ɵɵnextContext(3);
|
|
39
78
|
i0.ɵɵadvance(1);
|
|
40
|
-
i0.ɵɵproperty("tableCaption", "Case level flags")("flagData",
|
|
79
|
+
i0.ɵɵproperty("tableCaption", i0.ɵɵpipeBind1(2, 3, "Case level flags"))("flagData", ctx_r11.caseLevelCaseFlagData)("firstColumnHeader", i0.ɵɵpipeBind1(3, 5, "Case flags"));
|
|
41
80
|
} }
|
|
42
|
-
function
|
|
81
|
+
function ReadCaseFlagFieldComponent_ng_container_1_ng_container_3_Template(rf, ctx) { if (rf & 1) {
|
|
43
82
|
i0.ɵɵelementContainerStart(0);
|
|
44
|
-
i0.ɵɵelementStart(1, "h2",
|
|
45
|
-
i0.ɵɵtext(2
|
|
83
|
+
i0.ɵɵelementStart(1, "h2", 5);
|
|
84
|
+
i0.ɵɵtext(2);
|
|
85
|
+
i0.ɵɵpipe(3, "rpxTranslate");
|
|
46
86
|
i0.ɵɵelementEnd();
|
|
47
|
-
i0.ɵɵtemplate(
|
|
48
|
-
i0.ɵɵtemplate(
|
|
87
|
+
i0.ɵɵtemplate(4, ReadCaseFlagFieldComponent_ng_container_1_ng_container_3_div_4_Template, 2, 1, "div", 6);
|
|
88
|
+
i0.ɵɵtemplate(5, ReadCaseFlagFieldComponent_ng_container_1_ng_container_3_div_5_Template, 4, 7, "div", 0);
|
|
89
|
+
i0.ɵɵelementContainerEnd();
|
|
90
|
+
} if (rf & 2) {
|
|
91
|
+
const ctx_r5 = i0.ɵɵnextContext(2);
|
|
92
|
+
i0.ɵɵadvance(2);
|
|
93
|
+
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(3, 3, "Case flags"), " ");
|
|
94
|
+
i0.ɵɵadvance(2);
|
|
95
|
+
i0.ɵɵproperty("ngForOf", ctx_r5.partyLevelCaseFlagData);
|
|
96
|
+
i0.ɵɵadvance(1);
|
|
97
|
+
i0.ɵɵproperty("ngIf", ctx_r5.caseLevelCaseFlagData);
|
|
98
|
+
} }
|
|
99
|
+
function ReadCaseFlagFieldComponent_ng_container_1_Template(rf, ctx) { if (rf & 1) {
|
|
100
|
+
i0.ɵɵelementContainerStart(0);
|
|
101
|
+
i0.ɵɵelementContainerStart(1, 2);
|
|
102
|
+
i0.ɵɵtemplate(2, ReadCaseFlagFieldComponent_ng_container_1_ng_container_2_Template, 5, 4, "ng-container", 3);
|
|
103
|
+
i0.ɵɵtemplate(3, ReadCaseFlagFieldComponent_ng_container_1_ng_container_3_Template, 6, 5, "ng-container", 4);
|
|
104
|
+
i0.ɵɵelementContainerEnd();
|
|
49
105
|
i0.ɵɵelementContainerEnd();
|
|
50
106
|
} if (rf & 2) {
|
|
51
107
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
52
|
-
i0.ɵɵadvance(3);
|
|
53
|
-
i0.ɵɵproperty("ngForOf", ctx_r1.partyLevelCaseFlagData);
|
|
54
108
|
i0.ɵɵadvance(1);
|
|
55
|
-
i0.ɵɵproperty("
|
|
109
|
+
i0.ɵɵproperty("ngSwitch", ctx_r1.displayContextParameter);
|
|
110
|
+
i0.ɵɵadvance(1);
|
|
111
|
+
i0.ɵɵproperty("ngSwitchCase", ctx_r1.caseFlagDisplayContextParameter.READ_EXTERNAL);
|
|
56
112
|
} }
|
|
57
113
|
export class ReadCaseFlagFieldComponent extends AbstractFieldReadComponent {
|
|
58
|
-
constructor(route) {
|
|
114
|
+
constructor(route, router, caseFlagStateService) {
|
|
59
115
|
super();
|
|
60
116
|
this.route = route;
|
|
117
|
+
this.router = router;
|
|
118
|
+
this.caseFlagStateService = caseFlagStateService;
|
|
61
119
|
this.paletteContext = PaletteContext;
|
|
120
|
+
this.caseFlagsExternalUser = false;
|
|
62
121
|
this.caseLevelCaseFlagsFieldId = 'caseFlags';
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
122
|
+
}
|
|
123
|
+
get caseFlagDisplayContextParameter() {
|
|
124
|
+
return CaseFlagDisplayContextParameter;
|
|
66
125
|
}
|
|
67
126
|
ngOnInit() {
|
|
127
|
+
var _a, _b, _c;
|
|
128
|
+
const flagLauncherControlName = Object.keys(this.formGroup.controls).find(controlName => FieldsUtils.isCaseFieldOfType(this.formGroup.get(controlName)['caseField'], ['FlagLauncher']));
|
|
129
|
+
const flagLauncherComponent = (_a = this.formGroup.get(flagLauncherControlName)) === null || _a === void 0 ? void 0 : _a['component'];
|
|
130
|
+
this.displayContextParameter = (_b = flagLauncherComponent === null || flagLauncherComponent === void 0 ? void 0 : flagLauncherComponent.caseField) === null || _b === void 0 ? void 0 : _b.display_context_parameter;
|
|
131
|
+
this.caseFlagsExternalUser = this.displayContextParameter === CaseFlagDisplayContextParameter.READ_EXTERNAL;
|
|
68
132
|
// If the context is PaletteContext.DEFAULT, the Flags fields need to be located by CaseTab (they won't be present
|
|
69
133
|
// in the FormGroup - only the FlagLauncher field is present)
|
|
70
134
|
if (this.context === PaletteContext.DEFAULT) {
|
|
@@ -73,12 +137,41 @@ export class ReadCaseFlagFieldComponent extends AbstractFieldReadComponent {
|
|
|
73
137
|
if (this.route.snapshot.data.case && this.route.snapshot.data.case.tabs) {
|
|
74
138
|
this.flagsData = this.route.snapshot.data.case.tabs
|
|
75
139
|
.filter(tab => tab.fields && tab.fields
|
|
76
|
-
|
|
140
|
+
// There could be more than one FlagLauncher field instance so an additional check of caseField ID is
|
|
141
|
+
// required to ensure the correct instance is obtained
|
|
142
|
+
.some(caseField => caseField.field_type.type === 'FlagLauncher' && caseField.id === this.caseField.id))[0].fields.reduce((flags, caseField) => {
|
|
77
143
|
return FieldsUtils.extractFlagsDataFromCaseField(flags, caseField, caseField.id, caseField);
|
|
78
144
|
}, []);
|
|
79
145
|
}
|
|
80
146
|
// Separate the party-level and case-level flags
|
|
81
147
|
this.partyLevelCaseFlagData = this.flagsData.filter(instance => instance.pathToFlagsFormGroup !== this.caseLevelCaseFlagsFieldId);
|
|
148
|
+
// If the user is internal, group all flags data by groupId where present so they see a combined collection of
|
|
149
|
+
// internal and external flags data for each party
|
|
150
|
+
if (!this.caseFlagsExternalUser) {
|
|
151
|
+
const groupedFlagsData = this.partyLevelCaseFlagData
|
|
152
|
+
.filter((f) => f.flags.groupId)
|
|
153
|
+
.reduce((mergedFlagDetails, f) => {
|
|
154
|
+
mergedFlagDetails[f.flags.groupId] = mergedFlagDetails[f.flags.groupId] || [];
|
|
155
|
+
// The flags.details property (which should be an array) could be falsy; spread an empty array if so
|
|
156
|
+
mergedFlagDetails[f.flags.groupId].push(...(f.flags.details || []));
|
|
157
|
+
return mergedFlagDetails;
|
|
158
|
+
}, Object.create(null));
|
|
159
|
+
// Remove duplicate flags objects with the same groupId (which are going to be treated as one for display
|
|
160
|
+
// purposes)
|
|
161
|
+
const uniquePartyData = this.partyLevelCaseFlagData
|
|
162
|
+
.filter((f) => f.flags.groupId)
|
|
163
|
+
.reduce((flagsUniqueByGroupId, f) => {
|
|
164
|
+
if (flagsUniqueByGroupId.findIndex(flag => flag.flags.groupId === f.flags.groupId) === -1) {
|
|
165
|
+
// Set the corresponding grouped flags data
|
|
166
|
+
f.flags.details = groupedFlagsData[f.flags.groupId];
|
|
167
|
+
flagsUniqueByGroupId.push(f);
|
|
168
|
+
}
|
|
169
|
+
return flagsUniqueByGroupId;
|
|
170
|
+
}, []);
|
|
171
|
+
// Append flags objects with no groupId
|
|
172
|
+
this.partyLevelCaseFlagData.filter((f) => !f.flags.groupId).forEach((f) => uniquePartyData.push(f));
|
|
173
|
+
this.partyLevelCaseFlagData = uniquePartyData;
|
|
174
|
+
}
|
|
82
175
|
// There will be only one case-level flags instance containing all case-level flag details
|
|
83
176
|
this.caseLevelCaseFlagData = this.flagsData.find(instance => instance.pathToFlagsFormGroup === this.caseLevelCaseFlagsFieldId);
|
|
84
177
|
}
|
|
@@ -87,33 +180,40 @@ export class ReadCaseFlagFieldComponent extends AbstractFieldReadComponent {
|
|
|
87
180
|
// The FlagLauncher component, WriteCaseFlagFieldComponent, holds a reference to:
|
|
88
181
|
// i) the parent FormGroup for the Flags instance where changes have been made;
|
|
89
182
|
// ii) the currently selected flag (selectedFlag) if one exists
|
|
90
|
-
|
|
91
|
-
if (flagLauncherControlName && this.formGroup.get(flagLauncherControlName)['component']) {
|
|
92
|
-
const flagLauncherComponent = this.formGroup.get(flagLauncherControlName)['component'];
|
|
183
|
+
if (flagLauncherComponent) {
|
|
93
184
|
// The FlagLauncher component holds a reference (selectedFlagsLocation) containing the CaseField instance to
|
|
94
185
|
// which the new flag has been added
|
|
95
|
-
if (flagLauncherComponent.caseField.display_context_parameter ===
|
|
96
|
-
flagLauncherComponent.
|
|
186
|
+
if ((flagLauncherComponent.caseField.display_context_parameter === CaseFlagDisplayContextParameter.CREATE ||
|
|
187
|
+
flagLauncherComponent.caseField.display_context_parameter === CaseFlagDisplayContextParameter.CREATE_2_POINT_1 ||
|
|
188
|
+
flagLauncherComponent.caseField.display_context_parameter === CaseFlagDisplayContextParameter.CREATE_EXTERNAL)
|
|
189
|
+
&& flagLauncherComponent.selectedFlagsLocation) {
|
|
190
|
+
this.pathToFlagsFormGroup = flagLauncherComponent.selectedFlagsLocation.pathToFlagsFormGroup;
|
|
97
191
|
this.flagForSummaryDisplay = this.extractNewFlagToFlagDetailDisplayObject(flagLauncherComponent.selectedFlagsLocation);
|
|
98
|
-
// Set the display mode for the "Review flag details" summary page
|
|
99
|
-
this.summaryListDisplayMode = CaseFlagSummaryListDisplayMode.CREATE;
|
|
100
192
|
// The FlagLauncher component holds a reference (selectedFlag), which gets set after the selection step of the
|
|
101
193
|
// Manage Case Flags journey
|
|
102
194
|
}
|
|
103
|
-
else if (flagLauncherComponent.caseField.display_context_parameter ===
|
|
195
|
+
else if ((flagLauncherComponent.caseField.display_context_parameter === CaseFlagDisplayContextParameter.UPDATE ||
|
|
196
|
+
flagLauncherComponent.caseField.display_context_parameter === CaseFlagDisplayContextParameter.UPDATE_2_POINT_1 ||
|
|
197
|
+
flagLauncherComponent.caseField.display_context_parameter === CaseFlagDisplayContextParameter.UPDATE_EXTERNAL) &&
|
|
104
198
|
flagLauncherComponent.selectedFlag) {
|
|
105
199
|
this.flagForSummaryDisplay =
|
|
106
200
|
this.formGroup.get(flagLauncherControlName)['component'].selectedFlag.flagDetailDisplay;
|
|
107
|
-
//
|
|
108
|
-
|
|
201
|
+
// TODO: not the best solution, the caseFlagStateService should have all the fields, then we can delete a lot of the transformations here
|
|
202
|
+
// in Create Case Flag it already has all fields
|
|
203
|
+
const caseFlagFormGroupValue = (_c = this.caseFlagStateService.formGroup) === null || _c === void 0 ? void 0 : _c.value;
|
|
204
|
+
if (caseFlagFormGroupValue) {
|
|
205
|
+
caseFlagFormGroupValue.status = CaseFlagStatus[caseFlagFormGroupValue.status];
|
|
206
|
+
this.flagForSummaryDisplay.flagDetail = Object.assign(Object.assign({}, this.flagForSummaryDisplay.flagDetail), caseFlagFormGroupValue);
|
|
207
|
+
}
|
|
109
208
|
}
|
|
110
209
|
}
|
|
111
210
|
}
|
|
112
211
|
}
|
|
113
212
|
extractNewFlagToFlagDetailDisplayObject(selectedFlagsLocation) {
|
|
213
|
+
var _a, _b, _c;
|
|
114
214
|
// Use the pathToFlagsFormGroup property from the selected flag location to drill down to the correct part of the
|
|
115
215
|
// CaseField value containing the new flag
|
|
116
|
-
let flagsCaseFieldValue = selectedFlagsLocation.caseField.value;
|
|
216
|
+
let flagsCaseFieldValue = (_a = selectedFlagsLocation.caseField) === null || _a === void 0 ? void 0 : _a.value;
|
|
117
217
|
const path = selectedFlagsLocation.pathToFlagsFormGroup;
|
|
118
218
|
// Root-level Flags CaseFields don't have a dot-delimited path - just the CaseField ID itself - so don't drill down
|
|
119
219
|
if (path.indexOf('.') > -1) {
|
|
@@ -123,22 +223,24 @@ export class ReadCaseFlagFieldComponent extends AbstractFieldReadComponent {
|
|
|
123
223
|
return {
|
|
124
224
|
partyName: flagsCaseFieldValue.partyName,
|
|
125
225
|
// Look in the details array for the object that does *not* have an id - this indicates it is the new flag
|
|
126
|
-
flagDetail: flagsCaseFieldValue.details.find(element => !element.hasOwnProperty('id')).value
|
|
226
|
+
flagDetail: (_c = (_b = flagsCaseFieldValue.details) === null || _b === void 0 ? void 0 : _b.find(element => !element.hasOwnProperty('id'))) === null || _c === void 0 ? void 0 : _c.value
|
|
127
227
|
};
|
|
128
228
|
}
|
|
129
229
|
return null;
|
|
130
230
|
}
|
|
231
|
+
navigateBackToForm(fieldState) {
|
|
232
|
+
this.caseFlagStateService.fieldStateToNavigate = fieldState;
|
|
233
|
+
this.router.navigate([`../${this.caseFlagStateService.pageLocation}`], { relativeTo: this.route });
|
|
234
|
+
}
|
|
131
235
|
}
|
|
132
|
-
ReadCaseFlagFieldComponent.ɵfac = function ReadCaseFlagFieldComponent_Factory(t) { return new (t || ReadCaseFlagFieldComponent)(i0.ɵɵdirectiveInject(i1.ActivatedRoute)); };
|
|
133
|
-
ReadCaseFlagFieldComponent.ɵcmp = i0.ɵɵdefineComponent({ type: ReadCaseFlagFieldComponent, selectors: [["ccd-read-case-flag-field"]], features: [i0.ɵɵInheritDefinitionFeature], decls:
|
|
134
|
-
i0.ɵɵ
|
|
135
|
-
i0.ɵɵtemplate(1, ReadCaseFlagFieldComponent_ng_container_1_Template,
|
|
136
|
-
i0.ɵɵtemplate(2, ReadCaseFlagFieldComponent_ng_container_2_Template, 5, 2, "ng-container", 2);
|
|
137
|
-
i0.ɵɵelementContainerEnd();
|
|
236
|
+
ReadCaseFlagFieldComponent.ɵfac = function ReadCaseFlagFieldComponent_Factory(t) { return new (t || ReadCaseFlagFieldComponent)(i0.ɵɵdirectiveInject(i1.ActivatedRoute), i0.ɵɵdirectiveInject(i1.Router), i0.ɵɵdirectiveInject(i2.CaseFlagStateService)); };
|
|
237
|
+
ReadCaseFlagFieldComponent.ɵcmp = i0.ɵɵdefineComponent({ type: ReadCaseFlagFieldComponent, selectors: [["ccd-read-case-flag-field"]], features: [i0.ɵɵInheritDefinitionFeature], decls: 2, vars: 2, consts: [[4, "ngIf"], [3, "flagForSummaryDisplay", "displayContextParameter", "changeButtonEmitter"], [3, "ngSwitch"], [4, "ngSwitchCase"], [4, "ngSwitchDefault"], ["id", "read-case-flag-title", 1, "govuk-heading-l"], [4, "ngFor", "ngForOf"], [3, "tableCaption", "flagData", "firstColumnHeader", "caseFlagsExternalUser", 4, "ngIf"], [3, "tableCaption", "flagData", "firstColumnHeader", "caseFlagsExternalUser"], [3, "tableCaption", "flagData", "firstColumnHeader", 4, "ngIf"], [3, "tableCaption", "flagData", "firstColumnHeader"]], template: function ReadCaseFlagFieldComponent_Template(rf, ctx) { if (rf & 1) {
|
|
238
|
+
i0.ɵɵtemplate(0, ReadCaseFlagFieldComponent_ng_container_0_Template, 2, 2, "ng-container", 0);
|
|
239
|
+
i0.ɵɵtemplate(1, ReadCaseFlagFieldComponent_ng_container_1_Template, 4, 2, "ng-container", 0);
|
|
138
240
|
} if (rf & 2) {
|
|
139
|
-
i0.ɵɵproperty("
|
|
241
|
+
i0.ɵɵproperty("ngIf", ctx.context === ctx.paletteContext.CHECK_YOUR_ANSWER);
|
|
140
242
|
i0.ɵɵadvance(1);
|
|
141
|
-
i0.ɵɵproperty("
|
|
243
|
+
i0.ɵɵproperty("ngIf", ctx.context !== ctx.paletteContext.CHECK_YOUR_ANSWER);
|
|
142
244
|
} }, styles: [".govuk-heading-l[_ngcontent-%COMP%]{margin-top:30px}"] });
|
|
143
245
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ReadCaseFlagFieldComponent, [{
|
|
144
246
|
type: Component,
|
|
@@ -147,5 +249,5 @@ ReadCaseFlagFieldComponent.ɵcmp = i0.ɵɵdefineComponent({ type: ReadCaseFlagFi
|
|
|
147
249
|
templateUrl: './read-case-flag-field.component.html',
|
|
148
250
|
styleUrls: ['./read-case-flag-field.component.scss']
|
|
149
251
|
}]
|
|
150
|
-
}], function () { return [{ type: i1.ActivatedRoute }]; }, null); })();
|
|
151
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhZC1jYXNlLWZsYWctZmllbGQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2NkLWNhc2UtdWktdG9vbGtpdC9zcmMvbGliL3NoYXJlZC9jb21wb25lbnRzL3BhbGV0dGUvY2FzZS1mbGFnL3JlYWQtY2FzZS1mbGFnLWZpZWxkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NjZC1jYXNlLXVpLXRvb2xraXQvc3JjL2xpYi9zaGFyZWQvY29tcG9uZW50cy9wYWxldHRlL2Nhc2UtZmxhZy9yZWFkLWNhc2UtZmxhZy1maWVsZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUVqRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDdkQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDekYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBRXBFLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLFNBQVMsQ0FBQzs7OztJQ052RCw2QkFBK0Q7SUFDN0QsZ0RBQ2lGO0lBQ25GLDBCQUFlOzs7SUFGZSxlQUErQztJQUEvQyxvRUFBK0MseURBQUE7OztJQU16RSx5Q0FJdUI7OztJQUhyQiwwREFBeUMseUJBQUEsMENBQUE7OztJQUY3QywyQkFBcUQ7SUFDbkQsZ0lBSXVCO0lBQ3pCLGlCQUFNOzs7SUFMa0IsZUFBOEI7SUFBOUIsa0RBQThCOzs7SUFNdEQsMkJBQW1DO0lBQ2pDLHlDQUl1QjtJQUN6QixpQkFBTTs7O0lBSkYsZUFBbUM7SUFBbkMsaURBQW1DLDBDQUFBLG1DQUFBOzs7SUFYekMs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LENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLG1CQUFtQixHQUFHLG1CQUFtQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7U0FDL0c7UUFDRCxJQUFJLG1CQUFtQixFQUFFO1lBQ3ZCLE9BQU87Z0JBQ0wsU0FBUyxFQUFFLG1CQUFtQixDQUFDLFNBQVM7Z0JBQ3hDLDBHQUEwRztnQkFDMUcsVUFBVSxFQUFFLG1CQUFtQixDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLO2FBQ3hFLENBQUM7U0FDeEI7UUFFRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7O29HQXhGVSwwQkFBMEI7K0RBQTFCLDBCQUEwQjtRQ2R2QyxnQ0FBbUM7UUFDakMsNkZBR2U7UUFDZiw2RkFnQmU7UUFDakIsMEJBQWU7O1FBdEJELHNDQUFvQjtRQUNqQixlQUE4QztRQUE5QyxtRUFBOEM7O3VGRGFsRCwwQkFBMEI7Y0FMdEMsU0FBUztlQUFDO2dCQUNULFFBQVEsRUFBRSwwQkFBMEI7Z0JBQ3BDLFdBQVcsRUFBRSx1Q0FBdUM7Z0JBQ3BELFNBQVMsRUFBRSxDQUFDLHVDQUF1QyxDQUFDO2FBQ3JEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IENhc2VUYWIgfSBmcm9tICcuLi8uLi8uLi9kb21haW4nO1xuaW1wb3J0IHsgRmllbGRzVXRpbHMgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9maWVsZHMnO1xuaW1wb3J0IHsgQWJzdHJhY3RGaWVsZFJlYWRDb21wb25lbnQgfSBmcm9tICcuLi9iYXNlLWZpZWxkL2Fic3RyYWN0LWZpZWxkLXJlYWQuY29tcG9uZW50JztcbmltcG9ydCB7IFBhbGV0dGVDb250ZXh0IH0gZnJvbSAnLi4vYmFzZS1maWVsZC9wYWxldHRlLWNvbnRleHQuZW51bSc7XG5pbXBvcnQgeyBGbGFnRGV0YWlsRGlzcGxheSwgRmxhZ3NXaXRoRm9ybUdyb3VwUGF0aCB9IGZyb20gJy4vZG9tYWluJztcbmltcG9ydCB7IENhc2VGbGFnU3VtbWFyeUxpc3REaXNwbGF5TW9kZSB9IGZyb20gJy4vZW51bXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjY2QtcmVhZC1jYXNlLWZsYWctZmllbGQnLFxuICB0ZW1wbGF0ZVVybDogJy4vcmVhZC1jYXNlLWZsYWctZmllbGQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9yZWFkLWNhc2UtZmxhZy1maWVsZC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFJlYWRDYXNlRmxhZ0ZpZWxkQ29tcG9uZW50IGV4dGVuZHMgQWJzdHJhY3RGaWVsZFJlYWRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIHB1YmxpYyBmbGFnc0RhdGE6IEZsYWdzV2l0aEZvcm1Hcm91cFBhdGhbXTtcbiAgcHVibGljIHBhcnR5TGV2ZWxDYXNlRmxhZ0RhdGE6IEZsYWdzV2l0aEZvcm1Hcm91cFBhdGhbXTtcbiAgcHVibGljIGNhc2VMZXZlbENhc2VGbGFnRGF0YTogRmxhZ3NXaXRoRm9ybUdyb3VwUGF0aDtcbiAgcHVibGljIHBhbGV0dGVDb250ZXh0ID0gUGFsZXR0ZUNvbnRleHQ7XG4gIHB1YmxpYyBmbGFnRm9yU3VtbWFyeURpc3BsYXk6IEZsYWdEZXRhaWxEaXNwbGF5O1xuICBwdWJsaWMgc3VtbWFyeUxpc3REaXNwbGF5TW9kZTogQ2FzZUZsYWdTdW1tYXJ5TGlzdERpc3BsYXlNb2RlO1xuICBwdWJsaWMgcmVhZG9ubHkgY2FzZUxldmVsQ2FzZUZsYWdzRmllbGRJZCA9ICdjYXNlRmxhZ3MnO1xuICBwdWJsaWMgcmVhZG9ubHkgY2FzZU5hbWVNaXNzaW5nID0gJ0Nhc2UgbmFtZSBtaXNzaW5nJztcbiAgcHJpdmF0ZSByZWFkb25seSBjcmVhdGVNb2RlID0gJyNBUkdVTUVOVChDUkVBVEUpJztcbiAgcHJpdmF0ZSByZWFkb25seSB1cGRhdGVNb2RlID0gJyNBUkdVTUVOVChVUERBVEUpJztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZVxuICApIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIC8vIElmIHRoZSBjb250ZXh0IGlzIFBhbGV0dGVDb250ZXh0LkRFRkFVTFQsIHRoZSBGbGFncyBmaWVsZHMgbmVlZCB0byBiZSBsb2NhdGVkIGJ5IENhc2VUYWIgKHRoZXkgd29uJ3QgYmUgcHJlc2VudFxuICAgIC8vIGluIHRoZSBGb3JtR3JvdXAgLSBvbmx5IHRoZSBGbGFnTGF1bmNoZXIgZmllbGQgaXMgcHJlc2VudClcbiAgICBpZiAodGhpcy5jb250ZXh0ID09PSBQYWxldHRlQ29udGV4dC5ERUZBVUxUKSB7XG4gICAgICAvLyBEZXRlcm1pbmUgdGhlIHRhYiB0aGlzIENhc2VGaWVsZCBiZWxvbmdzIHRvIChzaG91bGQgYmUgb25seSBvbmUpLCBmcm9tIHRoZSBDYXNlVmlldyBvYmplY3QgaW4gdGhlIHNuYXBzaG90XG4gICAgICAvLyBkYXRhLCBhbmQgZXh0cmFjdCBhbGwgZmxhZ3MtcmVsYXRlZCBkYXRhIGZyb20gaXRzIEZsYWdzIGZpZWxkc1xuICAgICAgaWYgKHRoaXMucm91dGUuc25hcHNob3QuZGF0YS5jYXNlICYmIHRoaXMucm91dGUuc25hcHNob3QuZGF0YS5jYXNlLnRhYnMpIHtcbiAgICAgICAgdGhpcy5mbGFnc0RhdGEgPSAodGhpcy5yb3V0ZS5zbmFwc2hvdC5kYXRhLmNhc2UudGFicyBhcyBDYXNlVGFiW10pXG4gICAgICAgIC5maWx0ZXIodGFiID0+IHRhYi5maWVsZHMgJiYgdGFiLmZpZWxkc1xuICAgICAgICAgIC5zb21lKGNhc2VGaWVsZCA9PiBjYXNlRmllbGQuZmllbGRfdHlwZS50eXBlID09PSAnRmxhZ0xhdW5jaGVyJykpXG4gICAgICAgIFswXS5maWVsZHMucmVkdWNlKChmbGFncywgY2FzZUZpZWxkKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIEZpZWxkc1V0aWxzLmV4dHJhY3RGbGFnc0RhdGFGcm9tQ2FzZUZpZWxkKGZsYWdzLCBjYXNlRmllbGQsIGNhc2VGaWVsZC5pZCwgY2FzZUZpZWxkKTtcbiAgICAgICAgfSwgW10pO1xuICAgICAgfVxuXG4gICAgICAvLyBTZXBhcmF0ZSB0aGUgcGFydHktbGV2ZWwgYW5kIGNhc2UtbGV2ZWwgZmxhZ3NcbiAgICAgIHRoaXMucGFydHlMZXZlbENhc2VGbGFnRGF0YSA9IHRoaXMuZmxhZ3NEYXRhLmZpbHRlcihcbiAgICAgICAgaW5zdGFuY2UgPT4gaW5zdGFuY2UucGF0aFRvRmxhZ3NGb3JtR3JvdXAgIT09IHRoaXMuY2FzZUxldmVsQ2FzZUZsYWdzRmllbGRJZCk7XG4gICAgICAvLyBUaGVyZSB3aWxsIGJlIG9ubHkgb25lIGNhc2UtbGV2ZWwgZmxhZ3MgaW5zdGFuY2UgY29udGFpbmluZyBhbGwgY2FzZS1sZXZlbCBmbGFnIGRldGFpbHNcbiAgICAgIHRoaXMuY2FzZUxldmVsQ2FzZUZsYWdEYXRhID0gdGhpcy5mbGFnc0RhdGEuZmluZChcbiAgICAgICAgaW5zdGFuY2UgPT4gaW5zdGFuY2UucGF0aFRvRmxhZ3NGb3JtR3JvdXAgPT09IHRoaXMuY2FzZUxldmVsQ2FzZUZsYWdzRmllbGRJZCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLmNvbnRleHQgPT09IFBhbGV0dGVDb250ZXh0LkNIRUNLX1lPVVJfQU5TV0VSKSB7XG4gICAgICAvLyBJZiB0aGUgY29udGV4dCBpcyBQYWxldHRlQ29udGV4dC5DSEVDS19ZT1VSX0FOU1dFUiwgdGhlIEZsYWdzIGRhdGEgaXMgYWxyZWFkeSBwcmVzZW50IHdpdGhpbiB0aGUgRm9ybUdyb3VwLlxuICAgICAgLy8gVGhlIEZsYWdMYXVuY2hlciBjb21wb25lbnQsIFdyaXRlQ2FzZUZsYWdGaWVsZENvbXBvbmVudCwgaG9sZHMgYSByZWZlcmVuY2UgdG86XG4gICAgICAvLyBpKSB0aGUgcGFyZW50IEZvcm1Hcm91cCBmb3IgdGhlIEZsYWdzIGluc3RhbmNlIHdoZXJlIGNoYW5nZXMgaGF2ZSBiZWVuIG1hZGU7XG4gICAgICAvLyBpaSkgdGhlIGN1cnJlbnRseSBzZWxlY3RlZCBmbGFnIChzZWxlY3RlZEZsYWcpIGlmIG9uZSBleGlzdHNcbiAgICAgIGNvbnN0IGZsYWdMYXVuY2hlckNvbnRyb2xOYW1lID0gT2JqZWN0LmtleXModGhpcy5mb3JtR3JvdXAuY29udHJvbHMpLmZpbmQoXG4gICAgICAgIGNvbnRyb2xOYW1lID0+IEZpZWxkc1V0aWxzLmlzRmxhZ0xhdW5jaGVyQ2FzZUZpZWxkKHRoaXMuZm9ybUdyb3VwLmdldChjb250cm9sTmFtZSlbJ2Nhc2VGaWVsZCddKSk7XG4gICAgICBpZiAoZmxhZ0xhdW5jaGVyQ29udHJvbE5hbWUgJiYgdGhpcy5mb3JtR3JvdXAuZ2V0KGZsYWdMYXVuY2hlckNvbnRyb2xOYW1lKVsnY29tcG9uZW50J10pIHtcbiAgICAgICAgY29uc3QgZmxhZ0xhdW5jaGVyQ29tcG9uZW50ID0gdGhpcy5mb3JtR3JvdXAuZ2V0KGZsYWdMYXVuY2hlckNvbnRyb2xOYW1lKVsnY29tcG9uZW50J107XG4gICAgICAgIC8vIFRoZSBGbGFnTGF1bmNoZXIgY29tcG9uZW50IGhvbGRzIGEgcmVmZXJlbmNlIChzZWxlY3RlZEZsYWdzTG9jYXRpb24pIGNvbnRhaW5pbmcgdGhlIENhc2VGaWVsZCBpbnN0YW5jZSB0b1xuICAgICAgICAvLyB3aGljaCB0aGUgbmV3IGZsYWcgaGFzIGJlZW4gYWRkZWRcbiAgICAgICAgaWYgKGZsYWdMYXVuY2hlckNvbXBvbmVudC5jYXNlRmllbGQuZGlzcGxheV9jb250ZXh0X3BhcmFtZXRlciA9PT0gdGhpcy5jcmVhdGVNb2RlICYmXG4gICAgICAgICAgZmxhZ0xhdW5jaGVyQ29tcG9uZW50LnNlbGVjdGVkRmxhZ3NMb2NhdGlvbikge1xuICAgICAgICAgICAgdGhpcy5mbGFnRm9yU3VtbWFyeURpc3BsYXkgPSB0aGlzLmV4dHJhY3ROZXdGbGFnVG9GbGFnRGV0YWlsRGlzcGxheU9iamVjdChcbiAgICAgICAgICAgICAgZmxhZ0xhdW5jaGVyQ29tcG9uZW50LnNlbGVjdGVkRmxhZ3NMb2NhdGlvbik7XG4gICAgICAgICAgICAvLyBTZXQgdGhlIGRpc3BsYXkgbW9kZSBmb3IgdGhlIFwiUmV2aWV3IGZsYWcgZGV0YWlsc1wiIHN1bW1hcnkgcGFnZVxuICAgICAgICAgICAgdGhpcy5zdW1tYXJ5TGlzdERpc3BsYXlNb2RlID0gQ2FzZUZsYWdTdW1tYXJ5TGlzdERpc3BsYXlNb2RlLkNSRUFURTtcbiAgICAgICAgLy8gVGhlIEZsYWdMYXVuY2hlciBjb21wb25lbnQgaG9sZHMgYSByZWZlcmVuY2UgKHNlbGVjdGVkRmxhZyksIHdoaWNoIGdldHMgc2V0IGFmdGVyIHRoZSBzZWxlY3Rpb24gc3RlcCBvZiB0aGVcbiAgICAgICAgLy8gTWFuYWdlIENhc2UgRmxhZ3Mgam91cm5leVxuICAgICAgICB9IGVsc2UgaWYgKGZsYWdMYXVuY2hlckNvbXBvbmVudC5jYXNlRmllbGQuZGlzcGxheV9jb250ZXh0X3BhcmFtZXRlciA9PT0gdGhpcy51cGRhdGVNb2RlICYmXG4gICAgICAgICAgZmxhZ0xhdW5jaGVyQ29tcG9uZW50LnNlbGVjdGVkRmxhZykge1xuICAgICAgICAgICAgdGhpcy5mbGFnRm9yU3VtbWFyeURpc3BsYXkgPVxuICAgICAgICAgICAgICB0aGlzLmZvcm1Hcm91cC5nZXQoZmxhZ0xhdW5jaGVyQ29udHJvbE5hbWUpWydjb21wb25lbnQnXS5zZWxlY3RlZEZsYWcuZmxhZ0RldGFpbERpc3BsYXk7XG4gICAgICAgICAgICAvLyBTZXQgdGhlIGRpc3BsYXkgbW9kZSBmb3IgdGhlIFwiUmV2aWV3IGZsYWcgZGV0YWlsc1wiIHN1bW1hcnkgcGFnZVxuICAgICAgICAgICAgdGhpcy5zdW1tYXJ5TGlzdERpc3BsYXlNb2RlID0gQ2FzZUZsYWdTdW1tYXJ5TGlzdERpc3BsYXlNb2RlLk1BTkFHRTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZXh0cmFjdE5ld0ZsYWdUb0ZsYWdEZXRhaWxEaXNwbGF5T2JqZWN0KHNlbGVjdGVkRmxhZ3NMb2NhdGlvbjogRmxhZ3NXaXRoRm9ybUdyb3VwUGF0aCk6IEZsYWdEZXRhaWxEaXNwbGF5IHtcbiAgICAvLyBVc2UgdGhlIHBhdGhUb0ZsYWdzRm9ybUdyb3VwIHByb3BlcnR5IGZyb20gdGhlIHNlbGVjdGVkIGZsYWcgbG9jYXRpb24gdG8gZHJpbGwgZG93biB0byB0aGUgY29ycmVjdCBwYXJ0IG9mIHRoZVxuICAgIC8vIENhc2VGaWVsZCB2YWx1ZSBjb250YWluaW5nIHRoZSBuZXcgZmxhZ1xuICAgIGxldCBmbGFnc0Nhc2VGaWVsZFZhbHVlID0gc2VsZWN0ZWRGbGFnc0xvY2F0aW9uLmNhc2VGaWVsZC52YWx1ZTtcbiAgICBjb25zdCBwYXRoID0gc2VsZWN0ZWRGbGFnc0xvY2F0aW9uLnBhdGhUb0ZsYWdzRm9ybUdyb3VwO1xuICAgIC8vIFJvb3QtbGV2ZWwgRmxhZ3MgQ2FzZUZpZWxkcyBkb24ndCBoYXZlIGEgZG90LWRlbGltaXRlZCBwYXRoIC0ganVzdCB0aGUgQ2FzZUZpZWxkIElEIGl0c2VsZiAtIHNvIGRvbid0IGRyaWxsIGRvd25cbiAgICBpZiAocGF0aC5pbmRleE9mKCcuJykgPiAtMSkge1xuICAgICAgcGF0aC5zbGljZShwYXRoLmluZGV4T2YoJy4nKSArIDEpLnNwbGl0KCcuJykuZm9yRWFjaChwYXJ0ID0+IGZsYWdzQ2FzZUZpZWxkVmFsdWUgPSBmbGFnc0Nhc2VGaWVsZFZhbHVlW3BhcnRdKTtcbiAgICB9XG4gICAgaWYgKGZsYWdzQ2FzZUZpZWxkVmFsdWUpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHBhcnR5TmFtZTogZmxhZ3NDYXNlRmllbGRWYWx1ZS5wYXJ0eU5hbWUsXG4gICAgICAgIC8vIExvb2sgaW4gdGhlIGRldGFpbHMgYXJyYXkgZm9yIHRoZSBvYmplY3QgdGhhdCBkb2VzICpub3QqIGhhdmUgYW4gaWQgLSB0aGlzIGluZGljYXRlcyBpdCBpcyB0aGUgbmV3IGZsYWdcbiAgICAgICAgZmxhZ0RldGFpbDogZmxhZ3NDYXNlRmllbGRWYWx1ZS5kZXRhaWxzLmZpbmQoZWxlbWVudCA9PiAhZWxlbWVudC5oYXNPd25Qcm9wZXJ0eSgnaWQnKSkudmFsdWVcbiAgICAgIH0gYXMgRmxhZ0RldGFpbERpc3BsYXk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG51bGw7XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cImNvbnRleHRcIj5cbiAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwicGFsZXR0ZUNvbnRleHQuQ0hFQ0tfWU9VUl9BTlNXRVJcIj5cbiAgICA8Y2NkLWNhc2UtZmxhZy1zdW1tYXJ5LWxpc3QgW2ZsYWdGb3JTdW1tYXJ5RGlzcGxheV09XCJmbGFnRm9yU3VtbWFyeURpc3BsYXlcIlxuICAgICAgW3N1bW1hcnlMaXN0RGlzcGxheU1vZGVdPVwic3VtbWFyeUxpc3REaXNwbGF5TW9kZVwiPjwvY2NkLWNhc2UtZmxhZy1zdW1tYXJ5LWxpc3Q+XG4gIDwvbmctY29udGFpbmVyPlxuICA8bmctY29udGFpbmVyICpuZ1N3aXRjaERlZmF1bHQ+XG4gICAgPGgyIGNsYXNzPVwiZ292dWstaGVhZGluZy1sXCI+Q2FzZSBmbGFnczwvaDI+XG4gICAgPGRpdiAqbmdGb3I9XCJsZXQgZmxhZ0RhdGEgb2YgcGFydHlMZXZlbENhc2VGbGFnRGF0YVwiPlxuICAgICAgPGNjZC1jYXNlLWZsYWctdGFibGUgKm5nSWY9XCJmbGFnRGF0YS5mbGFncy5wYXJ0eU5hbWVcIlxuICAgICAgICBbdGFibGVDYXB0aW9uXT1cImZsYWdEYXRhLmZsYWdzLnBhcnR5TmFtZVwiXG4gICAgICAgIFtmbGFnRGF0YV09XCJmbGFnRGF0YVwiXG4gICAgICAgIFtmaXJzdENvbHVtbkhlYWRlcl09XCInUGFydHkgbGV2ZWwgZmxhZ3MnXCJcbiAgICAgID48L2NjZC1jYXNlLWZsYWctdGFibGU+XG4gICAgPC9kaXY+XG4gICAgPGRpdiAqbmdJZj1cImNhc2VMZXZlbENhc2VGbGFnRGF0YVwiPlxuICAgICAgPGNjZC1jYXNlLWZsYWctdGFibGVcbiAgICAgICAgW3RhYmxlQ2FwdGlvbl09XCInQ2FzZSBsZXZlbCBmbGFncydcIlxuICAgICAgICBbZmxhZ0RhdGFdPVwiY2FzZUxldmVsQ2FzZUZsYWdEYXRhXCJcbiAgICAgICAgW2ZpcnN0Q29sdW1uSGVhZGVyXT1cIidDYXNlIGZsYWdzJ1wiXG4gICAgICA+PC9jY2QtY2FzZS1mbGFnLXRhYmxlPlxuICAgIDwvZGl2PlxuICA8L25nLWNvbnRhaW5lcj5cbjwvbmctY29udGFpbmVyPlxuIl19
|
|
252
|
+
}], function () { return [{ type: i1.ActivatedRoute }, { type: i1.Router }, { type: i2.CaseFlagStateService }]; }, null); })();
|
|
253
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhZC1jYXNlLWZsYWctZmllbGQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2NkLWNhc2UtdWktdG9vbGtpdC9zcmMvbGliL3NoYXJlZC9jb21wb25lbnRzL3BhbGV0dGUvY2FzZS1mbGFnL3JlYWQtY2FzZS1mbGFnLWZpZWxkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NjZC1jYXNlLXVpLXRvb2xraXQvc3JjL2xpYi9zaGFyZWQvY29tcG9uZW50cy9wYWxldHRlL2Nhc2UtZmxhZy9yZWFkLWNhc2UtZmxhZy1maWVsZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFekQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQzFGLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUVwRSxPQUFPLEVBQUUsK0JBQStCLEVBQUUsY0FBYyxFQUFFLE1BQU0sU0FBUyxDQUFDOzs7Ozs7SUNSMUUsNkJBQW1FO0lBQ2pFLHFEQUdxRDtJQUFuRCwyUUFBa0Q7SUFDcEQsaUJBQTZCO0lBQy9CLDBCQUFlOzs7SUFKWCxlQUErQztJQUEvQyxvRUFBK0MsMkRBQUE7OztJQWMzQyx5Q0FLdUI7Ozs7SUFKRCxpQ0FBbUIseUJBQUEsa0RBQUEsdURBQUE7OztJQUYzQywyQkFBcUQ7SUFDbkQsK0lBS3VCO0lBQ3pCLGlCQUFNOzs7SUFOa0IsZUFBOEI7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LFNBQVMsRUFBRSxtQkFBbUIsQ0FBQyxTQUFTO2dCQUN4QywwR0FBMEc7Z0JBQzFHLFVBQVUsY0FBRSxtQkFBbUIsQ0FBQyxPQUFPLDBDQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsMkNBQUcsS0FBSzthQUMxRSxDQUFDO1NBQ3hCO1FBRUQsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRU0sa0JBQWtCLENBQUMsVUFBa0I7UUFDMUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLG9CQUFvQixHQUFHLFVBQVUsQ0FBQztRQUM1RCxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLE1BQU0sSUFBSSxDQUFDLG9CQUFvQixDQUFDLFlBQVksRUFBRSxDQUFDLEVBQUUsRUFBRSxVQUFVLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDckcsQ0FBQzs7b0dBN0lVLDBCQUEwQjsrREFBMUIsMEJBQTBCO1FDZnZDLDZGQU1lO1FBRWYsNkZBc0NlOztRQTlDQSwyRUFBa0Q7UUFRbEQsZUFBa0Q7UUFBbEQsMkVBQWtEOzt1RkRPcEQsMEJBQTBCO2NBTHRDLFNBQVM7ZUFBQztnQkFDVCxRQUFRLEVBQUUsMEJBQTBCO2dCQUNwQyxXQUFXLEVBQUUsdUNBQXVDO2dCQUNwRCxTQUFTLEVBQUUsQ0FBQyx1Q0FBdUMsQ0FBQzthQUNyRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IENhc2VUYWIgfSBmcm9tICcuLi8uLi8uLi9kb21haW4nO1xuaW1wb3J0IHsgRmllbGRzVXRpbHMgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9maWVsZHMnO1xuaW1wb3J0IHsgQ2FzZUZsYWdTdGF0ZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9jYXNlLWVkaXRvci9zZXJ2aWNlcy9jYXNlLWZsYWctc3RhdGUuc2VydmljZSc7XG5pbXBvcnQgeyBBYnN0cmFjdEZpZWxkUmVhZENvbXBvbmVudCB9IGZyb20gJy4uL2Jhc2UtZmllbGQvYWJzdHJhY3QtZmllbGQtcmVhZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgUGFsZXR0ZUNvbnRleHQgfSBmcm9tICcuLi9iYXNlLWZpZWxkL3BhbGV0dGUtY29udGV4dC5lbnVtJztcbmltcG9ydCB7IEZsYWdEZXRhaWxEaXNwbGF5LCBGbGFnc1dpdGhGb3JtR3JvdXBQYXRoIH0gZnJvbSAnLi9kb21haW4nO1xuaW1wb3J0IHsgQ2FzZUZsYWdEaXNwbGF5Q29udGV4dFBhcmFtZXRlciwgQ2FzZUZsYWdTdGF0dXMgfSBmcm9tICcuL2VudW1zJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY2NkLXJlYWQtY2FzZS1mbGFnLWZpZWxkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3JlYWQtY2FzZS1mbGFnLWZpZWxkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcmVhZC1jYXNlLWZsYWctZmllbGQuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBSZWFkQ2FzZUZsYWdGaWVsZENvbXBvbmVudCBleHRlbmRzIEFic3RyYWN0RmllbGRSZWFkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgcHVibGljIGZsYWdzRGF0YTogRmxhZ3NXaXRoRm9ybUdyb3VwUGF0aFtdO1xuICBwdWJsaWMgcGFydHlMZXZlbENhc2VGbGFnRGF0YTogRmxhZ3NXaXRoRm9ybUdyb3VwUGF0aFtdO1xuICBwdWJsaWMgY2FzZUxldmVsQ2FzZUZsYWdEYXRhOiBGbGFnc1dpdGhGb3JtR3JvdXBQYXRoO1xuICBwdWJsaWMgcGFsZXR0ZUNvbnRleHQgPSBQYWxldHRlQ29udGV4dDtcbiAgcHVibGljIGZsYWdGb3JTdW1tYXJ5RGlzcGxheTogRmxhZ0RldGFpbERpc3BsYXk7XG4gIHB1YmxpYyBkaXNwbGF5Q29udGV4dFBhcmFtZXRlcjogQ2FzZUZsYWdEaXNwbGF5Q29udGV4dFBhcmFtZXRlcjtcbiAgcHVibGljIGNhc2VGbGFnc0V4dGVybmFsVXNlciA9IGZhbHNlO1xuICBwdWJsaWMgcGF0aFRvRmxhZ3NGb3JtR3JvdXA6IHN0cmluZztcbiAgcHJpdmF0ZSByZWFkb25seSBjYXNlTGV2ZWxDYXNlRmxhZ3NGaWVsZElkID0gJ2Nhc2VGbGFncyc7XG5cbiAgcHVibGljIGdldCBjYXNlRmxhZ0Rpc3BsYXlDb250ZXh0UGFyYW1ldGVyKCk6IHR5cGVvZiBDYXNlRmxhZ0Rpc3BsYXlDb250ZXh0UGFyYW1ldGVyIHtcbiAgICByZXR1cm4gQ2FzZUZsYWdEaXNwbGF5Q29udGV4dFBhcmFtZXRlcjtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcm91dGVyOiBSb3V0ZXIsXG4gICAgcHJpdmF0ZSByZWFkb25seSBjYXNlRmxhZ1N0YXRlU2VydmljZTogQ2FzZUZsYWdTdGF0ZVNlcnZpY2VcbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBjb25zdCBmbGFnTGF1bmNoZXJDb250cm9sTmFtZSA9IE9iamVjdC5rZXlzKHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzKS5maW5kKFxuICAgICAgY29udHJvbE5hbWUgPT4gRmllbGRzVXRpbHMuaXNDYXNlRmllbGRPZlR5cGUodGhpcy5mb3JtR3JvdXAuZ2V0KGNvbnRyb2xOYW1lKVsnY2FzZUZpZWxkJ10sIFsnRmxhZ0xhdW5jaGVyJ10pKTtcbiAgICBjb25zdCBmbGFnTGF1bmNoZXJDb21wb25lbnQgPSB0aGlzLmZvcm1Hcm91cC5nZXQoZmxhZ0xhdW5jaGVyQ29udHJvbE5hbWUpPy5bJ2NvbXBvbmVudCddO1xuICAgIHRoaXMuZGlzcGxheUNvbnRleHRQYXJhbWV0ZXIgPSBmbGFnTGF1bmNoZXJDb21wb25lbnQ/LmNhc2VGaWVsZD8uZGlzcGxheV9jb250ZXh0X3BhcmFtZXRlcjtcbiAgICB0aGlzLmNhc2VGbGFnc0V4dGVybmFsVXNlciA9IHRoaXMuZGlzcGxheUNvbnRleHRQYXJhbWV0ZXIgPT09IENhc2VGbGFnRGlzcGxheUNvbnRleHRQYXJhbWV0ZXIuUkVBRF9FWFRFUk5BTDtcblxuICAgIC8vIElmIHRoZSBjb250ZXh0IGlzIFBhbGV0dGVDb250ZXh0LkRFRkFVTFQsIHRoZSBGbGFncyBmaWVsZHMgbmVlZCB0byBiZSBsb2NhdGVkIGJ5IENhc2VUYWIgKHRoZXkgd29uJ3QgYmUgcHJlc2VudFxuICAgIC8vIGluIHRoZSBGb3JtR3JvdXAgLSBvbmx5IHRoZSBGbGFnTGF1bmNoZXIgZmllbGQgaXMgcHJlc2VudClcbiAgICBpZiAodGhpcy5jb250ZXh0ID09PSBQYWxldHRlQ29udGV4dC5ERUZBVUxUKSB7XG4gICAgICAvLyBEZXRlcm1pbmUgdGhlIHRhYiB0aGlzIENhc2VGaWVsZCBiZWxvbmdzIHRvIChzaG91bGQgYmUgb25seSBvbmUpLCBmcm9tIHRoZSBDYXNlVmlldyBvYmplY3QgaW4gdGhlIHNuYXBzaG90XG4gICAgICAvLyBkYXRhLCBhbmQgZXh0cmFjdCBhbGwgZmxhZ3MtcmVsYXRlZCBkYXRhIGZyb20gaXRzIEZsYWdzIGZpZWxkc1xuICAgICAgaWYgKHRoaXMucm91dGUuc25hcHNob3QuZGF0YS5jYXNlICYmIHRoaXMucm91dGUuc25hcHNob3QuZGF0YS5jYXNlLnRhYnMpIHtcbiAgICAgICAgdGhpcy5mbGFnc0RhdGEgPSAodGhpcy5yb3V0ZS5zbmFwc2hvdC5kYXRhLmNhc2UudGFicyBhcyBDYXNlVGFiW10pXG4gICAgICAgIC5maWx0ZXIodGFiID0+IHRhYi5maWVsZHMgJiYgdGFiLmZpZWxkc1xuICAgICAgICAgIC8vIFRoZXJlIGNvdWxkIGJlIG1vcmUgdGhhbiBvbmUgRmxhZ0xhdW5jaGVyIGZpZWxkIGluc3RhbmNlIHNvIGFuIGFkZGl0aW9uYWwgY2hlY2sgb2YgY2FzZUZpZWxkIElEIGlzXG4gICAgICAgICAgLy8gcmVxdWlyZWQgdG8gZW5zdXJlIHRoZSBjb3JyZWN0IGluc3RhbmNlIGlzIG9idGFpbmVkXG4gICAgICAgICAgLnNvbWUoY2FzZUZpZWxkID0+IGNhc2VGaWVsZC5maWVsZF90eXBlLnR5cGUgPT09ICdGbGFnTGF1bmNoZXInICYmIGNhc2VGaWVsZC5pZCA9PT0gdGhpcy5jYXNlRmllbGQuaWQpKVxuICAgICAgICBbMF0uZmllbGRzLnJlZHVjZSgoZmxhZ3MsIGNhc2VGaWVsZCkgPT4ge1xuICAgICAgICAgIHJldHVybiBGaWVsZHNVdGlscy5leHRyYWN0RmxhZ3NEYXRhRnJvbUNhc2VGaWVsZChmbGFncywgY2FzZUZpZWxkLCBjYXNlRmllbGQuaWQsIGNhc2VGaWVsZCk7XG4gICAgICAgIH0sIFtdKTtcbiAgICAgIH1cblxuICAgICAgLy8gU2VwYXJhdGUgdGhlIHBhcnR5LWxldmVsIGFuZCBjYXNlLWxldmVsIGZsYWdzXG4gICAgICB0aGlzLnBhcnR5TGV2ZWxDYXNlRmxhZ0RhdGEgPSB0aGlzLmZsYWdzRGF0YS5maWx0ZXIoXG4gICAgICAgIGluc3RhbmNlID0+IGluc3RhbmNlLnBhdGhUb0ZsYWdzRm9ybUdyb3VwICE9PSB0aGlzLmNhc2VMZXZlbENhc2VGbGFnc0ZpZWxkSWQpO1xuICAgICAgLy8gSWYgdGhlIHVzZXIgaXMgaW50ZXJuYWwsIGdyb3VwIGFsbCBmbGFncyBkYXRhIGJ5IGdyb3VwSWQgd2hlcmUgcHJlc2VudCBzbyB0aGV5IHNlZSBhIGNvbWJpbmVkIGNvbGxlY3Rpb24gb2ZcbiAgICAgIC8vIGludGVybmFsIGFuZCBleHRlcm5hbCBmbGFncyBkYXRhIGZvciBlYWNoIHBhcnR5XG4gICAgICBpZiAoIXRoaXMuY2FzZUZsYWdzRXh0ZXJuYWxVc2VyKSB7XG4gICAgICAgIGNvbnN0IGdyb3VwZWRGbGFnc0RhdGEgPSB0aGlzLnBhcnR5TGV2ZWxDYXNlRmxhZ0RhdGFcbiAgICAgICAgLmZpbHRlcigoZikgPT4gZi5mbGFncy5ncm91cElkKVxuICAgICAgICAucmVkdWNlKChtZXJnZWRGbGFnRGV0YWlscywgZikgPT4ge1xuICAgICAgICAgIG1lcmdlZEZsYWdEZXRhaWxzW2YuZmxhZ3MuZ3JvdXBJZF0gPSBtZXJnZWRGbGFnRGV0YWlsc1tmLmZsYWdzLmdyb3VwSWRdIHx8IFtdO1xuICAgICAgICAgIC8vIFRoZSBmbGFncy5kZXRhaWxzIHByb3BlcnR5ICh3aGljaCBzaG91bGQgYmUgYW4gYXJyYXkpIGNvdWxkIGJlIGZhbHN5OyBzcHJlYWQgYW4gZW1wdHkgYXJyYXkgaWYgc29cbiAgICAgICAgICBtZXJnZWRGbGFnRGV0YWlsc1tmLmZsYWdzLmdyb3VwSWRdLnB1c2goLi4uKGYuZmxhZ3MuZGV0YWlscyB8fCBbXSkpO1xuICAgICAgICAgIHJldHVybiBtZXJnZWRGbGFnRGV0YWlscztcbiAgICAgICAgfSwgT2JqZWN0LmNyZWF0ZShudWxsKSk7XG4gICAgICAgIC8vIFJlbW92ZSBkdXBsaWNhdGUgZmxhZ3Mgb2JqZWN0cyB3aXRoIHRoZSBzYW1lIGdyb3VwSWQgKHdoaWNoIGFyZSBnb2luZyB0byBiZSB0cmVhdGVkIGFzIG9uZSBmb3IgZGlzcGxheVxuICAgICAgICAvLyBwdXJwb3NlcylcbiAgICAgICAgY29uc3QgdW5pcXVlUGFydHlEYXRhID0gdGhpcy5wYXJ0eUxldmVsQ2FzZUZsYWdEYXRhXG4gICAgICAgIC5maWx0ZXIoKGYpID0+IGYuZmxhZ3MuZ3JvdXBJZClcbiAgICAgICAgLnJlZHVjZSgoZmxhZ3NVbmlxdWVCeUdyb3VwSWQsIGYpID0+IHtcbiAgICAgICAgICBpZiAoZmxhZ3NVbmlxdWVCeUdyb3VwSWQuZmluZEluZGV4KGZsYWcgPT4gZmxhZy5mbGFncy5ncm91cElkID09PSBmLmZsYWdzLmdyb3VwSWQpID09PSAtMSkge1xuICAgICAgICAgICAgLy8gU2V0IHRoZSBjb3JyZXNwb25kaW5nIGdyb3VwZWQgZmxhZ3MgZGF0YVxuICAgICAgICAgICAgZi5mbGFncy5kZXRhaWxzID0gZ3JvdXBlZEZsYWdzRGF0YVtmLmZsYWdzLmdyb3VwSWRdO1xuICAgICAgICAgICAgZmxhZ3NVbmlxdWVCeUdyb3VwSWQucHVzaChmKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIGZsYWdzVW5pcXVlQnlHcm91cElkO1xuICAgICAgICB9LCBbXSk7XG4gICAgICAgIC8vIEFwcGVuZCBmbGFncyBvYmplY3RzIHdpdGggbm8gZ3JvdXBJZFxuICAgICAgICB0aGlzLnBhcnR5TGV2ZWxDYXNlRmxhZ0RhdGEuZmlsdGVyKChmKSA9PiAhZi5mbGFncy5ncm91cElkKS5mb3JFYWNoKChmKSA9PiB1bmlxdWVQYXJ0eURhdGEucHVzaChmKSk7XG4gICAgICAgIHRoaXMucGFydHlMZXZlbENhc2VGbGFnRGF0YSA9IHVuaXF1ZVBhcnR5RGF0YTtcbiAgICAgIH1cblxuICAgICAgLy8gVGhlcmUgd2lsbCBiZSBvbmx5IG9uZSBjYXNlLWxldmVsIGZsYWdzIGluc3RhbmNlIGNvbnRhaW5pbmcgYWxsIGNhc2UtbGV2ZWwgZmxhZyBkZXRhaWxzXG4gICAgICB0aGlzLmNhc2VMZXZlbENhc2VGbGFnRGF0YSA9IHRoaXMuZmxhZ3NEYXRhLmZpbmQoXG4gICAgICAgIGluc3RhbmNlID0+IGluc3RhbmNlLnBhdGhUb0ZsYWdzRm9ybUdyb3VwID09PSB0aGlzLmNhc2VMZXZlbENhc2VGbGFnc0ZpZWxkSWQpO1xuICAgIH0gZWxzZSBpZiAodGhpcy5jb250ZXh0ID09PSBQYWxldHRlQ29udGV4dC5DSEVDS19ZT1VSX0FOU1dFUikge1xuICAgICAgLy8gSWYgdGhlIGNvbnRleHQgaXMgUGFsZXR0ZUNvbnRleHQuQ0hFQ0tfWU9VUl9BTlNXRVIsIHRoZSBGbGFncyBkYXRhIGlzIGFscmVhZHkgcHJlc2VudCB3aXRoaW4gdGhlIEZvcm1Hcm91cC5cbiAgICAgIC8vIFRoZSBGbGFnTGF1bmNoZXIgY29tcG9uZW50LCBXcml0ZUNhc2VGbGFnRmllbGRDb21wb25lbnQsIGhvbGRzIGEgcmVmZXJlbmNlIHRvOlxuICAgICAgLy8gaSkgdGhlIHBhcmVudCBGb3JtR3JvdXAgZm9yIHRoZSBGbGFncyBpbnN0YW5jZSB3aGVyZSBjaGFuZ2VzIGhhdmUgYmVlbiBtYWRlO1xuICAgICAgLy8gaWkpIHRoZSBjdXJyZW50bHkgc2VsZWN0ZWQgZmxhZyAoc2VsZWN0ZWRGbGFnKSBpZiBvbmUgZXhpc3RzXG4gICAgICBpZiAoZmxhZ0xhdW5jaGVyQ29tcG9uZW50KSB7XG4gICAgICAgIC8vIFRoZSBGbGFnTGF1bmNoZXIgY29tcG9uZW50IGhvbGRzIGEgcmVmZXJlbmNlIChzZWxlY3RlZEZsYWdzTG9jYXRpb24pIGNvbnRhaW5pbmcgdGhlIENhc2VGaWVsZCBpbnN0YW5jZSB0b1xuICAgICAgICAvLyB3aGljaCB0aGUgbmV3IGZsYWcgaGFzIGJlZW4gYWRkZWRcbiAgICAgICAgaWYgKChmbGFnTGF1bmNoZXJDb21wb25lbnQuY2FzZUZpZWxkLmRpc3BsYXlfY29udGV4dF9wYXJhbWV0ZXIgPT09IENhc2VGbGFnRGlzcGxheUNvbnRleHRQYXJhbWV0ZXIuQ1JFQVRFIHx8XG4gICAgICAgICAgICBmbGFnTGF1bmNoZXJDb21wb25lbnQuY2FzZUZpZWxkLmRpc3BsYXlfY29udGV4dF9wYXJhbWV0ZXIgPT09IENhc2VGbGFnRGlzcGxheUNvbnRleHRQYXJhbWV0ZXIuQ1JFQVRFXzJfUE9JTlRfMSB8fFxuICAgICAgICAgICAgZmxhZ0xhdW5jaGVyQ29tcG9uZW50LmNhc2VGaWVsZC5kaXNwbGF5X2NvbnRleHRfcGFyYW1ldGVyID09PSBDYXNlRmxhZ0Rpc3BsYXlDb250ZXh0UGFyYW1ldGVyLkNSRUFURV9FWFRFUk5BTClcbiAgICAgICAgICAgICYmIGZsYWdMYXVuY2hlckNvbXBvbmVudC5zZWxlY3RlZEZsYWdzTG9jYXRpb24pIHtcbiAgICAgICAgICB0aGlzLnBhdGhUb0ZsYWdzRm9ybUdyb3VwID0gZmxhZ0xhdW5jaGVyQ29tcG9uZW50LnNlbGVjdGVkRmxhZ3NMb2NhdGlvbi5wYXRoVG9GbGFnc0Zvcm1Hcm91cDtcbiAgICAgICAgICB0aGlzLmZsYWdGb3JTdW1tYXJ5RGlzcGxheSA9IHRoaXMuZXh0cmFjdE5ld0ZsYWdUb0ZsYWdEZXRhaWxEaXNwbGF5T2JqZWN0KFxuICAgICAgICAgICAgZmxhZ0xhdW5jaGVyQ29tcG9uZW50LnNlbGVjdGVkRmxhZ3NMb2NhdGlvbik7XG4gICAgICAgIC8vIFRoZSBGbGFnTGF1bmNoZXIgY29tcG9uZW50IGhvbGRzIGEgcmVmZXJlbmNlIChzZWxlY3RlZEZsYWcpLCB3aGljaCBnZXRzIHNldCBhZnRlciB0aGUgc2VsZWN0aW9uIHN0ZXAgb2YgdGhlXG4gICAgICAgIC8vIE1hbmFnZSBDYXNlIEZsYWdzIGpvdXJuZXlcbiAgICAgICAgfSBlbHNlIGlmICgoZmxhZ0xhdW5jaGVyQ29tcG9uZW50LmNhc2VGaWVsZC5kaXNwbGF5X2NvbnRleHRfcGFyYW1ldGVyID09PSBDYXNlRmxhZ0Rpc3BsYXlDb250ZXh0UGFyYW1ldGVyLlVQREFURSB8fFxuICAgICAgICAgIGZsYWdMYXVuY2hlckNvbXBvbmVudC5jYXNlRmllbGQuZGlzcGxheV9jb250ZXh0X3BhcmFtZXRlciA9PT0gQ2FzZUZsYWdEaXNwbGF5Q29udGV4dFBhcmFtZXRlci5VUERBVEVfMl9QT0lOVF8xIHx8XG4gICAgICAgICAgZmxhZ0xhdW5jaGVyQ29tcG9uZW50LmNhc2VGaWVsZC5kaXNwbGF5X2NvbnRleHRfcGFyYW1ldGVyID09PSBDYXNlRmxhZ0Rpc3BsYXlDb250ZXh0UGFyYW1ldGVyLlVQREFURV9FWFRFUk5BTCkgJiZcbiAgICAgICAgICBmbGFnTGF1bmNoZXJDb21wb25lbnQuc2VsZWN0ZWRGbGFnKSB7XG4gICAgICAgICAgICB0aGlzLmZsYWdGb3JTdW1tYXJ5RGlzcGxheSA9XG4gICAgICAgICAgICAgIHRoaXMuZm9ybUdyb3VwLmdldChmbGFnTGF1bmNoZXJDb250cm9sTmFtZSlbJ2NvbXBvbmVudCddLnNlbGVjdGVkRmxhZy5mbGFnRGV0YWlsRGlzcGxheTtcbiAgICAgICAgICAvLyBUT0RPOiBub3QgdGhlIGJlc3Qgc29sdXRpb24sIHRoZSBjYXNlRmxhZ1N0YXRlU2VydmljZSBzaG91bGQgaGF2ZSBhbGwgdGhlIGZpZWxkcywgdGhlbiB3ZSBjYW4gZGVsZXRlIGEgbG90IG9mIHRoZSB0cmFuc2Zvcm1hdGlvbnMgaGVyZVxuICAgICAgICAgIC8vIGluIENyZWF0ZSBDYXNlIEZsYWcgaXQgYWxyZWFkeSBoYXMgYWxsIGZpZWxkc1xuICAgICAgICAgIGNvbnN0IGNhc2VGbGFnRm9ybUdyb3VwVmFsdWUgPSB0aGlzLmNhc2VGbGFnU3RhdGVTZXJ2aWNlLmZvcm1Hcm91cD8udmFsdWU7XG4gICAgICAgICAgaWYgKGNhc2VGbGFnRm9ybUdyb3VwVmFsdWUpIHtcbiAgICAgICAgICAgIGNhc2VGbGFnRm9ybUdyb3VwVmFsdWUuc3RhdHVzID0gQ2FzZUZsYWdTdGF0dXNbY2FzZUZsYWdGb3JtR3JvdXBWYWx1ZS5zdGF0dXNdO1xuICAgICAgICAgICAgdGhpcy5mbGFnRm9yU3VtbWFyeURpc3BsYXkuZmxhZ0RldGFpbCA9IHtcbiAgICAgICAgICAgICAgLi4udGhpcy5mbGFnRm9yU3VtbWFyeURpc3BsYXkuZmxhZ0RldGFpbCxcbiAgICAgICAgICAgICAgLi4uY2FzZUZsYWdGb3JtR3JvdXBWYWx1ZVxuICAgICAgICAgICAgfTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGV4dHJhY3ROZXdGbGFnVG9GbGFnRGV0YWlsRGlzcGxheU9iamVjdChzZWxlY3RlZEZsYWdzTG9jYXRpb246IEZsYWdzV2l0aEZvcm1Hcm91cFBhdGgpOiBGbGFnRGV0YWlsRGlzcGxheSB7XG4gICAgLy8gVXNlIHRoZSBwYXRoVG9GbGFnc0Zvcm1Hcm91cCBwcm9wZXJ0eSBmcm9tIHRoZSBzZWxlY3RlZCBmbGFnIGxvY2F0aW9uIHRvIGRyaWxsIGRvd24gdG8gdGhlIGNvcnJlY3QgcGFydCBvZiB0aGVcbiAgICAvLyBDYXNlRmllbGQgdmFsdWUgY29udGFpbmluZyB0aGUgbmV3IGZsYWdcbiAgICBsZXQgZmxhZ3NDYXNlRmllbGRWYWx1ZSA9IHNlbGVjdGVkRmxhZ3NMb2NhdGlvbi5jYXNlRmllbGQ/LnZhbHVlO1xuICAgIGNvbnN0IHBhdGggPSBzZWxlY3RlZEZsYWdzTG9jYXRpb24ucGF0aFRvRmxhZ3NGb3JtR3JvdXA7XG4gICAgLy8gUm9vdC1sZXZlbCBGbGFncyBDYXNlRmllbGRzIGRvbid0IGhhdmUgYSBkb3QtZGVsaW1pdGVkIHBhdGggLSBqdXN0IHRoZSBDYXNlRmllbGQgSUQgaXRzZWxmIC0gc28gZG9uJ3QgZHJpbGwgZG93blxuICAgIGlmIChwYXRoLmluZGV4T2YoJy4nKSA+IC0xKSB7XG4gICAgICBwYXRoLnNsaWNlKHBhdGguaW5kZXhPZignLicpICsgMSkuc3BsaXQoJy4nKS5mb3JFYWNoKHBhcnQgPT4gZmxhZ3NDYXNlRmllbGRWYWx1ZSA9IGZsYWdzQ2FzZUZpZWxkVmFsdWVbcGFydF0pO1xuICAgIH1cbiAgICBpZiAoZmxhZ3NDYXNlRmllbGRWYWx1ZSkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgcGFydHlOYW1lOiBmbGFnc0Nhc2VGaWVsZFZhbHVlLnBhcnR5TmFtZSxcbiAgICAgICAgLy8gTG9vayBpbiB0aGUgZGV0YWlscyBhcnJheSBmb3IgdGhlIG9iamVjdCB0aGF0IGRvZXMgKm5vdCogaGF2ZSBhbiBpZCAtIHRoaXMgaW5kaWNhdGVzIGl0IGlzIHRoZSBuZXcgZmxhZ1xuICAgICAgICBmbGFnRGV0YWlsOiBmbGFnc0Nhc2VGaWVsZFZhbHVlLmRldGFpbHM/LmZpbmQoZWxlbWVudCA9PiAhZWxlbWVudC5oYXNPd25Qcm9wZXJ0eSgnaWQnKSk/LnZhbHVlXG4gICAgICB9IGFzIEZsYWdEZXRhaWxEaXNwbGF5O1xuICAgIH1cblxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgcHVibGljIG5hdmlnYXRlQmFja1RvRm9ybShmaWVsZFN0YXRlOiBudW1iZXIpOiB2b2lkIHtcbiAgICB0aGlzLmNhc2VGbGFnU3RhdGVTZXJ2aWNlLmZpZWxkU3RhdGVUb05hdmlnYXRlID0gZmllbGRTdGF0ZTtcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbYC4uLyR7dGhpcy5jYXNlRmxhZ1N0YXRlU2VydmljZS5wYWdlTG9jYXRpb259YF0sIHsgcmVsYXRpdmVUbzogdGhpcy5yb3V0ZSB9KTtcbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cImNvbnRleHQgPT09IHBhbGV0dGVDb250ZXh0LkNIRUNLX1lPVVJfQU5TV0VSXCI+XG4gIDxjY2QtY2FzZS1mbGFnLXN1bW1hcnktbGlzdFxuICAgIFtmbGFnRm9yU3VtbWFyeURpc3BsYXldPVwiZmxhZ0ZvclN1bW1hcnlEaXNwbGF5XCJcbiAgICBbZGlzcGxheUNvbnRleHRQYXJhbWV0ZXJdPVwiZGlzcGxheUNvbnRleHRQYXJhbWV0ZXJcIlxuICAgIChjaGFuZ2VCdXR0b25FbWl0dGVyKT1cIm5hdmlnYXRlQmFja1RvRm9ybSgkZXZlbnQpXCI+XG4gIDwvY2NkLWNhc2UtZmxhZy1zdW1tYXJ5LWxpc3Q+XG48L25nLWNvbnRhaW5lcj5cblxuPG5nLWNvbnRhaW5lciAqbmdJZj1cImNvbnRleHQgIT09IHBhbGV0dGVDb250ZXh0LkNIRUNLX1lPVVJfQU5TV0VSXCI+XG4gIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cImRpc3BsYXlDb250ZXh0UGFyYW1ldGVyXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiY2FzZUZsYWdEaXNwbGF5Q29udGV4dFBhcmFtZXRlci5SRUFEX0VYVEVSTkFMXCI+XG4gICAgICA8aDIgaWQ9XCJyZWFkLWNhc2UtZmxhZy10aXRsZVwiIGNsYXNzPVwiZ292dWstaGVhZGluZy1sXCI+XG4gICAgICAgIHt7ICdTdXBwb3J0IHJlcXVlc3RlZCcgfCBycHhUcmFuc2xhdGUgfX1cbiAgICAgIDwvaDI+XG5cbiAgICAgIDxkaXYgKm5nRm9yPVwibGV0IGZsYWdEYXRhIG9mIHBhcnR5TGV2ZWxDYXNlRmxhZ0RhdGFcIj5cbiAgICAgICAgPGNjZC1jYXNlLWZsYWctdGFibGUgKm5nSWY9XCJmbGFnRGF0YS5mbGFncy5wYXJ0eU5hbWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3RhYmxlQ2FwdGlvbl09XCInJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZmxhZ0RhdGFdPVwiZmxhZ0RhdGFcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2ZpcnN0Q29sdW1uSGVhZGVyXT1cImZsYWdEYXRhLmZsYWdzLnBhcnR5TmFtZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2FzZUZsYWdzRXh0ZXJuYWxVc2VyXT1cImNhc2VGbGFnc0V4dGVybmFsVXNlclwiXG4gICAgICAgID48L2NjZC1jYXNlLWZsYWctdGFibGU+XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoRGVmYXVsdD5cbiAgICAgIDxoMiBpZD1cInJlYWQtY2FzZS1mbGFnLXRpdGxlXCIgY2xhc3M9XCJnb3Z1ay1oZWFkaW5nLWxcIj5cbiAgICAgICAge3sgJ0Nhc2UgZmxhZ3MnIHwgcnB4VHJhbnNsYXRlIH19XG4gICAgICA8L2gyPlxuXG4gICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBmbGFnRGF0YSBvZiBwYXJ0eUxldmVsQ2FzZUZsYWdEYXRhXCI+XG4gICAgICAgIDxjY2QtY2FzZS1mbGFnLXRhYmxlICpuZ0lmPVwiZmxhZ0RhdGEuZmxhZ3MucGFydHlOYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt0YWJsZUNhcHRpb25dPVwiZmxhZ0RhdGEuZmxhZ3MucGFydHlOYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtmbGFnRGF0YV09XCJmbGFnRGF0YVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZmlyc3RDb2x1bW5IZWFkZXJdPVwiJ1BhcnR5IGxldmVsIGZsYWdzJyB8IHJweFRyYW5zbGF0ZVwiXG4gICAgICAgID48L2NjZC1jYXNlLWZsYWctdGFibGU+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJjYXNlTGV2ZWxDYXNlRmxhZ0RhdGFcIj5cbiAgICAgICAgPGNjZC1jYXNlLWZsYWctdGFibGVcbiAgICAgICAgICBbdGFibGVDYXB0aW9uXT1cIidDYXNlIGxldmVsIGZsYWdzJyB8IHJweFRyYW5zbGF0ZVwiXG4gICAgICAgICAgW2ZsYWdEYXRhXT1cImNhc2VMZXZlbENhc2VGbGFnRGF0YVwiXG4gICAgICAgICAgW2ZpcnN0Q29sdW1uSGVhZGVyXT1cIidDYXNlIGZsYWdzJyB8IHJweFRyYW5zbGF0ZVwiXG4gICAgICAgID48L2NjZC1jYXNlLWZsYWctdGFibGU+XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9uZy1jb250YWluZXI+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
|