@fundamental-ngx/platform 0.48.0-rc.9 → 0.48.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/approval-flow/approval-flow-node/approval-flow-node.component.d.ts +0 -2
- package/button/button.component.d.ts +7 -8
- package/dynamic-page/dynamic-page.component.d.ts +24 -15
- package/dynamic-page/dynamic-page.tokens.d.ts +3 -0
- package/dynamic-page/index.d.ts +2 -1
- package/dynamic-page/platform-dynamic-page.interface.d.ts +22 -0
- package/esm2022/approval-flow/approval-flow-add-node/approval-flow-add-node.component.mjs +4 -4
- package/esm2022/approval-flow/approval-flow-approver-details/approval-flow-approver-details.component.mjs +4 -4
- package/esm2022/approval-flow/approval-flow-messages/approval-flow-messages.component.mjs +3 -3
- package/esm2022/approval-flow/approval-flow-node/approval-flow-drop-zone.directive.mjs +3 -3
- package/esm2022/approval-flow/approval-flow-node/approval-flow-node.component.mjs +5 -7
- package/esm2022/approval-flow/approval-flow-select-type/approval-flow-select-type.component.mjs +3 -3
- package/esm2022/approval-flow/approval-flow-team-list/approval-flow-team-list.component.mjs +3 -3
- package/esm2022/approval-flow/approval-flow-toolbar-actions/approval-flow-toolbar-actions.component.mjs +3 -3
- package/esm2022/approval-flow/approval-flow-user-details/approval-flow-user-details.component.mjs +3 -3
- package/esm2022/approval-flow/approval-flow-user-list/approval-flow-user-list.component.mjs +3 -3
- package/esm2022/approval-flow/approval-flow.component.mjs +5 -5
- package/esm2022/approval-flow/approval-flow.module.mjs +4 -4
- package/esm2022/approval-flow/services/approval-flow-add-node-view.service.mjs +3 -3
- package/esm2022/button/button.component.mjs +14 -15
- package/esm2022/button/button.module.mjs +4 -4
- package/esm2022/dynamic-page/directives/dynamic-page-header-subtitle.directive.mjs +3 -3
- package/esm2022/dynamic-page/directives/dynamic-page-header-title.directive.mjs +3 -3
- package/esm2022/dynamic-page/dynamic-page-content/dynamic-page-content-host.component.mjs +3 -3
- package/esm2022/dynamic-page/dynamic-page-content/dynamic-page-content.component.mjs +3 -3
- package/esm2022/dynamic-page/dynamic-page-footer/dynamic-page-footer.component.mjs +3 -3
- package/esm2022/dynamic-page/dynamic-page-header/actions/global-actions/dynamic-page-global-actions.component.mjs +3 -3
- package/esm2022/dynamic-page/dynamic-page-header/actions/layout-actions/dynamic-page-layout-actions.component.mjs +3 -3
- package/esm2022/dynamic-page/dynamic-page-header/header/dynamic-page-header.component.mjs +3 -3
- package/esm2022/dynamic-page/dynamic-page-header/key-info/dynamic-page-key-info.component.mjs +3 -3
- package/esm2022/dynamic-page/dynamic-page-header/title/dynamic-page-title-image.component.mjs +3 -3
- package/esm2022/dynamic-page/dynamic-page-header/title/dynamic-page-title.component.mjs +3 -3
- package/esm2022/dynamic-page/dynamic-page.component.mjs +48 -35
- package/esm2022/dynamic-page/dynamic-page.config.mjs +3 -3
- package/esm2022/dynamic-page/dynamic-page.module.mjs +4 -4
- package/esm2022/dynamic-page/dynamic-page.tokens.mjs +3 -0
- package/esm2022/dynamic-page/index.mjs +3 -2
- package/esm2022/dynamic-page/platform-dynamic-page.interface.mjs +2 -0
- package/esm2022/feed-input/feed-input.component.mjs +6 -6
- package/esm2022/feed-input/feed-input.module.mjs +4 -4
- package/esm2022/form/auto-complete/auto-complete.directive.mjs +3 -3
- package/esm2022/form/auto-complete/auto-complete.module.mjs +4 -4
- package/esm2022/form/checkbox/checkbox.component.mjs +11 -43
- package/esm2022/form/checkbox/checkbox.module.mjs +4 -4
- package/esm2022/form/checkbox-group/checkbox-group.component.mjs +21 -63
- package/esm2022/form/checkbox-group/checkbox-group.module.mjs +4 -4
- package/esm2022/form/combobox/combobox/combobox.component.mjs +33 -63
- package/esm2022/form/combobox/combobox-mobile/combobox/combobox-mobile.component.mjs +15 -22
- package/esm2022/form/combobox/combobox-mobile/combobox-mobile.module.mjs +4 -4
- package/esm2022/form/combobox/combobox.config.mjs +3 -3
- package/esm2022/form/combobox/combobox.module.mjs +4 -4
- package/esm2022/form/combobox/commons/base-combobox.mjs +24 -58
- package/esm2022/form/combobox/directives/combobox-item.directive.mjs +15 -15
- package/esm2022/form/date-picker/date-picker.component.mjs +21 -57
- package/esm2022/form/date-picker/date-picker.module.mjs +4 -4
- package/esm2022/form/datetime-picker/datetime-picker.component.mjs +22 -60
- package/esm2022/form/datetime-picker/datetime-picker.module.mjs +4 -4
- package/esm2022/form/form-generator/base-dynamic-form-generator-control.mjs +3 -3
- package/esm2022/form/form-generator/controls/dynamic-form-generator-checkbox/dynamic-form-generator-checkbox.component.mjs +5 -9
- package/esm2022/form/form-generator/controls/dynamic-form-generator-datepicker/dynamic-form-generator-datepicker.component.mjs +5 -9
- package/esm2022/form/form-generator/controls/dynamic-form-generator-editor/dynamic-form-generator-editor.component.mjs +5 -9
- package/esm2022/form/form-generator/controls/dynamic-form-generator-input/dynamic-form-generator-input.component.mjs +5 -9
- package/esm2022/form/form-generator/controls/dynamic-form-generator-multi-input/dynamic-form-generator-multi-input.component.mjs +5 -9
- package/esm2022/form/form-generator/controls/dynamic-form-generator-object-status/dynamic-form-generator-object-status.component.mjs +4 -4
- package/esm2022/form/form-generator/controls/dynamic-form-generator-radio/dynamic-form-generator-radio.component.mjs +5 -9
- package/esm2022/form/form-generator/controls/dynamic-form-generator-select/dynamic-form-generator-select.component.mjs +5 -9
- package/esm2022/form/form-generator/controls/dynamic-form-generator-switch/dynamic-form-generator-switch.component.mjs +5 -9
- package/esm2022/form/form-generator/dynamic-form-control-field.directive.mjs +3 -3
- package/esm2022/form/form-generator/dynamic-form-control.directive.mjs +3 -3
- package/esm2022/form/form-generator/fdp-form-generator.module.mjs +4 -4
- package/esm2022/form/form-generator/form-generator/form-generator.component.mjs +27 -13
- package/esm2022/form/form-generator/form-generator-components-accessor.service.mjs +3 -3
- package/esm2022/form/form-generator/form-generator-field/form-generator-field.component.mjs +3 -3
- package/esm2022/form/form-generator/form-generator.service.mjs +11 -16
- package/esm2022/form/form-generator/interfaces/dynamic-form-item.mjs +1 -1
- package/esm2022/form/form-generator/pipes/get-hint-options.pipe.mjs +3 -3
- package/esm2022/form/form-generator/pipes/get-ordered-form-controls.pipe.mjs +3 -3
- package/esm2022/form/form-group/fdp-form.module.mjs +4 -4
- package/esm2022/form/form-group/form-field/form-field.component.mjs +40 -47
- package/esm2022/form/form-group/form-field-error/form-field-error-description.directive.mjs +3 -3
- package/esm2022/form/form-group/form-field-error/form-field-error-heading.directive.mjs +3 -3
- package/esm2022/form/form-group/form-field-error/form-field-error.directive.mjs +3 -3
- package/esm2022/form/form-group/form-field-extras/form-field-extras.component.mjs +3 -3
- package/esm2022/form/form-group/form-field-group/form-field-group.component.mjs +4 -4
- package/esm2022/form/form-group/form-group-header/form-group-header.component.mjs +3 -3
- package/esm2022/form/form-group/form-group.component.mjs +40 -50
- package/esm2022/form/form-group/pipes/field-group-row-value.pipe.mjs +3 -3
- package/esm2022/form/form-group/services/form-field-layout.service.mjs +3 -3
- package/esm2022/form/input/fdp-input.module.mjs +4 -4
- package/esm2022/form/input/input.component.mjs +16 -48
- package/esm2022/form/input-group/addon-body.component.mjs +4 -5
- package/esm2022/form/input-group/addon.component.mjs +3 -3
- package/esm2022/form/input-group/input-group.component.mjs +13 -46
- package/esm2022/form/input-group/input-group.config.mjs +3 -3
- package/esm2022/form/input-group/input-group.module.mjs +4 -4
- package/esm2022/form/input-group/input.component.mjs +3 -3
- package/esm2022/form/input-message-group-with-template/input-message-group-with-template.component.mjs +3 -3
- package/esm2022/form/multi-combobox/commons/base-multi-combobox.mjs +64 -102
- package/esm2022/form/multi-combobox/multi-combobox/multi-combobox.component.mjs +25 -71
- package/esm2022/form/multi-combobox/multi-combobox-mobile/multi-combobox/multi-combobox-mobile.component.mjs +18 -26
- package/esm2022/form/multi-combobox/multi-combobox-mobile/multi-combobox-mobile.module.mjs +4 -4
- package/esm2022/form/multi-combobox/multi-combobox.config.mjs +3 -3
- package/esm2022/form/multi-combobox/multi-combobox.interface.mjs +1 -1
- package/esm2022/form/multi-combobox/multi-combobox.module.mjs +4 -4
- package/esm2022/form/multi-input/base-multi-input.mjs +43 -83
- package/esm2022/form/multi-input/multi-input-mobile/multi-input-mobile.component.mjs +13 -21
- package/esm2022/form/multi-input/multi-input-mobile/multi-input-mobile.module.mjs +4 -4
- package/esm2022/form/multi-input/multi-input.component.mjs +32 -91
- package/esm2022/form/multi-input/multi-input.config.mjs +3 -3
- package/esm2022/form/multi-input/multi-input.module.mjs +4 -4
- package/esm2022/form/radio-group/radio/radio.component.mjs +12 -44
- package/esm2022/form/radio-group/radio-group.component.mjs +32 -74
- package/esm2022/form/radio-group/radio-group.module.mjs +4 -4
- package/esm2022/form/select/commons/base-select.mjs +59 -101
- package/esm2022/form/select/select/select.component.mjs +17 -60
- package/esm2022/form/select/select.config.mjs +3 -3
- package/esm2022/form/select/select.module.mjs +4 -4
- package/esm2022/form/step-input/base.step-input.mjs +72 -85
- package/esm2022/form/step-input/number/number-step-input.component.mjs +14 -53
- package/esm2022/form/step-input/step-input-action-button.mjs +9 -13
- package/esm2022/form/step-input/step-input-control.directive.mjs +3 -3
- package/esm2022/form/step-input/step-input-decrement.directive.mjs +9 -13
- package/esm2022/form/step-input/step-input-increment.directive.mjs +9 -13
- package/esm2022/form/step-input/step-input.config.mjs +3 -3
- package/esm2022/form/step-input/step-input.module.mjs +4 -4
- package/esm2022/form/switch/switch/switch.component.mjs +12 -49
- package/esm2022/form/switch/switch/switch.config.mjs +3 -3
- package/esm2022/form/switch/switch.module.mjs +4 -4
- package/esm2022/form/text-area/text-area.component.mjs +14 -45
- package/esm2022/form/text-area/text-area.config.mjs +3 -3
- package/esm2022/form/text-area/text-area.module.mjs +4 -4
- package/esm2022/form/time-picker/time-picker.component.mjs +11 -42
- package/esm2022/form/time-picker/time-picker.module.mjs +4 -4
- package/esm2022/fundamental-ngx.module.mjs +4 -4
- package/esm2022/icon-tab-bar/components/closable-icon-tab-bar.class.mjs +6 -6
- package/esm2022/icon-tab-bar/components/icon-tab-bar-base.class.mjs +85 -90
- package/esm2022/icon-tab-bar/components/icon-tab-bar-filter-type/icon-tab-bar-filter-type.component.mjs +21 -9
- package/esm2022/icon-tab-bar/components/icon-tab-bar-icon-type/icon-tab-bar-icon-type.component.mjs +26 -9
- package/esm2022/icon-tab-bar/components/icon-tab-bar-process-type/icon-tab-bar-process-type.component.mjs +40 -26
- package/esm2022/icon-tab-bar/components/icon-tab-bar-tab/icon-tab-bar-tab.component.mjs +76 -0
- package/esm2022/icon-tab-bar/components/icon-tab-bar-text-type/icon-tab-bar-text-type.component.mjs +28 -16
- package/esm2022/icon-tab-bar/components/popovers/icon-tab-bar-popover/icon-tab-bar-popover.component.mjs +14 -5
- package/esm2022/icon-tab-bar/components/popovers/icon-tab-bar-popover-base.class.mjs +3 -3
- package/esm2022/icon-tab-bar/components/popovers/text-type-popover/text-type-popover.component.mjs +5 -5
- package/esm2022/icon-tab-bar/directives/dnd/icon-bar-dnd-container.directive.mjs +12 -21
- package/esm2022/icon-tab-bar/directives/dnd/icon-bar-dnd-item.directive.mjs +10 -12
- package/esm2022/icon-tab-bar/directives/dnd/icon-bar-dnd-list.directive.mjs +10 -11
- package/esm2022/icon-tab-bar/directives/icon-tab-bar-free-content.directive.mjs +14 -0
- package/esm2022/icon-tab-bar/icon-tab-bar.component.mjs +208 -27
- package/esm2022/icon-tab-bar/icon-tab-bar.module.mjs +19 -9
- package/esm2022/icon-tab-bar/index.mjs +3 -1
- package/esm2022/icon-tab-bar/interfaces/tab-config.interface.mjs +1 -1
- package/esm2022/info-label/info-label.component.mjs +6 -4
- package/esm2022/info-label/info-label.module.mjs +4 -4
- package/esm2022/link/link.component.mjs +15 -23
- package/esm2022/link/link.module.mjs +4 -4
- package/esm2022/list/action-list-item/action-list-item.component.mjs +5 -5
- package/esm2022/list/action-list-item/action-list-item.module.mjs +4 -4
- package/esm2022/list/base-list-item.mjs +20 -22
- package/esm2022/list/display-list-item/display-list-item.component.mjs +5 -5
- package/esm2022/list/display-list-item/display-list-item.module.mjs +4 -4
- package/esm2022/list/free-content-list-item/free-content-list-item.component.mjs +5 -5
- package/esm2022/list/list-group-footer.component.mjs +5 -5
- package/esm2022/list/list-group-header.component.mjs +7 -7
- package/esm2022/list/list.component.mjs +25 -66
- package/esm2022/list/list.config.mjs +3 -3
- package/esm2022/list/list.module.mjs +4 -4
- package/esm2022/list/load-more-content.directive.mjs +3 -3
- package/esm2022/list/object-list-item/object-list-item-row.component.mjs +6 -6
- package/esm2022/list/object-list-item/object-list-item.component.mjs +5 -5
- package/esm2022/list/object-list-item/object-list-item.module.mjs +4 -4
- package/esm2022/list/standard-list-item/standard-list-item.component.mjs +5 -5
- package/esm2022/list/standard-list-item/standard-list-item.module.mjs +4 -4
- package/esm2022/menu/menu-item.component.mjs +5 -5
- package/esm2022/menu/menu-trigger.directive.mjs +3 -3
- package/esm2022/menu/menu.component.mjs +5 -6
- package/esm2022/menu/menu.module.mjs +4 -4
- package/esm2022/menu-button/menu-button.component.mjs +14 -9
- package/esm2022/menu-button/menu-button.module.mjs +4 -4
- package/esm2022/message-popover/components/message-popover-form-wrapper/message-popover-form-wrapper.component.mjs +11 -14
- package/esm2022/message-popover/components/message-view/message-view.component.mjs +4 -4
- package/esm2022/message-popover/directives/message-popover-form-item.directive.mjs +3 -3
- package/esm2022/message-popover/message-popover.component.mjs +53 -54
- package/esm2022/message-popover/models/message-popover-wrapper.interface.mjs +1 -1
- package/esm2022/message-popover/platform-message-popover.module.mjs +4 -4
- package/esm2022/object-marker/object-marker.component.mjs +10 -5
- package/esm2022/object-marker/object-marker.module.mjs +4 -4
- package/esm2022/object-status/object-status.component.mjs +13 -8
- package/esm2022/object-status/object-status.module.mjs +4 -4
- package/esm2022/page-footer/page-footer.component.mjs +8 -10
- package/esm2022/page-footer/page-footer.module.mjs +4 -4
- package/esm2022/panel/panel-actions.component.mjs +3 -3
- package/esm2022/panel/panel-content/panel-content.component.mjs +3 -3
- package/esm2022/panel/panel.component.mjs +8 -9
- package/esm2022/panel/panel.config.mjs +3 -3
- package/esm2022/panel/panel.module.mjs +4 -4
- package/esm2022/search-field/search-field-mobile/search-field/search-field-mobile.component.mjs +12 -22
- package/esm2022/search-field/search-field.component.mjs +36 -42
- package/esm2022/search-field/search-field.module.mjs +4 -4
- package/esm2022/settings-generator/controls/theme-selector-list/theme-selector-list.component.mjs +6 -6
- package/esm2022/settings-generator/default-config.mjs +2 -2
- package/esm2022/settings-generator/layouts/base-settings-generator-layout.mjs +3 -3
- package/esm2022/settings-generator/layouts/settings-generator-sidebar-layout/settings-generator-sidebar-icon/settings-generator-sidebar-icon.component.mjs +3 -3
- package/esm2022/settings-generator/layouts/settings-generator-sidebar-layout/settings-generator-sidebar-layout.component.mjs +3 -3
- package/esm2022/settings-generator/models/settings.model.mjs +1 -1
- package/esm2022/settings-generator/settings-generator-content/settings-generator-content.component.mjs +34 -28
- package/esm2022/settings-generator/settings-generator-content/settings-generator-section/settings-generator-section.component.mjs +4 -5
- package/esm2022/settings-generator/settings-generator-layout-accessor.service.mjs +3 -3
- package/esm2022/settings-generator/settings-generator.component.mjs +6 -6
- package/esm2022/settings-generator/settings-generator.module.mjs +4 -4
- package/esm2022/settings-generator/settings-generator.service.mjs +12 -13
- package/esm2022/shared/base.mjs +30 -18
- package/esm2022/shared/form/base.input.mjs +70 -69
- package/esm2022/shared/form/collection-base.input.mjs +7 -49
- package/esm2022/shared/form/inline-layout-collection-base.input.mjs +25 -66
- package/esm2022/shared/pipes/convert-bytes/convert-bytes.pipe.mjs +3 -3
- package/esm2022/shared/pipes/pipe.module.mjs +4 -4
- package/esm2022/shared/platform.config.mjs +3 -3
- package/esm2022/slider/slider.component.mjs +11 -43
- package/esm2022/slider/slider.module.mjs +4 -4
- package/esm2022/smart-filter-bar/components/smart-filter-bar-condition-field/base-smart-filter-bar-condition-field.mjs +11 -14
- package/esm2022/smart-filter-bar/components/smart-filter-bar-condition-field/smart-filter-bar-condition-field.component.mjs +8 -16
- package/esm2022/smart-filter-bar/components/smart-filter-bar-conditions-dialog/smart-filter-bar-conditions-dialog.component.mjs +6 -6
- package/esm2022/smart-filter-bar/components/smart-filter-bar-settings-dialog/smart-filter-bar-settings-dialog.component.mjs +13 -18
- package/esm2022/smart-filter-bar/directives/smart-filter-bar-field-definition.directive.mjs +22 -47
- package/esm2022/smart-filter-bar/directives/smart-filter-bar-subject.directive.mjs +12 -10
- package/esm2022/smart-filter-bar/directives/smart-filter-bar-toolbar-item.directive.mjs +3 -3
- package/esm2022/smart-filter-bar/smart-filter-bar.class.mjs +3 -3
- package/esm2022/smart-filter-bar/smart-filter-bar.component.mjs +73 -57
- package/esm2022/smart-filter-bar/smart-filter-bar.module.mjs +4 -4
- package/esm2022/smart-filter-bar/smart-filter-bar.service.mjs +3 -3
- package/esm2022/split-menu-button/split-menu-button.component.mjs +17 -24
- package/esm2022/split-menu-button/split-menu-button.module.mjs +4 -4
- package/esm2022/table/components/no-data-wrapper/no-data-wrapper.component.mjs +3 -3
- package/esm2022/table/components/reset-button/reset-button.component.mjs +8 -9
- package/esm2022/table/components/table-cell-header-popover/table-cell-header-popover.component.mjs +10 -9
- package/esm2022/table/components/table-column/table-column.component.mjs +3 -3
- package/esm2022/table/components/table-column-resizer/table-column-resizer.component.mjs +11 -14
- package/esm2022/table/components/table-editable-cell/table-editable-cell.component.mjs +4 -4
- package/esm2022/table/components/table-group-row/table-group-row.component.mjs +6 -10
- package/esm2022/table/components/table-header-cell-content/table-header-cell-content.component.mjs +31 -15
- package/esm2022/table/components/table-header-row/table-header-row.component.mjs +19 -24
- package/esm2022/table/components/table-p13-dialog/columns/columns.component.mjs +9 -11
- package/esm2022/table/components/table-p13-dialog/filtering/filter-rule.component.mjs +4 -4
- package/esm2022/table/components/table-p13-dialog/filtering/filtering.component.mjs +8 -11
- package/esm2022/table/components/table-p13-dialog/grouping/grouping.component.mjs +8 -11
- package/esm2022/table/components/table-p13-dialog/sorting/sorting.component.mjs +11 -14
- package/esm2022/table/components/table-p13-dialog/table-p13-columns.component.mjs +3 -3
- package/esm2022/table/components/table-p13-dialog/table-p13-dialog.component.mjs +3 -3
- package/esm2022/table/components/table-p13-dialog/table-p13-filter.component.mjs +3 -3
- package/esm2022/table/components/table-p13-dialog/table-p13-group.component.mjs +3 -3
- package/esm2022/table/components/table-p13-dialog/table-p13-sort.component.mjs +3 -3
- package/esm2022/table/components/table-popping-row/table-popping-row.component.mjs +7 -8
- package/esm2022/table/components/table-row/table-row.component.mjs +12 -17
- package/esm2022/table/components/table-toolbar/table-toolbar-actions.component.mjs +3 -3
- package/esm2022/table/components/table-toolbar/table-toolbar-left-actions.component.mjs +3 -3
- package/esm2022/table/components/table-toolbar/table-toolbar.component.mjs +38 -23
- package/esm2022/table/components/table-view-settings-dialog/filtering/filter-custom.component.mjs +3 -3
- package/esm2022/table/components/table-view-settings-dialog/filtering/filter-multi-select.component.mjs +3 -3
- package/esm2022/table/components/table-view-settings-dialog/filtering/filter-single-select.component.mjs +3 -3
- package/esm2022/table/components/table-view-settings-dialog/filtering/filter-step.component.mjs +4 -4
- package/esm2022/table/components/table-view-settings-dialog/filtering/filters-list-step.component.mjs +4 -4
- package/esm2022/table/components/table-view-settings-dialog/filtering/filters.component.mjs +8 -11
- package/esm2022/table/components/table-view-settings-dialog/grouping/grouping.component.mjs +9 -12
- package/esm2022/table/components/table-view-settings-dialog/sorting/sorting.component.mjs +9 -12
- package/esm2022/table/components/table-view-settings-dialog/table-view-settings-dialog.component.mjs +3 -3
- package/esm2022/table/components/table-view-settings-dialog/table-view-settings-filter.component.mjs +3 -3
- package/esm2022/table/table.component.mjs +138 -62
- package/esm2022/table/table.module.mjs +4 -4
- package/esm2022/table-helpers/directives/platform-table-column-responsive.directive.mjs +3 -3
- package/esm2022/table-helpers/directives/table-cell-header-popover.directive.mjs +4 -4
- package/esm2022/table-helpers/directives/table-cell-resizable.directive.mjs +20 -23
- package/esm2022/table-helpers/directives/table-cell-selectable.directive.mjs +3 -3
- package/esm2022/table-helpers/directives/table-cell.directive.mjs +12 -12
- package/esm2022/table-helpers/directives/table-data-source.directive.mjs +10 -9
- package/esm2022/table-helpers/directives/table-draggable.directive.mjs +3 -3
- package/esm2022/table-helpers/directives/table-header-resizer.directive.mjs +3 -3
- package/esm2022/table-helpers/directives/table-header.directive.mjs +6 -6
- package/esm2022/table-helpers/directives/table-initial-state.directive.mjs +5 -5
- package/esm2022/table-helpers/directives/table-scrollable.directive.mjs +3 -3
- package/esm2022/table-helpers/directives/table-view-settings-filter-custom.directive.mjs +3 -3
- package/esm2022/table-helpers/directives/table-virtual-scroll.directive.mjs +3 -3
- package/esm2022/table-helpers/pipes/cell-styles.pipe.mjs +3 -3
- package/esm2022/table-helpers/pipes/column-resizable-side.pipe.mjs +3 -3
- package/esm2022/table-helpers/pipes/column-sorting-direction.pipe.mjs +3 -3
- package/esm2022/table-helpers/pipes/row-classes.pipe.mjs +3 -3
- package/esm2022/table-helpers/pipes/selection-cell-styles.pipe.mjs +3 -3
- package/esm2022/table-helpers/services/table-column-resize.service.mjs +22 -20
- package/esm2022/table-helpers/services/table-responsive.service.mjs +9 -14
- package/esm2022/table-helpers/services/table-row.service.mjs +3 -3
- package/esm2022/table-helpers/services/table-scroll-dispatcher.service.mjs +3 -3
- package/esm2022/table-helpers/services/table.service.mjs +23 -21
- package/esm2022/table-helpers/table-helpers.module.mjs +4 -4
- package/esm2022/table-helpers/table.mjs +1 -1
- package/esm2022/value-help-dialog/components/base-tab/vhd-base-tab.component.mjs +3 -3
- package/esm2022/value-help-dialog/components/define-tab/define-tab.component.mjs +4 -4
- package/esm2022/value-help-dialog/components/select-tab/select-tab.component.mjs +28 -8
- package/esm2022/value-help-dialog/components/value-help-dialog-filter/value-help-dialog-filter.component.mjs +9 -5
- package/esm2022/value-help-dialog/directives/condition-count-message.directive.mjs +3 -3
- package/esm2022/value-help-dialog/directives/value-help-column-def.directive.mjs +24 -0
- package/esm2022/value-help-dialog/directives/value-help-filter-def.directive.mjs +22 -0
- package/esm2022/value-help-dialog/index.mjs +3 -1
- package/esm2022/value-help-dialog/models/vhd-component.model.mjs +3 -0
- package/esm2022/value-help-dialog/models/vhd-filter.model.mjs +1 -1
- package/esm2022/value-help-dialog/value-help-dialog/value-help-dialog.component.mjs +59 -32
- package/esm2022/value-help-dialog/value-help-dialog.module.mjs +4 -4
- package/esm2022/variant-management/components/manage-variant-item/manage-variant-item.component.mjs +4 -4
- package/esm2022/variant-management/components/manage-variants-dialog/manage-variants-dialog.component.mjs +6 -6
- package/esm2022/variant-management/components/variant-management-wrapper/variant-management-wrapper.component.mjs +3 -3
- package/esm2022/variant-management/directives/variant-management-dirty-label.directive.mjs +3 -3
- package/esm2022/variant-management/variant-management.component.mjs +47 -13
- package/esm2022/variant-management/variant-management.module.mjs +4 -4
- package/esm2022/wizard-generator/base-wizard-generator.mjs +21 -28
- package/esm2022/wizard-generator/components/dialog-wizard-generator/dialog-wizard-generator.component.mjs +19 -19
- package/esm2022/wizard-generator/components/wizard-body/wizard-body.component.mjs +12 -18
- package/esm2022/wizard-generator/components/wizard-generator/wizard-generator.component.mjs +7 -12
- package/esm2022/wizard-generator/components/wizard-generator-step/wizard-generator-step.component.mjs +11 -10
- package/esm2022/wizard-generator/components/wizard-summary-step/wizard-summary-section/wizard-summary-section.component.mjs +4 -4
- package/esm2022/wizard-generator/components/wizard-summary-step/wizard-summary-step.component.mjs +3 -3
- package/esm2022/wizard-generator/directives/wizard-generator-finish-button.directive.mjs +3 -3
- package/esm2022/wizard-generator/directives/wizard-generator-go-next-button.directive.mjs +3 -3
- package/esm2022/wizard-generator/directives/wizard-generator-review-button.directive.mjs +3 -3
- package/esm2022/wizard-generator/directives/wizard-generator-summary-step.directive.mjs +3 -3
- package/esm2022/wizard-generator/wizard-dialog-generator.service.mjs +3 -3
- package/esm2022/wizard-generator/wizard-generator.module.mjs +4 -4
- package/esm2022/wizard-generator/wizard-generator.service.mjs +3 -3
- package/fesm2022/fundamental-ngx-platform-approval-flow.mjs +42 -44
- package/fesm2022/fundamental-ngx-platform-approval-flow.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-button.mjs +16 -17
- package/fesm2022/fundamental-ngx-platform-button.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-dynamic-page.mjs +88 -130
- package/fesm2022/fundamental-ngx-platform-dynamic-page.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-feed-input.mjs +9 -9
- package/fesm2022/fundamental-ngx-platform-feed-input.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-form.mjs +853 -1636
- package/fesm2022/fundamental-ngx-platform-form.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-icon-tab-bar.mjs +532 -220
- package/fesm2022/fundamental-ngx-platform-icon-tab-bar.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-info-label.mjs +9 -7
- package/fesm2022/fundamental-ngx-platform-info-label.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-link.mjs +18 -26
- package/fesm2022/fundamental-ngx-platform-link.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-list.mjs +104 -143
- package/fesm2022/fundamental-ngx-platform-list.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-menu-button.mjs +16 -11
- package/fesm2022/fundamental-ngx-platform-menu-button.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-menu.mjs +16 -16
- package/fesm2022/fundamental-ngx-platform-menu.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-message-popover.mjs +71 -74
- package/fesm2022/fundamental-ngx-platform-message-popover.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-object-marker.mjs +13 -8
- package/fesm2022/fundamental-ngx-platform-object-marker.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-object-status.mjs +16 -11
- package/fesm2022/fundamental-ngx-platform-object-status.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-page-footer.mjs +10 -12
- package/fesm2022/fundamental-ngx-platform-page-footer.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-panel.mjs +19 -20
- package/fesm2022/fundamental-ngx-platform-panel.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-search-field.mjs +49 -77
- package/fesm2022/fundamental-ngx-platform-search-field.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-settings-generator.mjs +75 -72
- package/fesm2022/fundamental-ngx-platform-settings-generator.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-shared.mjs +162 -218
- package/fesm2022/fundamental-ngx-platform-shared.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-slider.mjs +12 -44
- package/fesm2022/fundamental-ngx-platform-slider.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-smart-filter-bar.mjs +144 -162
- package/fesm2022/fundamental-ngx-platform-smart-filter-bar.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-split-menu-button.mjs +20 -27
- package/fesm2022/fundamental-ngx-platform-split-menu-button.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-table-helpers.mjs +143 -148
- package/fesm2022/fundamental-ngx-platform-table-helpers.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-table.mjs +366 -291
- package/fesm2022/fundamental-ngx-platform-table.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-value-help-dialog.mjs +144 -53
- package/fesm2022/fundamental-ngx-platform-value-help-dialog.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-variant-management.mjs +63 -30
- package/fesm2022/fundamental-ngx-platform-variant-management.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-wizard-generator.mjs +82 -98
- package/fesm2022/fundamental-ngx-platform-wizard-generator.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform.mjs +4 -4
- package/form/checkbox/checkbox.component.d.ts +4 -6
- package/form/checkbox-group/checkbox-group.component.d.ts +3 -8
- package/form/combobox/combobox/combobox.component.d.ts +4 -12
- package/form/combobox/combobox-mobile/combobox/combobox-mobile.component.d.ts +5 -8
- package/form/combobox/commons/base-combobox.d.ts +4 -9
- package/form/date-picker/date-picker.component.d.ts +8 -11
- package/form/datetime-picker/datetime-picker.component.d.ts +9 -11
- package/form/form-generator/controls/dynamic-form-generator-checkbox/dynamic-form-generator-checkbox.component.d.ts +0 -2
- package/form/form-generator/controls/dynamic-form-generator-datepicker/dynamic-form-generator-datepicker.component.d.ts +0 -2
- package/form/form-generator/controls/dynamic-form-generator-editor/dynamic-form-generator-editor.component.d.ts +0 -2
- package/form/form-generator/controls/dynamic-form-generator-input/dynamic-form-generator-input.component.d.ts +0 -2
- package/form/form-generator/controls/dynamic-form-generator-multi-input/dynamic-form-generator-multi-input.component.d.ts +0 -2
- package/form/form-generator/controls/dynamic-form-generator-radio/dynamic-form-generator-radio.component.d.ts +0 -2
- package/form/form-generator/controls/dynamic-form-generator-select/dynamic-form-generator-select.component.d.ts +0 -2
- package/form/form-generator/controls/dynamic-form-generator-switch/dynamic-form-generator-switch.component.d.ts +0 -2
- package/form/form-generator/form-generator/form-generator.component.d.ts +3 -1
- package/form/form-generator/form-generator.service.d.ts +3 -7
- package/form/form-generator/interfaces/dynamic-form-item.d.ts +5 -5
- package/form/form-group/form-field/form-field.component.d.ts +16 -20
- package/form/form-group/form-group.component.d.ts +36 -35
- package/form/input/input.component.d.ts +3 -6
- package/form/input-group/addon-body.component.d.ts +0 -1
- package/form/input-group/input-group.component.d.ts +4 -5
- package/form/multi-combobox/commons/base-multi-combobox.d.ts +13 -16
- package/form/multi-combobox/multi-combobox/multi-combobox.component.d.ts +4 -12
- package/form/multi-combobox/multi-combobox-mobile/multi-combobox/multi-combobox-mobile.component.d.ts +6 -9
- package/form/multi-combobox/multi-combobox.interface.d.ts +3 -3
- package/form/multi-input/base-multi-input.d.ts +10 -15
- package/form/multi-input/multi-input-mobile/multi-input-mobile.component.d.ts +5 -8
- package/form/multi-input/multi-input.component.d.ts +7 -37
- package/form/radio-group/radio/radio.component.d.ts +4 -5
- package/form/radio-group/radio-group.component.d.ts +7 -11
- package/form/select/commons/base-select.d.ts +11 -18
- package/form/select/select/select.component.d.ts +2 -15
- package/form/step-input/base.step-input.d.ts +13 -14
- package/form/step-input/number/number-step-input.component.d.ts +2 -7
- package/form/step-input/step-input-action-button.d.ts +4 -7
- package/form/step-input/step-input-decrement.directive.d.ts +2 -5
- package/form/step-input/step-input-increment.directive.d.ts +2 -5
- package/form/switch/switch/switch.component.d.ts +5 -8
- package/form/text-area/text-area.component.d.ts +4 -5
- package/form/time-picker/time-picker.component.d.ts +4 -5
- package/fundamental-ngx-platform-v0.48.0.tgz +0 -0
- package/icon-tab-bar/components/icon-tab-bar-base.class.d.ts +19 -20
- package/icon-tab-bar/components/icon-tab-bar-icon-type/icon-tab-bar-icon-type.component.d.ts +2 -0
- package/icon-tab-bar/components/icon-tab-bar-tab/icon-tab-bar-tab.component.d.ts +45 -0
- package/icon-tab-bar/components/icon-tab-bar-text-type/icon-tab-bar-text-type.component.d.ts +1 -3
- package/icon-tab-bar/directives/dnd/icon-bar-dnd-container.directive.d.ts +5 -8
- package/icon-tab-bar/directives/dnd/icon-bar-dnd-item.directive.d.ts +1 -1
- package/icon-tab-bar/directives/dnd/icon-bar-dnd-list.directive.d.ts +1 -1
- package/icon-tab-bar/directives/icon-tab-bar-free-content.directive.d.ts +5 -0
- package/icon-tab-bar/icon-tab-bar.component.d.ts +82 -8
- package/icon-tab-bar/icon-tab-bar.module.d.ts +7 -1
- package/icon-tab-bar/index.d.ts +2 -0
- package/icon-tab-bar/interfaces/tab-config.interface.d.ts +13 -5
- package/info-label/info-label.component.d.ts +2 -2
- package/link/link.component.d.ts +4 -7
- package/list/base-list-item.d.ts +4 -6
- package/list/list.component.d.ts +6 -15
- package/menu-button/menu-button.component.d.ts +7 -4
- package/message-popover/components/message-popover-form-wrapper/message-popover-form-wrapper.component.d.ts +2 -4
- package/message-popover/message-popover.component.d.ts +13 -20
- package/message-popover/models/message-popover-wrapper.interface.d.ts +2 -2
- package/object-marker/object-marker.component.d.ts +4 -1
- package/object-status/object-status.component.d.ts +4 -1
- package/package.json +4 -4
- package/page-footer/page-footer.component.d.ts +2 -4
- package/panel/panel.component.d.ts +2 -3
- package/search-field/search-field-mobile/search-field/search-field-mobile.component.d.ts +7 -10
- package/search-field/search-field.component.d.ts +10 -19
- package/settings-generator/models/settings.model.d.ts +7 -6
- package/settings-generator/settings-generator-content/settings-generator-content.component.d.ts +31 -12
- package/settings-generator/settings-generator-content/settings-generator-section/settings-generator-section.component.d.ts +0 -2
- package/settings-generator/settings-generator.component.d.ts +3 -3
- package/settings-generator/settings-generator.service.d.ts +1 -1
- package/shared/base.d.ts +11 -4
- package/shared/form/base.input.d.ts +24 -16
- package/shared/form/collection-base.input.d.ts +1 -9
- package/shared/form/inline-layout-collection-base.input.d.ts +5 -12
- package/slider/slider.component.d.ts +3 -6
- package/smart-filter-bar/components/smart-filter-bar-condition-field/base-smart-filter-bar-condition-field.d.ts +3 -5
- package/smart-filter-bar/components/smart-filter-bar-condition-field/smart-filter-bar-condition-field.component.d.ts +0 -5
- package/smart-filter-bar/components/smart-filter-bar-settings-dialog/smart-filter-bar-settings-dialog.component.d.ts +4 -8
- package/smart-filter-bar/directives/smart-filter-bar-field-definition.directive.d.ts +8 -17
- package/smart-filter-bar/directives/smart-filter-bar-subject.directive.d.ts +2 -0
- package/smart-filter-bar/smart-filter-bar.component.d.ts +28 -22
- package/split-menu-button/split-menu-button.component.d.ts +11 -14
- package/table/components/reset-button/reset-button.component.d.ts +2 -3
- package/table/components/table-cell-header-popover/table-cell-header-popover.component.d.ts +4 -3
- package/table/components/table-column-resizer/table-column-resizer.component.d.ts +4 -5
- package/table/components/table-group-row/table-group-row.component.d.ts +2 -5
- package/table/components/table-header-cell-content/table-header-cell-content.component.d.ts +11 -6
- package/table/components/table-header-row/table-header-row.component.d.ts +1 -3
- package/table/components/table-p13-dialog/columns/columns.component.d.ts +2 -4
- package/table/components/table-p13-dialog/filtering/filtering.component.d.ts +1 -4
- package/table/components/table-p13-dialog/grouping/grouping.component.d.ts +1 -4
- package/table/components/table-p13-dialog/sorting/sorting.component.d.ts +1 -4
- package/table/components/table-row/table-row.component.d.ts +2 -2
- package/table/components/table-toolbar/table-toolbar.component.d.ts +24 -8
- package/table/components/table-view-settings-dialog/filtering/filters.component.d.ts +1 -4
- package/table/components/table-view-settings-dialog/grouping/grouping.component.d.ts +1 -4
- package/table/components/table-view-settings-dialog/sorting/sorting.component.d.ts +1 -4
- package/table/table.component.d.ts +29 -19
- package/table-helpers/directives/table-cell-header-popover.directive.d.ts +2 -3
- package/table-helpers/directives/table-cell-resizable.directive.d.ts +1 -3
- package/table-helpers/directives/table-data-source.directive.d.ts +1 -1
- package/table-helpers/services/table-column-resize.service.d.ts +4 -2
- package/table-helpers/services/table-responsive.service.d.ts +3 -5
- package/table-helpers/services/table.service.d.ts +12 -10
- package/table-helpers/table.d.ts +1 -0
- package/value-help-dialog/components/select-tab/select-tab.component.d.ts +9 -2
- package/value-help-dialog/components/value-help-dialog-filter/value-help-dialog-filter.component.d.ts +5 -1
- package/value-help-dialog/directives/value-help-column-def.directive.d.ts +17 -0
- package/value-help-dialog/directives/value-help-filter-def.directive.d.ts +15 -0
- package/value-help-dialog/index.d.ts +2 -0
- package/value-help-dialog/models/vhd-component.model.d.ts +5 -0
- package/value-help-dialog/models/vhd-filter.model.d.ts +3 -0
- package/value-help-dialog/value-help-dialog/value-help-dialog.component.d.ts +14 -7
- package/variant-management/variant-management.component.d.ts +19 -6
- package/wizard-generator/base-wizard-generator.d.ts +9 -12
- package/wizard-generator/components/dialog-wizard-generator/dialog-wizard-generator.component.d.ts +2 -3
- package/wizard-generator/components/wizard-body/wizard-body.component.d.ts +3 -7
- package/wizard-generator/components/wizard-generator/wizard-generator.component.d.ts +1 -4
- package/wizard-generator/components/wizard-generator-step/wizard-generator-step.component.d.ts +1 -1
- package/dynamic-page/dynamic-page.service.d.ts +0 -35
- package/esm2022/dynamic-page/dynamic-page.service.mjs +0 -58
- package/esm2022/search-field/search-field-mobile/search-field-mobile.module.mjs +0 -16
- package/fundamental-ngx-platform-v0.48.0-rc.9.tgz +0 -0
- package/search-field/search-field-mobile/search-field-mobile.module.d.ts +0 -7
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fundamental-ngx-platform-menu.mjs","sources":["../../../../libs/platform/menu/menu-item.component.ts","../../../../libs/platform/menu/menu-item.component.html","../../../../libs/platform/menu/menu.component.ts","../../../../libs/platform/menu/menu.component.html","../../../../libs/platform/menu/menu-trigger.directive.ts","../../../../libs/platform/menu/menu.module.ts","../../../../libs/platform/menu/fundamental-ngx-platform-menu.ts"],"sourcesContent":["import { FocusableOption } from '@angular/cdk/a11y';\nimport { ENTER, SPACE } from '@angular/cdk/keycodes';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ElementRef,\n EventEmitter,\n HostBinding,\n HostListener,\n Input,\n OnDestroy,\n Output,\n ViewEncapsulation\n} from '@angular/core';\nimport { Subject } from 'rxjs';\n\nimport { NgTemplateOutlet } from '@angular/common';\nimport { KeyUtil } from '@fundamental-ngx/cdk/utils';\nimport { MenuInteractiveComponent } from '@fundamental-ngx/core/menu';\n\n/**\n * @deprecated\n */\n@Component({\n selector: 'fdp-menu-item',\n templateUrl: './menu-item.component.html',\n styleUrl: './menu-item.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n class: 'fd-menu__item',\n tabindex: '-1'\n },\n standalone: true,\n imports: [NgTemplateOutlet]\n})\nexport class MenuItemComponent implements OnDestroy, FocusableOption {\n /** Set the Menu Item as disabled/enabled */\n @Input()\n disabled = false;\n\n /** Menu direction */\n @Input()\n cascadeDirection: 'right' | 'left' = 'right';\n\n /** Event emitted when item is selected. */\n @Output()\n itemSelect: EventEmitter<void> = new EventEmitter<void>();\n\n /** Track when menu item is hovered over */\n hovered: Subject<MenuItemComponent> = new Subject<MenuItemComponent>();\n\n /** Sets whether this item is a trigger for sub-menu. */\n @HostBinding('class.trigger')\n isTrigger = false;\n\n /** @hidden */\n _isSelected = false;\n /**\n * @hidden\n * set CSS class 'is-selected' if menu-item opens a sub-menu.\n */\n set isSelected(selected: boolean) {\n if (this._isSelected !== selected) {\n this._isSelected = selected;\n this._cdr.markForCheck();\n }\n }\n /** @hidden */\n get isSelected(): boolean {\n return this._isSelected;\n }\n\n /** @hidden */\n @ContentChild(MenuInteractiveComponent)\n _fdMenuInteractiveChild: MenuInteractiveComponent;\n\n /** @hidden */\n constructor(\n private _elementRef: ElementRef,\n private _cdr: ChangeDetectorRef\n ) {}\n\n /** @hidden */\n ngOnDestroy(): void {\n this.hovered.complete();\n }\n\n /** Focus on option */\n focus(): void {\n const interactive = this._elementRef.nativeElement?.firstElementChild as HTMLElement;\n interactive?.focus();\n }\n\n /**\n * @hidden\n * Handle selection of item via keyboard 'Enter'\n */\n @HostListener('keydown', ['$event'])\n private _onItemKeydown(event: KeyboardEvent): void {\n if (event && KeyUtil.isKeyCode(event, [SPACE, ENTER]) && !this.disabled) {\n this.itemSelect.emit();\n } else if (this.disabled) {\n event.stopPropagation();\n }\n }\n\n /**\n * @hidden\n * Handle click of item via mouse click.\n */\n @HostListener('click', ['$event'])\n private _onItemClick(event: MouseEvent): void {\n if (!this.disabled) {\n this.itemSelect.emit();\n } else {\n event.stopPropagation();\n }\n }\n\n /**\n * @hidden\n * Handle mouse enter event.\n */\n @HostListener('mouseenter')\n private _onMouseEnter(): void {\n this.hovered.next(this);\n }\n}\n","@if (!_fdMenuInteractiveChild) {\n <div\n class=\"fd-menu__link\"\n [class.is-disabled]=\"disabled\"\n [attr.disabled]=\"disabled\"\n [class.is-selected]=\"isSelected\"\n tabindex=\"0\"\n role=\"menuitem\"\n >\n <span class=\"fd-menu__title\">\n <ng-template [ngTemplateOutlet]=\"projectedContent\"></ng-template>\n </span>\n @if (isTrigger) {\n <span class=\"fd-menu__addon-after fd-menu__addon-after--submenu\"></span>\n }\n </div>\n} @else {\n <ng-template [ngTemplateOutlet]=\"projectedContent\"></ng-template>\n}\n<ng-template #projectedContent>\n <ng-content></ng-content>\n</ng-template>\n","import { FocusKeyManager, FocusOrigin } from '@angular/cdk/a11y';\nimport { ENTER, ESCAPE, LEFT_ARROW, RIGHT_ARROW, SPACE } from '@angular/cdk/keycodes';\nimport {\n AfterContentInit,\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n EventEmitter,\n Input,\n OnDestroy,\n Optional,\n Output,\n QueryList,\n TemplateRef,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { Observable, Subscription, merge } from 'rxjs';\nimport { startWith, switchMap } from 'rxjs/operators';\n\nimport { AsyncPipe } from '@angular/common';\nimport { KeyUtil, RtlService, warnOnce } from '@fundamental-ngx/cdk/utils';\nimport { ContentDensityObserver, contentDensityObserverProviders } from '@fundamental-ngx/core/content-density';\nimport { MenuItemComponent } from './menu-item.component';\n\nexport type MenuCloseMethod = void | 'mouse' | 'keyboard' | 'tab' | 'arrow';\n\n/**\n * Variables for generating menu IDs.\n * Needed for establishing 'aria-control' between trigger and menu.\n */\nconst MENU_ID_ROOT = 'fdp-menu-';\nlet menuIdCounter = 0;\n\n/**\n * @deprecated\n * Menu component is deprecated. Use `fd-menu` from `@fundamental-ngx/core/menu` instead.\n */\n@Component({\n selector: 'fdp-menu',\n templateUrl: './menu.component.html',\n styleUrl: './menu.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [contentDensityObserverProviders()],\n standalone: true,\n imports: [AsyncPipe]\n})\nexport class MenuComponent implements AfterViewInit, AfterContentInit, OnDestroy {\n /** Menu ID */\n @Input()\n set id(id: string) {\n this._id = id;\n\n // Use 'id' property to create menu ID for aria-control purposes.\n this.menuId = MENU_ID_ROOT + id;\n }\n get id(): string {\n return this._id;\n }\n\n /**\n * Whether menu can be opened using arrow keys\n * @default true\n */\n @Input()\n openByArrowKeys = true;\n\n /**\n * Horizontal position of menu in relation to trigger element.\n */\n @Input()\n xPosition: 'before' | 'after' = 'after';\n\n /**\n * The templateRef needs to be available to the menu trigger for\n * opening in a CDK overlay.\n */\n @ViewChild('menuTemplate', { static: false })\n templateRef: TemplateRef<any>;\n\n /**\n * Child items of the menu.\n */\n @ContentChildren(MenuItemComponent)\n menuItems: QueryList<MenuItemComponent>;\n\n /**\n * Emitted event when menu closes\n */\n @Output()\n // eslint-disable-next-line @angular-eslint/no-output-native\n close: EventEmitter<MenuCloseMethod> = new EventEmitter();\n\n /** Menu direction */\n direction: 'ltr' | 'rtl' = 'ltr';\n\n /** @hidden */\n menuId: string;\n\n /** @hidden */\n private _id: string;\n\n /** @hidden */\n private _keyManager: FocusKeyManager<MenuItemComponent>;\n\n /** @hidden */\n private _tabSubscription = Subscription.EMPTY;\n\n /** @hidden */\n private _dirChangeSubscription = Subscription.EMPTY;\n\n /** @hidden */\n constructor(\n @Optional() private _rtl: RtlService,\n readonly contentDensityObserver: ContentDensityObserver\n ) {\n if (this._rtl) {\n this._dirChangeSubscription = this._rtl.rtl.subscribe((value: boolean) => {\n this.direction = value ? 'rtl' : 'ltr';\n this._setMenuItemCascadeDirection();\n });\n }\n warnOnce(`MenuComponent is deprecated. Use 'fd-menu' from '@fundamental-ngx/core/menu' instead.`);\n }\n\n /** @hidden */\n ngAfterViewInit(): void {\n if (!this.menuId) {\n this.menuId = MENU_ID_ROOT + menuIdCounter++;\n }\n if (this.menuItems) {\n this._keyManager = new FocusKeyManager(this.menuItems);\n this._tabSubscription = this._keyManager.tabOut.subscribe(() => {\n this.close.emit('keyboard');\n });\n }\n }\n\n /** @hidden */\n ngAfterContentInit(): void {\n this._setMenuItemCascadeDirection();\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this.close.complete();\n this._tabSubscription.unsubscribe();\n this._dirChangeSubscription.unsubscribe();\n this._keyManager?.destroy();\n }\n\n /**\n * Set focus on first item\n * @param origin FocusOrigin\n */\n focusOnFirstItem(origin: FocusOrigin = 'program'): void {\n this._keyManager.setFocusOrigin(origin).setFirstItemActive();\n }\n\n /**\n * Close menu\n * @param method menu close method\n */\n closeMenu(method: MenuCloseMethod): void {\n this.close.emit(method);\n }\n\n /**\n * @hidden\n * Menu keydown handler\n */\n _onKeydown(event: KeyboardEvent): void {\n if (KeyUtil.isKeyCode(event, LEFT_ARROW)) {\n if (this._cascadesRight()) {\n this.close.emit('arrow');\n }\n } else if (KeyUtil.isKeyCode(event, RIGHT_ARROW)) {\n if (this._cascadesLeft()) {\n this.close.emit('arrow');\n }\n } else if (KeyUtil.isKeyCode(event, ESCAPE)) {\n this.close.emit('keyboard');\n } else if (KeyUtil.isKeyCode(event, [ENTER, SPACE])) {\n event.preventDefault();\n this.close.emit('keyboard');\n } else {\n this._keyManager.onKeydown(event);\n }\n }\n\n /**\n * @hidden\n * Menu click handler\n */\n _onClick(): void {\n this.close.emit('mouse');\n }\n\n /**\n * @hidden\n * Get stream of menu items hover change\n */\n _menuItemHoverChange(): Observable<MenuItemComponent> {\n const menuItems = this.menuItems.changes as Observable<QueryList<MenuItemComponent>>;\n return menuItems.pipe(\n startWith(this.menuItems),\n switchMap((items) => merge(...items.map((item: MenuItemComponent) => item.hovered)))\n ) as Observable<MenuItemComponent>;\n }\n\n /** @hidden */\n _setMenuItemCascadeDirection(): void {\n if (!this.menuItems) {\n return;\n }\n // set cascade direction\n this.menuItems.forEach((item) => {\n item.cascadeDirection = this._cascadesLeft() ? 'left' : 'right';\n });\n }\n\n /**\n * @hidden\n * Check if cascade menu should appear from right\n */\n _cascadesRight(): boolean {\n return (\n (this.xPosition === 'after' && this.direction === 'ltr') ||\n (this.xPosition === 'before' && this.direction === 'rtl')\n );\n }\n\n /**\n * @hidden\n * Check if cascade menu should appear from left\n */\n _cascadesLeft(): boolean {\n return (\n (this.xPosition === 'after' && this.direction === 'rtl') ||\n (this.xPosition === 'before' && this.direction === 'ltr')\n );\n }\n}\n","<ng-template #menuTemplate>\n <nav\n [attr.id]=\"menuId\"\n [attr.dir]=\"direction\"\n class=\"fd-menu\"\n [class.is-compact]=\"contentDensityObserver.isCompact$ | async\"\n tabindex=\"0\"\n role=\"menu\"\n (click)=\"_onClick()\"\n (keydown)=\"_onKeydown($event)\"\n >\n <div class=\"fd-menu__list\">\n <ng-content></ng-content>\n </div>\n </nav>\n</ng-template>\n","import { ENTER, LEFT_ARROW, RIGHT_ARROW, SPACE } from '@angular/cdk/keycodes';\nimport { ConnectedPosition, Overlay, OverlayConfig, OverlayRef } from '@angular/cdk/overlay';\nimport { TemplatePortal } from '@angular/cdk/portal';\nimport {\n AfterContentInit,\n Directive,\n ElementRef,\n HostListener,\n Input,\n OnDestroy,\n Optional,\n Self,\n ViewContainerRef\n} from '@angular/core';\nimport { Subscription, fromEvent } from 'rxjs';\nimport { filter, take } from 'rxjs/operators';\n\nimport { KeyUtil } from '@fundamental-ngx/cdk/utils';\nimport { MenuItemComponent } from './menu-item.component';\nimport { MenuCloseMethod, MenuComponent } from './menu.component';\n\n@Directive({\n selector: `[fdpMenuTriggerFor]`,\n host: {\n 'aria-haspopup': 'menu',\n '[attr.aria-expanded]': 'isMenuOpen || null',\n '[attr.aria-controls]': 'isMenuOpen ? menu.menuId : null'\n },\n standalone: true\n})\nexport class MenuTriggerDirective implements OnDestroy, AfterContentInit {\n /** Set Menu Component for which this trigger will be associated. */\n @Input('fdpMenuTriggerFor')\n set menu(menu: MenuComponent) {\n if (this._menu === menu) {\n return;\n }\n this._menu = menu;\n this._menuCloseSubscription.unsubscribe();\n }\n get menu(): MenuComponent {\n return this._menu;\n }\n\n /** @hidden */\n private _menu: MenuComponent;\n /** @hidden */\n private _overlayRef: OverlayRef | null;\n /** @hidden */\n private _portal: TemplatePortal;\n /** @hidden */\n private _isMenuOpen = false;\n /** @hidden */\n private _outsideClickSubscription: Subscription = Subscription.EMPTY;\n /** @hidden */\n private _menuCloseSubscription: Subscription = Subscription.EMPTY;\n /** @hidden */\n private _parentMenuCloseSubscription: Subscription = Subscription.EMPTY;\n /** @hidden */\n private _menuItemHoverChangeSubscription: Subscription = Subscription.EMPTY;\n\n /** @hidden */\n constructor(\n private _element: ElementRef<HTMLElement>,\n private _overlay: Overlay,\n private _viewContainerRef: ViewContainerRef,\n @Optional() @Self() private _menuItem: MenuItemComponent,\n @Optional() private _parentMenu: MenuComponent\n ) {}\n\n /** @hidden */\n ngAfterContentInit(): void {\n if (this._isMenuItem()) {\n // mark menu item as trigger\n this._menuItem.isTrigger = true;\n\n // subscribe to changes of menu item hover state\n this._menuItemHoverChangeSubscription = this._parentMenu._menuItemHoverChange().subscribe((item) => {\n if (item === this._menuItem) {\n if (!this.isMenuOpen) {\n this._menuItem.isSelected = true;\n this.openMenu();\n }\n } else {\n this._menuItem.isSelected = false;\n this.closeMenu();\n }\n });\n }\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n if (this._overlayRef) {\n this._overlayRef.dispose();\n this._overlayRef = null;\n }\n this._outsideClickSubscription.unsubscribe();\n this._menuCloseSubscription.unsubscribe();\n this._parentMenuCloseSubscription.unsubscribe();\n this._menuItemHoverChangeSubscription.unsubscribe();\n }\n\n /** Flag to determine if associated menu is open. */\n get isMenuOpen(): boolean {\n return this._isMenuOpen;\n }\n\n /**\n * @hidden\n * Handle click on trigger element.\n */\n @HostListener('click', ['$event'])\n _onTriggerClick(event: MouseEvent): void {\n // Need to interupt default menu behavior of closing the menu\n if (this._isMenuItem()) {\n event.preventDefault();\n event.stopPropagation();\n }\n // filter out clicks initiated by keyboard enter.\n // For IE 11, MouseEvent fires a MSPointerEvent object instead of MouseEvent.\n if (event.detail > 0 || (event instanceof PointerEvent && event.detail === 0)) {\n this.toggleMenu();\n }\n }\n\n /**\n * @hidden\n * Handled keypress which focus is on trigger element.\n */\n @HostListener('keydown', ['$event'])\n _onTriggerKeydown(event: KeyboardEvent): void {\n if (KeyUtil.isKeyCode(event, [SPACE, ENTER])) {\n if (KeyUtil.isKeyCode(event, [SPACE])) {\n event.preventDefault();\n }\n\n // Need to interupt default menu item behavior of closing the menu\n if (this._isMenuItem()) {\n event.preventDefault();\n event.stopPropagation();\n }\n if (this._menuItem) {\n this._menuItem.isSelected = true;\n }\n this.openMenu();\n } else if (KeyUtil.isKeyCode(event, [RIGHT_ARROW])) {\n if (this._menu._cascadesRight() && this._menu.openByArrowKeys) {\n if (this._menuItem) {\n this._menuItem.isSelected = true;\n }\n this.openMenu();\n }\n } else if (KeyUtil.isKeyCode(event, [LEFT_ARROW])) {\n if (this._menu._cascadesLeft() && this._menu.openByArrowKeys) {\n if (this._menuItem) {\n this._menuItem.isSelected = true;\n }\n this.openMenu();\n }\n }\n }\n\n /**\n * @hidden\n * Toggle display of associated menu.\n */\n toggleMenu(): void {\n /**\n * Need to add delay here to ensure that any \"closeMenu\" operation which\n * has been invoked within an \"outsideClickSubscription\" gets resolved\n * before \"openMenu\" is called. This can happen when there are multiple\n * triggers for the same menu.\n */\n setTimeout(() => {\n this._isMenuOpen ? this._destroyMenu() : this.openMenu();\n }, 0);\n }\n\n /**\n * @hidden\n * Open associated menu.\n */\n openMenu(): void {\n // create overlay\n const overlayConfig = this._getOverlayConfig();\n this._overlayRef = this._overlay.create(overlayConfig);\n\n // get portal and attach to overlay\n this._portal = new TemplatePortal(this._menu.templateRef, this._viewContainerRef);\n this._overlayRef.attach(this._portal);\n\n // add subscription to capture clicks outside menu\n if (this._outsideClickSubscription) {\n this._outsideClickSubscription.unsubscribe();\n }\n this._outsideClickSubscription = fromEvent<MouseEvent>(document, 'click')\n .pipe(\n filter((event) => {\n const target = event.target as HTMLElement;\n return (\n !this._element.nativeElement.contains(target) &&\n !!this._overlayRef &&\n !this._overlayRef.overlayElement.contains(target) &&\n this.isMenuOpen\n );\n }),\n take(1)\n )\n .subscribe(() => {\n this.closeMenu();\n });\n\n // add subscription to menu 'close' event\n if (this._menuCloseSubscription) {\n this._menuCloseSubscription.unsubscribe();\n }\n this._menuCloseSubscription = this._menu.close.subscribe((method: MenuCloseMethod) => {\n this._destroyMenu();\n // Need to close parent menu if closing of menu was done by terminating action\n if (this._parentMenu && (method === 'keyboard' || method === 'mouse')) {\n this._parentMenu.closeMenu(method);\n }\n });\n\n // add subscription to parent menu 'close' event\n if (this._parentMenu) {\n if (this._parentMenuCloseSubscription) {\n this._parentMenuCloseSubscription.unsubscribe();\n }\n this._parentMenuCloseSubscription = this._parentMenu.close.subscribe(() => {\n this.closeMenu();\n });\n }\n\n // set focus to menu\n this._menu.focusOnFirstItem();\n\n this._isMenuOpen = true;\n }\n\n /**\n * @hidden\n * Close associated menu.\n */\n closeMenu(): void {\n this._menu.closeMenu();\n }\n\n /**\n * @hidden\n * destroy associated menu.\n */\n private _destroyMenu(): void {\n if (this._menuItem) {\n this._menuItem.isSelected = false;\n }\n if (!this._overlayRef || !this._isMenuOpen) {\n return;\n }\n if (this._menuItem) {\n this._menuItem.focus();\n } else {\n this._element.nativeElement.focus();\n }\n this._overlayRef.detach();\n this._isMenuOpen = false;\n }\n\n /** @hidden */\n private _getOverlayConfig(): OverlayConfig {\n const positions = this._getPositions();\n const positionStrategy = this._overlay\n .position()\n .flexibleConnectedTo(this._element)\n .withLockedPosition()\n .withPositions(positions);\n\n const scrollStrategy = this._overlay.scrollStrategies.reposition();\n\n const overlayConfig = new OverlayConfig({\n positionStrategy,\n scrollStrategy,\n backdropClass: 'cdk-overlay-transparent-backdrop'\n });\n return overlayConfig;\n }\n\n /** @hidden */\n private _getPositions(): ConnectedPosition[] {\n let positions: ConnectedPosition[] = [];\n const offsetYPosition = 0;\n const offsetXPosition = 0;\n const subMenuXPadding = 4; // horizontal padding of 0.25rem(4px) is needed for sub-menu\n const subMenuYPadding = 4; // vertical padding of 0.25rem(4px) is needed for sub-menu\n\n if (this._isMenuItem()) {\n if (this._menu._cascadesLeft()) {\n positions = [\n {\n originX: 'start',\n originY: 'top',\n overlayX: 'end',\n overlayY: 'top',\n offsetX: subMenuXPadding,\n offsetY: subMenuYPadding\n },\n {\n originX: 'start',\n originY: 'bottom',\n overlayX: 'end',\n overlayY: 'bottom',\n offsetX: subMenuXPadding,\n offsetY: -subMenuYPadding\n }\n ];\n } else {\n positions = [\n {\n originX: 'end',\n originY: 'top',\n overlayX: 'start',\n overlayY: 'top',\n offsetX: -subMenuXPadding,\n offsetY: subMenuYPadding\n },\n {\n originX: 'end',\n originY: 'bottom',\n overlayX: 'start',\n overlayY: 'bottom',\n offsetX: -subMenuXPadding,\n offsetY: -subMenuYPadding\n }\n ];\n }\n } else {\n if (this._menu._cascadesLeft()) {\n positions = [\n {\n originX: 'end',\n originY: 'bottom',\n overlayX: 'end',\n overlayY: 'top',\n offsetY: offsetYPosition,\n offsetX: offsetXPosition\n },\n {\n originX: 'end',\n originY: 'top',\n overlayX: 'end',\n overlayY: 'bottom',\n offsetY: -offsetYPosition,\n offsetX: offsetXPosition\n }\n ];\n } else {\n positions = [\n {\n originX: 'start',\n originY: 'bottom',\n overlayX: 'start',\n overlayY: 'top',\n offsetY: offsetYPosition,\n offsetX: -offsetXPosition\n },\n {\n originX: 'start',\n originY: 'top',\n overlayX: 'start',\n overlayY: 'bottom',\n offsetY: -offsetYPosition,\n offsetX: -offsetXPosition\n }\n ];\n }\n }\n\n return positions;\n }\n\n /** @hidden */\n private _isMenuItem(): boolean {\n return !!(this._parentMenu && this._menuItem);\n }\n}\n","import { NgModule } from '@angular/core';\n\nimport { ContentDensityModule } from '@fundamental-ngx/core/content-density';\nimport { MenuItemComponent } from './menu-item.component';\nimport { MenuTriggerDirective } from './menu-trigger.directive';\nimport { MenuComponent } from './menu.component';\n\nconst components = [MenuComponent, MenuItemComponent, MenuTriggerDirective, ContentDensityModule];\n\n@NgModule({\n imports: [...components],\n exports: [...components]\n})\nexport class PlatformMenuModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2.MenuItemComponent","i3.MenuComponent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"fundamental-ngx-platform-menu.mjs","sources":["../../../../libs/platform/menu/menu-item.component.ts","../../../../libs/platform/menu/menu-item.component.html","../../../../libs/platform/menu/menu.component.ts","../../../../libs/platform/menu/menu.component.html","../../../../libs/platform/menu/menu-trigger.directive.ts","../../../../libs/platform/menu/menu.module.ts","../../../../libs/platform/menu/fundamental-ngx-platform-menu.ts"],"sourcesContent":["import { FocusableOption } from '@angular/cdk/a11y';\nimport { ENTER, SPACE } from '@angular/cdk/keycodes';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ElementRef,\n EventEmitter,\n HostBinding,\n HostListener,\n Input,\n OnDestroy,\n Output,\n ViewEncapsulation\n} from '@angular/core';\nimport { Subject } from 'rxjs';\n\nimport { NgTemplateOutlet } from '@angular/common';\nimport { KeyUtil } from '@fundamental-ngx/cdk/utils';\nimport { MenuInteractiveComponent } from '@fundamental-ngx/core/menu';\n\n/**\n * @deprecated\n */\n@Component({\n selector: 'fdp-menu-item',\n templateUrl: './menu-item.component.html',\n styleUrl: './menu-item.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n class: 'fd-menu__item',\n tabindex: '-1'\n },\n standalone: true,\n imports: [NgTemplateOutlet]\n})\nexport class MenuItemComponent implements OnDestroy, FocusableOption {\n /** Set the Menu Item as disabled/enabled */\n @Input()\n disabled = false;\n\n /** Menu direction */\n @Input()\n cascadeDirection: 'right' | 'left' = 'right';\n\n /** Event emitted when item is selected. */\n @Output()\n itemSelect: EventEmitter<void> = new EventEmitter<void>();\n\n /** Track when menu item is hovered over */\n hovered: Subject<MenuItemComponent> = new Subject<MenuItemComponent>();\n\n /** Sets whether this item is a trigger for sub-menu. */\n @HostBinding('class.trigger')\n isTrigger = false;\n\n /** @hidden */\n _isSelected = false;\n /**\n * @hidden\n * set CSS class 'is-selected' if menu-item opens a sub-menu.\n */\n set isSelected(selected: boolean) {\n if (this._isSelected !== selected) {\n this._isSelected = selected;\n this._cdr.markForCheck();\n }\n }\n /** @hidden */\n get isSelected(): boolean {\n return this._isSelected;\n }\n\n /** @hidden */\n @ContentChild(MenuInteractiveComponent)\n _fdMenuInteractiveChild: MenuInteractiveComponent;\n\n /** @hidden */\n constructor(\n private _elementRef: ElementRef,\n private _cdr: ChangeDetectorRef\n ) {}\n\n /** @hidden */\n ngOnDestroy(): void {\n this.hovered.complete();\n }\n\n /** Focus on option */\n focus(): void {\n const interactive = this._elementRef.nativeElement?.firstElementChild as HTMLElement;\n interactive?.focus();\n }\n\n /**\n * @hidden\n * Handle selection of item via keyboard 'Enter'\n */\n @HostListener('keydown', ['$event'])\n private _onItemKeydown(event: KeyboardEvent): void {\n if (event && KeyUtil.isKeyCode(event, [SPACE, ENTER]) && !this.disabled) {\n this.itemSelect.emit();\n } else if (this.disabled) {\n event.stopPropagation();\n }\n }\n\n /**\n * @hidden\n * Handle click of item via mouse click.\n */\n @HostListener('click', ['$event'])\n private _onItemClick(event: MouseEvent): void {\n if (!this.disabled) {\n this.itemSelect.emit();\n } else {\n event.stopPropagation();\n }\n }\n\n /**\n * @hidden\n * Handle mouse enter event.\n */\n @HostListener('mouseenter')\n private _onMouseEnter(): void {\n this.hovered.next(this);\n }\n}\n","@if (!_fdMenuInteractiveChild) {\n <div\n class=\"fd-menu__link\"\n [class.is-disabled]=\"disabled\"\n [attr.disabled]=\"disabled\"\n [class.is-selected]=\"isSelected\"\n tabindex=\"0\"\n role=\"menuitem\"\n >\n <span class=\"fd-menu__title\">\n <ng-template [ngTemplateOutlet]=\"projectedContent\"></ng-template>\n </span>\n @if (isTrigger) {\n <span class=\"fd-menu__addon-after fd-menu__addon-after--submenu\"></span>\n }\n </div>\n} @else {\n <ng-template [ngTemplateOutlet]=\"projectedContent\"></ng-template>\n}\n<ng-template #projectedContent>\n <ng-content></ng-content>\n</ng-template>\n","import { FocusKeyManager, FocusOrigin } from '@angular/cdk/a11y';\nimport { ENTER, ESCAPE, LEFT_ARROW, RIGHT_ARROW, SPACE } from '@angular/cdk/keycodes';\nimport {\n AfterContentInit,\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n EventEmitter,\n Input,\n OnDestroy,\n Optional,\n Output,\n QueryList,\n TemplateRef,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { Observable, Subscription, merge } from 'rxjs';\nimport { startWith, switchMap } from 'rxjs/operators';\n\nimport { KeyUtil, RtlService, warnOnce } from '@fundamental-ngx/cdk/utils';\nimport { ContentDensityObserver, contentDensityObserverProviders } from '@fundamental-ngx/core/content-density';\nimport { MenuItemComponent } from './menu-item.component';\n\nexport type MenuCloseMethod = void | 'mouse' | 'keyboard' | 'tab' | 'arrow';\n\n/**\n * Variables for generating menu IDs.\n * Needed for establishing 'aria-control' between trigger and menu.\n */\nconst MENU_ID_ROOT = 'fdp-menu-';\nlet menuIdCounter = 0;\n\n/**\n * @deprecated\n * Menu component is deprecated. Use `fd-menu` from `@fundamental-ngx/core/menu` instead.\n */\n@Component({\n selector: 'fdp-menu',\n templateUrl: './menu.component.html',\n styleUrl: './menu.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [contentDensityObserverProviders()],\n standalone: true\n})\nexport class MenuComponent implements AfterViewInit, AfterContentInit, OnDestroy {\n /** Menu ID */\n @Input()\n set id(id: string) {\n this._id = id;\n\n // Use 'id' property to create menu ID for aria-control purposes.\n this.menuId = MENU_ID_ROOT + id;\n }\n get id(): string {\n return this._id;\n }\n\n /**\n * Whether menu can be opened using arrow keys\n * @default true\n */\n @Input()\n openByArrowKeys = true;\n\n /**\n * Horizontal position of menu in relation to trigger element.\n */\n @Input()\n xPosition: 'before' | 'after' = 'after';\n\n /**\n * The templateRef needs to be available to the menu trigger for\n * opening in a CDK overlay.\n */\n @ViewChild('menuTemplate', { static: false })\n templateRef: TemplateRef<any>;\n\n /**\n * Child items of the menu.\n */\n @ContentChildren(MenuItemComponent)\n menuItems: QueryList<MenuItemComponent>;\n\n /**\n * Emitted event when menu closes\n */\n @Output()\n // eslint-disable-next-line @angular-eslint/no-output-native\n close: EventEmitter<MenuCloseMethod> = new EventEmitter();\n\n /** Menu direction */\n direction: 'ltr' | 'rtl' = 'ltr';\n\n /** @hidden */\n menuId: string;\n\n /** @hidden */\n private _id: string;\n\n /** @hidden */\n private _keyManager: FocusKeyManager<MenuItemComponent>;\n\n /** @hidden */\n private _tabSubscription = Subscription.EMPTY;\n\n /** @hidden */\n private _dirChangeSubscription = Subscription.EMPTY;\n\n /** @hidden */\n constructor(\n @Optional() private _rtl: RtlService,\n readonly contentDensityObserver: ContentDensityObserver\n ) {\n if (this._rtl) {\n this._dirChangeSubscription = this._rtl.rtl.subscribe((value: boolean) => {\n this.direction = value ? 'rtl' : 'ltr';\n this._setMenuItemCascadeDirection();\n });\n }\n warnOnce(`MenuComponent is deprecated. Use 'fd-menu' from '@fundamental-ngx/core/menu' instead.`);\n }\n\n /** @hidden */\n ngAfterViewInit(): void {\n if (!this.menuId) {\n this.menuId = MENU_ID_ROOT + menuIdCounter++;\n }\n if (this.menuItems) {\n this._keyManager = new FocusKeyManager(this.menuItems);\n this._tabSubscription = this._keyManager.tabOut.subscribe(() => {\n this.close.emit('keyboard');\n });\n }\n }\n\n /** @hidden */\n ngAfterContentInit(): void {\n this._setMenuItemCascadeDirection();\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this.close.complete();\n this._tabSubscription.unsubscribe();\n this._dirChangeSubscription.unsubscribe();\n this._keyManager?.destroy();\n }\n\n /**\n * Set focus on first item\n * @param origin FocusOrigin\n */\n focusOnFirstItem(origin: FocusOrigin = 'program'): void {\n this._keyManager.setFocusOrigin(origin).setFirstItemActive();\n }\n\n /**\n * Close menu\n * @param method menu close method\n */\n closeMenu(method: MenuCloseMethod): void {\n this.close.emit(method);\n }\n\n /**\n * @hidden\n * Menu keydown handler\n */\n _onKeydown(event: KeyboardEvent): void {\n if (KeyUtil.isKeyCode(event, LEFT_ARROW)) {\n if (this._cascadesRight()) {\n this.close.emit('arrow');\n }\n } else if (KeyUtil.isKeyCode(event, RIGHT_ARROW)) {\n if (this._cascadesLeft()) {\n this.close.emit('arrow');\n }\n } else if (KeyUtil.isKeyCode(event, ESCAPE)) {\n this.close.emit('keyboard');\n } else if (KeyUtil.isKeyCode(event, [ENTER, SPACE])) {\n event.preventDefault();\n this.close.emit('keyboard');\n } else {\n this._keyManager.onKeydown(event);\n }\n }\n\n /**\n * @hidden\n * Menu click handler\n */\n _onClick(): void {\n this.close.emit('mouse');\n }\n\n /**\n * @hidden\n * Get stream of menu items hover change\n */\n _menuItemHoverChange(): Observable<MenuItemComponent> {\n const menuItems = this.menuItems.changes as Observable<QueryList<MenuItemComponent>>;\n return menuItems.pipe(\n startWith(this.menuItems),\n switchMap((items) => merge(...items.map((item: MenuItemComponent) => item.hovered)))\n ) as Observable<MenuItemComponent>;\n }\n\n /** @hidden */\n _setMenuItemCascadeDirection(): void {\n if (!this.menuItems) {\n return;\n }\n // set cascade direction\n this.menuItems.forEach((item) => {\n item.cascadeDirection = this._cascadesLeft() ? 'left' : 'right';\n });\n }\n\n /**\n * @hidden\n * Check if cascade menu should appear from right\n */\n _cascadesRight(): boolean {\n return (\n (this.xPosition === 'after' && this.direction === 'ltr') ||\n (this.xPosition === 'before' && this.direction === 'rtl')\n );\n }\n\n /**\n * @hidden\n * Check if cascade menu should appear from left\n */\n _cascadesLeft(): boolean {\n return (\n (this.xPosition === 'after' && this.direction === 'rtl') ||\n (this.xPosition === 'before' && this.direction === 'ltr')\n );\n }\n}\n","<ng-template #menuTemplate>\n <nav\n [attr.id]=\"menuId\"\n [attr.dir]=\"direction\"\n class=\"fd-menu\"\n [class.is-compact]=\"contentDensityObserver.isCompactSignal()\"\n tabindex=\"0\"\n role=\"menu\"\n (click)=\"_onClick()\"\n (keydown)=\"_onKeydown($event)\"\n >\n <div class=\"fd-menu__list\">\n <ng-content></ng-content>\n </div>\n </nav>\n</ng-template>\n","import { ENTER, LEFT_ARROW, RIGHT_ARROW, SPACE } from '@angular/cdk/keycodes';\nimport { ConnectedPosition, Overlay, OverlayConfig, OverlayRef } from '@angular/cdk/overlay';\nimport { TemplatePortal } from '@angular/cdk/portal';\nimport {\n AfterContentInit,\n Directive,\n ElementRef,\n HostListener,\n Input,\n OnDestroy,\n Optional,\n Self,\n ViewContainerRef\n} from '@angular/core';\nimport { Subscription, fromEvent } from 'rxjs';\nimport { filter, take } from 'rxjs/operators';\n\nimport { KeyUtil } from '@fundamental-ngx/cdk/utils';\nimport { MenuItemComponent } from './menu-item.component';\nimport { MenuCloseMethod, MenuComponent } from './menu.component';\n\n@Directive({\n selector: `[fdpMenuTriggerFor]`,\n host: {\n 'aria-haspopup': 'menu',\n '[attr.aria-expanded]': 'isMenuOpen || null',\n '[attr.aria-controls]': 'isMenuOpen ? menu.menuId : null'\n },\n standalone: true\n})\nexport class MenuTriggerDirective implements OnDestroy, AfterContentInit {\n /** Set Menu Component for which this trigger will be associated. */\n @Input('fdpMenuTriggerFor')\n set menu(menu: MenuComponent) {\n if (this._menu === menu) {\n return;\n }\n this._menu = menu;\n this._menuCloseSubscription.unsubscribe();\n }\n get menu(): MenuComponent {\n return this._menu;\n }\n\n /** @hidden */\n private _menu: MenuComponent;\n /** @hidden */\n private _overlayRef: OverlayRef | null;\n /** @hidden */\n private _portal: TemplatePortal;\n /** @hidden */\n private _isMenuOpen = false;\n /** @hidden */\n private _outsideClickSubscription: Subscription = Subscription.EMPTY;\n /** @hidden */\n private _menuCloseSubscription: Subscription = Subscription.EMPTY;\n /** @hidden */\n private _parentMenuCloseSubscription: Subscription = Subscription.EMPTY;\n /** @hidden */\n private _menuItemHoverChangeSubscription: Subscription = Subscription.EMPTY;\n\n /** @hidden */\n constructor(\n private _element: ElementRef<HTMLElement>,\n private _overlay: Overlay,\n private _viewContainerRef: ViewContainerRef,\n @Optional() @Self() private _menuItem: MenuItemComponent,\n @Optional() private _parentMenu: MenuComponent\n ) {}\n\n /** @hidden */\n ngAfterContentInit(): void {\n if (this._isMenuItem()) {\n // mark menu item as trigger\n this._menuItem.isTrigger = true;\n\n // subscribe to changes of menu item hover state\n this._menuItemHoverChangeSubscription = this._parentMenu._menuItemHoverChange().subscribe((item) => {\n if (item === this._menuItem) {\n if (!this.isMenuOpen) {\n this._menuItem.isSelected = true;\n this.openMenu();\n }\n } else {\n this._menuItem.isSelected = false;\n this.closeMenu();\n }\n });\n }\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n if (this._overlayRef) {\n this._overlayRef.dispose();\n this._overlayRef = null;\n }\n this._outsideClickSubscription.unsubscribe();\n this._menuCloseSubscription.unsubscribe();\n this._parentMenuCloseSubscription.unsubscribe();\n this._menuItemHoverChangeSubscription.unsubscribe();\n }\n\n /** Flag to determine if associated menu is open. */\n get isMenuOpen(): boolean {\n return this._isMenuOpen;\n }\n\n /**\n * @hidden\n * Handle click on trigger element.\n */\n @HostListener('click', ['$event'])\n _onTriggerClick(event: MouseEvent): void {\n // Need to interupt default menu behavior of closing the menu\n if (this._isMenuItem()) {\n event.preventDefault();\n event.stopPropagation();\n }\n // filter out clicks initiated by keyboard enter.\n // For IE 11, MouseEvent fires a MSPointerEvent object instead of MouseEvent.\n if (event.detail > 0 || (event instanceof PointerEvent && event.detail === 0)) {\n this.toggleMenu();\n }\n }\n\n /**\n * @hidden\n * Handled keypress which focus is on trigger element.\n */\n @HostListener('keydown', ['$event'])\n _onTriggerKeydown(event: KeyboardEvent): void {\n if (KeyUtil.isKeyCode(event, [SPACE, ENTER])) {\n if (KeyUtil.isKeyCode(event, [SPACE])) {\n event.preventDefault();\n }\n\n // Need to interupt default menu item behavior of closing the menu\n if (this._isMenuItem()) {\n event.preventDefault();\n event.stopPropagation();\n }\n if (this._menuItem) {\n this._menuItem.isSelected = true;\n }\n this.openMenu();\n } else if (KeyUtil.isKeyCode(event, [RIGHT_ARROW])) {\n if (this._menu._cascadesRight() && this._menu.openByArrowKeys) {\n if (this._menuItem) {\n this._menuItem.isSelected = true;\n }\n this.openMenu();\n }\n } else if (KeyUtil.isKeyCode(event, [LEFT_ARROW])) {\n if (this._menu._cascadesLeft() && this._menu.openByArrowKeys) {\n if (this._menuItem) {\n this._menuItem.isSelected = true;\n }\n this.openMenu();\n }\n }\n }\n\n /**\n * @hidden\n * Toggle display of associated menu.\n */\n toggleMenu(): void {\n /**\n * Need to add delay here to ensure that any \"closeMenu\" operation which\n * has been invoked within an \"outsideClickSubscription\" gets resolved\n * before \"openMenu\" is called. This can happen when there are multiple\n * triggers for the same menu.\n */\n setTimeout(() => {\n this._isMenuOpen ? this._destroyMenu() : this.openMenu();\n }, 0);\n }\n\n /**\n * @hidden\n * Open associated menu.\n */\n openMenu(): void {\n // create overlay\n const overlayConfig = this._getOverlayConfig();\n this._overlayRef = this._overlay.create(overlayConfig);\n\n // get portal and attach to overlay\n this._portal = new TemplatePortal(this._menu.templateRef, this._viewContainerRef);\n this._overlayRef.attach(this._portal);\n\n // add subscription to capture clicks outside menu\n if (this._outsideClickSubscription) {\n this._outsideClickSubscription.unsubscribe();\n }\n this._outsideClickSubscription = fromEvent<MouseEvent>(document, 'click')\n .pipe(\n filter((event) => {\n const target = event.target as HTMLElement;\n return (\n !this._element.nativeElement.contains(target) &&\n !!this._overlayRef &&\n !this._overlayRef.overlayElement.contains(target) &&\n this.isMenuOpen\n );\n }),\n take(1)\n )\n .subscribe(() => {\n this.closeMenu();\n });\n\n // add subscription to menu 'close' event\n if (this._menuCloseSubscription) {\n this._menuCloseSubscription.unsubscribe();\n }\n this._menuCloseSubscription = this._menu.close.subscribe((method: MenuCloseMethod) => {\n this._destroyMenu();\n // Need to close parent menu if closing of menu was done by terminating action\n if (this._parentMenu && (method === 'keyboard' || method === 'mouse')) {\n this._parentMenu.closeMenu(method);\n }\n });\n\n // add subscription to parent menu 'close' event\n if (this._parentMenu) {\n if (this._parentMenuCloseSubscription) {\n this._parentMenuCloseSubscription.unsubscribe();\n }\n this._parentMenuCloseSubscription = this._parentMenu.close.subscribe(() => {\n this.closeMenu();\n });\n }\n\n // set focus to menu\n this._menu.focusOnFirstItem();\n\n this._isMenuOpen = true;\n }\n\n /**\n * @hidden\n * Close associated menu.\n */\n closeMenu(): void {\n this._menu.closeMenu();\n }\n\n /**\n * @hidden\n * destroy associated menu.\n */\n private _destroyMenu(): void {\n if (this._menuItem) {\n this._menuItem.isSelected = false;\n }\n if (!this._overlayRef || !this._isMenuOpen) {\n return;\n }\n if (this._menuItem) {\n this._menuItem.focus();\n } else {\n this._element.nativeElement.focus();\n }\n this._overlayRef.detach();\n this._isMenuOpen = false;\n }\n\n /** @hidden */\n private _getOverlayConfig(): OverlayConfig {\n const positions = this._getPositions();\n const positionStrategy = this._overlay\n .position()\n .flexibleConnectedTo(this._element)\n .withLockedPosition()\n .withPositions(positions);\n\n const scrollStrategy = this._overlay.scrollStrategies.reposition();\n\n const overlayConfig = new OverlayConfig({\n positionStrategy,\n scrollStrategy,\n backdropClass: 'cdk-overlay-transparent-backdrop'\n });\n return overlayConfig;\n }\n\n /** @hidden */\n private _getPositions(): ConnectedPosition[] {\n let positions: ConnectedPosition[] = [];\n const offsetYPosition = 0;\n const offsetXPosition = 0;\n const subMenuXPadding = 4; // horizontal padding of 0.25rem(4px) is needed for sub-menu\n const subMenuYPadding = 4; // vertical padding of 0.25rem(4px) is needed for sub-menu\n\n if (this._isMenuItem()) {\n if (this._menu._cascadesLeft()) {\n positions = [\n {\n originX: 'start',\n originY: 'top',\n overlayX: 'end',\n overlayY: 'top',\n offsetX: subMenuXPadding,\n offsetY: subMenuYPadding\n },\n {\n originX: 'start',\n originY: 'bottom',\n overlayX: 'end',\n overlayY: 'bottom',\n offsetX: subMenuXPadding,\n offsetY: -subMenuYPadding\n }\n ];\n } else {\n positions = [\n {\n originX: 'end',\n originY: 'top',\n overlayX: 'start',\n overlayY: 'top',\n offsetX: -subMenuXPadding,\n offsetY: subMenuYPadding\n },\n {\n originX: 'end',\n originY: 'bottom',\n overlayX: 'start',\n overlayY: 'bottom',\n offsetX: -subMenuXPadding,\n offsetY: -subMenuYPadding\n }\n ];\n }\n } else {\n if (this._menu._cascadesLeft()) {\n positions = [\n {\n originX: 'end',\n originY: 'bottom',\n overlayX: 'end',\n overlayY: 'top',\n offsetY: offsetYPosition,\n offsetX: offsetXPosition\n },\n {\n originX: 'end',\n originY: 'top',\n overlayX: 'end',\n overlayY: 'bottom',\n offsetY: -offsetYPosition,\n offsetX: offsetXPosition\n }\n ];\n } else {\n positions = [\n {\n originX: 'start',\n originY: 'bottom',\n overlayX: 'start',\n overlayY: 'top',\n offsetY: offsetYPosition,\n offsetX: -offsetXPosition\n },\n {\n originX: 'start',\n originY: 'top',\n overlayX: 'start',\n overlayY: 'bottom',\n offsetY: -offsetYPosition,\n offsetX: -offsetXPosition\n }\n ];\n }\n }\n\n return positions;\n }\n\n /** @hidden */\n private _isMenuItem(): boolean {\n return !!(this._parentMenu && this._menuItem);\n }\n}\n","import { NgModule } from '@angular/core';\n\nimport { ContentDensityModule } from '@fundamental-ngx/core/content-density';\nimport { MenuItemComponent } from './menu-item.component';\nimport { MenuTriggerDirective } from './menu-trigger.directive';\nimport { MenuComponent } from './menu.component';\n\nconst components = [MenuComponent, MenuItemComponent, MenuTriggerDirective, ContentDensityModule];\n\n@NgModule({\n imports: [...components],\n exports: [...components]\n})\nexport class PlatformMenuModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2.MenuItemComponent","i3.MenuComponent"],"mappings":"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"}
|