@valtimo/components 11.3.2 → 12.0.0
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/assets/css/carbon.scss +81 -110
- package/assets/css/color.scss +28 -0
- package/assets/css/compatibility.scss +710 -0
- package/assets/css/design-tokens.css +31 -31
- package/assets/css/ng-multiselect-dropdown.theme.scss +1 -1
- package/esm2022/lib/components/alert/alert.component.mjs +7 -8
- package/esm2022/lib/components/alert/alert.module.mjs +6 -6
- package/esm2022/lib/components/alert/alert.service.mjs +6 -6
- package/esm2022/lib/components/bpmn-js-diagram/bpmn-js-diagram.component.mjs +7 -7
- package/esm2022/lib/components/bpmn-js-diagram/bpmn-js-diagram.module.mjs +6 -6
- package/esm2022/lib/components/breadcrumb-navigation/breadcrumb-navigation.component.mjs +36 -12
- package/esm2022/lib/components/breadcrumb-navigation/breadcrumb-navigation.module.mjs +6 -6
- package/esm2022/lib/components/breadcrumb-navigation/breadcrumb.service.mjs +6 -6
- package/esm2022/lib/components/button/button.component.mjs +6 -6
- package/esm2022/lib/components/button/button.module.mjs +6 -6
- package/esm2022/lib/components/camunda/form/camunda-form.components.mjs +7 -7
- package/esm2022/lib/components/camunda/form/camunda-form.module.mjs +6 -6
- package/esm2022/lib/components/camunda/form/custom/camunda-custom-form.component.mjs +7 -7
- package/esm2022/lib/components/camunda/form/custom/camunda-custom-form.module.mjs +6 -6
- package/esm2022/lib/components/camunda/form/generated/camunda-generated-form.component.mjs +7 -7
- package/esm2022/lib/components/camunda/form/generated/camunda-generated-form.module.mjs +6 -6
- package/esm2022/lib/components/camunda/form/generated/formfield/boolean/camunda-boolean-formfield.component.mjs +7 -7
- package/esm2022/lib/components/camunda/form/generated/formfield/camunda-formfield-generator.directive.mjs +6 -6
- package/esm2022/lib/components/camunda/form/generated/formfield/camunda-formfield.service.mjs +6 -6
- package/esm2022/lib/components/camunda/form/generated/formfield/choicefield/camunda-choicefield-formfield.component.mjs +13 -13
- package/esm2022/lib/components/camunda/form/generated/formfield/date/camunda-date-formfield.component.mjs +7 -7
- package/esm2022/lib/components/camunda/form/generated/formfield/enum/camunda-enum-formfield.component.mjs +7 -7
- package/esm2022/lib/components/camunda/form/generated/formfield/formfield.model.mjs +2 -2
- package/esm2022/lib/components/camunda/form/generated/formfield/long/camunda-long-formfield.component.mjs +7 -7
- package/esm2022/lib/components/camunda/form/generated/formfield/string/camunda-string-formfield.component.mjs +7 -7
- package/esm2022/lib/components/camunda/form/generated/formfield/textarea/camunda-textarea-formfield.component.mjs +7 -7
- package/esm2022/lib/components/camunda/form/generated/formfield/validation/camunda-formfield-validation.component.mjs +7 -7
- package/esm2022/lib/components/camunda/form/generated/formfield/validation/date.validators.mjs +2 -2
- package/esm2022/lib/components/carbon-list/CarbonListFilterPipe.directive.mjs +5 -5
- package/esm2022/lib/components/carbon-list/carbon-list.component.mjs +58 -18
- package/esm2022/lib/components/carbon-list/carbon-list.module.mjs +29 -10
- package/esm2022/lib/components/carbon-list/no-results/carbon-no-results.component.mjs +6 -6
- package/esm2022/lib/components/carbon-list/tags-modal/tags-modal.component.mjs +33 -0
- package/esm2022/lib/components/card/card.component.mjs +7 -9
- package/esm2022/lib/components/card/card.module.mjs +6 -6
- package/esm2022/lib/components/confirmation-modal/confirmation-modal.component.mjs +41 -16
- package/esm2022/lib/components/confirmation-modal/confirmation-modal.module.mjs +6 -6
- package/esm2022/lib/components/data-list/data-list.component.mjs +7 -9
- package/esm2022/lib/components/data-list/data-list.module.mjs +6 -6
- package/esm2022/lib/components/date-picker/date-picker.component.mjs +15 -9
- package/esm2022/lib/components/date-picker/date-picker.module.mjs +6 -6
- package/esm2022/lib/components/dropzone/dropzone.component.mjs +8 -8
- package/esm2022/lib/components/dropzone/dropzone.module.mjs +6 -6
- package/esm2022/lib/components/editor/editor.component.mjs +59 -13
- package/esm2022/lib/components/editor/editor.module.mjs +8 -7
- package/esm2022/lib/components/editor/editor.service.mjs +35 -11
- package/esm2022/lib/components/expansion-panel/expansion-panel.component.mjs +6 -6
- package/esm2022/lib/components/expansion-panel/expansion-panel.module.mjs +6 -6
- package/esm2022/lib/components/field-auto-focus/field-auto-focus.directive.mjs +6 -6
- package/esm2022/lib/components/field-auto-focus/field-auto-focus.module.mjs +6 -6
- package/esm2022/lib/components/file-size/file-size.module.mjs +6 -6
- package/esm2022/lib/components/file-size/file-size.pipe.mjs +5 -5
- package/esm2022/lib/components/filter-sidebar/filter-sidebar.component.mjs +7 -7
- package/esm2022/lib/components/filter-sidebar/filter-sidebar.module.mjs +6 -6
- package/esm2022/lib/components/form/form.component.mjs +6 -6
- package/esm2022/lib/components/form/form.module.mjs +6 -6
- package/esm2022/lib/components/form-io/form-io-builder.component.mjs +10 -10
- package/esm2022/lib/components/form-io/form-io-current-user/form-io-current-user-edit-form.mjs +2 -2
- package/esm2022/lib/components/form-io/form-io-current-user/form-io-current-user.component.mjs +6 -6
- package/esm2022/lib/components/form-io/form-io-current-user/form-io-current-user.formio.mjs +3 -3
- package/esm2022/lib/components/form-io/form-io-iban/iban.component.mjs +4 -4
- package/esm2022/lib/components/form-io/form-io-iban/iban.formio.mjs +2 -2
- package/esm2022/lib/components/form-io/form-io-iban/iban.validators.mjs +1 -1
- package/esm2022/lib/components/form-io/form-io-resource-selector/form-io-resource-selector.formio.mjs +3 -3
- package/esm2022/lib/components/form-io/form-io-uploader/form-io-uploader-edit-form.mjs +2 -2
- package/esm2022/lib/components/form-io/form-io-uploader/form-io-uploader.component.mjs +7 -7
- package/esm2022/lib/components/form-io/form-io-uploader/form-io-uploader.formio.mjs +3 -3
- package/esm2022/lib/components/form-io/form-io.component.mjs +38 -29
- package/esm2022/lib/components/form-io/form-io.module.mjs +6 -15
- package/esm2022/lib/components/form-io/formio-config.mjs +2 -2
- package/esm2022/lib/components/form-io/services/form-io-dom.service.mjs +6 -6
- package/esm2022/lib/components/form-io/services/form-io-local-storage.service.mjs +4 -4
- package/esm2022/lib/components/form-io/services/form-io-state.service.mjs +5 -5
- package/esm2022/lib/components/input/input.component.mjs +15 -9
- package/esm2022/lib/components/input/input.module.mjs +6 -6
- package/esm2022/lib/components/input-label/input-label.component.mjs +7 -7
- package/esm2022/lib/components/input-label/input-label.module.mjs +6 -6
- package/esm2022/lib/components/left-sidebar/left-sidebar.component.mjs +6 -6
- package/esm2022/lib/components/left-sidebar/left-sidebar.module.mjs +6 -6
- package/esm2022/lib/components/list/ListFilterPipe.directive.mjs +5 -5
- package/esm2022/lib/components/list/list.component.mjs +7 -7
- package/esm2022/lib/components/list/list.module.mjs +6 -6
- package/esm2022/lib/components/menu/menu-item-text.component.mjs +6 -6
- package/esm2022/lib/components/menu/menu-routing.module.mjs +6 -6
- package/esm2022/lib/components/menu/menu.init.mjs +2 -2
- package/esm2022/lib/components/menu/menu.module.mjs +6 -6
- package/esm2022/lib/components/menu/menu.service.mjs +11 -9
- package/esm2022/lib/components/modal/modal.component.mjs +7 -7
- package/esm2022/lib/components/modal/modal.module.mjs +6 -6
- package/esm2022/lib/components/multi-input/carbon-multi-input.component.mjs +45 -10
- package/esm2022/lib/components/multi-input/carbon-multi-input.module.mjs +6 -6
- package/esm2022/lib/components/multi-input-form/multi-input-form.component.mjs +6 -6
- package/esm2022/lib/components/multi-input-form/multi-input-form.module.mjs +6 -6
- package/esm2022/lib/components/multiselect-dropdown/multiselect-dropdown.component.mjs +6 -6
- package/esm2022/lib/components/multiselect-dropdown/multiselect-dropdown.module.mjs +6 -6
- package/esm2022/lib/components/page/page-container/page-container.component.mjs +6 -6
- package/esm2022/lib/components/page/page-content/page-content.component.mjs +6 -6
- package/esm2022/lib/components/page/page-header/page-header.component.mjs +6 -6
- package/esm2022/lib/components/page/page-header-actions/page-header-actions.component.mjs +6 -6
- package/esm2022/lib/components/page/page-header-introduction/page-header-introduction.component.mjs +6 -6
- package/esm2022/lib/components/page/page.module.mjs +6 -6
- package/esm2022/lib/components/page-actions/page-actions.component.mjs +82 -0
- package/esm2022/lib/components/page-header/page-header.component.mjs +43 -13
- package/esm2022/lib/components/page-header/page-header.module.mjs +27 -7
- package/esm2022/lib/components/page-subtitle/page-subtitle.component.mjs +53 -0
- package/esm2022/lib/components/page-title/page-title.component.mjs +30 -21
- package/esm2022/lib/components/page-title/page-title.module.mjs +8 -8
- package/esm2022/lib/components/paragraph/paragraph.component.mjs +6 -6
- package/esm2022/lib/components/paragraph/paragraph.module.mjs +6 -6
- package/esm2022/lib/components/pending-changes/pending-changes.component.mjs +24 -7
- package/esm2022/lib/components/pending-changes/pending-changes.service.mjs +4 -4
- package/esm2022/lib/components/progress-bar/progress-bar.component.mjs +6 -6
- package/esm2022/lib/components/progress-bar/progress-bar.module.mjs +6 -6
- package/esm2022/lib/components/prompt/prompt.component.mjs +7 -7
- package/esm2022/lib/components/prompt/prompt.module.mjs +6 -6
- package/esm2022/lib/components/radio/radio.component.mjs +6 -6
- package/esm2022/lib/components/radio/radio.module.mjs +6 -6
- package/esm2022/lib/components/right-sidebar/right-sidebar.component.mjs +105 -16
- package/esm2022/lib/components/right-sidebar/right-sidebar.module.mjs +15 -12
- package/esm2022/lib/components/search-fields/search-fields.component.mjs +34 -24
- package/esm2022/lib/components/search-fields/search-fields.module.mjs +24 -9
- package/esm2022/lib/components/searchable-dropdown/searchable-dropdown.component.mjs +6 -6
- package/esm2022/lib/components/searchable-dropdown/searchable-dropdown.module.mjs +6 -6
- package/esm2022/lib/components/searchable-dropdown-select/searchable-dropdown-select.component.mjs +9 -6
- package/esm2022/lib/components/searchable-dropdown-select/searchable-dropdown-select.module.mjs +6 -6
- package/esm2022/lib/components/select/select.component.mjs +12 -8
- package/esm2022/lib/components/select/select.module.mjs +6 -6
- package/esm2022/lib/components/spinner/spinner.component.mjs +6 -6
- package/esm2022/lib/components/spinner/spinner.module.mjs +6 -6
- package/esm2022/lib/components/status-selector/status-selector.component.mjs +86 -0
- package/esm2022/lib/components/stepper/stepper-container/stepper-container.component.mjs +7 -7
- package/esm2022/lib/components/stepper/stepper-content/stepper-content.component.mjs +7 -7
- package/esm2022/lib/components/stepper/stepper-footer/stepper-footer.component.mjs +6 -6
- package/esm2022/lib/components/stepper/stepper-footer-step/stepper-footer-step.component.mjs +7 -7
- package/esm2022/lib/components/stepper/stepper-header/stepper-header.component.mjs +7 -7
- package/esm2022/lib/components/stepper/stepper-step/stepper-step.component.mjs +7 -7
- package/esm2022/lib/components/stepper/stepper.module.mjs +6 -6
- package/esm2022/lib/components/table/table.component.mjs +7 -7
- package/esm2022/lib/components/table/table.module.mjs +6 -6
- package/esm2022/lib/components/timeline/timeline.component.mjs +6 -6
- package/esm2022/lib/components/timeline/timeline.module.mjs +8 -7
- package/esm2022/lib/components/title/title.component.mjs +6 -6
- package/esm2022/lib/components/title/title.module.mjs +6 -6
- package/esm2022/lib/components/tooltip-icon/tooltip-icon.component.mjs +6 -6
- package/esm2022/lib/components/tooltip-icon/tooltip-icon.module.mjs +6 -6
- package/esm2022/lib/components/topbar/topbar.component.mjs +70 -23
- package/esm2022/lib/components/topbar/topbar.module.mjs +6 -6
- package/esm2022/lib/components/uploader/uploader-drag-drop.directive.mjs +5 -5
- package/esm2022/lib/components/uploader/uploader.component.mjs +7 -8
- package/esm2022/lib/components/uploader/uploader.module.mjs +6 -6
- package/esm2022/lib/components/v-card/card.component.mjs +6 -6
- package/esm2022/lib/components/v-card/card.module.mjs +6 -6
- package/esm2022/lib/components/v-modal/modal.component.mjs +7 -7
- package/esm2022/lib/components/v-modal/modal.module.mjs +6 -6
- package/esm2022/lib/components/version/version.service.mjs +6 -6
- package/esm2022/lib/components/view-content/type-converters/booleanTypeConverter.mjs +2 -2
- package/esm2022/lib/components/view-content/type-converters/dateTypeConverter.mjs +2 -2
- package/esm2022/lib/components/view-content/type-converters/enumTypeConverter.mjs +2 -2
- package/esm2022/lib/components/view-content/type-converters/relatedFilesTypeConverter.mjs +2 -2
- package/esm2022/lib/components/view-content/type-converters/stringReplaceUnderscoreTypeConverter.mjs +2 -2
- package/esm2022/lib/components/view-content/type-converters/stringTypeConverter.mjs +2 -2
- package/esm2022/lib/components/view-content/type-converters/type-converters.model.mjs +2 -2
- package/esm2022/lib/components/view-content/view-content.service.mjs +6 -6
- package/esm2022/lib/components/webcam/webcam.component.mjs +6 -6
- package/esm2022/lib/components/webcam/webcam.module.mjs +6 -6
- package/esm2022/lib/components/widget/widget.component.mjs +6 -6
- package/esm2022/lib/components/widget/widget.module.mjs +6 -6
- package/esm2022/lib/constants/carbon.constants.mjs +2 -2
- package/esm2022/lib/constants/index.mjs +3 -2
- package/esm2022/lib/constants/status.constants.mjs +18 -0
- package/esm2022/lib/constants/view-type-converter.constants.mjs +16 -1
- package/esm2022/lib/directives/command-click/command-click-directive.module.mjs +6 -6
- package/esm2022/lib/directives/command-click/command-click.directive.mjs +6 -6
- package/esm2022/lib/directives/digit-only/digit-only.directive.mjs +6 -6
- package/esm2022/lib/directives/fit-page/fit-page-directive.module.mjs +33 -0
- package/esm2022/lib/directives/fit-page/fit-page.directive.mjs +54 -0
- package/esm2022/lib/directives/render-in-page-header/render-in-page-header-directive.module.mjs +6 -6
- package/esm2022/lib/directives/render-in-page-header/render-in-page-header.directive.mjs +23 -10
- package/esm2022/lib/directives/render-page-header/render-page-header-directive.module.mjs +33 -0
- package/esm2022/lib/directives/render-page-header/render-page-header.directive.mjs +56 -0
- package/esm2022/lib/directives/render-page-subtitle/render-page-subtitle-directive.module.mjs +33 -0
- package/esm2022/lib/directives/render-page-subtitle/render-page-subtitle.directive.mjs +57 -0
- package/esm2022/lib/directives/tooltip/tooltip.component.mjs +6 -6
- package/esm2022/lib/directives/tooltip/tooltip.directive.mjs +6 -6
- package/esm2022/lib/directives/tooltip/tooltip.module.mjs +6 -6
- package/esm2022/lib/directives/valtimo-cds-modal/valtimo-cds-modal-directive.module.mjs +6 -6
- package/esm2022/lib/directives/valtimo-cds-modal/valtimo-cds-modal.directive.mjs +7 -7
- package/esm2022/lib/directives/valtimo-cds-overflow-button/valtimo-cds-overflow-button-directive.module.mjs +6 -6
- package/esm2022/lib/directives/valtimo-cds-overflow-button/valtimo-cds-overflow-button.directive.mjs +7 -7
- package/esm2022/lib/guards/index.mjs +2 -2
- package/esm2022/lib/guards/pending-changes.guard.mjs +1 -1
- package/esm2022/lib/models/alert.model.mjs +2 -2
- package/esm2022/lib/models/button.model.mjs +2 -2
- package/esm2022/lib/models/carbon-list.model.mjs +2 -1
- package/esm2022/lib/models/carbon-pagination.model.mjs +2 -2
- package/esm2022/lib/models/carbon-tag.model.mjs +17 -0
- package/esm2022/lib/models/carbon-theme.model.mjs +24 -0
- package/esm2022/lib/models/choice-field.model.mjs +17 -0
- package/esm2022/lib/models/choicefield-value.model.mjs +17 -0
- package/esm2022/lib/models/documenten-api-metadata.model.mjs +2 -2
- package/esm2022/lib/models/editor.model.mjs +8 -3
- package/esm2022/lib/models/form-io.model.mjs +2 -2
- package/esm2022/lib/models/form.model.mjs +2 -2
- package/esm2022/lib/models/index.mjs +11 -4
- package/esm2022/lib/models/input.model.mjs +2 -2
- package/esm2022/lib/models/modal.model.mjs +2 -2
- package/esm2022/lib/models/multi-input.model.mjs +2 -2
- package/esm2022/lib/models/pagination.model.mjs +2 -2
- package/esm2022/lib/models/radio.model.mjs +2 -2
- package/esm2022/lib/models/right-sidebar.model.mjs +17 -0
- package/esm2022/lib/models/searchable-dropdown.model.mjs +2 -2
- package/esm2022/lib/models/select.model.mjs +2 -2
- package/esm2022/lib/models/sort.model.mjs +2 -2
- package/esm2022/lib/models/stepper.model.mjs +2 -2
- package/esm2022/lib/models/table.model.mjs +2 -2
- package/esm2022/lib/models/theme.model.mjs +28 -0
- package/esm2022/lib/models/timeline.model.mjs +2 -2
- package/esm2022/lib/models/title.model.mjs +2 -2
- package/esm2022/lib/models/topbar.model.mjs +17 -0
- package/esm2022/lib/models/version.model.mjs +2 -2
- package/esm2022/lib/modules/custom-formio-component/create-custom-component.mjs +162 -0
- package/esm2022/lib/modules/custom-formio-component/custom-tags.service.mjs +32 -0
- package/esm2022/lib/modules/custom-formio-component/elements.common.mjs +17 -0
- package/esm2022/lib/modules/custom-formio-component/index.mjs +20 -0
- package/esm2022/lib/modules/custom-formio-component/register-custom-component.mjs +38 -0
- package/esm2022/lib/modules/index.mjs +17 -0
- package/esm2022/lib/pipes/case-count.pipe.mjs +5 -5
- package/esm2022/lib/pipes/components-pipes.module.mjs +6 -6
- package/esm2022/lib/pipes/index.mjs +2 -2
- package/esm2022/lib/pipes/is-array.pipe.mjs +5 -5
- package/esm2022/lib/pipes/menu-item-translation.pipe.mjs +6 -6
- package/esm2022/lib/services/cds-theme.service.mjs +97 -0
- package/esm2022/lib/services/choice-field.service.mjs +70 -0
- package/esm2022/lib/services/index.mjs +21 -1
- package/esm2022/lib/services/modal.service.mjs +6 -6
- package/esm2022/lib/services/page-header.service.mjs +83 -0
- package/esm2022/lib/services/page-subtitle.service.mjs +46 -0
- package/esm2022/lib/services/page-title.service.mjs +121 -0
- package/esm2022/lib/services/prompt.service.mjs +5 -5
- package/esm2022/lib/services/shell.service.mjs +6 -6
- package/esm2022/lib/services/stepper.service.mjs +5 -5
- package/esm2022/lib/services/user-interface.service.mjs +5 -5
- package/esm2022/lib/services/valtimo-modal.service.mjs +5 -5
- package/esm2022/public_api.mjs +17 -7
- package/fesm2022/valtimo-components.mjs +8349 -7434
- package/fesm2022/valtimo-components.mjs.map +1 -1
- package/lib/components/alert/alert.component.d.ts +2 -3
- package/lib/components/alert/alert.component.d.ts.map +1 -1
- package/lib/components/breadcrumb-navigation/breadcrumb-navigation.component.d.ts +11 -2
- package/lib/components/breadcrumb-navigation/breadcrumb-navigation.component.d.ts.map +1 -1
- package/lib/components/camunda/form/generated/formfield/choicefield/camunda-choicefield-formfield.component.d.ts +3 -3
- package/lib/components/camunda/form/generated/formfield/choicefield/camunda-choicefield-formfield.component.d.ts.map +1 -1
- package/lib/components/carbon-list/carbon-list.component.d.ts +12 -3
- package/lib/components/carbon-list/carbon-list.component.d.ts.map +1 -1
- package/lib/components/carbon-list/carbon-list.module.d.ts +9 -7
- package/lib/components/carbon-list/carbon-list.module.d.ts.map +1 -1
- package/lib/components/carbon-list/tags-modal/tags-modal.component.d.ts +14 -0
- package/lib/components/carbon-list/tags-modal/tags-modal.component.d.ts.map +1 -0
- package/lib/components/card/card.component.d.ts +1 -4
- package/lib/components/card/card.component.d.ts.map +1 -1
- package/lib/components/confirmation-modal/confirmation-modal.component.d.ts +12 -4
- package/lib/components/confirmation-modal/confirmation-modal.component.d.ts.map +1 -1
- package/lib/components/data-list/data-list.component.d.ts +1 -4
- package/lib/components/data-list/data-list.component.d.ts.map +1 -1
- package/lib/components/date-picker/date-picker.component.d.ts +2 -1
- package/lib/components/date-picker/date-picker.component.d.ts.map +1 -1
- package/lib/components/editor/editor.component.d.ts +7 -2
- package/lib/components/editor/editor.component.d.ts.map +1 -1
- package/lib/components/editor/editor.module.d.ts +2 -1
- package/lib/components/editor/editor.module.d.ts.map +1 -1
- package/lib/components/editor/editor.service.d.ts +11 -2
- package/lib/components/editor/editor.service.d.ts.map +1 -1
- package/lib/components/form-io/form-io-builder.component.d.ts +1 -1
- package/lib/components/form-io/form-io-builder.component.d.ts.map +1 -1
- package/lib/components/form-io/form-io-current-user/form-io-current-user.component.d.ts +1 -1
- package/lib/components/form-io/form-io-current-user/form-io-current-user.component.d.ts.map +1 -1
- package/lib/components/form-io/form-io-iban/iban.component.d.ts +1 -1
- package/lib/components/form-io/form-io-iban/iban.component.d.ts.map +1 -1
- package/lib/components/form-io/form-io-uploader/form-io-uploader.component.d.ts +1 -1
- package/lib/components/form-io/form-io-uploader/form-io-uploader.component.d.ts.map +1 -1
- package/lib/components/form-io/form-io.component.d.ts +8 -5
- package/lib/components/form-io/form-io.component.d.ts.map +1 -1
- package/lib/components/form-io/form-io.module.d.ts +12 -14
- package/lib/components/form-io/form-io.module.d.ts.map +1 -1
- package/lib/components/input/input.component.d.ts +2 -1
- package/lib/components/input/input.component.d.ts.map +1 -1
- package/lib/components/left-sidebar/left-sidebar.component.d.ts.map +1 -1
- package/lib/components/multi-input/carbon-multi-input.component.d.ts +9 -3
- package/lib/components/multi-input/carbon-multi-input.component.d.ts.map +1 -1
- package/lib/components/page-actions/page-actions.component.d.ts +29 -0
- package/lib/components/page-actions/page-actions.component.d.ts.map +1 -0
- package/lib/components/page-header/page-header.component.d.ts +15 -4
- package/lib/components/page-header/page-header.component.d.ts.map +1 -1
- package/lib/components/page-header/page-header.module.d.ts +4 -1
- package/lib/components/page-header/page-header.module.d.ts.map +1 -1
- package/lib/components/page-subtitle/page-subtitle.component.d.ts +20 -0
- package/lib/components/page-subtitle/page-subtitle.component.d.ts.map +1 -0
- package/lib/components/page-title/page-title.component.d.ts +8 -9
- package/lib/components/page-title/page-title.component.d.ts.map +1 -1
- package/lib/components/page-title/page-title.module.d.ts +1 -1
- package/lib/components/pending-changes/pending-changes.component.d.ts +6 -1
- package/lib/components/pending-changes/pending-changes.component.d.ts.map +1 -1
- package/lib/components/right-sidebar/right-sidebar.component.d.ts +27 -4
- package/lib/components/right-sidebar/right-sidebar.component.d.ts.map +1 -1
- package/lib/components/right-sidebar/right-sidebar.module.d.ts +1 -1
- package/lib/components/right-sidebar/right-sidebar.module.d.ts.map +1 -1
- package/lib/components/search-fields/search-fields.component.d.ts +8 -5
- package/lib/components/search-fields/search-fields.component.d.ts.map +1 -1
- package/lib/components/search-fields/search-fields.module.d.ts +2 -2
- package/lib/components/search-fields/search-fields.module.d.ts.map +1 -1
- package/lib/components/searchable-dropdown-select/searchable-dropdown-select.component.d.ts +2 -1
- package/lib/components/searchable-dropdown-select/searchable-dropdown-select.component.d.ts.map +1 -1
- package/lib/components/select/select.component.d.ts +3 -1
- package/lib/components/select/select.component.d.ts.map +1 -1
- package/lib/components/status-selector/status-selector.component.d.ts +24 -0
- package/lib/components/status-selector/status-selector.component.d.ts.map +1 -0
- package/lib/components/timeline/timeline.module.d.ts +2 -1
- package/lib/components/timeline/timeline.module.d.ts.map +1 -1
- package/lib/components/topbar/topbar.component.d.ts +17 -11
- package/lib/components/topbar/topbar.component.d.ts.map +1 -1
- package/lib/components/uploader/uploader.component.d.ts +3 -4
- package/lib/components/uploader/uploader.component.d.ts.map +1 -1
- package/lib/constants/index.d.ts +1 -0
- package/lib/constants/index.d.ts.map +1 -1
- package/lib/constants/status.constants.d.ts +3 -0
- package/lib/constants/status.constants.d.ts.map +1 -0
- package/lib/constants/view-type-converter.constants.d.ts.map +1 -1
- package/lib/directives/fit-page/fit-page-directive.module.d.ts +9 -0
- package/lib/directives/fit-page/fit-page-directive.module.d.ts.map +1 -0
- package/lib/directives/fit-page/fit-page.directive.d.ts +17 -0
- package/lib/directives/fit-page/fit-page.directive.d.ts.map +1 -0
- package/lib/directives/render-in-page-header/render-in-page-header.directive.d.ts +9 -4
- package/lib/directives/render-in-page-header/render-in-page-header.directive.d.ts.map +1 -1
- package/lib/directives/render-page-header/render-page-header-directive.module.d.ts +9 -0
- package/lib/directives/render-page-header/render-page-header-directive.module.d.ts.map +1 -0
- package/lib/directives/render-page-header/render-page-header.directive.d.ts +14 -0
- package/lib/directives/render-page-header/render-page-header.directive.d.ts.map +1 -0
- package/lib/directives/render-page-subtitle/render-page-subtitle-directive.module.d.ts +9 -0
- package/lib/directives/render-page-subtitle/render-page-subtitle-directive.module.d.ts.map +1 -0
- package/lib/directives/render-page-subtitle/render-page-subtitle.directive.d.ts +15 -0
- package/lib/directives/render-page-subtitle/render-page-subtitle.directive.d.ts.map +1 -0
- package/lib/models/carbon-list.model.d.ts +9 -1
- package/lib/models/carbon-list.model.d.ts.map +1 -1
- package/lib/models/carbon-tag.model.d.ts +6 -0
- package/lib/models/carbon-tag.model.d.ts.map +1 -0
- package/lib/models/carbon-theme.model.d.ts +8 -0
- package/lib/models/carbon-theme.model.d.ts.map +1 -0
- package/lib/models/choice-field.model.d.ts +15 -0
- package/lib/models/choice-field.model.d.ts.map +1 -0
- package/lib/models/choicefield-value.model.d.ts +21 -0
- package/lib/models/choicefield-value.model.d.ts.map +1 -0
- package/lib/models/editor.model.d.ts +11 -4
- package/lib/models/editor.model.d.ts.map +1 -1
- package/lib/models/form-io.model.d.ts +1 -1
- package/lib/models/form-io.model.d.ts.map +1 -1
- package/lib/models/index.d.ts +9 -2
- package/lib/models/index.d.ts.map +1 -1
- package/lib/models/multi-input.model.d.ts +8 -4
- package/lib/models/multi-input.model.d.ts.map +1 -1
- package/lib/models/right-sidebar.model.d.ts +6 -0
- package/lib/models/right-sidebar.model.d.ts.map +1 -0
- package/lib/models/theme.model.d.ts +11 -0
- package/lib/models/theme.model.d.ts.map +1 -0
- package/lib/models/topbar.model.d.ts +6 -0
- package/lib/models/topbar.model.d.ts.map +1 -0
- package/lib/modules/custom-formio-component/create-custom-component.d.ts +239 -0
- package/lib/modules/custom-formio-component/create-custom-component.d.ts.map +1 -0
- package/lib/modules/custom-formio-component/custom-tags.service.d.ts +8 -0
- package/lib/modules/custom-formio-component/custom-tags.service.d.ts.map +1 -0
- package/lib/modules/custom-formio-component/elements.common.d.ts +31 -0
- package/lib/modules/custom-formio-component/elements.common.d.ts.map +1 -0
- package/lib/modules/custom-formio-component/index.d.ts +5 -0
- package/lib/modules/custom-formio-component/index.d.ts.map +1 -0
- package/lib/modules/custom-formio-component/register-custom-component.d.ts +7 -0
- package/lib/modules/custom-formio-component/register-custom-component.d.ts.map +1 -0
- package/lib/modules/index.d.ts +2 -0
- package/lib/modules/index.d.ts.map +1 -0
- package/lib/services/cds-theme.service.d.ts +20 -0
- package/lib/services/cds-theme.service.d.ts.map +1 -0
- package/lib/services/choice-field.service.d.ts +27 -0
- package/lib/services/choice-field.service.d.ts.map +1 -0
- package/lib/services/index.d.ts +5 -0
- package/lib/services/index.d.ts.map +1 -1
- package/lib/services/page-header.service.d.ts +30 -0
- package/lib/services/page-header.service.d.ts.map +1 -0
- package/lib/services/page-subtitle.service.d.ts +14 -0
- package/lib/services/page-subtitle.service.d.ts.map +1 -0
- package/lib/{components/page-title → services}/page-title.service.d.ts +3 -0
- package/lib/services/page-title.service.d.ts.map +1 -0
- package/package.json +22 -19
- package/public_api.d.ts +11 -5
- package/public_api.d.ts.map +1 -1
- package/assets/css/carbon-beagle-compatibility.scss +0 -188
- package/esm2022/lib/components/documenten-api-metadata-modal/documenten-api-metadata-modal.component.mjs +0 -223
- package/esm2022/lib/components/documenten-api-metadata-modal/documenten-api-metadata-modal.module.mjs +0 -74
- package/esm2022/lib/components/form-io/documenten-api-uploader/documenten-api-uploader-edit-form.mjs +0 -305
- package/esm2022/lib/components/form-io/documenten-api-uploader/documenten-api-uploader.component.mjs +0 -147
- package/esm2022/lib/components/form-io/documenten-api-uploader/documenten-api-uploader.formio.mjs +0 -46
- package/esm2022/lib/components/page-title/page-title.service.mjs +0 -117
- package/lib/components/documenten-api-metadata-modal/documenten-api-metadata-modal.component.d.ts +0 -76
- package/lib/components/documenten-api-metadata-modal/documenten-api-metadata-modal.component.d.ts.map +0 -1
- package/lib/components/documenten-api-metadata-modal/documenten-api-metadata-modal.module.d.ts +0 -18
- package/lib/components/documenten-api-metadata-modal/documenten-api-metadata-modal.module.d.ts.map +0 -1
- package/lib/components/form-io/documenten-api-uploader/documenten-api-uploader-edit-form.d.ts +0 -105
- package/lib/components/form-io/documenten-api-uploader/documenten-api-uploader-edit-form.d.ts.map +0 -1
- package/lib/components/form-io/documenten-api-uploader/documenten-api-uploader.component.d.ts +0 -61
- package/lib/components/form-io/documenten-api-uploader/documenten-api-uploader.component.d.ts.map +0 -1
- package/lib/components/form-io/documenten-api-uploader/documenten-api-uploader.formio.d.ts +0 -4
- package/lib/components/form-io/documenten-api-uploader/documenten-api-uploader.formio.d.ts.map +0 -1
- package/lib/components/page-title/page-title.service.d.ts.map +0 -1
|
@@ -36,7 +36,7 @@ export class MenuService {
|
|
|
36
36
|
const config = configService?.config;
|
|
37
37
|
this.menuConfig = config?.menu;
|
|
38
38
|
this.disableCaseCount = config?.featureToggles?.disableCaseCount;
|
|
39
|
-
this.enableObjectManagement = config?.featureToggles?.enableObjectManagement;
|
|
39
|
+
this.enableObjectManagement = config?.featureToggles?.enableObjectManagement ?? true;
|
|
40
40
|
}
|
|
41
41
|
// Find out which menu item sequence number matches the current url the closest
|
|
42
42
|
get closestSequence$() {
|
|
@@ -203,9 +203,11 @@ export class MenuService {
|
|
|
203
203
|
definitions.content.forEach(definition => countMap.set(definition.id.name, new Subject()));
|
|
204
204
|
timer(0, 5000).subscribe(() => {
|
|
205
205
|
this.documentService.getOpenDocumentCount().subscribe(openDocumentCountList => {
|
|
206
|
-
openDocumentCountList.forEach(openDocumentCount =>
|
|
207
|
-
.get(openDocumentCount.documentDefinitionName)
|
|
208
|
-
|
|
206
|
+
openDocumentCountList.forEach(openDocumentCount => {
|
|
207
|
+
const mapEntry = countMap.get(openDocumentCount.documentDefinitionName);
|
|
208
|
+
if (mapEntry)
|
|
209
|
+
mapEntry.next(openDocumentCount.openDocumentCount);
|
|
210
|
+
});
|
|
209
211
|
});
|
|
210
212
|
});
|
|
211
213
|
return countMap;
|
|
@@ -233,13 +235,13 @@ export class MenuService {
|
|
|
233
235
|
getAllObjects() {
|
|
234
236
|
return this.http.get(`${this.configService.config.valtimoApi.endpointUri}v1/object/management/configuration`);
|
|
235
237
|
}
|
|
236
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
237
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
238
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: MenuService, deps: [{ token: i1.ConfigService }, { token: i2.DocumentService }, { token: i3.HttpClient }, { token: i4.KeycloakService }, { token: i5.NGXLogger }, { token: i1.MenuIncludeService }, { token: i6.PendingChangesService }, { token: i7.Router }, { token: i8.UserProviderService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
239
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: MenuService, providedIn: 'root' }); }
|
|
238
240
|
}
|
|
239
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
241
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: MenuService, decorators: [{
|
|
240
242
|
type: Injectable,
|
|
241
243
|
args: [{
|
|
242
244
|
providedIn: 'root',
|
|
243
245
|
}]
|
|
244
|
-
}], ctorParameters:
|
|
245
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby9jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9tZW51L21lbnUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFnQkEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUMsYUFBYSxFQUFFLGVBQWUsRUFBRSxVQUFVLEVBQVMsTUFBTSxpQkFBaUIsQ0FBQztBQU1uRixPQUFPLEVBQUMsZUFBZSxFQUFFLGFBQWEsRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUNoRixPQUFPLEVBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7OztBQU1qRCxNQUFNLE9BQU8sV0FBVztJQVV0QixJQUFJLDJCQUEyQjtRQUM3QixPQUFPLElBQUksQ0FBQyw0QkFBNEIsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMxRCxDQUFDO0lBRUQsWUFDbUIsYUFBNEIsRUFDNUIsZUFBZ0MsRUFDaEMsSUFBZ0IsRUFDaEIsZUFBZ0MsRUFDaEMsTUFBaUIsRUFDakIsa0JBQXNDLEVBQ3RDLHFCQUE0QyxFQUM1QyxNQUFjLEVBQ2QsbUJBQXdDO1FBUnhDLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQzVCLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQyxTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2hCLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQyxXQUFNLEdBQU4sTUFBTSxDQUFXO1FBQ2pCLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFDdEMsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtRQUM1QyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2Qsd0JBQW1CLEdBQW5CLG1CQUFtQixD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QkFDN0QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMseUJBQXlCLEVBQUUsUUFBUSxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQztvQkFDckUsSUFBSSxRQUFRLENBQUMsSUFBSSxLQUFLLE1BQU0sRUFBRTt3QkFDNUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMscUJBQXFCLEVBQUUsUUFBUSxFQUFFLE1BQU0sQ0FBQyxDQUFDO3dCQUMzRCxRQUFRLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQztxQkFDeEI7Z0JBQ0gsQ0FBQyxDQUFDLENBQUM7YUFDSjtRQUNILENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztJQUVPLG1CQUFtQixDQUFDLFFBQWtCLEVBQUUsS0FBZTtRQUM3RCxPQUFPLENBQUMsUUFBUSxDQUFDLEtBQUssSUFBSSxRQUFRLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUM5RSxDQUFDO0lBRU8sYUFBYTtRQUNuQixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUNsQixHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxXQUFXLG9DQUFvQyxDQUN4RixDQUFDO0lBQ0osQ0FBQzsrR0E5U1UsV0FBVzttSEFBWCxXQUFXLGNBRlYsTUFBTTs7NEZBRVAsV0FBVztrQkFIdkIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IDIwMTUtMjAyMyBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuaW1wb3J0IHtIdHRwQ2xpZW50fSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQge0luamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtOYXZpZ2F0aW9uRW5kLCBOYXZpZ2F0aW9uU3RhcnQsIFJlc29sdmVFbmQsIFJvdXRlcn0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7Q29uZmlnU2VydmljZSwgTWVudUNvbmZpZywgTWVudUluY2x1ZGVTZXJ2aWNlLCBNZW51SXRlbX0gZnJvbSAnQHZhbHRpbW8vY29uZmlnJztcbmltcG9ydCB7RG9jdW1lbnREZWZpbml0aW9ucywgRG9jdW1lbnRTZXJ2aWNlfSBmcm9tICdAdmFsdGltby9kb2N1bWVudCc7XG5pbXBvcnQge1VzZXJQcm92aWRlclNlcnZpY2V9IGZyb20gJ0B2YWx0aW1vL3NlY3VyaXR5JztcbmltcG9ydCB7S2V5Y2xvYWtTZXJ2aWNlfSBmcm9tICdrZXljbG9hay1hbmd1bGFyJztcbmltcG9ydCB7TkdYTG9nZ2VyfSBmcm9tICduZ3gtbG9nZ2VyJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBPYnNlcnZhYmxlLCBTdWJqZWN0LCB0aW1lcn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge2ZpbHRlciwgbWFwLCB0YWtlfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge1BlbmRpbmdDaGFuZ2VzU2VydmljZX0gZnJvbSAnLi4vcGVuZGluZy1jaGFuZ2VzL3BlbmRpbmctY2hhbmdlcy5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIE1lbnVTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBfYWN0aXZlUGFyZW50U2VxdWVuY2VOdW1iZXIkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+KCcnKTtcbiAgcHVibGljIGluY2x1ZGVGdW5jdGlvbk9ic2VydmFibGVzOiB7W2tleTogc3RyaW5nXTogT2JzZXJ2YWJsZTxib29sZWFuPn0gPSB7fTtcblxuICBwcml2YXRlIF9tZW51SXRlbXMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxNZW51SXRlbVtdPihbXSk7XG4gIHByaXZhdGUgbWVudUNvbmZpZzogTWVudUNvbmZpZztcblxuICBwcml2YXRlIHJlYWRvbmx5IGRpc2FibGVDYXNlQ291bnQhOiBib29sZWFuO1xuICBwcml2YXRlIHJlYWRvbmx5IGVuYWJsZU9iamVjdE1hbmFnZW1lbnQhOiBib29sZWFuO1xuXG4gIGdldCBhY3RpdmVQYXJlbnRTZXF1ZW5jZU51bWJlciQoKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy5fYWN0aXZlUGFyZW50U2VxdWVuY2VOdW1iZXIkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb25maWdTZXJ2aWNlOiBDb25maWdTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZG9jdW1lbnRTZXJ2aWNlOiBEb2N1bWVudFNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBodHRwOiBIdHRwQ2xpZW50LFxuICAgIHByaXZhdGUgcmVhZG9ubHkga2V5Y2xvYWtTZXJ2aWNlOiBLZXljbG9ha1NlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBsb2dnZXI6IE5HWExvZ2dlcixcbiAgICBwcml2YXRlIHJlYWRvbmx5IG1lbnVJbmNsdWRlU2VydmljZTogTWVudUluY2x1ZGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcGVuZGluZ0NoYW5nZXNTZXJ2aWNlOiBQZW5kaW5nQ2hhbmdlc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSByb3V0ZXI6IFJvdXRlcixcbiAgICBwcml2YXRlIHJlYWRvbmx5IHVzZXJQcm92aWRlclNlcnZpY2U6IFVzZXJQcm92aWRlclNlcnZpY2VcbiAgKSB7XG4gICAgY29uc3QgY29uZmlnID0gY29uZmlnU2VydmljZT8uY29uZmlnO1xuICAgIHRoaXMubWVudUNvbmZpZyA9IGNvbmZpZz8ubWVudTtcbiAgICB0aGlzLmRpc2FibGVDYXNlQ291bnQgPSBjb25maWc/LmZlYXR1cmVUb2dnbGVzPy5kaXNhYmxlQ2FzZUNvdW50O1xuICAgIHRoaXMuZW5hYmxlT2JqZWN0TWFuYWdlbWVudCA9IGNvbmZpZz8uZmVhdHVyZVRvZ2dsZXM/LmVuYWJsZU9iamVjdE1hbmFnZW1lbnQ7XG4gIH1cblxuICBwcml2YXRlIHJlYWRvbmx5IGN1cnJlbnRSb3V0ZSQgPSB0aGlzLnJvdXRlci5ldmVudHMucGlwZShcbiAgICBmaWx0ZXIoXG4gICAgICBldmVudCA9PlxuICAgICAgICBldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQgfHxcbiAgICAgICAgZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uU3RhcnQgfHxcbiAgICAgICAgZXZlbnQgaW5zdGFuY2VvZiBSZXNvbHZlRW5kXG4gICAgKSxcbiAgICBtYXAoZXZlbnQgPT4gKGV2ZW50IGFzIE5hdmlnYXRpb25FbmQpPy51cmwpLFxuICAgIGZpbHRlcih1cmwgPT4gISF1cmwpXG4gICk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBkb3NzaWVySXRlbXNBcHBlbmRlZCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBvYmplY3RzSXRlbXNBcHBlbmRlZCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcblxuICAvLyBGaW5kIG91dCB3aGljaCBtZW51IGl0ZW0gc2VxdWVuY2UgbnVtYmVyIG1hdGNoZXMgdGhlIGN1cnJlbnQgdXJsIHRoZSBjbG9zZXN0XG4gIHB1YmxpYyBnZXQgY2xvc2VzdFNlcXVlbmNlJCgpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuICAgIHJldHVybiBjb21iaW5lTGF0ZXN0KFtcbiAgICAgIHRoaXMuZG9zc2llckl0ZW1zQXBwZW5kZWQkLFxuICAgICAgdGhpcy5vYmplY3RzSXRlbXNBcHBlbmRlZCQsXG4gICAgICB0aGlzLmN1cnJlbnRSb3V0ZSQsXG4gICAgICB0aGlzLm1lbnVJdGVtcyQsXG4gICAgXSkucGlwZShcbiAgICAgIGZpbHRlcigoKSA9PiAhdGhpcy5wZW5kaW5nQ2hhbmdlc1NlcnZpY2UucGVuZGluZ0NoYW5nZXMpLFxuICAgICAgZmlsdGVyKFxuICAgICAgICAoW2Rvc3NpZXJJdGVtc0FwcGVuZGVkLCBvYmplY3RzSXRlbXNBcHBlbmRlZF0pID0+XG4gICAgICAgICAgZG9zc2llckl0ZW1zQXBwZW5kZWQgfHwgb2JqZWN0c0l0ZW1zQXBwZW5kZWRcbiAgICAgICksXG4gICAgICBtYXAoKFtfMSwgXzIsIGN1cnJlbnRSb3V0ZSwgbWVudUl0ZW1zXSkgPT4ge1xuICAgICAgICBsZXQgY2xvc2VzdFNlcXVlbmNlID0gJzAnO1xuICAgICAgICBsZXQgaGlnaGVzdERpZmZlcmVuY2UgPSAwO1xuXG4gICAgICAgIC8vIHJlY3Vyc2l2ZSBmdW5jdGlvbiB0byBjaGVjayBob3cgY2xvc2VseSBlYWNoIGl0ZW0gbWF0Y2hlcyB0byB0aGUgY3VycmVudCB1cmxcbiAgICAgICAgY29uc3QgY2hlY2tJdGVtTWF0Y2ggPSAoXG4gICAgICAgICAgc3RyaW5nVXJsOiBzdHJpbmcsXG4gICAgICAgICAgc2VxdWVuY2U6IHN0cmluZyxcbiAgICAgICAgICBwYXJlbnRTZXF1ZW5jZT86IHN0cmluZ1xuICAgICAgICApOiB2b2lkID0+IHtcbiAgICAgICAgICAvLyBsZW5ndGggb2YgdGhlIGN1cnJlbnQgZnVsbCB1cmxcbiAgICAgICAgICBjb25zdCBjdXJyZW50Um91dGVVcmxMZW5ndGggPSBjdXJyZW50Um91dGUubGVuZ3RoO1xuICAgICAgICAgIC8vIGxlbmd0aCBvZiB0aGUgY3VycmVudCBmdWxsIHVybCB3aXRoIHRoZSBpdGVtJ3MgdXJsIHN1YnN0cmFjdGVkXG4gICAgICAgICAgY29uc3QgY3VycmVudFJvdXRlU3Vic3RyYWN0TGVuZ3RoID0gY3VycmVudFJvdXRlLnJlcGxhY2Uoc3RyaW5nVXJsLCAnJykubGVuZ3RoO1xuICAgICAgICAgIC8vIHRoZSBhbW91bnQgb2YgY2hhcmFjdGVycyB0aGF0IGNvdWxkIGJlIHN1YnN0cmFjdGVkXG4gICAgICAgICAgY29uc3QgZGlmZmVyZW5jZSA9IGN1cnJlbnRSb3V0ZVVybExlbmd0aCAtIGN1cnJlbnRSb3V0ZVN1YnN0cmFjdExlbmd0aDtcblxuICAgICAgICAgIC8vIHRoZSBsYXJnZXIgdGhlIGFtb3VudCBvZiBjaGFyYWN0ZXJzIHRoYXQgY291bGQgYmUgc3Vic3RyYWN0ZWQsIHRoZSBtb3JlIGNsb3NlbHkgdGhlIG1lbnUgaXRlbSB1cmwgbWF0Y2hlcyB0aGUgY3VycmVudCB1cmxcbiAgICAgICAgICBpZiAoZGlmZmVyZW5jZSA+IGhpZ2hlc3REaWZmZXJlbmNlKSB7XG4gICAgICAgICAgICBoaWdoZXN0RGlmZmVyZW5jZSA9IGRpZmZlcmVuY2U7XG4gICAgICAgICAgICBjbG9zZXN0U2VxdWVuY2UgPSBzZXF1ZW5jZTtcblxuICAgICAgICAgICAgaWYgKHBhcmVudFNlcXVlbmNlKSB7XG4gICAgICAgICAgICAgIHRoaXMuX2FjdGl2ZVBhcmVudFNlcXVlbmNlTnVtYmVyJC5uZXh0KHBhcmVudFNlcXVlbmNlKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIHRoaXMuX2FjdGl2ZVBhcmVudFNlcXVlbmNlTnVtYmVyJC5uZXh0KCcnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH07XG5cbiAgICAgICAgLy8gY2hlY2sgaG93IGNsb3NlbHkgZWFjaCBtZW51IGl0ZW0gKGFuZCBjaGlsZCBtZW51IGl0ZW0pIG1hdGNoZXMgdGhlIGN1cnJlbnQgdXJsIHVzaW5nIGEgcmVjdXJzaXZlIGZ1bmN0aW9uXG4gICAgICAgIG1lbnVJdGVtcy5mb3JFYWNoKGl0ZW0gPT4ge1xuICAgICAgICAgIGNoZWNrSXRlbU1hdGNoKGl0ZW0ubGluaz8uam9pbignJykgfHwgJycsIGAke2l0ZW0uc2VxdWVuY2V9YCk7XG5cbiAgICAgICAgICBpZiAoaXRlbS5jaGlsZHJlbikge1xuICAgICAgICAgICAgaXRlbS5jaGlsZHJlbi5mb3JFYWNoKGNoaWxkSXRlbSA9PiB7XG4gICAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KGNoaWxkSXRlbS5saW5rKSkge1xuICAgICAgICAgICAgICAgIGNoZWNrSXRlbU1hdGNoKFxuICAgICAgICAgICAgICAgICAgQXJyYXkuaXNBcnJheShpdGVtLmxpbmspXG4gICAgICAgICAgICAgICAgICAgID8gWy4uLml0ZW0ubGluaywgLi4uY2hpbGRJdGVtLmxpbmtdLmpvaW4oJycpXG4gICAgICAgICAgICAgICAgICAgIDogY2hpbGRJdGVtLmxpbmsuam9pbignJyksXG4gICAgICAgICAgICAgICAgICBgJHtpdGVtLnNlcXVlbmNlfSR7Y2hpbGRJdGVtLnNlcXVlbmNlfWAsXG4gICAgICAgICAgICAgICAgICBgJHtpdGVtLnNlcXVlbmNlfWBcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIC8vIHJldHVybnMgdGhlIGNsb3Nlc3Qgc2VxdWVuY2UgbnVtYmVyIChlYWNoIG1lbnUgaXRlbSBoYXMgYSBzZXF1ZW5jZSBudW1iZXIpXG5cbiAgICAgICAgcmV0dXJuIGNsb3Nlc3RTZXF1ZW5jZTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgbWVudUl0ZW1zJCgpOiBPYnNlcnZhYmxlPE1lbnVJdGVtW10+IHtcbiAgICByZXR1cm4gdGhpcy5fbWVudUl0ZW1zJC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIGluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5yZWxvYWQoKTtcbiAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnTWVudSBpbml0aWFsaXplZCcpO1xuICB9XG5cbiAgcHVibGljIHJlbG9hZCgpOiB2b2lkIHtcbiAgICBjb25zdCByb2xlcyA9IHRoaXMua2V5Y2xvYWtTZXJ2aWNlLmdldFVzZXJSb2xlcyh0cnVlKTtcbiAgICByZXR1cm4gdGhpcy5fbWVudUl0ZW1zJC5uZXh0KHRoaXMubG9hZE1lbnVJdGVtcyhyb2xlcykpO1xuICB9XG5cbiAgcHJpdmF0ZSBsb2FkTWVudUl0ZW1zKHVzZXJSb2xlczogQXJyYXk8c3RyaW5nPik6IE1lbnVJdGVtW10ge1xuICAgIGxldCBtZW51SXRlbXM6IE1lbnVJdGVtW10gPSBbXTtcbiAgICB0aGlzLm1lbnVDb25maWcubWVudUl0ZW1zLmZvckVhY2goKG1lbnVJdGVtOiBNZW51SXRlbSkgPT4ge1xuICAgICAgaWYgKG1lbnVJdGVtLmluY2x1ZGVGdW5jdGlvbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMuaW5jbHVkZUZ1bmN0aW9uT2JzZXJ2YWJsZXNbbWVudUl0ZW0udGl0bGVdID1cbiAgICAgICAgICB0aGlzLm1lbnVJbmNsdWRlU2VydmljZS5nZXRJbmNsdWRlRnVuY3Rpb24obWVudUl0ZW0uaW5jbHVkZUZ1bmN0aW9uKTtcbiAgICAgIH1cblxuICAgICAgbWVudUl0ZW0uc2hvdyA9IHRydWU7XG5cbiAgICAgIC8vIGNoZWNrIGlmIHRoZSB0b3AgbGV2ZWwgbWVudSBpdGVtIHNwZWNpZmllcyByb2xlcyBpdCByZXF1aXJlcy4gSWYgc28sIGNoZWNrIGlmIHRoZSB1c2VyIHJvbGVzIGNvbnRhaW4gYXQgbGVhc3Qgb25lIG9mIHRoZXNlIHJvbGVzXG4gICAgICBpZiAoXG4gICAgICAgIEFycmF5LmlzQXJyYXkobWVudUl0ZW0/LnJvbGVzKVxuICAgICAgICAgID8gdXNlclJvbGVzLmZpbmQodXNlclJvbGUgPT4gbWVudUl0ZW0ucm9sZXMuaW5jbHVkZXModXNlclJvbGUpKVxuICAgICAgICAgIDogdHJ1ZVxuICAgICAgKSB7XG4gICAgICAgIC8vIGNoZWNrIGlmIG1lbnUgaXRlbSBoYXMgY2hpbGRyZW4uIElmIHNvLCBjaGVjayBpZiBjaGlsZHJlbiBzcGVjaWZ5IHJlcXVpcmVkIHJvbGVzLiBJZiBzbywgY2hlY2sgaWYgdGhlIHVzZXIgcm9sZXMgY29udGFpbiBhdCBsZWFzdCBvbmUgb2YgdGhlc2Ugcm9sZXNcbiAgICAgICAgY29uc3QgZmlsdGVyZWRNZW51SXRlbUNoaWxkcmVuID1cbiAgICAgICAgICBtZW51SXRlbT8uY2hpbGRyZW4gJiZcbiAgICAgICAgICBtZW51SXRlbT8uY2hpbGRyZW4uZmlsdGVyKGNoaWxkTWVudUl0ZW0gPT5cbiAgICAgICAgICAgIEFycmF5LmlzQXJyYXkoY2hpbGRNZW51SXRlbT8ucm9sZXMpXG4gICAgICAgICAgICAgID8gdXNlclJvbGVzLmZpbmQodXNlclJvbGUgPT4gY2hpbGRNZW51SXRlbS5yb2xlcy5pbmNsdWRlcyh1c2VyUm9sZSkpXG4gICAgICAgICAgICAgIDogdHJ1ZVxuICAgICAgICAgICk7XG5cbiAgICAgICAgLy8gaWYgdGhlIG1lbnUgaXRlbSBoYXMgY2hpbGRyZW4sIHNldCB0aGUgbWVudSBpdGVtIGNoaWxkcmVuIHRvIGZpbHRlcmVkIG1lbnUgaXRlbSBjaGlsZHJlblxuICAgICAgICBjb25zdCBtZW51SXRlbVdpdGhGaWx0ZXJlZENoaWxkcmVuOiBNZW51SXRlbSA9IHtcbiAgICAgICAgICAuLi5tZW51SXRlbSxcbiAgICAgICAgICAuLi4obWVudUl0ZW0/LmNoaWxkcmVuICYmIHtjaGlsZHJlbjogZmlsdGVyZWRNZW51SXRlbUNoaWxkcmVufSksXG4gICAgICAgIH07XG5cbiAgICAgICAgbWVudUl0ZW1zLnB1c2gobWVudUl0ZW1XaXRoRmlsdGVyZWRDaGlsZHJlbik7XG4gICAgICB9XG4gICAgfSk7XG4gICAgbWVudUl0ZW1zID0gdGhpcy5zb3J0TWVudUl0ZW1zKG1lbnVJdGVtcyk7XG4gICAgdGhpcy5hcHBlbmREb3NzaWVyU3ViTWVudUl0ZW1zKG1lbnVJdGVtcykuc3Vic2NyaWJlKFxuICAgICAgdmFsdWUgPT4gKG1lbnVJdGVtcyA9IHRoaXMuYXBwbHlNZW51Um9sZVNlY3VyaXR5KHZhbHVlKSlcbiAgICApO1xuXG4gICAgaWYgKHRoaXMuZW5hYmxlT2JqZWN0TWFuYWdlbWVudCkge1xuICAgICAgdGhpcy5hcHBlbmRPYmplY3RzU3ViTWVudUl0ZW1zKG1lbnVJdGVtcykuc3Vic2NyaWJlKFxuICAgICAgICB2YWx1ZSA9PiAobWVudUl0ZW1zID0gdGhpcy5hcHBseU1lbnVSb2xlU2VjdXJpdHkodmFsdWUpKVxuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuIG1lbnVJdGVtcztcbiAgfVxuXG4gIHByaXZhdGUgc29ydE1lbnVJdGVtcyhtZW51SXRlbXM6IE1lbnVJdGVtW10pOiBNZW51SXRlbVtdIHtcbiAgICByZXR1cm4gbWVudUl0ZW1zLnNvcnQoKGEsIGIpID0+IGEuc2VxdWVuY2UgLSBiLnNlcXVlbmNlKTtcbiAgfVxuXG4gIHByaXZhdGUgYXBwZW5kRG9zc2llclN1Yk1lbnVJdGVtcyhtZW51SXRlbXM6IE1lbnVJdGVtW10pOiBPYnNlcnZhYmxlPE1lbnVJdGVtW10+IHtcbiAgICByZXR1cm4gbmV3IE9ic2VydmFibGUoc3Vic2NyaWJlciA9PiB7XG4gICAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnYXBwZW5kRG9zc2llclN1Yk1lbnVJdGVtcycpO1xuICAgICAgdGhpcy5kb2N1bWVudFNlcnZpY2UuZ2V0QWxsRGVmaW5pdGlvbnMoKS5zdWJzY3JpYmUoZGVmaW5pdGlvbnMgPT4ge1xuICAgICAgICBjb21iaW5lTGF0ZXN0KFtcbiAgICAgICAgICAuLi5kZWZpbml0aW9ucy5jb250ZW50Lm1hcChkZWZpbml0aW9uID0+XG4gICAgICAgICAgICB0aGlzLmRvY3VtZW50U2VydmljZS5nZXRDYXNlU2V0dGluZ3MoZGVmaW5pdGlvbj8uaWQ/Lm5hbWUpXG4gICAgICAgICAgKSxcbiAgICAgICAgXSlcbiAgICAgICAgICAucGlwZSh0YWtlKDEpKVxuICAgICAgICAgIC5zdWJzY3JpYmUoYWxsQ2FzZVNldHRpbmdzID0+IHtcbiAgICAgICAgICAgIGNvbnN0IG9wZW5Eb2N1bWVudENvdW50TWFwID1cbiAgICAgICAgICAgICAgIXRoaXMuZGlzYWJsZUNhc2VDb3VudCAmJiB0aGlzLmdldE9wZW5Eb2N1bWVudENvdW50TWFwKGRlZmluaXRpb25zKTtcblxuICAgICAgICAgICAgY29uc3QgZG9zc2llck1lbnVJdGVtczogTWVudUl0ZW1bXSA9IGRlZmluaXRpb25zLmNvbnRlbnQubWFwKChkZWZpbml0aW9uLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgICBjb25zdCBjYXNlU2V0dGluZ3MgPSBhbGxDYXNlU2V0dGluZ3M/LmZpbmQoXG4gICAgICAgICAgICAgICAgc2V0dGluZyA9PiBzZXR0aW5nLm5hbWUgPT09IGRlZmluaXRpb24uaWQubmFtZVxuICAgICAgICAgICAgICApO1xuXG4gICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgbGluazogWycvZG9zc2llcnMvJyArIGRlZmluaXRpb24uaWQubmFtZV0sXG4gICAgICAgICAgICAgICAgdGl0bGU6IGRlZmluaXRpb24uc2NoZW1hLnRpdGxlLFxuICAgICAgICAgICAgICAgIGljb25DbGFzczogJ2ljb24gbWRpIG1kaS1kb3QtY2lyY2xlJyxcbiAgICAgICAgICAgICAgICBzZXF1ZW5jZTogaW5kZXgsXG4gICAgICAgICAgICAgICAgc2hvdzogdHJ1ZSxcbiAgICAgICAgICAgICAgICAuLi4oIXRoaXMuZGlzYWJsZUNhc2VDb3VudCAmJlxuICAgICAgICAgICAgICAgICAgY2FzZVNldHRpbmdzPy5jYW5IYXZlQXNzaWduZWUgJiYge1xuICAgICAgICAgICAgICAgICAgICBjb3VudCQ6IG9wZW5Eb2N1bWVudENvdW50TWFwLmdldChkZWZpbml0aW9uLmlkLm5hbWUpLFxuICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgIH0gYXMgTWVudUl0ZW07XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKCdmb3VuZCBkb3NzaWVyTWVudUl0ZW1zJywgZG9zc2llck1lbnVJdGVtcyk7XG4gICAgICAgICAgICBjb25zdCBtZW51SXRlbUluZGV4ID0gbWVudUl0ZW1zLmZpbmRJbmRleCgoe3RpdGxlfSkgPT4gdGl0bGUgPT09ICdEb3NzaWVycycpO1xuICAgICAgICAgICAgaWYgKG1lbnVJdGVtSW5kZXggPiAwKSB7XG4gICAgICAgICAgICAgIGNvbnN0IGRvc3NpZXJNZW51ID0gbWVudUl0ZW1zW21lbnVJdGVtSW5kZXhdO1xuICAgICAgICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZygndXBkYXRpbmcgZG9zc2llck1lbnUnLCBkb3NzaWVyTWVudSk7XG4gICAgICAgICAgICAgIGRvc3NpZXJNZW51LmNoaWxkcmVuID0gZG9zc2llck1lbnVJdGVtcztcbiAgICAgICAgICAgICAgbWVudUl0ZW1zW21lbnVJdGVtSW5kZXhdID0gZG9zc2llck1lbnU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQobWVudUl0ZW1zKTtcbiAgICAgICAgICAgIHRoaXMuZG9zc2llckl0ZW1zQXBwZW5kZWQkLm5leHQodHJ1ZSk7XG4gICAgICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnYXBwZW5kRG9zc2llclN1Yk1lbnVJdGVtcyBmaW5pc2hlZCcpO1xuICAgICAgICAgIH0pO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGFwcGVuZE9iamVjdHNTdWJNZW51SXRlbXMobWVudUl0ZW1zOiBNZW51SXRlbVtdKTogT2JzZXJ2YWJsZTxNZW51SXRlbVtdPiB7XG4gICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlKHN1YnNjcmliZXIgPT4ge1xuICAgICAgdGhpcy5sb2dnZXIuZGVidWcoJ2FwcGVuZE9iamVjdE1hbmFnZW1lbnRTdWJNZW51SXRlbXMnKTtcbiAgICAgIHRoaXMuZ2V0QWxsT2JqZWN0cygpLnN1YnNjcmliZShvYmplY3RzID0+IHtcbiAgICAgICAgY29uc3QgdmlzaWJsZU9iamVjdHMgPSBvYmplY3RzLmZpbHRlcihvYmplY3QgPT4gb2JqZWN0Py5zaG93SW5EYXRhTWVudSAhPT0gZmFsc2UpO1xuICAgICAgICBpZiAodmlzaWJsZU9iamVjdHM/Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgICBjb25zdCBvYmplY3RzTWVudUl0ZW1zOiBNZW51SXRlbVtdID0gdmlzaWJsZU9iamVjdHMubWFwKFxuICAgICAgICAgICAgKG9iamVjdCwgaW5kZXgpID0+XG4gICAgICAgICAgICAgICh7XG4gICAgICAgICAgICAgICAgbGluazogWycvb2JqZWN0cy8nICsgb2JqZWN0LmlkXSxcbiAgICAgICAgICAgICAgICB0aXRsZTogb2JqZWN0LnRpdGxlLFxuICAgICAgICAgICAgICAgIGljb25DbGFzczogJ2ljb24gbWRpIG1kaS1kb3QtY2lyY2xlJyxcbiAgICAgICAgICAgICAgICBzZXF1ZW5jZTogaW5kZXgsXG4gICAgICAgICAgICAgICAgc2hvdzogdHJ1ZSxcbiAgICAgICAgICAgICAgfSkgYXMgTWVudUl0ZW1cbiAgICAgICAgICApO1xuICAgICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKCdmb3VuZCBvYmplY3RzTWVudUl0ZW1zJywgb2JqZWN0c01lbnVJdGVtcyk7XG4gICAgICAgICAgY29uc3QgbWVudUl0ZW1JbmRleCA9IG1lbnVJdGVtcy5maW5kSW5kZXgoKHt0aXRsZX0pID0+IHRpdGxlID09PSAnT2JqZWN0cycpO1xuICAgICAgICAgIGlmIChtZW51SXRlbUluZGV4ID4gMCkge1xuICAgICAgICAgICAgY29uc3Qgb2JqZWN0c01lbnUgPSBtZW51SXRlbXNbbWVudUl0ZW1JbmRleF07XG4gICAgICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZygndXBkYXRpbmcgb2JqZWN0c01lbnUnLCBvYmplY3RzTWVudSk7XG4gICAgICAgICAgICBvYmplY3RzTWVudS5jaGlsZHJlbiA9IG9iamVjdHNNZW51SXRlbXM7XG4gICAgICAgICAgICBtZW51SXRlbXNbbWVudUl0ZW1JbmRleF0gPSBvYmplY3RzTWVudTtcbiAgICAgICAgICB9XG4gICAgICAgICAgc3Vic2NyaWJlci5uZXh0KG1lbnVJdGVtcyk7XG4gICAgICAgICAgdGhpcy5vYmplY3RzSXRlbXNBcHBlbmRlZCQubmV4dCh0cnVlKTtcbiAgICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnYXBwZW5kT2JqZWN0c1N1Yk1lbnVJdGVtcyBmaW5pc2hlZCcpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0T3BlbkRvY3VtZW50Q291bnRNYXAoZGVmaW5pdGlvbnM6IERvY3VtZW50RGVmaW5pdGlvbnMpOiBNYXA8c3RyaW5nLCBTdWJqZWN0PG51bWJlcj4+IHtcbiAgICBjb25zdCBjb3VudE1hcCA9IG5ldyBNYXA8c3RyaW5nLCBTdWJqZWN0PG51bWJlcj4+KCk7XG4gICAgZGVmaW5pdGlvbnMuY29udGVudC5mb3JFYWNoKGRlZmluaXRpb24gPT5cbiAgICAgIGNvdW50TWFwLnNldChkZWZpbml0aW9uLmlkLm5hbWUsIG5ldyBTdWJqZWN0PG51bWJlcj4oKSlcbiAgICApO1xuXG4gICAgdGltZXIoMCwgNTAwMCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMuZG9jdW1lbnRTZXJ2aWNlLmdldE9wZW5Eb2N1bWVudENvdW50KCkuc3Vic2NyaWJlKG9wZW5Eb2N1bWVudENvdW50TGlzdCA9PiB7XG4gICAgICAgIG9wZW5Eb2N1bWVudENvdW50TGlzdC5mb3JFYWNoKG9wZW5Eb2N1bWVudENvdW50ID0+XG4gICAgICAgICAgY291bnRNYXBcbiAgICAgICAgICAgIC5nZXQob3BlbkRvY3VtZW50Q291bnQuZG9jdW1lbnREZWZpbml0aW9uTmFtZSlcbiAgICAgICAgICAgIC5uZXh0KG9wZW5Eb2N1bWVudENvdW50Lm9wZW5Eb2N1bWVudENvdW50KVxuICAgICAgICApO1xuICAgICAgfSk7XG4gICAgfSk7XG4gICAgcmV0dXJuIGNvdW50TWFwO1xuICB9XG5cbiAgcHJpdmF0ZSBhcHBseU1lbnVSb2xlU2VjdXJpdHkobWVudUl0ZW1zOiBNZW51SXRlbVtdKTogTWVudUl0ZW1bXSB7XG4gICAgdGhpcy51c2VyUHJvdmlkZXJTZXJ2aWNlLmdldFVzZXJTdWJqZWN0KCkuc3Vic2NyaWJlKHVzZXIgPT4ge1xuICAgICAgaWYgKHVzZXIucm9sZXMgIT0gbnVsbCkge1xuICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnYXBwbHlNZW51Um9sZVNlY3VyaXR5Jyk7XG4gICAgICAgIGNvbnN0IHVzZXJSb2xlcyA9IHVzZXIucm9sZXM7XG4gICAgICAgIG1lbnVJdGVtcy5mb3JFYWNoKChtZW51SXRlbTogTWVudUl0ZW0pID0+IHtcbiAgICAgICAgICBjb25zdCBhY2Nlc3MgPSB0aGlzLmRldGVybWluZVJvbGVBY2Nlc3MobWVudUl0ZW0sIHVzZXJSb2xlcyk7XG4gICAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoJ01lbnU6IGNoZWNrIHJvbGUgYWNjZXNzJywgbWVudUl0ZW0ucm9sZXMsIGFjY2Vzcyk7XG4gICAgICAgICAgaWYgKG1lbnVJdGVtLnNob3cgIT09IGFjY2Vzcykge1xuICAgICAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoJ01lbnU6IENoYW5nZSBhY2Nlc3MnLCBtZW51SXRlbSwgYWNjZXNzKTtcbiAgICAgICAgICAgIG1lbnVJdGVtLnNob3cgPSBhY2Nlc3M7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICByZXR1cm4gbWVudUl0ZW1zO1xuICB9XG5cbiAgcHJpdmF0ZSBkZXRlcm1pbmVSb2xlQWNjZXNzKG1lbnVJdGVtOiBNZW51SXRlbSwgcm9sZXM6IHN0cmluZ1tdKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICFtZW51SXRlbS5yb2xlcyB8fCBtZW51SXRlbS5yb2xlcy5zb21lKHJvbGUgPT4gcm9sZXMuaW5jbHVkZXMocm9sZSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRBbGxPYmplY3RzKCk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoXG4gICAgICBgJHt0aGlzLmNvbmZpZ1NlcnZpY2UuY29uZmlnLnZhbHRpbW9BcGkuZW5kcG9pbnRVcml9djEvb2JqZWN0L21hbmFnZW1lbnQvY29uZmlndXJhdGlvbmBcbiAgICApO1xuICB9XG59XG4iXX0=
|
|
246
|
+
}], ctorParameters: () => [{ type: i1.ConfigService }, { type: i2.DocumentService }, { type: i3.HttpClient }, { type: i4.KeycloakService }, { type: i5.NGXLogger }, { type: i1.MenuIncludeService }, { type: i6.PendingChangesService }, { type: i7.Router }, { type: i8.UserProviderService }] });
|
|
247
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby9jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9tZW51L21lbnUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFnQkEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUMsYUFBYSxFQUFFLGVBQWUsRUFBRSxVQUFVLEVBQVMsTUFBTSxpQkFBaUIsQ0FBQztBQU1uRixPQUFPLEVBQUMsZUFBZSxFQUFFLGFBQWEsRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUNoRixPQUFPLEVBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7OztBQU1qRCxNQUFNLE9BQU8sV0FBVztJQVV0QixJQUFJLDJCQUEyQjtRQUM3QixPQUFPLElBQUksQ0FBQyw0QkFBNEIsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMxRCxDQUFDO0lBRUQsWUFDbUIsYUFBNEIsRUFDNUIsZUFBZ0MsRUFDaEMsSUFBZ0IsRUFDaEIsZUFBZ0MsRUFDaEMsTUFBaUIsRUFDakIsa0JBQXNDLEVBQ3RDLHFCQUE0QyxFQUM1QyxNQUFjLEVBQ2QsbUJBQXdDO1FBUnhDLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQzVCLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQyxTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2hCLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQyxXQUFNLEdBQU4sTUFBTSxDQUFXO1FBQ2pCLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFDdEMsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtRQUM1QyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2Qsd0JBQW1CLEdBQW5CLG1CQUFtQixD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LE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAyMDE1LTIwMjQgUml0ZW5zZSBCViwgdGhlIE5ldGhlcmxhbmRzLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogaHR0cHM6Ly9qb2ludXAuZWMuZXVyb3BhLmV1L2NvbGxlY3Rpb24vZXVwbC9ldXBsLXRleHQtZXVwbC0xMlxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBiYXNpcyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cbmltcG9ydCB7SHR0cENsaWVudH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHtJbmplY3RhYmxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TmF2aWdhdGlvbkVuZCwgTmF2aWdhdGlvblN0YXJ0LCBSZXNvbHZlRW5kLCBSb3V0ZXJ9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge0NvbmZpZ1NlcnZpY2UsIE1lbnVDb25maWcsIE1lbnVJbmNsdWRlU2VydmljZSwgTWVudUl0ZW19IGZyb20gJ0B2YWx0aW1vL2NvbmZpZyc7XG5pbXBvcnQge0RvY3VtZW50RGVmaW5pdGlvbnMsIERvY3VtZW50U2VydmljZX0gZnJvbSAnQHZhbHRpbW8vZG9jdW1lbnQnO1xuaW1wb3J0IHtVc2VyUHJvdmlkZXJTZXJ2aWNlfSBmcm9tICdAdmFsdGltby9zZWN1cml0eSc7XG5pbXBvcnQge0tleWNsb2FrU2VydmljZX0gZnJvbSAna2V5Y2xvYWstYW5ndWxhcic7XG5pbXBvcnQge05HWExvZ2dlcn0gZnJvbSAnbmd4LWxvZ2dlcic7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgT2JzZXJ2YWJsZSwgU3ViamVjdCwgdGltZXJ9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtmaWx0ZXIsIG1hcCwgdGFrZX0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtQZW5kaW5nQ2hhbmdlc1NlcnZpY2V9IGZyb20gJy4uL3BlbmRpbmctY2hhbmdlcy9wZW5kaW5nLWNoYW5nZXMuc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBNZW51U2VydmljZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2FjdGl2ZVBhcmVudFNlcXVlbmNlTnVtYmVyJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPignJyk7XG4gIHB1YmxpYyBpbmNsdWRlRnVuY3Rpb25PYnNlcnZhYmxlczoge1trZXk6IHN0cmluZ106IE9ic2VydmFibGU8Ym9vbGVhbj59ID0ge307XG5cbiAgcHJpdmF0ZSBfbWVudUl0ZW1zJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8TWVudUl0ZW1bXT4oW10pO1xuICBwcml2YXRlIG1lbnVDb25maWc6IE1lbnVDb25maWc7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBkaXNhYmxlQ2FzZUNvdW50ITogYm9vbGVhbjtcbiAgcHJpdmF0ZSByZWFkb25seSBlbmFibGVPYmplY3RNYW5hZ2VtZW50ITogYm9vbGVhbjtcblxuICBnZXQgYWN0aXZlUGFyZW50U2VxdWVuY2VOdW1iZXIkKCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgcmV0dXJuIHRoaXMuX2FjdGl2ZVBhcmVudFNlcXVlbmNlTnVtYmVyJC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgY29uZmlnU2VydmljZTogQ29uZmlnU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRvY3VtZW50U2VydmljZTogRG9jdW1lbnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgaHR0cDogSHR0cENsaWVudCxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGtleWNsb2FrU2VydmljZTogS2V5Y2xvYWtTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgbG9nZ2VyOiBOR1hMb2dnZXIsXG4gICAgcHJpdmF0ZSByZWFkb25seSBtZW51SW5jbHVkZVNlcnZpY2U6IE1lbnVJbmNsdWRlU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHBlbmRpbmdDaGFuZ2VzU2VydmljZTogUGVuZGluZ0NoYW5nZXNTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcm91dGVyOiBSb3V0ZXIsXG4gICAgcHJpdmF0ZSByZWFkb25seSB1c2VyUHJvdmlkZXJTZXJ2aWNlOiBVc2VyUHJvdmlkZXJTZXJ2aWNlXG4gICkge1xuICAgIGNvbnN0IGNvbmZpZyA9IGNvbmZpZ1NlcnZpY2U/LmNvbmZpZztcbiAgICB0aGlzLm1lbnVDb25maWcgPSBjb25maWc/Lm1lbnU7XG4gICAgdGhpcy5kaXNhYmxlQ2FzZUNvdW50ID0gY29uZmlnPy5mZWF0dXJlVG9nZ2xlcz8uZGlzYWJsZUNhc2VDb3VudDtcbiAgICB0aGlzLmVuYWJsZU9iamVjdE1hbmFnZW1lbnQgPSBjb25maWc/LmZlYXR1cmVUb2dnbGVzPy5lbmFibGVPYmplY3RNYW5hZ2VtZW50ID8/IHRydWU7XG4gIH1cblxuICBwcml2YXRlIHJlYWRvbmx5IGN1cnJlbnRSb3V0ZSQgPSB0aGlzLnJvdXRlci5ldmVudHMucGlwZShcbiAgICBmaWx0ZXIoXG4gICAgICBldmVudCA9PlxuICAgICAgICBldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQgfHxcbiAgICAgICAgZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uU3RhcnQgfHxcbiAgICAgICAgZXZlbnQgaW5zdGFuY2VvZiBSZXNvbHZlRW5kXG4gICAgKSxcbiAgICBtYXAoZXZlbnQgPT4gKGV2ZW50IGFzIE5hdmlnYXRpb25FbmQpPy51cmwpLFxuICAgIGZpbHRlcih1cmwgPT4gISF1cmwpXG4gICk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBkb3NzaWVySXRlbXNBcHBlbmRlZCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBvYmplY3RzSXRlbXNBcHBlbmRlZCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcblxuICAvLyBGaW5kIG91dCB3aGljaCBtZW51IGl0ZW0gc2VxdWVuY2UgbnVtYmVyIG1hdGNoZXMgdGhlIGN1cnJlbnQgdXJsIHRoZSBjbG9zZXN0XG4gIHB1YmxpYyBnZXQgY2xvc2VzdFNlcXVlbmNlJCgpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuICAgIHJldHVybiBjb21iaW5lTGF0ZXN0KFtcbiAgICAgIHRoaXMuZG9zc2llckl0ZW1zQXBwZW5kZWQkLFxuICAgICAgdGhpcy5vYmplY3RzSXRlbXNBcHBlbmRlZCQsXG4gICAgICB0aGlzLmN1cnJlbnRSb3V0ZSQsXG4gICAgICB0aGlzLm1lbnVJdGVtcyQsXG4gICAgXSkucGlwZShcbiAgICAgIGZpbHRlcigoKSA9PiAhdGhpcy5wZW5kaW5nQ2hhbmdlc1NlcnZpY2UucGVuZGluZ0NoYW5nZXMpLFxuICAgICAgZmlsdGVyKFxuICAgICAgICAoW2Rvc3NpZXJJdGVtc0FwcGVuZGVkLCBvYmplY3RzSXRlbXNBcHBlbmRlZF0pID0+XG4gICAgICAgICAgZG9zc2llckl0ZW1zQXBwZW5kZWQgfHwgb2JqZWN0c0l0ZW1zQXBwZW5kZWRcbiAgICAgICksXG4gICAgICBtYXAoKFtfMSwgXzIsIGN1cnJlbnRSb3V0ZSwgbWVudUl0ZW1zXSkgPT4ge1xuICAgICAgICBsZXQgY2xvc2VzdFNlcXVlbmNlID0gJzAnO1xuICAgICAgICBsZXQgaGlnaGVzdERpZmZlcmVuY2UgPSAwO1xuXG4gICAgICAgIC8vIHJlY3Vyc2l2ZSBmdW5jdGlvbiB0byBjaGVjayBob3cgY2xvc2VseSBlYWNoIGl0ZW0gbWF0Y2hlcyB0byB0aGUgY3VycmVudCB1cmxcbiAgICAgICAgY29uc3QgY2hlY2tJdGVtTWF0Y2ggPSAoXG4gICAgICAgICAgc3RyaW5nVXJsOiBzdHJpbmcsXG4gICAgICAgICAgc2VxdWVuY2U6IHN0cmluZyxcbiAgICAgICAgICBwYXJlbnRTZXF1ZW5jZT86IHN0cmluZ1xuICAgICAgICApOiB2b2lkID0+IHtcbiAgICAgICAgICAvLyBsZW5ndGggb2YgdGhlIGN1cnJlbnQgZnVsbCB1cmxcbiAgICAgICAgICBjb25zdCBjdXJyZW50Um91dGVVcmxMZW5ndGggPSBjdXJyZW50Um91dGUubGVuZ3RoO1xuICAgICAgICAgIC8vIGxlbmd0aCBvZiB0aGUgY3VycmVudCBmdWxsIHVybCB3aXRoIHRoZSBpdGVtJ3MgdXJsIHN1YnN0cmFjdGVkXG4gICAgICAgICAgY29uc3QgY3VycmVudFJvdXRlU3Vic3RyYWN0TGVuZ3RoID0gY3VycmVudFJvdXRlLnJlcGxhY2Uoc3RyaW5nVXJsLCAnJykubGVuZ3RoO1xuICAgICAgICAgIC8vIHRoZSBhbW91bnQgb2YgY2hhcmFjdGVycyB0aGF0IGNvdWxkIGJlIHN1YnN0cmFjdGVkXG4gICAgICAgICAgY29uc3QgZGlmZmVyZW5jZSA9IGN1cnJlbnRSb3V0ZVVybExlbmd0aCAtIGN1cnJlbnRSb3V0ZVN1YnN0cmFjdExlbmd0aDtcblxuICAgICAgICAgIC8vIHRoZSBsYXJnZXIgdGhlIGFtb3VudCBvZiBjaGFyYWN0ZXJzIHRoYXQgY291bGQgYmUgc3Vic3RyYWN0ZWQsIHRoZSBtb3JlIGNsb3NlbHkgdGhlIG1lbnUgaXRlbSB1cmwgbWF0Y2hlcyB0aGUgY3VycmVudCB1cmxcbiAgICAgICAgICBpZiAoZGlmZmVyZW5jZSA+IGhpZ2hlc3REaWZmZXJlbmNlKSB7XG4gICAgICAgICAgICBoaWdoZXN0RGlmZmVyZW5jZSA9IGRpZmZlcmVuY2U7XG4gICAgICAgICAgICBjbG9zZXN0U2VxdWVuY2UgPSBzZXF1ZW5jZTtcblxuICAgICAgICAgICAgaWYgKHBhcmVudFNlcXVlbmNlKSB7XG4gICAgICAgICAgICAgIHRoaXMuX2FjdGl2ZVBhcmVudFNlcXVlbmNlTnVtYmVyJC5uZXh0KHBhcmVudFNlcXVlbmNlKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIHRoaXMuX2FjdGl2ZVBhcmVudFNlcXVlbmNlTnVtYmVyJC5uZXh0KCcnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH07XG5cbiAgICAgICAgLy8gY2hlY2sgaG93IGNsb3NlbHkgZWFjaCBtZW51IGl0ZW0gKGFuZCBjaGlsZCBtZW51IGl0ZW0pIG1hdGNoZXMgdGhlIGN1cnJlbnQgdXJsIHVzaW5nIGEgcmVjdXJzaXZlIGZ1bmN0aW9uXG4gICAgICAgIG1lbnVJdGVtcy5mb3JFYWNoKGl0ZW0gPT4ge1xuICAgICAgICAgIGNoZWNrSXRlbU1hdGNoKGl0ZW0ubGluaz8uam9pbignJykgfHwgJycsIGAke2l0ZW0uc2VxdWVuY2V9YCk7XG5cbiAgICAgICAgICBpZiAoaXRlbS5jaGlsZHJlbikge1xuICAgICAgICAgICAgaXRlbS5jaGlsZHJlbi5mb3JFYWNoKGNoaWxkSXRlbSA9PiB7XG4gICAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KGNoaWxkSXRlbS5saW5rKSkge1xuICAgICAgICAgICAgICAgIGNoZWNrSXRlbU1hdGNoKFxuICAgICAgICAgICAgICAgICAgQXJyYXkuaXNBcnJheShpdGVtLmxpbmspXG4gICAgICAgICAgICAgICAgICAgID8gWy4uLml0ZW0ubGluaywgLi4uY2hpbGRJdGVtLmxpbmtdLmpvaW4oJycpXG4gICAgICAgICAgICAgICAgICAgIDogY2hpbGRJdGVtLmxpbmsuam9pbignJyksXG4gICAgICAgICAgICAgICAgICBgJHtpdGVtLnNlcXVlbmNlfSR7Y2hpbGRJdGVtLnNlcXVlbmNlfWAsXG4gICAgICAgICAgICAgICAgICBgJHtpdGVtLnNlcXVlbmNlfWBcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIC8vIHJldHVybnMgdGhlIGNsb3Nlc3Qgc2VxdWVuY2UgbnVtYmVyIChlYWNoIG1lbnUgaXRlbSBoYXMgYSBzZXF1ZW5jZSBudW1iZXIpXG5cbiAgICAgICAgcmV0dXJuIGNsb3Nlc3RTZXF1ZW5jZTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgbWVudUl0ZW1zJCgpOiBPYnNlcnZhYmxlPE1lbnVJdGVtW10+IHtcbiAgICByZXR1cm4gdGhpcy5fbWVudUl0ZW1zJC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIGluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5yZWxvYWQoKTtcbiAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnTWVudSBpbml0aWFsaXplZCcpO1xuICB9XG5cbiAgcHVibGljIHJlbG9hZCgpOiB2b2lkIHtcbiAgICBjb25zdCByb2xlcyA9IHRoaXMua2V5Y2xvYWtTZXJ2aWNlLmdldFVzZXJSb2xlcyh0cnVlKTtcbiAgICByZXR1cm4gdGhpcy5fbWVudUl0ZW1zJC5uZXh0KHRoaXMubG9hZE1lbnVJdGVtcyhyb2xlcykpO1xuICB9XG5cbiAgcHJpdmF0ZSBsb2FkTWVudUl0ZW1zKHVzZXJSb2xlczogQXJyYXk8c3RyaW5nPik6IE1lbnVJdGVtW10ge1xuICAgIGxldCBtZW51SXRlbXM6IE1lbnVJdGVtW10gPSBbXTtcbiAgICB0aGlzLm1lbnVDb25maWcubWVudUl0ZW1zLmZvckVhY2goKG1lbnVJdGVtOiBNZW51SXRlbSkgPT4ge1xuICAgICAgaWYgKG1lbnVJdGVtLmluY2x1ZGVGdW5jdGlvbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMuaW5jbHVkZUZ1bmN0aW9uT2JzZXJ2YWJsZXNbbWVudUl0ZW0udGl0bGVdID1cbiAgICAgICAgICB0aGlzLm1lbnVJbmNsdWRlU2VydmljZS5nZXRJbmNsdWRlRnVuY3Rpb24obWVudUl0ZW0uaW5jbHVkZUZ1bmN0aW9uKTtcbiAgICAgIH1cblxuICAgICAgbWVudUl0ZW0uc2hvdyA9IHRydWU7XG5cbiAgICAgIC8vIGNoZWNrIGlmIHRoZSB0b3AgbGV2ZWwgbWVudSBpdGVtIHNwZWNpZmllcyByb2xlcyBpdCByZXF1aXJlcy4gSWYgc28sIGNoZWNrIGlmIHRoZSB1c2VyIHJvbGVzIGNvbnRhaW4gYXQgbGVhc3Qgb25lIG9mIHRoZXNlIHJvbGVzXG4gICAgICBpZiAoXG4gICAgICAgIEFycmF5LmlzQXJyYXkobWVudUl0ZW0/LnJvbGVzKVxuICAgICAgICAgID8gdXNlclJvbGVzLmZpbmQodXNlclJvbGUgPT4gbWVudUl0ZW0ucm9sZXMuaW5jbHVkZXModXNlclJvbGUpKVxuICAgICAgICAgIDogdHJ1ZVxuICAgICAgKSB7XG4gICAgICAgIC8vIGNoZWNrIGlmIG1lbnUgaXRlbSBoYXMgY2hpbGRyZW4uIElmIHNvLCBjaGVjayBpZiBjaGlsZHJlbiBzcGVjaWZ5IHJlcXVpcmVkIHJvbGVzLiBJZiBzbywgY2hlY2sgaWYgdGhlIHVzZXIgcm9sZXMgY29udGFpbiBhdCBsZWFzdCBvbmUgb2YgdGhlc2Ugcm9sZXNcbiAgICAgICAgY29uc3QgZmlsdGVyZWRNZW51SXRlbUNoaWxkcmVuID1cbiAgICAgICAgICBtZW51SXRlbT8uY2hpbGRyZW4gJiZcbiAgICAgICAgICBtZW51SXRlbT8uY2hpbGRyZW4uZmlsdGVyKGNoaWxkTWVudUl0ZW0gPT5cbiAgICAgICAgICAgIEFycmF5LmlzQXJyYXkoY2hpbGRNZW51SXRlbT8ucm9sZXMpXG4gICAgICAgICAgICAgID8gdXNlclJvbGVzLmZpbmQodXNlclJvbGUgPT4gY2hpbGRNZW51SXRlbS5yb2xlcy5pbmNsdWRlcyh1c2VyUm9sZSkpXG4gICAgICAgICAgICAgIDogdHJ1ZVxuICAgICAgICAgICk7XG5cbiAgICAgICAgLy8gaWYgdGhlIG1lbnUgaXRlbSBoYXMgY2hpbGRyZW4sIHNldCB0aGUgbWVudSBpdGVtIGNoaWxkcmVuIHRvIGZpbHRlcmVkIG1lbnUgaXRlbSBjaGlsZHJlblxuICAgICAgICBjb25zdCBtZW51SXRlbVdpdGhGaWx0ZXJlZENoaWxkcmVuOiBNZW51SXRlbSA9IHtcbiAgICAgICAgICAuLi5tZW51SXRlbSxcbiAgICAgICAgICAuLi4obWVudUl0ZW0/LmNoaWxkcmVuICYmIHtjaGlsZHJlbjogZmlsdGVyZWRNZW51SXRlbUNoaWxkcmVufSksXG4gICAgICAgIH07XG5cbiAgICAgICAgbWVudUl0ZW1zLnB1c2gobWVudUl0ZW1XaXRoRmlsdGVyZWRDaGlsZHJlbik7XG4gICAgICB9XG4gICAgfSk7XG4gICAgbWVudUl0ZW1zID0gdGhpcy5zb3J0TWVudUl0ZW1zKG1lbnVJdGVtcyk7XG4gICAgdGhpcy5hcHBlbmREb3NzaWVyU3ViTWVudUl0ZW1zKG1lbnVJdGVtcykuc3Vic2NyaWJlKFxuICAgICAgdmFsdWUgPT4gKG1lbnVJdGVtcyA9IHRoaXMuYXBwbHlNZW51Um9sZVNlY3VyaXR5KHZhbHVlKSlcbiAgICApO1xuXG4gICAgaWYgKHRoaXMuZW5hYmxlT2JqZWN0TWFuYWdlbWVudCkge1xuICAgICAgdGhpcy5hcHBlbmRPYmplY3RzU3ViTWVudUl0ZW1zKG1lbnVJdGVtcykuc3Vic2NyaWJlKFxuICAgICAgICB2YWx1ZSA9PiAobWVudUl0ZW1zID0gdGhpcy5hcHBseU1lbnVSb2xlU2VjdXJpdHkodmFsdWUpKVxuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuIG1lbnVJdGVtcztcbiAgfVxuXG4gIHByaXZhdGUgc29ydE1lbnVJdGVtcyhtZW51SXRlbXM6IE1lbnVJdGVtW10pOiBNZW51SXRlbVtdIHtcbiAgICByZXR1cm4gbWVudUl0ZW1zLnNvcnQoKGEsIGIpID0+IGEuc2VxdWVuY2UgLSBiLnNlcXVlbmNlKTtcbiAgfVxuXG4gIHByaXZhdGUgYXBwZW5kRG9zc2llclN1Yk1lbnVJdGVtcyhtZW51SXRlbXM6IE1lbnVJdGVtW10pOiBPYnNlcnZhYmxlPE1lbnVJdGVtW10+IHtcbiAgICByZXR1cm4gbmV3IE9ic2VydmFibGUoc3Vic2NyaWJlciA9PiB7XG4gICAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnYXBwZW5kRG9zc2llclN1Yk1lbnVJdGVtcycpO1xuICAgICAgdGhpcy5kb2N1bWVudFNlcnZpY2UuZ2V0QWxsRGVmaW5pdGlvbnMoKS5zdWJzY3JpYmUoZGVmaW5pdGlvbnMgPT4ge1xuICAgICAgICBjb21iaW5lTGF0ZXN0KFtcbiAgICAgICAgICAuLi5kZWZpbml0aW9ucy5jb250ZW50Lm1hcChkZWZpbml0aW9uID0+XG4gICAgICAgICAgICB0aGlzLmRvY3VtZW50U2VydmljZS5nZXRDYXNlU2V0dGluZ3MoZGVmaW5pdGlvbj8uaWQ/Lm5hbWUpXG4gICAgICAgICAgKSxcbiAgICAgICAgXSlcbiAgICAgICAgICAucGlwZSh0YWtlKDEpKVxuICAgICAgICAgIC5zdWJzY3JpYmUoYWxsQ2FzZVNldHRpbmdzID0+IHtcbiAgICAgICAgICAgIGNvbnN0IG9wZW5Eb2N1bWVudENvdW50TWFwID1cbiAgICAgICAgICAgICAgIXRoaXMuZGlzYWJsZUNhc2VDb3VudCAmJiB0aGlzLmdldE9wZW5Eb2N1bWVudENvdW50TWFwKGRlZmluaXRpb25zKTtcblxuICAgICAgICAgICAgY29uc3QgZG9zc2llck1lbnVJdGVtczogTWVudUl0ZW1bXSA9IGRlZmluaXRpb25zLmNvbnRlbnQubWFwKChkZWZpbml0aW9uLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgICBjb25zdCBjYXNlU2V0dGluZ3MgPSBhbGxDYXNlU2V0dGluZ3M/LmZpbmQoXG4gICAgICAgICAgICAgICAgc2V0dGluZyA9PiBzZXR0aW5nLm5hbWUgPT09IGRlZmluaXRpb24uaWQubmFtZVxuICAgICAgICAgICAgICApO1xuXG4gICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgbGluazogWycvZG9zc2llcnMvJyArIGRlZmluaXRpb24uaWQubmFtZV0sXG4gICAgICAgICAgICAgICAgdGl0bGU6IGRlZmluaXRpb24uc2NoZW1hLnRpdGxlLFxuICAgICAgICAgICAgICAgIGljb25DbGFzczogJ2ljb24gbWRpIG1kaS1kb3QtY2lyY2xlJyxcbiAgICAgICAgICAgICAgICBzZXF1ZW5jZTogaW5kZXgsXG4gICAgICAgICAgICAgICAgc2hvdzogdHJ1ZSxcbiAgICAgICAgICAgICAgICAuLi4oIXRoaXMuZGlzYWJsZUNhc2VDb3VudCAmJlxuICAgICAgICAgICAgICAgICAgY2FzZVNldHRpbmdzPy5jYW5IYXZlQXNzaWduZWUgJiYge1xuICAgICAgICAgICAgICAgICAgICBjb3VudCQ6IG9wZW5Eb2N1bWVudENvdW50TWFwLmdldChkZWZpbml0aW9uLmlkLm5hbWUpLFxuICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgIH0gYXMgTWVudUl0ZW07XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKCdmb3VuZCBkb3NzaWVyTWVudUl0ZW1zJywgZG9zc2llck1lbnVJdGVtcyk7XG4gICAgICAgICAgICBjb25zdCBtZW51SXRlbUluZGV4ID0gbWVudUl0ZW1zLmZpbmRJbmRleCgoe3RpdGxlfSkgPT4gdGl0bGUgPT09ICdEb3NzaWVycycpO1xuICAgICAgICAgICAgaWYgKG1lbnVJdGVtSW5kZXggPiAwKSB7XG4gICAgICAgICAgICAgIGNvbnN0IGRvc3NpZXJNZW51ID0gbWVudUl0ZW1zW21lbnVJdGVtSW5kZXhdO1xuICAgICAgICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZygndXBkYXRpbmcgZG9zc2llck1lbnUnLCBkb3NzaWVyTWVudSk7XG4gICAgICAgICAgICAgIGRvc3NpZXJNZW51LmNoaWxkcmVuID0gZG9zc2llck1lbnVJdGVtcztcbiAgICAgICAgICAgICAgbWVudUl0ZW1zW21lbnVJdGVtSW5kZXhdID0gZG9zc2llck1lbnU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQobWVudUl0ZW1zKTtcbiAgICAgICAgICAgIHRoaXMuZG9zc2llckl0ZW1zQXBwZW5kZWQkLm5leHQodHJ1ZSk7XG4gICAgICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnYXBwZW5kRG9zc2llclN1Yk1lbnVJdGVtcyBmaW5pc2hlZCcpO1xuICAgICAgICAgIH0pO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGFwcGVuZE9iamVjdHNTdWJNZW51SXRlbXMobWVudUl0ZW1zOiBNZW51SXRlbVtdKTogT2JzZXJ2YWJsZTxNZW51SXRlbVtdPiB7XG4gICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlKHN1YnNjcmliZXIgPT4ge1xuICAgICAgdGhpcy5sb2dnZXIuZGVidWcoJ2FwcGVuZE9iamVjdE1hbmFnZW1lbnRTdWJNZW51SXRlbXMnKTtcbiAgICAgIHRoaXMuZ2V0QWxsT2JqZWN0cygpLnN1YnNjcmliZShvYmplY3RzID0+IHtcbiAgICAgICAgY29uc3QgdmlzaWJsZU9iamVjdHMgPSBvYmplY3RzLmZpbHRlcihvYmplY3QgPT4gb2JqZWN0Py5zaG93SW5EYXRhTWVudSAhPT0gZmFsc2UpO1xuICAgICAgICBpZiAodmlzaWJsZU9iamVjdHM/Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgICBjb25zdCBvYmplY3RzTWVudUl0ZW1zOiBNZW51SXRlbVtdID0gdmlzaWJsZU9iamVjdHMubWFwKFxuICAgICAgICAgICAgKG9iamVjdCwgaW5kZXgpID0+XG4gICAgICAgICAgICAgICh7XG4gICAgICAgICAgICAgICAgbGluazogWycvb2JqZWN0cy8nICsgb2JqZWN0LmlkXSxcbiAgICAgICAgICAgICAgICB0aXRsZTogb2JqZWN0LnRpdGxlLFxuICAgICAgICAgICAgICAgIGljb25DbGFzczogJ2ljb24gbWRpIG1kaS1kb3QtY2lyY2xlJyxcbiAgICAgICAgICAgICAgICBzZXF1ZW5jZTogaW5kZXgsXG4gICAgICAgICAgICAgICAgc2hvdzogdHJ1ZSxcbiAgICAgICAgICAgICAgfSkgYXMgTWVudUl0ZW1cbiAgICAgICAgICApO1xuICAgICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKCdmb3VuZCBvYmplY3RzTWVudUl0ZW1zJywgb2JqZWN0c01lbnVJdGVtcyk7XG4gICAgICAgICAgY29uc3QgbWVudUl0ZW1JbmRleCA9IG1lbnVJdGVtcy5maW5kSW5kZXgoKHt0aXRsZX0pID0+IHRpdGxlID09PSAnT2JqZWN0cycpO1xuICAgICAgICAgIGlmIChtZW51SXRlbUluZGV4ID4gMCkge1xuICAgICAgICAgICAgY29uc3Qgb2JqZWN0c01lbnUgPSBtZW51SXRlbXNbbWVudUl0ZW1JbmRleF07XG4gICAgICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZygndXBkYXRpbmcgb2JqZWN0c01lbnUnLCBvYmplY3RzTWVudSk7XG4gICAgICAgICAgICBvYmplY3RzTWVudS5jaGlsZHJlbiA9IG9iamVjdHNNZW51SXRlbXM7XG4gICAgICAgICAgICBtZW51SXRlbXNbbWVudUl0ZW1JbmRleF0gPSBvYmplY3RzTWVudTtcbiAgICAgICAgICB9XG4gICAgICAgICAgc3Vic2NyaWJlci5uZXh0KG1lbnVJdGVtcyk7XG4gICAgICAgICAgdGhpcy5vYmplY3RzSXRlbXNBcHBlbmRlZCQubmV4dCh0cnVlKTtcbiAgICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnYXBwZW5kT2JqZWN0c1N1Yk1lbnVJdGVtcyBmaW5pc2hlZCcpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0T3BlbkRvY3VtZW50Q291bnRNYXAoZGVmaW5pdGlvbnM6IERvY3VtZW50RGVmaW5pdGlvbnMpOiBNYXA8c3RyaW5nLCBTdWJqZWN0PG51bWJlcj4+IHtcbiAgICBjb25zdCBjb3VudE1hcCA9IG5ldyBNYXA8c3RyaW5nLCBTdWJqZWN0PG51bWJlcj4+KCk7XG4gICAgZGVmaW5pdGlvbnMuY29udGVudC5mb3JFYWNoKGRlZmluaXRpb24gPT5cbiAgICAgIGNvdW50TWFwLnNldChkZWZpbml0aW9uLmlkLm5hbWUsIG5ldyBTdWJqZWN0PG51bWJlcj4oKSlcbiAgICApO1xuXG4gICAgdGltZXIoMCwgNTAwMCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMuZG9jdW1lbnRTZXJ2aWNlLmdldE9wZW5Eb2N1bWVudENvdW50KCkuc3Vic2NyaWJlKG9wZW5Eb2N1bWVudENvdW50TGlzdCA9PiB7XG4gICAgICAgIG9wZW5Eb2N1bWVudENvdW50TGlzdC5mb3JFYWNoKG9wZW5Eb2N1bWVudENvdW50ID0+IHtcbiAgICAgICAgICBjb25zdCBtYXBFbnRyeSA9IGNvdW50TWFwLmdldChvcGVuRG9jdW1lbnRDb3VudC5kb2N1bWVudERlZmluaXRpb25OYW1lKTtcblxuICAgICAgICAgIGlmIChtYXBFbnRyeSkgbWFwRW50cnkubmV4dChvcGVuRG9jdW1lbnRDb3VudC5vcGVuRG9jdW1lbnRDb3VudCk7XG4gICAgICAgIH0pO1xuICAgICAgfSk7XG4gICAgfSk7XG4gICAgcmV0dXJuIGNvdW50TWFwO1xuICB9XG5cbiAgcHJpdmF0ZSBhcHBseU1lbnVSb2xlU2VjdXJpdHkobWVudUl0ZW1zOiBNZW51SXRlbVtdKTogTWVudUl0ZW1bXSB7XG4gICAgdGhpcy51c2VyUHJvdmlkZXJTZXJ2aWNlLmdldFVzZXJTdWJqZWN0KCkuc3Vic2NyaWJlKHVzZXIgPT4ge1xuICAgICAgaWYgKHVzZXIucm9sZXMgIT0gbnVsbCkge1xuICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnYXBwbHlNZW51Um9sZVNlY3VyaXR5Jyk7XG4gICAgICAgIGNvbnN0IHVzZXJSb2xlcyA9IHVzZXIucm9sZXM7XG4gICAgICAgIG1lbnVJdGVtcy5mb3JFYWNoKChtZW51SXRlbTogTWVudUl0ZW0pID0+IHtcbiAgICAgICAgICBjb25zdCBhY2Nlc3MgPSB0aGlzLmRldGVybWluZVJvbGVBY2Nlc3MobWVudUl0ZW0sIHVzZXJSb2xlcyk7XG4gICAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoJ01lbnU6IGNoZWNrIHJvbGUgYWNjZXNzJywgbWVudUl0ZW0ucm9sZXMsIGFjY2Vzcyk7XG4gICAgICAgICAgaWYgKG1lbnVJdGVtLnNob3cgIT09IGFjY2Vzcykge1xuICAgICAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoJ01lbnU6IENoYW5nZSBhY2Nlc3MnLCBtZW51SXRlbSwgYWNjZXNzKTtcbiAgICAgICAgICAgIG1lbnVJdGVtLnNob3cgPSBhY2Nlc3M7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICByZXR1cm4gbWVudUl0ZW1zO1xuICB9XG5cbiAgcHJpdmF0ZSBkZXRlcm1pbmVSb2xlQWNjZXNzKG1lbnVJdGVtOiBNZW51SXRlbSwgcm9sZXM6IHN0cmluZ1tdKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICFtZW51SXRlbS5yb2xlcyB8fCBtZW51SXRlbS5yb2xlcy5zb21lKHJvbGUgPT4gcm9sZXMuaW5jbHVkZXMocm9sZSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRBbGxPYmplY3RzKCk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoXG4gICAgICBgJHt0aGlzLmNvbmZpZ1NlcnZpY2UuY29uZmlnLnZhbHRpbW9BcGkuZW5kcG9pbnRVcml9djEvb2JqZWN0L21hbmFnZW1lbnQvY29uZmlndXJhdGlvbmBcbiAgICApO1xuICB9XG59XG4iXX0=
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* Copyright 2015-
|
|
2
|
+
* Copyright 2015-2024 Ritense BV, the Netherlands.
|
|
3
3
|
*
|
|
4
4
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
5
5
|
* you may not use this file except in compliance with the License.
|
|
@@ -62,13 +62,13 @@ export class ModalComponent {
|
|
|
62
62
|
const config = { attributes: true, childList: false, characterData: false };
|
|
63
63
|
this.observer.observe(this.scrollModal.nativeElement, config);
|
|
64
64
|
}
|
|
65
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
66
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
65
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: ModalComponent, deps: [{ token: i1.ValtimoModalService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
66
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", type: ModalComponent, selector: "valtimo-modal", inputs: { elementId: "elementId", title: "title", subtitle: "subtitle", templateBelowSubtitle: "templateBelowSubtitle", showFooter: "showFooter" }, viewQueries: [{ propertyName: "scrollModal", first: true, predicate: ["scrollModal"], descendants: true }], ngImport: i0, template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<div class=\"modal fade custom-width\" [id]=\"elementId\" role=\"dialog\" aria-modal=\"true\" #scrollModal>\n <div class=\"modal-dialog modal-lg\">\n <div class=\"modal-content\">\n <div class=\"modal-header modal-header-colored colored-header-grey\">\n <div class=\"modal-title\">\n <h4 class=\"title-text mb-2\">{{ title }}</h4>\n <h5 class=\"subtitle-text\">{{ subtitle }}</h5>\n <ng-container *ngIf=\"templateBelowSubtitle\">\n <ng-container *ngTemplateOutlet=\"templateBelowSubtitle\"></ng-container>\n </ng-container>\n </div>\n <div class=\"text-right\">\n <button type=\"button\" class=\"close\" data-dismiss=\"modal\" aria-label=\"Close\">\n <span aria-hidden=\"true\">×</span>\n </button>\n </div>\n </div>\n <div class=\"modal-body\">\n <ng-content select=\"[body]\"></ng-content>\n </div>\n <div class=\"modal-footer\" *ngIf=\"showFooter\">\n <ng-content select=\"[footer]\"></ng-content>\n </div>\n </div>\n </div>\n</div>\n", styles: [".colored-header-grey{background-color:#f3f4f7}.title-text{color:#585555}.subtitle-text{color:#959595}.modal-header-image{height:auto;width:50%}.modal-header{padding-bottom:.66rem;border-bottom:1px solid #c5c6c9}@media (min-width: 768px){.close{position:relative;left:25px;padding:0!important;margin-top:-20px!important}.close span{color:#fff}.modal-content{overflow:visible}}\n/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] }); }
|
|
67
67
|
}
|
|
68
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
68
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: ModalComponent, decorators: [{
|
|
69
69
|
type: Component,
|
|
70
|
-
args: [{ selector: 'valtimo-modal', template: "<!--\n ~ Copyright 2015-
|
|
71
|
-
}], ctorParameters:
|
|
70
|
+
args: [{ selector: 'valtimo-modal', template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<div class=\"modal fade custom-width\" [id]=\"elementId\" role=\"dialog\" aria-modal=\"true\" #scrollModal>\n <div class=\"modal-dialog modal-lg\">\n <div class=\"modal-content\">\n <div class=\"modal-header modal-header-colored colored-header-grey\">\n <div class=\"modal-title\">\n <h4 class=\"title-text mb-2\">{{ title }}</h4>\n <h5 class=\"subtitle-text\">{{ subtitle }}</h5>\n <ng-container *ngIf=\"templateBelowSubtitle\">\n <ng-container *ngTemplateOutlet=\"templateBelowSubtitle\"></ng-container>\n </ng-container>\n </div>\n <div class=\"text-right\">\n <button type=\"button\" class=\"close\" data-dismiss=\"modal\" aria-label=\"Close\">\n <span aria-hidden=\"true\">×</span>\n </button>\n </div>\n </div>\n <div class=\"modal-body\">\n <ng-content select=\"[body]\"></ng-content>\n </div>\n <div class=\"modal-footer\" *ngIf=\"showFooter\">\n <ng-content select=\"[footer]\"></ng-content>\n </div>\n </div>\n </div>\n</div>\n", styles: [".colored-header-grey{background-color:#f3f4f7}.title-text{color:#585555}.subtitle-text{color:#959595}.modal-header-image{height:auto;width:50%}.modal-header{padding-bottom:.66rem;border-bottom:1px solid #c5c6c9}@media (min-width: 768px){.close{position:relative;left:25px;padding:0!important;margin-top:-20px!important}.close span{color:#fff}.modal-content{overflow:visible}}\n/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"] }]
|
|
71
|
+
}], ctorParameters: () => [{ type: i1.ValtimoModalService }], propDecorators: { elementId: [{
|
|
72
72
|
type: Input
|
|
73
73
|
}], title: [{
|
|
74
74
|
type: Input
|
|
@@ -82,4 +82,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
82
82
|
type: ViewChild,
|
|
83
83
|
args: ['scrollModal']
|
|
84
84
|
}] } });
|
|
85
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
85
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby9jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9tb2RhbC9tb2RhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YWx0aW1vL2NvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL21vZGFsL21vZGFsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBRUgsT0FBTyxFQUVMLFNBQVMsRUFFVCxLQUFLLEVBSUwsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBQyxlQUFlLEVBQWUsTUFBTSxNQUFNLENBQUM7Ozs7QUFVbkQsTUFBTSxPQUFPLGNBQWM7SUFlekIsWUFBNkIsWUFBaUM7UUFBakMsaUJBQVksR0FBWixZQUFZLENBQXFCO1FBYnJELFVBQUssR0FBRyxFQUFFLENBQUM7UUFDWCxhQUFRLEdBQUcsRUFBRSxDQUFDO1FBRWQsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUluQixrQkFBYSxHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO0lBTUksQ0FBQztJQUVsRSxRQUFRO1FBQ04sSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7SUFDaEMsQ0FBQztJQUVELGVBQWU7UUFDYixDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsRUFBQyxJQUFJLEVBQUUsS0FBSyxFQUFDLENBQUMsQ0FBQztRQUM3QyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztJQUM5QixDQUFDO0lBRUQsSUFBSTtRQUNGLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRUQsSUFBSTtRQUNGLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxrQkFBa0IsRUFBRSxXQUFXLEVBQUUsQ0FBQztRQUN2QyxJQUFJLENBQUMsUUFBUSxFQUFFLFVBQVUsRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFTyxzQkFBc0I7UUFDNUIsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDdEUsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUM7WUFFL0MsSUFBSSxPQUFPO2dCQUFFLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3RDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLG9CQUFvQjtRQUMxQixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksZ0JBQWdCLENBQUMsU0FBUyxDQUFDLEVBQUU7WUFDL0MsU0FBUyxFQUFFLE9BQU8sQ0FBQyxRQUFRLENBQUMsRUFBRTtnQkFDNUIsSUFBSSxRQUFRLEVBQUUsYUFBYSxLQUFLLE9BQU8sRUFBRSxDQUFDO29CQUN4QyxNQUFNLFlBQVksR0FBSSxRQUFRLEVBQUUsTUFBYyxFQUFFLFNBQVMsRUFBRSxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUM7b0JBQzVFLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO2dCQUN4QyxDQUFDO1lBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztRQUNILE1BQU0sTUFBTSxHQUFHLEVBQUMsVUFBVSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLGFBQWEsRUFBRSxLQUFLLEVBQUMsQ0FBQztRQUMxRSxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNoRSxDQUFDOzhHQTFEVSxjQUFjO2tHQUFkLGNBQWMscVRDckMzQiw2dERBMENBOzsyRkRMYSxjQUFjO2tCQUwxQixTQUFTOytCQUNFLGVBQWU7d0ZBS2hCLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0cscUJBQXFCO3NCQUE3QixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBRW9CLFdBQVc7c0JBQXBDLFNBQVM7dUJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgMjAxNS0yMDI0IFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VmFsdGltb01vZGFsU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZXMvdmFsdGltby1tb2RhbC5zZXJ2aWNlJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBTdWJzY3JpcHRpb259IGZyb20gJ3J4anMnO1xuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdmFyXG5kZWNsYXJlIHZhciAkO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWx0aW1vLW1vZGFsJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21vZGFsLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbW9kYWwuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgTW9kYWxDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkluaXQsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpIGVsZW1lbnRJZDogc3RyaW5nO1xuICBASW5wdXQoKSB0aXRsZSA9ICcnO1xuICBASW5wdXQoKSBzdWJ0aXRsZSA9ICcnO1xuICBASW5wdXQoKSB0ZW1wbGF0ZUJlbG93U3VidGl0bGU6IFRlbXBsYXRlUmVmPGFueT47XG4gIEBJbnB1dCgpIHNob3dGb290ZXIgPSBmYWxzZTtcblxuICBAVmlld0NoaWxkKCdzY3JvbGxNb2RhbCcpIHNjcm9sbE1vZGFsOiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PjtcblxuICByZWFkb25seSBtb2RhbFNob3dpbmckID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG5cbiAgcHJpdmF0ZSBzY3JvbGxTdWJzY3JpcHRpb24hOiBTdWJzY3JpcHRpb247XG5cbiAgcHJpdmF0ZSBvYnNlcnZlciE6IE11dGF0aW9uT2JzZXJ2ZXI7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBtb2RhbFNlcnZpY2U6IFZhbHRpbW9Nb2RhbFNlcnZpY2UpIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5vcGVuU2Nyb2xsU3Vic2NyaXB0aW9uKCk7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgJChgIyR7dGhpcy5lbGVtZW50SWR9YCkubW9kYWwoe3Nob3c6IGZhbHNlfSk7XG4gICAgdGhpcy53YXRjaEZvckNsYXNzQ2hhbmdlcygpO1xuICB9XG5cbiAgc2hvdygpIHtcbiAgICAkKGAjJHt0aGlzLmVsZW1lbnRJZH1gKS5tb2RhbCgnc2hvdycpO1xuICB9XG5cbiAgaGlkZSgpIHtcbiAgICAkKGAjJHt0aGlzLmVsZW1lbnRJZH1gKS5tb2RhbCgnaGlkZScpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5zY3JvbGxTdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gICAgdGhpcy5vYnNlcnZlcj8uZGlzY29ubmVjdCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBvcGVuU2Nyb2xsU3Vic2NyaXB0aW9uKCk6IHZvaWQge1xuICAgIHRoaXMuc2Nyb2xsU3Vic2NyaXB0aW9uID0gdGhpcy5tb2RhbFNlcnZpY2Uuc2Nyb2xsVG9Ub3AkLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICBjb25zdCBlbGVtZW50ID0gdGhpcy5zY3JvbGxNb2RhbC5uYXRpdmVFbGVtZW50O1xuXG4gICAgICBpZiAoZWxlbWVudCkgZWxlbWVudC5zY3JvbGxUbygwLCAwKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgd2F0Y2hGb3JDbGFzc0NoYW5nZXMoKTogdm9pZCB7XG4gICAgdGhpcy5vYnNlcnZlciA9IG5ldyBNdXRhdGlvbk9ic2VydmVyKG11dGF0aW9ucyA9PiB7XG4gICAgICBtdXRhdGlvbnM/LmZvckVhY2gobXV0YXRpb24gPT4ge1xuICAgICAgICBpZiAobXV0YXRpb24/LmF0dHJpYnV0ZU5hbWUgPT09ICdjbGFzcycpIHtcbiAgICAgICAgICBjb25zdCBtb2RhbFNob3dpbmcgPSAobXV0YXRpb24/LnRhcmdldCBhcyBhbnkpPy5jbGFzc0xpc3Q/LmNvbnRhaW5zKCdzaG93Jyk7XG4gICAgICAgICAgdGhpcy5tb2RhbFNob3dpbmckLm5leHQobW9kYWxTaG93aW5nKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSk7XG4gICAgY29uc3QgY29uZmlnID0ge2F0dHJpYnV0ZXM6IHRydWUsIGNoaWxkTGlzdDogZmFsc2UsIGNoYXJhY3RlckRhdGE6IGZhbHNlfTtcbiAgICB0aGlzLm9ic2VydmVyLm9ic2VydmUodGhpcy5zY3JvbGxNb2RhbC5uYXRpdmVFbGVtZW50LCBjb25maWcpO1xuICB9XG59XG4iLCI8IS0tXG4gIH4gQ29weXJpZ2h0IDIwMTUtMjAyNCBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gIH5cbiAgfiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAgfiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gIH4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gIH5cbiAgfiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gIH5cbiAgfiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gIH4gZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICB+IFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICB+IFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAgfiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAgLS0+XG5cbjxkaXYgY2xhc3M9XCJtb2RhbCBmYWRlIGN1c3RvbS13aWR0aFwiIFtpZF09XCJlbGVtZW50SWRcIiByb2xlPVwiZGlhbG9nXCIgYXJpYS1tb2RhbD1cInRydWVcIiAjc2Nyb2xsTW9kYWw+XG4gIDxkaXYgY2xhc3M9XCJtb2RhbC1kaWFsb2cgbW9kYWwtbGdcIj5cbiAgICA8ZGl2IGNsYXNzPVwibW9kYWwtY29udGVudFwiPlxuICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWhlYWRlciBtb2RhbC1oZWFkZXItY29sb3JlZCBjb2xvcmVkLWhlYWRlci1ncmV5XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJtb2RhbC10aXRsZVwiPlxuICAgICAgICAgIDxoNCBjbGFzcz1cInRpdGxlLXRleHQgbWItMlwiPnt7IHRpdGxlIH19PC9oND5cbiAgICAgICAgICA8aDUgY2xhc3M9XCJzdWJ0aXRsZS10ZXh0XCI+e3sgc3VidGl0bGUgfX08L2g1PlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJ0ZW1wbGF0ZUJlbG93U3VidGl0bGVcIj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ0ZW1wbGF0ZUJlbG93U3VidGl0bGVcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LXJpZ2h0XCI+XG4gICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJjbG9zZVwiIGRhdGEtZGlzbWlzcz1cIm1vZGFsXCIgYXJpYS1sYWJlbD1cIkNsb3NlXCI+XG4gICAgICAgICAgICA8c3BhbiBhcmlhLWhpZGRlbj1cInRydWVcIj4mdGltZXM7PC9zcGFuPlxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWJvZHlcIj5cbiAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2JvZHldXCI+PC9uZy1jb250ZW50PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwibW9kYWwtZm9vdGVyXCIgKm5nSWY9XCJzaG93Rm9vdGVyXCI+XG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltmb290ZXJdXCI+PC9uZy1jb250ZW50PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* Copyright 2015-
|
|
2
|
+
* Copyright 2015-2024 Ritense BV, the Netherlands.
|
|
3
3
|
*
|
|
4
4
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
5
5
|
* you may not use this file except in compliance with the License.
|
|
@@ -18,11 +18,11 @@ import { CommonModule } from '@angular/common';
|
|
|
18
18
|
import { ModalComponent } from './modal.component';
|
|
19
19
|
import * as i0 from "@angular/core";
|
|
20
20
|
export class ModalModule {
|
|
21
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
22
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
23
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
21
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: ModalModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
22
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.3", ngImport: i0, type: ModalModule, declarations: [ModalComponent], imports: [CommonModule], exports: [ModalComponent] }); }
|
|
23
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: ModalModule, imports: [CommonModule] }); }
|
|
24
24
|
}
|
|
25
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
25
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: ModalModule, decorators: [{
|
|
26
26
|
type: NgModule,
|
|
27
27
|
args: [{
|
|
28
28
|
declarations: [ModalComponent],
|
|
@@ -30,4 +30,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
30
30
|
exports: [ModalComponent],
|
|
31
31
|
}]
|
|
32
32
|
}] });
|
|
33
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby9jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9tb2RhbC9tb2RhbC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFFSCxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sbUJBQW1CLENBQUM7O0FBT2pELE1BQU0sT0FBTyxXQUFXOzhHQUFYLFdBQVc7K0dBQVgsV0FBVyxpQkFKUCxjQUFjLGFBQ25CLFlBQVksYUFDWixjQUFjOytHQUViLFdBQVcsWUFIWixZQUFZOzsyRkFHWCxXQUFXO2tCQUx2QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLGNBQWMsQ0FBQztvQkFDOUIsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO29CQUN2QixPQUFPLEVBQUUsQ0FBQyxjQUFjLENBQUM7aUJBQzFCIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAyMDE1LTIwMjQgUml0ZW5zZSBCViwgdGhlIE5ldGhlcmxhbmRzLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogaHR0cHM6Ly9qb2ludXAuZWMuZXVyb3BhLmV1L2NvbGxlY3Rpb24vZXVwbC9ldXBsLXRleHQtZXVwbC0xMlxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBiYXNpcyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7TW9kYWxDb21wb25lbnR9IGZyb20gJy4vbW9kYWwuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbTW9kYWxDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcbiAgZXhwb3J0czogW01vZGFsQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgTW9kYWxNb2R1bGUge31cbiJdfQ==
|