@yuuvis/client-framework 0.6.5
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/README.md +62 -0
- package/actions/README.md +3 -0
- package/actions/index.d.ts +6 -0
- package/actions/lib/actions/copy-action/copy-action.d.ts +17 -0
- package/actions/lib/actions/cut-action/cut-action.d.ts +17 -0
- package/actions/lib/actions/delete-action/delete/delete.component.d.ts +22 -0
- package/actions/lib/actions/delete-action/delete-action.d.ts +17 -0
- package/actions/lib/actions/download-action/download-action.d.ts +17 -0
- package/actions/lib/actions.icon.d.ts +7 -0
- package/actions/lib/actions.interface.d.ts +86 -0
- package/actions/lib/actions.module.d.ts +8 -0
- package/actions/lib/actions.service.d.ts +38 -0
- package/actions/lib/components/contextmenu/contextmenu.component.d.ts +11 -0
- package/app-bar/README.md +3 -0
- package/app-bar/index.d.ts +1 -0
- package/app-bar/lib/app-bar.component.d.ts +47 -0
- package/clipboard/README.md +3 -0
- package/clipboard/index.d.ts +1 -0
- package/clipboard/lib/clipboard.component.d.ts +16 -0
- package/common/README.md +3 -0
- package/common/index.d.ts +5 -0
- package/common/lib/components/focus-indicator/focus-indicator.component.d.ts +7 -0
- package/common/lib/components/token-input/token-input.component.d.ts +55 -0
- package/common/lib/components/token-input/token-input.interface.d.ts +8 -0
- package/common/lib/directives/busy-overlay.directive.d.ts +25 -0
- package/common/lib/directives/click-double.directive.d.ts +17 -0
- package/common/lib/directives/container-size.directive.d.ts +30 -0
- package/common/lib/directives/drag-select.directive.d.ts +21 -0
- package/common/lib/directives/file-drop-zone/file-drop-zone.directive.d.ts +18 -0
- package/common/lib/directives/file-drop-zone/file-drop-zone.interface.d.ts +5 -0
- package/common/lib/directives/focus-within.directive.d.ts +36 -0
- package/common/lib/directives/index.d.ts +8 -0
- package/common/lib/directives/light-dismiss.directive.d.ts +19 -0
- package/common/lib/directives/longpress.directive.d.ts +13 -0
- package/common/lib/directives/noop-value-accessor.directive.d.ts +10 -0
- package/esm2022/actions/index.mjs +7 -0
- package/esm2022/actions/lib/actions/copy-action/copy-action.mjs +31 -0
- package/esm2022/actions/lib/actions/cut-action/cut-action.mjs +30 -0
- package/esm2022/actions/lib/actions/delete-action/delete/delete.component.mjs +67 -0
- package/esm2022/actions/lib/actions/delete-action/delete-action.mjs +44 -0
- package/esm2022/actions/lib/actions/download-action/download-action.mjs +33 -0
- package/esm2022/actions/lib/actions.icon.mjs +8 -0
- package/esm2022/actions/lib/actions.interface.mjs +19 -0
- package/esm2022/actions/lib/actions.module.mjs +16 -0
- package/esm2022/actions/lib/actions.service.mjs +89 -0
- package/esm2022/actions/lib/components/contextmenu/contextmenu.component.mjs +27 -0
- package/esm2022/actions/yuuvis-client-framework-actions.mjs +5 -0
- package/esm2022/app-bar/index.mjs +2 -0
- package/esm2022/app-bar/lib/app-bar.component.mjs +89 -0
- package/esm2022/app-bar/yuuvis-client-framework-app-bar.mjs +5 -0
- package/esm2022/clipboard/index.mjs +2 -0
- package/esm2022/clipboard/lib/clipboard.component.mjs +48 -0
- package/esm2022/clipboard/yuuvis-client-framework-clipboard.mjs +5 -0
- package/esm2022/common/index.mjs +6 -0
- package/esm2022/common/lib/components/focus-indicator/focus-indicator.component.mjs +41 -0
- package/esm2022/common/lib/components/token-input/token-input.component.mjs +324 -0
- package/esm2022/common/lib/components/token-input/token-input.interface.mjs +2 -0
- package/esm2022/common/lib/directives/busy-overlay.directive.mjs +88 -0
- package/esm2022/common/lib/directives/click-double.directive.mjs +61 -0
- package/esm2022/common/lib/directives/container-size.directive.mjs +56 -0
- package/esm2022/common/lib/directives/drag-select.directive.mjs +114 -0
- package/esm2022/common/lib/directives/file-drop-zone/file-drop-zone.directive.mjs +153 -0
- package/esm2022/common/lib/directives/file-drop-zone/file-drop-zone.interface.mjs +2 -0
- package/esm2022/common/lib/directives/focus-within.directive.mjs +81 -0
- package/esm2022/common/lib/directives/index.mjs +9 -0
- package/esm2022/common/lib/directives/light-dismiss.directive.mjs +44 -0
- package/esm2022/common/lib/directives/longpress.directive.mjs +36 -0
- package/esm2022/common/lib/directives/noop-value-accessor.directive.mjs +42 -0
- package/esm2022/common/yuuvis-client-framework-common.mjs +5 -0
- package/esm2022/forms/index.mjs +19 -0
- package/esm2022/forms/lib/elements/catalog/catalog.component.mjs +118 -0
- package/esm2022/forms/lib/elements/datetime/datetime.component.mjs +82 -0
- package/esm2022/forms/lib/elements/datetime-range/datetime-range.component.mjs +166 -0
- package/esm2022/forms/lib/elements/number/number.component.mjs +195 -0
- package/esm2022/forms/lib/elements/number-range/number-range.component.mjs +176 -0
- package/esm2022/forms/lib/elements/organization/organization.component.mjs +268 -0
- package/esm2022/forms/lib/elements/string/string.component.mjs +254 -0
- package/esm2022/forms/lib/form-input/form-input.component.mjs +88 -0
- package/esm2022/forms/lib/forms.module.mjs +58 -0
- package/esm2022/forms/yuuvis-client-framework-forms.mjs +5 -0
- package/esm2022/icons/index.mjs +4 -0
- package/esm2022/icons/lib/icon.service.mjs +59 -0
- package/esm2022/icons/lib/icons.mjs +31 -0
- package/esm2022/icons/lib/object-type-icon/object-type-icon.component.mjs +29 -0
- package/esm2022/icons/yuuvis-client-framework-icons.mjs +5 -0
- package/esm2022/index.mjs +2 -0
- package/esm2022/lib/yuuvis-client-framework.module.mjs +15 -0
- package/esm2022/list/index.mjs +3 -0
- package/esm2022/list/lib/list-item.directive.mjs +72 -0
- package/esm2022/list/lib/list.component.mjs +133 -0
- package/esm2022/list/yuuvis-client-framework-list.mjs +5 -0
- package/esm2022/metadata-form/index.mjs +4 -0
- package/esm2022/metadata-form/lib/metadata-default-templates/metadata-default-templates.component.mjs +31 -0
- package/esm2022/metadata-form/lib/metadata-form-element-registry.service.mjs +99 -0
- package/esm2022/metadata-form/lib/metadata-form-field/metadata-form-field.component.mjs +126 -0
- package/esm2022/metadata-form/lib/object-metadata-element-template.directive.mjs +52 -0
- package/esm2022/metadata-form/yuuvis-client-framework-metadata-form.mjs +5 -0
- package/esm2022/object-details/index.mjs +7 -0
- package/esm2022/object-details/lib/object-audit/object-audit.component.mjs +195 -0
- package/esm2022/object-details/lib/object-details-shell/object-details-shell.component.mjs +127 -0
- package/esm2022/object-details/lib/object-details.component.mjs +61 -0
- package/esm2022/object-details/lib/object-metadata/form-section-group.pipe.mjs +17 -0
- package/esm2022/object-details/lib/object-metadata/object-metadata.component.mjs +201 -0
- package/esm2022/object-details/lib/object-metadata/object-metadata.interface.mjs +2 -0
- package/esm2022/object-details/yuuvis-client-framework-object-details.mjs +5 -0
- package/esm2022/object-flavor/index.mjs +6 -0
- package/esm2022/object-flavor/lib/abstract-apply-create-flavor/abstract-apply-create-flavor.component.mjs +25 -0
- package/esm2022/object-flavor/lib/abstract-apply-object-flavor/abstract-apply-object-flavor.component.mjs +21 -0
- package/esm2022/object-flavor/lib/flavor-chip/flavor-chip.component.mjs +35 -0
- package/esm2022/object-flavor/lib/object-flavor/object-flavor.component.mjs +93 -0
- package/esm2022/object-flavor/lib/object-flavor-picker/object-flavor-picker.component.mjs +43 -0
- package/esm2022/object-flavor/yuuvis-client-framework-object-flavor.mjs +5 -0
- package/esm2022/object-form/index.mjs +5 -0
- package/esm2022/object-form/lib/form-scripting.api.interface.mjs +2 -0
- package/esm2022/object-form/lib/form-scripting.service.mjs +160 -0
- package/esm2022/object-form/lib/object-form-element/object-form-element.component.mjs +87 -0
- package/esm2022/object-form/lib/object-form-extension.interface.mjs +36 -0
- package/esm2022/object-form/lib/object-form-group/object-form-group.component.mjs +85 -0
- package/esm2022/object-form/lib/object-form-script/form-scripting-element-extension/form-scripting-element-extension.component.mjs +23 -0
- package/esm2022/object-form/lib/object-form-script/object-form-script.service.mjs +115 -0
- package/esm2022/object-form/lib/object-form-script/object-form-scripting-scope.mjs +251 -0
- package/esm2022/object-form/lib/object-form-translate.service.mjs +73 -0
- package/esm2022/object-form/lib/object-form.component.mjs +627 -0
- package/esm2022/object-form/lib/object-form.interface.mjs +9 -0
- package/esm2022/object-form/lib/object-form.model.mjs +20 -0
- package/esm2022/object-form/lib/object-form.service.mjs +127 -0
- package/esm2022/object-form/lib/object-form.utils.mjs +55 -0
- package/esm2022/object-form/lib/object-form.validation.mjs +48 -0
- package/esm2022/object-form/yuuvis-client-framework-object-form.mjs +5 -0
- package/esm2022/object-preview/index.mjs +3 -0
- package/esm2022/object-preview/lib/components/index.mjs +3 -0
- package/esm2022/object-preview/lib/components/object-email-preview/object-email-preview.component.mjs +45 -0
- package/esm2022/object-preview/lib/components/object-preview/object-preview.component.mjs +78 -0
- package/esm2022/object-preview/lib/services/object-preview.service.mjs +92 -0
- package/esm2022/object-preview/yuuvis-client-framework-object-preview.mjs +5 -0
- package/esm2022/object-summary/index.mjs +5 -0
- package/esm2022/object-summary/lib/multi-object-summary/multi-object-summary.component.mjs +33 -0
- package/esm2022/object-summary/lib/object-summary/object-summary.component.mjs +273 -0
- package/esm2022/object-summary/lib/object-summary-data/object-summary-data.component.mjs +80 -0
- package/esm2022/object-summary/lib/object-summary.module.mjs +15 -0
- package/esm2022/object-summary/yuuvis-client-framework-object-summary.mjs +5 -0
- package/esm2022/pagination/index.mjs +3 -0
- package/esm2022/pagination/lib/pagination.component.mjs +48 -0
- package/esm2022/pagination/lib/pagination.interface.mjs +2 -0
- package/esm2022/pagination/yuuvis-client-framework-pagination.mjs +5 -0
- package/esm2022/panel/index.mjs +2 -0
- package/esm2022/panel/lib/panel.component.mjs +20 -0
- package/esm2022/panel/yuuvis-client-framework-panel.mjs +5 -0
- package/esm2022/renderer/index.mjs +11 -0
- package/esm2022/renderer/lib/property-renderer/abstract.renderer.mjs +29 -0
- package/esm2022/renderer/lib/property-renderer/datetime.renderer.mjs +13 -0
- package/esm2022/renderer/lib/property-renderer/decimal.renderer.component.mjs +12 -0
- package/esm2022/renderer/lib/property-renderer/filesize.renderer.component.mjs +28 -0
- package/esm2022/renderer/lib/property-renderer/icon.renderer.component.mjs +23 -0
- package/esm2022/renderer/lib/property-renderer/integer.renderer.component.mjs +12 -0
- package/esm2022/renderer/lib/property-renderer/organization.renderer.mjs +19 -0
- package/esm2022/renderer/lib/property-renderer/string.renderer.component.mjs +12 -0
- package/esm2022/renderer/lib/property-renderer/unknown.renderer.mjs +12 -0
- package/esm2022/renderer/lib/renderer.directive.mjs +51 -0
- package/esm2022/renderer/lib/services/renderer/renderer.interface.mjs +2 -0
- package/esm2022/renderer/lib/services/renderer/renderer.service.mjs +84 -0
- package/esm2022/renderer/yuuvis-client-framework-renderer.mjs +5 -0
- package/esm2022/sequence-list/index.mjs +6 -0
- package/esm2022/sequence-list/lib/due-date-picker/due-date-picker.component.mjs +99 -0
- package/esm2022/sequence-list/lib/sequence-list-template-manage/sequence-list-template-manage.component.mjs +183 -0
- package/esm2022/sequence-list/lib/sequence-list-templates/sequence-list-templates.component.mjs +114 -0
- package/esm2022/sequence-list/lib/sequence-list.component.mjs +146 -0
- package/esm2022/sequence-list/lib/sequence-list.interface.mjs +2 -0
- package/esm2022/sequence-list/yuuvis-client-framework-sequence-list.mjs +5 -0
- package/esm2022/simple-search/index.mjs +3 -0
- package/esm2022/simple-search/lib/simple-search/simple-search.component.mjs +111 -0
- package/esm2022/simple-search/lib/simple-search/simple-search.interface.mjs +2 -0
- package/esm2022/simple-search/yuuvis-client-framework-simple-search.mjs +5 -0
- package/esm2022/tile-list/index.mjs +11 -0
- package/esm2022/tile-list/lib/tile/tile.component.mjs +53 -0
- package/esm2022/tile-list/lib/tile-config/action-select/action-select.component.mjs +22 -0
- package/esm2022/tile-list/lib/tile-config/icon-select/icon-select.component.mjs +33 -0
- package/esm2022/tile-list/lib/tile-config/property-select/property-select.component.mjs +91 -0
- package/esm2022/tile-list/lib/tile-config/tile-config-tile/tile-config-tile.component.mjs +66 -0
- package/esm2022/tile-list/lib/tile-config/tile-config-trigger/tile-config-trigger.component.mjs +46 -0
- package/esm2022/tile-list/lib/tile-config/tile-config.component.mjs +156 -0
- package/esm2022/tile-list/lib/tile-extension/directive/tile-extension.directive.mjs +37 -0
- package/esm2022/tile-list/lib/tile-extension/extensions/email.extension.mjs +42 -0
- package/esm2022/tile-list/lib/tile-extension/tile-extension.service.mjs +35 -0
- package/esm2022/tile-list/lib/tile-list/tile-list.component.mjs +510 -0
- package/esm2022/tile-list/lib/tile-list/tile-list.interface.mjs +2 -0
- package/esm2022/tile-list/yuuvis-client-framework-tile-list.mjs +5 -0
- package/esm2022/token-search/index.mjs +3 -0
- package/esm2022/token-search/token-search.component.mjs +78 -0
- package/esm2022/token-search/token-search.interface.mjs +2 -0
- package/esm2022/token-search/yuuvis-client-framework-token-search.mjs +5 -0
- package/esm2022/tree/index.mjs +3 -0
- package/esm2022/tree/lib/tree-node/tree-node.component.mjs +65 -0
- package/esm2022/tree/lib/tree.component.mjs +148 -0
- package/esm2022/tree/lib/tree.interface.mjs +2 -0
- package/esm2022/tree/lib/tree.service.mjs +95 -0
- package/esm2022/tree/yuuvis-client-framework-tree.mjs +5 -0
- package/esm2022/upload-progress/index.mjs +2 -0
- package/esm2022/upload-progress/lib/upload-progress/upload-progress-overlay/upload-progress-overlay.component.mjs +49 -0
- package/esm2022/upload-progress/lib/upload-progress/upload-progress.component.mjs +37 -0
- package/esm2022/upload-progress/yuuvis-client-framework-upload-progress.mjs +5 -0
- package/esm2022/user-avatar/index.mjs +3 -0
- package/esm2022/user-avatar/lib/user-avatar.component.mjs +69 -0
- package/esm2022/user-avatar/lib/user-avatar.module.mjs +24 -0
- package/esm2022/user-avatar/yuuvis-client-framework-user-avatar.mjs +5 -0
- package/esm2022/yuuvis-client-framework.mjs +5 -0
- package/fesm2022/yuuvis-client-framework-actions.mjs +333 -0
- package/fesm2022/yuuvis-client-framework-actions.mjs.map +1 -0
- package/fesm2022/yuuvis-client-framework-app-bar.mjs +96 -0
- package/fesm2022/yuuvis-client-framework-app-bar.mjs.map +1 -0
- package/fesm2022/yuuvis-client-framework-clipboard.mjs +55 -0
- package/fesm2022/yuuvis-client-framework-clipboard.mjs.map +1 -0
- package/fesm2022/yuuvis-client-framework-common.mjs +1020 -0
- package/fesm2022/yuuvis-client-framework-common.mjs.map +1 -0
- package/fesm2022/yuuvis-client-framework-forms.mjs +1355 -0
- package/fesm2022/yuuvis-client-framework-forms.mjs.map +1 -0
- package/fesm2022/yuuvis-client-framework-icons.mjs +123 -0
- package/fesm2022/yuuvis-client-framework-icons.mjs.map +1 -0
- package/fesm2022/yuuvis-client-framework-list.mjs +209 -0
- package/fesm2022/yuuvis-client-framework-list.mjs.map +1 -0
- package/fesm2022/yuuvis-client-framework-metadata-form.mjs +302 -0
- package/fesm2022/yuuvis-client-framework-metadata-form.mjs.map +1 -0
- package/fesm2022/yuuvis-client-framework-object-details.mjs +583 -0
- package/fesm2022/yuuvis-client-framework-object-details.mjs.map +1 -0
- package/fesm2022/yuuvis-client-framework-object-flavor.mjs +200 -0
- package/fesm2022/yuuvis-client-framework-object-flavor.mjs.map +1 -0
- package/fesm2022/yuuvis-client-framework-object-form.mjs +1664 -0
- package/fesm2022/yuuvis-client-framework-object-form.mjs.map +1 -0
- package/fesm2022/yuuvis-client-framework-object-preview.mjs +213 -0
- package/fesm2022/yuuvis-client-framework-object-preview.mjs.map +1 -0
- package/fesm2022/yuuvis-client-framework-object-summary.mjs +397 -0
- package/fesm2022/yuuvis-client-framework-object-summary.mjs.map +1 -0
- package/fesm2022/yuuvis-client-framework-pagination.mjs +55 -0
- package/fesm2022/yuuvis-client-framework-pagination.mjs.map +1 -0
- package/fesm2022/yuuvis-client-framework-panel.mjs +27 -0
- package/fesm2022/yuuvis-client-framework-panel.mjs.map +1 -0
- package/fesm2022/yuuvis-client-framework-renderer.mjs +262 -0
- package/fesm2022/yuuvis-client-framework-renderer.mjs.map +1 -0
- package/fesm2022/yuuvis-client-framework-sequence-list.mjs +519 -0
- package/fesm2022/yuuvis-client-framework-sequence-list.mjs.map +1 -0
- package/fesm2022/yuuvis-client-framework-simple-search.mjs +118 -0
- package/fesm2022/yuuvis-client-framework-simple-search.mjs.map +1 -0
- package/fesm2022/yuuvis-client-framework-tile-list.mjs +1036 -0
- package/fesm2022/yuuvis-client-framework-tile-list.mjs.map +1 -0
- package/fesm2022/yuuvis-client-framework-token-search.mjs +85 -0
- package/fesm2022/yuuvis-client-framework-token-search.mjs.map +1 -0
- package/fesm2022/yuuvis-client-framework-tree.mjs +307 -0
- package/fesm2022/yuuvis-client-framework-tree.mjs.map +1 -0
- package/fesm2022/yuuvis-client-framework-upload-progress.mjs +84 -0
- package/fesm2022/yuuvis-client-framework-upload-progress.mjs.map +1 -0
- package/fesm2022/yuuvis-client-framework-user-avatar.mjs +96 -0
- package/fesm2022/yuuvis-client-framework-user-avatar.mjs.map +1 -0
- package/fesm2022/yuuvis-client-framework.mjs +22 -0
- package/fesm2022/yuuvis-client-framework.mjs.map +1 -0
- package/forms/README.md +3 -0
- package/forms/index.d.ts +9 -0
- package/forms/lib/elements/catalog/catalog.component.d.ts +68 -0
- package/forms/lib/elements/datetime/datetime.component.d.ts +32 -0
- package/forms/lib/elements/datetime-range/datetime-range.component.d.ts +51 -0
- package/forms/lib/elements/number/number.component.d.ts +77 -0
- package/forms/lib/elements/number-range/number-range.component.d.ts +66 -0
- package/forms/lib/elements/organization/organization.component.d.ts +93 -0
- package/forms/lib/elements/string/string.component.d.ts +104 -0
- package/forms/lib/form-input/form-input.component.d.ts +48 -0
- package/forms/lib/forms.module.d.ts +16 -0
- package/icons/README.md +5 -0
- package/icons/index.d.ts +3 -0
- package/icons/lib/icon.service.d.ts +38 -0
- package/icons/lib/icons.d.ts +1 -0
- package/icons/lib/object-type-icon/object-type-icon.component.d.ts +11 -0
- package/index.d.ts +1 -0
- package/lib/yuuvis-client-framework.module.d.ts +7 -0
- package/list/README.md +3 -0
- package/list/index.d.ts +2 -0
- package/list/lib/list-item.directive.d.ts +15 -0
- package/list/lib/list.component.d.ts +36 -0
- package/metadata-form/README.md +21 -0
- package/metadata-form/index.d.ts +3 -0
- package/metadata-form/lib/metadata-default-templates/metadata-default-templates.component.d.ts +5 -0
- package/metadata-form/lib/metadata-form-element-registry.service.d.ts +47 -0
- package/metadata-form/lib/metadata-form-field/metadata-form-field.component.d.ts +31 -0
- package/metadata-form/lib/object-metadata-element-template.directive.d.ts +27 -0
- package/object-details/README.md +28 -0
- package/object-details/index.d.ts +6 -0
- package/object-details/lib/object-audit/object-audit.component.d.ts +59 -0
- package/object-details/lib/object-details-shell/object-details-shell.component.d.ts +51 -0
- package/object-details/lib/object-details.component.d.ts +36 -0
- package/object-details/lib/object-metadata/form-section-group.pipe.d.ts +8 -0
- package/object-details/lib/object-metadata/object-metadata.component.d.ts +48 -0
- package/object-details/lib/object-metadata/object-metadata.interface.d.ts +26 -0
- package/object-flavor/README.md +3 -0
- package/object-flavor/index.d.ts +5 -0
- package/object-flavor/lib/abstract-apply-create-flavor/abstract-apply-create-flavor.component.d.ts +12 -0
- package/object-flavor/lib/abstract-apply-object-flavor/abstract-apply-object-flavor.component.d.ts +12 -0
- package/object-flavor/lib/flavor-chip/flavor-chip.component.d.ts +17 -0
- package/object-flavor/lib/object-flavor/object-flavor.component.d.ts +26 -0
- package/object-flavor/lib/object-flavor-picker/object-flavor-picker.component.d.ts +10 -0
- package/object-form/README.md +3 -0
- package/object-form/index.d.ts +4 -0
- package/object-form/lib/form-scripting.api.interface.d.ts +131 -0
- package/object-form/lib/form-scripting.service.d.ts +30 -0
- package/object-form/lib/object-form-element/object-form-element.component.d.ts +22 -0
- package/object-form/lib/object-form-extension.interface.d.ts +22 -0
- package/object-form/lib/object-form-group/object-form-group.component.d.ts +22 -0
- package/object-form/lib/object-form-script/form-scripting-element-extension/form-scripting-element-extension.component.d.ts +10 -0
- package/object-form/lib/object-form-script/object-form-script.service.d.ts +45 -0
- package/object-form/lib/object-form-script/object-form-scripting-scope.d.ts +50 -0
- package/object-form/lib/object-form-translate.service.d.ts +15 -0
- package/object-form/lib/object-form.component.d.ts +60 -0
- package/object-form/lib/object-form.interface.d.ts +113 -0
- package/object-form/lib/object-form.model.d.ts +18 -0
- package/object-form/lib/object-form.service.d.ts +39 -0
- package/object-form/lib/object-form.utils.d.ts +20 -0
- package/object-form/lib/object-form.validation.d.ts +21 -0
- package/object-preview/README.md +3 -0
- package/object-preview/index.d.ts +2 -0
- package/object-preview/lib/components/index.d.ts +2 -0
- package/object-preview/lib/components/object-email-preview/object-email-preview.component.d.ts +16 -0
- package/object-preview/lib/components/object-preview/object-preview.component.d.ts +13 -0
- package/object-preview/lib/services/object-preview.service.d.ts +37 -0
- package/object-summary/README.md +3 -0
- package/object-summary/index.d.ts +4 -0
- package/object-summary/lib/multi-object-summary/multi-object-summary.component.d.ts +7 -0
- package/object-summary/lib/object-summary/object-summary.component.d.ts +73 -0
- package/object-summary/lib/object-summary-data/object-summary-data.component.d.ts +11 -0
- package/object-summary/lib/object-summary.module.d.ts +7 -0
- package/package.json +173 -0
- package/pagination/README.md +3 -0
- package/pagination/index.d.ts +2 -0
- package/pagination/lib/pagination.component.d.ts +18 -0
- package/pagination/lib/pagination.interface.d.ts +5 -0
- package/panel/README.md +3 -0
- package/panel/index.d.ts +1 -0
- package/panel/lib/panel.component.d.ts +12 -0
- package/renderer/README.md +5 -0
- package/renderer/index.d.ts +10 -0
- package/renderer/lib/property-renderer/abstract.renderer.d.ts +14 -0
- package/renderer/lib/property-renderer/datetime.renderer.d.ts +6 -0
- package/renderer/lib/property-renderer/decimal.renderer.component.d.ts +6 -0
- package/renderer/lib/property-renderer/filesize.renderer.component.d.ts +7 -0
- package/renderer/lib/property-renderer/icon.renderer.component.d.ts +6 -0
- package/renderer/lib/property-renderer/integer.renderer.component.d.ts +6 -0
- package/renderer/lib/property-renderer/organization.renderer.d.ts +7 -0
- package/renderer/lib/property-renderer/string.renderer.component.d.ts +6 -0
- package/renderer/lib/property-renderer/unknown.renderer.d.ts +6 -0
- package/renderer/lib/renderer.directive.d.ts +17 -0
- package/renderer/lib/services/renderer/renderer.interface.d.ts +8 -0
- package/renderer/lib/services/renderer/renderer.service.d.ts +35 -0
- package/sequence-list/README.md +3 -0
- package/sequence-list/index.d.ts +5 -0
- package/sequence-list/lib/due-date-picker/due-date-picker.component.d.ts +28 -0
- package/sequence-list/lib/sequence-list-template-manage/sequence-list-template-manage.component.d.ts +52 -0
- package/sequence-list/lib/sequence-list-templates/sequence-list-templates.component.d.ts +36 -0
- package/sequence-list/lib/sequence-list.component.d.ts +43 -0
- package/sequence-list/lib/sequence-list.interface.d.ts +16 -0
- package/simple-search/README.md +3 -0
- package/simple-search/index.d.ts +2 -0
- package/simple-search/lib/simple-search/simple-search.component.d.ts +55 -0
- package/simple-search/lib/simple-search/simple-search.interface.d.ts +4 -0
- package/styles/client-framework.scss +27 -0
- package/tile-list/README.md +3 -0
- package/tile-list/index.d.ts +10 -0
- package/tile-list/lib/tile/tile.component.d.ts +22 -0
- package/tile-list/lib/tile-config/action-select/action-select.component.d.ts +13 -0
- package/tile-list/lib/tile-config/icon-select/icon-select.component.d.ts +11 -0
- package/tile-list/lib/tile-config/property-select/property-select.component.d.ts +25 -0
- package/tile-list/lib/tile-config/tile-config-tile/tile-config-tile.component.d.ts +20 -0
- package/tile-list/lib/tile-config/tile-config-trigger/tile-config-trigger.component.d.ts +17 -0
- package/tile-list/lib/tile-config/tile-config.component.d.ts +47 -0
- package/tile-list/lib/tile-extension/directive/tile-extension.directive.d.ts +11 -0
- package/tile-list/lib/tile-extension/extensions/email.extension.d.ts +10 -0
- package/tile-list/lib/tile-extension/tile-extension.service.d.ts +16 -0
- package/tile-list/lib/tile-list/tile-list.component.d.ts +116 -0
- package/tile-list/lib/tile-list/tile-list.interface.d.ts +18 -0
- package/token-search/README.md +3 -0
- package/token-search/index.d.ts +2 -0
- package/token-search/token-search.component.d.ts +22 -0
- package/token-search/token-search.interface.d.ts +4 -0
- package/tree/README.md +3 -0
- package/tree/index.d.ts +2 -0
- package/tree/lib/tree-node/tree-node.component.d.ts +21 -0
- package/tree/lib/tree.component.d.ts +53 -0
- package/tree/lib/tree.interface.d.ts +11 -0
- package/tree/lib/tree.service.d.ts +35 -0
- package/upload-progress/README.md +3 -0
- package/upload-progress/index.d.ts +1 -0
- package/upload-progress/lib/upload-progress/upload-progress-overlay/upload-progress-overlay.component.d.ts +17 -0
- package/upload-progress/lib/upload-progress/upload-progress.component.d.ts +16 -0
- package/user-avatar/README.md +3 -0
- package/user-avatar/index.d.ts +2 -0
- package/user-avatar/lib/user-avatar.component.d.ts +44 -0
- package/user-avatar/lib/user-avatar.module.d.ts +8 -0
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { ElementRef, EventEmitter } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
/**
|
|
4
|
+
* Directive keeping track of the focus beeing within a component. Once the component or
|
|
5
|
+
* any of its child components gain focus, a class of `focusWithin` will be set on the
|
|
6
|
+
* host component in order to allow styling it while beeing focused. Furthermore you can
|
|
7
|
+
* register callbacks once the component gets or looses focus.
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* // just set the css class
|
|
11
|
+
* <some-component yuvFocusWithin></some-component>
|
|
12
|
+
* // set the css class and listen to focus changes
|
|
13
|
+
* <some-component (yuvFocusWithin)="onFocusEnter()" (yuvFocusWithinBlur)="onFocusLeave()"></some-component>
|
|
14
|
+
*/
|
|
15
|
+
export declare class FocusWithinDirective {
|
|
16
|
+
private elRef;
|
|
17
|
+
private eventCount;
|
|
18
|
+
hasFocusWithin: boolean;
|
|
19
|
+
onFocusIn(evt: FocusEvent): void;
|
|
20
|
+
onFocusOut(evt: FocusEvent): void;
|
|
21
|
+
/**
|
|
22
|
+
* Emitted once the component or any of its child components gains focus.
|
|
23
|
+
*/
|
|
24
|
+
yuvFocusWithin: EventEmitter<any>;
|
|
25
|
+
/**
|
|
26
|
+
* Emitted once the component (incl. any of its child components) looses focus.
|
|
27
|
+
*/
|
|
28
|
+
yuvFocusWithinBlur: EventEmitter<any>;
|
|
29
|
+
/**
|
|
30
|
+
* @ignore
|
|
31
|
+
*/
|
|
32
|
+
constructor(elRef: ElementRef);
|
|
33
|
+
private matchesFocusWithin;
|
|
34
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<FocusWithinDirective, never>;
|
|
35
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<FocusWithinDirective, "[yuvFocusWithin]", never, {}, { "yuvFocusWithin": "yuvFocusWithin"; "yuvFocusWithinBlur": "yuvFocusWithinBlur"; }, never, never, true, never>;
|
|
36
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export * from './busy-overlay.directive';
|
|
2
|
+
export * from './focus-within.directive';
|
|
3
|
+
export * from './file-drop-zone/file-drop-zone.directive';
|
|
4
|
+
export * from './click-double.directive';
|
|
5
|
+
export * from './light-dismiss.directive';
|
|
6
|
+
export * from './container-size.directive';
|
|
7
|
+
export * from './longpress.directive';
|
|
8
|
+
export * from './drag-select.directive';
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
/**
|
|
3
|
+
* Directive for applying light dismiss actions. Adding this directive will trigger
|
|
4
|
+
* the given function when the user clicks outside the component or hits escape.
|
|
5
|
+
*
|
|
6
|
+
* ```ts
|
|
7
|
+
* <div class="notifications" (yuvLightDismiss)="close()">
|
|
8
|
+
* ...
|
|
9
|
+
* </div>
|
|
10
|
+
* ```
|
|
11
|
+
*/
|
|
12
|
+
export declare class LightDismissDirective {
|
|
13
|
+
private elRef;
|
|
14
|
+
onKeydownHandler(event: KeyboardEvent): void;
|
|
15
|
+
onMousedown(event: MouseEvent): void;
|
|
16
|
+
yuvLightDismiss: import("@angular/core").OutputEmitterRef<void>;
|
|
17
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<LightDismissDirective, never>;
|
|
18
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<LightDismissDirective, "[yuvLightDismiss]", never, {}, { "yuvLightDismiss": "yuvLightDismiss"; }, never, never, true, never>;
|
|
19
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
export declare class LongPressDirective {
|
|
3
|
+
private elRef;
|
|
4
|
+
threshold: number;
|
|
5
|
+
yuvLongPress: import("@angular/core").InputSignal<LongPressDirectiveOptions>;
|
|
6
|
+
longpress: import("@angular/core").OutputEmitterRef<void>;
|
|
7
|
+
constructor();
|
|
8
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<LongPressDirective, never>;
|
|
9
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<LongPressDirective, "[yuvLongPress]", never, { "yuvLongPress": { "alias": "yuvLongPress"; "required": false; "isSignal": true; }; }, { "longpress": "longpress"; }, never, never, true, never>;
|
|
10
|
+
}
|
|
11
|
+
export interface LongPressDirectiveOptions {
|
|
12
|
+
enabled: boolean;
|
|
13
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { ControlValueAccessor, FormControlDirective, FormControlName, NgModel } from '@angular/forms';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export declare class NoopValueAccessorDirective implements ControlValueAccessor {
|
|
4
|
+
writeValue(obj: any): void;
|
|
5
|
+
registerOnChange(fn: any): void;
|
|
6
|
+
registerOnTouched(fn: any): void;
|
|
7
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NoopValueAccessorDirective, never>;
|
|
8
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<NoopValueAccessorDirective, never, never, {}, {}, never, never, true, never>;
|
|
9
|
+
}
|
|
10
|
+
export declare function injectNgControl(): FormControlDirective | FormControlName | NgModel;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export * from './lib/actions.module';
|
|
2
|
+
export * from './lib/actions.service';
|
|
3
|
+
export * from './lib/actions/delete-action/delete-action';
|
|
4
|
+
export * from './lib/actions/download-action/download-action';
|
|
5
|
+
export * from './lib/actions.interface';
|
|
6
|
+
export * from './lib/actions.icon';
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3l1dXZpcy9jbGllbnQtZnJhbWV3b3JrL2FjdGlvbnMvc3JjL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMsK0NBQStDLENBQUM7QUFDOUQsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLG9CQUFvQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9saWIvYWN0aW9ucy5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYWN0aW9ucy5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FjdGlvbnMvZGVsZXRlLWFjdGlvbi9kZWxldGUtYWN0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FjdGlvbnMvZG93bmxvYWQtYWN0aW9uL2Rvd25sb2FkLWFjdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hY3Rpb25zLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hY3Rpb25zLmljb24nO1xuIl19
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { inject } from '@angular/core';
|
|
2
|
+
import { ClipboardService, TranslateService } from '@yuuvis/client-core';
|
|
3
|
+
import { of } from 'rxjs';
|
|
4
|
+
import { ACTION_ICON } from '../../actions.icon';
|
|
5
|
+
import { AbstractContextAction, BASE_ACTION, SelectionRange } from '../../actions.interface';
|
|
6
|
+
export class CopyAction extends AbstractContextAction {
|
|
7
|
+
constructor() {
|
|
8
|
+
super(...arguments);
|
|
9
|
+
this.clipboardService = inject(ClipboardService);
|
|
10
|
+
this.translate = inject(TranslateService);
|
|
11
|
+
this.id = BASE_ACTION.copy;
|
|
12
|
+
this.label = this.translate.instant('yuv.action-menu.action.copy.dms.object.label');
|
|
13
|
+
this.description = this.translate.instant('yuv.action-menu.action.copy.dms.object.description');
|
|
14
|
+
this.priority = 8;
|
|
15
|
+
this.icon = ACTION_ICON.copy;
|
|
16
|
+
this.group = 'common';
|
|
17
|
+
this.range = SelectionRange.MULTI_SELECT;
|
|
18
|
+
this.supports = {
|
|
19
|
+
pattern: '*'
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
isExecutable(items) {
|
|
23
|
+
const notAllowed = items.some((item) => !item.permissions?.writeIndexData);
|
|
24
|
+
return of(items.length > 0 && !notAllowed);
|
|
25
|
+
}
|
|
26
|
+
run(items) {
|
|
27
|
+
this.clipboardService.addObjects(items, 'copy', this.context?.appId);
|
|
28
|
+
return of(true);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29weS1hY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3l1dXZpcy9jbGllbnQtZnJhbWV3b3JrL2FjdGlvbnMvc3JjL2xpYi9hY3Rpb25zL2NvcHktYWN0aW9uL2NvcHktYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFFLGdCQUFnQixFQUFhLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDcEYsT0FBTyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDakQsT0FBTyxFQUFFLHFCQUFxQixFQUF5QixXQUFXLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFcEgsTUFBTSxPQUFPLFVBQVcsU0FBUSxxQkFBcUI7SUFBckQ7O1FBQ1UscUJBQWdCLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDNUMsY0FBUyxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBRTdDLE9BQUUsR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDO1FBQ3RCLFVBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyw4Q0FBOEMsQ0FBQyxDQUFDO1FBQy9FLGdCQUFXLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsb0RBQW9ELENBQUMsQ0FBQztRQUMzRixhQUFRLEdBQUcsQ0FBQyxDQUFDO1FBQ2IsU0FBSSxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUM7UUFDeEIsVUFBSyxHQUFHLFFBQVEsQ0FBQztRQUNqQixVQUFLLEdBQUcsY0FBYyxDQUFDLFlBQVksQ0FBQztRQUNwQyxhQUFRLEdBQWtCO1lBQ3hCLE9BQU8sRUFBRSxHQUFHO1NBQ2IsQ0FBQztJQVdKLENBQUM7SUFUQyxZQUFZLENBQUMsS0FBa0I7UUFDN0IsTUFBTSxVQUFVLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLGNBQWMsQ0FBQyxDQUFDO1FBQzNFLE9BQU8sRUFBRSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVELEdBQUcsQ0FBQyxLQUFrQjtRQUNwQixJQUFJLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNyRSxPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNsQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENsaXBib2FyZFNlcnZpY2UsIERtc09iamVjdCwgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0B5dXV2aXMvY2xpZW50LWNvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFDVElPTl9JQ09OIH0gZnJvbSAnLi4vLi4vYWN0aW9ucy5pY29uJztcbmltcG9ydCB7IEFic3RyYWN0Q29udGV4dEFjdGlvbiwgQWN0aW9uLCBBY3Rpb25TdXBwb3J0LCBCQVNFX0FDVElPTiwgU2VsZWN0aW9uUmFuZ2UgfSBmcm9tICcuLi8uLi9hY3Rpb25zLmludGVyZmFjZSc7XG5cbmV4cG9ydCBjbGFzcyBDb3B5QWN0aW9uIGV4dGVuZHMgQWJzdHJhY3RDb250ZXh0QWN0aW9uIGltcGxlbWVudHMgQWN0aW9uIHtcbiAgcHJpdmF0ZSBjbGlwYm9hcmRTZXJ2aWNlID0gaW5qZWN0KENsaXBib2FyZFNlcnZpY2UpO1xuICBwcml2YXRlIHRyYW5zbGF0ZSA9IGluamVjdChUcmFuc2xhdGVTZXJ2aWNlKTtcblxuICBpZCA9IEJBU0VfQUNUSU9OLmNvcHk7XG4gIGxhYmVsID0gdGhpcy50cmFuc2xhdGUuaW5zdGFudCgneXV2LmFjdGlvbi1tZW51LmFjdGlvbi5jb3B5LmRtcy5vYmplY3QubGFiZWwnKTtcbiAgZGVzY3JpcHRpb24gPSB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCd5dXYuYWN0aW9uLW1lbnUuYWN0aW9uLmNvcHkuZG1zLm9iamVjdC5kZXNjcmlwdGlvbicpO1xuICBwcmlvcml0eSA9IDg7XG4gIGljb24gPSBBQ1RJT05fSUNPTi5jb3B5O1xuICBncm91cCA9ICdjb21tb24nO1xuICByYW5nZSA9IFNlbGVjdGlvblJhbmdlLk1VTFRJX1NFTEVDVDtcbiAgc3VwcG9ydHM6IEFjdGlvblN1cHBvcnQgPSB7XG4gICAgcGF0dGVybjogJyonXG4gIH07XG5cbiAgaXNFeGVjdXRhYmxlKGl0ZW1zOiBEbXNPYmplY3RbXSkge1xuICAgIGNvbnN0IG5vdEFsbG93ZWQgPSBpdGVtcy5zb21lKChpdGVtKSA9PiAhaXRlbS5wZXJtaXNzaW9ucz8ud3JpdGVJbmRleERhdGEpO1xuICAgIHJldHVybiBvZihpdGVtcy5sZW5ndGggPiAwICYmICFub3RBbGxvd2VkKTtcbiAgfVxuXG4gIHJ1bihpdGVtczogRG1zT2JqZWN0W10pOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICB0aGlzLmNsaXBib2FyZFNlcnZpY2UuYWRkT2JqZWN0cyhpdGVtcywgJ2NvcHknLCB0aGlzLmNvbnRleHQ/LmFwcElkKTtcbiAgICByZXR1cm4gb2YodHJ1ZSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { inject } from '@angular/core';
|
|
2
|
+
import { ClipboardService, TranslateService } from '@yuuvis/client-core';
|
|
3
|
+
import { of } from 'rxjs';
|
|
4
|
+
import { ACTION_ICON } from '../../actions.icon';
|
|
5
|
+
import { AbstractContextAction, BASE_ACTION, SelectionRange } from '../../actions.interface';
|
|
6
|
+
export class CutAction extends AbstractContextAction {
|
|
7
|
+
constructor() {
|
|
8
|
+
super(...arguments);
|
|
9
|
+
this.clipboardService = inject(ClipboardService);
|
|
10
|
+
this.translate = inject(TranslateService);
|
|
11
|
+
this.id = BASE_ACTION.cut;
|
|
12
|
+
this.label = this.translate.instant('yuv.action-menu.action.cut.dms.object.label');
|
|
13
|
+
this.description = this.translate.instant('yuv.action-menu.action.cut.dms.object.description');
|
|
14
|
+
this.priority = 8;
|
|
15
|
+
this.icon = ACTION_ICON.cut;
|
|
16
|
+
this.group = 'common';
|
|
17
|
+
this.range = SelectionRange.MULTI_SELECT;
|
|
18
|
+
this.supports = {
|
|
19
|
+
pattern: '*'
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
isExecutable(items) {
|
|
23
|
+
return of(items.length > 0 && items.every((item) => item.permissions?.writeContent && item.permissions?.writeIndexData && item.permissions?.deleteObject));
|
|
24
|
+
}
|
|
25
|
+
run(items) {
|
|
26
|
+
this.clipboardService.addObjects(items, 'cut', this.context?.appId);
|
|
27
|
+
return of(true);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3V0LWFjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMveXV1dmlzL2NsaWVudC1mcmFtZXdvcmsvYWN0aW9ucy9zcmMvbGliL2FjdGlvbnMvY3V0LWFjdGlvbi9jdXQtYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFFLGdCQUFnQixFQUFhLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDcEYsT0FBTyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDakQsT0FBTyxFQUFFLHFCQUFxQixFQUF5QixXQUFXLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFcEgsTUFBTSxPQUFPLFNBQVUsU0FBUSxxQkFBcUI7SUFBcEQ7O1FBQ1UscUJBQWdCLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDNUMsY0FBUyxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBRTdDLE9BQUUsR0FBRyxXQUFXLENBQUMsR0FBRyxDQUFDO1FBQ3JCLFVBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyw2Q0FBNkMsQ0FBQyxDQUFDO1FBQzlFLGdCQUFXLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsbURBQW1ELENBQUMsQ0FBQztRQUMxRixhQUFRLEdBQUcsQ0FBQyxDQUFDO1FBQ2IsU0FBSSxHQUFHLFdBQVcsQ0FBQyxHQUFHLENBQUM7UUFDdkIsVUFBSyxHQUFHLFFBQVEsQ0FBQztRQUNqQixVQUFLLEdBQUcsY0FBYyxDQUFDLFlBQVksQ0FBQztRQUNwQyxhQUFRLEdBQWtCO1lBQ3hCLE9BQU8sRUFBRSxHQUFHO1NBQ2IsQ0FBQztJQVVKLENBQUM7SUFSQyxZQUFZLENBQUMsS0FBa0I7UUFDN0IsT0FBTyxFQUFFLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLElBQUksS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxZQUFZLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRSxjQUFjLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRSxZQUFZLENBQUMsQ0FBQyxDQUFDO0lBQzdKLENBQUM7SUFFRCxHQUFHLENBQUMsS0FBa0I7UUFDcEIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDcEUsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbEIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDbGlwYm9hcmRTZXJ2aWNlLCBEbXNPYmplY3QsIFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAeXV1dmlzL2NsaWVudC1jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBBQ1RJT05fSUNPTiB9IGZyb20gJy4uLy4uL2FjdGlvbnMuaWNvbic7XG5pbXBvcnQgeyBBYnN0cmFjdENvbnRleHRBY3Rpb24sIEFjdGlvbiwgQWN0aW9uU3VwcG9ydCwgQkFTRV9BQ1RJT04sIFNlbGVjdGlvblJhbmdlIH0gZnJvbSAnLi4vLi4vYWN0aW9ucy5pbnRlcmZhY2UnO1xuXG5leHBvcnQgY2xhc3MgQ3V0QWN0aW9uIGV4dGVuZHMgQWJzdHJhY3RDb250ZXh0QWN0aW9uIGltcGxlbWVudHMgQWN0aW9uIHtcbiAgcHJpdmF0ZSBjbGlwYm9hcmRTZXJ2aWNlID0gaW5qZWN0KENsaXBib2FyZFNlcnZpY2UpO1xuICBwcml2YXRlIHRyYW5zbGF0ZSA9IGluamVjdChUcmFuc2xhdGVTZXJ2aWNlKTtcblxuICBpZCA9IEJBU0VfQUNUSU9OLmN1dDtcbiAgbGFiZWwgPSB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCd5dXYuYWN0aW9uLW1lbnUuYWN0aW9uLmN1dC5kbXMub2JqZWN0LmxhYmVsJyk7XG4gIGRlc2NyaXB0aW9uID0gdGhpcy50cmFuc2xhdGUuaW5zdGFudCgneXV2LmFjdGlvbi1tZW51LmFjdGlvbi5jdXQuZG1zLm9iamVjdC5kZXNjcmlwdGlvbicpO1xuICBwcmlvcml0eSA9IDg7XG4gIGljb24gPSBBQ1RJT05fSUNPTi5jdXQ7XG4gIGdyb3VwID0gJ2NvbW1vbic7XG4gIHJhbmdlID0gU2VsZWN0aW9uUmFuZ2UuTVVMVElfU0VMRUNUO1xuICBzdXBwb3J0czogQWN0aW9uU3VwcG9ydCA9IHtcbiAgICBwYXR0ZXJuOiAnKidcbiAgfTtcblxuICBpc0V4ZWN1dGFibGUoaXRlbXM6IERtc09iamVjdFtdKSB7XG4gICAgcmV0dXJuIG9mKGl0ZW1zLmxlbmd0aCA+IDAgJiYgaXRlbXMuZXZlcnkoKGl0ZW0pID0+IGl0ZW0ucGVybWlzc2lvbnM/LndyaXRlQ29udGVudCAmJiBpdGVtLnBlcm1pc3Npb25zPy53cml0ZUluZGV4RGF0YSAmJiBpdGVtLnBlcm1pc3Npb25zPy5kZWxldGVPYmplY3QpKTtcbiAgfVxuXG4gIHJ1bihpdGVtczogRG1zT2JqZWN0W10pOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICB0aGlzLmNsaXBib2FyZFNlcnZpY2UuYWRkT2JqZWN0cyhpdGVtcywgJ2N1dCcsIHRoaXMuY29udGV4dD8uYXBwSWQpO1xuICAgIHJldHVybiBvZih0cnVlKTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
|
2
|
+
import { Component, inject } from '@angular/core';
|
|
3
|
+
import { DmsService, TranslateModule, TranslateService } from '@yuuvis/client-core';
|
|
4
|
+
import { YvcOverlayRef } from '@yuuvis/components/overlay';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@angular/common";
|
|
7
|
+
import * as i2 from "@ngx-translate/core";
|
|
8
|
+
/**
|
|
9
|
+
* @ignore
|
|
10
|
+
*/
|
|
11
|
+
export class DeleteComponent {
|
|
12
|
+
constructor() {
|
|
13
|
+
this.#dmsService = inject(DmsService);
|
|
14
|
+
this.#oref = inject(YvcOverlayRef);
|
|
15
|
+
this.translate = inject(TranslateService);
|
|
16
|
+
this.errors = [];
|
|
17
|
+
this.deleting = false;
|
|
18
|
+
this.deleteItems = this.#oref.data.items;
|
|
19
|
+
this.context = this.#oref.data.context;
|
|
20
|
+
}
|
|
21
|
+
#dmsService;
|
|
22
|
+
#oref;
|
|
23
|
+
run() {
|
|
24
|
+
this.errors = [];
|
|
25
|
+
if (this.deleteItems.length) {
|
|
26
|
+
this.deleting = true;
|
|
27
|
+
this.#dmsService
|
|
28
|
+
.deleteDmsObjects(this.deleteItems.map((o) => ({
|
|
29
|
+
id: o.id,
|
|
30
|
+
subject: o.data[this.context.subjectProperty || o.id]
|
|
31
|
+
})))
|
|
32
|
+
.subscribe({
|
|
33
|
+
next: (res) => {
|
|
34
|
+
this.errors = res
|
|
35
|
+
.filter((r) => !!r._error)
|
|
36
|
+
.map((r) => ({
|
|
37
|
+
status: r._error.status,
|
|
38
|
+
subject: this.context?.subjectProperty ? r.properties[this.context.subjectProperty].value : r.id,
|
|
39
|
+
message: this.#getErrorMessage(r._error)
|
|
40
|
+
}));
|
|
41
|
+
!this.errors.length && this.#oref.close();
|
|
42
|
+
},
|
|
43
|
+
complete: () => (this.deleting = false)
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
#getErrorMessage(error) {
|
|
48
|
+
switch (error.status) {
|
|
49
|
+
case 403:
|
|
50
|
+
return this.translate.instant('yuv.action-menu.action.delete.error.403');
|
|
51
|
+
case 404:
|
|
52
|
+
return this.translate.instant('yuv.action-menu.action.delete.error.404');
|
|
53
|
+
default:
|
|
54
|
+
return this.translate.instant('yuv.action-menu.action.delete.error.default');
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
cancel() {
|
|
58
|
+
this.#oref.close();
|
|
59
|
+
}
|
|
60
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DeleteComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
61
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: DeleteComponent, isStandalone: true, selector: "yuv-delete", ngImport: i0, template: "<div class=\"yuv-delete\" [ngClass]=\"{ deleting }\">\n <div class=\"yuv-loader-linear\"></div>\n\n @if (errors?.length) {\n <ul class=\"errors\">\n @for (e of errors; track $index) {\n <li class=\"error\">\n <span class=\"subject\">{{ e.subject }}</span>\n <span class=\"message\">{{ e.message }}</span>\n </li>\n }\n </ul>\n } @else {\n <p>{{ 'yuv.action-menu.action.delete.dms.object.confirm.message' | translate }}</p>\n }\n\n <div class=\"form-buttons\">\n <button [disabled]=\"deleting || errors?.length\" class=\"primary\" (click)=\"run()\">{{ 'yuv.action-menu.action.delete.dms.object.confirm.ok' | translate }}</button>\n <button [disabled]=\"deleting\" class=\"secondary\" (click)=\"cancel()\">{{ 'yuv.action-menu.action.delete.dms.object.confirm.cancel' | translate }}</button>\n </div>\n</div>\n", styles: [".yuv-delete{display:flex;flex-flow:column;justify-content:center;padding:var(--app-pane-padding);position:relative}.yuv-delete .yuv-loader-linear{position:absolute;inset-block-start:0;inset-inline-start:0;inset-inline-end:0}.yuv-delete:not(.deleting) .yuv-loader-linear{opacity:0}.yuv-delete p{margin:0}.yuv-delete ul.errors{list-style:none;margin:0;background-color:var(--color-error);color:#fff;padding:calc(var(--app-pane-padding) / 2);border-radius:.5rem;display:flex;flex-flow:column;gap:.5rem}.yuv-delete ul.errors .error{display:grid;grid-template-rows:auto auto;grid-template-columns:auto 1fr;grid-template-areas:\"icon subject\" \"icon message\";row-gap:.2em;column-gap:1em;align-items:center}.yuv-delete ul.errors .error .subject{grid-area:subject;font-weight:700}.yuv-delete ul.errors .error .message{grid-area:message;font-weight:400;font-style:italic;display:block}.yuv-delete ul.errors .error:before{align-self:start;font-weight:700;grid-area:icon;content:\"!\";outline:2px solid currentColor;border-radius:2px;width:1em;display:grid;place-items:center}.yuv-delete .form-buttons{display:flex;flex-flow:row-reverse;justify-content:flex-end;justify-content:end;gap:calc(var(--app-pane-padding) / 4);align-items:center;margin-block-start:calc(var(--app-pane-padding) * 1.5)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }] }); }
|
|
62
|
+
}
|
|
63
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DeleteComponent, decorators: [{
|
|
64
|
+
type: Component,
|
|
65
|
+
args: [{ selector: 'yuv-delete', standalone: true, imports: [CommonModule, TranslateModule], template: "<div class=\"yuv-delete\" [ngClass]=\"{ deleting }\">\n <div class=\"yuv-loader-linear\"></div>\n\n @if (errors?.length) {\n <ul class=\"errors\">\n @for (e of errors; track $index) {\n <li class=\"error\">\n <span class=\"subject\">{{ e.subject }}</span>\n <span class=\"message\">{{ e.message }}</span>\n </li>\n }\n </ul>\n } @else {\n <p>{{ 'yuv.action-menu.action.delete.dms.object.confirm.message' | translate }}</p>\n }\n\n <div class=\"form-buttons\">\n <button [disabled]=\"deleting || errors?.length\" class=\"primary\" (click)=\"run()\">{{ 'yuv.action-menu.action.delete.dms.object.confirm.ok' | translate }}</button>\n <button [disabled]=\"deleting\" class=\"secondary\" (click)=\"cancel()\">{{ 'yuv.action-menu.action.delete.dms.object.confirm.cancel' | translate }}</button>\n </div>\n</div>\n", styles: [".yuv-delete{display:flex;flex-flow:column;justify-content:center;padding:var(--app-pane-padding);position:relative}.yuv-delete .yuv-loader-linear{position:absolute;inset-block-start:0;inset-inline-start:0;inset-inline-end:0}.yuv-delete:not(.deleting) .yuv-loader-linear{opacity:0}.yuv-delete p{margin:0}.yuv-delete ul.errors{list-style:none;margin:0;background-color:var(--color-error);color:#fff;padding:calc(var(--app-pane-padding) / 2);border-radius:.5rem;display:flex;flex-flow:column;gap:.5rem}.yuv-delete ul.errors .error{display:grid;grid-template-rows:auto auto;grid-template-columns:auto 1fr;grid-template-areas:\"icon subject\" \"icon message\";row-gap:.2em;column-gap:1em;align-items:center}.yuv-delete ul.errors .error .subject{grid-area:subject;font-weight:700}.yuv-delete ul.errors .error .message{grid-area:message;font-weight:400;font-style:italic;display:block}.yuv-delete ul.errors .error:before{align-self:start;font-weight:700;grid-area:icon;content:\"!\";outline:2px solid currentColor;border-radius:2px;width:1em;display:grid;place-items:center}.yuv-delete .form-buttons{display:flex;flex-flow:row-reverse;justify-content:flex-end;justify-content:end;gap:calc(var(--app-pane-padding) / 4);align-items:center;margin-block-start:calc(var(--app-pane-padding) * 1.5)}\n"] }]
|
|
66
|
+
}] });
|
|
67
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsZXRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMveXV1dmlzL2NsaWVudC1mcmFtZXdvcmsvYWN0aW9ucy9zcmMvbGliL2FjdGlvbnMvZGVsZXRlLWFjdGlvbi9kZWxldGUvZGVsZXRlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMveXV1dmlzL2NsaWVudC1mcmFtZXdvcmsvYWN0aW9ucy9zcmMvbGliL2FjdGlvbnMvZGVsZXRlLWFjdGlvbi9kZWxldGUvZGVsZXRlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQWEsVUFBVSxFQUF5QyxlQUFlLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0SSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7QUFHM0Q7O0dBRUc7QUFTSCxNQUFNLE9BQU8sZUFBZTtJQVA1QjtRQVFXLGdCQUFXLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2pDLFVBQUssR0FBRyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDdEIsY0FBUyxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBRXRELFdBQU0sR0FJQSxFQUFFLENBQUM7UUFDVCxhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLGdCQUFXLEdBQWdCLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUNqRCxZQUFPLEdBQWtCLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQztLQTJDbEQ7SUF0RFUsV0FBVyxDQUFzQjtJQUNqQyxLQUFLLENBQXlCO0lBWXZDLEdBQUc7UUFDRCxJQUFJLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQztRQUNqQixJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDNUIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7WUFDckIsSUFBSSxDQUFDLFdBQVc7aUJBQ2IsZ0JBQWdCLENBQ2YsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7Z0JBQzNCLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRTtnQkFDUixPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGVBQWUsSUFBSSxDQUFDLENBQUMsRUFBRSxDQUFXO2FBQ2hFLENBQUMsQ0FBQyxDQUNKO2lCQUNBLFNBQVMsQ0FBQztnQkFDVCxJQUFJLEVBQUUsQ0FBQyxHQUF5QixFQUFFLEVBQUU7b0JBQ2xDLElBQUksQ0FBQyxNQUFNLEdBQUcsR0FBRzt5QkFDZCxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO3lCQUN6QixHQUFHLENBQUMsQ0FBQyxDQUFNLEVBQUUsRUFBRSxDQUFDLENBQUM7d0JBQ2hCLE1BQU0sRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLE1BQU07d0JBQ3ZCLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUU7d0JBQ2hHLE9BQU8sRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztxQkFDekMsQ0FBQyxDQUFDLENBQUM7b0JBQ04sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUM1QyxDQUFDO2dCQUNELFFBQVEsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO2FBQ3hDLENBQUMsQ0FBQztRQUNQLENBQUM7SUFDSCxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsS0FBd0I7UUFDdkMsUUFBUSxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDckIsS0FBSyxHQUFHO2dCQUNOLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMseUNBQXlDLENBQUMsQ0FBQztZQUMzRSxLQUFLLEdBQUc7Z0JBQ04sT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyx5Q0FBeUMsQ0FBQyxDQUFDO1lBQzNFO2dCQUNFLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsNkNBQTZDLENBQUMsQ0FBQztRQUNqRixDQUFDO0lBQ0gsQ0FBQztJQUVELE1BQU07UUFDSixJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3JCLENBQUM7K0dBdERVLGVBQWU7bUdBQWYsZUFBZSxzRUNqQjVCLHcyQkFxQkEsZzBDRFJZLFlBQVksNEhBQUUsZUFBZTs7NEZBSTVCLGVBQWU7a0JBUDNCLFNBQVM7K0JBQ0UsWUFBWSxjQUNWLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxlQUFlLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERtc09iamVjdCwgRG1zU2VydmljZSwgT2JqZWN0RGVsZXRlRXJyb3IsIE9iamVjdERlbGV0ZVJlc3VsdCwgVHJhbnNsYXRlTW9kdWxlLCBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQHl1dXZpcy9jbGllbnQtY29yZSc7XG5pbXBvcnQgeyBZdmNPdmVybGF5UmVmIH0gZnJvbSAnQHl1dXZpcy9jb21wb25lbnRzL292ZXJsYXknO1xuaW1wb3J0IHsgQWN0aW9uQ29udGV4dCB9IGZyb20gJy4uLy4uLy4uL2FjdGlvbnMuaW50ZXJmYWNlJztcblxuLyoqXG4gKiBAaWdub3JlXG4gKi9cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAneXV2LWRlbGV0ZScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFRyYW5zbGF0ZU1vZHVsZV0sXG4gIHRlbXBsYXRlVXJsOiAnLi9kZWxldGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kZWxldGUuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBEZWxldGVDb21wb25lbnQge1xuICByZWFkb25seSAjZG1zU2VydmljZSA9IGluamVjdChEbXNTZXJ2aWNlKTtcbiAgcmVhZG9ubHkgI29yZWYgPSBpbmplY3QoWXZjT3ZlcmxheVJlZik7XG4gIHByaXZhdGUgcmVhZG9ubHkgdHJhbnNsYXRlID0gaW5qZWN0KFRyYW5zbGF0ZVNlcnZpY2UpO1xuXG4gIGVycm9ycz86IHtcbiAgICBzdGF0dXM6IG51bWJlcjtcbiAgICBzdWJqZWN0OiBzdHJpbmc7XG4gICAgbWVzc2FnZTogc3RyaW5nO1xuICB9W10gPSBbXTtcbiAgZGVsZXRpbmcgPSBmYWxzZTtcbiAgZGVsZXRlSXRlbXM6IERtc09iamVjdFtdID0gdGhpcy4jb3JlZi5kYXRhLml0ZW1zO1xuICBjb250ZXh0OiBBY3Rpb25Db250ZXh0ID0gdGhpcy4jb3JlZi5kYXRhLmNvbnRleHQ7XG5cbiAgcnVuKCkge1xuICAgIHRoaXMuZXJyb3JzID0gW107XG4gICAgaWYgKHRoaXMuZGVsZXRlSXRlbXMubGVuZ3RoKSB7XG4gICAgICB0aGlzLmRlbGV0aW5nID0gdHJ1ZTtcbiAgICAgIHRoaXMuI2Rtc1NlcnZpY2VcbiAgICAgICAgLmRlbGV0ZURtc09iamVjdHMoXG4gICAgICAgICAgdGhpcy5kZWxldGVJdGVtcy5tYXAoKG8pID0+ICh7XG4gICAgICAgICAgICBpZDogby5pZCxcbiAgICAgICAgICAgIHN1YmplY3Q6IG8uZGF0YVt0aGlzLmNvbnRleHQuc3ViamVjdFByb3BlcnR5IHx8IG8uaWRdIGFzIHN0cmluZ1xuICAgICAgICAgIH0pKVxuICAgICAgICApXG4gICAgICAgIC5zdWJzY3JpYmUoe1xuICAgICAgICAgIG5leHQ6IChyZXM6IE9iamVjdERlbGV0ZVJlc3VsdFtdKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmVycm9ycyA9IHJlc1xuICAgICAgICAgICAgICAuZmlsdGVyKChyKSA9PiAhIXIuX2Vycm9yKVxuICAgICAgICAgICAgICAubWFwKChyOiBhbnkpID0+ICh7XG4gICAgICAgICAgICAgICAgc3RhdHVzOiByLl9lcnJvci5zdGF0dXMsXG4gICAgICAgICAgICAgICAgc3ViamVjdDogdGhpcy5jb250ZXh0Py5zdWJqZWN0UHJvcGVydHkgPyByLnByb3BlcnRpZXNbdGhpcy5jb250ZXh0LnN1YmplY3RQcm9wZXJ0eV0udmFsdWUgOiByLmlkLFxuICAgICAgICAgICAgICAgIG1lc3NhZ2U6IHRoaXMuI2dldEVycm9yTWVzc2FnZShyLl9lcnJvcilcbiAgICAgICAgICAgICAgfSkpO1xuICAgICAgICAgICAgIXRoaXMuZXJyb3JzLmxlbmd0aCAmJiB0aGlzLiNvcmVmLmNsb3NlKCk7XG4gICAgICAgICAgfSxcbiAgICAgICAgICBjb21wbGV0ZTogKCkgPT4gKHRoaXMuZGVsZXRpbmcgPSBmYWxzZSlcbiAgICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgI2dldEVycm9yTWVzc2FnZShlcnJvcjogT2JqZWN0RGVsZXRlRXJyb3IpOiBzdHJpbmcge1xuICAgIHN3aXRjaCAoZXJyb3Iuc3RhdHVzKSB7XG4gICAgICBjYXNlIDQwMzpcbiAgICAgICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ3l1di5hY3Rpb24tbWVudS5hY3Rpb24uZGVsZXRlLmVycm9yLjQwMycpO1xuICAgICAgY2FzZSA0MDQ6XG4gICAgICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCd5dXYuYWN0aW9uLW1lbnUuYWN0aW9uLmRlbGV0ZS5lcnJvci40MDQnKTtcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCd5dXYuYWN0aW9uLW1lbnUuYWN0aW9uLmRlbGV0ZS5lcnJvci5kZWZhdWx0Jyk7XG4gICAgfVxuICB9XG5cbiAgY2FuY2VsKCkge1xuICAgIHRoaXMuI29yZWYuY2xvc2UoKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInl1di1kZWxldGVcIiBbbmdDbGFzc109XCJ7IGRlbGV0aW5nIH1cIj5cbiAgPGRpdiBjbGFzcz1cInl1di1sb2FkZXItbGluZWFyXCI+PC9kaXY+XG5cbiAgQGlmIChlcnJvcnM/Lmxlbmd0aCkge1xuICAgIDx1bCBjbGFzcz1cImVycm9yc1wiPlxuICAgICAgQGZvciAoZSBvZiBlcnJvcnM7IHRyYWNrICRpbmRleCkge1xuICAgICAgICA8bGkgY2xhc3M9XCJlcnJvclwiPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3ViamVjdFwiPnt7IGUuc3ViamVjdCB9fTwvc3Bhbj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1lc3NhZ2VcIj57eyBlLm1lc3NhZ2UgfX08L3NwYW4+XG4gICAgICAgIDwvbGk+XG4gICAgICB9XG4gICAgPC91bD5cbiAgfSBAZWxzZSB7XG4gICAgPHA+e3sgJ3l1di5hY3Rpb24tbWVudS5hY3Rpb24uZGVsZXRlLmRtcy5vYmplY3QuY29uZmlybS5tZXNzYWdlJyB8IHRyYW5zbGF0ZSB9fTwvcD5cbiAgfVxuXG4gIDxkaXYgY2xhc3M9XCJmb3JtLWJ1dHRvbnNcIj5cbiAgICA8YnV0dG9uIFtkaXNhYmxlZF09XCJkZWxldGluZyB8fCBlcnJvcnM/Lmxlbmd0aFwiIGNsYXNzPVwicHJpbWFyeVwiIChjbGljayk9XCJydW4oKVwiPnt7ICd5dXYuYWN0aW9uLW1lbnUuYWN0aW9uLmRlbGV0ZS5kbXMub2JqZWN0LmNvbmZpcm0ub2snIHwgdHJhbnNsYXRlIH19PC9idXR0b24+XG4gICAgPGJ1dHRvbiBbZGlzYWJsZWRdPVwiZGVsZXRpbmdcIiBjbGFzcz1cInNlY29uZGFyeVwiIChjbGljayk9XCJjYW5jZWwoKVwiPnt7ICd5dXYuYWN0aW9uLW1lbnUuYWN0aW9uLmRlbGV0ZS5kbXMub2JqZWN0LmNvbmZpcm0uY2FuY2VsJyB8IHRyYW5zbGF0ZSB9fTwvYnV0dG9uPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { inject } from '@angular/core';
|
|
2
|
+
import { RetentionField, TranslateService } from '@yuuvis/client-core';
|
|
3
|
+
import { YvcOverlayService } from '@yuuvis/components/overlay';
|
|
4
|
+
import { map, of } from 'rxjs';
|
|
5
|
+
import { ACTION_ICON } from '../../actions.icon';
|
|
6
|
+
import { AbstractContextAction, BASE_ACTION, SelectionRange } from '../../actions.interface';
|
|
7
|
+
import { DeleteComponent } from './delete/delete.component';
|
|
8
|
+
export class DeleteAction extends AbstractContextAction {
|
|
9
|
+
constructor() {
|
|
10
|
+
super(...arguments);
|
|
11
|
+
this.translate = inject(TranslateService);
|
|
12
|
+
this.overlay = inject(YvcOverlayService);
|
|
13
|
+
this.id = BASE_ACTION.delete;
|
|
14
|
+
this.label = this.translate.instant('yuv.action-menu.action.delete.dms.object.label');
|
|
15
|
+
this.description = this.translate.instant('yuv.action-menu.action.delete.dms.object.description');
|
|
16
|
+
this.priority = 8;
|
|
17
|
+
this.icon = ACTION_ICON.delete;
|
|
18
|
+
this.group = 'common';
|
|
19
|
+
this.range = SelectionRange.MULTI_SELECT;
|
|
20
|
+
this.supports = {
|
|
21
|
+
pattern: '*'
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
isExecutable(items) {
|
|
25
|
+
const e = items[0];
|
|
26
|
+
let isRetentionActive = false;
|
|
27
|
+
if (e && e.data[RetentionField.RETENTION_START] && e.data[RetentionField.RETENTION_END]) {
|
|
28
|
+
const currentDate = new Date();
|
|
29
|
+
const retentionStart = new Date(e.data[RetentionField.RETENTION_START]);
|
|
30
|
+
const retentionEnd = new Date(e.data[RetentionField.RETENTION_END]);
|
|
31
|
+
isRetentionActive = retentionStart <= currentDate && currentDate <= retentionEnd;
|
|
32
|
+
}
|
|
33
|
+
return of(e && !!e.permissions && e.permissions.deleteObject && !isRetentionActive);
|
|
34
|
+
}
|
|
35
|
+
run(items) {
|
|
36
|
+
return this.overlay
|
|
37
|
+
.open(DeleteComponent, {
|
|
38
|
+
items,
|
|
39
|
+
context: this.context
|
|
40
|
+
})
|
|
41
|
+
.afterClosed$.pipe(map(() => true));
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsZXRlLWFjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMveXV1dmlzL2NsaWVudC1mcmFtZXdvcmsvYWN0aW9ucy9zcmMvbGliL2FjdGlvbnMvZGVsZXRlLWFjdGlvbi9kZWxldGUtYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFhLGNBQWMsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2xGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxHQUFHLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUscUJBQXFCLEVBQXlCLFdBQVcsRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNwSCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFNUQsTUFBTSxPQUFPLFlBQWEsU0FBUSxxQkFBcUI7SUFBdkQ7O1FBQ1UsY0FBUyxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3JDLFlBQU8sR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUU1QyxPQUFFLEdBQUcsV0FBVyxDQUFDLE1BQU0sQ0FBQztRQUN4QixVQUFLLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsZ0RBQWdELENBQUMsQ0FBQztRQUNqRixnQkFBVyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLHNEQUFzRCxDQUFDLENBQUM7UUFDN0YsYUFBUSxHQUFHLENBQUMsQ0FBQztRQUNiLFNBQUksR0FBRyxXQUFXLENBQUMsTUFBTSxDQUFDO1FBQzFCLFVBQUssR0FBRyxRQUFRLENBQUM7UUFDakIsVUFBSyxHQUFHLGNBQWMsQ0FBQyxZQUFZLENBQUM7UUFDcEMsYUFBUSxHQUFrQjtZQUN4QixPQUFPLEVBQUUsR0FBRztTQUNiLENBQUM7SUFzQkosQ0FBQztJQXBCQyxZQUFZLENBQUMsS0FBa0I7UUFDN0IsTUFBTSxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ25CLElBQUksaUJBQWlCLEdBQUcsS0FBSyxDQUFDO1FBQzlCLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUM7WUFDeEYsTUFBTSxXQUFXLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUMvQixNQUFNLGNBQWMsR0FBRyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxlQUFlLENBQVcsQ0FBQyxDQUFDO1lBQ2xGLE1BQU0sWUFBWSxHQUFHLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsQ0FBVyxDQUFDLENBQUM7WUFDOUUsaUJBQWlCLEdBQUcsY0FBYyxJQUFJLFdBQVcsSUFBSSxXQUFXLElBQUksWUFBWSxDQUFDO1FBQ25GLENBQUM7UUFDRCxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLElBQUksQ0FBQyxDQUFDLFdBQVcsQ0FBQyxZQUFZLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQ3RGLENBQUM7SUFFRCxHQUFHLENBQUMsS0FBa0I7UUFDcEIsT0FBTyxJQUFJLENBQUMsT0FBTzthQUNoQixJQUFJLENBQUMsZUFBZSxFQUFFO1lBQ3JCLEtBQUs7WUFDTCxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87U0FDdEIsQ0FBQzthQUNELFlBQVksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDeEMsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEbXNPYmplY3QsIFJldGVudGlvbkZpZWxkLCBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQHl1dXZpcy9jbGllbnQtY29yZSc7XG5pbXBvcnQgeyBZdmNPdmVybGF5U2VydmljZSB9IGZyb20gJ0B5dXV2aXMvY29tcG9uZW50cy9vdmVybGF5JztcbmltcG9ydCB7IG1hcCwgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFDVElPTl9JQ09OIH0gZnJvbSAnLi4vLi4vYWN0aW9ucy5pY29uJztcbmltcG9ydCB7IEFic3RyYWN0Q29udGV4dEFjdGlvbiwgQWN0aW9uLCBBY3Rpb25TdXBwb3J0LCBCQVNFX0FDVElPTiwgU2VsZWN0aW9uUmFuZ2UgfSBmcm9tICcuLi8uLi9hY3Rpb25zLmludGVyZmFjZSc7XG5pbXBvcnQgeyBEZWxldGVDb21wb25lbnQgfSBmcm9tICcuL2RlbGV0ZS9kZWxldGUuY29tcG9uZW50JztcblxuZXhwb3J0IGNsYXNzIERlbGV0ZUFjdGlvbiBleHRlbmRzIEFic3RyYWN0Q29udGV4dEFjdGlvbiBpbXBsZW1lbnRzIEFjdGlvbiB7XG4gIHByaXZhdGUgdHJhbnNsYXRlID0gaW5qZWN0KFRyYW5zbGF0ZVNlcnZpY2UpO1xuICBwcml2YXRlIG92ZXJsYXkgPSBpbmplY3QoWXZjT3ZlcmxheVNlcnZpY2UpO1xuXG4gIGlkID0gQkFTRV9BQ1RJT04uZGVsZXRlO1xuICBsYWJlbCA9IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ3l1di5hY3Rpb24tbWVudS5hY3Rpb24uZGVsZXRlLmRtcy5vYmplY3QubGFiZWwnKTtcbiAgZGVzY3JpcHRpb24gPSB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCd5dXYuYWN0aW9uLW1lbnUuYWN0aW9uLmRlbGV0ZS5kbXMub2JqZWN0LmRlc2NyaXB0aW9uJyk7XG4gIHByaW9yaXR5ID0gODtcbiAgaWNvbiA9IEFDVElPTl9JQ09OLmRlbGV0ZTtcbiAgZ3JvdXAgPSAnY29tbW9uJztcbiAgcmFuZ2UgPSBTZWxlY3Rpb25SYW5nZS5NVUxUSV9TRUxFQ1Q7XG4gIHN1cHBvcnRzOiBBY3Rpb25TdXBwb3J0ID0ge1xuICAgIHBhdHRlcm46ICcqJ1xuICB9O1xuXG4gIGlzRXhlY3V0YWJsZShpdGVtczogRG1zT2JqZWN0W10pIHtcbiAgICBjb25zdCBlID0gaXRlbXNbMF07XG4gICAgbGV0IGlzUmV0ZW50aW9uQWN0aXZlID0gZmFsc2U7XG4gICAgaWYgKGUgJiYgZS5kYXRhW1JldGVudGlvbkZpZWxkLlJFVEVOVElPTl9TVEFSVF0gJiYgZS5kYXRhW1JldGVudGlvbkZpZWxkLlJFVEVOVElPTl9FTkRdKSB7XG4gICAgICBjb25zdCBjdXJyZW50RGF0ZSA9IG5ldyBEYXRlKCk7XG4gICAgICBjb25zdCByZXRlbnRpb25TdGFydCA9IG5ldyBEYXRlKGUuZGF0YVtSZXRlbnRpb25GaWVsZC5SRVRFTlRJT05fU1RBUlRdIGFzIHN0cmluZyk7XG4gICAgICBjb25zdCByZXRlbnRpb25FbmQgPSBuZXcgRGF0ZShlLmRhdGFbUmV0ZW50aW9uRmllbGQuUkVURU5USU9OX0VORF0gYXMgc3RyaW5nKTtcbiAgICAgIGlzUmV0ZW50aW9uQWN0aXZlID0gcmV0ZW50aW9uU3RhcnQgPD0gY3VycmVudERhdGUgJiYgY3VycmVudERhdGUgPD0gcmV0ZW50aW9uRW5kO1xuICAgIH1cbiAgICByZXR1cm4gb2YoZSAmJiAhIWUucGVybWlzc2lvbnMgJiYgZS5wZXJtaXNzaW9ucy5kZWxldGVPYmplY3QgJiYgIWlzUmV0ZW50aW9uQWN0aXZlKTtcbiAgfVxuXG4gIHJ1bihpdGVtczogRG1zT2JqZWN0W10pOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5vdmVybGF5XG4gICAgICAub3BlbihEZWxldGVDb21wb25lbnQsIHtcbiAgICAgICAgaXRlbXMsXG4gICAgICAgIGNvbnRleHQ6IHRoaXMuY29udGV4dFxuICAgICAgfSlcbiAgICAgIC5hZnRlckNsb3NlZCQucGlwZShtYXAoKCkgPT4gdHJ1ZSkpO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { inject } from '@angular/core';
|
|
2
|
+
import { DmsService, TranslateService } from '@yuuvis/client-core';
|
|
3
|
+
import { of } from 'rxjs';
|
|
4
|
+
import { ACTION_ICON } from '../../actions.icon';
|
|
5
|
+
import { AbstractContextAction, BASE_ACTION, SelectionRange } from '../../actions.interface';
|
|
6
|
+
export class DownloadAction extends AbstractContextAction {
|
|
7
|
+
constructor() {
|
|
8
|
+
super(...arguments);
|
|
9
|
+
this.translate = inject(TranslateService);
|
|
10
|
+
this.dmsService = inject(DmsService);
|
|
11
|
+
this.id = BASE_ACTION.download;
|
|
12
|
+
this.label = this.translate.instant('yuv.action-menu.action.download.dms.object.content.label');
|
|
13
|
+
this.description = this.translate.instant('yuv.action-menu.action.download.dms.object.content.description');
|
|
14
|
+
this.priority = 2;
|
|
15
|
+
this.icon = ACTION_ICON.download;
|
|
16
|
+
this.group = 'common';
|
|
17
|
+
this.range = SelectionRange.MULTI_SELECT;
|
|
18
|
+
this.supports = {
|
|
19
|
+
pattern: '*'
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
isExecutable(selection) {
|
|
23
|
+
const noContentMatch = (Array.isArray(selection) ? selection : [selection]).find((e) => !e.content);
|
|
24
|
+
if (selection.length < 1)
|
|
25
|
+
return of(false);
|
|
26
|
+
return of(!noContentMatch);
|
|
27
|
+
}
|
|
28
|
+
run(selection) {
|
|
29
|
+
this.dmsService.downloadContent(Array.isArray(selection) ? selection : [selection]);
|
|
30
|
+
return of(true);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG93bmxvYWQtYWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy95dXV2aXMvY2xpZW50LWZyYW1ld29yay9hY3Rpb25zL3NyYy9saWIvYWN0aW9ucy9kb3dubG9hZC1hY3Rpb24vZG93bmxvYWQtYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFhLFVBQVUsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzlFLE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxxQkFBcUIsRUFBeUIsV0FBVyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXBILE1BQU0sT0FBTyxjQUFlLFNBQVEscUJBQXFCO0lBQXpEOztRQUNVLGNBQVMsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUNyQyxlQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRXhDLE9BQUUsR0FBRyxXQUFXLENBQUMsUUFBUSxDQUFDO1FBQzFCLFVBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQywwREFBMEQsQ0FBQyxDQUFDO1FBQzNGLGdCQUFXLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsZ0VBQWdFLENBQUMsQ0FBQztRQUN2RyxhQUFRLEdBQUcsQ0FBQyxDQUFDO1FBQ2IsU0FBSSxHQUFHLFdBQVcsQ0FBQyxRQUFRLENBQUM7UUFDNUIsVUFBSyxHQUFHLFFBQVEsQ0FBQztRQUNqQixVQUFLLEdBQUcsY0FBYyxDQUFDLFlBQVksQ0FBQztRQUNwQyxhQUFRLEdBQWtCO1lBQ3hCLE9BQU8sRUFBRSxHQUFHO1NBQ2IsQ0FBQztJQVlKLENBQUM7SUFWQyxZQUFZLENBQUMsU0FBc0I7UUFDakMsTUFBTSxjQUFjLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3BHLElBQUksU0FBUyxDQUFDLE1BQU0sR0FBRyxDQUFDO1lBQUUsT0FBTyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDM0MsT0FBTyxFQUFFLENBQUMsQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBRUQsR0FBRyxDQUFDLFNBQXNCO1FBQ3hCLElBQUksQ0FBQyxVQUFVLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO1FBQ3BGLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRG1zT2JqZWN0LCBEbXNTZXJ2aWNlLCBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQHl1dXZpcy9jbGllbnQtY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQUNUSU9OX0lDT04gfSBmcm9tICcuLi8uLi9hY3Rpb25zLmljb24nO1xuaW1wb3J0IHsgQWJzdHJhY3RDb250ZXh0QWN0aW9uLCBBY3Rpb24sIEFjdGlvblN1cHBvcnQsIEJBU0VfQUNUSU9OLCBTZWxlY3Rpb25SYW5nZSB9IGZyb20gJy4uLy4uL2FjdGlvbnMuaW50ZXJmYWNlJztcblxuZXhwb3J0IGNsYXNzIERvd25sb2FkQWN0aW9uIGV4dGVuZHMgQWJzdHJhY3RDb250ZXh0QWN0aW9uIGltcGxlbWVudHMgQWN0aW9uIHtcbiAgcHJpdmF0ZSB0cmFuc2xhdGUgPSBpbmplY3QoVHJhbnNsYXRlU2VydmljZSk7XG4gIHByaXZhdGUgZG1zU2VydmljZSA9IGluamVjdChEbXNTZXJ2aWNlKTtcblxuICBpZCA9IEJBU0VfQUNUSU9OLmRvd25sb2FkO1xuICBsYWJlbCA9IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ3l1di5hY3Rpb24tbWVudS5hY3Rpb24uZG93bmxvYWQuZG1zLm9iamVjdC5jb250ZW50LmxhYmVsJyk7XG4gIGRlc2NyaXB0aW9uID0gdGhpcy50cmFuc2xhdGUuaW5zdGFudCgneXV2LmFjdGlvbi1tZW51LmFjdGlvbi5kb3dubG9hZC5kbXMub2JqZWN0LmNvbnRlbnQuZGVzY3JpcHRpb24nKTtcbiAgcHJpb3JpdHkgPSAyO1xuICBpY29uID0gQUNUSU9OX0lDT04uZG93bmxvYWQ7XG4gIGdyb3VwID0gJ2NvbW1vbic7XG4gIHJhbmdlID0gU2VsZWN0aW9uUmFuZ2UuTVVMVElfU0VMRUNUO1xuICBzdXBwb3J0czogQWN0aW9uU3VwcG9ydCA9IHtcbiAgICBwYXR0ZXJuOiAnKidcbiAgfTtcblxuICBpc0V4ZWN1dGFibGUoc2VsZWN0aW9uOiBEbXNPYmplY3RbXSkge1xuICAgIGNvbnN0IG5vQ29udGVudE1hdGNoID0gKEFycmF5LmlzQXJyYXkoc2VsZWN0aW9uKSA/IHNlbGVjdGlvbiA6IFtzZWxlY3Rpb25dKS5maW5kKChlKSA9PiAhZS5jb250ZW50KTtcbiAgICBpZiAoc2VsZWN0aW9uLmxlbmd0aCA8IDEpIHJldHVybiBvZihmYWxzZSk7XG4gICAgcmV0dXJuIG9mKCFub0NvbnRlbnRNYXRjaCk7XG4gIH1cblxuICBydW4oc2VsZWN0aW9uOiBEbXNPYmplY3RbXSk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHRoaXMuZG1zU2VydmljZS5kb3dubG9hZENvbnRlbnQoQXJyYXkuaXNBcnJheShzZWxlY3Rpb24pID8gc2VsZWN0aW9uIDogW3NlbGVjdGlvbl0pO1xuICAgIHJldHVybiBvZih0cnVlKTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export const ACTION_ICON = {
|
|
2
|
+
download: '<svg xmlns="http://www.w3.org/2000/svg" height="20px" viewBox="0 -960 960 960" width="20px" fill="#e8eaed"><path d="M480-336 288-528l51-51 105 105v-342h72v342l105-105 51 51-192 192ZM263.72-192Q234-192 213-213.15T192-264v-72h72v72h432v-72h72v72q0 29.7-21.16 50.85Q725.68-192 695.96-192H263.72Z"/></svg>',
|
|
3
|
+
delete: '<svg xmlns="http://www.w3.org/2000/svg" height="20px" viewBox="0 -960 960 960" width="20px" fill="#e8eaed"><path d="M312-144q-29.7 0-50.85-21.15Q240-186.3 240-216v-480h-48v-72h192v-48h192v48h192v72h-48v479.57Q720-186 698.85-165T648-144H312Zm336-552H312v480h336v-480ZM384-288h72v-336h-72v336Zm120 0h72v-336h-72v336ZM312-696v480-480Z"/></svg>',
|
|
4
|
+
copy: '<svg xmlns="http://www.w3.org/2000/svg" height="20px" viewBox="0 -960 960 960" width="20px" fill="#e8eaed"><path d="M360-240q-29.7 0-50.85-21.15Q288-282.3 288-312v-480q0-29.7 21.15-50.85Q330.3-864 360-864h384q29.7 0 50.85 21.15Q816-821.7 816-792v480q0 29.7-21.15 50.85Q773.7-240 744-240H360Zm0-72h384v-480H360v480ZM216-96q-29.7 0-50.85-21.15Q144-138.3 144-168v-552h72v552h456v72H216Zm144-216v-480 480Z"/></svg>',
|
|
5
|
+
cut: '<svg xmlns="http://www.w3.org/2000/svg" height="20px" viewBox="0 -960 960 960" width="20px" fill="#e8eaed"><path d="M744-144 480-407l-87 88q8 16 11.5 32.85 3.5 16.86 3.5 33.71 0 65.44-45 110.94T252-96q-64.35 0-110.18-45.5Q96-187 96-252t45.5-110.5Q187-408 252.44-408q16.85 0 33.71 4Q303-400 319-392l88-87-88-88q-16 8-32.85 11.5-16.86 3.5-33.71 3.5-65.44 0-110.94-45.5T96-708q0-65 45.5-110.5T252-864q65 0 110.5 45.5T408-707.56q0 16.85-3.5 33.71Q401-657 393-641l471 469v28H744ZM595-520l-74-74 223-222h120v28L595-520ZM252.25-624q34.75 0 59.25-24.75t24.5-59.5q0-34.75-24.75-59.25t-59.5-24.5q-34.75 0-59.25 24.75t-24.5 59.5q0 34.75 24.75 59.25t59.5 24.5ZM480-456q9.6 0 16.8-7.2 7.2-7.2 7.2-16.8 0-9.6-7.2-16.8-7.2-7.2-16.8-7.2-9.6 0-16.8 7.2-7.2 7.2-7.2 16.8 0 9.6 7.2 16.8 7.2 7.2 16.8 7.2ZM252.25-168q34.75 0 59.25-24.75t24.5-59.5q0-34.75-24.75-59.25t-59.5-24.5q-34.75 0-59.25 24.75t-24.5 59.5q0 34.75 24.75 59.25t59.5 24.5Z"/></svg>',
|
|
6
|
+
manageFlavor: '<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="#e8eaed"><path d="m489-460 91-55 91 55-24-104 80-69-105-9-42-98-42 98-105 9 80 69-24 104Zm19 260h224q-7 26-24 42t-44 20L228-85q-33 5-59.5-15.5T138-154L85-591q-4-33 16-59t53-30l46-6v80l-36 5 54 437 290-36Zm-148-80q-33 0-56.5-23.5T280-360v-440q0-33 23.5-56.5T360-880h440q33 0 56.5 23.5T880-800v440q0 33-23.5 56.5T800-280H360Zm0-80h440v-440H360v440Zm220-220ZM218-164Z"/></svg>'
|
|
7
|
+
};
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9ucy5pY29uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy95dXV2aXMvY2xpZW50LWZyYW1ld29yay9hY3Rpb25zL3NyYy9saWIvYWN0aW9ucy5pY29uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRztJQUN2QixRQUFRLEVBQUUsK1NBQStTO0lBQ3pULE1BQU0sRUFBRSxzVkFBc1Y7SUFDOVYsSUFBSSxFQUFFLDRaQUE0WjtJQUNsYSxHQUFHLEVBQUUsbTZCQUFtNkI7SUFDeDZCLFlBQVksRUFBRSx5ZEFBeWQ7Q0FDMWUsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBBQ1RJT05fSUNPTiA9IHtcbiAgICBkb3dubG9hZDogJzxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIGhlaWdodD1cIjIwcHhcIiB2aWV3Qm94PVwiMCAtOTYwIDk2MCA5NjBcIiB3aWR0aD1cIjIwcHhcIiBmaWxsPVwiI2U4ZWFlZFwiPjxwYXRoIGQ9XCJNNDgwLTMzNiAyODgtNTI4bDUxLTUxIDEwNSAxMDV2LTM0Mmg3MnYzNDJsMTA1LTEwNSA1MSA1MS0xOTIgMTkyWk0yNjMuNzItMTkyUTIzNC0xOTIgMjEzLTIxMy4xNVQxOTItMjY0di03Mmg3MnY3Mmg0MzJ2LTcyaDcydjcycTAgMjkuNy0yMS4xNiA1MC44NVE3MjUuNjgtMTkyIDY5NS45Ni0xOTJIMjYzLjcyWlwiLz48L3N2Zz4nLFxuICAgIGRlbGV0ZTogJzxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIGhlaWdodD1cIjIwcHhcIiB2aWV3Qm94PVwiMCAtOTYwIDk2MCA5NjBcIiB3aWR0aD1cIjIwcHhcIiBmaWxsPVwiI2U4ZWFlZFwiPjxwYXRoIGQ9XCJNMzEyLTE0NHEtMjkuNyAwLTUwLjg1LTIxLjE1UTI0MC0xODYuMyAyNDAtMjE2di00ODBoLTQ4di03MmgxOTJ2LTQ4aDE5MnY0OGgxOTJ2NzJoLTQ4djQ3OS41N1E3MjAtMTg2IDY5OC44NS0xNjVUNjQ4LTE0NEgzMTJabTMzNi01NTJIMzEydjQ4MGgzMzZ2LTQ4MFpNMzg0LTI4OGg3MnYtMzM2aC03MnYzMzZabTEyMCAwaDcydi0zMzZoLTcydjMzNlpNMzEyLTY5NnY0ODAtNDgwWlwiLz48L3N2Zz4nLFxuICAgIGNvcHk6ICc8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiBoZWlnaHQ9XCIyMHB4XCIgdmlld0JveD1cIjAgLTk2MCA5NjAgOTYwXCIgd2lkdGg9XCIyMHB4XCIgZmlsbD1cIiNlOGVhZWRcIj48cGF0aCBkPVwiTTM2MC0yNDBxLTI5LjcgMC01MC44NS0yMS4xNVEyODgtMjgyLjMgMjg4LTMxMnYtNDgwcTAtMjkuNyAyMS4xNS01MC44NVEzMzAuMy04NjQgMzYwLTg2NGgzODRxMjkuNyAwIDUwLjg1IDIxLjE1UTgxNi04MjEuNyA4MTYtNzkydjQ4MHEwIDI5LjctMjEuMTUgNTAuODVRNzczLjctMjQwIDc0NC0yNDBIMzYwWm0wLTcyaDM4NHYtNDgwSDM2MHY0ODBaTTIxNi05NnEtMjkuNyAwLTUwLjg1LTIxLjE1UTE0NC0xMzguMyAxNDQtMTY4di01NTJoNzJ2NTUyaDQ1NnY3MkgyMTZabTE0NC0yMTZ2LTQ4MCA0ODBaXCIvPjwvc3ZnPicsXG4gICAgY3V0OiAnPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgaGVpZ2h0PVwiMjBweFwiIHZpZXdCb3g9XCIwIC05NjAgOTYwIDk2MFwiIHdpZHRoPVwiMjBweFwiIGZpbGw9XCIjZThlYWVkXCI+PHBhdGggZD1cIk03NDQtMTQ0IDQ4MC00MDdsLTg3IDg4cTggMTYgMTEuNSAzMi44NSAzLjUgMTYuODYgMy41IDMzLjcxIDAgNjUuNDQtNDUgMTEwLjk0VDI1Mi05NnEtNjQuMzUgMC0xMTAuMTgtNDUuNVE5Ni0xODcgOTYtMjUydDQ1LjUtMTEwLjVRMTg3LTQwOCAyNTIuNDQtNDA4cTE2Ljg1IDAgMzMuNzEgNFEzMDMtNDAwIDMxOS0zOTJsODgtODctODgtODhxLTE2IDgtMzIuODUgMTEuNS0xNi44NiAzLjUtMzMuNzEgMy41LTY1LjQ0IDAtMTEwLjk0LTQ1LjVUOTYtNzA4cTAtNjUgNDUuNS0xMTAuNVQyNTItODY0cTY1IDAgMTEwLjUgNDUuNVQ0MDgtNzA3LjU2cTAgMTYuODUtMy41IDMzLjcxUTQwMS02NTcgMzkzLTY0MWw0NzEgNDY5djI4SDc0NFpNNTk1LTUyMGwtNzQtNzQgMjIzLTIyMmgxMjB2MjhMNTk1LTUyMFpNMjUyLjI1LTYyNHEzNC43NSAwIDU5LjI1LTI0Ljc1dDI0LjUtNTkuNXEwLTM0Ljc1LTI0Ljc1LTU5LjI1dC01OS41LTI0LjVxLTM0Ljc1IDAtNTkuMjUgMjQuNzV0LTI0LjUgNTkuNXEwIDM0Ljc1IDI0Ljc1IDU5LjI1dDU5LjUgMjQuNVpNNDgwLTQ1NnE5LjYgMCAxNi44LTcuMiA3LjItNy4yIDcuMi0xNi44IDAtOS42LTcuMi0xNi44LTcuMi03LjItMTYuOC03LjItOS42IDAtMTYuOCA3LjItNy4yIDcuMi03LjIgMTYuOCAwIDkuNiA3LjIgMTYuOCA3LjIgNy4yIDE2LjggNy4yWk0yNTIuMjUtMTY4cTM0Ljc1IDAgNTkuMjUtMjQuNzV0MjQuNS01OS41cTAtMzQuNzUtMjQuNzUtNTkuMjV0LTU5LjUtMjQuNXEtMzQuNzUgMC01OS4yNSAyNC43NXQtMjQuNSA1OS41cTAgMzQuNzUgMjQuNzUgNTkuMjV0NTkuNSAyNC41WlwiLz48L3N2Zz4nLFxuICAgIG1hbmFnZUZsYXZvcjogJzxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIGhlaWdodD1cIjI0cHhcIiB2aWV3Qm94PVwiMCAtOTYwIDk2MCA5NjBcIiB3aWR0aD1cIjI0cHhcIiBmaWxsPVwiI2U4ZWFlZFwiPjxwYXRoIGQ9XCJtNDg5LTQ2MCA5MS01NSA5MSA1NS0yNC0xMDQgODAtNjktMTA1LTktNDItOTgtNDIgOTgtMTA1IDkgODAgNjktMjQgMTA0Wm0xOSAyNjBoMjI0cS03IDI2LTI0IDQydC00NCAyMEwyMjgtODVxLTMzIDUtNTkuNS0xNS41VDEzOC0xNTRMODUtNTkxcS00LTMzIDE2LTU5dDUzLTMwbDQ2LTZ2ODBsLTM2IDUgNTQgNDM3IDI5MC0zNlptLTE0OC04MHEtMzMgMC01Ni41LTIzLjVUMjgwLTM2MHYtNDQwcTAtMzMgMjMuNS01Ni41VDM2MC04ODBoNDQwcTMzIDAgNTYuNSAyMy41VDg4MC04MDB2NDQwcTAgMzMtMjMuNSA1Ni41VDgwMC0yODBIMzYwWm0wLTgwaDQ0MHYtNDQwSDM2MHY0NDBabTIyMC0yMjBaTTIxOC0xNjRaXCIvPjwvc3ZnPidcbn0iXX0=
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export class AbstractContextAction {
|
|
2
|
+
constructor(context) {
|
|
3
|
+
this.context = context;
|
|
4
|
+
}
|
|
5
|
+
}
|
|
6
|
+
export var SelectionRange;
|
|
7
|
+
(function (SelectionRange) {
|
|
8
|
+
SelectionRange[SelectionRange["SINGLE_SELECT"] = 0] = "SINGLE_SELECT";
|
|
9
|
+
SelectionRange[SelectionRange["MULTI_SELECT"] = 1] = "MULTI_SELECT";
|
|
10
|
+
SelectionRange[SelectionRange["MULTI_SELECT_ONLY"] = 2] = "MULTI_SELECT_ONLY";
|
|
11
|
+
SelectionRange[SelectionRange["ANY"] = 3] = "ANY";
|
|
12
|
+
})(SelectionRange || (SelectionRange = {}));
|
|
13
|
+
export const BASE_ACTION = {
|
|
14
|
+
copy: 'yuv.base.copy',
|
|
15
|
+
cut: 'yuv.base.cut',
|
|
16
|
+
download: 'yuv.base.download',
|
|
17
|
+
delete: 'yuv.base.delete'
|
|
18
|
+
};
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9ucy5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3l1dXZpcy9jbGllbnQtZnJhbWV3b3JrL2FjdGlvbnMvc3JjL2xpYi9hY3Rpb25zLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFLQSxNQUFNLE9BQU8scUJBQXFCO0lBRWhDLFlBQVksT0FBdUI7UUFDakMsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7SUFDekIsQ0FBQztDQUNGO0FBNkVELE1BQU0sQ0FBTixJQUFZLGNBS1g7QUFMRCxXQUFZLGNBQWM7SUFDeEIscUVBQWEsQ0FBQTtJQUNiLG1FQUFZLENBQUE7SUFDWiw2RUFBaUIsQ0FBQTtJQUNqQixpREFBRyxDQUFBO0FBQ0wsQ0FBQyxFQUxXLGNBQWMsS0FBZCxjQUFjLFFBS3pCO0FBRUQsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHO0lBQ3pCLElBQUksRUFBRSxlQUFlO0lBQ3JCLEdBQUcsRUFBRSxjQUFjO0lBQ25CLFFBQVEsRUFBRSxtQkFBbUI7SUFDN0IsTUFBTSxFQUFFLGlCQUFpQjtDQUMxQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRG1zT2JqZWN0IH0gZnJvbSAnQHl1dXZpcy9jbGllbnQtY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCB0eXBlIEFjdGlvbkNsYXNzID0geyBuZXcgKC4uLmFyZ3M6IGFueVtdKTogYW55IH07XG5cbmV4cG9ydCBjbGFzcyBBYnN0cmFjdENvbnRleHRBY3Rpb24ge1xuICBjb250ZXh0PzogQWN0aW9uQ29udGV4dDtcbiAgY29uc3RydWN0b3IoY29udGV4dD86IEFjdGlvbkNvbnRleHQpIHtcbiAgICB0aGlzLmNvbnRleHQgPSBjb250ZXh0O1xuICB9XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQmFzZUFjdGlvbiB7XG4gIC8qKlxuICAgKiBFcXVhbHMgdGhlIHNlbGVjdG9yIG9mIHRoZSBhY3Rpb25zIHNlbGVjdG9yICh3aWxsIGJlIHNldCBieSB0aGUgYWN0aW9uIHNlcnZpY2UpXG4gICAqL1xuICBpZDogc3RyaW5nO1xuICAvKipcbiAgICogbGFiZWwgdG8gYmUgZGlzcGxheWVkIGluc2lkZSB0aGUgYWN0aW9uIG1lbnVcbiAgICovXG4gIGxhYmVsOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBkZXNjcmlwdGlvbiB0byBiZSBkaXNwbGF5ZWQgaW5zaWRlIHRoZSBhY3Rpb24gbWVudVxuICAgKi9cbiAgZGVzY3JpcHRpb246IHN0cmluZztcbiAgLyoqXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIGljb246IHN0cmluZztcbiAgLyoqXG4gICAqIGFjdGlvbnMgcHJpb3JpdHkgZGVmaW5pbmcgdGhlIHBvc2l0aW9uIG9mIHRoZSBhY3Rpb24gd2l0aGluIHRoZSB3aG9sZSBsaXN0IG9mIGFjdGlvbnNcbiAgICovXG4gIHByaW9yaXR5OiBudW1iZXI7XG4gIC8qKlxuICAgKiBncm91cCBvZiBhY3Rpb25zIHRoZSBhY3Rpb24gc2hvdWxkIGJlIHBhcnQgb2YgKCdjb21tb24nIG9yICdmdXJ0aGVyJylcbiAgICovXG4gIGdyb3VwOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBudW1iZXIgb2Ygc2VsZWN0ZWQgaXRlbXMgc3VwcG9ydGVkIGJ5IHRoZSBhY3Rpb25cbiAgICogKFNlbGVjdGlvblJhbmdlLlNJTkdMRV9TRUxFQ1QsIFNlbGVjdGlvblJhbmdlLk1VTFRJX1NFTEVDVCwgU2VsZWN0aW9uUmFuZ2UuTVVMVElfU0VMRUNUX09OTFkgKVxuICAgKi9cbiAgcmFuZ2U6IFNlbGVjdGlvblJhbmdlO1xuXG4gIC8qKlxuICAgKiBUeXBlcyB0aGF0IGFyZSBzdXBwb3J0ZWQgYnkgdGhlIGFjdGlvblxuICAgKi9cbiAgc3VwcG9ydHM6IEFjdGlvblN1cHBvcnQ7XG5cbiAgLyoqXG4gICAqIERldGVybWluaW5nIHdoZXRoZXIgb3Igbm90IHRoZSBhY3Rpb24gaXMgZXhlY3V0YWJsZSBmb3IgdGhlIGdpdmVuIHNlbGVjdGlvblxuICAgKiBAcGFyYW0gaXRlbSBDdXJyZW50IHNlbGVjdGlvblxuICAgKiBAcmV0dXJucyB0cnVlIGlmIHRoZSBhY3Rpb24gaXMgZXhlY3V0YWJsZSBmb3IgdGhlIGN1cnJlbnQgc2VsZWN0aW9uLCBmYWxzZSBvdGhlcndpc2VcbiAgICovXG4gIGlzRXhlY3V0YWJsZTogKGl0ZW1zOiBEbXNPYmplY3RbXSkgPT4gT2JzZXJ2YWJsZTxib29sZWFuPjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBY3Rpb25TdXBwb3J0IHtcbiAgLy8gb2JqZWN0IHR5cGVzXG4gIHR5cGVzPzogc3RyaW5nW107XG4gIC8vIG9iamVjdCB0eXBlc1xuICBzb3RzPzogc3RyaW5nW107XG4gIC8vIHBhdHRlcm4gdG8gbWF0Y2ggdGhlIHR5cGUgbmFtZSBhZ2FpbnN0XG4gIHBhdHRlcm4/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWN0aW9uQ29udGV4dCB7XG4gIC8qKlxuICAgKiBBcyBhY3Rpb25zIGRlYWwgd2l0aCBEbXNPYmplY3RzIHRoZSBzdWJqZWN0IHByb3BlcnR5IGlzIHRoZSBwcm9wZXJ0eSB0aGF0XG4gICAqIHNob3VsZCBiZSB1c2VkIHRvIGRpc3BsYXkgdGhlIG5hbWUgb2YgdGhlIG9iamVjdC4gVGhpcyBtYXkgYmUgdXNlZCBmb3JcbiAgICogc2hvd2luZyB0aGUgbmFtZSBvZiB0aGUgb2JqZWN0IGluIGEgY29uZmlybWF0aW9uL2Vycm9yIGRpYWxvZyBvciBzaW1pbGFyLlxuICAgKi9cbiAgc3ViamVjdFByb3BlcnR5Pzogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIGFwcElkIGlzIHRoZSBpZCBvZiB0aGUgYXBwbGljYXRpb24gdGhhdCB0aGUgYWN0aW9uIGlzIGV4ZWN1dGVkIGluLlxuICAgKi9cbiAgYXBwSWQ/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWN0aW9uIGV4dGVuZHMgQmFzZUFjdGlvbiB7XG4gIHJ1bjogKGl0ZW1zOiBEbXNPYmplY3RbXSkgPT4gT2JzZXJ2YWJsZTxib29sZWFuPjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBY3Rpb25PcHRpb25zIHtcbiAgY29udGV4dD86IEFjdGlvbkNvbnRleHQ7XG4gIGV4Y2x1ZGU/OiBzdHJpbmdbXSB8IFJlZ0V4cDtcbn1cblxuZXhwb3J0IGVudW0gU2VsZWN0aW9uUmFuZ2Uge1xuICBTSU5HTEVfU0VMRUNULFxuICBNVUxUSV9TRUxFQ1QsXG4gIE1VTFRJX1NFTEVDVF9PTkxZLFxuICBBTllcbn1cblxuZXhwb3J0IGNvbnN0IEJBU0VfQUNUSU9OID0ge1xuICBjb3B5OiAneXV2LmJhc2UuY29weScsXG4gIGN1dDogJ3l1di5iYXNlLmN1dCcsXG4gIGRvd25sb2FkOiAneXV2LmJhc2UuZG93bmxvYWQnLFxuICBkZWxldGU6ICd5dXYuYmFzZS5kZWxldGUnXG59O1xuIl19
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { TranslateModule } from '@ngx-translate/core';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export class ActionsModule {
|
|
6
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ActionsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
7
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: ActionsModule, imports: [CommonModule, TranslateModule] }); }
|
|
8
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ActionsModule, imports: [CommonModule, TranslateModule] }); }
|
|
9
|
+
}
|
|
10
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ActionsModule, decorators: [{
|
|
11
|
+
type: NgModule,
|
|
12
|
+
args: [{
|
|
13
|
+
imports: [CommonModule, TranslateModule]
|
|
14
|
+
}]
|
|
15
|
+
}] });
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9ucy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3l1dXZpcy9jbGllbnQtZnJhbWV3b3JrL2FjdGlvbnMvc3JjL2xpYi9hY3Rpb25zLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7O0FBS3RELE1BQU0sT0FBTyxhQUFhOytHQUFiLGFBQWE7Z0hBQWIsYUFBYSxZQUZkLFlBQVksRUFBRSxlQUFlO2dIQUU1QixhQUFhLFlBRmQsWUFBWSxFQUFFLGVBQWU7OzRGQUU1QixhQUFhO2tCQUh6QixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxlQUFlLENBQUM7aUJBQ3pDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgVHJhbnNsYXRlTW9kdWxlXVxufSlcbmV4cG9ydCBjbGFzcyBBY3Rpb25zTW9kdWxlIHt9XG4iXX0=
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import { Injectable, Injector, inject, runInInjectionContext } from '@angular/core';
|
|
2
|
+
import { Utils } from '@yuuvis/client-core';
|
|
3
|
+
import { forkJoin, map } from 'rxjs';
|
|
4
|
+
import { DeleteAction } from './actions/delete-action/delete-action';
|
|
5
|
+
import { DownloadAction } from './actions/download-action/download-action';
|
|
6
|
+
import { CopyAction } from './actions/copy-action/copy-action';
|
|
7
|
+
import { YvcOverlayService } from '@yuuvis/components/overlay';
|
|
8
|
+
import { ContextmenuComponent } from './components/contextmenu/contextmenu.component';
|
|
9
|
+
import { CutAction } from './actions/cut-action/cut-action';
|
|
10
|
+
import * as i0 from "@angular/core";
|
|
11
|
+
export class ActionsService {
|
|
12
|
+
constructor() {
|
|
13
|
+
this.injector = inject(Injector);
|
|
14
|
+
this.overlay = inject(YvcOverlayService);
|
|
15
|
+
this._registeredActions = {};
|
|
16
|
+
}
|
|
17
|
+
registerActions(a) {
|
|
18
|
+
Array.isArray(a) && a.forEach((a) => (this._registeredActions[a.id] = a.action));
|
|
19
|
+
}
|
|
20
|
+
concealActions(actionIDs) {
|
|
21
|
+
Array.isArray(actionIDs) && actionIDs.forEach((id) => delete this._registeredActions[id]);
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Returns all actions that are executable for the given selection.
|
|
25
|
+
* @param selection Array of DmsObjects to check for executable actions
|
|
26
|
+
* @param options options to filter the actions
|
|
27
|
+
* @returns Observable of actions that are executable for the given selection
|
|
28
|
+
*/
|
|
29
|
+
getActions(selection, options) {
|
|
30
|
+
// TODO: check if selection is empty or if nessasery at all
|
|
31
|
+
// if (!selection || selection.length === 0) return of([]);
|
|
32
|
+
const s = this.getAvailableActions(options?.context)
|
|
33
|
+
.filter((ac) => options?.exclude
|
|
34
|
+
? Array.isArray(options.exclude)
|
|
35
|
+
? !options.exclude.includes(ac.id)
|
|
36
|
+
: options.exclude instanceof RegExp
|
|
37
|
+
? !options.exclude.test(ac.id)
|
|
38
|
+
: true
|
|
39
|
+
: true)
|
|
40
|
+
.map((action) => action.isExecutable(selection).pipe(map((executable) => ({
|
|
41
|
+
action,
|
|
42
|
+
executable
|
|
43
|
+
}))));
|
|
44
|
+
return forkJoin(s).pipe(map((res) => res.filter((r) => r.executable).map((r) => r.action)));
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Get all available actions. This includes the default actions and all registered actions but
|
|
48
|
+
* without checking if they are executable.
|
|
49
|
+
* @param context Context passed to the actions
|
|
50
|
+
* @returns Array of available actions
|
|
51
|
+
*/
|
|
52
|
+
getAvailableActions(context) {
|
|
53
|
+
let a = [];
|
|
54
|
+
runInInjectionContext(this.injector, () => {
|
|
55
|
+
a = [...this._getDefaulActions(context), ...Object.values(this._registeredActions).map((ac) => new ac(context))];
|
|
56
|
+
});
|
|
57
|
+
return a;
|
|
58
|
+
}
|
|
59
|
+
getActionsForType(objectTypeId, context) {
|
|
60
|
+
return this.getAvailableActions(context).filter((a) => this._actionsSupportsType(a, objectTypeId));
|
|
61
|
+
}
|
|
62
|
+
getActionById(id, context) {
|
|
63
|
+
return this.getAvailableActions(context).find((a) => a.id === id);
|
|
64
|
+
}
|
|
65
|
+
getActionsById(ids, context) {
|
|
66
|
+
return this.getAvailableActions(context).filter((a) => ids.includes(a.id));
|
|
67
|
+
}
|
|
68
|
+
openContextMenu(actions, callback, element) {
|
|
69
|
+
this.overlay.open(ContextmenuComponent, { actions, callback }, {}, element);
|
|
70
|
+
}
|
|
71
|
+
_actionsSupportsType(action, objectTypeId) {
|
|
72
|
+
const matchesTypes = action.supports.types ? action.supports.types.includes(objectTypeId) : false;
|
|
73
|
+
const matchesSOTs = action.supports.sots ? action.supports.sots.includes(objectTypeId) : false;
|
|
74
|
+
const matchesPattern = action.supports.pattern ? Utils.patternToRegExp(action.supports.pattern).test(objectTypeId) : false;
|
|
75
|
+
return matchesTypes || matchesSOTs || matchesPattern;
|
|
76
|
+
}
|
|
77
|
+
_getDefaulActions(context) {
|
|
78
|
+
return [new DeleteAction(context), new DownloadAction(context), new CopyAction(context), new CutAction(context)];
|
|
79
|
+
}
|
|
80
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ActionsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
81
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ActionsService, providedIn: 'root' }); }
|
|
82
|
+
}
|
|
83
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ActionsService, decorators: [{
|
|
84
|
+
type: Injectable,
|
|
85
|
+
args: [{
|
|
86
|
+
providedIn: 'root'
|
|
87
|
+
}]
|
|
88
|
+
}] });
|
|
89
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9ucy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy95dXV2aXMvY2xpZW50LWZyYW1ld29yay9hY3Rpb25zL3NyYy9saWIvYWN0aW9ucy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFVLE1BQU0sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1RixPQUFPLEVBQWEsS0FBSyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdkQsT0FBTyxFQUFjLFFBQVEsRUFBRSxHQUFHLEVBQU0sTUFBTSxNQUFNLENBQUM7QUFFckQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUMzRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDL0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDL0QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFFdEYsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOztBQUs1RCxNQUFNLE9BQU8sY0FBYztJQUgzQjtRQUltQixhQUFRLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3JDLFlBQU8sR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUVwQyx1QkFBa0IsR0FBZ0MsRUFBRSxDQUFDO0tBa0Y5RDtJQWhGQyxlQUFlLENBQUMsQ0FBd0M7UUFDdEQsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDbkYsQ0FBQztJQUVELGNBQWMsQ0FBQyxTQUFtQjtRQUNoQyxLQUFLLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxJQUFJLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDNUYsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsVUFBVSxDQUFDLFNBQXNCLEVBQUUsT0FBdUI7UUFDeEQsMkRBQTJEO1FBQzNELDJEQUEyRDtRQUMzRCxNQUFNLENBQUMsR0FBMEQsSUFBSSxDQUFDLG1CQUFtQixDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUM7YUFDeEcsTUFBTSxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FDYixPQUFPLEVBQUUsT0FBTztZQUNkLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUM7Z0JBQzlCLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUM7Z0JBQ2xDLENBQUMsQ0FBQyxPQUFPLENBQUMsT0FBTyxZQUFZLE1BQU07b0JBQ2pDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUM7b0JBQzlCLENBQUMsQ0FBQyxJQUFJO1lBQ1YsQ0FBQyxDQUFDLElBQUksQ0FDVDthQUNBLEdBQUcsQ0FBQyxDQUFDLE1BQWMsRUFBRSxFQUFFLENBQ3RCLE1BQU0sQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBSSxDQUNqQyxHQUFHLENBQUMsQ0FBQyxVQUFtQixFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQzVCLE1BQU07WUFDTixVQUFVO1NBQ1gsQ0FBQyxDQUFDLENBQ0osQ0FDRixDQUFDO1FBRUosT0FBTyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQThDLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDekksQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsbUJBQW1CLENBQUMsT0FBdUI7UUFDekMsSUFBSSxDQUFDLEdBQWEsRUFBRSxDQUFDO1FBRXJCLHFCQUFxQixDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsR0FBRyxFQUFFO1lBQ3hDLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxFQUFFLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFlLEVBQUUsRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNoSSxDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sQ0FBQyxDQUFDO0lBQ1gsQ0FBQztJQUVELGlCQUFpQixDQUFDLFlBQW9CLEVBQUUsT0FBdUI7UUFDN0QsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBUyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxFQUFFLFlBQVksQ0FBQyxDQUFDLENBQUM7SUFDN0csQ0FBQztJQUVELGFBQWEsQ0FBQyxFQUFVLEVBQUUsT0FBdUI7UUFDL0MsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFFRCxjQUFjLENBQUMsR0FBYSxFQUFFLE9BQXVCO1FBQ25ELE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUM3RSxDQUFDO0lBRUQsZUFBZSxDQUFDLE9BQXlCLEVBQUUsUUFBa0MsRUFBRSxPQUFnRDtRQUM3SCxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDOUUsQ0FBQztJQUVPLG9CQUFvQixDQUFDLE1BQWMsRUFBRSxZQUFvQjtRQUMvRCxNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7UUFDbEcsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1FBQy9GLE1BQU0sY0FBYyxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7UUFDM0gsT0FBTyxZQUFZLElBQUksV0FBVyxJQUFJLGNBQWMsQ0FBQztJQUN2RCxDQUFDO0lBRU8saUJBQWlCLENBQUMsT0FBdUI7UUFDL0MsT0FBTyxDQUFDLElBQUksWUFBWSxDQUFDLE9BQU8sQ0FBQyxFQUFFLElBQUksY0FBYyxDQUFDLE9BQU8sQ0FBQyxFQUFFLElBQUksVUFBVSxDQUFDLE9BQU8sQ0FBQyxFQUFFLElBQUksU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDbkgsQ0FBQzsrR0FyRlUsY0FBYzttSEFBZCxjQUFjLGNBRmIsTUFBTTs7NEZBRVAsY0FBYztrQkFIMUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3RvciwgU2lnbmFsLCBpbmplY3QsIHJ1bkluSW5qZWN0aW9uQ29udGV4dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRG1zT2JqZWN0LCBVdGlscyB9IGZyb20gJ0B5dXV2aXMvY2xpZW50LWNvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgZm9ya0pvaW4sIG1hcCwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFjdGlvbiwgQWN0aW9uQ2xhc3MsIEFjdGlvbkNvbnRleHQsIEFjdGlvbk9wdGlvbnMgfSBmcm9tICcuL2FjdGlvbnMuaW50ZXJmYWNlJztcbmltcG9ydCB7IERlbGV0ZUFjdGlvbiB9IGZyb20gJy4vYWN0aW9ucy9kZWxldGUtYWN0aW9uL2RlbGV0ZS1hY3Rpb24nO1xuaW1wb3J0IHsgRG93bmxvYWRBY3Rpb24gfSBmcm9tICcuL2FjdGlvbnMvZG93bmxvYWQtYWN0aW9uL2Rvd25sb2FkLWFjdGlvbic7XG5pbXBvcnQgeyBDb3B5QWN0aW9uIH0gZnJvbSAnLi9hY3Rpb25zL2NvcHktYWN0aW9uL2NvcHktYWN0aW9uJztcbmltcG9ydCB7IFl2Y092ZXJsYXlTZXJ2aWNlIH0gZnJvbSAnQHl1dXZpcy9jb21wb25lbnRzL292ZXJsYXknO1xuaW1wb3J0IHsgQ29udGV4dG1lbnVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvY29udGV4dG1lbnUvY29udGV4dG1lbnUuY29tcG9uZW50JztcbmltcG9ydCB7IEZsZXhpYmxlQ29ubmVjdGVkUG9zaXRpb25TdHJhdGVneU9yaWdpbiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IEN1dEFjdGlvbiB9IGZyb20gJy4vYWN0aW9ucy9jdXQtYWN0aW9uL2N1dC1hY3Rpb24nO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBBY3Rpb25zU2VydmljZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgaW5qZWN0b3IgPSBpbmplY3QoSW5qZWN0b3IpO1xuICBwcml2YXRlIG92ZXJsYXkgPSBpbmplY3QoWXZjT3ZlcmxheVNlcnZpY2UpO1xuXG4gIHByaXZhdGUgX3JlZ2lzdGVyZWRBY3Rpb25zOiBSZWNvcmQ8c3RyaW5nLCBBY3Rpb25DbGFzcz4gPSB7fTtcblxuICByZWdpc3RlckFjdGlvbnMoYTogeyBpZDogc3RyaW5nOyBhY3Rpb246IEFjdGlvbkNsYXNzIH1bXSkge1xuICAgIEFycmF5LmlzQXJyYXkoYSkgJiYgYS5mb3JFYWNoKChhKSA9PiAodGhpcy5fcmVnaXN0ZXJlZEFjdGlvbnNbYS5pZF0gPSBhLmFjdGlvbikpO1xuICB9XG5cbiAgY29uY2VhbEFjdGlvbnMoYWN0aW9uSURzOiBzdHJpbmdbXSkge1xuICAgIEFycmF5LmlzQXJyYXkoYWN0aW9uSURzKSAmJiBhY3Rpb25JRHMuZm9yRWFjaCgoaWQpID0+IGRlbGV0ZSB0aGlzLl9yZWdpc3RlcmVkQWN0aW9uc1tpZF0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgYWxsIGFjdGlvbnMgdGhhdCBhcmUgZXhlY3V0YWJsZSBmb3IgdGhlIGdpdmVuIHNlbGVjdGlvbi5cbiAgICogQHBhcmFtIHNlbGVjdGlvbiBBcnJheSBvZiBEbXNPYmplY3RzIHRvIGNoZWNrIGZvciBleGVjdXRhYmxlIGFjdGlvbnNcbiAgICogQHBhcmFtIG9wdGlvbnMgb3B0aW9ucyB0byBmaWx0ZXIgdGhlIGFjdGlvbnNcbiAgICogQHJldHVybnMgT2JzZXJ2YWJsZSBvZiBhY3Rpb25zIHRoYXQgYXJlIGV4ZWN1dGFibGUgZm9yIHRoZSBnaXZlbiBzZWxlY3Rpb25cbiAgICovXG4gIGdldEFjdGlvbnMoc2VsZWN0aW9uOiBEbXNPYmplY3RbXSwgb3B0aW9ucz86IEFjdGlvbk9wdGlvbnMpOiBPYnNlcnZhYmxlPEFjdGlvbltdPiB7XG4gICAgLy8gVE9ETzogY2hlY2sgaWYgc2VsZWN0aW9uIGlzIGVtcHR5IG9yIGlmIG5lc3Nhc2VyeSBhdCBhbGxcbiAgICAvLyBpZiAoIXNlbGVjdGlvbiB8fCBzZWxlY3Rpb24ubGVuZ3RoID09PSAwKSByZXR1cm4gb2YoW10pO1xuICAgIGNvbnN0IHM6IE9ic2VydmFibGU8eyBhY3Rpb246IEFjdGlvbjsgZXhlY3V0YWJsZTogYm9vbGVhbiB9PltdID0gdGhpcy5nZXRBdmFpbGFibGVBY3Rpb25zKG9wdGlvbnM/LmNvbnRleHQpXG4gICAgICAuZmlsdGVyKChhYykgPT5cbiAgICAgICAgb3B0aW9ucz8uZXhjbHVkZVxuICAgICAgICAgID8gQXJyYXkuaXNBcnJheShvcHRpb25zLmV4Y2x1ZGUpXG4gICAgICAgICAgICA/ICFvcHRpb25zLmV4Y2x1ZGUuaW5jbHVkZXMoYWMuaWQpXG4gICAgICAgICAgICA6IG9wdGlvbnMuZXhjbHVkZSBpbnN0YW5jZW9mIFJlZ0V4cFxuICAgICAgICAgICAgICA/ICFvcHRpb25zLmV4Y2x1ZGUudGVzdChhYy5pZClcbiAgICAgICAgICAgICAgOiB0cnVlXG4gICAgICAgICAgOiB0cnVlXG4gICAgICApXG4gICAgICAubWFwKChhY3Rpb246IEFjdGlvbikgPT5cbiAgICAgICAgYWN0aW9uLmlzRXhlY3V0YWJsZShzZWxlY3Rpb24pLnBpcGUoXG4gICAgICAgICAgbWFwKChleGVjdXRhYmxlOiBib29sZWFuKSA9PiAoe1xuICAgICAgICAgICAgYWN0aW9uLFxuICAgICAgICAgICAgZXhlY3V0YWJsZVxuICAgICAgICAgIH0pKVxuICAgICAgICApXG4gICAgICApO1xuXG4gICAgcmV0dXJuIGZvcmtKb2luKHMpLnBpcGUobWFwKChyZXM6IHsgYWN0aW9uOiBBY3Rpb247IGV4ZWN1dGFibGU6IGJvb2xlYW4gfVtdKSA9PiByZXMuZmlsdGVyKChyKSA9PiByLmV4ZWN1dGFibGUpLm1hcCgocikgPT4gci5hY3Rpb24pKSk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGFsbCBhdmFpbGFibGUgYWN0aW9ucy4gVGhpcyBpbmNsdWRlcyB0aGUgZGVmYXVsdCBhY3Rpb25zIGFuZCBhbGwgcmVnaXN0ZXJlZCBhY3Rpb25zIGJ1dFxuICAgKiB3aXRob3V0IGNoZWNraW5nIGlmIHRoZXkgYXJlIGV4ZWN1dGFibGUuXG4gICAqIEBwYXJhbSBjb250ZXh0IENvbnRleHQgcGFzc2VkIHRvIHRoZSBhY3Rpb25zXG4gICAqIEByZXR1cm5zIEFycmF5IG9mIGF2YWlsYWJsZSBhY3Rpb25zXG4gICAqL1xuICBnZXRBdmFpbGFibGVBY3Rpb25zKGNvbnRleHQ/OiBBY3Rpb25Db250ZXh0KTogQWN0aW9uW10ge1xuICAgIGxldCBhOiBBY3Rpb25bXSA9IFtdO1xuXG4gICAgcnVuSW5JbmplY3Rpb25Db250ZXh0KHRoaXMuaW5qZWN0b3IsICgpID0+IHtcbiAgICAgIGEgPSBbLi4udGhpcy5fZ2V0RGVmYXVsQWN0aW9ucyhjb250ZXh0KSwgLi4uT2JqZWN0LnZhbHVlcyh0aGlzLl9yZWdpc3RlcmVkQWN0aW9ucykubWFwKChhYzogQWN0aW9uQ2xhc3MpID0+IG5ldyBhYyhjb250ZXh0KSldO1xuICAgIH0pO1xuICAgIHJldHVybiBhO1xuICB9XG5cbiAgZ2V0QWN0aW9uc0ZvclR5cGUob2JqZWN0VHlwZUlkOiBzdHJpbmcsIGNvbnRleHQ/OiBBY3Rpb25Db250ZXh0KTogQWN0aW9uW10ge1xuICAgIHJldHVybiB0aGlzLmdldEF2YWlsYWJsZUFjdGlvbnMoY29udGV4dCkuZmlsdGVyKChhOiBBY3Rpb24pID0+IHRoaXMuX2FjdGlvbnNTdXBwb3J0c1R5cGUoYSwgb2JqZWN0VHlwZUlkKSk7XG4gIH1cblxuICBnZXRBY3Rpb25CeUlkKGlkOiBzdHJpbmcsIGNvbnRleHQ/OiBBY3Rpb25Db250ZXh0KTogQWN0aW9uIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5nZXRBdmFpbGFibGVBY3Rpb25zKGNvbnRleHQpLmZpbmQoKGEpID0+IGEuaWQgPT09IGlkKTtcbiAgfVxuXG4gIGdldEFjdGlvbnNCeUlkKGlkczogc3RyaW5nW10sIGNvbnRleHQ/OiBBY3Rpb25Db250ZXh0KTogQWN0aW9uW10ge1xuICAgIHJldHVybiB0aGlzLmdldEF2YWlsYWJsZUFjdGlvbnMoY29udGV4dCkuZmlsdGVyKChhKSA9PiBpZHMuaW5jbHVkZXMoYS5pZCkpO1xuICB9XG5cbiAgb3BlbkNvbnRleHRNZW51KGFjdGlvbnM6IFNpZ25hbDxBY3Rpb25bXT4sIGNhbGxiYWNrOiAoYWN0aW9uOiBBY3Rpb24pID0+IHZvaWQsIGVsZW1lbnQ6IEZsZXhpYmxlQ29ubmVjdGVkUG9zaXRpb25TdHJhdGVneU9yaWdpbikge1xuICAgIHRoaXMub3ZlcmxheS5vcGVuKENvbnRleHRtZW51Q29tcG9uZW50LCB7IGFjdGlvbnMsIGNhbGxiYWNrIH0sIHt9LCBlbGVtZW50KTtcbiAgfVxuXG4gIHByaXZhdGUgX2FjdGlvbnNTdXBwb3J0c1R5cGUoYWN0aW9uOiBBY3Rpb24sIG9iamVjdFR5cGVJZDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgY29uc3QgbWF0Y2hlc1R5cGVzID0gYWN0aW9uLnN1cHBvcnRzLnR5cGVzID8gYWN0aW9uLnN1cHBvcnRzLnR5cGVzLmluY2x1ZGVzKG9iamVjdFR5cGVJZCkgOiBmYWxzZTtcbiAgICBjb25zdCBtYXRjaGVzU09UcyA9IGFjdGlvbi5zdXBwb3J0cy5zb3RzID8gYWN0aW9uLnN1cHBvcnRzLnNvdHMuaW5jbHVkZXMob2JqZWN0VHlwZUlkKSA6IGZhbHNlO1xuICAgIGNvbnN0IG1hdGNoZXNQYXR0ZXJuID0gYWN0aW9uLnN1cHBvcnRzLnBhdHRlcm4gPyBVdGlscy5wYXR0ZXJuVG9SZWdFeHAoYWN0aW9uLnN1cHBvcnRzLnBhdHRlcm4pLnRlc3Qob2JqZWN0VHlwZUlkKSA6IGZhbHNlO1xuICAgIHJldHVybiBtYXRjaGVzVHlwZXMgfHwgbWF0Y2hlc1NPVHMgfHwgbWF0Y2hlc1BhdHRlcm47XG4gIH1cblxuICBwcml2YXRlIF9nZXREZWZhdWxBY3Rpb25zKGNvbnRleHQ/OiBBY3Rpb25Db250ZXh0KTogQWN0aW9uW10ge1xuICAgIHJldHVybiBbbmV3IERlbGV0ZUFjdGlvbihjb250ZXh0KSwgbmV3IERvd25sb2FkQWN0aW9uKGNvbnRleHQpLCBuZXcgQ29weUFjdGlvbihjb250ZXh0KSwgbmV3IEN1dEFjdGlvbihjb250ZXh0KV07XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { A11yModule } from '@angular/cdk/a11y';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { Component, inject } from '@angular/core';
|
|
4
|
+
import { ListComponent, ListItemDirective } from '@yuuvis/client-framework/list';
|
|
5
|
+
import { YvcIconModule } from '@yuuvis/components/icon';
|
|
6
|
+
import { YvcOverlayRef } from '@yuuvis/components/overlay';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
import * as i1 from "@yuuvis/components/icon";
|
|
9
|
+
import * as i2 from "@angular/cdk/a11y";
|
|
10
|
+
export class ContextmenuComponent {
|
|
11
|
+
constructor() {
|
|
12
|
+
this.oRef = inject(YvcOverlayRef);
|
|
13
|
+
this.actions = this.oRef.data.actions;
|
|
14
|
+
this.callback = this.oRef.data.callback;
|
|
15
|
+
}
|
|
16
|
+
onItemSelect(index) {
|
|
17
|
+
this.oRef?.close();
|
|
18
|
+
this.callback(this.actions()[index[0]]);
|
|
19
|
+
}
|
|
20
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ContextmenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
21
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ContextmenuComponent, isStandalone: true, selector: "yuv-contextmenu", ngImport: i0, template: "<yuv-list (itemSelect)=\"onItemSelect($event)\" cdkTrapFocus>\n @for (a of actions(); track a.id) {\n <div yuvListItem><yvc-icon [svg]=\"a.icon\"></yvc-icon> {{ a.label }}</div>\n }\n</yuv-list>\n", styles: [":host{--contextmenu-item-padding: calc(var(--app-pane-padding) / 2);--contextmenu-item-icon-size: 20px}:host [yuvListItem]{cursor:pointer;border-width:0 0 1px 0;display:flex;align-items:center;padding:var(--contextmenu-item-padding);gap:calc(var(--contextmenu-item-padding) * 1.5)}:host [yuvListItem] yvc-icon{--icon-size: var(--contextmenu-item-icon-size);flex:0 0 auto;color:var(--text-color-caption)}:host [yuvListItem]:hover,:host [yuvListItem][aria-current=true]{background-color:var(--item-focus-background-color)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: ListComponent, selector: "yuv-list", inputs: ["multiselect", "disableSelection"], outputs: ["itemSelect", "itemFocus"] }, { kind: "directive", type: ListItemDirective, selector: "[yuvListItem]", inputs: ["disabled", "active", "selected"] }, { kind: "ngmodule", type: YvcIconModule }, { kind: "component", type: i1.Icon, selector: "yvc-icon", inputs: ["label", "svg", "svgSrc"] }, { kind: "ngmodule", type: A11yModule }, { kind: "directive", type: i2.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }] }); }
|
|
22
|
+
}
|
|
23
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ContextmenuComponent, decorators: [{
|
|
24
|
+
type: Component,
|
|
25
|
+
args: [{ selector: 'yuv-contextmenu', standalone: true, imports: [CommonModule, ListComponent, ListItemDirective, YvcIconModule, A11yModule], template: "<yuv-list (itemSelect)=\"onItemSelect($event)\" cdkTrapFocus>\n @for (a of actions(); track a.id) {\n <div yuvListItem><yvc-icon [svg]=\"a.icon\"></yvc-icon> {{ a.label }}</div>\n }\n</yuv-list>\n", styles: [":host{--contextmenu-item-padding: calc(var(--app-pane-padding) / 2);--contextmenu-item-icon-size: 20px}:host [yuvListItem]{cursor:pointer;border-width:0 0 1px 0;display:flex;align-items:center;padding:var(--contextmenu-item-padding);gap:calc(var(--contextmenu-item-padding) * 1.5)}:host [yuvListItem] yvc-icon{--icon-size: var(--contextmenu-item-icon-size);flex:0 0 auto;color:var(--text-color-caption)}:host [yuvListItem]:hover,:host [yuvListItem][aria-current=true]{background-color:var(--item-focus-background-color)}\n"] }]
|
|
26
|
+
}] });
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dG1lbnUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy95dXV2aXMvY2xpZW50LWZyYW1ld29yay9hY3Rpb25zL3NyYy9saWIvY29tcG9uZW50cy9jb250ZXh0bWVudS9jb250ZXh0bWVudS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3l1dXZpcy9jbGllbnQtZnJhbWV3b3JrL2FjdGlvbnMvc3JjL2xpYi9jb21wb25lbnRzL2NvbnRleHRtZW51L2NvbnRleHRtZW51LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDMUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2pGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7QUFVM0QsTUFBTSxPQUFPLG9CQUFvQjtJQVBqQztRQVFVLFNBQUksR0FBRyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDckMsWUFBTyxHQUFxQixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7UUFDbkQsYUFBUSxHQUE2QixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7S0FNOUQ7SUFKQyxZQUFZLENBQUMsS0FBZTtRQUMxQixJQUFJLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxDQUFDO1FBQ25CLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDMUMsQ0FBQzsrR0FSVSxvQkFBb0I7bUdBQXBCLG9CQUFvQiwyRUNmakMsMk1BS0EsbWtCRE1ZLFlBQVksK0JBQUUsYUFBYSx3SUFBRSxpQkFBaUIscUdBQUUsYUFBYSw4SEFBRSxVQUFVOzs0RkFJeEUsb0JBQW9CO2tCQVBoQyxTQUFTOytCQUNFLGlCQUFpQixjQUNmLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxhQUFhLEVBQUUsaUJBQWlCLEVBQUUsYUFBYSxFQUFFLFVBQVUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEExMXlNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBpbmplY3QsIFNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTGlzdENvbXBvbmVudCwgTGlzdEl0ZW1EaXJlY3RpdmUgfSBmcm9tICdAeXV1dmlzL2NsaWVudC1mcmFtZXdvcmsvbGlzdCc7XG5pbXBvcnQgeyBZdmNJY29uTW9kdWxlIH0gZnJvbSAnQHl1dXZpcy9jb21wb25lbnRzL2ljb24nO1xuaW1wb3J0IHsgWXZjT3ZlcmxheVJlZiB9IGZyb20gJ0B5dXV2aXMvY29tcG9uZW50cy9vdmVybGF5JztcbmltcG9ydCB7IEFjdGlvbiB9IGZyb20gJy4uLy4uL2FjdGlvbnMuaW50ZXJmYWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAneXV2LWNvbnRleHRtZW51JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgTGlzdENvbXBvbmVudCwgTGlzdEl0ZW1EaXJlY3RpdmUsIFl2Y0ljb25Nb2R1bGUsIEExMXlNb2R1bGVdLFxuICB0ZW1wbGF0ZVVybDogJy4vY29udGV4dG1lbnUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vY29udGV4dG1lbnUuY29tcG9uZW50LnNjc3MnXG59KVxuZXhwb3J0IGNsYXNzIENvbnRleHRtZW51Q29tcG9uZW50IHtcbiAgcHJpdmF0ZSBvUmVmID0gaW5qZWN0KFl2Y092ZXJsYXlSZWYpO1xuICBhY3Rpb25zOiBTaWduYWw8QWN0aW9uW10+ID0gdGhpcy5vUmVmLmRhdGEuYWN0aW9ucztcbiAgY2FsbGJhY2s6IChhY3Rpb246IEFjdGlvbikgPT4gdm9pZCA9IHRoaXMub1JlZi5kYXRhLmNhbGxiYWNrO1xuXG4gIG9uSXRlbVNlbGVjdChpbmRleDogbnVtYmVyW10pIHtcbiAgICB0aGlzLm9SZWY/LmNsb3NlKCk7XG4gICAgdGhpcy5jYWxsYmFjayh0aGlzLmFjdGlvbnMoKVtpbmRleFswXV0pO1xuICB9XG59XG4iLCI8eXV2LWxpc3QgKGl0ZW1TZWxlY3QpPVwib25JdGVtU2VsZWN0KCRldmVudClcIiBjZGtUcmFwRm9jdXM+XG4gIEBmb3IgKGEgb2YgYWN0aW9ucygpOyB0cmFjayBhLmlkKSB7XG4gICAgPGRpdiB5dXZMaXN0SXRlbT48eXZjLWljb24gW3N2Z109XCJhLmljb25cIj48L3l2Yy1pY29uPiB7eyBhLmxhYmVsIH19PC9kaXY+XG4gIH1cbjwveXV2LWxpc3Q+XG4iXX0=
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './index';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieXV1dmlzLWNsaWVudC1mcmFtZXdvcmstYWN0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMveXV1dmlzL2NsaWVudC1mcmFtZXdvcmsvYWN0aW9ucy9zcmMveXV1dmlzLWNsaWVudC1mcmFtZXdvcmstYWN0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './lib/app-bar.component';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3l1dXZpcy9jbGllbnQtZnJhbWV3b3JrL2FwcC1iYXIvc3JjL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMseUJBQXlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xpYi9hcHAtYmFyLmNvbXBvbmVudCc7XG4iXX0=
|