@yuuvis/client-framework 2.20.1 → 3.0.0-beta.20.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/actions/index.d.ts +230 -9
- package/app-bar/index.d.ts +50 -1
- package/autocomplete/index.d.ts +89 -3
- package/breadcrumb/index.d.ts +112 -2
- package/clipboard/index.d.ts +19 -1
- package/common/index.d.ts +536 -7
- package/datepicker/index.d.ts +380 -6
- package/fesm2022/yuuvis-client-framework-actions.mjs +31 -32
- package/fesm2022/yuuvis-client-framework-actions.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-app-bar.mjs +14 -17
- package/fesm2022/yuuvis-client-framework-app-bar.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-autocomplete.mjs +23 -23
- package/fesm2022/yuuvis-client-framework-autocomplete.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-breadcrumb.mjs +7 -8
- package/fesm2022/yuuvis-client-framework-breadcrumb.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-clipboard.mjs +8 -10
- package/fesm2022/yuuvis-client-framework-clipboard.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-common.mjs +191 -234
- package/fesm2022/yuuvis-client-framework-common.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-datepicker.mjs +110 -145
- package/fesm2022/yuuvis-client-framework-datepicker.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-forms.mjs +283 -250
- package/fesm2022/yuuvis-client-framework-forms.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-icons.mjs +18 -19
- package/fesm2022/yuuvis-client-framework-icons.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-list.mjs +59 -57
- package/fesm2022/yuuvis-client-framework-list.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-master-details.mjs +23 -18
- package/fesm2022/yuuvis-client-framework-master-details.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-metadata-form-defaults.mjs +7 -9
- package/fesm2022/yuuvis-client-framework-metadata-form-defaults.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-metadata-form.mjs +32 -32
- package/fesm2022/yuuvis-client-framework-metadata-form.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-object-details.mjs +129 -120
- package/fesm2022/yuuvis-client-framework-object-details.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-object-flavor.mjs +67 -59
- package/fesm2022/yuuvis-client-framework-object-flavor.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-object-form.mjs +58 -60
- package/fesm2022/yuuvis-client-framework-object-form.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-object-preview.mjs +64 -47
- package/fesm2022/yuuvis-client-framework-object-preview.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-object-relationship.mjs +206 -183
- package/fesm2022/yuuvis-client-framework-object-relationship.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-object-summary.mjs +42 -42
- package/fesm2022/yuuvis-client-framework-object-summary.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-object-versions.mjs +28 -29
- package/fesm2022/yuuvis-client-framework-object-versions.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-overflow-hidden.mjs +10 -10
- package/fesm2022/yuuvis-client-framework-overflow-hidden.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-overflow-menu.mjs +16 -16
- package/fesm2022/yuuvis-client-framework-overflow-menu.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-pagination.mjs +7 -8
- package/fesm2022/yuuvis-client-framework-pagination.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-popout.mjs +55 -57
- package/fesm2022/yuuvis-client-framework-popout.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-query-list.mjs +29 -29
- package/fesm2022/yuuvis-client-framework-query-list.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-renderer.mjs +71 -68
- package/fesm2022/yuuvis-client-framework-renderer.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-sequence-list.mjs +20 -25
- package/fesm2022/yuuvis-client-framework-sequence-list.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-simple-search.mjs +31 -33
- package/fesm2022/yuuvis-client-framework-simple-search.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-sort.mjs +57 -37
- package/fesm2022/yuuvis-client-framework-sort.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-split-view.mjs +39 -38
- package/fesm2022/yuuvis-client-framework-split-view.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-tile-list.mjs +119 -121
- package/fesm2022/yuuvis-client-framework-tile-list.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-token-search.mjs +22 -22
- package/fesm2022/yuuvis-client-framework-token-search.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-tree.mjs +32 -44
- package/fesm2022/yuuvis-client-framework-tree.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-upload-progress.mjs +22 -26
- package/fesm2022/yuuvis-client-framework-upload-progress.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-widget-grid.mjs +80 -77
- package/fesm2022/yuuvis-client-framework-widget-grid.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework.mjs +23 -23
- package/fesm2022/yuuvis-client-framework.mjs.map +1 -1
- package/forms/index.d.ts +633 -13
- package/icons/index.d.ts +79 -4
- package/index.d.ts +909 -6
- package/list/index.d.ts +380 -4
- package/master-details/index.d.ts +69 -3
- package/metadata-form/index.d.ts +189 -6
- package/metadata-form-defaults/index.d.ts +14 -2
- package/object-details/index.d.ts +321 -9
- package/object-flavor/index.d.ts +86 -6
- package/object-form/index.d.ts +288 -4
- package/object-preview/index.d.ts +82 -2
- package/object-relationship/index.d.ts +120 -5
- package/object-summary/index.d.ts +105 -4
- package/object-versions/index.d.ts +43 -2
- package/overflow-hidden/index.d.ts +28 -2
- package/overflow-menu/index.d.ts +52 -3
- package/package.json +12 -12
- package/pagination/index.d.ts +31 -2
- package/popout/index.d.ts +106 -5
- package/query-list/index.d.ts +497 -2
- package/renderer/index.d.ts +117 -10
- package/sequence-list/index.d.ts +60 -2
- package/simple-search/index.d.ts +57 -1
- package/sort/index.d.ts +36 -2
- package/split-view/index.d.ts +197 -4
- package/tile-list/index.d.ts +789 -10
- package/token-search/index.d.ts +72 -3
- package/tree/index.d.ts +68 -2
- package/upload-progress/index.d.ts +44 -2
- package/widget-grid/index.d.ts +299 -7
- package/actions/lib/actions/copy-action/copy-action.d.ts +0 -17
- package/actions/lib/actions/cut-action/cut-action.d.ts +0 -17
- package/actions/lib/actions/delete-action/delete/delete.component.d.ts +0 -22
- package/actions/lib/actions/delete-action/delete-action.d.ts +0 -18
- package/actions/lib/actions/download-action/download-action.d.ts +0 -17
- package/actions/lib/actions.icon.d.ts +0 -7
- package/actions/lib/actions.interface.d.ts +0 -86
- package/actions/lib/actions.module.d.ts +0 -11
- package/actions/lib/actions.service.d.ts +0 -58
- package/actions/lib/components/contextmenu/contextmenu.component.d.ts +0 -16
- package/actions/lib/components/contextmenu/contextmenu.model.d.ts +0 -9
- package/actions/lib/components/contextmenu/contextmenuTrigger.directive.d.ts +0 -12
- package/app-bar/lib/app-bar.component.d.ts +0 -47
- package/autocomplete/lib/autocomplete.component.d.ts +0 -74
- package/autocomplete/lib/autocomplete.interface.d.ts +0 -4
- package/autocomplete/lib/autocomplete.module.d.ts +0 -7
- package/breadcrumb/lib/breadcrumb/breadcrumb.component.d.ts +0 -94
- package/breadcrumb/lib/models/breadcrumb-item.model.d.ts +0 -14
- package/breadcrumb/lib/models/index.d.ts +0 -1
- package/clipboard/lib/clipboard.component.d.ts +0 -16
- package/common/lib/common.module.d.ts +0 -21
- package/common/lib/common.utils.d.ts +0 -2
- package/common/lib/components/busy-overlay/busy-overlay.component.d.ts +0 -9
- package/common/lib/components/busy-overlay/busy-overlay.interface.d.ts +0 -4
- package/common/lib/components/confirm/confirm.component.d.ts +0 -8
- package/common/lib/components/confirm/confirm.interface.d.ts +0 -9
- package/common/lib/components/confirm/confirm.service.d.ts +0 -9
- package/common/lib/components/dialog/dialog.component.d.ts +0 -10
- package/common/lib/components/dialog/dialog.options.d.ts +0 -7
- package/common/lib/components/halo-focus/halo-focus.component.d.ts +0 -5
- package/common/lib/components/index.d.ts +0 -8
- package/common/lib/components/retention-badge/retention-badge.component.d.ts +0 -9
- package/common/lib/components/scroll-buttons/scroll-buttons.component.d.ts +0 -25
- package/common/lib/directives/autofocus-child.directive.d.ts +0 -13
- package/common/lib/directives/autofocus-delayed.directive.d.ts +0 -18
- package/common/lib/directives/busy-overlay.directive.d.ts +0 -68
- package/common/lib/directives/click-double.directive.d.ts +0 -17
- package/common/lib/directives/container-size.directive.d.ts +0 -30
- package/common/lib/directives/drag-scroll.directive.d.ts +0 -20
- package/common/lib/directives/drag-select.directive.d.ts +0 -21
- package/common/lib/directives/file-drop-zone/file-drop-zone.directive.d.ts +0 -17
- package/common/lib/directives/file-drop-zone/file-drop-zone.interface.d.ts +0 -5
- package/common/lib/directives/focus-within.directive.d.ts +0 -36
- package/common/lib/directives/index.d.ts +0 -13
- package/common/lib/directives/light-dismiss.directive.d.ts +0 -19
- package/common/lib/directives/longpress.directive.d.ts +0 -13
- package/common/lib/directives/noop-value-accessor.directive.d.ts +0 -10
- package/common/lib/directives/scroll-buttons.directive.d.ts +0 -20
- package/common/lib/mat-form-field.abstract.d.ts +0 -41
- package/common/lib/services/file-drop/file-drop.service.d.ts +0 -7
- package/common/lib/services/form-translate/form-translate.service.d.ts +0 -15
- package/common/lib/services/index.d.ts +0 -4
- package/common/lib/services/layout-settings/layout-settings.interface.d.ts +0 -1
- package/common/lib/services/layout-settings/layout-settings.service.d.ts +0 -40
- package/common/lib/services/theme/index.d.ts +0 -3
- package/common/lib/services/theme/theme.models.d.ts +0 -16
- package/common/lib/services/theme/theme.provider.d.ts +0 -4
- package/common/lib/services/theme/theme.service.d.ts +0 -16
- package/datepicker/lib/calendar/calendar.component.d.ts +0 -70
- package/datepicker/lib/date-input/date-input-element/date-input-element.component.d.ts +0 -44
- package/datepicker/lib/date-input/date-input-hour-element/date-input-hour-element.component.d.ts +0 -11
- package/datepicker/lib/date-input/date-input.component.d.ts +0 -60
- package/datepicker/lib/datepicker-calendar/datepicker-calendar-trigger.component.d.ts +0 -7
- package/datepicker/lib/datepicker-calendar/datepicker-calendar.component.d.ts +0 -12
- package/datepicker/lib/datepicker.component.d.ts +0 -80
- package/datepicker/lib/datepicker.interface.d.ts +0 -34
- package/datepicker/lib/datepicker.module.d.ts +0 -9
- package/datepicker/lib/datepicker.service.d.ts +0 -46
- package/datepicker/lib/datepicker.utils.d.ts +0 -23
- package/datepicker/lib/time-input/time-input.component.d.ts +0 -32
- package/datepicker/lib/time-input/time-input.interface.d.ts +0 -6
- package/forms/lib/elements/catalog/catalog.component.d.ts +0 -34
- package/forms/lib/elements/data-grid/data-grid/data-grid.component.d.ts +0 -46
- package/forms/lib/elements/data-grid/edit-table-data/edit-data.component.d.ts +0 -22
- package/forms/lib/elements/data-grid/model/data-grid.interface.d.ts +0 -20
- package/forms/lib/elements/datetime/datetime.component.d.ts +0 -41
- package/forms/lib/elements/datetime-range/datetime-range.component.d.ts +0 -38
- package/forms/lib/elements/i18n-catalog/i18n-catalog.component.d.ts +0 -43
- package/forms/lib/elements/index.d.ts +0 -12
- package/forms/lib/elements/number/number.component.d.ts +0 -69
- package/forms/lib/elements/number-range/number-range.component.d.ts +0 -73
- package/forms/lib/elements/organization/organization.component.d.ts +0 -66
- package/forms/lib/elements/organization-set/organization-set.component.d.ts +0 -61
- package/forms/lib/elements/range-select-date/date-range-picker/date-range-picker.component.d.ts +0 -13
- package/forms/lib/elements/range-select-date/range-select-date.component.d.ts +0 -38
- package/forms/lib/elements/range-select-date/range-select-date.interface.d.ts +0 -5
- package/forms/lib/elements/range-select-filesize/range-select-filesize.component.d.ts +0 -33
- package/forms/lib/elements/range-select-filesize/range-select-filesize.interface.d.ts +0 -5
- package/forms/lib/elements/string/string.component.d.ts +0 -100
- package/forms/lib/forms.module.d.ts +0 -17
- package/forms/lib/forms.utils.d.ts +0 -4
- package/icons/lib/icon.component.d.ts +0 -24
- package/icons/lib/icon.service.d.ts +0 -39
- package/icons/lib/icons.d.ts +0 -1
- package/icons/lib/object-type-icon/object-type-icon.component.d.ts +0 -11
- package/lib/config/halo-focus-defaults/halo-excluded-elements.const.d.ts +0 -26
- package/lib/config/halo-focus-defaults/halo-focus-navigation-keys.const.d.ts +0 -25
- package/lib/config/halo-focus-defaults/halo-focus-offset.const.d.ts +0 -25
- package/lib/config/halo-focus-defaults/halo-focus-styles.const.d.ts +0 -26
- package/lib/config/halo-focus-defaults/index.d.ts +0 -4
- package/lib/config/index.d.ts +0 -2
- package/lib/config/session/index.d.ts +0 -3
- package/lib/config/session/session-activity-window-before-end.const.d.ts +0 -43
- package/lib/config/session/session-default-duration.const.d.ts +0 -47
- package/lib/config/session/session-popup-before-end.const.d.ts +0 -47
- package/lib/enums/channel-message.enum.d.ts +0 -4
- package/lib/enums/index.d.ts +0 -1
- package/lib/models/halo-focus-config/halo-focus-config.model.d.ts +0 -48
- package/lib/models/halo-focus-config/index.d.ts +0 -1
- package/lib/models/index.d.ts +0 -3
- package/lib/models/session/channel-payload.model.d.ts +0 -5
- package/lib/models/session/index.d.ts +0 -1
- package/lib/models/snack-bar/index.d.ts +0 -3
- package/lib/models/snack-bar/snack-bar-data.model.d.ts +0 -6
- package/lib/models/snack-bar/snack-bar-level.model.d.ts +0 -1
- package/lib/models/snack-bar/snack-bar-options.model.d.ts +0 -9
- package/lib/providers/halo-focus/index.d.ts +0 -1
- package/lib/providers/halo-focus/provide-halo-focus.d.ts +0 -62
- package/lib/providers/index.d.ts +0 -2
- package/lib/providers/session/index.d.ts +0 -1
- package/lib/providers/session/provide-session.provider.d.ts +0 -43
- package/lib/services/halo-focus/halo-focus.service.d.ts +0 -95
- package/lib/services/halo-utility/halo-utility.service.d.ts +0 -245
- package/lib/services/index.d.ts +0 -4
- package/lib/services/session/session.service.d.ts +0 -113
- package/lib/services/snack-bar/snack-bar.service.d.ts +0 -22
- package/lib/yuuvis-client-framework.module.d.ts +0 -7
- package/list/lib/list-item.directive.d.ts +0 -40
- package/list/lib/list-tile/list-tile.component.d.ts +0 -14
- package/list/lib/list.component.d.ts +0 -320
- package/list/lib/list.module.d.ts +0 -9
- package/master-details/lib/master-details.component.d.ts +0 -52
- package/master-details/lib/master-details.interface.d.ts +0 -7
- package/master-details/lib/master-details.module.d.ts +0 -7
- package/metadata-form/lib/metadata-form-element-registry.service.d.ts +0 -60
- package/metadata-form/lib/metadata-form-field/metadata-form-field.component.d.ts +0 -25
- package/metadata-form/lib/metadata-form-field/metadata-form-field.interface.d.ts +0 -19
- package/metadata-form/lib/object-metadata-element-error.directive.d.ts +0 -17
- package/metadata-form/lib/object-metadata-element-label.directive.d.ts +0 -29
- package/metadata-form/lib/object-metadata-element-template.directive.d.ts +0 -45
- package/metadata-form-defaults/lib/metadata-default-templates/metadata-default-templates.component.d.ts +0 -5
- package/metadata-form-defaults/lib/metadata-form-defaults.module.d.ts +0 -7
- package/object-details/lib/object-audit/object-audit.component.d.ts +0 -49
- package/object-details/lib/object-details-header/object-details-header.component.d.ts +0 -43
- package/object-details/lib/object-details-shell/object-details-shell.component.d.ts +0 -34
- package/object-details/lib/object-details-shell/object-details-shell.service.d.ts +0 -14
- package/object-details/lib/object-details.component.d.ts +0 -47
- package/object-details/lib/object-details.module.d.ts +0 -12
- package/object-details/lib/object-metadata/form-section-group.pipe.d.ts +0 -8
- package/object-details/lib/object-metadata/object-metadata-section/object-metadata-section.component.d.ts +0 -19
- package/object-details/lib/object-metadata/object-metadata-section/object-metadata-section.interface.d.ts +0 -9
- package/object-details/lib/object-metadata/object-metadata.component.d.ts +0 -75
- package/object-details/lib/object-metadata/object-metadata.interface.d.ts +0 -26
- package/object-flavor/lib/abstract-apply-create-flavor/abstract-apply-create-flavor.component.d.ts +0 -11
- package/object-flavor/lib/abstract-apply-object-flavor/abstract-apply-object-flavor.component.d.ts +0 -13
- package/object-flavor/lib/default-apply-flavor/default-apply-flavor.component.d.ts +0 -19
- package/object-flavor/lib/flavor-chip/flavor-chip.component.d.ts +0 -13
- package/object-flavor/lib/object-flavor/object-flavor.component.d.ts +0 -23
- package/object-flavor/lib/object-flavor-picker/object-flavor-picker.component.d.ts +0 -10
- package/object-form/lib/form-scripting.api.interface.d.ts +0 -131
- package/object-form/lib/form-scripting.service.d.ts +0 -30
- package/object-form/lib/object-form-element/object-form-element.component.d.ts +0 -23
- package/object-form/lib/object-form-extension.interface.d.ts +0 -22
- package/object-form/lib/object-form-group/object-form-group.component.d.ts +0 -20
- package/object-form/lib/object-form-script/form-scripting-element-extension/form-scripting-element-extension.component.d.ts +0 -10
- package/object-form/lib/object-form-script/object-form-script.service.d.ts +0 -45
- package/object-form/lib/object-form-script/object-form-scripting-scope.d.ts +0 -50
- package/object-form/lib/object-form.component.d.ts +0 -61
- package/object-form/lib/object-form.interface.d.ts +0 -69
- package/object-form/lib/object-form.module.d.ts +0 -7
- package/object-form/lib/object-form.service.d.ts +0 -41
- package/object-form/lib/object-form.utils.d.ts +0 -20
- package/object-form/lib/object-form.validation.d.ts +0 -21
- package/object-preview/lib/components/index.d.ts +0 -2
- package/object-preview/lib/components/object-email-preview/object-email-preview.component.d.ts +0 -16
- package/object-preview/lib/components/object-preview/object-preview.component.d.ts +0 -24
- package/object-preview/lib/services/object-preview.service.d.ts +0 -40
- package/object-relationship/lib/actions/add-relationship/add-relationship.component.d.ts +0 -37
- package/object-relationship/lib/actions/relationship-target-search/relationship-target-search.component.d.ts +0 -36
- package/object-relationship/lib/node-summary/node-summary.component.d.ts +0 -26
- package/object-relationship/lib/object-relationship-graph/object-relationship-graph.component.d.ts +0 -30
- package/object-relationship/lib/object-relationship-list/object-relationship-list-item/object-relationship-list-item.component.d.ts +0 -14
- package/object-relationship/lib/object-relationship-list/object-relationship-list.component.d.ts +0 -13
- package/object-relationship/lib/object-relationship.component.d.ts +0 -28
- package/object-relationship/lib/object-relationship.const.d.ts +0 -10
- package/object-relationship/lib/object-relationship.interface.d.ts +0 -38
- package/object-relationship/lib/object-relationship.module.d.ts +0 -7
- package/object-relationship/lib/object-relationship.service.d.ts +0 -26
- package/object-summary/lib/multi-object-summary/multi-object-summary.component.d.ts +0 -7
- package/object-summary/lib/object-summary/object-summary.component.d.ts +0 -64
- package/object-summary/lib/object-summary-data/object-summary-data.component.d.ts +0 -28
- package/object-summary/lib/object-summary.module.d.ts +0 -9
- package/object-versions/lib/object-versions.component.d.ts +0 -34
- package/object-versions/lib/object-versions.module.d.ts +0 -7
- package/overflow-hidden/lib/overflow-hidden.component.d.ts +0 -19
- package/overflow-hidden/lib/overflow-hidden.module.d.ts +0 -7
- package/overflow-menu/lib/overflow-menu.component.d.ts +0 -33
- package/overflow-menu/lib/overflow-menu.interface.d.ts +0 -10
- package/overflow-menu/lib/overflow-menu.module.d.ts +0 -7
- package/pagination/lib/pagination.component.d.ts +0 -21
- package/pagination/lib/pagination.interface.d.ts +0 -5
- package/popout/lib/fullscreen.directive.d.ts +0 -4
- package/popout/lib/popout-trigger/popout-trigger.component.d.ts +0 -13
- package/popout/lib/popout.component.d.ts +0 -59
- package/popout/lib/popout.interface.d.ts +0 -24
- package/popout/lib/popout.module.d.ts +0 -9
- package/query-list/lib/query-list.component.d.ts +0 -488
- package/query-list/lib/query-list.module.d.ts +0 -7
- package/renderer/lib/property-renderer/abstract.renderer.d.ts +0 -14
- package/renderer/lib/property-renderer/boolean.renderer.component.d.ts +0 -6
- package/renderer/lib/property-renderer/datetime.renderer.d.ts +0 -6
- package/renderer/lib/property-renderer/decimal.renderer.component.d.ts +0 -6
- package/renderer/lib/property-renderer/filesize.renderer.component.d.ts +0 -7
- package/renderer/lib/property-renderer/icon.renderer.component.d.ts +0 -8
- package/renderer/lib/property-renderer/index.d.ts +0 -11
- package/renderer/lib/property-renderer/integer.renderer.component.d.ts +0 -6
- package/renderer/lib/property-renderer/organization.renderer.d.ts +0 -13
- package/renderer/lib/property-renderer/string.renderer.component.d.ts +0 -6
- package/renderer/lib/property-renderer/table.renderer.component.d.ts +0 -17
- package/renderer/lib/property-renderer/unknown.renderer.d.ts +0 -6
- package/renderer/lib/renderer.directive.d.ts +0 -13
- package/renderer/lib/services/renderer/renderer.interface.d.ts +0 -4
- package/renderer/lib/services/renderer/renderer.service.d.ts +0 -35
- package/sequence-list/lib/sequence-list.component.d.ts +0 -40
- package/sequence-list/lib/sequence-list.interface.d.ts +0 -17
- package/simple-search/lib/models/index.d.ts +0 -1
- package/simple-search/lib/models/object-type-aggregation.model.d.ts +0 -14
- package/simple-search/lib/simple-search/simple-search.component.d.ts +0 -40
- package/sort/lib/sort/models/index.d.ts +0 -1
- package/sort/lib/sort/models/sort.interface.d.ts +0 -7
- package/sort/lib/sort/sort.component.d.ts +0 -25
- package/split-view/lib/split-area-cover.directive.d.ts +0 -15
- package/split-view/lib/split-area.directive.d.ts +0 -21
- package/split-view/lib/split-view.component.d.ts +0 -159
- package/split-view/lib/split-view.interface.d.ts +0 -11
- package/split-view/lib/split-view.module.d.ts +0 -8
- package/tile-list/lib/tile-actions-menu/tile-actions-menu.component.d.ts +0 -11
- package/tile-list/lib/tile-config/action-select/action-select.component.d.ts +0 -13
- package/tile-list/lib/tile-config/icon-select/icon-select.component.d.ts +0 -11
- package/tile-list/lib/tile-config/property-select/property-select.component.d.ts +0 -26
- package/tile-list/lib/tile-config/tile-config-tile/tile-config-tile.component.d.ts +0 -20
- package/tile-list/lib/tile-config/tile-config-trigger/tile-config-trigger.component.d.ts +0 -17
- package/tile-list/lib/tile-config/tile-config.component.d.ts +0 -48
- package/tile-list/lib/tile-extension/directive/tile-extension.directive.d.ts +0 -11
- package/tile-list/lib/tile-extension/extensions/email.extension.d.ts +0 -10
- package/tile-list/lib/tile-extension/tile-extension.service.d.ts +0 -16
- package/tile-list/lib/tile-list/tile-list.component.d.ts +0 -637
- package/tile-list/lib/tile-list/tile-list.interface.d.ts +0 -18
- package/token-search/lib/token-search.component.d.ts +0 -35
- package/token-search/lib/token-search.interface.d.ts +0 -27
- package/token-search/lib/token-search.module.d.ts +0 -7
- package/tree/lib/tree-node/tree-node.component.d.ts +0 -21
- package/tree/lib/tree.component.d.ts +0 -53
- package/tree/lib/tree.interface.d.ts +0 -11
- package/tree/lib/tree.service.d.ts +0 -35
- package/upload-progress/lib/upload-progress/upload-progress-overlay/upload-progress-overlay.component.d.ts +0 -12
- package/upload-progress/lib/upload-progress/upload-progress.component.d.ts +0 -33
- package/upload-progress/lib/upload-progress/upload-progress.module.d.ts +0 -7
- package/widget-grid/lib/widget-grid-event.service.d.ts +0 -10
- package/widget-grid/lib/widget-grid-registry.service.d.ts +0 -81
- package/widget-grid/lib/widget-grid-workspaces/widget-grid-workspaces.component.d.ts +0 -53
- package/widget-grid/lib/widget-grid-workspaces/widget-grid-workspaces.interface.d.ts +0 -17
- package/widget-grid/lib/widget-grid-workspaces/workspace-edit/workspace-edit.component.d.ts +0 -10
- package/widget-grid/lib/widget-grid.component.d.ts +0 -52
- package/widget-grid/lib/widget-grid.interface.d.ts +0 -51
- package/widget-grid/lib/widget-grid.module.d.ts +0 -8
- package/widget-grid/lib/widget-grid.service.d.ts +0 -45
- package/widget-grid/lib/widget-grid.utils.d.ts +0 -18
- package/widget-grid/lib/widget-picker/widget-picker.component.d.ts +0 -38
- package/widget-grid/lib/widgets/noop/noop.component.d.ts +0 -7
|
@@ -1,21 +1,20 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { input, output, viewChild, ChangeDetectionStrategy, Component, Injectable, inject, ViewContainerRef, effect, Directive, DestroyRef, ElementRef, contentChild, viewChildren, computed, signal, linkedSignal, untracked } from '@angular/core';
|
|
3
|
-
import
|
|
4
|
-
import { ObjectConfigService, DmsService, SearchService, DmsObject, BaseObjectTypeField, TranslateModule, SystemService, ContentStreamField, Utils, Sort } from '@yuuvis/client-core';
|
|
3
|
+
import { ObjectConfigService, DmsService, SearchService, DmsObject, BaseObjectTypeField, TranslatePipe, SystemService, ContentStreamField, Utils, Sort } from '@yuuvis/client-core';
|
|
5
4
|
import { coerceBooleanProperty } from '@angular/cdk/coercion';
|
|
6
5
|
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
7
6
|
import * as i1$2 from '@angular/forms';
|
|
8
7
|
import { ReactiveFormsModule, FormsModule } from '@angular/forms';
|
|
9
|
-
import * as
|
|
8
|
+
import * as i3 from '@angular/material/icon';
|
|
10
9
|
import { MatIcon, MatIconModule } from '@angular/material/icon';
|
|
11
10
|
import { MatMenu, MatMenuItem, MatMenuTrigger } from '@angular/material/menu';
|
|
12
11
|
import { MatPaginatorModule } from '@angular/material/paginator';
|
|
13
|
-
import * as
|
|
12
|
+
import * as i4 from '@angular/material/tooltip';
|
|
14
13
|
import { MatTooltip, MAT_TOOLTIP_DEFAULT_OPTIONS, MatTooltipModule } from '@angular/material/tooltip';
|
|
15
14
|
import { ActionsService } from '@yuuvis/client-framework/actions';
|
|
16
|
-
import * as
|
|
15
|
+
import * as i1 from '@yuuvis/client-framework/list';
|
|
17
16
|
import { YuvListModule } from '@yuuvis/client-framework/list';
|
|
18
|
-
import * as
|
|
17
|
+
import * as i2 from '@yuuvis/client-framework/query-list';
|
|
19
18
|
import { YuvQueryListModule } from '@yuuvis/client-framework/query-list';
|
|
20
19
|
import { RendererDirective } from '@yuuvis/client-framework/renderer';
|
|
21
20
|
import { YmtMatIconRegistryService, YmtIconButtonDirective, YmtButtonDirective } from '@yuuvis/material';
|
|
@@ -24,16 +23,16 @@ import * as i1$1 from '@angular/material/button';
|
|
|
24
23
|
import { MatButtonModule } from '@angular/material/button';
|
|
25
24
|
import { MatDialogModule, MatDialog } from '@angular/material/dialog';
|
|
26
25
|
import { MatFormFieldModule } from '@angular/material/form-field';
|
|
27
|
-
import * as
|
|
26
|
+
import * as i2$1 from '@angular/material/select';
|
|
28
27
|
import { MatSelectModule } from '@angular/material/select';
|
|
29
28
|
import { DialogComponent } from '@yuuvis/client-framework/common';
|
|
30
|
-
import { NgClass
|
|
29
|
+
import { NgClass } from '@angular/common';
|
|
31
30
|
import { ObjectTypeIconComponent } from '@yuuvis/client-framework/icons';
|
|
32
|
-
import {
|
|
31
|
+
import { TranslatePipe as TranslatePipe$1 } from '@ngx-translate/core';
|
|
33
32
|
|
|
34
33
|
class TileActionsMenuComponent {
|
|
35
34
|
constructor() {
|
|
36
|
-
this.actions = input.required();
|
|
35
|
+
this.actions = input.required(...(ngDevMode ? [{ debugName: "actions" }] : []));
|
|
37
36
|
this.itemSelect = output();
|
|
38
37
|
this.matMenu = viewChild.required('menuRef');
|
|
39
38
|
}
|
|
@@ -42,8 +41,8 @@ class TileActionsMenuComponent {
|
|
|
42
41
|
event.preventDefault();
|
|
43
42
|
this.itemSelect.emit(action);
|
|
44
43
|
}
|
|
45
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
46
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
44
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: TileActionsMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
45
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.19", type: TileActionsMenuComponent, isStandalone: true, selector: "yuv-tile-actions-menu", inputs: { actions: { classPropertyName: "actions", publicName: "actions", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { itemSelect: "itemSelect" }, providers: [{ provide: MAT_TOOLTIP_DEFAULT_OPTIONS, useValue: { position: 'right' } }], viewQueries: [{ propertyName: "matMenu", first: true, predicate: ["menuRef"], descendants: true, isSignal: true }], ngImport: i0, template: `
|
|
47
46
|
<mat-menu #menuRef>
|
|
48
47
|
@for (action of actions(); track action.id) {
|
|
49
48
|
<button
|
|
@@ -61,7 +60,7 @@ class TileActionsMenuComponent {
|
|
|
61
60
|
</mat-menu>
|
|
62
61
|
`, isInline: true, styles: [":host{display:block}\n"], dependencies: [{ kind: "component", type: MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
63
62
|
}
|
|
64
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
63
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: TileActionsMenuComponent, decorators: [{
|
|
65
64
|
type: Component,
|
|
66
65
|
args: [{ selector: 'yuv-tile-actions-menu', imports: [MatMenu, MatIcon, MatMenuItem, MatTooltip], template: `
|
|
67
66
|
<mat-menu #menuRef>
|
|
@@ -80,7 +79,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
|
|
|
80
79
|
}
|
|
81
80
|
</mat-menu>
|
|
82
81
|
`, providers: [{ provide: MAT_TOOLTIP_DEFAULT_OPTIONS, useValue: { position: 'right' } }], changeDetection: ChangeDetectionStrategy.OnPush, styles: [":host{display:block}\n"] }]
|
|
83
|
-
}] });
|
|
82
|
+
}], propDecorators: { actions: [{ type: i0.Input, args: [{ isSignal: true, alias: "actions", required: true }] }], itemSelect: [{ type: i0.Output, args: ["itemSelect"] }], matMenu: [{ type: i0.ViewChild, args: ['menuRef', { isSignal: true }] }] } });
|
|
84
83
|
|
|
85
84
|
class TileExtensionService {
|
|
86
85
|
constructor() {
|
|
@@ -105,10 +104,10 @@ class TileExtensionService {
|
|
|
105
104
|
getTileExtension(typeId) {
|
|
106
105
|
return this._extensions[typeId];
|
|
107
106
|
}
|
|
108
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
109
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
107
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: TileExtensionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
108
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: TileExtensionService, providedIn: 'root' }); }
|
|
110
109
|
}
|
|
111
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
110
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: TileExtensionService, decorators: [{
|
|
112
111
|
type: Injectable,
|
|
113
112
|
args: [{
|
|
114
113
|
providedIn: 'root'
|
|
@@ -119,7 +118,7 @@ class TileExtensionDirective {
|
|
|
119
118
|
constructor() {
|
|
120
119
|
this.#tileExtensioService = inject(TileExtensionService);
|
|
121
120
|
this.#containerRef = inject(ViewContainerRef);
|
|
122
|
-
this.yuvTileExtension = input.required();
|
|
121
|
+
this.yuvTileExtension = input.required(...(ngDevMode ? [{ debugName: "yuvTileExtension" }] : []));
|
|
123
122
|
this.#yuvTileExtensionEffect = effect(() => {
|
|
124
123
|
const tile = this.yuvTileExtension();
|
|
125
124
|
if (tile.typeId) {
|
|
@@ -127,7 +126,7 @@ class TileExtensionDirective {
|
|
|
127
126
|
if (ext)
|
|
128
127
|
this._render(ext, tile.data);
|
|
129
128
|
}
|
|
130
|
-
});
|
|
129
|
+
}, ...(ngDevMode ? [{ debugName: "#yuvTileExtensionEffect" }] : []));
|
|
131
130
|
}
|
|
132
131
|
#tileExtensioService;
|
|
133
132
|
#containerRef;
|
|
@@ -138,16 +137,16 @@ class TileExtensionDirective {
|
|
|
138
137
|
this.component = this.#containerRef.createComponent(ext.cmp);
|
|
139
138
|
this.component.setInput('data', data);
|
|
140
139
|
}
|
|
141
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
142
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "
|
|
140
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: TileExtensionDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
141
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.3.19", type: TileExtensionDirective, isStandalone: true, selector: "[yuvTileExtension]", inputs: { yuvTileExtension: { classPropertyName: "yuvTileExtension", publicName: "yuvTileExtension", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0 }); }
|
|
143
142
|
}
|
|
144
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
143
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: TileExtensionDirective, decorators: [{
|
|
145
144
|
type: Directive,
|
|
146
145
|
args: [{
|
|
147
146
|
selector: '[yuvTileExtension]',
|
|
148
147
|
standalone: true
|
|
149
148
|
}]
|
|
150
|
-
}] });
|
|
149
|
+
}], propDecorators: { yuvTileExtension: [{ type: i0.Input, args: [{ isSignal: true, alias: "yuvTileExtension", required: true }] }] } });
|
|
151
150
|
|
|
152
151
|
const MATERIAL_IMPORTS = [MatIconModule, MatPaginatorModule, MatTooltipModule, MatMenuTrigger];
|
|
153
152
|
/**
|
|
@@ -238,7 +237,7 @@ class TileListComponent {
|
|
|
238
237
|
* </yuv-tile-list>
|
|
239
238
|
* ```
|
|
240
239
|
*/
|
|
241
|
-
this.menuComponent = contentChild(TileActionsMenuComponent);
|
|
240
|
+
this.menuComponent = contentChild(TileActionsMenuComponent, ...(ngDevMode ? [{ debugName: "menuComponent" }] : []));
|
|
242
241
|
/**
|
|
243
242
|
* Optional projected element shown when the query returns an empty result set.
|
|
244
243
|
*
|
|
@@ -249,7 +248,7 @@ class TileListComponent {
|
|
|
249
248
|
* </yuv-tile-list>
|
|
250
249
|
* ```
|
|
251
250
|
*/
|
|
252
|
-
this.emptyContent = contentChild('empty');
|
|
251
|
+
this.emptyContent = contentChild('empty', ...(ngDevMode ? [{ debugName: "emptyContent" }] : []));
|
|
253
252
|
/**
|
|
254
253
|
* Reference to the inner `QueryListComponent` instance.
|
|
255
254
|
*
|
|
@@ -264,7 +263,7 @@ class TileListComponent {
|
|
|
264
263
|
* Used by `#closeMenuEffect` to close every open context/action menu when the user
|
|
265
264
|
* selects a menu item, ensuring only one menu is open at a time.
|
|
266
265
|
*/
|
|
267
|
-
this.menuTriggers = viewChildren(MatMenuTrigger);
|
|
266
|
+
this.menuTriggers = viewChildren(MatMenuTrigger, ...(ngDevMode ? [{ debugName: "menuTriggers" }] : []));
|
|
268
267
|
/**
|
|
269
268
|
* Namespace key for storing and retrieving this instance's tile configuration.
|
|
270
269
|
*
|
|
@@ -276,7 +275,7 @@ class TileListComponent {
|
|
|
276
275
|
* Use a unique, stable string — e.g. `"my-app.inbox-list"`. If omitted, the global
|
|
277
276
|
* default configuration is used.
|
|
278
277
|
*/
|
|
279
|
-
this.bucket = input();
|
|
278
|
+
this.bucket = input(...(ngDevMode ? [undefined, { debugName: "bucket" }] : []));
|
|
280
279
|
/**
|
|
281
280
|
* Number of result items to request per page from the search service.
|
|
282
281
|
*
|
|
@@ -286,7 +285,7 @@ class TileListComponent {
|
|
|
286
285
|
*
|
|
287
286
|
* @default SearchService.DEFAULT_QUERY_SIZE
|
|
288
287
|
*/
|
|
289
|
-
this.pageSize = input(SearchService.DEFAULT_QUERY_SIZE);
|
|
288
|
+
this.pageSize = input(SearchService.DEFAULT_QUERY_SIZE, ...(ngDevMode ? [{ debugName: "pageSize" }] : []));
|
|
290
289
|
/**
|
|
291
290
|
* Enables multi-selection mode.
|
|
292
291
|
*
|
|
@@ -297,7 +296,7 @@ class TileListComponent {
|
|
|
297
296
|
*
|
|
298
297
|
* @default false
|
|
299
298
|
*/
|
|
300
|
-
this.multiselect = input(false);
|
|
299
|
+
this.multiselect = input(false, ...(ngDevMode ? [{ debugName: "multiselect" }] : []));
|
|
301
300
|
/**
|
|
302
301
|
* Renders tiles in a compact, reduced-height style.
|
|
303
302
|
*
|
|
@@ -306,7 +305,7 @@ class TileListComponent {
|
|
|
306
305
|
*
|
|
307
306
|
* @default false
|
|
308
307
|
*/
|
|
309
|
-
this.dense = input(false);
|
|
308
|
+
this.dense = input(false, ...(ngDevMode ? [{ debugName: "dense" }] : []));
|
|
310
309
|
/**
|
|
311
310
|
* Extended configuration options for the tile list.
|
|
312
311
|
*
|
|
@@ -316,7 +315,7 @@ class TileListComponent {
|
|
|
316
315
|
* - `configTypes` — virtual config type overrides that let you map specific
|
|
317
316
|
* object-type / SOT combinations to a different `ObjectConfigRecord` entry.
|
|
318
317
|
*/
|
|
319
|
-
this.options = input(undefined);
|
|
318
|
+
this.options = input(undefined, ...(ngDevMode ? [{ debugName: "options" }] : []));
|
|
320
319
|
/**
|
|
321
320
|
* Object flavor to overlay on matching tiles.
|
|
322
321
|
*
|
|
@@ -328,7 +327,7 @@ class TileListComponent {
|
|
|
328
327
|
* Changes are applied reactively via `#flavorEffect` and re-evaluated against the
|
|
329
328
|
* last raw result set via `applyFlavor()`.
|
|
330
329
|
*/
|
|
331
|
-
this.flavor = input();
|
|
330
|
+
this.flavor = input(...(ngDevMode ? [undefined, { debugName: "flavor" }] : []));
|
|
332
331
|
/**
|
|
333
332
|
* The search query to execute.
|
|
334
333
|
*
|
|
@@ -337,7 +336,7 @@ class TileListComponent {
|
|
|
337
336
|
* `system:objectTypeId` field — tiles without a resolved object type will throw at
|
|
338
337
|
* mapping time.
|
|
339
338
|
*/
|
|
340
|
-
this.query = input();
|
|
339
|
+
this.query = input(...(ngDevMode ? [undefined, { debugName: "query" }] : []));
|
|
341
340
|
/**
|
|
342
341
|
* Object IDs to select as soon as the list finishes loading.
|
|
343
342
|
*
|
|
@@ -349,7 +348,7 @@ class TileListComponent {
|
|
|
349
348
|
*
|
|
350
349
|
* @default []
|
|
351
350
|
*/
|
|
352
|
-
this.preselect = input([]);
|
|
351
|
+
this.preselect = input([], ...(ngDevMode ? [{ debugName: "preselect" }] : []));
|
|
353
352
|
/**
|
|
354
353
|
* Per-item CSS style overrides rendered as inline styles on matching tiles.
|
|
355
354
|
*
|
|
@@ -360,7 +359,7 @@ class TileListComponent {
|
|
|
360
359
|
*
|
|
361
360
|
* @default []
|
|
362
361
|
*/
|
|
363
|
-
this.highlights = input([]);
|
|
362
|
+
this.highlights = input([], ...(ngDevMode ? [{ debugName: "highlights" }] : []));
|
|
364
363
|
/**
|
|
365
364
|
* Guard function that temporarily blocks all selection changes.
|
|
366
365
|
*
|
|
@@ -370,7 +369,7 @@ class TileListComponent {
|
|
|
370
369
|
*
|
|
371
370
|
* @default () => false (never prevents)
|
|
372
371
|
*/
|
|
373
|
-
this.preventChangeUntil = input(() => false);
|
|
372
|
+
this.preventChangeUntil = input(() => false, ...(ngDevMode ? [{ debugName: "preventChangeUntil" }] : []));
|
|
374
373
|
/**
|
|
375
374
|
* Automatically selects an item when the list is first rendered.
|
|
376
375
|
*
|
|
@@ -380,9 +379,9 @@ class TileListComponent {
|
|
|
380
379
|
*
|
|
381
380
|
* @default false
|
|
382
381
|
*/
|
|
383
|
-
this.autoSelect = input(false, {
|
|
384
|
-
|
|
385
|
-
|
|
382
|
+
this.autoSelect = input(false, ...(ngDevMode ? [{ debugName: "autoSelect", transform: (value) => coerceBooleanProperty(value) }] : [{
|
|
383
|
+
transform: (value) => coerceBooleanProperty(value)
|
|
384
|
+
}]));
|
|
386
385
|
/**
|
|
387
386
|
* Suppresses the component's built-in context menu handling.
|
|
388
387
|
*
|
|
@@ -392,7 +391,7 @@ class TileListComponent {
|
|
|
392
391
|
*
|
|
393
392
|
* @default false
|
|
394
393
|
*/
|
|
395
|
-
this.disableCustomContextMenu = input(false);
|
|
394
|
+
this.disableCustomContextMenu = input(false, ...(ngDevMode ? [{ debugName: "disableCustomContextMenu" }] : []));
|
|
396
395
|
/**
|
|
397
396
|
* Emits the `TileData` of the most recently selected tile.
|
|
398
397
|
*
|
|
@@ -468,7 +467,7 @@ class TileListComponent {
|
|
|
468
467
|
this.menu = computed(() => {
|
|
469
468
|
const comp = this.menuComponent();
|
|
470
469
|
return comp?.matMenu() ?? null;
|
|
471
|
-
});
|
|
470
|
+
}, ...(ngDevMode ? [{ debugName: "menu" }] : []));
|
|
472
471
|
/**
|
|
473
472
|
* The full `TileData` objects for all currently selected tiles.
|
|
474
473
|
*
|
|
@@ -476,16 +475,16 @@ class TileListComponent {
|
|
|
476
475
|
* the parent needs rich tile data (fields, DMS object reference, actions) rather than
|
|
477
476
|
* just IDs.
|
|
478
477
|
*/
|
|
479
|
-
this.selectedTile = signal([]);
|
|
478
|
+
this.selectedTile = signal([], ...(ngDevMode ? [{ debugName: "selectedTile" }] : []));
|
|
480
479
|
/**
|
|
481
480
|
* Object IDs of the currently selected tiles.
|
|
482
481
|
*
|
|
483
482
|
* A flat `string[]` signal — convenient for ID comparisons, permission checks, or
|
|
484
483
|
* passing to services that work with IDs. For the full tile data, use `selectedTile`.
|
|
485
484
|
*/
|
|
486
|
-
this.selection = signal([]);
|
|
487
|
-
this.#busy = computed(() => this.list().busy());
|
|
488
|
-
this.#preselect = linkedSignal(this.preselect);
|
|
485
|
+
this.selection = signal([], ...(ngDevMode ? [{ debugName: "selection" }] : []));
|
|
486
|
+
this.#busy = computed(() => this.list().busy(), ...(ngDevMode ? [{ debugName: "#busy" }] : []));
|
|
487
|
+
this.#preselect = linkedSignal(this.preselect, ...(ngDevMode ? [{ debugName: "#preselect" }] : []));
|
|
489
488
|
/**
|
|
490
489
|
* Computed map of per-object-ID inline CSS styles derived from the `highlights` input.
|
|
491
490
|
*
|
|
@@ -504,7 +503,7 @@ class TileListComponent {
|
|
|
504
503
|
});
|
|
505
504
|
});
|
|
506
505
|
return x;
|
|
507
|
-
});
|
|
506
|
+
}, ...(ngDevMode ? [{ debugName: "highlightStyles" }] : []));
|
|
508
507
|
/**
|
|
509
508
|
* The `TileData` view models currently rendered in the list.
|
|
510
509
|
*
|
|
@@ -512,7 +511,7 @@ class TileListComponent {
|
|
|
512
511
|
* prepended by `dropItems()`. The template iterates over this signal directly.
|
|
513
512
|
* Read this from the parent to access displayed tile data without an extra query.
|
|
514
513
|
*/
|
|
515
|
-
this.items = signal([]);
|
|
514
|
+
this.items = signal([], ...(ngDevMode ? [{ debugName: "items" }] : []));
|
|
516
515
|
/**
|
|
517
516
|
* Indicates whether at least one search has been executed successfully.
|
|
518
517
|
*
|
|
@@ -520,7 +519,7 @@ class TileListComponent {
|
|
|
520
519
|
* to distinguish between "initial loading" (show a spinner) and "empty result"
|
|
521
520
|
* (show the empty-state slot) without relying on `items().length` alone.
|
|
522
521
|
*/
|
|
523
|
-
this.searchExecuted = signal(false);
|
|
522
|
+
this.searchExecuted = signal(false, ...(ngDevMode ? [{ debugName: "searchExecuted" }] : []));
|
|
524
523
|
this._selection = [];
|
|
525
524
|
//#endregion
|
|
526
525
|
//#region Public methods
|
|
@@ -1200,13 +1199,13 @@ class TileListComponent {
|
|
|
1200
1199
|
#flavorEffect;
|
|
1201
1200
|
#preselectEffect;
|
|
1202
1201
|
#closeMenuEffect;
|
|
1203
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1204
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
1202
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: TileListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1203
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.19", type: TileListComponent, isStandalone: true, selector: "yuv-tile-list", inputs: { bucket: { classPropertyName: "bucket", publicName: "bucket", isSignal: true, isRequired: false, transformFunction: null }, pageSize: { classPropertyName: "pageSize", publicName: "pageSize", isSignal: true, isRequired: false, transformFunction: null }, multiselect: { classPropertyName: "multiselect", publicName: "multiselect", isSignal: true, isRequired: false, transformFunction: null }, dense: { classPropertyName: "dense", publicName: "dense", isSignal: true, isRequired: false, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null }, flavor: { classPropertyName: "flavor", publicName: "flavor", isSignal: true, isRequired: false, transformFunction: null }, query: { classPropertyName: "query", publicName: "query", isSignal: true, isRequired: false, transformFunction: null }, preselect: { classPropertyName: "preselect", publicName: "preselect", isSignal: true, isRequired: false, transformFunction: null }, highlights: { classPropertyName: "highlights", publicName: "highlights", isSignal: true, isRequired: false, transformFunction: null }, preventChangeUntil: { classPropertyName: "preventChangeUntil", publicName: "preventChangeUntil", isSignal: true, isRequired: false, transformFunction: null }, autoSelect: { classPropertyName: "autoSelect", publicName: "autoSelect", isSignal: true, isRequired: false, transformFunction: null }, disableCustomContextMenu: { classPropertyName: "disableCustomContextMenu", publicName: "disableCustomContextMenu", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { itemSelect: "itemSelect", tileCopy: "tileCopy", tileCut: "tileCut", busy: "busy", queryResult: "queryResult", selectionChange: "selectionChange", itemDblClick: "itemDblClick", ctxMenu: "ctxMenu" }, host: { listeners: { "keydown.control.c": "onCopy($event)", "keydown.control.x": "onCut($event)" }, properties: { "class.dense": "dense()" } }, providers: [], queries: [{ propertyName: "menuComponent", first: true, predicate: TileActionsMenuComponent, descendants: true, isSignal: true }, { propertyName: "emptyContent", first: true, predicate: ["empty"], descendants: true, isSignal: true }], viewQueries: [{ propertyName: "list", first: true, predicate: ["list"], descendants: true, isSignal: true }, { propertyName: "menuTriggers", predicate: MatMenuTrigger, descendants: true, isSignal: true }], ngImport: i0, template: "<yuv-query-list\n #list\n [query]=\"query()\"\n [transformer]=\"transformer\"\n idProperty=\"id\"\n [preventChangeUntil]=\"preventChangeUntil()\"\n [autoSelect]=\"autoSelect()\"\n [pageSize]=\"pageSize()\"\n [multiselect]=\"multiselect()\"\n (itemDoubleClick)=\"onItemDoubleClick($event)\"\n (itemSelect)=\"onListItemsSelect($event)\"\n (queryResult)=\"onQueryResult($event)\"\n (dragSelectChange)=\"onDragSelectChange($event)\"\n>\n <ng-template #yuvQueryListItem let-item let-index=\"index\">\n <yuv-list-tile [class.dense]=\"dense()\" [style]=\"highlightStyles()[item.id]\" (contextmenu)=\"contextMenuHandler($event, index)\">\n <ng-template #iconSlot><ng-container *yuvRenderer=\"item.icon\" /></ng-template>\n <ng-template #titleSlot><ng-container *yuvRenderer=\"item.title\" /></ng-template>\n <ng-template #descriptionSlot><ng-container *yuvRenderer=\"item.description\" /></ng-template>\n <ng-template #metaSlot><ng-container *yuvRenderer=\"item.meta\" /></ng-template>\n <ng-template #asideSlot><ng-container *yuvRenderer=\"item.aside\" /></ng-template>\n <ng-template #actionsSlot>\n @for (a of item.actions; track a.id) {\n <button\n ymt-icon-button\n [matTooltip]=\"a.label\"\n icon-button-size=\"small\"\n (click)=\"executeAction(item, a, $event)\"\n >\n <mat-icon inert=\"true\">{{ a.icon }}</mat-icon>\n </button>\n }\n\n @if (menu()) {\n <button\n ymt-icon-button\n icon-button-size=\"small\"\n (click)=\"menuItemClicked(item, $event)\"\n [matTooltip]=\"'yuv.tile-list.item.actions-menu.button.tooltip' | translate\"\n [matMenuTriggerFor]=\"menu()\"\n >\n <mat-icon inert=\"true\">more_vert</mat-icon>\n </button>\n }\n <ng-content select=\"yuv-tile-actions-menu, [yuv-tile-actions-menu]\" />\n </ng-template>\n <ng-template #extensionSlot>\n <ng-container *yuvTileExtension=\"{ typeId: item.objectTypeId, data: item.instanceData }\" />\n </ng-template>\n <ng-template #badgesSlot>{{ item.badges }}</ng-template>\n </yuv-list-tile>\n </ng-template>\n\n <ng-template #yuvQueryListEmpty>\n <div class=\"empty-list\">\n @let searchExe = searchExecuted();\n @if (searchExe && emptyContent()) {\n <ng-content />\n }\n </div>\n </ng-template>\n <div class=\"offset\" (click)=\"clearSelection()\"></div>\n</yuv-query-list>\n", styles: [":host{--paging-background: var(--ymt-surface);display:flex;flex-direction:column}:host yuv-query-list{flex:1;overflow-y:auto;display:flex;flex-flow:column;height:100%}:host yuv-query-list .offset{flex:1 1 auto}:host .empty-list{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%}\n"], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "ngmodule", type: YuvListModule }, { kind: "component", type: i1.ListTileComponent, selector: "yuv-list-tile" }, { kind: "ngmodule", type: YuvQueryListModule }, { kind: "component", type: i2.QueryListComponent, selector: "yuv-query-list", inputs: ["query", "idProperty", "transformer", "preventChangeUntil", "autoSelect", "pageSize", "enableDragSelect", "multiselect", "selfHandleSelection", "includePermissions"], outputs: ["itemSelect", "dragSelectChange", "itemDoubleClick", "queryResult"] }, { kind: "directive", type: RendererDirective, selector: "[yuvRenderer]", inputs: ["yuvRenderer"] }, { kind: "directive", type: TileExtensionDirective, selector: "[yuvTileExtension]", inputs: ["yuvTileExtension"] }, { kind: "directive", type: YmtIconButtonDirective, selector: "button[ymtIconButton],button[ymt-icon-button],a[ymtIconButton],a[ymt-icon-button]", inputs: ["disabled", "disableRipple", "aria-disabled", "disabledInteractive", "icon-button-size"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatPaginatorModule }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i4.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1205
1204
|
}
|
|
1206
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1205
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: TileListComponent, decorators: [{
|
|
1207
1206
|
type: Component,
|
|
1208
1207
|
args: [{ selector: 'yuv-tile-list', standalone: true, providers: [], imports: [
|
|
1209
|
-
|
|
1208
|
+
TranslatePipe,
|
|
1210
1209
|
ReactiveFormsModule,
|
|
1211
1210
|
YuvListModule,
|
|
1212
1211
|
YuvQueryListModule,
|
|
@@ -1220,30 +1219,30 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
|
|
|
1220
1219
|
'(keydown.control.c)': 'onCopy($event)',
|
|
1221
1220
|
'(keydown.control.x)': 'onCut($event)'
|
|
1222
1221
|
}, template: "<yuv-query-list\n #list\n [query]=\"query()\"\n [transformer]=\"transformer\"\n idProperty=\"id\"\n [preventChangeUntil]=\"preventChangeUntil()\"\n [autoSelect]=\"autoSelect()\"\n [pageSize]=\"pageSize()\"\n [multiselect]=\"multiselect()\"\n (itemDoubleClick)=\"onItemDoubleClick($event)\"\n (itemSelect)=\"onListItemsSelect($event)\"\n (queryResult)=\"onQueryResult($event)\"\n (dragSelectChange)=\"onDragSelectChange($event)\"\n>\n <ng-template #yuvQueryListItem let-item let-index=\"index\">\n <yuv-list-tile [class.dense]=\"dense()\" [style]=\"highlightStyles()[item.id]\" (contextmenu)=\"contextMenuHandler($event, index)\">\n <ng-template #iconSlot><ng-container *yuvRenderer=\"item.icon\" /></ng-template>\n <ng-template #titleSlot><ng-container *yuvRenderer=\"item.title\" /></ng-template>\n <ng-template #descriptionSlot><ng-container *yuvRenderer=\"item.description\" /></ng-template>\n <ng-template #metaSlot><ng-container *yuvRenderer=\"item.meta\" /></ng-template>\n <ng-template #asideSlot><ng-container *yuvRenderer=\"item.aside\" /></ng-template>\n <ng-template #actionsSlot>\n @for (a of item.actions; track a.id) {\n <button\n ymt-icon-button\n [matTooltip]=\"a.label\"\n icon-button-size=\"small\"\n (click)=\"executeAction(item, a, $event)\"\n >\n <mat-icon inert=\"true\">{{ a.icon }}</mat-icon>\n </button>\n }\n\n @if (menu()) {\n <button\n ymt-icon-button\n icon-button-size=\"small\"\n (click)=\"menuItemClicked(item, $event)\"\n [matTooltip]=\"'yuv.tile-list.item.actions-menu.button.tooltip' | translate\"\n [matMenuTriggerFor]=\"menu()\"\n >\n <mat-icon inert=\"true\">more_vert</mat-icon>\n </button>\n }\n <ng-content select=\"yuv-tile-actions-menu, [yuv-tile-actions-menu]\" />\n </ng-template>\n <ng-template #extensionSlot>\n <ng-container *yuvTileExtension=\"{ typeId: item.objectTypeId, data: item.instanceData }\" />\n </ng-template>\n <ng-template #badgesSlot>{{ item.badges }}</ng-template>\n </yuv-list-tile>\n </ng-template>\n\n <ng-template #yuvQueryListEmpty>\n <div class=\"empty-list\">\n @let searchExe = searchExecuted();\n @if (searchExe && emptyContent()) {\n <ng-content />\n }\n </div>\n </ng-template>\n <div class=\"offset\" (click)=\"clearSelection()\"></div>\n</yuv-query-list>\n", styles: [":host{--paging-background: var(--ymt-surface);display:flex;flex-direction:column}:host yuv-query-list{flex:1;overflow-y:auto;display:flex;flex-flow:column;height:100%}:host yuv-query-list .offset{flex:1 1 auto}:host .empty-list{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%}\n"] }]
|
|
1223
|
-
}], ctorParameters: () => [] });
|
|
1222
|
+
}], ctorParameters: () => [], propDecorators: { menuComponent: [{ type: i0.ContentChild, args: [i0.forwardRef(() => TileActionsMenuComponent), { isSignal: true }] }], emptyContent: [{ type: i0.ContentChild, args: ['empty', { isSignal: true }] }], list: [{ type: i0.ViewChild, args: ['list', { isSignal: true }] }], menuTriggers: [{ type: i0.ViewChildren, args: [i0.forwardRef(() => MatMenuTrigger), { isSignal: true }] }], bucket: [{ type: i0.Input, args: [{ isSignal: true, alias: "bucket", required: false }] }], pageSize: [{ type: i0.Input, args: [{ isSignal: true, alias: "pageSize", required: false }] }], multiselect: [{ type: i0.Input, args: [{ isSignal: true, alias: "multiselect", required: false }] }], dense: [{ type: i0.Input, args: [{ isSignal: true, alias: "dense", required: false }] }], options: [{ type: i0.Input, args: [{ isSignal: true, alias: "options", required: false }] }], flavor: [{ type: i0.Input, args: [{ isSignal: true, alias: "flavor", required: false }] }], query: [{ type: i0.Input, args: [{ isSignal: true, alias: "query", required: false }] }], preselect: [{ type: i0.Input, args: [{ isSignal: true, alias: "preselect", required: false }] }], highlights: [{ type: i0.Input, args: [{ isSignal: true, alias: "highlights", required: false }] }], preventChangeUntil: [{ type: i0.Input, args: [{ isSignal: true, alias: "preventChangeUntil", required: false }] }], autoSelect: [{ type: i0.Input, args: [{ isSignal: true, alias: "autoSelect", required: false }] }], disableCustomContextMenu: [{ type: i0.Input, args: [{ isSignal: true, alias: "disableCustomContextMenu", required: false }] }], itemSelect: [{ type: i0.Output, args: ["itemSelect"] }], tileCopy: [{ type: i0.Output, args: ["tileCopy"] }], tileCut: [{ type: i0.Output, args: ["tileCut"] }], busy: [{ type: i0.Output, args: ["busy"] }], queryResult: [{ type: i0.Output, args: ["queryResult"] }], selectionChange: [{ type: i0.Output, args: ["selectionChange"] }], itemDblClick: [{ type: i0.Output, args: ["itemDblClick"] }], ctxMenu: [{ type: i0.Output, args: ["ctxMenu"] }] } });
|
|
1224
1223
|
|
|
1225
1224
|
class ActionSelectComponent {
|
|
1226
1225
|
constructor() {
|
|
1227
1226
|
this.actionService = inject(ActionsService);
|
|
1228
|
-
this.objectType = input.required();
|
|
1227
|
+
this.objectType = input.required(...(ngDevMode ? [{ debugName: "objectType" }] : []));
|
|
1229
1228
|
this.actions = computed(() => {
|
|
1230
1229
|
const ot = this.objectType();
|
|
1231
1230
|
return ot.objectType ? this.actionService.getActionsForType(ot.objectType) : [];
|
|
1232
|
-
});
|
|
1233
|
-
this.selectedActionIds = input([]);
|
|
1231
|
+
}, ...(ngDevMode ? [{ debugName: "actions" }] : []));
|
|
1232
|
+
this.selectedActionIds = input([], ...(ngDevMode ? [{ debugName: "selectedActionIds" }] : []));
|
|
1234
1233
|
this.actionSelect = output();
|
|
1235
1234
|
}
|
|
1236
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1237
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
1235
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: ActionSelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1236
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.19", type: ActionSelectComponent, isStandalone: true, selector: "yuv-tile-action-select", inputs: { objectType: { classPropertyName: "objectType", publicName: "objectType", isSignal: true, isRequired: true, transformFunction: null }, selectedActionIds: { classPropertyName: "selectedActionIds", publicName: "selectedActionIds", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { actionSelect: "actionSelect" }, ngImport: i0, template: "<div class=\"actions\">\n @for (a of actions(); track a.id) {\n <button [ngClass]=\"{ selected: selectedActionIds().includes(a.id) }\" (click)=\"actionSelect.emit(a)\">\n <mat-icon>{{ a.icon }}</mat-icon\n >{{ a.label }}\n </button>\n }\n</div>\n", styles: [":host .actions{display:flex;gap:var(--ymt-spacing-xs)}:host .actions button{border:1px solid var(--ymt-outline-variant);border-radius:0;margin-block-end:1px;background-color:var(--mat-sys-secondary-container);color:var(--mat-sys-on-secondary-container);border:0;display:inline-flex;gap:var(--ymt-spacing-xs);padding:var(--ymt-spacing-2xs) var(--ymt-spacing-xs);align-items:center;border-radius:var(--ymt-corner-s)}:host .actions button.selected{background-color:var(--ymt-primary-container);color:var(--ymt-on-primary-container)}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] }); }
|
|
1238
1237
|
}
|
|
1239
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1238
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: ActionSelectComponent, decorators: [{
|
|
1240
1239
|
type: Component,
|
|
1241
1240
|
args: [{ selector: 'yuv-tile-action-select', standalone: true, imports: [NgClass, MatIconModule], template: "<div class=\"actions\">\n @for (a of actions(); track a.id) {\n <button [ngClass]=\"{ selected: selectedActionIds().includes(a.id) }\" (click)=\"actionSelect.emit(a)\">\n <mat-icon>{{ a.icon }}</mat-icon\n >{{ a.label }}\n </button>\n }\n</div>\n", styles: [":host .actions{display:flex;gap:var(--ymt-spacing-xs)}:host .actions button{border:1px solid var(--ymt-outline-variant);border-radius:0;margin-block-end:1px;background-color:var(--mat-sys-secondary-container);color:var(--mat-sys-on-secondary-container);border:0;display:inline-flex;gap:var(--ymt-spacing-xs);padding:var(--ymt-spacing-2xs) var(--ymt-spacing-xs);align-items:center;border-radius:var(--ymt-corner-s)}:host .actions button.selected{background-color:var(--ymt-primary-container);color:var(--ymt-on-primary-container)}\n"] }]
|
|
1242
|
-
}] });
|
|
1241
|
+
}], propDecorators: { objectType: [{ type: i0.Input, args: [{ isSignal: true, alias: "objectType", required: true }] }], selectedActionIds: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectedActionIds", required: false }] }], actionSelect: [{ type: i0.Output, args: ["actionSelect"] }] } });
|
|
1243
1242
|
|
|
1244
1243
|
class IconSelectComponent {
|
|
1245
1244
|
constructor() {
|
|
1246
|
-
this.objectType = input();
|
|
1245
|
+
this.objectType = input(...(ngDevMode ? [undefined, { debugName: "objectType" }] : []));
|
|
1247
1246
|
this.iconSelect = output();
|
|
1248
1247
|
}
|
|
1249
1248
|
async createIcon(inputEl) {
|
|
@@ -1261,13 +1260,13 @@ class IconSelectComponent {
|
|
|
1261
1260
|
#emit(data) {
|
|
1262
1261
|
this.iconSelect.emit(data);
|
|
1263
1262
|
}
|
|
1264
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1265
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "
|
|
1263
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: IconSelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1264
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.19", type: IconSelectComponent, isStandalone: true, selector: "yuv-icon-select", inputs: { objectType: { classPropertyName: "objectType", publicName: "objectType", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { iconSelect: "iconSelect" }, ngImport: i0, template: "<input style=\"display: none\" #fileInput type=\"file\" accept=\".svg\" (change)=\"createIcon(fileInput)\" />\n\n<button class=\"primary\" (click)=\"fileInput.click()\">{{ 'yuv.tile-config.icon-select.pick' | translate }}</button>\n<button class=\"secondary\" (click)=\"reset()\">{{ 'yuv.tile-config.icon-select.reset' | translate }}</button>\n", styles: [":host{display:flex;gap:var(--ymt-spacing-m)}\n"], dependencies: [{ kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
|
|
1266
1265
|
}
|
|
1267
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1266
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: IconSelectComponent, decorators: [{
|
|
1268
1267
|
type: Component,
|
|
1269
|
-
args: [{ selector: 'yuv-icon-select', standalone: true, imports: [
|
|
1270
|
-
}] });
|
|
1268
|
+
args: [{ selector: 'yuv-icon-select', standalone: true, imports: [TranslatePipe], template: "<input style=\"display: none\" #fileInput type=\"file\" accept=\".svg\" (change)=\"createIcon(fileInput)\" />\n\n<button class=\"primary\" (click)=\"fileInput.click()\">{{ 'yuv.tile-config.icon-select.pick' | translate }}</button>\n<button class=\"secondary\" (click)=\"reset()\">{{ 'yuv.tile-config.icon-select.reset' | translate }}</button>\n", styles: [":host{display:flex;gap:var(--ymt-spacing-m)}\n"] }]
|
|
1269
|
+
}], propDecorators: { objectType: [{ type: i0.Input, args: [{ isSignal: true, alias: "objectType", required: false }] }], iconSelect: [{ type: i0.Output, args: ["iconSelect"] }] } });
|
|
1271
1270
|
|
|
1272
1271
|
class PropertySelectComponent {
|
|
1273
1272
|
constructor() {
|
|
@@ -1291,17 +1290,17 @@ class PropertySelectComponent {
|
|
|
1291
1290
|
ContentStreamField.RANGE
|
|
1292
1291
|
];
|
|
1293
1292
|
this.objectTypeFields = [];
|
|
1294
|
-
this.query = signal(null);
|
|
1295
|
-
this.objectType = input();
|
|
1293
|
+
this.query = signal(null, ...(ngDevMode ? [{ debugName: "query" }] : []));
|
|
1294
|
+
this.objectType = input(...(ngDevMode ? [undefined, { debugName: "objectType" }] : []));
|
|
1296
1295
|
this.filteredObjectTypeFields = computed(() => {
|
|
1297
1296
|
return this.query() !== null
|
|
1298
1297
|
? this.objectTypeFields.filter((otf) => otf.label.toLowerCase().indexOf(this.query()?.toLocaleLowerCase() || '') !== -1)
|
|
1299
1298
|
: this.getObjectTypeFields(this.objectType());
|
|
1300
|
-
});
|
|
1299
|
+
}, ...(ngDevMode ? [{ debugName: "filteredObjectTypeFields" }] : []));
|
|
1301
1300
|
this.objectTypesEffect = effect(() => {
|
|
1302
1301
|
untracked(() => this.getObjectTypeFields(this.objectType()));
|
|
1303
|
-
});
|
|
1304
|
-
this.selectedProperty = input();
|
|
1302
|
+
}, ...(ngDevMode ? [{ debugName: "objectTypesEffect" }] : []));
|
|
1303
|
+
this.selectedProperty = input(...(ngDevMode ? [undefined, { debugName: "selectedProperty" }] : []));
|
|
1305
1304
|
this.propertySelect = output();
|
|
1306
1305
|
}
|
|
1307
1306
|
// fields that should not be available to be placed in the slots
|
|
@@ -1360,13 +1359,13 @@ class PropertySelectComponent {
|
|
|
1360
1359
|
_getLabel(otf) {
|
|
1361
1360
|
return this.system.getLocalizedLabel(otf.id) || otf.id;
|
|
1362
1361
|
}
|
|
1363
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1364
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
1362
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: PropertySelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1363
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.19", type: PropertySelectComponent, isStandalone: true, selector: "yuv-tile-property-select", inputs: { objectType: { classPropertyName: "objectType", publicName: "objectType", isSignal: true, isRequired: false, transformFunction: null }, selectedProperty: { classPropertyName: "selectedProperty", publicName: "selectedProperty", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { propertySelect: "propertySelect" }, ngImport: i0, template: "<!-- TODO: enable once filtering of properties makes sense -->\n<!-- <form class=\"filter\">\n <div class=\"filter-input\">\n <input type=\"text\" [placeholder]=\"'yuv.tile-config.property-select.filter.placeholder' | translate\" name=\"query\" [(ngModel)]=\"query\" />\n @if (query()) {\n <button class=\"icn\" (click)=\"query.set(null)\">\n <yuv-icon [svg]=\"clearIcon\"></yuv-icon>\n </button>\n }\n </div>\n</form> -->\n\n<ul class=\"properties\">\n @for (p of filteredObjectTypeFields(); track $index) {\n <li\n tabindex=\"0\"\n [ngClass]=\"{ baseProperty: p.baseProperty, selected: p.id === selectedProperty()?.propertyName }\"\n (click)=\"selectProperty(p)\"\n (keydown.enter)=\"selectPropertyOnKeydown($event, p)\"\n (keydown.space)=\"selectPropertyOnKeydown($event, p)\"\n >\n <div class=\"label\">{{ p.label }}</div>\n <button\n mat-icon-button\n (click)=\"removeProperty($event)\"\n (keydown.enter)=\"removePropertyOnKeydown($event)\"\n (keydown.space)=\"removePropertyOnKeydown($event)\"\n >\n <mat-icon aria-hidden=\"true\" [attr.inert]=\"true\">close</mat-icon>\n </button>\n </li>\n }\n</ul>\n", styles: [":host{display:flex;flex-flow:column;max-height:100%}:host .filter{flex:0 0 auto}:host .filter .filter-input{background-color:var(--ymt-surface-panel);border:1px solid var(--ymt-outline-variant);display:flex;padding:.25em;align-items:center}:host .filter .filter-input input{background-color:transparent;border:0;outline:0;flex:1;color:var(--ymt-text-color)}:host .properties{flex:1;column-count:3;column-width:30ch;column-rule:1px dotted var(--ymt-outline);column-gap:2em;margin-block-start:var(--ymt-spacing-m)}:host .properties li{border:1px solid var(--ymt-outline-variant);border-radius:0;margin-block-end:1px;display:flex;align-items:center;justify-content:space-between;cursor:default}:host .properties li:hover{background-color:var(--ymt-hover-background)}:host .properties li.baseProperty{font-style:italic}:host .properties li.selected{background-color:var(--ymt-primary-container);color:var(--ymt-on-primary-container)}:host .properties li:not(.selected) button{display:none}:host .properties li .label{padding:var(--ymt-spacing-xs) var(--ymt-spacing-m)}:host .properties li button{color:currentColor}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i1$1.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] }); }
|
|
1365
1364
|
}
|
|
1366
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1365
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: PropertySelectComponent, decorators: [{
|
|
1367
1366
|
type: Component,
|
|
1368
|
-
args: [{ selector: 'yuv-tile-property-select', standalone: true, imports: [NgClass, FormsModule,
|
|
1369
|
-
}] });
|
|
1367
|
+
args: [{ selector: 'yuv-tile-property-select', standalone: true, imports: [NgClass, FormsModule, TranslatePipe, MatButtonModule, MatIconModule], template: "<!-- TODO: enable once filtering of properties makes sense -->\n<!-- <form class=\"filter\">\n <div class=\"filter-input\">\n <input type=\"text\" [placeholder]=\"'yuv.tile-config.property-select.filter.placeholder' | translate\" name=\"query\" [(ngModel)]=\"query\" />\n @if (query()) {\n <button class=\"icn\" (click)=\"query.set(null)\">\n <yuv-icon [svg]=\"clearIcon\"></yuv-icon>\n </button>\n }\n </div>\n</form> -->\n\n<ul class=\"properties\">\n @for (p of filteredObjectTypeFields(); track $index) {\n <li\n tabindex=\"0\"\n [ngClass]=\"{ baseProperty: p.baseProperty, selected: p.id === selectedProperty()?.propertyName }\"\n (click)=\"selectProperty(p)\"\n (keydown.enter)=\"selectPropertyOnKeydown($event, p)\"\n (keydown.space)=\"selectPropertyOnKeydown($event, p)\"\n >\n <div class=\"label\">{{ p.label }}</div>\n <button\n mat-icon-button\n (click)=\"removeProperty($event)\"\n (keydown.enter)=\"removePropertyOnKeydown($event)\"\n (keydown.space)=\"removePropertyOnKeydown($event)\"\n >\n <mat-icon aria-hidden=\"true\" [attr.inert]=\"true\">close</mat-icon>\n </button>\n </li>\n }\n</ul>\n", styles: [":host{display:flex;flex-flow:column;max-height:100%}:host .filter{flex:0 0 auto}:host .filter .filter-input{background-color:var(--ymt-surface-panel);border:1px solid var(--ymt-outline-variant);display:flex;padding:.25em;align-items:center}:host .filter .filter-input input{background-color:transparent;border:0;outline:0;flex:1;color:var(--ymt-text-color)}:host .properties{flex:1;column-count:3;column-width:30ch;column-rule:1px dotted var(--ymt-outline);column-gap:2em;margin-block-start:var(--ymt-spacing-m)}:host .properties li{border:1px solid var(--ymt-outline-variant);border-radius:0;margin-block-end:1px;display:flex;align-items:center;justify-content:space-between;cursor:default}:host .properties li:hover{background-color:var(--ymt-hover-background)}:host .properties li.baseProperty{font-style:italic}:host .properties li.selected{background-color:var(--ymt-primary-container);color:var(--ymt-on-primary-container)}:host .properties li:not(.selected) button{display:none}:host .properties li .label{padding:var(--ymt-spacing-xs) var(--ymt-spacing-m)}:host .properties li button{color:currentColor}\n"] }]
|
|
1368
|
+
}], propDecorators: { objectType: [{ type: i0.Input, args: [{ isSignal: true, alias: "objectType", required: false }] }], selectedProperty: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectedProperty", required: false }] }], propertySelect: [{ type: i0.Output, args: ["propertySelect"] }] } });
|
|
1370
1369
|
|
|
1371
1370
|
/**
|
|
1372
1371
|
* Component for setting up a tile config
|
|
@@ -1376,9 +1375,9 @@ class TileConfigTileComponent {
|
|
|
1376
1375
|
this.actionService = inject(ActionsService);
|
|
1377
1376
|
this.elRef = inject(ElementRef);
|
|
1378
1377
|
this.#system = inject(SystemService);
|
|
1379
|
-
this.disableIconSlot = input();
|
|
1380
|
-
this.disableBadgesSlot = input();
|
|
1381
|
-
this.objectConfig = input.required();
|
|
1378
|
+
this.disableIconSlot = input(...(ngDevMode ? [undefined, { debugName: "disableIconSlot" }] : []));
|
|
1379
|
+
this.disableBadgesSlot = input(...(ngDevMode ? [undefined, { debugName: "disableBadgesSlot" }] : []));
|
|
1380
|
+
this.objectConfig = input.required(...(ngDevMode ? [{ debugName: "objectConfig" }] : []));
|
|
1382
1381
|
this._objectConfig = computed(() => {
|
|
1383
1382
|
const oc = this.objectConfig();
|
|
1384
1383
|
if (oc) {
|
|
@@ -1390,7 +1389,7 @@ class TileConfigTileComponent {
|
|
|
1390
1389
|
});
|
|
1391
1390
|
}
|
|
1392
1391
|
return oc;
|
|
1393
|
-
});
|
|
1392
|
+
}, ...(ngDevMode ? [{ debugName: "_objectConfig" }] : []));
|
|
1394
1393
|
this.actions = computed(() => {
|
|
1395
1394
|
const actionsList = [];
|
|
1396
1395
|
const ocActions = this.objectConfig();
|
|
@@ -1402,7 +1401,7 @@ class TileConfigTileComponent {
|
|
|
1402
1401
|
});
|
|
1403
1402
|
}
|
|
1404
1403
|
return actionsList;
|
|
1405
|
-
});
|
|
1404
|
+
}, ...(ngDevMode ? [{ debugName: "actions" }] : []));
|
|
1406
1405
|
this.slotSelect = output();
|
|
1407
1406
|
}
|
|
1408
1407
|
#system;
|
|
@@ -1418,15 +1417,13 @@ class TileConfigTileComponent {
|
|
|
1418
1417
|
e.classList.remove('active');
|
|
1419
1418
|
});
|
|
1420
1419
|
}
|
|
1421
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1422
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
1420
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: TileConfigTileComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1421
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.19", type: TileConfigTileComponent, isStandalone: true, selector: "yuv-tile-config-tile", inputs: { disableIconSlot: { classPropertyName: "disableIconSlot", publicName: "disableIconSlot", isSignal: true, isRequired: false, transformFunction: null }, disableBadgesSlot: { classPropertyName: "disableBadgesSlot", publicName: "disableBadgesSlot", isSignal: true, isRequired: false, transformFunction: null }, objectConfig: { classPropertyName: "objectConfig", publicName: "objectConfig", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { slotSelect: "slotSelect" }, ngImport: i0, template: "@let oc = _objectConfig();\n\n<div\n data-slot=\"icon\"\n [attr.disabled]=\"disableIconSlot()\"\n tabindex=\"0\"\n (click)=\"selectSlot('icon')\"\n (keydown.enter)=\"selectSlot('icon')\"\n (keydown.space)=\"selectSlot('icon'); $event.preventDefault()\"\n>\n @if (oc && oc.icon) {\n <mat-icon aria-hidden=\"true\" [attr.inert]=\"true\">{{ oc.icon.svg }}</mat-icon>\n } @else if (oc && oc.objectTypeId) {\n <yuv-object-type-icon [objectTypeId]=\"oc.objectTypeId\"></yuv-object-type-icon>\n }\n</div>\n<div\n data-slot=\"title\"\n tabindex=\"0\"\n (click)=\"selectSlot('title')\"\n (keydown.enter)=\"selectSlot('title')\"\n (keydown.space)=\"selectSlot('title'); $event.preventDefault()\"\n>\n {{ oc?.title?.label }}\n</div>\n<div\n data-slot=\"actions\"\n tabindex=\"0\"\n (click)=\"selectSlot('actions')\"\n (keydown.enter)=\"selectSlot('actions')\"\n (keydown.space)=\"selectSlot('actions'); $event.preventDefault()\"\n>\n @for (a of actions(); track a.id) {\n <button mat-icon-button [matTooltip]=\"a.label\" [attr.inert]=\"true\" aria-hidden=\"true\">\n <mat-icon inert=\"true\" aria-hidden=\"true\">{{ a.icon }}</mat-icon>\n </button>\n }\n</div>\n<div\n data-slot=\"description\"\n tabindex=\"0\"\n (click)=\"selectSlot('description')\"\n (keydown.enter)=\"selectSlot('description')\"\n (keydown.space)=\"selectSlot('description'); $event.preventDefault()\"\n>\n {{ oc?.description?.label }}\n</div>\n<div\n data-slot=\"aside\"\n tabindex=\"0\"\n (click)=\"selectSlot('aside')\"\n (keydown.enter)=\"selectSlot('aside')\"\n (keydown.space)=\"selectSlot('aside'); $event.preventDefault()\"\n>\n {{ oc?.aside?.label }}\n</div>\n<div\n data-slot=\"meta\"\n tabindex=\"0\"\n (click)=\"selectSlot('meta')\"\n (keydown.enter)=\"selectSlot('meta')\"\n (keydown.space)=\"selectSlot('meta'); $event.preventDefault()\"\n>\n {{ oc?.meta?.label }}\n</div>\n@if (!disableBadgesSlot()) {\n <div\n data-slot=\"badges\"\n tabindex=\"0\"\n (click)=\"selectSlot('badges')\"\n (keydown.enter)=\"selectSlot('badges')\"\n (keydown.space)=\"selectSlot('badges'); $event.preventDefault()\"\n >\n {{ oc?.badges }}\n </div>\n}\n", styles: [":host{--tile-item-gap: .5em;--tile-background: transparent;--tile-icon-fill: currentColor;display:grid;grid-template-rows:auto auto auto auto;grid-template-columns:3rem 1fr auto;grid-template-areas:\"icon title title actions\" \"icon description aside aside\" \"icon meta meta badges\";gap:var(--tile-item-gap);padding:var(--ymt-spacing-m);background-color:var(--tile-background)}:host:hover [data-slot=actions]{opacity:1}:host [data-slot=icon]{grid-area:icon;display:flex;align-items:center;justify-content:center}:host [data-slot=title]{grid-area:title;font-weight:700}:host [data-slot=description]{grid-area:description}:host [data-slot=meta]{grid-area:meta}:host [data-slot=aside]{flex:0 0 auto;grid-area:aside}:host [data-slot=actions]{flex:0 0 auto;display:flex;justify-self:end;grid-area:actions}:host [data-slot=actions] button{padding:0;gap:2px}:host [data-slot=badges]{grid-area:badges;justify-self:end;flex:0 0 auto}:host :where([data-slot=badges],[data-slot=actions],[data-slot=aside],[data-slot=icon],[data-slot=title],[data-slot=description],[data-slot=meta]){display:flex;align-items:center;background-color:var(--ymt-surface-panel);border:1px solid var(--ymt-outline);padding:.25em .5em;box-sizing:border-box;min-height:2.2em;border-radius:var(--ymt-corner-xs)}:host :where([data-slot=badges],[data-slot=actions],[data-slot=aside],[data-slot=icon],[data-slot=title],[data-slot=description],[data-slot=meta]):not([disabled]){cursor:pointer}:host :where([data-slot=badges],[data-slot=actions],[data-slot=aside],[data-slot=icon],[data-slot=title],[data-slot=description],[data-slot=meta]):not([disabled]):hover{background-color:var(--ymt-focus-background);color:var(--ymt-on-focus-background)}:host :where([data-slot=badges],[data-slot=actions],[data-slot=aside],[data-slot=icon],[data-slot=title],[data-slot=description],[data-slot=meta]):not([disabled]).active{background-color:var(--ymt-primary-container);color:var(--ymt-on-primary-container)}:host :where([data-slot=badges],[data-slot=actions],[data-slot=aside],[data-slot=icon],[data-slot=title],[data-slot=description],[data-slot=meta])[disabled]{border:none;background-color:transparent}:host :where([data-slot=badges],[data-slot=actions]){min-width:3em}:host :where([data-slot=badges],[data-slot=actions]) button{width:24px;height:24px;pointer-events:none;color:currentColor}:host [data-slot=aside]{min-width:4em}:host [data-slot=icon]{height:3em;width:100%}\n"], dependencies: [{ kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i1$1.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i4.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: ObjectTypeIconComponent, selector: "yuv-object-type-icon", inputs: ["objectTypeId"] }] }); }
|
|
1423
1422
|
}
|
|
1424
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1423
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: TileConfigTileComponent, decorators: [{
|
|
1425
1424
|
type: Component,
|
|
1426
|
-
args: [{ selector: 'yuv-tile-config-tile', standalone: true, imports: [MatButtonModule,
|
|
1427
|
-
|
|
1428
|
-
MatIconModule, CommonModule, ObjectTypeIconComponent], template: "@let oc = _objectConfig();\n\n<div\n data-slot=\"icon\"\n [attr.disabled]=\"disableIconSlot()\"\n tabindex=\"0\"\n (click)=\"selectSlot('icon')\"\n (keydown.enter)=\"selectSlot('icon')\"\n (keydown.space)=\"selectSlot('icon'); $event.preventDefault()\"\n>\n @if (oc && oc.icon) {\n <mat-icon aria-hidden=\"true\" [attr.inert]=\"true\">{{ oc.icon.svg }}</mat-icon>\n } @else if (oc && oc.objectTypeId) {\n <yuv-object-type-icon [objectTypeId]=\"oc.objectTypeId\"></yuv-object-type-icon>\n }\n</div>\n<div\n data-slot=\"title\"\n tabindex=\"0\"\n (click)=\"selectSlot('title')\"\n (keydown.enter)=\"selectSlot('title')\"\n (keydown.space)=\"selectSlot('title'); $event.preventDefault()\"\n>\n {{ oc?.title?.label }}\n</div>\n<div\n data-slot=\"actions\"\n tabindex=\"0\"\n (click)=\"selectSlot('actions')\"\n (keydown.enter)=\"selectSlot('actions')\"\n (keydown.space)=\"selectSlot('actions'); $event.preventDefault()\"\n>\n @for (a of actions(); track a.id) {\n <button mat-icon-button [matTooltip]=\"a.label\" [attr.inert]=\"true\" aria-hidden=\"true\">\n <mat-icon inert=\"true\" aria-hidden=\"true\">{{ a.icon }}</mat-icon>\n </button>\n }\n</div>\n<div\n data-slot=\"description\"\n tabindex=\"0\"\n (click)=\"selectSlot('description')\"\n (keydown.enter)=\"selectSlot('description')\"\n (keydown.space)=\"selectSlot('description'); $event.preventDefault()\"\n>\n {{ oc?.description?.label }}\n</div>\n<div\n data-slot=\"aside\"\n tabindex=\"0\"\n (click)=\"selectSlot('aside')\"\n (keydown.enter)=\"selectSlot('aside')\"\n (keydown.space)=\"selectSlot('aside'); $event.preventDefault()\"\n>\n {{ oc?.aside?.label }}\n</div>\n<div\n data-slot=\"meta\"\n tabindex=\"0\"\n (click)=\"selectSlot('meta')\"\n (keydown.enter)=\"selectSlot('meta')\"\n (keydown.space)=\"selectSlot('meta'); $event.preventDefault()\"\n>\n {{ oc?.meta?.label }}\n</div>\n@if (!disableBadgesSlot()) {\n <div\n data-slot=\"badges\"\n tabindex=\"0\"\n (click)=\"selectSlot('badges')\"\n (keydown.enter)=\"selectSlot('badges')\"\n (keydown.space)=\"selectSlot('badges'); $event.preventDefault()\"\n >\n {{ oc?.badges }}\n </div>\n}\n", styles: [":host{--tile-item-gap: .5em;--tile-background: transparent;--tile-icon-fill: currentColor;display:grid;grid-template-rows:auto auto auto auto;grid-template-columns:3rem 1fr auto;grid-template-areas:\"icon title title actions\" \"icon description aside aside\" \"icon meta meta badges\";gap:var(--tile-item-gap);padding:var(--ymt-spacing-m);background-color:var(--tile-background)}:host:hover [data-slot=actions]{opacity:1}:host [data-slot=icon]{grid-area:icon;display:flex;align-items:center;justify-content:center}:host [data-slot=title]{grid-area:title;font-weight:700}:host [data-slot=description]{grid-area:description}:host [data-slot=meta]{grid-area:meta}:host [data-slot=aside]{flex:0 0 auto;grid-area:aside}:host [data-slot=actions]{flex:0 0 auto;display:flex;justify-self:end;grid-area:actions}:host [data-slot=actions] button{padding:0;gap:2px}:host [data-slot=badges]{grid-area:badges;justify-self:end;flex:0 0 auto}:host :where([data-slot=badges],[data-slot=actions],[data-slot=aside],[data-slot=icon],[data-slot=title],[data-slot=description],[data-slot=meta]){display:flex;align-items:center;background-color:var(--ymt-surface-panel);border:1px solid var(--ymt-outline);padding:.25em .5em;box-sizing:border-box;min-height:2.2em;border-radius:var(--ymt-corner-xs)}:host :where([data-slot=badges],[data-slot=actions],[data-slot=aside],[data-slot=icon],[data-slot=title],[data-slot=description],[data-slot=meta]):not([disabled]){cursor:pointer}:host :where([data-slot=badges],[data-slot=actions],[data-slot=aside],[data-slot=icon],[data-slot=title],[data-slot=description],[data-slot=meta]):not([disabled]):hover{background-color:var(--ymt-focus-background);color:var(--ymt-on-focus-background)}:host :where([data-slot=badges],[data-slot=actions],[data-slot=aside],[data-slot=icon],[data-slot=title],[data-slot=description],[data-slot=meta]):not([disabled]).active{background-color:var(--ymt-primary-container);color:var(--ymt-on-primary-container)}:host :where([data-slot=badges],[data-slot=actions],[data-slot=aside],[data-slot=icon],[data-slot=title],[data-slot=description],[data-slot=meta])[disabled]{border:none;background-color:transparent}:host :where([data-slot=badges],[data-slot=actions]){min-width:3em}:host :where([data-slot=badges],[data-slot=actions]) button{width:24px;height:24px;pointer-events:none;color:currentColor}:host [data-slot=aside]{min-width:4em}:host [data-slot=icon]{height:3em;width:100%}\n"] }]
|
|
1429
|
-
}] });
|
|
1425
|
+
args: [{ selector: 'yuv-tile-config-tile', standalone: true, imports: [MatButtonModule, MatTooltipModule, MatIconModule, ObjectTypeIconComponent], template: "@let oc = _objectConfig();\n\n<div\n data-slot=\"icon\"\n [attr.disabled]=\"disableIconSlot()\"\n tabindex=\"0\"\n (click)=\"selectSlot('icon')\"\n (keydown.enter)=\"selectSlot('icon')\"\n (keydown.space)=\"selectSlot('icon'); $event.preventDefault()\"\n>\n @if (oc && oc.icon) {\n <mat-icon aria-hidden=\"true\" [attr.inert]=\"true\">{{ oc.icon.svg }}</mat-icon>\n } @else if (oc && oc.objectTypeId) {\n <yuv-object-type-icon [objectTypeId]=\"oc.objectTypeId\"></yuv-object-type-icon>\n }\n</div>\n<div\n data-slot=\"title\"\n tabindex=\"0\"\n (click)=\"selectSlot('title')\"\n (keydown.enter)=\"selectSlot('title')\"\n (keydown.space)=\"selectSlot('title'); $event.preventDefault()\"\n>\n {{ oc?.title?.label }}\n</div>\n<div\n data-slot=\"actions\"\n tabindex=\"0\"\n (click)=\"selectSlot('actions')\"\n (keydown.enter)=\"selectSlot('actions')\"\n (keydown.space)=\"selectSlot('actions'); $event.preventDefault()\"\n>\n @for (a of actions(); track a.id) {\n <button mat-icon-button [matTooltip]=\"a.label\" [attr.inert]=\"true\" aria-hidden=\"true\">\n <mat-icon inert=\"true\" aria-hidden=\"true\">{{ a.icon }}</mat-icon>\n </button>\n }\n</div>\n<div\n data-slot=\"description\"\n tabindex=\"0\"\n (click)=\"selectSlot('description')\"\n (keydown.enter)=\"selectSlot('description')\"\n (keydown.space)=\"selectSlot('description'); $event.preventDefault()\"\n>\n {{ oc?.description?.label }}\n</div>\n<div\n data-slot=\"aside\"\n tabindex=\"0\"\n (click)=\"selectSlot('aside')\"\n (keydown.enter)=\"selectSlot('aside')\"\n (keydown.space)=\"selectSlot('aside'); $event.preventDefault()\"\n>\n {{ oc?.aside?.label }}\n</div>\n<div\n data-slot=\"meta\"\n tabindex=\"0\"\n (click)=\"selectSlot('meta')\"\n (keydown.enter)=\"selectSlot('meta')\"\n (keydown.space)=\"selectSlot('meta'); $event.preventDefault()\"\n>\n {{ oc?.meta?.label }}\n</div>\n@if (!disableBadgesSlot()) {\n <div\n data-slot=\"badges\"\n tabindex=\"0\"\n (click)=\"selectSlot('badges')\"\n (keydown.enter)=\"selectSlot('badges')\"\n (keydown.space)=\"selectSlot('badges'); $event.preventDefault()\"\n >\n {{ oc?.badges }}\n </div>\n}\n", styles: [":host{--tile-item-gap: .5em;--tile-background: transparent;--tile-icon-fill: currentColor;display:grid;grid-template-rows:auto auto auto auto;grid-template-columns:3rem 1fr auto;grid-template-areas:\"icon title title actions\" \"icon description aside aside\" \"icon meta meta badges\";gap:var(--tile-item-gap);padding:var(--ymt-spacing-m);background-color:var(--tile-background)}:host:hover [data-slot=actions]{opacity:1}:host [data-slot=icon]{grid-area:icon;display:flex;align-items:center;justify-content:center}:host [data-slot=title]{grid-area:title;font-weight:700}:host [data-slot=description]{grid-area:description}:host [data-slot=meta]{grid-area:meta}:host [data-slot=aside]{flex:0 0 auto;grid-area:aside}:host [data-slot=actions]{flex:0 0 auto;display:flex;justify-self:end;grid-area:actions}:host [data-slot=actions] button{padding:0;gap:2px}:host [data-slot=badges]{grid-area:badges;justify-self:end;flex:0 0 auto}:host :where([data-slot=badges],[data-slot=actions],[data-slot=aside],[data-slot=icon],[data-slot=title],[data-slot=description],[data-slot=meta]){display:flex;align-items:center;background-color:var(--ymt-surface-panel);border:1px solid var(--ymt-outline);padding:.25em .5em;box-sizing:border-box;min-height:2.2em;border-radius:var(--ymt-corner-xs)}:host :where([data-slot=badges],[data-slot=actions],[data-slot=aside],[data-slot=icon],[data-slot=title],[data-slot=description],[data-slot=meta]):not([disabled]){cursor:pointer}:host :where([data-slot=badges],[data-slot=actions],[data-slot=aside],[data-slot=icon],[data-slot=title],[data-slot=description],[data-slot=meta]):not([disabled]):hover{background-color:var(--ymt-focus-background);color:var(--ymt-on-focus-background)}:host :where([data-slot=badges],[data-slot=actions],[data-slot=aside],[data-slot=icon],[data-slot=title],[data-slot=description],[data-slot=meta]):not([disabled]).active{background-color:var(--ymt-primary-container);color:var(--ymt-on-primary-container)}:host :where([data-slot=badges],[data-slot=actions],[data-slot=aside],[data-slot=icon],[data-slot=title],[data-slot=description],[data-slot=meta])[disabled]{border:none;background-color:transparent}:host :where([data-slot=badges],[data-slot=actions]){min-width:3em}:host :where([data-slot=badges],[data-slot=actions]) button{width:24px;height:24px;pointer-events:none;color:currentColor}:host [data-slot=aside]{min-width:4em}:host [data-slot=icon]{height:3em;width:100%}\n"] }]
|
|
1426
|
+
}], propDecorators: { disableIconSlot: [{ type: i0.Input, args: [{ isSignal: true, alias: "disableIconSlot", required: false }] }], disableBadgesSlot: [{ type: i0.Input, args: [{ isSignal: true, alias: "disableBadgesSlot", required: false }] }], objectConfig: [{ type: i0.Input, args: [{ isSignal: true, alias: "objectConfig", required: true }] }], slotSelect: [{ type: i0.Output, args: ["slotSelect"] }] } });
|
|
1430
1427
|
|
|
1431
1428
|
class TileConfigComponent {
|
|
1432
1429
|
constructor() {
|
|
@@ -1438,23 +1435,26 @@ class TileConfigComponent {
|
|
|
1438
1435
|
* is basically an ID where your custom tile config will be stored and
|
|
1439
1436
|
* retrieved. Buckets should be unique so be sure to use a unique namespace.
|
|
1440
1437
|
*/
|
|
1441
|
-
this.bucket = input(undefined);
|
|
1442
|
-
this.bucketLabel = input(undefined);
|
|
1443
|
-
this.configTypes = input(undefined);
|
|
1444
|
-
this.configFlavors = input([]);
|
|
1438
|
+
this.bucket = input(undefined, ...(ngDevMode ? [{ debugName: "bucket" }] : []));
|
|
1439
|
+
this.bucketLabel = input(undefined, ...(ngDevMode ? [{ debugName: "bucketLabel" }] : []));
|
|
1440
|
+
this.configTypes = input(undefined, ...(ngDevMode ? [{ debugName: "configTypes" }] : []));
|
|
1441
|
+
this.configFlavors = input([], ...(ngDevMode ? [{ debugName: "configFlavors" }] : []));
|
|
1445
1442
|
this.types = computed(() => {
|
|
1446
1443
|
const ct = this.configTypes() || [];
|
|
1447
1444
|
const cf = [];
|
|
1448
1445
|
// TODO: enable when flavors are supported in tile config
|
|
1449
1446
|
// const cf = this.configFlavors() || [];
|
|
1450
|
-
return [
|
|
1451
|
-
|
|
1447
|
+
return [
|
|
1448
|
+
...ct.map((t) => ({ id: t.id, icon: t.icon, data: t })),
|
|
1449
|
+
...cf.map((f) => ({ id: f.id, icon: f.icon, flavor: true, data: f }))
|
|
1450
|
+
];
|
|
1451
|
+
}, ...(ngDevMode ? [{ debugName: "types" }] : []));
|
|
1452
1452
|
this.#typesEffect = effect(() => {
|
|
1453
1453
|
const t = this.types();
|
|
1454
1454
|
if (t.length && !this.selectedType) {
|
|
1455
1455
|
this.typeSelected(t[0]);
|
|
1456
1456
|
}
|
|
1457
|
-
});
|
|
1457
|
+
}, ...(ngDevMode ? [{ debugName: "#typesEffect" }] : []));
|
|
1458
1458
|
this.save = output();
|
|
1459
1459
|
this.canceled = output();
|
|
1460
1460
|
this.selectedTypeProperties = [];
|
|
@@ -1599,10 +1599,10 @@ class TileConfigComponent {
|
|
|
1599
1599
|
}
|
|
1600
1600
|
return true;
|
|
1601
1601
|
}
|
|
1602
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1603
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
1602
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: TileConfigComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1603
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.19", type: TileConfigComponent, isStandalone: true, selector: "yuv-tile-config", inputs: { bucket: { classPropertyName: "bucket", publicName: "bucket", isSignal: true, isRequired: false, transformFunction: null }, bucketLabel: { classPropertyName: "bucketLabel", publicName: "bucketLabel", isSignal: true, isRequired: false, transformFunction: null }, configTypes: { classPropertyName: "configTypes", publicName: "configTypes", isSignal: true, isRequired: false, transformFunction: null }, configFlavors: { classPropertyName: "configFlavors", publicName: "configFlavors", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { save: "save", canceled: "canceled" }, ngImport: i0, template: "<yuv-dialog [headertitel]=\"'yuv.tile-config.title' | translate: { bucket: bucketLabel() }\">\n <main class=\"tile-config\">\n <section class=\"picker\">\n <mat-form-field>\n <mat-select [panelWidth]=\"null\" [(ngModel)]=\"selectedType\" (ngModelChange)=\"typeSelected($event)\">\n @for (t of types() || []; track t.id; let i = $index) {\n <mat-option [value]=\"t.data\">{{ t.id | translate }}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n @if (selectedType) {\n <button ymtButton=\"secondary\" (click)=\"resetConfig()\">{{ 'yuv.tile-config.button.reset' | translate }}</button>\n }\n </section>\n\n <section class=\"details\">\n @if (selectedType) {\n <div class=\"dummy-preview\">\n <yuv-tile-config-tile\n [disableIconSlot]=\"true\"\n [disableBadgesSlot]=\"true\"\n [objectConfig]=\"objectConfig!\"\n (slotSelect)=\"slotSelect($event)\"\n ></yuv-tile-config-tile>\n </div>\n\n <main>\n @if (selectedSlot === 'icon') {\n <h3>{{ 'yuv.tile-config.slot.icon.headline' | translate }}</h3>\n <yuv-icon-select [objectType]=\"selectedType\" (iconSelect)=\"iconSelected($event)\"></yuv-icon-select>\n } @else if (selectedSlot === 'badges') {\n <div class=\"placeholder empty\">\n <p>Future feature: Select badges (like: is favorite, ratings, ...)</p>\n </div>\n } @else if (!selectedSlot) {\n } @else if (selectedSlot === 'actions') {\n <h3>{{ 'yuv.tile-config.slot.action.headline' | translate }}</h3>\n <yuv-tile-action-select\n [objectType]=\"selectedType\"\n [selectedActionIds]=\"getSelectedActions()\"\n (actionSelect)=\"actionSelected($event)\"\n ></yuv-tile-action-select>\n } @else {\n <h3>{{ 'yuv.tile-config.slot.property.headline' | translate }}</h3>\n <yuv-tile-property-select\n [objectType]=\"selectedType\"\n [selectedProperty]=\"getConfigProperty(selectedSlot)\"\n (propertySelect)=\"propertySelected(selectedSlot, $event)\"\n ></yuv-tile-property-select>\n }\n </main>\n } @else {\n <div class=\"placeholder empty\"></div>\n }\n </section>\n </main>\n\n <footer>\n <button ymtButton=\"secondary\" (click)=\"cancelConfig()\">{{ 'yuv.tile-config.button.close' | translate }}</button>\n <button ymtButton=\"primary\" [disabled]=\"!configChanged\" (click)=\"saveConfig()\">{{ 'yuv.tile-config.button.save' | translate }}</button>\n </footer>\n</yuv-dialog>\n", styles: [":host{display:flex;height:100%;flex-flow:column}:host main.tile-config{height:100%;display:contents}:host .picker{display:flex;justify-content:space-between;gap:var(--ymt-spacing-m);align-items:center;border-bottom:1px solid var(--ymt-outline-variant);padding:var(--ymt-spacing-m)}:host .details{flex:1;display:flex;flex-flow:column;box-sizing:border-box;overflow:hidden}:host .details header{flex:0 0 auto;display:flex;align-items:center;border-bottom:1px solid var(--ymt-outline-variant);padding:var(--ymt-spacing-m);gap:var(--ymt-spacing-m)}:host .details header h2{flex:1;overflow:hidden;text-overflow:ellipsis;margin:0}:host .details .dummy-preview{flex:0 0 auto;padding:var(--ymt-spacing-m);background-color:var(--ymt-surface-panel);border-bottom:1px solid var(--ymt-outline-variant)}:host .details .dummy-preview yuv-tile-config-tile{max-width:500px;margin:auto;border-radius:var(--ymt-corner-m);border:1px solid var(--ymt-outline);background-color:var(--ymt-surface-container)}:host .details main{flex:1;overflow-y:auto;padding:var(--ymt-spacing-m)}:host .details main h3{margin:0;padding-block-end:var(--ymt-spacing-m);font:var(--ymt-font-subhead)}:host .details .placeholder.empty{height:100%;display:grid;place-content:center;color:var(--ymt-text-color-subtle)}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: TileConfigTileComponent, selector: "yuv-tile-config-tile", inputs: ["disableIconSlot", "disableBadgesSlot", "objectConfig"], outputs: ["slotSelect"] }, { kind: "component", type: IconSelectComponent, selector: "yuv-icon-select", inputs: ["objectType"], outputs: ["iconSelect"] }, { kind: "component", type: PropertySelectComponent, selector: "yuv-tile-property-select", inputs: ["objectType", "selectedProperty"], outputs: ["propertySelect"] }, { kind: "component", type: ActionSelectComponent, selector: "yuv-tile-action-select", inputs: ["objectType", "selectedActionIds"], outputs: ["actionSelect"] }, { kind: "ngmodule", type: YuvListModule }, { kind: "ngmodule", type: MatIconModule }, { kind: "ngmodule", type: MatDialogModule }, { kind: "ngmodule", type: MatSelectModule }, { kind: "component", type: i2$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "component", type: i2$1.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth", "canSelectNullableOptions"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i2$1.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: DialogComponent, selector: "yuv-dialog", inputs: ["headertitle", "headertitel"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "directive", type: YmtButtonDirective, selector: "button[ymtButton], a[ymtButton]", inputs: ["ymtButton", "disabled", "aria-disabled", "disableRipple", "disabledInteractive", "button-size"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
|
|
1604
1604
|
}
|
|
1605
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1605
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: TileConfigComponent, decorators: [{
|
|
1606
1606
|
type: Component,
|
|
1607
1607
|
args: [{ selector: 'yuv-tile-config', standalone: true, imports: [
|
|
1608
1608
|
FormsModule,
|
|
@@ -1610,7 +1610,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
|
|
|
1610
1610
|
IconSelectComponent,
|
|
1611
1611
|
PropertySelectComponent,
|
|
1612
1612
|
ActionSelectComponent,
|
|
1613
|
-
|
|
1613
|
+
TranslatePipe,
|
|
1614
1614
|
YuvListModule,
|
|
1615
1615
|
MatIconModule,
|
|
1616
1616
|
MatDialogModule,
|
|
@@ -1620,18 +1620,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
|
|
|
1620
1620
|
MatFormFieldModule,
|
|
1621
1621
|
YmtButtonDirective
|
|
1622
1622
|
], template: "<yuv-dialog [headertitel]=\"'yuv.tile-config.title' | translate: { bucket: bucketLabel() }\">\n <main class=\"tile-config\">\n <section class=\"picker\">\n <mat-form-field>\n <mat-select [panelWidth]=\"null\" [(ngModel)]=\"selectedType\" (ngModelChange)=\"typeSelected($event)\">\n @for (t of types() || []; track t.id; let i = $index) {\n <mat-option [value]=\"t.data\">{{ t.id | translate }}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n @if (selectedType) {\n <button ymtButton=\"secondary\" (click)=\"resetConfig()\">{{ 'yuv.tile-config.button.reset' | translate }}</button>\n }\n </section>\n\n <section class=\"details\">\n @if (selectedType) {\n <div class=\"dummy-preview\">\n <yuv-tile-config-tile\n [disableIconSlot]=\"true\"\n [disableBadgesSlot]=\"true\"\n [objectConfig]=\"objectConfig!\"\n (slotSelect)=\"slotSelect($event)\"\n ></yuv-tile-config-tile>\n </div>\n\n <main>\n @if (selectedSlot === 'icon') {\n <h3>{{ 'yuv.tile-config.slot.icon.headline' | translate }}</h3>\n <yuv-icon-select [objectType]=\"selectedType\" (iconSelect)=\"iconSelected($event)\"></yuv-icon-select>\n } @else if (selectedSlot === 'badges') {\n <div class=\"placeholder empty\">\n <p>Future feature: Select badges (like: is favorite, ratings, ...)</p>\n </div>\n } @else if (!selectedSlot) {\n } @else if (selectedSlot === 'actions') {\n <h3>{{ 'yuv.tile-config.slot.action.headline' | translate }}</h3>\n <yuv-tile-action-select\n [objectType]=\"selectedType\"\n [selectedActionIds]=\"getSelectedActions()\"\n (actionSelect)=\"actionSelected($event)\"\n ></yuv-tile-action-select>\n } @else {\n <h3>{{ 'yuv.tile-config.slot.property.headline' | translate }}</h3>\n <yuv-tile-property-select\n [objectType]=\"selectedType\"\n [selectedProperty]=\"getConfigProperty(selectedSlot)\"\n (propertySelect)=\"propertySelected(selectedSlot, $event)\"\n ></yuv-tile-property-select>\n }\n </main>\n } @else {\n <div class=\"placeholder empty\"></div>\n }\n </section>\n </main>\n\n <footer>\n <button ymtButton=\"secondary\" (click)=\"cancelConfig()\">{{ 'yuv.tile-config.button.close' | translate }}</button>\n <button ymtButton=\"primary\" [disabled]=\"!configChanged\" (click)=\"saveConfig()\">{{ 'yuv.tile-config.button.save' | translate }}</button>\n </footer>\n</yuv-dialog>\n", styles: [":host{display:flex;height:100%;flex-flow:column}:host main.tile-config{height:100%;display:contents}:host .picker{display:flex;justify-content:space-between;gap:var(--ymt-spacing-m);align-items:center;border-bottom:1px solid var(--ymt-outline-variant);padding:var(--ymt-spacing-m)}:host .details{flex:1;display:flex;flex-flow:column;box-sizing:border-box;overflow:hidden}:host .details header{flex:0 0 auto;display:flex;align-items:center;border-bottom:1px solid var(--ymt-outline-variant);padding:var(--ymt-spacing-m);gap:var(--ymt-spacing-m)}:host .details header h2{flex:1;overflow:hidden;text-overflow:ellipsis;margin:0}:host .details .dummy-preview{flex:0 0 auto;padding:var(--ymt-spacing-m);background-color:var(--ymt-surface-panel);border-bottom:1px solid var(--ymt-outline-variant)}:host .details .dummy-preview yuv-tile-config-tile{max-width:500px;margin:auto;border-radius:var(--ymt-corner-m);border:1px solid var(--ymt-outline);background-color:var(--ymt-surface-container)}:host .details main{flex:1;overflow-y:auto;padding:var(--ymt-spacing-m)}:host .details main h3{margin:0;padding-block-end:var(--ymt-spacing-m);font:var(--ymt-font-subhead)}:host .details .placeholder.empty{height:100%;display:grid;place-content:center;color:var(--ymt-text-color-subtle)}\n"] }]
|
|
1623
|
-
}] });
|
|
1623
|
+
}], propDecorators: { bucket: [{ type: i0.Input, args: [{ isSignal: true, alias: "bucket", required: false }] }], bucketLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "bucketLabel", required: false }] }], configTypes: [{ type: i0.Input, args: [{ isSignal: true, alias: "configTypes", required: false }] }], configFlavors: [{ type: i0.Input, args: [{ isSignal: true, alias: "configFlavors", required: false }] }], save: [{ type: i0.Output, args: ["save"] }], canceled: [{ type: i0.Output, args: ["canceled"] }] } });
|
|
1624
1624
|
|
|
1625
1625
|
class TileConfigTriggerComponent {
|
|
1626
1626
|
constructor() {
|
|
1627
1627
|
this.#dialog = inject(MatDialog);
|
|
1628
1628
|
this.tplTileConfig = viewChild.required('tplTileConfig');
|
|
1629
|
-
this.icon = input('settings');
|
|
1630
|
-
this.bucket = input();
|
|
1631
|
-
this.bucketLabel = input();
|
|
1632
|
-
this.options = input(undefined);
|
|
1629
|
+
this.icon = input('settings', ...(ngDevMode ? [{ debugName: "icon" }] : []));
|
|
1630
|
+
this.bucket = input(...(ngDevMode ? [undefined, { debugName: "bucket" }] : []));
|
|
1631
|
+
this.bucketLabel = input(...(ngDevMode ? [undefined, { debugName: "bucketLabel" }] : []));
|
|
1632
|
+
this.options = input(undefined, ...(ngDevMode ? [{ debugName: "options" }] : []));
|
|
1633
1633
|
// If true, renders a smaller icon button
|
|
1634
|
-
this.small = input(false);
|
|
1634
|
+
this.small = input(false, ...(ngDevMode ? [{ debugName: "small" }] : []));
|
|
1635
1635
|
}
|
|
1636
1636
|
#dialog;
|
|
1637
1637
|
#dialogRef;
|
|
@@ -1651,29 +1651,27 @@ class TileConfigTriggerComponent {
|
|
|
1651
1651
|
if (this.#dialogRef)
|
|
1652
1652
|
this.#dialogRef.close();
|
|
1653
1653
|
}
|
|
1654
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1655
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "
|
|
1654
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: TileConfigTriggerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1655
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "20.3.19", type: TileConfigTriggerComponent, isStandalone: true, selector: "yuv-tile-config-trigger", inputs: { icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, bucket: { classPropertyName: "bucket", publicName: "bucket", isSignal: true, isRequired: false, transformFunction: null }, bucketLabel: { classPropertyName: "bucketLabel", publicName: "bucketLabel", isSignal: true, isRequired: false, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null }, small: { classPropertyName: "small", publicName: "small", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "tplTileConfig", first: true, predicate: ["tplTileConfig"], descendants: true, isSignal: true }], ngImport: i0, template: "<button ymt-icon-button [icon-button-size]=\"small() ? 'small' : 'medium'\" class=\"settings icon\" (click)=\"openTileConfigOverlay()\" [matTooltip]=\"'yuv.tile-config.trigger.tooltip' | translate\">\n <mat-icon>settings</mat-icon>\n</button>\n\n<ng-template #tplTileConfig>\n <yuv-tile-config\n (save)=\"onObjectConfigSave()\"\n (canceled)=\"onObjectConfigCancel()\"\n [bucket]=\"bucket() || undefined\"\n [bucketLabel]=\"bucketLabel()\"\n [configTypes]=\"options()?.configTypes\"\n [configFlavors]=\"options()?.configFlavors || []\"\n ></yuv-tile-config>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "component", type: TileConfigComponent, selector: "yuv-tile-config", inputs: ["bucket", "bucketLabel", "configTypes", "configFlavors"], outputs: ["save", "canceled"] }, { kind: "directive", type: YmtIconButtonDirective, selector: "button[ymtIconButton],button[ymt-icon-button],a[ymtIconButton],a[ymt-icon-button]", inputs: ["disabled", "disableRipple", "aria-disabled", "disabledInteractive", "icon-button-size"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i4.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: TranslatePipe$1, name: "translate" }] }); }
|
|
1656
1656
|
}
|
|
1657
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1657
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: TileConfigTriggerComponent, decorators: [{
|
|
1658
1658
|
type: Component,
|
|
1659
|
-
args: [{ selector: 'yuv-tile-config-trigger', standalone: true, imports: [
|
|
1660
|
-
|
|
1661
|
-
MatButtonModule, MatTooltipModule, MatIcon], template: "<button ymt-icon-button [icon-button-size]=\"small() ? 'small' : 'medium'\" class=\"settings icon\" (click)=\"openTileConfigOverlay()\" [matTooltip]=\"'yuv.tile-config.trigger.tooltip' | translate\">\n <mat-icon>settings</mat-icon>\n</button>\n\n<ng-template #tplTileConfig>\n <yuv-tile-config\n (save)=\"onObjectConfigSave()\"\n (canceled)=\"onObjectConfigCancel()\"\n [bucket]=\"bucket() || undefined\"\n [bucketLabel]=\"bucketLabel()\"\n [configTypes]=\"options()?.configTypes\"\n [configFlavors]=\"options()?.configFlavors || []\"\n ></yuv-tile-config>\n</ng-template>\n" }]
|
|
1662
|
-
}] });
|
|
1659
|
+
args: [{ selector: 'yuv-tile-config-trigger', standalone: true, imports: [TileConfigComponent, TranslatePipe$1, YmtIconButtonDirective, MatButtonModule, MatTooltipModule, MatIcon], template: "<button ymt-icon-button [icon-button-size]=\"small() ? 'small' : 'medium'\" class=\"settings icon\" (click)=\"openTileConfigOverlay()\" [matTooltip]=\"'yuv.tile-config.trigger.tooltip' | translate\">\n <mat-icon>settings</mat-icon>\n</button>\n\n<ng-template #tplTileConfig>\n <yuv-tile-config\n (save)=\"onObjectConfigSave()\"\n (canceled)=\"onObjectConfigCancel()\"\n [bucket]=\"bucket() || undefined\"\n [bucketLabel]=\"bucketLabel()\"\n [configTypes]=\"options()?.configTypes\"\n [configFlavors]=\"options()?.configFlavors || []\"\n ></yuv-tile-config>\n</ng-template>\n" }]
|
|
1660
|
+
}], propDecorators: { tplTileConfig: [{ type: i0.ViewChild, args: ['tplTileConfig', { isSignal: true }] }], icon: [{ type: i0.Input, args: [{ isSignal: true, alias: "icon", required: false }] }], bucket: [{ type: i0.Input, args: [{ isSignal: true, alias: "bucket", required: false }] }], bucketLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "bucketLabel", required: false }] }], options: [{ type: i0.Input, args: [{ isSignal: true, alias: "options", required: false }] }], small: [{ type: i0.Input, args: [{ isSignal: true, alias: "small", required: false }] }] } });
|
|
1663
1661
|
|
|
1664
1662
|
class EmailTileExtensionComponent {
|
|
1665
1663
|
constructor() {
|
|
1666
|
-
this.data = input.required();
|
|
1667
|
-
this.attachments = computed(() => this.data()['appSystemmail:attachments'] || []);
|
|
1668
|
-
this.hasAttachements = computed(() => !!this.data()['appSystemmail:attachmentCount']);
|
|
1664
|
+
this.data = input.required(...(ngDevMode ? [{ debugName: "data" }] : []));
|
|
1665
|
+
this.attachments = computed(() => this.data()['appSystemmail:attachments'] || [], ...(ngDevMode ? [{ debugName: "attachments" }] : []));
|
|
1666
|
+
this.hasAttachements = computed(() => !!this.data()['appSystemmail:attachmentCount'], ...(ngDevMode ? [{ debugName: "hasAttachements" }] : []));
|
|
1669
1667
|
}
|
|
1670
1668
|
onClick(a, evt) {
|
|
1671
1669
|
evt.preventDefault();
|
|
1672
1670
|
evt.stopPropagation();
|
|
1673
1671
|
alert(`You clicked '${a}' my friend.`);
|
|
1674
1672
|
}
|
|
1675
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1676
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
1673
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: EmailTileExtensionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1674
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.19", type: EmailTileExtensionComponent, isStandalone: true, selector: "yuv-email-tile-extension", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: true, transformFunction: null } }, host: { properties: { "class.attachments": "hasAttachements()" } }, ngImport: i0, template: `
|
|
1677
1675
|
@if (hasAttachements()) {
|
|
1678
1676
|
<span>{{ attachments().length }}</span>
|
|
1679
1677
|
<svg class="icon" xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="#5f6368" viewBox="0 -960 960 960">
|
|
@@ -1682,9 +1680,9 @@ class EmailTileExtensionComponent {
|
|
|
1682
1680
|
/>
|
|
1683
1681
|
</svg>
|
|
1684
1682
|
}
|
|
1685
|
-
`, isInline: true, styles: [":host{display:flex;justify-content:end;margin-top:.5rem
|
|
1683
|
+
`, isInline: true, styles: [":host{display:flex;justify-content:end;margin-top:.5rem}:host .icon{height:1rem}\n"] }); }
|
|
1686
1684
|
}
|
|
1687
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1685
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: EmailTileExtensionComponent, decorators: [{
|
|
1688
1686
|
type: Component,
|
|
1689
1687
|
args: [{ selector: 'yuv-email-tile-extension', standalone: true, imports: [], template: `
|
|
1690
1688
|
@if (hasAttachements()) {
|
|
@@ -1697,8 +1695,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
|
|
|
1697
1695
|
}
|
|
1698
1696
|
`, host: {
|
|
1699
1697
|
'[class.attachments]': 'hasAttachements()'
|
|
1700
|
-
}, styles: [":host{display:flex;justify-content:end;margin-top:.5rem
|
|
1701
|
-
}] });
|
|
1698
|
+
}, styles: [":host{display:flex;justify-content:end;margin-top:.5rem}:host .icon{height:1rem}\n"] }]
|
|
1699
|
+
}], propDecorators: { data: [{ type: i0.Input, args: [{ isSignal: true, alias: "data", required: true }] }] } });
|
|
1702
1700
|
|
|
1703
1701
|
/**
|
|
1704
1702
|
* Generated bundle index. Do not edit.
|