@yuuvis/client-framework 2.0.0-beta.0 → 2.0.0-beta.10
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/actions/lib/actions/delete-action/delete/delete.component.d.ts +3 -3
- package/actions/lib/actions/delete-action/delete-action.d.ts +1 -1
- package/actions/lib/actions.service.d.ts +7 -3
- package/actions/lib/components/contextmenu/contextmenu.component.d.ts +3 -1
- package/autocomplete/README.md +3 -0
- package/autocomplete/index.d.ts +3 -0
- package/autocomplete/lib/autocomplete.component.d.ts +72 -0
- package/autocomplete/lib/autocomplete.interface.d.ts +4 -0
- package/autocomplete/lib/autocomplete.module.d.ts +7 -0
- package/common/index.d.ts +4 -4
- package/common/lib/common.module.d.ts +19 -0
- package/common/lib/common.utils.d.ts +2 -0
- package/common/lib/components/confirm/confirm.component.d.ts +7 -0
- package/common/lib/components/confirm/confirm.interface.d.ts +7 -0
- package/common/lib/components/confirm/confirm.service.d.ts +9 -0
- package/common/lib/components/dialog/dialog.component.d.ts +6 -0
- package/common/lib/components/dialog/dialog.options.d.ts +7 -0
- package/common/lib/components/index.d.ts +5 -0
- package/common/lib/directives/autofocus-child.directive.d.ts +13 -0
- package/common/lib/directives/autofocus-delayed.directive.d.ts +18 -0
- package/common/lib/directives/drag-scroll.directive.d.ts +20 -0
- package/common/lib/directives/index.d.ts +8 -4
- package/common/lib/directives/noop-value-accessor.directive.d.ts +2 -2
- package/common/lib/mat-form-field.abstract.d.ts +41 -0
- package/common/lib/services/index.d.ts +1 -1
- package/common/lib/services/layout-settings/layout-settings.service.d.ts +18 -0
- package/datepicker/README.md +3 -0
- package/datepicker/index.d.ts +5 -0
- package/datepicker/lib/calendar/calendar.component.d.ts +72 -0
- package/datepicker/lib/date-input/date-input-element/date-input-element.component.d.ts +43 -0
- package/datepicker/lib/date-input/date-input-hour-element/date-input-hour-element.component.d.ts +11 -0
- package/datepicker/lib/date-input/date-input.component.d.ts +61 -0
- package/datepicker/lib/datepicker-calendar/datepicker-calendar-trigger.component.d.ts +7 -0
- package/datepicker/lib/datepicker-calendar/datepicker-calendar.component.d.ts +12 -0
- package/datepicker/lib/datepicker.component.d.ts +80 -0
- package/datepicker/lib/datepicker.interface.d.ts +34 -0
- package/datepicker/lib/datepicker.module.d.ts +9 -0
- package/datepicker/lib/datepicker.service.d.ts +46 -0
- package/datepicker/lib/datepicker.utils.d.ts +23 -0
- package/datepicker/lib/time-input/time-input.component.d.ts +36 -0
- package/datepicker/lib/time-input/time-input.interface.d.ts +6 -0
- package/fesm2022/yuuvis-client-framework-actions.mjs +147 -105
- package/fesm2022/yuuvis-client-framework-actions.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-app-bar.mjs +7 -8
- package/fesm2022/yuuvis-client-framework-app-bar.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-autocomplete.mjs +210 -0
- package/fesm2022/yuuvis-client-framework-autocomplete.mjs.map +1 -0
- package/fesm2022/yuuvis-client-framework-clipboard.mjs +9 -9
- package/fesm2022/yuuvis-client-framework-clipboard.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-common.mjs +853 -780
- package/fesm2022/yuuvis-client-framework-common.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-datepicker.mjs +1688 -0
- package/fesm2022/yuuvis-client-framework-datepicker.mjs.map +1 -0
- package/fesm2022/yuuvis-client-framework-forms.mjs +945 -1157
- package/fesm2022/yuuvis-client-framework-forms.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-icons.mjs +85 -12
- package/fesm2022/yuuvis-client-framework-icons.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-list.mjs +81 -45
- package/fesm2022/yuuvis-client-framework-list.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-master-details.mjs +112 -0
- package/fesm2022/yuuvis-client-framework-master-details.mjs.map +1 -0
- package/fesm2022/yuuvis-client-framework-metadata-form-defaults.mjs +60 -0
- package/fesm2022/yuuvis-client-framework-metadata-form-defaults.mjs.map +1 -0
- package/fesm2022/yuuvis-client-framework-metadata-form.mjs +125 -100
- package/fesm2022/yuuvis-client-framework-metadata-form.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-object-details.mjs +49 -59
- package/fesm2022/yuuvis-client-framework-object-details.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-object-flavor.mjs +188 -77
- package/fesm2022/yuuvis-client-framework-object-flavor.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-object-form.mjs +99 -184
- package/fesm2022/yuuvis-client-framework-object-form.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-object-preview.mjs +12 -12
- package/fesm2022/yuuvis-client-framework-object-preview.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-object-summary.mjs +46 -42
- package/fesm2022/yuuvis-client-framework-object-summary.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-overflow-menu.mjs +126 -0
- package/fesm2022/yuuvis-client-framework-overflow-menu.mjs.map +1 -0
- package/fesm2022/yuuvis-client-framework-pagination.mjs +7 -9
- package/fesm2022/yuuvis-client-framework-pagination.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-panel.mjs +8 -7
- package/fesm2022/yuuvis-client-framework-panel.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-popout.mjs +212 -0
- package/fesm2022/yuuvis-client-framework-popout.mjs.map +1 -0
- package/fesm2022/yuuvis-client-framework-renderer.mjs +99 -72
- package/fesm2022/yuuvis-client-framework-renderer.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-sequence-list.mjs +29 -112
- package/fesm2022/yuuvis-client-framework-sequence-list.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-simple-search.mjs +40 -21
- package/fesm2022/yuuvis-client-framework-simple-search.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-split-view.mjs +188 -0
- package/fesm2022/yuuvis-client-framework-split-view.mjs.map +1 -0
- package/fesm2022/yuuvis-client-framework-tile-list.mjs +100 -93
- package/fesm2022/yuuvis-client-framework-tile-list.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-tree.mjs +15 -15
- package/fesm2022/yuuvis-client-framework-tree.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-upload-progress.mjs +16 -21
- package/fesm2022/yuuvis-client-framework-upload-progress.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework.mjs +4 -4
- package/fesm2022/yuuvis-client-framework.mjs.map +1 -1
- package/forms/index.d.ts +7 -1
- package/forms/lib/elements/catalog/catalog.component.d.ts +17 -56
- package/forms/lib/elements/data-grid/edit-table-data/edit-data.component.d.ts +5 -4
- package/forms/lib/elements/datetime/datetime.component.d.ts +19 -10
- package/forms/lib/elements/datetime-range/datetime-range.component.d.ts +12 -27
- package/forms/lib/elements/index.d.ts +0 -1
- package/forms/lib/elements/number/number.component.d.ts +21 -30
- package/forms/lib/elements/number-range/number-range.component.d.ts +12 -7
- package/forms/lib/elements/organization/organization.component.d.ts +23 -51
- package/forms/lib/elements/range-select-date/range-select-date.component.d.ts +12 -7
- package/forms/lib/elements/range-select-filesize/range-select-filesize.component.d.ts +12 -7
- package/forms/lib/elements/string/string.component.d.ts +15 -20
- package/forms/lib/forms.module.d.ts +8 -11
- package/icons/index.d.ts +1 -0
- package/icons/lib/icon.component.d.ts +20 -0
- package/lib/assets/i18n/de.json +7 -23
- package/lib/assets/i18n/en.json +10 -26
- package/list/index.d.ts +1 -0
- package/list/lib/list-item.directive.d.ts +5 -4
- package/list/lib/list.component.d.ts +6 -3
- package/list/lib/list.module.d.ts +8 -0
- package/master-details/README.md +3 -0
- package/master-details/index.d.ts +2 -0
- package/master-details/lib/master-details.component.d.ts +58 -0
- package/master-details/lib/master-details.interface.d.ts +7 -0
- package/master-details/lib/master-details.module.d.ts +7 -0
- package/metadata-form/index.d.ts +4 -1
- package/metadata-form/lib/metadata-form-field/metadata-form-field.component.d.ts +4 -17
- package/metadata-form/lib/metadata-form-field/metadata-form-field.interface.d.ts +11 -0
- package/metadata-form/lib/object-metadata-element-error.directive.d.ts +13 -0
- package/metadata-form/lib/object-metadata-element-label.directive.d.ts +10 -0
- package/metadata-form/lib/object-metadata-element-template.directive.d.ts +3 -3
- package/metadata-form-defaults/README.md +3 -0
- package/metadata-form-defaults/index.d.ts +2 -0
- package/metadata-form-defaults/lib/metadata-form-defaults.module.d.ts +7 -0
- package/object-details/lib/object-audit/object-audit.component.d.ts +3 -9
- package/object-details/lib/object-details.component.d.ts +0 -2
- package/object-details/lib/object-metadata/object-metadata.component.d.ts +4 -3
- package/object-details/lib/retention-badge/retention-badge.component.d.ts +0 -3
- package/object-flavor/index.d.ts +1 -0
- package/object-flavor/lib/abstract-apply-create-flavor/abstract-apply-create-flavor.component.d.ts +1 -2
- package/object-flavor/lib/abstract-apply-object-flavor/abstract-apply-object-flavor.component.d.ts +3 -2
- package/object-flavor/lib/default-apply-flavor/default-apply-flavor.component.d.ts +19 -0
- package/object-flavor/lib/flavor-chip/flavor-chip.component.d.ts +1 -1
- package/object-flavor/lib/object-flavor/object-flavor.component.d.ts +3 -6
- package/object-flavor/lib/object-flavor-picker/object-flavor-picker.component.d.ts +0 -1
- package/object-form/index.d.ts +1 -1
- package/object-form/lib/object-form-element/object-form-element.component.d.ts +2 -2
- package/object-form/lib/object-form-group/object-form-group.component.d.ts +1 -3
- package/object-form/lib/object-form.component.d.ts +2 -2
- package/object-form/lib/object-form.interface.d.ts +0 -44
- package/object-form/lib/object-form.module.d.ts +7 -0
- package/object-form/lib/object-form.service.d.ts +1 -2
- package/object-form/lib/object-form.utils.d.ts +1 -1
- package/object-summary/lib/object-summary/object-summary.component.d.ts +13 -15
- package/overflow-menu/README.md +3 -0
- package/overflow-menu/index.d.ts +3 -0
- package/overflow-menu/lib/overflow-menu.component.d.ts +31 -0
- package/overflow-menu/lib/overflow-menu.interface.d.ts +9 -0
- package/overflow-menu/lib/overflow-menu.module.d.ts +7 -0
- package/package.json +44 -70
- package/popout/README.md +3 -0
- package/popout/index.d.ts +3 -0
- package/popout/lib/popout.component.d.ts +58 -0
- package/popout/lib/popout.interface.d.ts +17 -0
- package/popout/lib/popout.module.d.ts +7 -0
- package/renderer/lib/property-renderer/abstract.renderer.d.ts +4 -4
- package/renderer/lib/property-renderer/icon.renderer.component.d.ts +2 -0
- package/renderer/lib/renderer.directive.d.ts +4 -3
- package/sequence-list/index.d.ts +0 -1
- package/sequence-list/lib/sequence-list.component.d.ts +0 -4
- package/simple-search/index.d.ts +0 -1
- package/simple-search/lib/simple-search/simple-search.component.d.ts +6 -10
- package/split-view/README.md +3 -0
- package/split-view/index.d.ts +4 -0
- package/split-view/lib/split-area.directive.d.ts +16 -0
- package/split-view/lib/split-view.component.d.ts +76 -0
- package/split-view/lib/split-view.interface.d.ts +10 -0
- package/split-view/lib/split-view.module.d.ts +8 -0
- package/styles/client-framework.scss +21 -67
- package/tile-list/lib/tile/tile.component.d.ts +1 -2
- package/tile-list/lib/tile-config/property-select/property-select.component.d.ts +0 -1
- package/tile-list/lib/tile-config/tile-config-trigger/tile-config-trigger.component.d.ts +1 -2
- package/tile-list/lib/tile-config/tile-config.component.d.ts +0 -3
- package/tile-list/lib/tile-list/tile-list.component.d.ts +5 -5
- package/upload-progress/lib/upload-progress/upload-progress-overlay/upload-progress-overlay.component.d.ts +0 -5
- package/upload-progress/lib/upload-progress/upload-progress.component.d.ts +0 -4
- package/common/lib/components/focus-indicator/focus-indicator.component.d.ts +0 -7
- package/common/lib/components/token-input/token-input.component.d.ts +0 -55
- package/common/lib/components/token-input/token-input.interface.d.ts +0 -8
- package/common/lib/services/error-messages/error-messages.service.d.ts +0 -7
- package/esm2022/actions/index.mjs +0 -7
- package/esm2022/actions/lib/actions/copy-action/copy-action.mjs +0 -31
- package/esm2022/actions/lib/actions/cut-action/cut-action.mjs +0 -30
- package/esm2022/actions/lib/actions/delete-action/delete/delete.component.mjs +0 -67
- package/esm2022/actions/lib/actions/delete-action/delete-action.mjs +0 -38
- package/esm2022/actions/lib/actions/download-action/download-action.mjs +0 -33
- package/esm2022/actions/lib/actions.icon.mjs +0 -8
- package/esm2022/actions/lib/actions.interface.mjs +0 -19
- package/esm2022/actions/lib/actions.module.mjs +0 -16
- package/esm2022/actions/lib/actions.service.mjs +0 -89
- package/esm2022/actions/lib/components/contextmenu/contextmenu.component.mjs +0 -27
- package/esm2022/actions/yuuvis-client-framework-actions.mjs +0 -5
- package/esm2022/app-bar/index.mjs +0 -2
- package/esm2022/app-bar/lib/app-bar.component.mjs +0 -89
- package/esm2022/app-bar/yuuvis-client-framework-app-bar.mjs +0 -5
- package/esm2022/clipboard/index.mjs +0 -2
- package/esm2022/clipboard/lib/clipboard.component.mjs +0 -48
- package/esm2022/clipboard/yuuvis-client-framework-clipboard.mjs +0 -5
- package/esm2022/common/index.mjs +0 -7
- package/esm2022/common/lib/components/focus-indicator/focus-indicator.component.mjs +0 -41
- package/esm2022/common/lib/components/token-input/token-input.component.mjs +0 -324
- package/esm2022/common/lib/components/token-input/token-input.interface.mjs +0 -2
- package/esm2022/common/lib/directives/busy-overlay.directive.mjs +0 -88
- package/esm2022/common/lib/directives/click-double.directive.mjs +0 -61
- package/esm2022/common/lib/directives/container-size.directive.mjs +0 -56
- package/esm2022/common/lib/directives/drag-select.directive.mjs +0 -114
- package/esm2022/common/lib/directives/file-drop-zone/file-drop-zone.directive.mjs +0 -153
- package/esm2022/common/lib/directives/file-drop-zone/file-drop-zone.interface.mjs +0 -2
- package/esm2022/common/lib/directives/focus-within.directive.mjs +0 -81
- package/esm2022/common/lib/directives/index.mjs +0 -9
- package/esm2022/common/lib/directives/light-dismiss.directive.mjs +0 -44
- package/esm2022/common/lib/directives/longpress.directive.mjs +0 -36
- package/esm2022/common/lib/directives/noop-value-accessor.directive.mjs +0 -42
- package/esm2022/common/lib/services/error-messages/error-messages.service.mjs +0 -68
- package/esm2022/common/lib/services/index.mjs +0 -2
- package/esm2022/common/yuuvis-client-framework-common.mjs +0 -5
- package/esm2022/forms/index.mjs +0 -24
- package/esm2022/forms/lib/elements/catalog/catalog.component.mjs +0 -118
- package/esm2022/forms/lib/elements/data-grid/data-grid/data-grid.component.mjs +0 -172
- package/esm2022/forms/lib/elements/data-grid/edit-table-data/edit-data.component.mjs +0 -95
- package/esm2022/forms/lib/elements/data-grid/model/data-grid.interface.mjs +0 -9
- package/esm2022/forms/lib/elements/datetime/datetime.component.mjs +0 -82
- package/esm2022/forms/lib/elements/datetime-range/datetime-range.component.mjs +0 -166
- package/esm2022/forms/lib/elements/index.mjs +0 -11
- package/esm2022/forms/lib/elements/number/number.component.mjs +0 -195
- package/esm2022/forms/lib/elements/number-range/number-range.component.mjs +0 -176
- package/esm2022/forms/lib/elements/organization/organization.component.mjs +0 -286
- package/esm2022/forms/lib/elements/range-select-date/date-range-picker/date-range-picker.component.mjs +0 -38
- package/esm2022/forms/lib/elements/range-select-date/range-select-date.component.mjs +0 -181
- package/esm2022/forms/lib/elements/range-select-date/range-select-date.interface.mjs +0 -2
- package/esm2022/forms/lib/elements/range-select-filesize/range-select-filesize.component.mjs +0 -98
- package/esm2022/forms/lib/elements/range-select-filesize/range-select-filesize.interface.mjs +0 -2
- package/esm2022/forms/lib/elements/string/string.component.mjs +0 -261
- package/esm2022/forms/lib/form-input/form-input.component.mjs +0 -88
- package/esm2022/forms/lib/forms.module.mjs +0 -58
- package/esm2022/forms/yuuvis-client-framework-forms.mjs +0 -5
- package/esm2022/icons/index.mjs +0 -4
- package/esm2022/icons/lib/icon.service.mjs +0 -59
- package/esm2022/icons/lib/icons.mjs +0 -32
- package/esm2022/icons/lib/object-type-icon/object-type-icon.component.mjs +0 -29
- package/esm2022/icons/yuuvis-client-framework-icons.mjs +0 -5
- package/esm2022/index.mjs +0 -2
- package/esm2022/lib/yuuvis-client-framework.module.mjs +0 -15
- package/esm2022/list/index.mjs +0 -3
- package/esm2022/list/lib/list-item.directive.mjs +0 -72
- package/esm2022/list/lib/list.component.mjs +0 -135
- package/esm2022/list/yuuvis-client-framework-list.mjs +0 -5
- package/esm2022/metadata-form/index.mjs +0 -4
- package/esm2022/metadata-form/lib/metadata-default-templates/metadata-default-templates.component.mjs +0 -32
- package/esm2022/metadata-form/lib/metadata-form-element-registry.service.mjs +0 -99
- package/esm2022/metadata-form/lib/metadata-form-field/metadata-form-field.component.mjs +0 -83
- package/esm2022/metadata-form/lib/object-metadata-element-template.directive.mjs +0 -52
- package/esm2022/metadata-form/yuuvis-client-framework-metadata-form.mjs +0 -5
- package/esm2022/object-details/index.mjs +0 -8
- package/esm2022/object-details/lib/object-audit/object-audit.component.mjs +0 -195
- package/esm2022/object-details/lib/object-details-shell/object-details-shell.component.mjs +0 -127
- package/esm2022/object-details/lib/object-details.component.mjs +0 -61
- package/esm2022/object-details/lib/object-metadata/form-section-group.pipe.mjs +0 -17
- package/esm2022/object-details/lib/object-metadata/object-metadata.component.mjs +0 -202
- package/esm2022/object-details/lib/object-metadata/object-metadata.interface.mjs +0 -2
- package/esm2022/object-details/lib/retention-badge/retention-badge.component.mjs +0 -27
- package/esm2022/object-details/yuuvis-client-framework-object-details.mjs +0 -5
- package/esm2022/object-flavor/index.mjs +0 -6
- package/esm2022/object-flavor/lib/abstract-apply-create-flavor/abstract-apply-create-flavor.component.mjs +0 -25
- package/esm2022/object-flavor/lib/abstract-apply-object-flavor/abstract-apply-object-flavor.component.mjs +0 -21
- package/esm2022/object-flavor/lib/flavor-chip/flavor-chip.component.mjs +0 -35
- package/esm2022/object-flavor/lib/object-flavor/object-flavor.component.mjs +0 -93
- package/esm2022/object-flavor/lib/object-flavor-picker/object-flavor-picker.component.mjs +0 -43
- package/esm2022/object-flavor/yuuvis-client-framework-object-flavor.mjs +0 -5
- package/esm2022/object-form/index.mjs +0 -5
- package/esm2022/object-form/lib/form-scripting.api.interface.mjs +0 -2
- package/esm2022/object-form/lib/form-scripting.service.mjs +0 -160
- package/esm2022/object-form/lib/object-form-element/object-form-element.component.mjs +0 -87
- package/esm2022/object-form/lib/object-form-extension.interface.mjs +0 -36
- package/esm2022/object-form/lib/object-form-group/object-form-group.component.mjs +0 -85
- package/esm2022/object-form/lib/object-form-script/form-scripting-element-extension/form-scripting-element-extension.component.mjs +0 -23
- package/esm2022/object-form/lib/object-form-script/object-form-script.service.mjs +0 -115
- package/esm2022/object-form/lib/object-form-script/object-form-scripting-scope.mjs +0 -251
- package/esm2022/object-form/lib/object-form-translate.service.mjs +0 -73
- package/esm2022/object-form/lib/object-form.component.mjs +0 -628
- package/esm2022/object-form/lib/object-form.interface.mjs +0 -9
- package/esm2022/object-form/lib/object-form.model.mjs +0 -20
- package/esm2022/object-form/lib/object-form.service.mjs +0 -130
- package/esm2022/object-form/lib/object-form.utils.mjs +0 -55
- package/esm2022/object-form/lib/object-form.validation.mjs +0 -48
- package/esm2022/object-form/yuuvis-client-framework-object-form.mjs +0 -5
- package/esm2022/object-preview/index.mjs +0 -3
- package/esm2022/object-preview/lib/components/index.mjs +0 -3
- package/esm2022/object-preview/lib/components/object-email-preview/object-email-preview.component.mjs +0 -45
- package/esm2022/object-preview/lib/components/object-preview/object-preview.component.mjs +0 -78
- package/esm2022/object-preview/lib/services/object-preview.service.mjs +0 -119
- package/esm2022/object-preview/yuuvis-client-framework-object-preview.mjs +0 -5
- package/esm2022/object-summary/index.mjs +0 -5
- package/esm2022/object-summary/lib/multi-object-summary/multi-object-summary.component.mjs +0 -33
- package/esm2022/object-summary/lib/object-summary/object-summary.component.mjs +0 -275
- package/esm2022/object-summary/lib/object-summary-data/object-summary-data.component.mjs +0 -80
- package/esm2022/object-summary/lib/object-summary.module.mjs +0 -15
- package/esm2022/object-summary/yuuvis-client-framework-object-summary.mjs +0 -5
- package/esm2022/pagination/index.mjs +0 -3
- package/esm2022/pagination/lib/pagination.component.mjs +0 -46
- package/esm2022/pagination/lib/pagination.interface.mjs +0 -2
- package/esm2022/pagination/yuuvis-client-framework-pagination.mjs +0 -5
- package/esm2022/panel/index.mjs +0 -2
- package/esm2022/panel/lib/panel.component.mjs +0 -20
- package/esm2022/panel/yuuvis-client-framework-panel.mjs +0 -5
- package/esm2022/renderer/index.mjs +0 -11
- package/esm2022/renderer/lib/property-renderer/abstract.renderer.mjs +0 -29
- package/esm2022/renderer/lib/property-renderer/datetime.renderer.mjs +0 -13
- package/esm2022/renderer/lib/property-renderer/decimal.renderer.component.mjs +0 -12
- package/esm2022/renderer/lib/property-renderer/filesize.renderer.component.mjs +0 -28
- package/esm2022/renderer/lib/property-renderer/icon.renderer.component.mjs +0 -23
- package/esm2022/renderer/lib/property-renderer/integer.renderer.component.mjs +0 -12
- package/esm2022/renderer/lib/property-renderer/organization.renderer.mjs +0 -19
- package/esm2022/renderer/lib/property-renderer/string.renderer.component.mjs +0 -12
- package/esm2022/renderer/lib/property-renderer/unknown.renderer.mjs +0 -12
- package/esm2022/renderer/lib/renderer.directive.mjs +0 -51
- package/esm2022/renderer/lib/services/renderer/renderer.interface.mjs +0 -2
- package/esm2022/renderer/lib/services/renderer/renderer.service.mjs +0 -84
- package/esm2022/renderer/yuuvis-client-framework-renderer.mjs +0 -5
- package/esm2022/sequence-list/index.mjs +0 -4
- package/esm2022/sequence-list/lib/due-date-picker/due-date-picker.component.mjs +0 -99
- package/esm2022/sequence-list/lib/sequence-list.component.mjs +0 -141
- package/esm2022/sequence-list/lib/sequence-list.interface.mjs +0 -2
- package/esm2022/sequence-list/yuuvis-client-framework-sequence-list.mjs +0 -5
- package/esm2022/simple-search/index.mjs +0 -3
- package/esm2022/simple-search/lib/simple-search/simple-search.component.mjs +0 -111
- package/esm2022/simple-search/lib/simple-search/simple-search.interface.mjs +0 -2
- package/esm2022/simple-search/yuuvis-client-framework-simple-search.mjs +0 -5
- package/esm2022/tile-list/index.mjs +0 -11
- package/esm2022/tile-list/lib/tile/tile.component.mjs +0 -53
- package/esm2022/tile-list/lib/tile-config/action-select/action-select.component.mjs +0 -25
- package/esm2022/tile-list/lib/tile-config/icon-select/icon-select.component.mjs +0 -33
- package/esm2022/tile-list/lib/tile-config/property-select/property-select.component.mjs +0 -91
- package/esm2022/tile-list/lib/tile-config/tile-config-tile/tile-config-tile.component.mjs +0 -66
- package/esm2022/tile-list/lib/tile-config/tile-config-trigger/tile-config-trigger.component.mjs +0 -46
- package/esm2022/tile-list/lib/tile-config/tile-config.component.mjs +0 -156
- package/esm2022/tile-list/lib/tile-extension/directive/tile-extension.directive.mjs +0 -37
- package/esm2022/tile-list/lib/tile-extension/extensions/email.extension.mjs +0 -42
- package/esm2022/tile-list/lib/tile-extension/tile-extension.service.mjs +0 -35
- package/esm2022/tile-list/lib/tile-list/tile-list.component.mjs +0 -510
- package/esm2022/tile-list/lib/tile-list/tile-list.interface.mjs +0 -2
- package/esm2022/tile-list/yuuvis-client-framework-tile-list.mjs +0 -5
- package/esm2022/token-search/index.mjs +0 -3
- package/esm2022/token-search/token-search.component.mjs +0 -78
- package/esm2022/token-search/token-search.interface.mjs +0 -2
- package/esm2022/token-search/yuuvis-client-framework-token-search.mjs +0 -5
- package/esm2022/tree/index.mjs +0 -3
- package/esm2022/tree/lib/tree-node/tree-node.component.mjs +0 -65
- package/esm2022/tree/lib/tree.component.mjs +0 -148
- package/esm2022/tree/lib/tree.interface.mjs +0 -2
- package/esm2022/tree/lib/tree.service.mjs +0 -95
- package/esm2022/tree/yuuvis-client-framework-tree.mjs +0 -5
- package/esm2022/upload-progress/index.mjs +0 -2
- package/esm2022/upload-progress/lib/upload-progress/upload-progress-overlay/upload-progress-overlay.component.mjs +0 -49
- package/esm2022/upload-progress/lib/upload-progress/upload-progress.component.mjs +0 -37
- package/esm2022/upload-progress/yuuvis-client-framework-upload-progress.mjs +0 -5
- package/esm2022/user-avatar/index.mjs +0 -3
- package/esm2022/user-avatar/lib/user-avatar.component.mjs +0 -69
- package/esm2022/user-avatar/lib/user-avatar.module.mjs +0 -24
- package/esm2022/user-avatar/yuuvis-client-framework-user-avatar.mjs +0 -5
- package/esm2022/yuuvis-client-framework.mjs +0 -5
- package/fesm2022/yuuvis-client-framework-token-search.mjs +0 -85
- package/fesm2022/yuuvis-client-framework-token-search.mjs.map +0 -1
- package/fesm2022/yuuvis-client-framework-user-avatar.mjs +0 -96
- package/fesm2022/yuuvis-client-framework-user-avatar.mjs.map +0 -1
- package/forms/lib/form-input/form-input.component.d.ts +0 -48
- package/object-form/lib/object-form-translate.service.d.ts +0 -15
- package/object-form/lib/object-form.model.d.ts +0 -18
- package/sequence-list/lib/due-date-picker/due-date-picker.component.d.ts +0 -28
- package/simple-search/lib/simple-search/simple-search.interface.d.ts +0 -4
- package/token-search/README.md +0 -3
- package/token-search/index.d.ts +0 -2
- package/token-search/token-search.component.d.ts +0 -22
- package/token-search/token-search.interface.d.ts +0 -4
- package/user-avatar/README.md +0 -3
- package/user-avatar/index.d.ts +0 -2
- package/user-avatar/lib/user-avatar.component.d.ts +0 -44
- package/user-avatar/lib/user-avatar.module.d.ts +0 -8
- /package/{metadata-form → metadata-form-defaults}/lib/metadata-default-templates/metadata-default-templates.component.d.ts +0 -0
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { UntypedFormGroup } from '@angular/forms';
|
|
2
|
-
/**
|
|
3
|
-
* @ignore
|
|
4
|
-
* Extend angulars default FormGroup for implementation of a form group wrapping
|
|
5
|
-
* a form control.
|
|
6
|
-
*/
|
|
7
|
-
export class ObjectFormControlWrapper extends UntypedFormGroup {
|
|
8
|
-
}
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JqZWN0LWZvcm0uaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy95dXV2aXMvY2xpZW50LWZyYW1ld29yay9vYmplY3QtZm9ybS9zcmMvbGliL29iamVjdC1mb3JtLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQWdFbEQ7Ozs7R0FJRztBQUNILE1BQU0sT0FBTyx3QkFBeUIsU0FBUSxnQkFBZ0I7Q0FFN0QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBVbnR5cGVkRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgT2JqZWN0Rm9ybUdyb3VwIH0gZnJvbSAnLi9vYmplY3QtZm9ybS5tb2RlbCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSU9iamVjdEZvcm0ge1xuICBnZXRGb3JtRGF0YSgpOiB2b2lkO1xuICBzZXRGb3JtUHJpc3RpbmUoKTogdm9pZDtcbiAgcmVzZXRGb3JtKCk6IHZvaWQ7XG59XG5cbi8qKlxuICogQGlnbm9yZVxuICovXG5leHBvcnQgdHlwZSBPYmplY3RGb3JtTW9kZWwgPSBPYmplY3RGb3JtR3JvdXAgfCBPYmplY3RGb3JtQ29udHJvbFdyYXBwZXI7XG4vKipcbiAqIEludGVyZmFjZSBmb3IgcHJvdmlkaW5nIGNvbXBvbmVudHMsIHRoYXQgcmVuZGVyIGFuIG1vZGVsIGJhc2VkIGZvcm0uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgT2JqZWN0Rm9ybU9wdGlvbnMge1xuICAvKipcbiAgICogVGhlIGZvcm0gbW9kZWwgaG9sZGluZyBhbGwgZ3JvdXBzIGFuZCBlbGVtZW50c1xuICAgKi9cbiAgZm9ybU1vZGVsOiBhbnk7XG4gIC8qKlxuICAgKiBEYXRhIHRvIGJlIG1lcmdlZCB3aXRoIHRoZSBmb3JtcyBtb2RlbC4gVXN1YWxseSB0aGlzIHdpbGwgYmUgYW5cbiAgICogb2JqZWN0IG9mIHByb3BlcnR5IHZhbHVlIHBhaXJzIHdoZXJlIHRoZSBwcm9wZXJ0aWVzIG5hbWUgZXF1YWxzIHRoZSBuYW1lIG9mXG4gICAqIHRoZSBmb3JtIGVsZW1lbnQuIEZvciBzZWFyY2ggZm9ybXMgKGZvcm0gc2l0dWF0aW9uICdTRUFSQ0gnKSBkYXRhIGlzIHN1cHBvc2VkXG4gICAqIHRvIGJlIGFuIGFycmF5IG9mIFNlYXJjaEZpbHRlciBvYmplY3RzLCBiZWNhdXNlIHNlYXJjaCBmb3JtcyBtYXkgc3VwcG9ydFxuICAgKiByYW5nZSBzZWFyY2hlcyBpbiBzb21lIGNhc2VzLlxuICAgKi9cbiAgZGF0YTogUmVjb3JkPHN0cmluZ1x0LCB1bmtub3duPjtcbiAgLy8gVGhlIGlkIG9mIHRoZSBjdXJyZW50IERNUy1PYmplY3RcbiAgb2JqZWN0SWQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiB3aGV0aGVyIG9yIG5vdCB0byBkaXNhYmxlIHRoZSBjb21wbGV0ZSBmb3JtXG4gICAqL1xuICBkaXNhYmxlZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBpbiBjb250ZXh0IG9mIEJQTSBmb3JtcywgZm9ybSBzY3JpcHRzIHdpbGwgYWxzbyBwcm92aWRlIGFjY2VzcyB0byB0aGUgYWN0aW9uc1xuICAgKiBvZiBhIHdvcmsgaXRlbS4gVGhpcyBvYmplY3QgaXMgc3VwcG9zZWQgdG8gY29udGFpbiBwcm9wZXJ0aWVzIGluIGEga2V5IHZhbHVlIG1hbm5lcixcbiAgICogd2hlcmUga2V5IGlzIHRoZSBhY3Rpb25zIGNvZGUgYW5kIHZhbHVlIGlzIHRoZSBXb3JrSXRlbUFjdGlvbiBpdHNlbGYuXG4gICAqL1xuICBhY3Rpb25zPzogYW55O1xuICAvKipcbiAgICogb2JqZWN0IGZvcm0gbWF5IGFsc28gcHJvdmlkZSBhIGNvbGxlY3Rpb24gb2Ygb2JqZWN0cyB0byBiZSBwYXNzZWQgdG8gdGhlXG4gICAqIGZvcm0gc2NyaXB0IChlLmcuIEJQTSBmb3JtcyBwcm92aWRlIGRhdGEgZnJvbSBhdHRhY2hlZCBkbXMgb2JqZWN0cylcbiAgICovXG4gIG9iamVjdHM/OiBhbnlbXTtcblxuICBjb250ZXh0PzogeyBpZDogc3RyaW5nOyB0aXRsZTogc3RyaW5nOyBvYmplY3RUeXBlSWQ6IHN0cmluZyB9O1xufVxuLyoqXG4gKiBXcmFwcGVyIGZvciBhIHJlbmRlcmluZyBhIGZyb20gZ3JvdXBcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBZdXZGb3JtR3JvdXBXcmFwcGVyIHtcbiAgLyoqXG4gICAqIGZvcm0gY29udHJvbCBzaXR1YXRpb24gKENSRUFURSwgRURJVCwgU0VBUkNIKVxuICAgKi9cbiAgLy9cbiAgc2l0dWF0aW9uOiBzdHJpbmc7XG4gIC8qKlxuICAgKiB0aGUgbmFtZSBvZiB0aGUgd3JhcHBlZCBmb3JtIGNvbnRyb2xcbiAgICovXG4gIGNvbnRyb2xOYW1lOiBzdHJpbmc7XG59XG5cbi8qKlxuICogQGlnbm9yZVxuICogRXh0ZW5kIGFuZ3VsYXJzIGRlZmF1bHQgRm9ybUdyb3VwIGZvciBpbXBsZW1lbnRhdGlvbiBvZiBhIGZvcm0gZ3JvdXAgd3JhcHBpbmdcbiAqIGEgZm9ybSBjb250cm9sLlxuICovXG5leHBvcnQgY2xhc3MgT2JqZWN0Rm9ybUNvbnRyb2xXcmFwcGVyIGV4dGVuZHMgVW50eXBlZEZvcm1Hcm91cCB7XG4gIF9lb0Zvcm1Db250cm9sV3JhcHBlcj86IFl1dkZvcm1Hcm91cFdyYXBwZXI7XG59XG5cbi8qKlxuICogSW5wdXQgZGF0YSBmb3IgYSBmb3JtIGdyb3VwXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgWXV2Rm9ybUdyb3VwIHtcbiAgLyoqXG4gICAqIHRoZSBsYWJlbCBmb3IgdGhlIGZvcm0gZ3JvdXBcbiAgICovXG4gIGxhYmVsPzogc3RyaW5nO1xuICAvKipcbiAgICogb2JqZWN0IGhvbGRpbmcgcHJvcGVydGllcyBkZWZpbmluZyBsYXlvdXQgcHJvcGVydGllcyBvZiB0aGUgZ3JvdXBcbiAgICovXG4gIC8vXG4gIGxheW91dDogYW55O1xuICAvKipcbiAgICogdHlwZSBvZiBncm91cCBpbmRpY2F0aW5nIGlmIHRoZSBmb3JtIGlzIGEgc3RhY2ssIGEgZmllbGRzZXQgb3IgYSBzaW1wbGUgZ3JvdXBcbiAgICovXG4gIHR5cGU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBldmVudCBkYXRhIGVtaXR0ZWQgYnkgdGhlIHN0YXR1c0NoYW5nZWQgY2FsbGJhY2tcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBGb3JtU3RhdHVzQ2hhbmdlZEV2ZW50IHtcbiAgLyoqXG4gICAqIGZsYWcgaW5kaWNhdGluZyB3aGV0aGVyIG9yIG5vdCB0aGUgZm9ybSBpcyBpbnZhbGlkXG4gICAqXG4gICAqL1xuICBpbnZhbGlkOiBib29sZWFuO1xuICAvKipcbiAgICogZmxhZyBpbmRpY2F0aW5nIHdoZXRoZXIgb3Igbm90IHRoZSBmb3JtIGhhcyBiZWVuIGVkaXRlZFxuICAgKi9cbiAgZGlydHk6IGJvb2xlYW47XG4gIC8qKlxuICAgKiBmbGFnIGluZGljYXRpbmcgd2hldGhlciBvciBub3QgdGhlIGZvcm1zIGluZGV4ZGF0YSBoYXMgYmVlbiBjaGFuZ2VkXG4gICAqL1xuICBpbmRleGRhdGFDaGFuZ2VkOiBib29sZWFuO1xuICAvKipcbiAgICogdGhlIGV4dHJhY3RlZCBkYXRhIGZyb20gdGhlIGZvcm1cbiAgICovXG5cbiAgZGF0YT86IGFueTtcbn1cblxuZXhwb3J0IHR5cGUgT2JqZWN0Rm9ybU1vZGVsQ2hhbmdlID0geyBuYW1lOiAndmFsdWUnIHwgJ3JlcXVpcmVkJyB8ICdyZWFkb25seScgfCAnZXJyb3InIHwgJ29ucm93ZWRpdCcgfCAnb25jaGFuZ2UnOyBuZXdWYWx1ZTogYW55IH07XG4iXX0=
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { FormControl, FormGroup } from '@angular/forms';
|
|
2
|
-
/**
|
|
3
|
-
* @ignore
|
|
4
|
-
* Extension of the default angular form group,
|
|
5
|
-
*/
|
|
6
|
-
export class ObjectFormGroup extends FormGroup {
|
|
7
|
-
}
|
|
8
|
-
/**
|
|
9
|
-
* @ignore
|
|
10
|
-
* Extension of the default angular form control,
|
|
11
|
-
*/
|
|
12
|
-
export class ObjectFormControl extends FormControl {
|
|
13
|
-
set _eoFormElement(v) {
|
|
14
|
-
this.__eoFormElement = v;
|
|
15
|
-
}
|
|
16
|
-
get _eoFormElement() {
|
|
17
|
-
return this.__eoFormElement;
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JqZWN0LWZvcm0ubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3l1dXZpcy9jbGllbnQtZnJhbWV3b3JrL29iamVjdC1mb3JtL3NyYy9saWIvb2JqZWN0LWZvcm0ubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUd4RDs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sZUFBZ0IsU0FBUSxTQUFTO0NBRTdDO0FBQ0Q7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLGlCQUFrQixTQUFRLFdBQVc7SUFHaEQsSUFBVyxjQUFjLENBQUMsQ0FBQztRQUN6QixJQUFJLENBQUMsZUFBZSxHQUFHLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRUQsSUFBVyxjQUFjO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQztJQUM5QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb3JtQ29udHJvbCwgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgWXV2Rm9ybUdyb3VwIH0gZnJvbSAnLi9vYmplY3QtZm9ybS5pbnRlcmZhY2UnO1xuXG4vKipcbiAqIEBpZ25vcmVcbiAqIEV4dGVuc2lvbiBvZiB0aGUgZGVmYXVsdCBhbmd1bGFyIGZvcm0gZ3JvdXAsXG4gKi9cbmV4cG9ydCBjbGFzcyBPYmplY3RGb3JtR3JvdXAgZXh0ZW5kcyBGb3JtR3JvdXAge1xuICBwdWJsaWMgX2VvRm9ybUdyb3VwPzogWXV2Rm9ybUdyb3VwO1xufVxuLyoqXG4gKiBAaWdub3JlXG4gKiBFeHRlbnNpb24gb2YgdGhlIGRlZmF1bHQgYW5ndWxhciBmb3JtIGNvbnRyb2wsXG4gKi9cbmV4cG9ydCBjbGFzcyBPYmplY3RGb3JtQ29udHJvbCBleHRlbmRzIEZvcm1Db250cm9sIHtcbiAgcHJpdmF0ZSBfX2VvRm9ybUVsZW1lbnQ6IGFueTtcblxuICBwdWJsaWMgc2V0IF9lb0Zvcm1FbGVtZW50KHYpIHtcbiAgICB0aGlzLl9fZW9Gb3JtRWxlbWVudCA9IHY7XG4gIH1cblxuICBwdWJsaWMgZ2V0IF9lb0Zvcm1FbGVtZW50KCkge1xuICAgIHJldHVybiB0aGlzLl9fZW9Gb3JtRWxlbWVudDtcbiAgfVxufVxuXG4iXX0=
|
|
@@ -1,130 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { Situation } from '@yuuvis/client-core';
|
|
3
|
-
import { ObjectFormControlWrapper } from './object-form.interface';
|
|
4
|
-
import { ObjectFormUtils } from './object-form.utils';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
/**
|
|
7
|
-
* @ignore
|
|
8
|
-
*/
|
|
9
|
-
export class ObjectFormService {
|
|
10
|
-
#formExtensions = [];
|
|
11
|
-
setElementExtensions(formExtensions) {
|
|
12
|
-
this.#formExtensions = formExtensions;
|
|
13
|
-
}
|
|
14
|
-
getElementExtensions(propertyName) {
|
|
15
|
-
return this.#formExtensions.filter((ext) => ext.property === propertyName).map((ext) => ext.cmp);
|
|
16
|
-
}
|
|
17
|
-
/**
|
|
18
|
-
* Converts a form element object to an ObjectFormControlWrapper which then can be used to
|
|
19
|
-
* render a from control. Result can be used as input for FormElementComponent.
|
|
20
|
-
*
|
|
21
|
-
* @param element - the element object or a json string
|
|
22
|
-
* @param situation - optional property to set up a form situation for the control (default is EDIT)
|
|
23
|
-
* @return the converted ObjectFormControlWrapper or null in case of an error
|
|
24
|
-
*/
|
|
25
|
-
elementToFormControl(element, situation) {
|
|
26
|
-
let formElement;
|
|
27
|
-
if (typeof element === 'string') {
|
|
28
|
-
try {
|
|
29
|
-
formElement = JSON.parse(element);
|
|
30
|
-
}
|
|
31
|
-
catch (e) {
|
|
32
|
-
console.error('Unable to parse form element from json ', formElement);
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
else {
|
|
36
|
-
formElement = element;
|
|
37
|
-
}
|
|
38
|
-
return formElement ? ObjectFormUtils.elementToFormControl(element, situation) : null;
|
|
39
|
-
}
|
|
40
|
-
/**
|
|
41
|
-
* Extract data from an object form based on situation.
|
|
42
|
-
*
|
|
43
|
-
* @param form - form to extract data from
|
|
44
|
-
* @param situation - form situation
|
|
45
|
-
* @param [initialData] - optional form data to match the current values against
|
|
46
|
-
* This is required for editig indexdata (EDIT situation), because we have to compare new values
|
|
47
|
-
* against the initial values. If a property that is contained in the forms initial data is removed
|
|
48
|
-
* (e.g. set to null) then we have to set this null value, because otherwise the server would
|
|
49
|
-
* ignore the changes.
|
|
50
|
-
* @param isTableRowEditForm Flag indicating that the provided form is an inline form used by
|
|
51
|
-
* a forms table element for editing rows. Those need a special handling.
|
|
52
|
-
* @return extracted data as object
|
|
53
|
-
*/
|
|
54
|
-
extractFormData(form, situation, initialData, isTableRowEditForm) {
|
|
55
|
-
const extractedData = {};
|
|
56
|
-
this.#getElementValues(extractedData, form, situation || 'EDIT', initialData, isTableRowEditForm);
|
|
57
|
-
return extractedData;
|
|
58
|
-
}
|
|
59
|
-
// Recursive method to get the values from each form control.
|
|
60
|
-
#getElementValues(data, formControl, situation, initialData, isTableRowEditForm) {
|
|
61
|
-
if (!formControl || !formControl.controls) {
|
|
62
|
-
return;
|
|
63
|
-
}
|
|
64
|
-
if (formControl instanceof ObjectFormControlWrapper) {
|
|
65
|
-
const fc = formControl._eoFormControlWrapper ? formControl.controls[formControl._eoFormControlWrapper.controlName] : null;
|
|
66
|
-
if (!fc) {
|
|
67
|
-
return;
|
|
68
|
-
}
|
|
69
|
-
if (fc._eoFormElement.isNotSetValue === true) {
|
|
70
|
-
// form elements may explicitly set to have NULL value (e.g. from Search form if values are requested that have no values)
|
|
71
|
-
this.#setDataValue(fc._eoFormElement.name, null, data, fc._eoFormElement, !isTableRowEditForm);
|
|
72
|
-
}
|
|
73
|
-
else if (fc.value !== undefined) {
|
|
74
|
-
const val = fc.value;
|
|
75
|
-
switch (situation) {
|
|
76
|
-
case Situation.SEARCH: {
|
|
77
|
-
if (val !== null) {
|
|
78
|
-
this.#setDataValue(fc._eoFormElement.name, val, data, fc._eoFormElement, !!isTableRowEditForm);
|
|
79
|
-
}
|
|
80
|
-
break;
|
|
81
|
-
}
|
|
82
|
-
case Situation.CREATE: {
|
|
83
|
-
if (val !== null) {
|
|
84
|
-
this.#setDataValue(fc._eoFormElement.name, val, data, fc._eoFormElement, !!isTableRowEditForm);
|
|
85
|
-
}
|
|
86
|
-
break;
|
|
87
|
-
}
|
|
88
|
-
case Situation.EDIT: {
|
|
89
|
-
// in edit situation we have to compare new values against the initial values
|
|
90
|
-
// If a property that is contained in the forms initial data is removed (e.g. set to null)
|
|
91
|
-
// then we have to set this null value, because otherwise the server will ignore the changes
|
|
92
|
-
if (val !== null || (initialData && initialData[fc._eoFormElement.name] !== undefined)) {
|
|
93
|
-
// data[fc._eoFormElement.name] = val;
|
|
94
|
-
this.#setDataValue(fc._eoFormElement.name, val, data, fc._eoFormElement, !!isTableRowEditForm);
|
|
95
|
-
}
|
|
96
|
-
break;
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
else if (fc._eoFormElement.type === 'boolean') {
|
|
101
|
-
// tri-state boolean fields could have a value of 'undefined' that needs to be transformed
|
|
102
|
-
// into 'null' to be correctly be processed by the backend
|
|
103
|
-
this.#setDataValue(fc._eoFormElement.name, null, data, fc._eoFormElement, !!isTableRowEditForm);
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
else {
|
|
107
|
-
Object.keys(formControl.controls).forEach((controlKey) => {
|
|
108
|
-
const formControlKeyed = formControl.controls[controlKey];
|
|
109
|
-
this.#getElementValues(data, formControlKeyed, situation, initialData, isTableRowEditForm);
|
|
110
|
-
});
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
#setDataValue(key, value, data, formElement, isTableRowEditForm) {
|
|
114
|
-
data[key] = value;
|
|
115
|
-
if (isTableRowEditForm && formElement.dataMeta) {
|
|
116
|
-
if (formElement._internalType === 'string:organization') {
|
|
117
|
-
data[key + '_title'] = formElement.dataMeta.map((d) => d.title);
|
|
118
|
-
}
|
|
119
|
-
// else if (formElement._internalType === 'string:reference') {
|
|
120
|
-
// data[key + '_title'] = formElement.dataMeta.map((e: ReferenceEntry) => e.title);
|
|
121
|
-
// }
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ObjectFormService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
125
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ObjectFormService }); }
|
|
126
|
-
}
|
|
127
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ObjectFormService, decorators: [{
|
|
128
|
-
type: Injectable
|
|
129
|
-
}] });
|
|
130
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JqZWN0LWZvcm0uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMveXV1dmlzL2NsaWVudC1mcmFtZXdvcmsvb2JqZWN0LWZvcm0vc3JjL2xpYi9vYmplY3QtZm9ybS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQVEsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLFNBQVMsRUFBVyxNQUFNLHFCQUFxQixDQUFDO0FBR3pELE9BQU8sRUFBRSx3QkFBd0IsRUFBbUIsTUFBTSx5QkFBeUIsQ0FBQztBQUVwRixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7O0FBRXREOztHQUVHO0FBRUgsTUFBTSxPQUFPLGlCQUFpQjtJQUM1QixlQUFlLEdBQWtDLEVBQUUsQ0FBQztJQUVwRCxvQkFBb0IsQ0FBQyxjQUE2QztRQUNoRSxJQUFJLENBQUMsZUFBZSxHQUFHLGNBQWMsQ0FBQztJQUN4QyxDQUFDO0lBRUQsb0JBQW9CLENBQUMsWUFBb0I7UUFDdkMsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLFFBQVEsS0FBSyxZQUFZLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNuRyxDQUFDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNILG9CQUFvQixDQUFDLE9BQVksRUFBRSxTQUFrQjtRQUNuRCxJQUFJLFdBQVcsQ0FBQztRQUNoQixJQUFJLE9BQU8sT0FBTyxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQ2hDLElBQUksQ0FBQztnQkFDSCxXQUFXLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNwQyxDQUFDO1lBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztnQkFDWCxPQUFPLENBQUMsS0FBSyxDQUFDLHlDQUF5QyxFQUFFLFdBQVcsQ0FBQyxDQUFDO1lBQ3hFLENBQUM7UUFDSCxDQUFDO2FBQU0sQ0FBQztZQUNOLFdBQVcsR0FBRyxPQUFPLENBQUM7UUFDeEIsQ0FBQztRQUNELE9BQU8sV0FBVyxDQUFDLENBQUMsQ0FBQyxlQUFlLENBQUMsb0JBQW9CLENBQUMsT0FBTyxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDdkYsQ0FBQztJQUVEOzs7Ozs7Ozs7Ozs7O09BYUc7SUFDSCxlQUFlLENBQUMsSUFBcUIsRUFBRSxTQUFpQixFQUFFLFdBQWlCLEVBQUUsa0JBQTRCO1FBQ3ZHLE1BQU0sYUFBYSxHQUFHLEVBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsaUJBQWlCLENBQUMsYUFBYSxFQUFFLElBQUksRUFBRSxTQUFTLElBQUksTUFBTSxFQUFFLFdBQVcsRUFBRSxrQkFBa0IsQ0FBQyxDQUFDO1FBQ2xHLE9BQU8sYUFBYSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCw2REFBNkQ7SUFDN0QsaUJBQWlCLENBQUMsSUFBUyxFQUFFLFdBQTRCLEVBQUUsU0FBaUIsRUFBRSxXQUFpQixFQUFFLGtCQUE0QjtRQUMzSCxJQUFJLENBQUMsV0FBVyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQzFDLE9BQU87UUFDVCxDQUFDO1FBRUQsSUFBSSxXQUFXLFlBQVksd0JBQXdCLEVBQUUsQ0FBQztZQUNwRCxNQUFNLEVBQUUsR0FBUSxXQUFXLENBQUMscUJBQXFCLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLHFCQUFxQixDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7WUFDL0gsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDO2dCQUNSLE9BQU87WUFDVCxDQUFDO1lBRUQsSUFBSSxFQUFFLENBQUMsY0FBYyxDQUFDLGFBQWEsS0FBSyxJQUFJLEVBQUUsQ0FBQztnQkFDN0MsMEhBQTBIO2dCQUMxSCxJQUFJLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLGNBQWMsRUFBRSxDQUFDLGtCQUFrQixDQUFDLENBQUM7WUFDakcsQ0FBQztpQkFBTSxJQUFJLEVBQUUsQ0FBQyxLQUFLLEtBQUssU0FBUyxFQUFFLENBQUM7Z0JBQ2xDLE1BQU0sR0FBRyxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUM7Z0JBRXJCLFFBQVEsU0FBUyxFQUFFLENBQUM7b0JBQ2xCLEtBQUssU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7d0JBQ3RCLElBQUksR0FBRyxLQUFLLElBQUksRUFBRSxDQUFDOzRCQUNqQixJQUFJLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUMsa0JBQWtCLENBQUMsQ0FBQzt3QkFDakcsQ0FBQzt3QkFDRCxNQUFNO29CQUNSLENBQUM7b0JBQ0QsS0FBSyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQzt3QkFDdEIsSUFBSSxHQUFHLEtBQUssSUFBSSxFQUFFLENBQUM7NEJBQ2pCLElBQUksQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxFQUFFLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO3dCQUNqRyxDQUFDO3dCQUNELE1BQU07b0JBQ1IsQ0FBQztvQkFDRCxLQUFLLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO3dCQUNwQiw2RUFBNkU7d0JBQzdFLDBGQUEwRjt3QkFDMUYsNEZBQTRGO3dCQUM1RixJQUFJLEdBQUcsS0FBSyxJQUFJLElBQUksQ0FBQyxXQUFXLElBQUksV0FBVyxDQUFDLEVBQUUsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEtBQUssU0FBUyxDQUFDLEVBQUUsQ0FBQzs0QkFDdkYsc0NBQXNDOzRCQUN0QyxJQUFJLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUMsa0JBQWtCLENBQUMsQ0FBQzt3QkFDakcsQ0FBQzt3QkFDRCxNQUFNO29CQUNSLENBQUM7Z0JBQ0gsQ0FBQztZQUNILENBQUM7aUJBQU0sSUFBSSxFQUFFLENBQUMsY0FBYyxDQUFDLElBQUksS0FBSyxTQUFTLEVBQUUsQ0FBQztnQkFDaEQsMEZBQTBGO2dCQUMxRiwwREFBMEQ7Z0JBQzFELElBQUksQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxFQUFFLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1lBQ2xHLENBQUM7UUFDSCxDQUFDO2FBQU0sQ0FBQztZQUNOLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFO2dCQUN2RCxNQUFNLGdCQUFnQixHQUFvQixXQUFXLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDO2dCQUMzRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLGdCQUFnQixFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsa0JBQWtCLENBQUMsQ0FBQztZQUM3RixDQUFDLENBQUMsQ0FBQztRQUNMLENBQUM7SUFDSCxDQUFDO0lBRUQsYUFBYSxDQUFDLEdBQVcsRUFBRSxLQUFjLEVBQUUsSUFBNkIsRUFBRSxXQUFnQixFQUFFLGtCQUEyQjtRQUNySCxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDO1FBRWxCLElBQUksa0JBQWtCLElBQUksV0FBVyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQy9DLElBQUksV0FBVyxDQUFDLGFBQWEsS0FBSyxxQkFBcUIsRUFBRSxDQUFDO2dCQUN4RCxJQUFJLENBQUMsR0FBRyxHQUFHLFFBQVEsQ0FBQyxHQUFHLFdBQVcsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBVSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDM0UsQ0FBQztZQUNELCtEQUErRDtZQUMvRCxxRkFBcUY7WUFDckYsSUFBSTtRQUNOLENBQUM7SUFDSCxDQUFDOytHQXZIVSxpQkFBaUI7bUhBQWpCLGlCQUFpQjs7NEZBQWpCLGlCQUFpQjtrQkFEN0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNpdHVhdGlvbiwgWXV2VXNlciB9IGZyb20gJ0B5dXV2aXMvY2xpZW50LWNvcmUnO1xuXG5pbXBvcnQgeyBJT2JqZWN0Rm9ybUVsZW1lbnRFeHRlbnNpb24sIE9iamVjdEZvcm1FbGVtZW50RXh0ZW5zaW9uIH0gZnJvbSAnLi9vYmplY3QtZm9ybS1leHRlbnNpb24uaW50ZXJmYWNlJztcbmltcG9ydCB7IE9iamVjdEZvcm1Db250cm9sV3JhcHBlciwgT2JqZWN0Rm9ybU1vZGVsIH0gZnJvbSAnLi9vYmplY3QtZm9ybS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgT2JqZWN0Rm9ybUdyb3VwIH0gZnJvbSAnLi9vYmplY3QtZm9ybS5tb2RlbCc7XG5pbXBvcnQgeyBPYmplY3RGb3JtVXRpbHMgfSBmcm9tICcuL29iamVjdC1mb3JtLnV0aWxzJztcblxuLyoqXG4gKiBAaWdub3JlXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBPYmplY3RGb3JtU2VydmljZSB7XG4gICNmb3JtRXh0ZW5zaW9uczogSU9iamVjdEZvcm1FbGVtZW50RXh0ZW5zaW9uW10gPSBbXTtcblxuICBzZXRFbGVtZW50RXh0ZW5zaW9ucyhmb3JtRXh0ZW5zaW9uczogSU9iamVjdEZvcm1FbGVtZW50RXh0ZW5zaW9uW10pIHtcbiAgICB0aGlzLiNmb3JtRXh0ZW5zaW9ucyA9IGZvcm1FeHRlbnNpb25zO1xuICB9XG5cbiAgZ2V0RWxlbWVudEV4dGVuc2lvbnMocHJvcGVydHlOYW1lOiBzdHJpbmcpOiBUeXBlPE9iamVjdEZvcm1FbGVtZW50RXh0ZW5zaW9uPltdIHtcbiAgICByZXR1cm4gdGhpcy4jZm9ybUV4dGVuc2lvbnMuZmlsdGVyKChleHQpID0+IGV4dC5wcm9wZXJ0eSA9PT0gcHJvcGVydHlOYW1lKS5tYXAoKGV4dCkgPT4gZXh0LmNtcCk7XG4gIH1cblxuICAvKipcbiAgICogQ29udmVydHMgYSBmb3JtIGVsZW1lbnQgb2JqZWN0IHRvIGFuIE9iamVjdEZvcm1Db250cm9sV3JhcHBlciB3aGljaCB0aGVuIGNhbiBiZSB1c2VkIHRvXG4gICAqIHJlbmRlciBhIGZyb20gY29udHJvbC4gUmVzdWx0IGNhbiBiZSB1c2VkIGFzIGlucHV0IGZvciBGb3JtRWxlbWVudENvbXBvbmVudC5cbiAgICpcbiAgICogQHBhcmFtIGVsZW1lbnQgLSB0aGUgZWxlbWVudCBvYmplY3Qgb3IgYSBqc29uIHN0cmluZ1xuICAgKiBAcGFyYW0gc2l0dWF0aW9uIC0gb3B0aW9uYWwgcHJvcGVydHkgdG8gc2V0IHVwIGEgZm9ybSBzaXR1YXRpb24gZm9yIHRoZSBjb250cm9sIChkZWZhdWx0IGlzIEVESVQpXG4gICAqIEByZXR1cm4gdGhlIGNvbnZlcnRlZCBPYmplY3RGb3JtQ29udHJvbFdyYXBwZXIgb3IgbnVsbCBpbiBjYXNlIG9mIGFuIGVycm9yXG4gICAqL1xuICBlbGVtZW50VG9Gb3JtQ29udHJvbChlbGVtZW50OiBhbnksIHNpdHVhdGlvbj86IHN0cmluZyk6IE9iamVjdEZvcm1Db250cm9sV3JhcHBlciB8IG51bGwge1xuICAgIGxldCBmb3JtRWxlbWVudDtcbiAgICBpZiAodHlwZW9mIGVsZW1lbnQgPT09ICdzdHJpbmcnKSB7XG4gICAgICB0cnkge1xuICAgICAgICBmb3JtRWxlbWVudCA9IEpTT04ucGFyc2UoZWxlbWVudCk7XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoJ1VuYWJsZSB0byBwYXJzZSBmb3JtIGVsZW1lbnQgZnJvbSBqc29uICcsIGZvcm1FbGVtZW50KTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgZm9ybUVsZW1lbnQgPSBlbGVtZW50O1xuICAgIH1cbiAgICByZXR1cm4gZm9ybUVsZW1lbnQgPyBPYmplY3RGb3JtVXRpbHMuZWxlbWVudFRvRm9ybUNvbnRyb2woZWxlbWVudCwgc2l0dWF0aW9uKSA6IG51bGw7XG4gIH1cblxuICAvKipcbiAgICogRXh0cmFjdCBkYXRhIGZyb20gYW4gb2JqZWN0IGZvcm0gYmFzZWQgb24gc2l0dWF0aW9uLlxuICAgKlxuICAgKiBAcGFyYW0gZm9ybSAtIGZvcm0gdG8gZXh0cmFjdCBkYXRhIGZyb21cbiAgICogQHBhcmFtIHNpdHVhdGlvbiAtIGZvcm0gc2l0dWF0aW9uXG4gICAqIEBwYXJhbSBbaW5pdGlhbERhdGFdIC0gb3B0aW9uYWwgZm9ybSBkYXRhIHRvIG1hdGNoIHRoZSBjdXJyZW50IHZhbHVlcyBhZ2FpbnN0XG4gICAqIFRoaXMgaXMgcmVxdWlyZWQgZm9yIGVkaXRpZyBpbmRleGRhdGEgKEVESVQgc2l0dWF0aW9uKSwgYmVjYXVzZSB3ZSBoYXZlIHRvIGNvbXBhcmUgbmV3IHZhbHVlc1xuICAgKiBhZ2FpbnN0IHRoZSBpbml0aWFsIHZhbHVlcy4gSWYgYSBwcm9wZXJ0eSB0aGF0IGlzIGNvbnRhaW5lZCBpbiB0aGUgZm9ybXMgaW5pdGlhbCBkYXRhIGlzIHJlbW92ZWRcbiAgICogKGUuZy4gc2V0IHRvIG51bGwpIHRoZW4gd2UgaGF2ZSB0byBzZXQgdGhpcyBudWxsIHZhbHVlLCBiZWNhdXNlIG90aGVyd2lzZSB0aGUgc2VydmVyIHdvdWxkXG4gICAqIGlnbm9yZSB0aGUgY2hhbmdlcy5cbiAgICogQHBhcmFtIGlzVGFibGVSb3dFZGl0Rm9ybSBGbGFnIGluZGljYXRpbmcgdGhhdCB0aGUgcHJvdmlkZWQgZm9ybSBpcyBhbiBpbmxpbmUgZm9ybSB1c2VkIGJ5XG4gICAqIGEgZm9ybXMgdGFibGUgZWxlbWVudCBmb3IgZWRpdGluZyByb3dzLiBUaG9zZSBuZWVkIGEgc3BlY2lhbCBoYW5kbGluZy5cbiAgICogQHJldHVybiBleHRyYWN0ZWQgZGF0YSBhcyBvYmplY3RcbiAgICovXG4gIGV4dHJhY3RGb3JtRGF0YShmb3JtOiBPYmplY3RGb3JtR3JvdXAsIHNpdHVhdGlvbjogc3RyaW5nLCBpbml0aWFsRGF0YT86IGFueSwgaXNUYWJsZVJvd0VkaXRGb3JtPzogYm9vbGVhbikge1xuICAgIGNvbnN0IGV4dHJhY3RlZERhdGEgPSB7fTtcbiAgICB0aGlzLiNnZXRFbGVtZW50VmFsdWVzKGV4dHJhY3RlZERhdGEsIGZvcm0sIHNpdHVhdGlvbiB8fCAnRURJVCcsIGluaXRpYWxEYXRhLCBpc1RhYmxlUm93RWRpdEZvcm0pO1xuICAgIHJldHVybiBleHRyYWN0ZWREYXRhO1xuICB9XG5cbiAgLy8gUmVjdXJzaXZlIG1ldGhvZCB0byBnZXQgdGhlIHZhbHVlcyBmcm9tIGVhY2ggZm9ybSBjb250cm9sLlxuICAjZ2V0RWxlbWVudFZhbHVlcyhkYXRhOiBhbnksIGZvcm1Db250cm9sOiBPYmplY3RGb3JtTW9kZWwsIHNpdHVhdGlvbjogc3RyaW5nLCBpbml0aWFsRGF0YT86IGFueSwgaXNUYWJsZVJvd0VkaXRGb3JtPzogYm9vbGVhbikge1xuICAgIGlmICghZm9ybUNvbnRyb2wgfHwgIWZvcm1Db250cm9sLmNvbnRyb2xzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKGZvcm1Db250cm9sIGluc3RhbmNlb2YgT2JqZWN0Rm9ybUNvbnRyb2xXcmFwcGVyKSB7XG4gICAgICBjb25zdCBmYzogYW55ID0gZm9ybUNvbnRyb2wuX2VvRm9ybUNvbnRyb2xXcmFwcGVyID8gZm9ybUNvbnRyb2wuY29udHJvbHNbZm9ybUNvbnRyb2wuX2VvRm9ybUNvbnRyb2xXcmFwcGVyLmNvbnRyb2xOYW1lXSA6IG51bGw7XG4gICAgICBpZiAoIWZjKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgaWYgKGZjLl9lb0Zvcm1FbGVtZW50LmlzTm90U2V0VmFsdWUgPT09IHRydWUpIHtcbiAgICAgICAgLy8gZm9ybSBlbGVtZW50cyBtYXkgZXhwbGljaXRseSBzZXQgdG8gaGF2ZSBOVUxMIHZhbHVlIChlLmcuIGZyb20gU2VhcmNoIGZvcm0gaWYgdmFsdWVzIGFyZSByZXF1ZXN0ZWQgdGhhdCBoYXZlIG5vIHZhbHVlcylcbiAgICAgICAgdGhpcy4jc2V0RGF0YVZhbHVlKGZjLl9lb0Zvcm1FbGVtZW50Lm5hbWUsIG51bGwsIGRhdGEsIGZjLl9lb0Zvcm1FbGVtZW50LCAhaXNUYWJsZVJvd0VkaXRGb3JtKTtcbiAgICAgIH0gZWxzZSBpZiAoZmMudmFsdWUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBjb25zdCB2YWwgPSBmYy52YWx1ZTtcblxuICAgICAgICBzd2l0Y2ggKHNpdHVhdGlvbikge1xuICAgICAgICAgIGNhc2UgU2l0dWF0aW9uLlNFQVJDSDoge1xuICAgICAgICAgICAgaWYgKHZhbCAhPT0gbnVsbCkge1xuICAgICAgICAgICAgICB0aGlzLiNzZXREYXRhVmFsdWUoZmMuX2VvRm9ybUVsZW1lbnQubmFtZSwgdmFsLCBkYXRhLCBmYy5fZW9Gb3JtRWxlbWVudCwgISFpc1RhYmxlUm93RWRpdEZvcm0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgfVxuICAgICAgICAgIGNhc2UgU2l0dWF0aW9uLkNSRUFURToge1xuICAgICAgICAgICAgaWYgKHZhbCAhPT0gbnVsbCkge1xuICAgICAgICAgICAgICB0aGlzLiNzZXREYXRhVmFsdWUoZmMuX2VvRm9ybUVsZW1lbnQubmFtZSwgdmFsLCBkYXRhLCBmYy5fZW9Gb3JtRWxlbWVudCwgISFpc1RhYmxlUm93RWRpdEZvcm0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgfVxuICAgICAgICAgIGNhc2UgU2l0dWF0aW9uLkVESVQ6IHtcbiAgICAgICAgICAgIC8vIGluIGVkaXQgc2l0dWF0aW9uIHdlIGhhdmUgdG8gY29tcGFyZSBuZXcgdmFsdWVzIGFnYWluc3QgdGhlIGluaXRpYWwgdmFsdWVzXG4gICAgICAgICAgICAvLyBJZiBhIHByb3BlcnR5IHRoYXQgaXMgY29udGFpbmVkIGluIHRoZSBmb3JtcyBpbml0aWFsIGRhdGEgaXMgcmVtb3ZlZCAoZS5nLiBzZXQgdG8gbnVsbClcbiAgICAgICAgICAgIC8vIHRoZW4gd2UgaGF2ZSB0byBzZXQgdGhpcyBudWxsIHZhbHVlLCBiZWNhdXNlIG90aGVyd2lzZSB0aGUgc2VydmVyIHdpbGwgaWdub3JlIHRoZSBjaGFuZ2VzXG4gICAgICAgICAgICBpZiAodmFsICE9PSBudWxsIHx8IChpbml0aWFsRGF0YSAmJiBpbml0aWFsRGF0YVtmYy5fZW9Gb3JtRWxlbWVudC5uYW1lXSAhPT0gdW5kZWZpbmVkKSkge1xuICAgICAgICAgICAgICAvLyBkYXRhW2ZjLl9lb0Zvcm1FbGVtZW50Lm5hbWVdID0gdmFsO1xuICAgICAgICAgICAgICB0aGlzLiNzZXREYXRhVmFsdWUoZmMuX2VvRm9ybUVsZW1lbnQubmFtZSwgdmFsLCBkYXRhLCBmYy5fZW9Gb3JtRWxlbWVudCwgISFpc1RhYmxlUm93RWRpdEZvcm0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IGVsc2UgaWYgKGZjLl9lb0Zvcm1FbGVtZW50LnR5cGUgPT09ICdib29sZWFuJykge1xuICAgICAgICAvLyB0cmktc3RhdGUgYm9vbGVhbiBmaWVsZHMgY291bGQgaGF2ZSBhIHZhbHVlIG9mICd1bmRlZmluZWQnIHRoYXQgbmVlZHMgdG8gYmUgdHJhbnNmb3JtZWRcbiAgICAgICAgLy8gaW50byAnbnVsbCcgdG8gYmUgY29ycmVjdGx5IGJlIHByb2Nlc3NlZCBieSB0aGUgYmFja2VuZFxuICAgICAgICB0aGlzLiNzZXREYXRhVmFsdWUoZmMuX2VvRm9ybUVsZW1lbnQubmFtZSwgbnVsbCwgZGF0YSwgZmMuX2VvRm9ybUVsZW1lbnQsICEhaXNUYWJsZVJvd0VkaXRGb3JtKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgT2JqZWN0LmtleXMoZm9ybUNvbnRyb2wuY29udHJvbHMpLmZvckVhY2goKGNvbnRyb2xLZXkpID0+IHtcbiAgICAgICAgY29uc3QgZm9ybUNvbnRyb2xLZXllZCA9IDxPYmplY3RGb3JtR3JvdXA+Zm9ybUNvbnRyb2wuY29udHJvbHNbY29udHJvbEtleV07XG4gICAgICAgIHRoaXMuI2dldEVsZW1lbnRWYWx1ZXMoZGF0YSwgZm9ybUNvbnRyb2xLZXllZCwgc2l0dWF0aW9uLCBpbml0aWFsRGF0YSwgaXNUYWJsZVJvd0VkaXRGb3JtKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gICNzZXREYXRhVmFsdWUoa2V5OiBzdHJpbmcsIHZhbHVlOiB1bmtub3duLCBkYXRhOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiwgZm9ybUVsZW1lbnQ6IGFueSwgaXNUYWJsZVJvd0VkaXRGb3JtOiBib29sZWFuKSB7XG4gICAgZGF0YVtrZXldID0gdmFsdWU7XG5cbiAgICBpZiAoaXNUYWJsZVJvd0VkaXRGb3JtICYmIGZvcm1FbGVtZW50LmRhdGFNZXRhKSB7XG4gICAgICBpZiAoZm9ybUVsZW1lbnQuX2ludGVybmFsVHlwZSA9PT0gJ3N0cmluZzpvcmdhbml6YXRpb24nKSB7XG4gICAgICAgIGRhdGFba2V5ICsgJ190aXRsZSddID0gZm9ybUVsZW1lbnQuZGF0YU1ldGEubWFwKChkOiBZdXZVc2VyKSA9PiBkLnRpdGxlKTtcbiAgICAgIH1cbiAgICAgIC8vIGVsc2UgaWYgKGZvcm1FbGVtZW50Ll9pbnRlcm5hbFR5cGUgPT09ICdzdHJpbmc6cmVmZXJlbmNlJykge1xuICAgICAgLy8gICBkYXRhW2tleSArICdfdGl0bGUnXSA9IGZvcm1FbGVtZW50LmRhdGFNZXRhLm1hcCgoZTogUmVmZXJlbmNlRW50cnkpID0+IGUudGl0bGUpO1xuICAgICAgLy8gfVxuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
import { Classification, ContentStreamField, Situation } from '@yuuvis/client-core';
|
|
2
|
-
import { ObjectFormControlWrapper } from './object-form.interface';
|
|
3
|
-
import { ObjectFormControl } from './object-form.model';
|
|
4
|
-
import { FormValidation } from './object-form.validation';
|
|
5
|
-
/**
|
|
6
|
-
* Provides a rendering of form control in `ObjectFormComponent`, `QuickSearchComponent` so wie `SearchFilterFormComponent`.
|
|
7
|
-
*/
|
|
8
|
-
export class ObjectFormUtils {
|
|
9
|
-
/**
|
|
10
|
-
* Converts a form element object to an ObjectFormControlWrapper which then can be used to
|
|
11
|
-
* render a from control. Result can be used as input for FormElementComponent.
|
|
12
|
-
*
|
|
13
|
-
* @param element - the element object or a json string
|
|
14
|
-
* @param situation - optional property to set up a form situation for the control (default is EDIT)
|
|
15
|
-
* @return the converted ObjectFormControlWrapper or null in case of an error
|
|
16
|
-
*/
|
|
17
|
-
static elementToFormControl(formElement, situation) {
|
|
18
|
-
// Create the ObjectFormControlWrapper
|
|
19
|
-
const wrapper = new ObjectFormControlWrapper({});
|
|
20
|
-
const formSituation = situation ? situation : Situation.EDIT;
|
|
21
|
-
wrapper._eoFormControlWrapper = {
|
|
22
|
-
controlName: formElement.name,
|
|
23
|
-
situation: formSituation
|
|
24
|
-
};
|
|
25
|
-
// create the actual form control
|
|
26
|
-
const controlDisabled = !!formElement.readonly;
|
|
27
|
-
const formControl = new ObjectFormControl({
|
|
28
|
-
value: formElement.value,
|
|
29
|
-
disabled: controlDisabled
|
|
30
|
-
}, FormValidation.getValidators(formElement, formSituation));
|
|
31
|
-
// Form elements in SEARCH situation may arrive with a value set to NULL (explicit search for
|
|
32
|
-
// fields that are NOT set). In that case we need to prepare the form control
|
|
33
|
-
if (formSituation === Situation.SEARCH && formElement.value === null) {
|
|
34
|
-
formElement.isNotSetValue = true;
|
|
35
|
-
}
|
|
36
|
-
ObjectFormUtils.updateFormElement(formElement);
|
|
37
|
-
formControl._eoFormElement = formElement;
|
|
38
|
-
wrapper.addControl(formElement.name, formControl);
|
|
39
|
-
return wrapper;
|
|
40
|
-
}
|
|
41
|
-
/**
|
|
42
|
-
* Update a form element after change a form element object.
|
|
43
|
-
* @param formElement - the form element object
|
|
44
|
-
*/
|
|
45
|
-
static updateFormElement(formElement) {
|
|
46
|
-
if (formElement.type === 'decimal' && !formElement.scale) {
|
|
47
|
-
formElement.scale = 2;
|
|
48
|
-
}
|
|
49
|
-
if (formElement.type === 'integer' && formElement.id === ContentStreamField.LENGTH) {
|
|
50
|
-
formElement.classifications = [Classification.NUMBER_FILESIZE];
|
|
51
|
-
}
|
|
52
|
-
return formElement;
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JqZWN0LWZvcm0udXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3l1dXZpcy9jbGllbnQtZnJhbWV3b3JrL29iamVjdC1mb3JtL3NyYy9saWIvb2JqZWN0LWZvcm0udXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxrQkFBa0IsRUFBRSxTQUFTLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNwRixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFMUQ7O0dBRUc7QUFFSCxNQUFNLE9BQU8sZUFBZTtJQUMxQjs7Ozs7OztPQU9HO0lBQ0gsTUFBTSxDQUFDLG9CQUFvQixDQUFDLFdBQWdCLEVBQUUsU0FBa0I7UUFDOUQsc0NBQXNDO1FBQ3RDLE1BQU0sT0FBTyxHQUFHLElBQUksd0JBQXdCLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDakQsTUFBTSxhQUFhLEdBQUcsU0FBUyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUM7UUFFN0QsT0FBTyxDQUFDLHFCQUFxQixHQUFHO1lBQzlCLFdBQVcsRUFBRSxXQUFXLENBQUMsSUFBSTtZQUM3QixTQUFTLEVBQUUsYUFBYTtTQUN6QixDQUFDO1FBRUYsaUNBQWlDO1FBQ2pDLE1BQU0sZUFBZSxHQUFHLENBQUMsQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDO1FBQy9DLE1BQU0sV0FBVyxHQUFHLElBQUksaUJBQWlCLENBQ3ZDO1lBQ0UsS0FBSyxFQUFFLFdBQVcsQ0FBQyxLQUFLO1lBQ3hCLFFBQVEsRUFBRSxlQUFlO1NBQzFCLEVBQ0QsY0FBYyxDQUFDLGFBQWEsQ0FBQyxXQUFXLEVBQUUsYUFBYSxDQUFDLENBQ3pELENBQUM7UUFFRiw2RkFBNkY7UUFDN0YsNkVBQTZFO1FBQzdFLElBQUksYUFBYSxLQUFLLFNBQVMsQ0FBQyxNQUFNLElBQUksV0FBVyxDQUFDLEtBQUssS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUNyRSxXQUFXLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQztRQUNuQyxDQUFDO1FBRUQsZUFBZSxDQUFDLGlCQUFpQixDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBRS9DLFdBQVcsQ0FBQyxjQUFjLEdBQUcsV0FBVyxDQUFDO1FBQ3pDLE9BQU8sQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxXQUFXLENBQUMsQ0FBQztRQUVsRCxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBQ0Q7OztPQUdHO0lBQ0gsTUFBTSxDQUFDLGlCQUFpQixDQUFDLFdBQWdCO1FBQ3ZDLElBQUksV0FBVyxDQUFDLElBQUksS0FBSyxTQUFTLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDekQsV0FBVyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUM7UUFDeEIsQ0FBQztRQUVELElBQUksV0FBVyxDQUFDLElBQUksS0FBSyxTQUFTLElBQUksV0FBVyxDQUFDLEVBQUUsS0FBSyxrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNuRixXQUFXLENBQUMsZUFBZSxHQUFHLENBQUMsY0FBYyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQ2pFLENBQUM7UUFDRCxPQUFPLFdBQVcsQ0FBQztJQUNyQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDbGFzc2lmaWNhdGlvbiwgQ29udGVudFN0cmVhbUZpZWxkLCBTaXR1YXRpb24gfSBmcm9tICdAeXV1dmlzL2NsaWVudC1jb3JlJztcbmltcG9ydCB7IE9iamVjdEZvcm1Db250cm9sV3JhcHBlciB9IGZyb20gJy4vb2JqZWN0LWZvcm0uaW50ZXJmYWNlJztcbmltcG9ydCB7IE9iamVjdEZvcm1Db250cm9sIH0gZnJvbSAnLi9vYmplY3QtZm9ybS5tb2RlbCc7XG5pbXBvcnQgeyBGb3JtVmFsaWRhdGlvbiB9IGZyb20gJy4vb2JqZWN0LWZvcm0udmFsaWRhdGlvbic7XG5cbi8qKlxuICogUHJvdmlkZXMgYSByZW5kZXJpbmcgb2YgZm9ybSBjb250cm9sIGluIGBPYmplY3RGb3JtQ29tcG9uZW50YCwgYFF1aWNrU2VhcmNoQ29tcG9uZW50YCBzbyB3aWUgYFNlYXJjaEZpbHRlckZvcm1Db21wb25lbnRgLlxuICovXG5cbmV4cG9ydCBjbGFzcyBPYmplY3RGb3JtVXRpbHMge1xuICAvKipcbiAgICogQ29udmVydHMgYSBmb3JtIGVsZW1lbnQgb2JqZWN0IHRvIGFuIE9iamVjdEZvcm1Db250cm9sV3JhcHBlciB3aGljaCB0aGVuIGNhbiBiZSB1c2VkIHRvXG4gICAqIHJlbmRlciBhIGZyb20gY29udHJvbC4gUmVzdWx0IGNhbiBiZSB1c2VkIGFzIGlucHV0IGZvciBGb3JtRWxlbWVudENvbXBvbmVudC5cbiAgICpcbiAgICogQHBhcmFtIGVsZW1lbnQgLSB0aGUgZWxlbWVudCBvYmplY3Qgb3IgYSBqc29uIHN0cmluZ1xuICAgKiBAcGFyYW0gc2l0dWF0aW9uIC0gb3B0aW9uYWwgcHJvcGVydHkgdG8gc2V0IHVwIGEgZm9ybSBzaXR1YXRpb24gZm9yIHRoZSBjb250cm9sIChkZWZhdWx0IGlzIEVESVQpXG4gICAqIEByZXR1cm4gdGhlIGNvbnZlcnRlZCBPYmplY3RGb3JtQ29udHJvbFdyYXBwZXIgb3IgbnVsbCBpbiBjYXNlIG9mIGFuIGVycm9yXG4gICAqL1xuICBzdGF0aWMgZWxlbWVudFRvRm9ybUNvbnRyb2woZm9ybUVsZW1lbnQ6IGFueSwgc2l0dWF0aW9uPzogc3RyaW5nKTogT2JqZWN0Rm9ybUNvbnRyb2xXcmFwcGVyIHtcbiAgICAvLyBDcmVhdGUgdGhlIE9iamVjdEZvcm1Db250cm9sV3JhcHBlclxuICAgIGNvbnN0IHdyYXBwZXIgPSBuZXcgT2JqZWN0Rm9ybUNvbnRyb2xXcmFwcGVyKHt9KTtcbiAgICBjb25zdCBmb3JtU2l0dWF0aW9uID0gc2l0dWF0aW9uID8gc2l0dWF0aW9uIDogU2l0dWF0aW9uLkVESVQ7XG5cbiAgICB3cmFwcGVyLl9lb0Zvcm1Db250cm9sV3JhcHBlciA9IHtcbiAgICAgIGNvbnRyb2xOYW1lOiBmb3JtRWxlbWVudC5uYW1lLFxuICAgICAgc2l0dWF0aW9uOiBmb3JtU2l0dWF0aW9uXG4gICAgfTtcblxuICAgIC8vIGNyZWF0ZSB0aGUgYWN0dWFsIGZvcm0gY29udHJvbFxuICAgIGNvbnN0IGNvbnRyb2xEaXNhYmxlZCA9ICEhZm9ybUVsZW1lbnQucmVhZG9ubHk7XG4gICAgY29uc3QgZm9ybUNvbnRyb2wgPSBuZXcgT2JqZWN0Rm9ybUNvbnRyb2woXG4gICAgICB7XG4gICAgICAgIHZhbHVlOiBmb3JtRWxlbWVudC52YWx1ZSxcbiAgICAgICAgZGlzYWJsZWQ6IGNvbnRyb2xEaXNhYmxlZFxuICAgICAgfSxcbiAgICAgIEZvcm1WYWxpZGF0aW9uLmdldFZhbGlkYXRvcnMoZm9ybUVsZW1lbnQsIGZvcm1TaXR1YXRpb24pXG4gICAgKTtcblxuICAgIC8vIEZvcm0gZWxlbWVudHMgaW4gU0VBUkNIIHNpdHVhdGlvbiBtYXkgYXJyaXZlIHdpdGggYSB2YWx1ZSBzZXQgdG8gTlVMTCAoZXhwbGljaXQgc2VhcmNoIGZvclxuICAgIC8vIGZpZWxkcyB0aGF0IGFyZSBOT1Qgc2V0KS4gSW4gdGhhdCBjYXNlIHdlIG5lZWQgdG8gcHJlcGFyZSB0aGUgZm9ybSBjb250cm9sXG4gICAgaWYgKGZvcm1TaXR1YXRpb24gPT09IFNpdHVhdGlvbi5TRUFSQ0ggJiYgZm9ybUVsZW1lbnQudmFsdWUgPT09IG51bGwpIHtcbiAgICAgIGZvcm1FbGVtZW50LmlzTm90U2V0VmFsdWUgPSB0cnVlO1xuICAgIH1cblxuICAgIE9iamVjdEZvcm1VdGlscy51cGRhdGVGb3JtRWxlbWVudChmb3JtRWxlbWVudCk7XG5cbiAgICBmb3JtQ29udHJvbC5fZW9Gb3JtRWxlbWVudCA9IGZvcm1FbGVtZW50O1xuICAgIHdyYXBwZXIuYWRkQ29udHJvbChmb3JtRWxlbWVudC5uYW1lLCBmb3JtQ29udHJvbCk7XG5cbiAgICByZXR1cm4gd3JhcHBlcjtcbiAgfVxuICAvKipcbiAgICogVXBkYXRlIGEgZm9ybSBlbGVtZW50IGFmdGVyIGNoYW5nZSBhIGZvcm0gZWxlbWVudCBvYmplY3QuXG4gICAqIEBwYXJhbSBmb3JtRWxlbWVudCAtIHRoZSBmb3JtIGVsZW1lbnQgb2JqZWN0XG4gICAqL1xuICBzdGF0aWMgdXBkYXRlRm9ybUVsZW1lbnQoZm9ybUVsZW1lbnQ6IGFueSkge1xuICAgIGlmIChmb3JtRWxlbWVudC50eXBlID09PSAnZGVjaW1hbCcgJiYgIWZvcm1FbGVtZW50LnNjYWxlKSB7XG4gICAgICBmb3JtRWxlbWVudC5zY2FsZSA9IDI7XG4gICAgfVxuXG4gICAgaWYgKGZvcm1FbGVtZW50LnR5cGUgPT09ICdpbnRlZ2VyJyAmJiBmb3JtRWxlbWVudC5pZCA9PT0gQ29udGVudFN0cmVhbUZpZWxkLkxFTkdUSCkge1xuICAgICAgZm9ybUVsZW1lbnQuY2xhc3NpZmljYXRpb25zID0gW0NsYXNzaWZpY2F0aW9uLk5VTUJFUl9GSUxFU0laRV07XG4gICAgfVxuICAgIHJldHVybiBmb3JtRWxlbWVudDtcbiAgfVxufVxuIl19
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import { Validators } from '@angular/forms';
|
|
2
|
-
import { Situation } from '@yuuvis/client-core';
|
|
3
|
-
/**
|
|
4
|
-
* @ignore
|
|
5
|
-
* Custom validation class.
|
|
6
|
-
*/
|
|
7
|
-
export class FormValidation {
|
|
8
|
-
/**
|
|
9
|
-
* Build validators for the given form element to be attached to
|
|
10
|
-
* a reactive formControl.
|
|
11
|
-
*
|
|
12
|
-
* @param formElement - form element object
|
|
13
|
-
* @param situation - form situation to fetch validators for
|
|
14
|
-
*/
|
|
15
|
-
static getValidators(formElement, situation) {
|
|
16
|
-
const elmValidators = [];
|
|
17
|
-
const { required, regex } = formElement;
|
|
18
|
-
// apply situation based validations
|
|
19
|
-
switch (situation) {
|
|
20
|
-
case Situation.SEARCH: {
|
|
21
|
-
// TODO: implement general validators for SEARCH situation
|
|
22
|
-
break;
|
|
23
|
-
}
|
|
24
|
-
default: {
|
|
25
|
-
if (required) {
|
|
26
|
-
elmValidators.push(Validators.required);
|
|
27
|
-
}
|
|
28
|
-
if (regex && !formElement.multiselect) {
|
|
29
|
-
elmValidators.push(Validators.pattern(regex));
|
|
30
|
-
}
|
|
31
|
-
break;
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
return elmValidators;
|
|
35
|
-
}
|
|
36
|
-
/**
|
|
37
|
-
*
|
|
38
|
-
* @param control - from object control
|
|
39
|
-
* @returns Validation object {eoformScript: {valid: boolean}} or null
|
|
40
|
-
*/
|
|
41
|
-
static customScriptingValidation() {
|
|
42
|
-
return (control) => {
|
|
43
|
-
const ctrl = control;
|
|
44
|
-
return ctrl._eoFormElement && ctrl._eoFormElement.error ? { eoformScript: { valid: false } } : null;
|
|
45
|
-
};
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JqZWN0LWZvcm0udmFsaWRhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMveXV1dmlzL2NsaWVudC1mcmFtZXdvcmsvb2JqZWN0LWZvcm0vc3JjL2xpYi9vYmplY3QtZm9ybS52YWxpZGF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZ0MsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFMUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2hEOzs7R0FHRztBQUNILE1BQU0sT0FBTyxjQUFjO0lBQ3pCOzs7Ozs7T0FNRztJQUNILE1BQU0sQ0FBQyxhQUFhLENBQUMsV0FBZ0IsRUFBRSxTQUFpQjtRQUN0RCxNQUFNLGFBQWEsR0FBa0IsRUFBRSxDQUFDO1FBQ3hDLE1BQU0sRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLEdBQUcsV0FBVyxDQUFDO1FBRXhDLG9DQUFvQztRQUNwQyxRQUFRLFNBQVMsRUFBRSxDQUFDO1lBQ2xCLEtBQUssU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7Z0JBQ3RCLDBEQUEwRDtnQkFDMUQsTUFBTTtZQUNSLENBQUM7WUFDRCxPQUFPLENBQUMsQ0FBQyxDQUFDO2dCQUNSLElBQUksUUFBUSxFQUFFLENBQUM7b0JBQ2IsYUFBYSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBQzFDLENBQUM7Z0JBQ0QsSUFBSSxLQUFLLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxFQUFFLENBQUM7b0JBQ3RDLGFBQWEsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO2dCQUNoRCxDQUFDO2dCQUNELE1BQU07WUFDUixDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sYUFBYSxDQUFDO0lBQ3ZCLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsTUFBTSxDQUFDLHlCQUF5QjtRQUM5QixPQUFPLENBQUMsT0FBd0IsRUFBRSxFQUFFO1lBQ2xDLE1BQU0sSUFBSSxHQUFHLE9BQTRCLENBQUM7WUFDMUMsT0FBTyxJQUFJLENBQUMsY0FBYyxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLFlBQVksRUFBRSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDdEcsQ0FBQyxDQUFDO0lBQ0osQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBWYWxpZGF0b3JGbiwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE9iamVjdEZvcm1Db250cm9sIH0gZnJvbSAnLi9vYmplY3QtZm9ybS5tb2RlbCc7XG5pbXBvcnQgeyBTaXR1YXRpb24gfSBmcm9tICdAeXV1dmlzL2NsaWVudC1jb3JlJztcbi8qKlxuICogQGlnbm9yZVxuICogQ3VzdG9tIHZhbGlkYXRpb24gY2xhc3MuXG4gKi9cbmV4cG9ydCBjbGFzcyBGb3JtVmFsaWRhdGlvbiB7XG4gIC8qKlxuICAgKiBCdWlsZCB2YWxpZGF0b3JzIGZvciB0aGUgZ2l2ZW4gZm9ybSBlbGVtZW50IHRvIGJlIGF0dGFjaGVkIHRvXG4gICAqIGEgcmVhY3RpdmUgZm9ybUNvbnRyb2wuXG4gICAqXG4gICAqIEBwYXJhbSBmb3JtRWxlbWVudCAtIGZvcm0gZWxlbWVudCBvYmplY3RcbiAgICogQHBhcmFtIHNpdHVhdGlvbiAtIGZvcm0gc2l0dWF0aW9uIHRvIGZldGNoIHZhbGlkYXRvcnMgZm9yXG4gICAqL1xuICBzdGF0aWMgZ2V0VmFsaWRhdG9ycyhmb3JtRWxlbWVudDogYW55LCBzaXR1YXRpb246IHN0cmluZyk6IFZhbGlkYXRvckZuW10ge1xuICAgIGNvbnN0IGVsbVZhbGlkYXRvcnM6IFZhbGlkYXRvckZuW10gPSBbXTtcbiAgICBjb25zdCB7IHJlcXVpcmVkLCByZWdleCB9ID0gZm9ybUVsZW1lbnQ7XG5cbiAgICAvLyBhcHBseSBzaXR1YXRpb24gYmFzZWQgdmFsaWRhdGlvbnNcbiAgICBzd2l0Y2ggKHNpdHVhdGlvbikge1xuICAgICAgY2FzZSBTaXR1YXRpb24uU0VBUkNIOiB7XG4gICAgICAgIC8vIFRPRE86IGltcGxlbWVudCBnZW5lcmFsIHZhbGlkYXRvcnMgZm9yIFNFQVJDSCBzaXR1YXRpb25cbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBkZWZhdWx0OiB7XG4gICAgICAgIGlmIChyZXF1aXJlZCkge1xuICAgICAgICAgIGVsbVZhbGlkYXRvcnMucHVzaChWYWxpZGF0b3JzLnJlcXVpcmVkKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAocmVnZXggJiYgIWZvcm1FbGVtZW50Lm11bHRpc2VsZWN0KSB7XG4gICAgICAgICAgZWxtVmFsaWRhdG9ycy5wdXNoKFZhbGlkYXRvcnMucGF0dGVybihyZWdleCkpO1xuICAgICAgICB9XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gZWxtVmFsaWRhdG9ycztcbiAgfVxuXG4gIC8qKlxuICAgKlxuICAgKiBAcGFyYW0gY29udHJvbCAtIGZyb20gb2JqZWN0IGNvbnRyb2xcbiAgICogQHJldHVybnMgVmFsaWRhdGlvbiBvYmplY3Qge2VvZm9ybVNjcmlwdDoge3ZhbGlkOiBib29sZWFufX0gb3IgbnVsbFxuICAgKi9cbiAgc3RhdGljIGN1c3RvbVNjcmlwdGluZ1ZhbGlkYXRpb24oKTogVmFsaWRhdG9yRm4ge1xuICAgIHJldHVybiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKSA9PiB7XG4gICAgICBjb25zdCBjdHJsID0gY29udHJvbCBhcyBPYmplY3RGb3JtQ29udHJvbDtcbiAgICAgIHJldHVybiBjdHJsLl9lb0Zvcm1FbGVtZW50ICYmIGN0cmwuX2VvRm9ybUVsZW1lbnQuZXJyb3IgPyB7IGVvZm9ybVNjcmlwdDogeyB2YWxpZDogZmFsc2UgfSB9IDogbnVsbDtcbiAgICB9O1xuICB9XG59XG4iXX0=
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Generated bundle index. Do not edit.
|
|
3
|
-
*/
|
|
4
|
-
export * from './index';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieXV1dmlzLWNsaWVudC1mcmFtZXdvcmstb2JqZWN0LWZvcm0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3l1dXZpcy9jbGllbnQtZnJhbWV3b3JrL29iamVjdC1mb3JtL3NyYy95dXV2aXMtY2xpZW50LWZyYW1ld29yay1vYmplY3QtZm9ybS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
export * from './lib/components';
|
|
2
|
-
export * from './lib/services/object-preview.service';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3l1dXZpcy9jbGllbnQtZnJhbWV3b3JrL29iamVjdC1wcmV2aWV3L3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsdUNBQXVDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL29iamVjdC1wcmV2aWV3LnNlcnZpY2UnO1xuIl19
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
export * from './object-preview/object-preview.component';
|
|
2
|
-
export * from './object-email-preview/object-email-preview.component';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3l1dXZpcy9jbGllbnQtZnJhbWV3b3JrL29iamVjdC1wcmV2aWV3L3NyYy9saWIvY29tcG9uZW50cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMsdURBQXVELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL29iamVjdC1wcmV2aWV3L29iamVjdC1wcmV2aWV3LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL29iamVjdC1lbWFpbC1wcmV2aWV3L29iamVjdC1lbWFpbC1wcmV2aWV3LmNvbXBvbmVudCc7XG4iXX0=
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
import { Component, computed, effect, inject, input, untracked } from '@angular/core';
|
|
2
|
-
import { MailComponent } from '@yuuvis/media-viewer';
|
|
3
|
-
import { ObjectPreviewService } from '../../services/object-preview.service';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
export class ObjectEmailPreviewComponent {
|
|
6
|
-
constructor() {
|
|
7
|
-
this.#objectPreviwService = inject(ObjectPreviewService);
|
|
8
|
-
this.objectId = input(undefined);
|
|
9
|
-
this.dmsObjectInput = input(undefined, { alias: 'dmsObject' });
|
|
10
|
-
this.dmsObject = this.#objectPreviwService.dmsObject;
|
|
11
|
-
this.#objectIdEffect = effect(() => {
|
|
12
|
-
const objectId = this.objectId();
|
|
13
|
-
const dmsObject = this.dmsObjectInput();
|
|
14
|
-
untracked(() => {
|
|
15
|
-
dmsObject && this.#objectPreviwService.setDmsObject(dmsObject);
|
|
16
|
-
if (objectId && !dmsObject) {
|
|
17
|
-
this.#objectPreviwService.getDmsObject(objectId).subscribe();
|
|
18
|
-
}
|
|
19
|
-
});
|
|
20
|
-
});
|
|
21
|
-
this.viewerDetails = computed(() => {
|
|
22
|
-
const object = this.dmsObject();
|
|
23
|
-
return object ? this.#objectPreviwService.getEmailViewerDetails(object) : undefined;
|
|
24
|
-
});
|
|
25
|
-
}
|
|
26
|
-
#objectPreviwService;
|
|
27
|
-
#objectIdEffect;
|
|
28
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ObjectEmailPreviewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
29
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ObjectEmailPreviewComponent, isStandalone: true, selector: "yuv-object-email-preview", inputs: { objectId: { classPropertyName: "objectId", publicName: "objectId", isSignal: true, isRequired: false, transformFunction: null }, dmsObjectInput: { classPropertyName: "dmsObjectInput", publicName: "dmsObject", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
|
|
30
|
-
@let viewerDetailsObj = viewerDetails();
|
|
31
|
-
@if (viewerDetailsObj) {
|
|
32
|
-
<yuv-mail [id]="viewerDetailsObj.id" [src]="viewerDetailsObj.mediaViewerSrc" [metadata]="viewerDetailsObj.metadata"></yuv-mail>
|
|
33
|
-
}
|
|
34
|
-
`, isInline: true, styles: [":host{height:100%}\n"], dependencies: [{ kind: "component", type: MailComponent, selector: "yuv-mail" }] }); }
|
|
35
|
-
}
|
|
36
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ObjectEmailPreviewComponent, decorators: [{
|
|
37
|
-
type: Component,
|
|
38
|
-
args: [{ selector: 'yuv-object-email-preview', standalone: true, imports: [MailComponent], template: `
|
|
39
|
-
@let viewerDetailsObj = viewerDetails();
|
|
40
|
-
@if (viewerDetailsObj) {
|
|
41
|
-
<yuv-mail [id]="viewerDetailsObj.id" [src]="viewerDetailsObj.mediaViewerSrc" [metadata]="viewerDetailsObj.metadata"></yuv-mail>
|
|
42
|
-
}
|
|
43
|
-
`, styles: [":host{height:100%}\n"] }]
|
|
44
|
-
}] });
|
|
45
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JqZWN0LWVtYWlsLXByZXZpZXcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy95dXV2aXMvY2xpZW50LWZyYW1ld29yay9vYmplY3QtcHJldmlldy9zcmMvbGliL2NvbXBvbmVudHMvb2JqZWN0LWVtYWlsLXByZXZpZXcvb2JqZWN0LWVtYWlsLXByZXZpZXcuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV0RixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDckQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7O0FBa0I3RSxNQUFNLE9BQU8sMkJBQTJCO0lBaEJ4QztRQWlCRSx5QkFBb0IsR0FBRyxNQUFNLENBQUMsb0JBQW9CLENBQUMsQ0FBQztRQUVwRCxhQUFRLEdBQUcsS0FBSyxDQUFxQixTQUFTLENBQUMsQ0FBQztRQUNoRCxtQkFBYyxHQUFHLEtBQUssQ0FBd0IsU0FBUyxFQUFFLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUM7UUFDakYsY0FBUyxHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxTQUFTLENBQUM7UUFFaEQsb0JBQWUsR0FBRyxNQUFNLENBQUMsR0FBRyxFQUFFO1lBQzVCLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNqQyxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7WUFFeEMsU0FBUyxDQUFDLEdBQUcsRUFBRTtnQkFDYixTQUFTLElBQUksSUFBSSxDQUFDLG9CQUFvQixDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQztnQkFDL0QsSUFBSSxRQUFRLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztvQkFDM0IsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsQ0FBQyxTQUFTLEVBQUUsQ0FBQztnQkFDL0QsQ0FBQztZQUNILENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7UUFFSCxrQkFBYSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDNUIsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ2hDLE9BQU8sTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMscUJBQXFCLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztRQUN0RixDQUFDLENBQUMsQ0FBQztLQUNKO0lBdEJDLG9CQUFvQixDQUFnQztJQU1wRCxlQUFlLENBVVo7K0dBakJRLDJCQUEyQjttR0FBM0IsMkJBQTJCLCtXQVo1Qjs7Ozs7R0FLVCw4RkFOUyxhQUFhOzs0RkFhWiwyQkFBMkI7a0JBaEJ2QyxTQUFTOytCQUNFLDBCQUEwQixjQUN4QixJQUFJLFdBQ1AsQ0FBQyxhQUFhLENBQUMsWUFDZDs7Ozs7R0FLVCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgY29tcHV0ZWQsIGVmZmVjdCwgaW5qZWN0LCBpbnB1dCwgdW50cmFja2VkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEbXNPYmplY3QgfSBmcm9tICdAeXV1dmlzL2NsaWVudC1jb3JlJztcbmltcG9ydCB7IE1haWxDb21wb25lbnQgfSBmcm9tICdAeXV1dmlzL21lZGlhLXZpZXdlcic7XG5pbXBvcnQgeyBPYmplY3RQcmV2aWV3U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL29iamVjdC1wcmV2aWV3LnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd5dXYtb2JqZWN0LWVtYWlsLXByZXZpZXcnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbTWFpbENvbXBvbmVudF0sXG4gIHRlbXBsYXRlOiBgXG4gICAgQGxldCB2aWV3ZXJEZXRhaWxzT2JqID0gdmlld2VyRGV0YWlscygpO1xuICAgIEBpZiAodmlld2VyRGV0YWlsc09iaikge1xuICAgICAgPHl1di1tYWlsIFtpZF09XCJ2aWV3ZXJEZXRhaWxzT2JqLmlkXCIgW3NyY109XCJ2aWV3ZXJEZXRhaWxzT2JqLm1lZGlhVmlld2VyU3JjXCIgW21ldGFkYXRhXT1cInZpZXdlckRldGFpbHNPYmoubWV0YWRhdGFcIj48L3l1di1tYWlsPlxuICAgIH1cbiAgYCxcbiAgc3R5bGVzOiBgXG4gICAgOmhvc3Qge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cbiAgYFxufSlcbmV4cG9ydCBjbGFzcyBPYmplY3RFbWFpbFByZXZpZXdDb21wb25lbnQge1xuICAjb2JqZWN0UHJldml3U2VydmljZSA9IGluamVjdChPYmplY3RQcmV2aWV3U2VydmljZSk7XG5cbiAgb2JqZWN0SWQgPSBpbnB1dDxzdHJpbmcgfCB1bmRlZmluZWQ+KHVuZGVmaW5lZCk7XG4gIGRtc09iamVjdElucHV0ID0gaW5wdXQ8RG1zT2JqZWN0IHwgdW5kZWZpbmVkPih1bmRlZmluZWQsIHsgYWxpYXM6ICdkbXNPYmplY3QnIH0pO1xuICBkbXNPYmplY3QgPSB0aGlzLiNvYmplY3RQcmV2aXdTZXJ2aWNlLmRtc09iamVjdDtcblxuICAjb2JqZWN0SWRFZmZlY3QgPSBlZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IG9iamVjdElkID0gdGhpcy5vYmplY3RJZCgpO1xuICAgIGNvbnN0IGRtc09iamVjdCA9IHRoaXMuZG1zT2JqZWN0SW5wdXQoKTtcblxuICAgIHVudHJhY2tlZCgoKSA9PiB7XG4gICAgICBkbXNPYmplY3QgJiYgdGhpcy4jb2JqZWN0UHJldml3U2VydmljZS5zZXREbXNPYmplY3QoZG1zT2JqZWN0KTtcbiAgICAgIGlmIChvYmplY3RJZCAmJiAhZG1zT2JqZWN0KSB7XG4gICAgICAgIHRoaXMuI29iamVjdFByZXZpd1NlcnZpY2UuZ2V0RG1zT2JqZWN0KG9iamVjdElkKS5zdWJzY3JpYmUoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfSk7XG5cbiAgdmlld2VyRGV0YWlscyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCBvYmplY3QgPSB0aGlzLmRtc09iamVjdCgpO1xuICAgIHJldHVybiBvYmplY3QgPyB0aGlzLiNvYmplY3RQcmV2aXdTZXJ2aWNlLmdldEVtYWlsVmlld2VyRGV0YWlscyhvYmplY3QpIDogdW5kZWZpbmVkO1xuICB9KTtcbn1cbiJdfQ==
|
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
import { CommonModule } from '@angular/common';
|
|
2
|
-
import { Component, computed, effect, inject, input, signal, untracked } from '@angular/core';
|
|
3
|
-
import { TranslateModule } from '@yuuvis/client-core';
|
|
4
|
-
import { YuvMediaViewerComponent } from '@yuuvis/media-viewer';
|
|
5
|
-
import { ObjectPreviewService } from '../../services/object-preview.service';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "@yuuvis/client-core";
|
|
8
|
-
export class ObjectPreviewComponent {
|
|
9
|
-
constructor() {
|
|
10
|
-
this.#objectPreviewService = inject(ObjectPreviewService);
|
|
11
|
-
this.objectId = input(undefined);
|
|
12
|
-
this.dmsObjectInput = input(undefined, { alias: 'dmsObject' });
|
|
13
|
-
this.version = input(undefined);
|
|
14
|
-
this.dmsObject = this.#objectPreviewService.dmsObject;
|
|
15
|
-
this.#dmsObjectEffect = effect(() => {
|
|
16
|
-
const version = this.version();
|
|
17
|
-
let object = this.dmsObject();
|
|
18
|
-
object = Array.isArray(object) ? object[0] : object;
|
|
19
|
-
if (object && this.#formerContentstreamId !== object.content?.contentStreamId) {
|
|
20
|
-
untracked(() => this.viewerDetails.set(object && this.#objectPreviewService.getViewerDetails(object, version)));
|
|
21
|
-
this.#formerContentstreamId = object.content?.contentStreamId;
|
|
22
|
-
}
|
|
23
|
-
});
|
|
24
|
-
this.viewerDetails = signal(undefined);
|
|
25
|
-
this.isTiff = computed(() => this.dmsObject()?.content?.mimeType === 'image/tiff');
|
|
26
|
-
this.#objectIdEffect = effect(() => {
|
|
27
|
-
const objectId = this.objectId();
|
|
28
|
-
const dmsObject = this.dmsObjectInput();
|
|
29
|
-
untracked(() => {
|
|
30
|
-
dmsObject && this.#objectPreviewService.setDmsObject(dmsObject);
|
|
31
|
-
objectId && !dmsObject && this.#objectPreviewService.getDmsObject(objectId).subscribe();
|
|
32
|
-
});
|
|
33
|
-
});
|
|
34
|
-
}
|
|
35
|
-
#objectPreviewService;
|
|
36
|
-
#formerContentstreamId;
|
|
37
|
-
#dmsObjectEffect;
|
|
38
|
-
#objectIdEffect;
|
|
39
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ObjectPreviewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
40
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ObjectPreviewComponent, isStandalone: true, selector: "yuv-object-preview", inputs: { objectId: { classPropertyName: "objectId", publicName: "objectId", isSignal: true, isRequired: false, transformFunction: null }, dmsObjectInput: { classPropertyName: "dmsObjectInput", publicName: "dmsObject", isSignal: true, isRequired: false, transformFunction: null }, version: { classPropertyName: "version", publicName: "version", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
|
|
41
|
-
@let viewerDetailsObj = viewerDetails();
|
|
42
|
-
@if (viewerDetailsObj) {
|
|
43
|
-
<yuv-media-viewer
|
|
44
|
-
class="viewer"
|
|
45
|
-
[id]="viewerDetailsObj.id"
|
|
46
|
-
[type]="viewerDetailsObj.mimeType"
|
|
47
|
-
[src]="viewerDetailsObj.mediaViewerSrc"
|
|
48
|
-
[metadata]="viewerDetailsObj.metadata"
|
|
49
|
-
></yuv-media-viewer>
|
|
50
|
-
}
|
|
51
|
-
@if (isTiff()) {
|
|
52
|
-
<div class="tiff-warning">
|
|
53
|
-
<div class="tiff-warning-text">{{ 'yuv.object-preview.tiff-warning' | translate }}</div>
|
|
54
|
-
</div>
|
|
55
|
-
}
|
|
56
|
-
`, isInline: true, styles: [":host{height:100%;overflow:hidden;display:grid;grid-auto-columns:1fr;grid-auto-rows:1fr;grid-template-columns:1fr;grid-template-rows:1fr max-content;gap:0px 0px;grid-template-areas:\"viewer\" \"message\"}.viewer{grid-area:viewer}:is() pdf-paging-area{display:flex;align-items:center}:is() pdf-paging-area :is(.paging-right,.paging-left){display:flex;align-items:center}:is() pdf-zoom-toolbar div{display:flex;align-items:center}.tiff-warning{grid-area:message;text-align:center;padding:calc(var(--app-pane-padding) / 2) 0;&-text{margin:var(--app-pane-padding)}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: YuvMediaViewerComponent, selector: "yuv-media-viewer", inputs: ["id", "type", "metadata", "src"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] }); }
|
|
57
|
-
}
|
|
58
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ObjectPreviewComponent, decorators: [{
|
|
59
|
-
type: Component,
|
|
60
|
-
args: [{ selector: 'yuv-object-preview', standalone: true, imports: [CommonModule, YuvMediaViewerComponent, TranslateModule], template: `
|
|
61
|
-
@let viewerDetailsObj = viewerDetails();
|
|
62
|
-
@if (viewerDetailsObj) {
|
|
63
|
-
<yuv-media-viewer
|
|
64
|
-
class="viewer"
|
|
65
|
-
[id]="viewerDetailsObj.id"
|
|
66
|
-
[type]="viewerDetailsObj.mimeType"
|
|
67
|
-
[src]="viewerDetailsObj.mediaViewerSrc"
|
|
68
|
-
[metadata]="viewerDetailsObj.metadata"
|
|
69
|
-
></yuv-media-viewer>
|
|
70
|
-
}
|
|
71
|
-
@if (isTiff()) {
|
|
72
|
-
<div class="tiff-warning">
|
|
73
|
-
<div class="tiff-warning-text">{{ 'yuv.object-preview.tiff-warning' | translate }}</div>
|
|
74
|
-
</div>
|
|
75
|
-
}
|
|
76
|
-
`, styles: [":host{height:100%;overflow:hidden;display:grid;grid-auto-columns:1fr;grid-auto-rows:1fr;grid-template-columns:1fr;grid-template-rows:1fr max-content;gap:0px 0px;grid-template-areas:\"viewer\" \"message\"}.viewer{grid-area:viewer}:is() pdf-paging-area{display:flex;align-items:center}:is() pdf-paging-area :is(.paging-right,.paging-left){display:flex;align-items:center}:is() pdf-zoom-toolbar div{display:flex;align-items:center}.tiff-warning{grid-area:message;text-align:center;padding:calc(var(--app-pane-padding) / 2) 0;&-text{margin:var(--app-pane-padding)}}\n"] }]
|
|
77
|
-
}] });
|
|
78
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JqZWN0LXByZXZpZXcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy95dXV2aXMvY2xpZW50LWZyYW1ld29yay9vYmplY3QtcHJldmlldy9zcmMvbGliL2NvbXBvbmVudHMvb2JqZWN0LXByZXZpZXcvb2JqZWN0LXByZXZpZXcuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlGLE9BQU8sRUFBYSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMvRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQzs7O0FBdUU3RSxNQUFNLE9BQU8sc0JBQXNCO0lBckVuQztRQXNFRSwwQkFBcUIsR0FBRyxNQUFNLENBQUMsb0JBQW9CLENBQUMsQ0FBQztRQUdyRCxhQUFRLEdBQUcsS0FBSyxDQUFxQixTQUFTLENBQUMsQ0FBQztRQUNoRCxtQkFBYyxHQUFHLEtBQUssQ0FBd0IsU0FBUyxFQUFFLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUM7UUFDakYsWUFBTyxHQUFHLEtBQUssQ0FBcUIsU0FBUyxDQUFDLENBQUM7UUFDL0MsY0FBUyxHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxTQUFTLENBQUM7UUFDakQscUJBQWdCLEdBQUcsTUFBTSxDQUFDLEdBQUcsRUFBRTtZQUM3QixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDL0IsSUFBSSxNQUFNLEdBQUcsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQzlCLE1BQU0sR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztZQUNwRCxJQUFJLE1BQU0sSUFBSSxJQUFJLENBQUMsc0JBQXNCLEtBQUssTUFBTSxDQUFDLE9BQU8sRUFBRSxlQUFlLEVBQUUsQ0FBQztnQkFDOUUsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMscUJBQXFCLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDaEgsSUFBSSxDQUFDLHNCQUFzQixHQUFHLE1BQU0sQ0FBQyxPQUFPLEVBQUUsZUFBZSxDQUFDO1lBQ2hFLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUVILGtCQUFhLEdBQUcsTUFBTSxDQUFrQixTQUFTLENBQUMsQ0FBQztRQUVuRCxXQUFNLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsRUFBRSxPQUFPLEVBQUUsUUFBUSxLQUFLLFlBQVksQ0FBQyxDQUFDO1FBRTlFLG9CQUFlLEdBQUcsTUFBTSxDQUFDLEdBQUcsRUFBRTtZQUM1QixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDakMsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3hDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7Z0JBQ2IsU0FBUyxJQUFJLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUM7Z0JBQ2hFLFFBQVEsSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMscUJBQXFCLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQzFGLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7S0FDSjtJQTdCQyxxQkFBcUIsQ0FBZ0M7SUFFckQsc0JBQXNCLENBQVU7SUFLaEMsZ0JBQWdCLENBUWI7SUFNSCxlQUFlLENBT1o7K0dBN0JRLHNCQUFzQjttR0FBdEIsc0JBQXNCLHVlQWpFdkI7Ozs7Ozs7Ozs7Ozs7Ozs7R0FnQlQsNG5CQWpCUyxZQUFZLCtCQUFFLHVCQUF1Qix1R0FBRSxlQUFlOzs0RkFrRXJELHNCQUFzQjtrQkFyRWxDLFNBQVM7K0JBQ0Usb0JBQW9CLGNBQ2xCLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSx1QkFBdUIsRUFBRSxlQUFlLENBQUMsWUFDdkQ7Ozs7Ozs7Ozs7Ozs7Ozs7R0FnQlQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBjb21wdXRlZCwgZWZmZWN0LCBpbmplY3QsIGlucHV0LCBzaWduYWwsIHVudHJhY2tlZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRG1zT2JqZWN0LCBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAeXV1dmlzL2NsaWVudC1jb3JlJztcbmltcG9ydCB7IFl1dk1lZGlhVmlld2VyQ29tcG9uZW50IH0gZnJvbSAnQHl1dXZpcy9tZWRpYS12aWV3ZXInO1xuaW1wb3J0IHsgT2JqZWN0UHJldmlld1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9vYmplY3QtcHJldmlldy5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAneXV2LW9iamVjdC1wcmV2aWV3JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgWXV2TWVkaWFWaWV3ZXJDb21wb25lbnQsIFRyYW5zbGF0ZU1vZHVsZV0sXG4gIHRlbXBsYXRlOiBgXG4gICAgQGxldCB2aWV3ZXJEZXRhaWxzT2JqID0gdmlld2VyRGV0YWlscygpO1xuICAgIEBpZiAodmlld2VyRGV0YWlsc09iaikge1xuICAgICAgPHl1di1tZWRpYS12aWV3ZXJcbiAgICAgICAgY2xhc3M9XCJ2aWV3ZXJcIlxuICAgICAgICBbaWRdPVwidmlld2VyRGV0YWlsc09iai5pZFwiXG4gICAgICAgIFt0eXBlXT1cInZpZXdlckRldGFpbHNPYmoubWltZVR5cGVcIlxuICAgICAgICBbc3JjXT1cInZpZXdlckRldGFpbHNPYmoubWVkaWFWaWV3ZXJTcmNcIlxuICAgICAgICBbbWV0YWRhdGFdPVwidmlld2VyRGV0YWlsc09iai5tZXRhZGF0YVwiXG4gICAgICA+PC95dXYtbWVkaWEtdmlld2VyPlxuICAgIH1cbiAgICBAaWYgKGlzVGlmZigpKSB7XG4gICAgICA8ZGl2IGNsYXNzPVwidGlmZi13YXJuaW5nXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0aWZmLXdhcm5pbmctdGV4dFwiPnt7ICd5dXYub2JqZWN0LXByZXZpZXcudGlmZi13YXJuaW5nJyB8IHRyYW5zbGF0ZSB9fTwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgfVxuICBgLFxuICBzdHlsZXM6IFtcbiAgICBgXG4gICAgICA6aG9zdCB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC1hdXRvLWNvbHVtbnM6IDFmcjtcbiAgICAgICAgZ3JpZC1hdXRvLXJvd3M6IDFmcjtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogMWZyIG1heC1jb250ZW50O1xuICAgICAgICBnYXA6IDBweCAwcHg7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6XG4gICAgICAgICAgJ3ZpZXdlcidcbiAgICAgICAgICAnbWVzc2FnZSc7XG4gICAgICB9XG4gICAgICAudmlld2VyIHtcbiAgICAgICAgZ3JpZC1hcmVhOiB2aWV3ZXI7XG4gICAgICAgIDo6bmctZGVlcCB7XG4gICAgICAgICAgcGRmLXBhZ2luZy1hcmVhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICAucGFnaW5nLXJpZ2h0LFxuICAgICAgICAgICAgLnBhZ2luZy1sZWZ0IHtcbiAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgcGRmLXpvb20tdG9vbGJhciB7XG4gICAgICAgICAgICBkaXYge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnRpZmYtd2FybmluZyB7XG4gICAgICAgIGdyaWQtYXJlYTogbWVzc2FnZTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiBjYWxjKHZhcigtLWFwcC1wYW5lLXBhZGRpbmcpIC8gMikgMDtcblxuICAgICAgICAmLXRleHQge1xuICAgICAgICAgIG1hcmdpbjogdmFyKC0tYXBwLXBhbmUtcGFkZGluZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICBgXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgT2JqZWN0UHJldmlld0NvbXBvbmVudCB7XG4gICNvYmplY3RQcmV2aWV3U2VydmljZSA9IGluamVjdChPYmplY3RQcmV2aWV3U2VydmljZSk7XG5cbiAgI2Zvcm1lckNvbnRlbnRzdHJlYW1JZD86IHN0cmluZztcbiAgb2JqZWN0SWQgPSBpbnB1dDxzdHJpbmcgfCB1bmRlZmluZWQ+KHVuZGVmaW5lZCk7XG4gIGRtc09iamVjdElucHV0ID0gaW5wdXQ8RG1zT2JqZWN0IHwgdW5kZWZpbmVkPih1bmRlZmluZWQsIHsgYWxpYXM6ICdkbXNPYmplY3QnIH0pO1xuICB2ZXJzaW9uID0gaW5wdXQ8bnVtYmVyIHwgdW5kZWZpbmVkPih1bmRlZmluZWQpO1xuICBkbXNPYmplY3QgPSB0aGlzLiNvYmplY3RQcmV2aWV3U2VydmljZS5kbXNPYmplY3Q7XG4gICNkbXNPYmplY3RFZmZlY3QgPSBlZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IHZlcnNpb24gPSB0aGlzLnZlcnNpb24oKTtcbiAgICBsZXQgb2JqZWN0ID0gdGhpcy5kbXNPYmplY3QoKTtcbiAgICBvYmplY3QgPSBBcnJheS5pc0FycmF5KG9iamVjdCkgPyBvYmplY3RbMF0gOiBvYmplY3Q7XG4gICAgaWYgKG9iamVjdCAmJiB0aGlzLiNmb3JtZXJDb250ZW50c3RyZWFtSWQgIT09IG9iamVjdC5jb250ZW50Py5jb250ZW50U3RyZWFtSWQpIHtcbiAgICAgIHVudHJhY2tlZCgoKSA9PiB0aGlzLnZpZXdlckRldGFpbHMuc2V0KG9iamVjdCAmJiB0aGlzLiNvYmplY3RQcmV2aWV3U2VydmljZS5nZXRWaWV3ZXJEZXRhaWxzKG9iamVjdCwgdmVyc2lvbikpKTtcbiAgICAgIHRoaXMuI2Zvcm1lckNvbnRlbnRzdHJlYW1JZCA9IG9iamVjdC5jb250ZW50Py5jb250ZW50U3RyZWFtSWQ7XG4gICAgfVxuICB9KTtcblxuICB2aWV3ZXJEZXRhaWxzID0gc2lnbmFsPGFueSB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKTtcblxuICBpc1RpZmYgPSBjb21wdXRlZCgoKSA9PiB0aGlzLmRtc09iamVjdCgpPy5jb250ZW50Py5taW1lVHlwZSA9PT0gJ2ltYWdlL3RpZmYnKTtcblxuICAjb2JqZWN0SWRFZmZlY3QgPSBlZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IG9iamVjdElkID0gdGhpcy5vYmplY3RJZCgpO1xuICAgIGNvbnN0IGRtc09iamVjdCA9IHRoaXMuZG1zT2JqZWN0SW5wdXQoKTtcbiAgICB1bnRyYWNrZWQoKCkgPT4ge1xuICAgICAgZG1zT2JqZWN0ICYmIHRoaXMuI29iamVjdFByZXZpZXdTZXJ2aWNlLnNldERtc09iamVjdChkbXNPYmplY3QpO1xuICAgICAgb2JqZWN0SWQgJiYgIWRtc09iamVjdCAmJiB0aGlzLiNvYmplY3RQcmV2aWV3U2VydmljZS5nZXREbXNPYmplY3Qob2JqZWN0SWQpLnN1YnNjcmliZSgpO1xuICAgIH0pO1xuICB9KTtcbn1cbiJdfQ==
|