@fundamental-ngx/core 0.43.0-rc.2 → 0.43.0-rc.21
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/carousel/carousel.component.d.ts +4 -2
- package/dialog/dialog-container/dialog-container.component.d.ts +4 -2
- package/esm2020/action-bar/action-bar-actions/action-bar-actions.directive.mjs +3 -3
- package/esm2020/action-bar/action-bar-back/action-bar-back.directive.mjs +3 -3
- package/esm2020/action-bar/action-bar-description/action-bar-description.directive.mjs +3 -3
- package/esm2020/action-bar/action-bar-header/action-bar-header.directive.mjs +3 -3
- package/esm2020/action-bar/action-bar-mobile/action-bar-mobile.directive.mjs +3 -3
- package/esm2020/action-bar/action-bar-title/action-bar-title.component.mjs +3 -3
- package/esm2020/action-bar/action-bar.component.mjs +3 -3
- package/esm2020/action-bar/action-bar.module.mjs +4 -4
- package/esm2020/action-sheet/action-sheet-body/action-sheet-body.component.mjs +3 -3
- package/esm2020/action-sheet/action-sheet-control/action-sheet-control.component.mjs +3 -3
- package/esm2020/action-sheet/action-sheet-item/action-sheet-item.component.mjs +3 -3
- package/esm2020/action-sheet/action-sheet-mobile/action-sheet-mobile.component.mjs +3 -3
- package/esm2020/action-sheet/action-sheet-mobile/action-sheet-mobile.module.mjs +4 -4
- package/esm2020/action-sheet/action-sheet.component.mjs +3 -3
- package/esm2020/action-sheet/action-sheet.module.mjs +4 -4
- package/esm2020/action-sheet/deprecated-action-sheet-compact.directive.mjs +3 -3
- package/esm2020/alert/alert-service/alert.service.mjs +3 -3
- package/esm2020/alert/alert-utils/alert-container.component.mjs +3 -3
- package/esm2020/alert/alert.component.mjs +3 -3
- package/esm2020/alert/alert.module.mjs +4 -4
- package/esm2020/avatar/avatar.component.mjs +3 -3
- package/esm2020/avatar/avatar.module.mjs +4 -4
- package/esm2020/avatar-group/avatar-group.component.mjs +3 -3
- package/esm2020/avatar-group/avatar-group.module.mjs +4 -4
- package/esm2020/avatar-group/directives/avatar-group-focusable-avatar.directive.mjs +3 -3
- package/esm2020/avatar-group/directives/avatar-group-item.directive.mjs +3 -3
- package/esm2020/avatar-group/directives/avatar-group-overflow-body.directive.mjs +3 -3
- package/esm2020/avatar-group/directives/avatar-group-overflow-button-text.directive.mjs +3 -3
- package/esm2020/avatar-group/directives/avatar-group-overflow-button.directive.mjs +3 -3
- package/esm2020/avatar-group/directives/avatar-group-overflow-item.directive.mjs +3 -3
- package/esm2020/avatar-group/directives/avatar-group-popover-control.directive.mjs +3 -3
- package/esm2020/bar/bar.component.mjs +3 -3
- package/esm2020/bar/bar.module.mjs +4 -4
- package/esm2020/bar/button-bar/button-bar.component.mjs +3 -3
- package/esm2020/bar/deprecated-bar-button-content-density.directive.mjs +3 -3
- package/esm2020/bar/deprecated-bar-content-density.directive.mjs +3 -3
- package/esm2020/bar/directives/bar-element.directive.mjs +3 -3
- package/esm2020/bar/directives/bar-left.directive.mjs +3 -3
- package/esm2020/bar/directives/bar-middle.directive.mjs +3 -3
- package/esm2020/bar/directives/bar-right.directive.mjs +3 -3
- package/esm2020/breadcrumb/breadcrumb-item.component.mjs +3 -3
- package/esm2020/breadcrumb/breadcrumb.component.mjs +3 -3
- package/esm2020/breadcrumb/breadcrumb.module.mjs +4 -4
- package/esm2020/breadcrumb/deprecated-breadcrumbs-compact.directive.mjs +3 -3
- package/esm2020/busy-indicator/busy-indicator-extended/busy-indicator-extended.directive.mjs +3 -3
- package/esm2020/busy-indicator/busy-indicator.component.mjs +3 -3
- package/esm2020/busy-indicator/busy-indicator.module.mjs +4 -4
- package/esm2020/button/base-button.mjs +3 -3
- package/esm2020/button/button.component.mjs +3 -3
- package/esm2020/button/button.module.mjs +4 -4
- package/esm2020/button/deprecated-button-content-density.directive.mjs +3 -3
- package/esm2020/calendar/calendar-directives.mjs +3 -3
- package/esm2020/calendar/calendar-header/calendar-header.component.mjs +3 -3
- package/esm2020/calendar/calendar-views/calendar-aggregated-year-view/calendar-aggregated-year-view.component.mjs +3 -3
- package/esm2020/calendar/calendar-views/calendar-day-view/calendar-day-view.component.mjs +3 -3
- package/esm2020/calendar/calendar-views/calendar-month-view/calendar-month-view.component.mjs +3 -3
- package/esm2020/calendar/calendar-views/calendar-year-view/calendar-year-view.component.mjs +3 -3
- package/esm2020/calendar/calendar.component.mjs +3 -3
- package/esm2020/calendar/calendar.module.mjs +4 -4
- package/esm2020/calendar/calendar.service.mjs +3 -3
- package/esm2020/calendar/deprecated-calendar-content-density.directive.mjs +3 -3
- package/esm2020/calendar/i18n/calendar-i18n-labels.mjs +3 -3
- package/esm2020/card/card-content.component.mjs +3 -3
- package/esm2020/card/card-counter.directive.mjs +3 -3
- package/esm2020/card/card-footer-action-item.directive.mjs +3 -3
- package/esm2020/card/card-footer.component.mjs +3 -3
- package/esm2020/card/card-header.component.mjs +3 -3
- package/esm2020/card/card-loader.component.mjs +3 -3
- package/esm2020/card/card-second-subtitle.directive.mjs +3 -3
- package/esm2020/card/card-subtitle.directive.mjs +3 -3
- package/esm2020/card/card-title.directive.mjs +3 -3
- package/esm2020/card/card.component.mjs +3 -3
- package/esm2020/card/card.module.mjs +4 -4
- package/esm2020/card/deprecated-card-content-density.directive.mjs +3 -3
- package/esm2020/card/kpi/card-kpi-analytics-content.directive.mjs +3 -3
- package/esm2020/card/kpi/card-kpi-analytics-label.directive.mjs +3 -3
- package/esm2020/card/kpi/card-kpi-analytics.directive.mjs +3 -3
- package/esm2020/card/kpi/card-kpi-header.component.mjs +3 -3
- package/esm2020/card/kpi/card-kpi-scale-icon.directive.mjs +3 -3
- package/esm2020/card/kpi/card-kpi-scale-text.directive.mjs +3 -3
- package/esm2020/card/kpi/card-kpi-value.directive.mjs +3 -3
- package/esm2020/carousel/carousel-item/carousel-item.component.mjs +3 -3
- package/esm2020/carousel/carousel-item.directive.mjs +3 -3
- package/esm2020/carousel/carousel.component.mjs +10 -4
- package/esm2020/carousel/carousel.directive.mjs +3 -3
- package/esm2020/carousel/carousel.module.mjs +4 -4
- package/esm2020/carousel/carousel.service.mjs +3 -3
- package/esm2020/checkbox/checkbox/checkbox.component.mjs +3 -3
- package/esm2020/checkbox/checkbox.module.mjs +4 -4
- package/esm2020/checkbox/deprecated-checkbox-content-density.directive.mjs +3 -3
- package/esm2020/combobox/combobox-mobile/combobox-mobile.component.mjs +5 -5
- package/esm2020/combobox/combobox-mobile/combobox-mobile.module.mjs +4 -4
- package/esm2020/combobox/combobox.component.mjs +4 -4
- package/esm2020/combobox/combobox.module.mjs +4 -4
- package/esm2020/combobox/deprecated-combobox-content-density.directive.mjs +3 -3
- package/esm2020/combobox/list-group.pipe.mjs +3 -3
- package/esm2020/content-density/classes/deprecated-compact.directive.mjs +3 -3
- package/esm2020/content-density/classes/deprecated-condensed.directive.mjs +3 -3
- package/esm2020/content-density/classes/deprecated-content-density.directive.mjs +3 -3
- package/esm2020/content-density/classes/deprecated-cozy.directive.mjs +3 -3
- package/esm2020/content-density/content-density.module.mjs +4 -4
- package/esm2020/content-density/directives/content-density.directive.mjs +3 -3
- package/esm2020/content-density/providers/local-content-density-storage.mjs +3 -3
- package/esm2020/content-density/providers/memory-content-density-storage.mjs +3 -3
- package/esm2020/content-density/providers/url-content-density-storage.mjs +3 -3
- package/esm2020/content-density/services/content-density-observer.service.mjs +3 -3
- package/esm2020/content-density/services/deprecated-content-density.service.mjs +3 -3
- package/esm2020/content-density/services/global-content-density.service.mjs +3 -3
- package/esm2020/date-picker/date-picker.component.mjs +3 -3
- package/esm2020/date-picker/date-picker.module.mjs +4 -4
- package/esm2020/date-picker/deprecated-date-picker-compact.directive.mjs +3 -3
- package/esm2020/datetime/datetime-format.pipes.mjs +9 -9
- package/esm2020/datetime/fd-datetime-adapter.mjs +3 -3
- package/esm2020/datetime/fd-datetime-pipes.module.mjs +4 -4
- package/esm2020/datetime/fd-datetime.module.mjs +8 -8
- package/esm2020/datetime-picker/datetime-picker.component.mjs +3 -3
- package/esm2020/datetime-picker/datetime-picker.module.mjs +4 -4
- package/esm2020/datetime-picker/deprecated-date-time-picker-content-density.directive.mjs +3 -3
- package/esm2020/dialog/base/dialog-base.class.mjs +3 -3
- package/esm2020/dialog/base/dialog-base.service.mjs +3 -3
- package/esm2020/dialog/base/dialog-footer-base.class.mjs +3 -3
- package/esm2020/dialog/base/dialog-header-base.class.mjs +3 -3
- package/esm2020/dialog/dialog-body/dialog-body.component.mjs +3 -3
- package/esm2020/dialog/dialog-close-button/dialog-close-button.component.mjs +3 -3
- package/esm2020/dialog/dialog-container/dialog-container.component.mjs +11 -5
- package/esm2020/dialog/dialog-default/dialog-default.component.mjs +5 -5
- package/esm2020/dialog/dialog-footer/dialog-footer.component.mjs +3 -3
- package/esm2020/dialog/dialog-footer-button/dialog-footer-button.component.mjs +3 -3
- package/esm2020/dialog/dialog-header/dialog-header.component.mjs +3 -3
- package/esm2020/dialog/dialog-service/dialog.service.mjs +3 -3
- package/esm2020/dialog/dialog.component.mjs +3 -3
- package/esm2020/dialog/dialog.module.mjs +4 -4
- package/esm2020/dialog/directives/dialog-decisive-button.directive.mjs +3 -3
- package/esm2020/dialog/directives/dialog-title.directive.mjs +3 -3
- package/esm2020/dialog/utils/dialog-config.class.mjs +3 -3
- package/esm2020/dialog/utils/dialog-overlay.container.mjs +3 -3
- package/esm2020/dialog/utils/dialog-ref.class.mjs +3 -3
- package/esm2020/dynamic-page/deprecated-dynamic-page-compact.directive.mjs +3 -3
- package/esm2020/dynamic-page/directives/dynamic-page-header-subtitle.directive.mjs +3 -3
- package/esm2020/dynamic-page/directives/dynamic-page-header-title.directive.mjs +3 -3
- package/esm2020/dynamic-page/dynamic-page-content/dynamic-page-content.component.mjs +3 -3
- package/esm2020/dynamic-page/dynamic-page-footer/dynamic-page-footer.component.mjs +3 -3
- package/esm2020/dynamic-page/dynamic-page-header/actions/dynamic-page-base-actions.mjs +3 -3
- package/esm2020/dynamic-page/dynamic-page-header/actions/dynamic-page-global-actions.component.mjs +3 -3
- package/esm2020/dynamic-page/dynamic-page-header/actions/dynamic-page-layout-actions.component.mjs +3 -3
- package/esm2020/dynamic-page/dynamic-page-header/actions/dynamic-page-title-content.component.mjs +3 -3
- package/esm2020/dynamic-page/dynamic-page-header/header/dynamic-page-header.component.mjs +3 -3
- package/esm2020/dynamic-page/dynamic-page-header/subheader/dynamic-page-subheader.component.mjs +3 -3
- package/esm2020/dynamic-page/dynamic-page-wrapper.directive.mjs +3 -3
- package/esm2020/dynamic-page/dynamic-page.component.mjs +3 -3
- package/esm2020/dynamic-page/dynamic-page.config.mjs +3 -3
- package/esm2020/dynamic-page/dynamic-page.module.mjs +4 -4
- package/esm2020/dynamic-page/dynamic-page.service.mjs +3 -3
- package/esm2020/dynamic-side-content/dynamic-side-content-main.component.mjs +3 -3
- package/esm2020/dynamic-side-content/dynamic-side-content-side.component.mjs +3 -3
- package/esm2020/dynamic-side-content/dynamic-side-content.component.mjs +3 -3
- package/esm2020/dynamic-side-content/dynamic-side-content.module.mjs +4 -4
- package/esm2020/facets/content/facet-content.component.mjs +3 -3
- package/esm2020/facets/facet/facet.component.mjs +3 -3
- package/esm2020/facets/facet-group.component.mjs +3 -3
- package/esm2020/facets/facet.module.mjs +4 -4
- package/esm2020/feed-input/directives/feed-input-avatar.directive.mjs +3 -3
- package/esm2020/feed-input/directives/feed-input-button.directive.mjs +3 -3
- package/esm2020/feed-input/directives/feed-input-textarea.directive.mjs +3 -3
- package/esm2020/feed-input/feed-input.component.mjs +3 -3
- package/esm2020/feed-input/feed-input.module.mjs +4 -4
- package/esm2020/feed-list-item/components/feed-list-action/feed-list-action.component.mjs +3 -3
- package/esm2020/feed-list-item/components/feed-list-avatar/feed-list-avatar.component.mjs +3 -3
- package/esm2020/feed-list-item/components/feed-list-footer/feed-list-footer.component.mjs +3 -3
- package/esm2020/feed-list-item/components/item/feed-list-item.component.mjs +3 -3
- package/esm2020/feed-list-item/components/list/feed-list.component.mjs +3 -3
- package/esm2020/feed-list-item/directives/byline.directive.mjs +3 -3
- package/esm2020/feed-list-item/feed-list-item.module.mjs +4 -4
- package/esm2020/file-uploader/deprecated-file-uploader-content-density.directive.mjs +3 -3
- package/esm2020/file-uploader/directives/file-uploader-dragndrop.directive.mjs +3 -3
- package/esm2020/file-uploader/directives/file-uploader-select.directive.mjs +3 -3
- package/esm2020/file-uploader/file-uploader.component.mjs +3 -3
- package/esm2020/file-uploader/file-uploader.module.mjs +4 -4
- package/esm2020/file-uploader/file-uploader.service.mjs +3 -3
- package/esm2020/fixed-card-layout/fixed-card-layout-item/fixed-card-layout-item.component.mjs +3 -3
- package/esm2020/fixed-card-layout/fixed-card-layout.component.mjs +6 -6
- package/esm2020/fixed-card-layout/fixed-card-layout.module.mjs +4 -4
- package/esm2020/flexible-column-layout/flexible-column-layout.component.mjs +3 -3
- package/esm2020/flexible-column-layout/flexible-column-layout.module.mjs +4 -4
- package/esm2020/form/fieldset/fieldset.component.mjs +3 -3
- package/esm2020/form/fieldset/fieldset.module.mjs +4 -4
- package/esm2020/form/form-control/deprecated-form-control-content-density.directive.mjs +3 -3
- package/esm2020/form/form-control/form-control.component.mjs +3 -3
- package/esm2020/form/form-control/form-control.module.mjs +4 -4
- package/esm2020/form/form-control/input-form-control.directive.mjs +3 -3
- package/esm2020/form/form-control/textarea-form-control.directive.mjs +3 -3
- package/esm2020/form/form-group/form-group.component.mjs +3 -3
- package/esm2020/form/form-group/form-group.module.mjs +4 -4
- package/esm2020/form/form-header/form-header.component.mjs +3 -3
- package/esm2020/form/form-header/form-header.module.mjs +4 -4
- package/esm2020/form/form-input-message-group/form-input-message-group.component.mjs +3 -3
- package/esm2020/form/form-input-message-group/form-input-message-group.module.mjs +4 -4
- package/esm2020/form/form-item/form-item.component.mjs +3 -3
- package/esm2020/form/form-item/form-item.module.mjs +4 -4
- package/esm2020/form/form-label/form-label.component.mjs +3 -3
- package/esm2020/form/form-label/form-label.module.mjs +4 -4
- package/esm2020/form/form-legend/form-legend.directive.mjs +3 -3
- package/esm2020/form/form-legend/form-legend.module.mjs +4 -4
- package/esm2020/form/form-message/form-message.component.mjs +3 -3
- package/esm2020/form/form-message/form-message.module.mjs +4 -4
- package/esm2020/form/form-message/popover-form-message.service.mjs +3 -3
- package/esm2020/form/form.module.mjs +4 -4
- package/esm2020/formatted-text/formatted-text.component.mjs +3 -3
- package/esm2020/formatted-text/formatted-text.module.mjs +4 -4
- package/esm2020/fundamental-ngx.module.mjs +4 -4
- package/esm2020/grid-list/components/grid-list/grid-list-base.component.mjs +3 -3
- package/esm2020/grid-list/components/grid-list/grid-list.component.mjs +3 -3
- package/esm2020/grid-list/components/grid-list-filter-bar/grid-list-filter-bar.component.mjs +3 -3
- package/esm2020/grid-list/components/grid-list-footer/grid-list-footer.component.mjs +3 -3
- package/esm2020/grid-list/components/grid-list-group-header/grid-list-group-header.component.mjs +3 -3
- package/esm2020/grid-list/components/grid-list-item/grid-list-item.component.mjs +3 -3
- package/esm2020/grid-list/components/grid-list-item-footer-bar/grid-list-item-footer-bar.component.mjs +3 -3
- package/esm2020/grid-list/components/grid-list-item-toolbar/grid-list-item-toolbar.component.mjs +3 -3
- package/esm2020/grid-list/components/grid-list-more-btn/grid-list-more-btn.component.mjs +3 -3
- package/esm2020/grid-list/components/grid-list-title-bar/grid-list-title-bar.component.mjs +3 -3
- package/esm2020/grid-list/components/grid-list-title-bar/grid-list-title-bar.directive.mjs +3 -3
- package/esm2020/grid-list/components/grid-list-title-bar-spacer/grid-list-title-bar-spacer.component.mjs +3 -3
- package/esm2020/grid-list/directives/grid-list-item-body.directive.mjs +3 -3
- package/esm2020/grid-list/directives/grid-list-item-image.directive.mjs +3 -3
- package/esm2020/grid-list/grid-list.module.mjs +4 -4
- package/esm2020/icon/icon.component.mjs +3 -3
- package/esm2020/icon/icon.module.mjs +4 -4
- package/esm2020/illustrated-message/components/illustrated-message-actions/illustrated-message-actions.component.mjs +3 -3
- package/esm2020/illustrated-message/components/illustrated-message-figcaption/illustrated-message-figcaption.component.mjs +3 -3
- package/esm2020/illustrated-message/directives/illustrated-message-text/illustrated-message-text.directive.mjs +3 -3
- package/esm2020/illustrated-message/directives/illustrated-message-title/illustrated-message-title.directive.mjs +3 -3
- package/esm2020/illustrated-message/illustrated-message.component.mjs +3 -3
- package/esm2020/illustrated-message/illustrated-message.module.mjs +4 -4
- package/esm2020/infinite-scroll/infinite-scroll.directive.mjs +3 -3
- package/esm2020/infinite-scroll/infinite-scroll.module.mjs +4 -4
- package/esm2020/info-label/info-label.component.mjs +3 -3
- package/esm2020/info-label/info-label.module.mjs +4 -4
- package/esm2020/inline-help/inline-help.directive.mjs +3 -3
- package/esm2020/inline-help/inline-help.module.mjs +4 -4
- package/esm2020/input-group/deprecated-input-group-compact.directive.mjs +3 -3
- package/esm2020/input-group/input-group-directives.mjs +12 -12
- package/esm2020/input-group/input-group.component.mjs +3 -3
- package/esm2020/input-group/input-group.module.mjs +4 -4
- package/esm2020/layout-grid/directives/layout-grid-col.directive.mjs +3 -3
- package/esm2020/layout-grid/directives/layout-grid-row.directive.mjs +3 -3
- package/esm2020/layout-grid/layout-grid.component.mjs +3 -3
- package/esm2020/layout-grid/layout-grid.module.mjs +4 -4
- package/esm2020/layout-panel/layout-panel-actions/layout-panel-actions.component.mjs +3 -3
- package/esm2020/layout-panel/layout-panel-body/layout-panel-body.component.mjs +3 -3
- package/esm2020/layout-panel/layout-panel-description/layout-panel-description.component.mjs +3 -3
- package/esm2020/layout-panel/layout-panel-filters/layout-panel-filters.component.mjs +3 -3
- package/esm2020/layout-panel/layout-panel-footer/layout-panel-footer.component.mjs +3 -3
- package/esm2020/layout-panel/layout-panel-head/layout-panel-head.component.mjs +3 -3
- package/esm2020/layout-panel/layout-panel-header/layout-panel-header.component.mjs +3 -3
- package/esm2020/layout-panel/layout-panel-title/layout-panel-title.directive.mjs +3 -3
- package/esm2020/layout-panel/layout-panel.component.mjs +3 -3
- package/esm2020/layout-panel/layout-panel.module.mjs +4 -4
- package/esm2020/link/link.component.mjs +3 -3
- package/esm2020/link/link.module.mjs +4 -4
- package/esm2020/list/deprecated-list-content-density,directive.mjs +3 -3
- package/esm2020/list/directives/byline/list-byline-left.directive.mjs +3 -3
- package/esm2020/list/directives/byline/list-byline-right.directive.mjs +3 -3
- package/esm2020/list/directives/byline/list-byline.directive.mjs +3 -3
- package/esm2020/list/directives/byline/list-content.directive.mjs +3 -3
- package/esm2020/list/directives/byline/list-thumbnail.directive.mjs +3 -3
- package/esm2020/list/directives/list-footer.directive.mjs +3 -3
- package/esm2020/list/directives/list-group-header.directive.mjs +3 -3
- package/esm2020/list/directives/list-icon.directive.mjs +3 -3
- package/esm2020/list/directives/list-link.directive.mjs +3 -3
- package/esm2020/list/directives/list-navigation-item-arrow.directive.mjs +3 -3
- package/esm2020/list/directives/list-navigation-item-text.directive.mjs +3 -3
- package/esm2020/list/directives/list-secondary.directive.mjs +3 -3
- package/esm2020/list/directives/list-title-text.directive.mjs +3 -3
- package/esm2020/list/directives/list-title.directive.mjs +3 -3
- package/esm2020/list/list-focus-item.model.mjs +3 -3
- package/esm2020/list/list-item/list-item.component.mjs +13 -4
- package/esm2020/list/list-message.directive.mjs +3 -3
- package/esm2020/list/list-navigation-item/list-navigation-item.component.mjs +3 -3
- package/esm2020/list/list.component.mjs +3 -3
- package/esm2020/list/list.module.mjs +4 -4
- package/esm2020/menu/directives/deprecated-menu-compact.directive.mjs +3 -3
- package/esm2020/menu/directives/menu-addon.directive.mjs +3 -3
- package/esm2020/menu/directives/menu-interactive.directive.mjs +3 -3
- package/esm2020/menu/directives/menu-shortcut.directive.mjs +3 -3
- package/esm2020/menu/directives/menu-title.directive.mjs +3 -3
- package/esm2020/menu/directives/menu-trigger.directive.mjs +3 -3
- package/esm2020/menu/menu-item/menu-item.component.mjs +6 -6
- package/esm2020/menu/menu-keyboard.service.mjs +3 -3
- package/esm2020/menu/menu-mobile/menu-mobile.component.mjs +5 -5
- package/esm2020/menu/menu-mobile/menu-mobile.module.mjs +4 -4
- package/esm2020/menu/menu-separator/menu-separator.component.mjs +3 -3
- package/esm2020/menu/menu.component.mjs +3 -3
- package/esm2020/menu/menu.module.mjs +4 -4
- package/esm2020/menu/services/menu.service.mjs +3 -3
- package/esm2020/message-box/directives/message-box-decisive-button.directive.mjs +3 -3
- package/esm2020/message-box/message-box-body/message-box-body.component.mjs +3 -3
- package/esm2020/message-box/message-box-container/message-box-container.component.mjs +5 -6
- package/esm2020/message-box/message-box-default/message-box-default.component.mjs +5 -5
- package/esm2020/message-box/message-box-footer/message-box-footer.component.mjs +3 -3
- package/esm2020/message-box/message-box-footer-button/message-box-footer-button.component.mjs +3 -3
- package/esm2020/message-box/message-box-header/message-box-header.component.mjs +3 -3
- package/esm2020/message-box/message-box-semantic-icon/message-box-semantic-icon.component.mjs +3 -3
- package/esm2020/message-box/message-box.component.mjs +3 -3
- package/esm2020/message-box/message-box.module.mjs +4 -4
- package/esm2020/message-box/services/message-box.service.mjs +3 -3
- package/esm2020/message-box/utils/message-box-config.class.mjs +3 -3
- package/esm2020/message-box/utils/message-box-ref.class.mjs +3 -3
- package/esm2020/message-page/message-page-actions/message-page-actions.component.mjs +3 -3
- package/esm2020/message-page/message-page-more/message-page-more.component.mjs +3 -3
- package/esm2020/message-page/message-page-subtitle/message-page-subtitle.component.mjs +3 -3
- package/esm2020/message-page/message-page-title/message-page-title.component.mjs +3 -3
- package/esm2020/message-page/message-page.component.mjs +3 -3
- package/esm2020/message-page/message-page.module.mjs +4 -4
- package/esm2020/message-strip/alert/message-strip-alert/message-strip-alert.component.mjs +3 -3
- package/esm2020/message-strip/alert/message-strip-alert-container/message-strip-alert-container.component.mjs +3 -3
- package/esm2020/message-strip/alert/message-strip-alert-container-footer/message-strip-alert-container-footer.component.mjs +3 -3
- package/esm2020/message-strip/alert/message-strip-alert.service.mjs +3 -3
- package/esm2020/message-strip/auto-dismiss-message-strip.directive.mjs +3 -3
- package/esm2020/message-strip/message-strip.component.mjs +3 -3
- package/esm2020/message-strip/message-strip.module.mjs +4 -4
- package/esm2020/message-toast/components/message-toast-text.component.mjs +3 -3
- package/esm2020/message-toast/message-toast.component.mjs +3 -3
- package/esm2020/message-toast/message-toast.module.mjs +4 -4
- package/esm2020/message-toast/message-toast.service.mjs +3 -3
- package/esm2020/message-toast/toast-overlay-container.class.mjs +3 -3
- package/esm2020/micro-process-flow/components/micro-process-flow/deprecated-micro-process-flow-content-density.directive.mjs +3 -3
- package/esm2020/micro-process-flow/components/micro-process-flow/micro-process-flow.component.mjs +3 -3
- package/esm2020/micro-process-flow/components/micro-process-flow-icon/micro-process-flow-icon.component.mjs +3 -3
- package/esm2020/micro-process-flow/components/micro-process-flow-item/micro-process-flow-item.component.mjs +3 -3
- package/esm2020/micro-process-flow/micro-process-flow-focusable-item.directive.mjs +3 -3
- package/esm2020/micro-process-flow/micro-process-flow-intermediary-item.directive.mjs +3 -3
- package/esm2020/micro-process-flow/micro-process-flow.module.mjs +4 -4
- package/esm2020/multi-combobox/base-multi-combobox.class.mjs +3 -3
- package/esm2020/multi-combobox/mobile/mobile-multi-combobox.component.mjs +3 -3
- package/esm2020/multi-combobox/mobile/mobile-multi-combobox.module.mjs +4 -4
- package/esm2020/multi-combobox/multi-combobox-config.mjs +3 -3
- package/esm2020/multi-combobox/multi-combobox.component.mjs +4 -4
- package/esm2020/multi-combobox/multi-combobox.module.mjs +4 -4
- package/esm2020/multi-combobox/select-all-toggler/select-all-toggler.component.mjs +3 -3
- package/esm2020/multi-input/deprecated-multi-input-compact.directive.mjs +3 -3
- package/esm2020/multi-input/multi-input-mobile/multi-input-mobile.component.mjs +3 -3
- package/esm2020/multi-input/multi-input-mobile/multi-input-mobile.module.mjs +4 -4
- package/esm2020/multi-input/multi-input.component.mjs +4 -4
- package/esm2020/multi-input/multi-input.module.mjs +4 -4
- package/esm2020/nested-list/deprecated-nested-list-compact.directive.mjs +3 -3
- package/esm2020/nested-list/nested-content/nested-list-content.directive.mjs +3 -3
- package/esm2020/nested-list/nested-item/nested-item.directive.mjs +3 -3
- package/esm2020/nested-list/nested-link/nested-link.directive.mjs +3 -3
- package/esm2020/nested-list/nested-list/nested-list.directive.mjs +3 -3
- package/esm2020/nested-list/nested-list-directives.mjs +12 -12
- package/esm2020/nested-list/nested-list-keyboard.service.mjs +3 -3
- package/esm2020/nested-list/nested-list-popover/nested-list-popover.component.mjs +3 -3
- package/esm2020/nested-list/nested-list-state.service.mjs +3 -3
- package/esm2020/nested-list/nested-list.module.mjs +4 -4
- package/esm2020/nested-list/prepared-nested-list/prepared-nested-list.component.mjs +3 -3
- package/esm2020/notification/directives/notification-footer-content.directive.mjs +3 -3
- package/esm2020/notification/directives/notification-indicator.directive.mjs +3 -3
- package/esm2020/notification/directives/notification-limit-description.directive.mjs +3 -3
- package/esm2020/notification/directives/notification-limit-title.directive.mjs +3 -3
- package/esm2020/notification/directives/notification-paragraph.directive.mjs +3 -3
- package/esm2020/notification/directives/notification-separator.directive.mjs +3 -3
- package/esm2020/notification/directives/notification-title.directive.mjs +3 -3
- package/esm2020/notification/notification/notification.component.mjs +3 -3
- package/esm2020/notification/notification-actions/notification-actions.component.mjs +3 -3
- package/esm2020/notification/notification-body/notification-body.component.mjs +3 -3
- package/esm2020/notification/notification-content/notification-content.component.mjs +3 -3
- package/esm2020/notification/notification-footer/notification-footer.component.mjs +3 -3
- package/esm2020/notification/notification-group/notification-group.component.mjs +3 -3
- package/esm2020/notification/notification-group-header/notification-group-header.component.mjs +3 -3
- package/esm2020/notification/notification-group-list/notification-group-list.component.mjs +3 -3
- package/esm2020/notification/notification-header/notification-header.component.mjs +3 -3
- package/esm2020/notification/notification-limit/notification-limit.component.mjs +3 -3
- package/esm2020/notification/notification-service/notification.service.mjs +3 -3
- package/esm2020/notification/notification-utils/notification-container.mjs +3 -3
- package/esm2020/notification/notification-utils/notification-group-base.mjs +3 -3
- package/esm2020/notification/notification.module.mjs +4 -4
- package/esm2020/object-identifier/object-identifier.component.mjs +3 -3
- package/esm2020/object-identifier/object-identifier.module.mjs +4 -4
- package/esm2020/object-marker/object-marker.component.mjs +3 -3
- package/esm2020/object-marker/object-marker.module.mjs +4 -4
- package/esm2020/object-number/object-number.component.mjs +3 -3
- package/esm2020/object-number/object-number.module.mjs +4 -4
- package/esm2020/object-status/object-status.component.mjs +3 -3
- package/esm2020/object-status/object-status.module.mjs +4 -4
- package/esm2020/overflow-layout/directives/overflow-expand.directive.mjs +3 -3
- package/esm2020/overflow-layout/directives/overflow-item-container-ref.directive.mjs +3 -3
- package/esm2020/overflow-layout/directives/overflow-item-ref.directive.mjs +3 -3
- package/esm2020/overflow-layout/directives/overflow-layout-focusable-item.directive.mjs +3 -3
- package/esm2020/overflow-layout/directives/overflow-layout-item-container.directive.mjs +3 -3
- package/esm2020/overflow-layout/directives/overflow-layout-item.directive.mjs +3 -3
- package/esm2020/overflow-layout/directives/overflow-layout-popover-content.directive.mjs +3 -3
- package/esm2020/overflow-layout/overflow-layout.component.mjs +3 -3
- package/esm2020/overflow-layout/overflow-layout.module.mjs +4 -4
- package/esm2020/overflow-layout/overflow-layout.service.mjs +3 -3
- package/esm2020/pagination/deprecated-pagination-compact.directive.mjs +3 -3
- package/esm2020/pagination/pagination.component.mjs +3 -3
- package/esm2020/pagination/pagination.module.mjs +4 -4
- package/esm2020/pagination/pagination.service.mjs +3 -3
- package/esm2020/panel/deprecated-panel-compact.directive.mjs +3 -3
- package/esm2020/panel/panel-content/panel-content.directive.mjs +3 -3
- package/esm2020/panel/panel-title/panel-title.directive.mjs +3 -3
- package/esm2020/panel/panel.component.mjs +3 -3
- package/esm2020/panel/panel.module.mjs +4 -4
- package/esm2020/popover/base/base-popover.class.mjs +3 -3
- package/esm2020/popover/popover-body/popover-body-directives/popover-body-footer.directive.mjs +3 -3
- package/esm2020/popover/popover-body/popover-body-directives/popover-body-header.directive.mjs +3 -3
- package/esm2020/popover/popover-body/popover-body.component.mjs +14 -4
- package/esm2020/popover/popover-container/popover-container.directive.mjs +3 -3
- package/esm2020/popover/popover-control/popover-control.component.mjs +3 -3
- package/esm2020/popover/popover-mobile/popover-mobile.component.mjs +5 -5
- package/esm2020/popover/popover-mobile/popover-mobile.module.mjs +4 -4
- package/esm2020/popover/popover-service/popover.service.mjs +25 -5
- package/esm2020/popover/popover-trigger.directive.mjs +3 -3
- package/esm2020/popover/popover.component.mjs +23 -22
- package/esm2020/popover/popover.module.mjs +4 -4
- package/esm2020/product-switch/product-switch/product-switch.component.mjs +3 -3
- package/esm2020/product-switch/product-switch-body/product-switch-body.component.mjs +3 -3
- package/esm2020/product-switch/product-switch.module.mjs +4 -4
- package/esm2020/progress-indicator/progress-indicator.component.mjs +3 -3
- package/esm2020/progress-indicator/progress-indicator.module.mjs +4 -4
- package/esm2020/quick-view/quick-view/quick-view.component.mjs +3 -3
- package/esm2020/quick-view/quick-view-group/quick-view-group.component.mjs +3 -3
- package/esm2020/quick-view/quick-view-group-item/quick-view-group-item.component.mjs +3 -3
- package/esm2020/quick-view/quick-view-group-item-content/quick-view-group-item-content-element.directive.mjs +3 -3
- package/esm2020/quick-view/quick-view-group-item-content/quick-view-group-item-content.component.mjs +3 -3
- package/esm2020/quick-view/quick-view-group-item-label/quick-view-group-item-label.component.mjs +3 -3
- package/esm2020/quick-view/quick-view-group-title/quick-view-group-title.component.mjs +3 -3
- package/esm2020/quick-view/quick-view-subheader/quick-view-subheader.component.mjs +3 -3
- package/esm2020/quick-view/quick-view-subheader-subtitle/quick-view-subheader-subtitle.component.mjs +3 -3
- package/esm2020/quick-view/quick-view-subheader-title/quick-view-subheader-title.component.mjs +3 -3
- package/esm2020/quick-view/quick-view-title/quick-view-title.component.mjs +3 -3
- package/esm2020/quick-view/quick-view.module.mjs +4 -4
- package/esm2020/radio/deprecated-radio-button-compact.directive.mjs +3 -3
- package/esm2020/radio/radio-button/radio-button.component.mjs +3 -3
- package/esm2020/radio/radio.module.mjs +4 -4
- package/esm2020/rating-indicator/components/rating-indicator.component.mjs +3 -3
- package/esm2020/rating-indicator/pipes/rating-star-label.pipe.mjs +3 -3
- package/esm2020/rating-indicator/rating-indicator.module.mjs +4 -4
- package/esm2020/resizable-card-layout/resizable-card-layout/resizable-card-item/resizable-card-item.component.mjs +3 -3
- package/esm2020/resizable-card-layout/resizable-card-layout/resizable-card-layout.component.mjs +3 -3
- package/esm2020/resizable-card-layout/resizable-card-layout.module.mjs +4 -4
- package/esm2020/scroll-spy/scroll-spy.directive.mjs +3 -3
- package/esm2020/scroll-spy/scroll-spy.module.mjs +4 -4
- package/esm2020/scrollbar/scrollbar.directive.mjs +9 -5
- package/esm2020/scrollbar/scrollbar.module.mjs +4 -4
- package/esm2020/segmented-button/segmented-button.component.mjs +3 -3
- package/esm2020/segmented-button/segmented-button.module.mjs +4 -4
- package/esm2020/select/deprecated-select-compact.directive.mjs +3 -3
- package/esm2020/select/option/option.component.mjs +3 -3
- package/esm2020/select/select-key-manager.service.mjs +3 -3
- package/esm2020/select/select-mobile/select-mobile.component.mjs +3 -3
- package/esm2020/select/select-mobile/select-mobile.module.mjs +4 -4
- package/esm2020/select/select.component.mjs +6 -6
- package/esm2020/select/select.module.mjs +4 -4
- package/esm2020/shared/services/value-state-message.service.mjs +3 -3
- package/esm2020/shellbar/deprecated-shellbar-compact.directive.mjs +3 -3
- package/esm2020/shellbar/product-menu/product-menu.component.mjs +3 -3
- package/esm2020/shellbar/shellbar-action/shellbar-action.component.mjs +3 -3
- package/esm2020/shellbar/shellbar-actions/shellbar-actions.component.mjs +3 -3
- package/esm2020/shellbar/shellbar-actions-mobile/shellbar-actions-mobile.component.mjs +3 -3
- package/esm2020/shellbar/shellbar-logo/shellbar-logo.component.mjs +3 -3
- package/esm2020/shellbar/shellbar-sidenav.directive.mjs +3 -3
- package/esm2020/shellbar/shellbar-subtitle/shellbar-subtitle.component.mjs +3 -3
- package/esm2020/shellbar/shellbar-title/shellbar-title.component.mjs +3 -3
- package/esm2020/shellbar/shellbar.component.mjs +3 -3
- package/esm2020/shellbar/shellbar.module.mjs +4 -4
- package/esm2020/shellbar/user-menu/shellbar-user-menu.component.mjs +3 -3
- package/esm2020/side-navigation/side-navigation-main.directive.mjs +3 -3
- package/esm2020/side-navigation/side-navigation-utility.directive.mjs +3 -3
- package/esm2020/side-navigation/side-navigation.component.mjs +3 -3
- package/esm2020/side-navigation/side-navigation.module.mjs +4 -4
- package/esm2020/skeleton/components/skeleton.component.mjs +3 -3
- package/esm2020/skeleton/skeleton.module.mjs +4 -4
- package/esm2020/slider/deprecated-slider-cozy.directive.mjs +3 -3
- package/esm2020/slider/slider-position.directive.mjs +3 -3
- package/esm2020/slider/slider.component.mjs +3 -3
- package/esm2020/slider/slider.module.mjs +4 -4
- package/esm2020/split-button/deprecated-split-button-compact.directive.mjs +3 -3
- package/esm2020/split-button/split-button-utils/split-button.directives.mjs +3 -3
- package/esm2020/split-button/split-button.component.mjs +3 -3
- package/esm2020/split-button/split-button.module.mjs +4 -4
- package/esm2020/splitter/splitter-pagination/splitter-pagination.component.mjs +3 -3
- package/esm2020/splitter/splitter-pane-container/splitter-pane-container.component.mjs +6 -6
- package/esm2020/splitter/splitter-resizer/splitter-resizer.component.mjs +3 -3
- package/esm2020/splitter/splitter-split-pane/splitter-split-pane.component.mjs +3 -3
- package/esm2020/splitter/splitter.component.mjs +3 -3
- package/esm2020/splitter/splitter.module.mjs +4 -4
- package/esm2020/status-indicator/status-indicator.component.mjs +3 -3
- package/esm2020/status-indicator/status-indicator.module.mjs +4 -4
- package/esm2020/step-input/deprecated-step-input-compact.directive.mjs +3 -3
- package/esm2020/step-input/step-input.component.mjs +3 -3
- package/esm2020/step-input/step-input.module.mjs +4 -4
- package/esm2020/switch/deprecated-switch-compact.directive.mjs +3 -3
- package/esm2020/switch/switch.component.mjs +3 -3
- package/esm2020/switch/switch.module.mjs +4 -4
- package/esm2020/table/deprecated-table-compact.directive.mjs +3 -3
- package/esm2020/table/deprecated-table-condensed.directive.mjs +3 -3
- package/esm2020/table/directives/table-body.directive.mjs +3 -3
- package/esm2020/table/directives/table-cell.directive.mjs +3 -3
- package/esm2020/table/directives/table-fixed.directive.mjs +3 -3
- package/esm2020/table/directives/table-footer.directive.mjs +3 -3
- package/esm2020/table/directives/table-header.directive.mjs +3 -3
- package/esm2020/table/directives/table-icon.directive.mjs +3 -3
- package/esm2020/table/directives/table-inner.directive.mjs +3 -3
- package/esm2020/table/directives/table-popover.directive.mjs +3 -3
- package/esm2020/table/directives/table-responsive-wrapper.directive.mjs +3 -3
- package/esm2020/table/directives/table-row.directive.mjs +3 -3
- package/esm2020/table/directives/table-status-indicator.directive.mjs +3 -3
- package/esm2020/table/directives/table-text.directive.mjs +3 -3
- package/esm2020/table/table-wrapper.component.mjs +3 -3
- package/esm2020/table/table.component.mjs +3 -3
- package/esm2020/table/table.module.mjs +4 -4
- package/esm2020/tabs/deprecated-tabs-compact.directive.mjs +3 -3
- package/esm2020/tabs/tab-item/tab-item.directive.mjs +3 -3
- package/esm2020/tabs/tab-item-expand/tab-item-expand.component.mjs +3 -3
- package/esm2020/tabs/tab-link/tab-link.directive.mjs +3 -3
- package/esm2020/tabs/tab-list.component.mjs +11 -4
- package/esm2020/tabs/tab-nav/tab-nav.component.mjs +3 -3
- package/esm2020/tabs/tab-panel/tab-panel.component.mjs +10 -4
- package/esm2020/tabs/tab-utils/tab-directives.mjs +30 -30
- package/esm2020/tabs/tabs.module.mjs +4 -4
- package/esm2020/text/text.component.mjs +3 -3
- package/esm2020/text/text.module.mjs +4 -4
- package/esm2020/theming/theming.module.mjs +4 -4
- package/esm2020/theming/theming.service.mjs +3 -3
- package/esm2020/tile/directives/numeric-content.directives.mjs +27 -27
- package/esm2020/tile/directives/tile.directives.mjs +69 -69
- package/esm2020/tile/tile.component.mjs +3 -3
- package/esm2020/tile/tile.module.mjs +4 -4
- package/esm2020/time/deprecated-time-content-density.directive.mjs +3 -3
- package/esm2020/time/i18n/time-i18n.mjs +3 -3
- package/esm2020/time/time-column/time-column.component.mjs +3 -3
- package/esm2020/time/time.component.mjs +3 -3
- package/esm2020/time/time.module.mjs +4 -4
- package/esm2020/time-picker/deprecated-timepicker-compact.directive.mjs +3 -3
- package/esm2020/time-picker/time-picker.component.mjs +3 -3
- package/esm2020/time-picker/time-picker.module.mjs +4 -4
- package/esm2020/timeline/components/timeline-node/timeline-node.component.mjs +3 -3
- package/esm2020/timeline/components/timeline-node-body/timeline-node-body.component.mjs +3 -3
- package/esm2020/timeline/components/timeline-node-footer/timeline-node-footer.component.mjs +3 -3
- package/esm2020/timeline/components/timeline-node-header/timeline-node-header-info/timeline-node-header-info.component.mjs +3 -3
- package/esm2020/timeline/components/timeline-node-header/timeline-node-header.component.mjs +3 -3
- package/esm2020/timeline/directives/class-bindings/timeline-header-info-sub-title.directive.mjs +3 -3
- package/esm2020/timeline/directives/class-bindings/timeline-node-header-info-text.directive.mjs +3 -3
- package/esm2020/timeline/directives/class-bindings/timeline-node-header-info-title.directive.mjs +3 -3
- package/esm2020/timeline/directives/timeline-first-list-outlet.directive.mjs +3 -3
- package/esm2020/timeline/directives/timeline-node-def.directive.mjs +3 -3
- package/esm2020/timeline/directives/timeline-second-list-outlet.directive.mjs +3 -3
- package/esm2020/timeline/services/timeline-position-control.service.mjs +3 -3
- package/esm2020/timeline/timeline.component.mjs +3 -3
- package/esm2020/timeline/timeline.module.mjs +4 -4
- package/esm2020/title/title.component.mjs +3 -3
- package/esm2020/title/title.module.mjs +4 -4
- package/esm2020/token/deprecated-tokenizer-content-density.directive.mjs +3 -3
- package/esm2020/token/token-input.directive.mjs +3 -3
- package/esm2020/token/token.component.mjs +3 -3
- package/esm2020/token/token.module.mjs +4 -4
- package/esm2020/token/tokenizer.component.mjs +3 -3
- package/esm2020/toolbar/deprecated-toolbar-size.directive.mjs +3 -3
- package/esm2020/toolbar/toolbar-form-label.directive.mjs +3 -3
- package/esm2020/toolbar/toolbar-item.directive.mjs +3 -3
- package/esm2020/toolbar/toolbar-label.directive.mjs +3 -3
- package/esm2020/toolbar/toolbar-overflow-button-menu.directive.mjs +3 -3
- package/esm2020/toolbar/toolbar-overflow-button.directive.mjs +3 -3
- package/esm2020/toolbar/toolbar-separator.component.mjs +3 -3
- package/esm2020/toolbar/toolbar-spacer.directive.mjs +3 -3
- package/esm2020/toolbar/toolbar.component.mjs +3 -3
- package/esm2020/toolbar/toolbar.module.mjs +4 -4
- package/esm2020/tree/components/tree-item/tree-item.component.mjs +3 -3
- package/esm2020/tree/directives/tree-item-button.directive.mjs +3 -3
- package/esm2020/tree/directives/tree-item-def.directive.mjs +3 -3
- package/esm2020/tree/directives/tree-item-icon.directive.mjs +6 -6
- package/esm2020/tree/directives/tree-item.directive.mjs +3 -3
- package/esm2020/tree/models/base-tree-item.class.mjs +3 -3
- package/esm2020/tree/tree.component.mjs +3 -3
- package/esm2020/tree/tree.module.mjs +4 -4
- package/esm2020/tree/tree.service.mjs +3 -3
- package/esm2020/upload-collection/upload-collection-button-group/upload-collection-button-group.component.mjs +3 -3
- package/esm2020/upload-collection/upload-collection-form-item/upload-collection-form-item.component.mjs +3 -3
- package/esm2020/upload-collection/upload-collection-item.directive.mjs +3 -3
- package/esm2020/upload-collection/upload-collection-simple.directives.mjs +21 -21
- package/esm2020/upload-collection/upload-collection.component.mjs +3 -3
- package/esm2020/upload-collection/upload-collection.module.mjs +4 -4
- package/esm2020/vertical-navigation/vertical-navigation-group-header.directive.mjs +3 -3
- package/esm2020/vertical-navigation/vertical-navigation-main-navigation.component.mjs +3 -3
- package/esm2020/vertical-navigation/vertical-navigation.component.mjs +3 -3
- package/esm2020/vertical-navigation/vertical-navigation.module.mjs +4 -4
- package/esm2020/wizard/deprecated-wizard-compact.directive.mjs +3 -3
- package/esm2020/wizard/wizard-content/wizard-content.component.mjs +3 -3
- package/esm2020/wizard/wizard-navigation/wizard-navigation.component.mjs +3 -3
- package/esm2020/wizard/wizard-next-step/wizard-next-step.component.mjs +3 -3
- package/esm2020/wizard/wizard-progress-bar/wizard-progress-bar.directive.mjs +3 -3
- package/esm2020/wizard/wizard-step/wizard-step.component.mjs +3 -3
- package/esm2020/wizard/wizard-step-indicator/wizard-step-indicator.component.mjs +3 -3
- package/esm2020/wizard/wizard.component.mjs +3 -3
- package/esm2020/wizard/wizard.module.mjs +4 -4
- package/esm2020/wizard/wizard.service.mjs +3 -3
- package/fesm2015/fundamental-ngx-core-action-bar.mjs +25 -25
- package/fesm2015/fundamental-ngx-core-action-sheet.mjs +26 -26
- package/fesm2015/fundamental-ngx-core-alert.mjs +13 -13
- package/fesm2015/fundamental-ngx-core-avatar-group.mjs +28 -28
- package/fesm2015/fundamental-ngx-core-avatar.mjs +7 -7
- package/fesm2015/fundamental-ngx-core-bar.mjs +28 -28
- package/fesm2015/fundamental-ngx-core-breadcrumb.mjs +13 -13
- package/fesm2015/fundamental-ngx-core-busy-indicator.mjs +10 -10
- package/fesm2015/fundamental-ngx-core-button.mjs +13 -13
- package/fesm2015/fundamental-ngx-core-calendar.mjs +34 -34
- package/fesm2015/fundamental-ngx-core-card.mjs +58 -58
- package/fesm2015/fundamental-ngx-core-carousel.mjs +26 -19
- package/fesm2015/fundamental-ngx-core-carousel.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-checkbox.mjs +10 -10
- package/fesm2015/fundamental-ngx-core-combobox.mjs +22 -22
- package/fesm2015/fundamental-ngx-core-combobox.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-content-density.mjs +37 -37
- package/fesm2015/fundamental-ngx-core-date-picker.mjs +10 -10
- package/fesm2015/fundamental-ngx-core-datetime-picker.mjs +10 -10
- package/fesm2015/fundamental-ngx-core-datetime.mjs +24 -24
- package/fesm2015/fundamental-ngx-core-dialog.mjs +66 -60
- package/fesm2015/fundamental-ngx-core-dialog.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-dynamic-page.mjs +49 -49
- package/fesm2015/fundamental-ngx-core-dynamic-side-content.mjs +13 -13
- package/fesm2015/fundamental-ngx-core-facets.mjs +13 -13
- package/fesm2015/fundamental-ngx-core-feed-input.mjs +16 -16
- package/fesm2015/fundamental-ngx-core-feed-list-item.mjs +22 -22
- package/fesm2015/fundamental-ngx-core-file-uploader.mjs +19 -19
- package/fesm2015/fundamental-ngx-core-fixed-card-layout.mjs +13 -13
- package/fesm2015/fundamental-ngx-core-flexible-column-layout.mjs +7 -7
- package/fesm2015/fundamental-ngx-core-form.mjs +79 -79
- package/fesm2015/fundamental-ngx-core-formatted-text.mjs +7 -7
- package/fesm2015/fundamental-ngx-core-grid-list.mjs +46 -46
- package/fesm2015/fundamental-ngx-core-icon.mjs +7 -7
- package/fesm2015/fundamental-ngx-core-illustrated-message.mjs +19 -19
- package/fesm2015/fundamental-ngx-core-infinite-scroll.mjs +7 -7
- package/fesm2015/fundamental-ngx-core-info-label.mjs +7 -7
- package/fesm2015/fundamental-ngx-core-inline-help.mjs +7 -7
- package/fesm2015/fundamental-ngx-core-input-group.mjs +22 -22
- package/fesm2015/fundamental-ngx-core-layout-grid.mjs +13 -13
- package/fesm2015/fundamental-ngx-core-layout-panel.mjs +31 -31
- package/fesm2015/fundamental-ngx-core-link.mjs +7 -7
- package/fesm2015/fundamental-ngx-core-list.mjs +73 -64
- package/fesm2015/fundamental-ngx-core-list.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-menu.mjs +48 -48
- package/fesm2015/fundamental-ngx-core-menu.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-message-box.mjs +41 -42
- package/fesm2015/fundamental-ngx-core-message-box.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-message-page.mjs +19 -19
- package/fesm2015/fundamental-ngx-core-message-strip.mjs +22 -22
- package/fesm2015/fundamental-ngx-core-message-toast.mjs +16 -16
- package/fesm2015/fundamental-ngx-core-micro-process-flow.mjs +22 -22
- package/fesm2015/fundamental-ngx-core-multi-combobox.mjs +24 -24
- package/fesm2015/fundamental-ngx-core-multi-combobox.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-multi-input.mjs +18 -18
- package/fesm2015/fundamental-ngx-core-multi-input.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-nested-list.mjs +43 -43
- package/fesm2015/fundamental-ngx-core-notification.mjs +64 -64
- package/fesm2015/fundamental-ngx-core-object-identifier.mjs +7 -7
- package/fesm2015/fundamental-ngx-core-object-marker.mjs +7 -7
- package/fesm2015/fundamental-ngx-core-object-number.mjs +7 -7
- package/fesm2015/fundamental-ngx-core-object-status.mjs +7 -7
- package/fesm2015/fundamental-ngx-core-overflow-layout.mjs +31 -31
- package/fesm2015/fundamental-ngx-core-pagination.mjs +13 -13
- package/fesm2015/fundamental-ngx-core-panel.mjs +16 -16
- package/fesm2015/fundamental-ngx-core-popover.mjs +89 -59
- package/fesm2015/fundamental-ngx-core-popover.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-product-switch.mjs +10 -10
- package/fesm2015/fundamental-ngx-core-progress-indicator.mjs +7 -7
- package/fesm2015/fundamental-ngx-core-quick-view.mjs +37 -37
- package/fesm2015/fundamental-ngx-core-radio.mjs +10 -10
- package/fesm2015/fundamental-ngx-core-rating-indicator.mjs +10 -10
- package/fesm2015/fundamental-ngx-core-resizable-card-layout.mjs +10 -10
- package/fesm2015/fundamental-ngx-core-scroll-spy.mjs +7 -7
- package/fesm2015/fundamental-ngx-core-scrollbar.mjs +12 -8
- package/fesm2015/fundamental-ngx-core-scrollbar.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-segmented-button.mjs +7 -7
- package/fesm2015/fundamental-ngx-core-select.mjs +25 -25
- package/fesm2015/fundamental-ngx-core-select.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-shared.mjs +3 -3
- package/fesm2015/fundamental-ngx-core-shellbar.mjs +37 -37
- package/fesm2015/fundamental-ngx-core-side-navigation.mjs +13 -13
- package/fesm2015/fundamental-ngx-core-skeleton.mjs +7 -7
- package/fesm2015/fundamental-ngx-core-slider.mjs +13 -13
- package/fesm2015/fundamental-ngx-core-split-button.mjs +13 -13
- package/fesm2015/fundamental-ngx-core-splitter.mjs +22 -22
- package/fesm2015/fundamental-ngx-core-status-indicator.mjs +7 -7
- package/fesm2015/fundamental-ngx-core-step-input.mjs +10 -10
- package/fesm2015/fundamental-ngx-core-switch.mjs +10 -10
- package/fesm2015/fundamental-ngx-core-table.mjs +52 -52
- package/fesm2015/fundamental-ngx-core-tabs.mjs +68 -55
- package/fesm2015/fundamental-ngx-core-tabs.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-text.mjs +7 -7
- package/fesm2015/fundamental-ngx-core-theming.mjs +7 -7
- package/fesm2015/fundamental-ngx-core-tile.mjs +103 -103
- package/fesm2015/fundamental-ngx-core-time-picker.mjs +10 -10
- package/fesm2015/fundamental-ngx-core-time.mjs +16 -16
- package/fesm2015/fundamental-ngx-core-timeline.mjs +43 -43
- package/fesm2015/fundamental-ngx-core-title.mjs +7 -7
- package/fesm2015/fundamental-ngx-core-token.mjs +16 -16
- package/fesm2015/fundamental-ngx-core-token.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-toolbar.mjs +31 -31
- package/fesm2015/fundamental-ngx-core-tree.mjs +31 -31
- package/fesm2015/fundamental-ngx-core-upload-collection.mjs +37 -37
- package/fesm2015/fundamental-ngx-core-vertical-navigation.mjs +13 -13
- package/fesm2015/fundamental-ngx-core-wizard.mjs +31 -31
- package/fesm2015/fundamental-ngx-core.mjs +4 -4
- package/fesm2020/fundamental-ngx-core-action-bar.mjs +25 -25
- package/fesm2020/fundamental-ngx-core-action-sheet.mjs +26 -26
- package/fesm2020/fundamental-ngx-core-alert.mjs +13 -13
- package/fesm2020/fundamental-ngx-core-avatar-group.mjs +28 -28
- package/fesm2020/fundamental-ngx-core-avatar.mjs +7 -7
- package/fesm2020/fundamental-ngx-core-bar.mjs +28 -28
- package/fesm2020/fundamental-ngx-core-breadcrumb.mjs +13 -13
- package/fesm2020/fundamental-ngx-core-busy-indicator.mjs +10 -10
- package/fesm2020/fundamental-ngx-core-button.mjs +13 -13
- package/fesm2020/fundamental-ngx-core-calendar.mjs +34 -34
- package/fesm2020/fundamental-ngx-core-card.mjs +58 -58
- package/fesm2020/fundamental-ngx-core-carousel.mjs +25 -19
- package/fesm2020/fundamental-ngx-core-carousel.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-checkbox.mjs +10 -10
- package/fesm2020/fundamental-ngx-core-combobox.mjs +22 -22
- package/fesm2020/fundamental-ngx-core-combobox.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-content-density.mjs +37 -37
- package/fesm2020/fundamental-ngx-core-date-picker.mjs +10 -10
- package/fesm2020/fundamental-ngx-core-datetime-picker.mjs +10 -10
- package/fesm2020/fundamental-ngx-core-datetime.mjs +24 -24
- package/fesm2020/fundamental-ngx-core-dialog.mjs +66 -60
- package/fesm2020/fundamental-ngx-core-dialog.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-dynamic-page.mjs +49 -49
- package/fesm2020/fundamental-ngx-core-dynamic-side-content.mjs +13 -13
- package/fesm2020/fundamental-ngx-core-facets.mjs +13 -13
- package/fesm2020/fundamental-ngx-core-feed-input.mjs +16 -16
- package/fesm2020/fundamental-ngx-core-feed-list-item.mjs +22 -22
- package/fesm2020/fundamental-ngx-core-file-uploader.mjs +19 -19
- package/fesm2020/fundamental-ngx-core-fixed-card-layout.mjs +13 -13
- package/fesm2020/fundamental-ngx-core-flexible-column-layout.mjs +7 -7
- package/fesm2020/fundamental-ngx-core-form.mjs +79 -79
- package/fesm2020/fundamental-ngx-core-formatted-text.mjs +7 -7
- package/fesm2020/fundamental-ngx-core-grid-list.mjs +46 -46
- package/fesm2020/fundamental-ngx-core-icon.mjs +7 -7
- package/fesm2020/fundamental-ngx-core-illustrated-message.mjs +19 -19
- package/fesm2020/fundamental-ngx-core-infinite-scroll.mjs +7 -7
- package/fesm2020/fundamental-ngx-core-info-label.mjs +7 -7
- package/fesm2020/fundamental-ngx-core-inline-help.mjs +7 -7
- package/fesm2020/fundamental-ngx-core-input-group.mjs +22 -22
- package/fesm2020/fundamental-ngx-core-layout-grid.mjs +13 -13
- package/fesm2020/fundamental-ngx-core-layout-panel.mjs +31 -31
- package/fesm2020/fundamental-ngx-core-link.mjs +7 -7
- package/fesm2020/fundamental-ngx-core-list.mjs +73 -64
- package/fesm2020/fundamental-ngx-core-list.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-menu.mjs +48 -48
- package/fesm2020/fundamental-ngx-core-menu.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-message-box.mjs +41 -42
- package/fesm2020/fundamental-ngx-core-message-box.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-message-page.mjs +19 -19
- package/fesm2020/fundamental-ngx-core-message-strip.mjs +22 -22
- package/fesm2020/fundamental-ngx-core-message-toast.mjs +16 -16
- package/fesm2020/fundamental-ngx-core-micro-process-flow.mjs +22 -22
- package/fesm2020/fundamental-ngx-core-multi-combobox.mjs +24 -24
- package/fesm2020/fundamental-ngx-core-multi-combobox.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-multi-input.mjs +18 -18
- package/fesm2020/fundamental-ngx-core-multi-input.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-nested-list.mjs +43 -43
- package/fesm2020/fundamental-ngx-core-notification.mjs +64 -64
- package/fesm2020/fundamental-ngx-core-object-identifier.mjs +7 -7
- package/fesm2020/fundamental-ngx-core-object-marker.mjs +7 -7
- package/fesm2020/fundamental-ngx-core-object-number.mjs +7 -7
- package/fesm2020/fundamental-ngx-core-object-status.mjs +7 -7
- package/fesm2020/fundamental-ngx-core-overflow-layout.mjs +31 -31
- package/fesm2020/fundamental-ngx-core-pagination.mjs +13 -13
- package/fesm2020/fundamental-ngx-core-panel.mjs +16 -16
- package/fesm2020/fundamental-ngx-core-popover.mjs +89 -59
- package/fesm2020/fundamental-ngx-core-popover.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-product-switch.mjs +10 -10
- package/fesm2020/fundamental-ngx-core-progress-indicator.mjs +7 -7
- package/fesm2020/fundamental-ngx-core-quick-view.mjs +37 -37
- package/fesm2020/fundamental-ngx-core-radio.mjs +10 -10
- package/fesm2020/fundamental-ngx-core-rating-indicator.mjs +10 -10
- package/fesm2020/fundamental-ngx-core-resizable-card-layout.mjs +10 -10
- package/fesm2020/fundamental-ngx-core-scroll-spy.mjs +7 -7
- package/fesm2020/fundamental-ngx-core-scrollbar.mjs +12 -8
- package/fesm2020/fundamental-ngx-core-scrollbar.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-segmented-button.mjs +7 -7
- package/fesm2020/fundamental-ngx-core-select.mjs +25 -25
- package/fesm2020/fundamental-ngx-core-select.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-shared.mjs +3 -3
- package/fesm2020/fundamental-ngx-core-shellbar.mjs +37 -37
- package/fesm2020/fundamental-ngx-core-side-navigation.mjs +13 -13
- package/fesm2020/fundamental-ngx-core-skeleton.mjs +7 -7
- package/fesm2020/fundamental-ngx-core-slider.mjs +13 -13
- package/fesm2020/fundamental-ngx-core-split-button.mjs +13 -13
- package/fesm2020/fundamental-ngx-core-splitter.mjs +22 -22
- package/fesm2020/fundamental-ngx-core-status-indicator.mjs +7 -7
- package/fesm2020/fundamental-ngx-core-step-input.mjs +10 -10
- package/fesm2020/fundamental-ngx-core-switch.mjs +10 -10
- package/fesm2020/fundamental-ngx-core-table.mjs +52 -52
- package/fesm2020/fundamental-ngx-core-tabs.mjs +68 -55
- package/fesm2020/fundamental-ngx-core-tabs.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-text.mjs +7 -7
- package/fesm2020/fundamental-ngx-core-theming.mjs +7 -7
- package/fesm2020/fundamental-ngx-core-tile.mjs +103 -103
- package/fesm2020/fundamental-ngx-core-time-picker.mjs +10 -10
- package/fesm2020/fundamental-ngx-core-time.mjs +16 -16
- package/fesm2020/fundamental-ngx-core-timeline.mjs +43 -43
- package/fesm2020/fundamental-ngx-core-title.mjs +7 -7
- package/fesm2020/fundamental-ngx-core-token.mjs +16 -16
- package/fesm2020/fundamental-ngx-core-token.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-toolbar.mjs +31 -31
- package/fesm2020/fundamental-ngx-core-tree.mjs +31 -31
- package/fesm2020/fundamental-ngx-core-upload-collection.mjs +37 -37
- package/fesm2020/fundamental-ngx-core-vertical-navigation.mjs +13 -13
- package/fesm2020/fundamental-ngx-core-wizard.mjs +31 -31
- package/fesm2020/fundamental-ngx-core.mjs +4 -4
- package/fundamental-ngx-core-v0.43.0-rc.21.tgz +0 -0
- package/list/list-item/list-item.component.d.ts +5 -1
- package/package.json +11 -11
- package/popover/popover-body/popover-body.component.d.ts +7 -2
- package/popover/popover-service/popover.service.d.ts +4 -0
- package/popover/popover.component.d.ts +2 -2
- package/schematics/add-dependencies/index.js +6 -6
- package/scrollbar/scrollbar.directive.d.ts +2 -0
- package/tabs/tab-list.component.d.ts +3 -1
- package/tabs/tab-panel/tab-panel.component.d.ts +2 -0
- package/fundamental-ngx-core-v0.43.0-rc.2.tgz +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fundamental-ngx-core-select.mjs","sources":["../../../../libs/core/src/lib/select/select.interface.ts","../../../../libs/core/src/lib/select/select-key-manager.service.ts","../../../../libs/core/src/lib/select/option/option.component.ts","../../../../libs/core/src/lib/select/option/option.component.html","../../../../libs/core/src/lib/select/select-mobile/select-mobile.component.ts","../../../../libs/core/src/lib/select/select-mobile/select-mobile.component.html","../../../../libs/core/src/lib/select/select-mobile/select-mobile.module.ts","../../../../libs/core/src/lib/select/select.component.ts","../../../../libs/core/src/lib/select/select.component.html","../../../../libs/core/src/lib/select/deprecated-select-compact.directive.ts","../../../../libs/core/src/lib/select/select.module.ts","../../../../libs/core/src/lib/select/fundamental-ngx-core-select.ts"],"sourcesContent":["import { EventEmitter, InjectionToken, QueryList, ElementRef } from '@angular/core';\n\nimport { OptionComponent } from './option/option.component';\nimport { MobileMode } from '@fundamental-ngx/core/mobile-mode';\nimport { LiveAnnouncer } from '@angular/cdk/a11y';\nimport { MobileModeConfig } from '@fundamental-ngx/core/mobile-mode';\n\nexport const SELECT_COMPONENT = new InjectionToken<SelectInterface>('SelectInterface');\n\n/**\n * Select Interface to have typing and avoid circular dependency between\n * SelectComponent <==> SelectMobileComponent\n */\nexport interface SelectInterface extends MobileMode {\n typeaheadDebounceInterval: number;\n selected: OptionComponent;\n mobileConfig: MobileModeConfig;\n _options: QueryList<any>;\n _destroy: any;\n _optionPanel: ElementRef;\n _isOpen: boolean;\n _calculatedMaxHeight: number;\n _liveAnnouncer: LiveAnnouncer;\n\n isOpenChange: EventEmitter<boolean>;\n valueChange: EventEmitter<any>;\n\n close(forceClose?: boolean): void;\n open(): void;\n focus(): void;\n blur(): void;\n _isRtl(): boolean;\n _getItemHeight(): number;\n _getOptionScrollPosition(optionIndex: number, optionHeight: number, currentScrollPosition: number): void;\n}\n","import { Injectable } from '@angular/core';\nimport { takeUntil } from 'rxjs/operators';\nimport { ActiveDescendantKeyManager } from '@angular/cdk/a11y';\nimport { KeyUtil } from '@fundamental-ngx/cdk/utils';\nimport { UP_ARROW, DOWN_ARROW, ENTER, SPACE, HOME, TAB, END, ESCAPE, hasModifierKey } from '@angular/cdk/keycodes';\n\nimport { SelectInterface } from './select.interface';\nimport { OptionsInterface } from './options.interface';\n\n@Injectable()\nexport class SelectKeyManagerService {\n /** @hidden */\n _component: SelectInterface;\n\n /** @hidden */\n _keyManager: ActiveDescendantKeyManager<OptionsInterface>;\n\n /**\n * Sets up a key manager to listen to keyboard events on the overlay panel.\n * @hidden\n */\n _initKeyManager(): void {\n this._keyManager = new ActiveDescendantKeyManager<OptionsInterface>(this._component._options)\n .withTypeAhead(this._component.typeaheadDebounceInterval)\n .withVerticalOrientation()\n .withHorizontalOrientation(this._component._isRtl() ? 'rtl' : 'ltr')\n .withAllowedModifierKeys(['shiftKey']);\n\n this._keyManager.tabOut.pipe(takeUntil(this._component._destroy)).subscribe(() => {\n // tab focus fix for mobile\n if (!this._component.mobile) {\n this._component.focus();\n this._component.close();\n }\n });\n\n this._keyManager.change.pipe(takeUntil(this._component._destroy)).subscribe(() => {\n if (this._component._isOpen && this._component._optionPanel) {\n this._scrollActiveOptionIntoView();\n } else if (!this._component._isOpen && this._keyManager.activeItem) {\n this._keyManager.activeItem._selectViaInteraction();\n }\n });\n }\n\n /** @hidden */\n _scrollActiveOptionIntoView(): void {\n const activeOptionIndex = this._keyManager.activeItemIndex || 0;\n this._component._optionPanel.nativeElement.scrollTop = this._component._getOptionScrollPosition(\n activeOptionIndex,\n this._component._getItemHeight(),\n this._component._optionPanel.nativeElement.scrollTop\n );\n }\n\n /**\n * Handles keyboard events while the select is closed.\n * @hidden\n */\n _handleClosedKeydown(event: KeyboardEvent): void {\n const isOpenKey = KeyUtil.isKeyCode(event, [ENTER, SPACE]);\n const manager = this._keyManager;\n\n // Open the select on ALT + arrow key to match the native <select>\n if (!manager.isTyping() && isOpenKey && !hasModifierKey(event)) {\n // prevents the page from scrolling down when pressing space\n event.preventDefault();\n this._component.open();\n } else {\n const previouslySelectedOption = this._component.selected;\n\n if (KeyUtil.isKeyCode(event, [HOME, END])) {\n if (KeyUtil.isKeyCode(event, HOME)) {\n manager.setFirstItemActive();\n } else {\n manager.setLastItemActive();\n }\n event.preventDefault();\n }\n\n const selectedOption = this._component.selected;\n\n // a11y Since the value has changed, we need to announce it.\n if (selectedOption && previouslySelectedOption !== selectedOption) {\n this._component._liveAnnouncer.announce((selectedOption as OptionsInterface).viewValue, 10000);\n }\n manager.onKeydown(event);\n }\n }\n\n /**\n * Handles keyboard events when the selected is open.\n *\n * @hidden\n */\n _handleOpenKeydown(event: KeyboardEvent): void {\n const manager = this._keyManager;\n const isArrowKey = KeyUtil.isKeyCode(event, [UP_ARROW, DOWN_ARROW]);\n const isTyping = manager.isTyping();\n\n if (KeyUtil.isKeyCode(event, [HOME, END])) {\n event.preventDefault();\n if (KeyUtil.isKeyCode(event, HOME)) {\n manager.setFirstItemActive();\n } else {\n manager.setLastItemActive();\n }\n } else if ((isArrowKey && event.altKey) || KeyUtil.isKeyCode(event, [ESCAPE])) {\n // Close the select on ALT + arrow key to match the native <select>\n event.preventDefault();\n this._component.blur();\n this._component.close();\n // When user is typing do nothing,\n // because the typing sequence can include the space key.\n } else if (\n !isTyping &&\n KeyUtil.isKeyCode(event, [ENTER, SPACE]) &&\n manager.activeItem &&\n !hasModifierKey(event)\n ) {\n event.preventDefault();\n manager.activeItem._selectViaInteraction();\n this._component.blur();\n } else if (!isTyping && KeyUtil.isKeyCode(event, [TAB]) && this._component.mobile) {\n event.preventDefault();\n } else {\n manager.onKeydown(event);\n }\n }\n}\n","import {\n AfterViewChecked,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n EventEmitter,\n HostBinding,\n Input,\n OnDestroy,\n Output,\n QueryList,\n ViewEncapsulation\n} from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { FocusableOption, FocusOrigin } from '@angular/cdk/a11y';\nimport { ENTER, hasModifierKey, SPACE } from '@angular/cdk/keycodes';\n\nimport { ListTitleDirective } from '@fundamental-ngx/core/list';\n\nimport { KeyUtil } from '@fundamental-ngx/cdk/utils';\nimport { startWith } from 'rxjs/operators';\nimport { OptionsInterface } from '../options.interface';\n\nlet optionUniqueId = 0;\n\n/**\n * Event object emitted by OptionComponent when\n * selected or deselected.\n */\nexport class FdOptionSelectionChange {\n /**\n * Reference to the OptionComponent that emitted the event.\n * @param source The option that emitted the event.\n * @param isUserInput Whether the change in the option's value was a result of a user interaction.\n */\n constructor(\n /** Reference to the option that emitted the event. */\n readonly source: OptionComponent,\n /** Whether the change in the option's value was a result of a user action. */\n readonly isUserInput = false\n ) {}\n}\n\n/**\n * Used to represent an option of the select component.\n */\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[fd-option], fd-option',\n templateUrl: './option.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'fd-list__item',\n '[attr.aria-disabled]': 'disabled',\n '[attr.aria-selected]': 'selected',\n '[class.is-focus]': 'active',\n '[attr.id]': 'id',\n '[tabindex]': '-1',\n role: 'option',\n '(click)': '_selectViaInteraction()',\n '(keydown)': '_handleKeydown($event)'\n },\n styles: [\n `\n .fd-list__item[aria-disabled='true'],\n .fd-list__item.is-disabled,\n .fd-list__item:disabled {\n opacity: 0.4;\n cursor: not-allowed;\n }\n\n .fd-list__item:disabled:focus {\n outline: none;\n }\n `\n ]\n})\nexport class OptionComponent implements AfterViewChecked, OnDestroy, FocusableOption, OptionsInterface {\n /** Option id attribute */\n @Input()\n id = `fd-option-${optionUniqueId++}`;\n\n /** Value of the option. Similar to how a native select operates. */\n @Input()\n value: any;\n\n /** Whether to disable this option specifically. */\n @Input()\n disabled = false;\n\n /**\n * Emits event when option is selected or deselected.\n */\n @Output()\n readonly selectionChange = new EventEmitter<FdOptionSelectionChange>();\n\n /** @hidden */\n @HostBinding('class.is-selected')\n selected = false;\n\n /** @Hidden */\n @ContentChildren(ListTitleDirective)\n _listTitleDirectives: QueryList<ListTitleDirective> | undefined;\n\n /** @hidden */\n _renderer: 'plain' | 'title' = 'title';\n\n /**\n * The displayed value of the option. It shows the selected option in the select's trigger.\n */\n get viewValue(): string {\n return (this._elementRef.nativeElement.textContent || '').trim();\n }\n\n /** used in components like autocomplete where focus must remain on the input.*/\n get active(): boolean {\n return this._active;\n }\n\n /** @hidden */\n readonly _stateChanges = new Subject<void>();\n\n /** @hidden */\n private _mostRecentViewValue = '';\n\n /** @hidden */\n private _active = false;\n\n /** @hidden */\n constructor(private _elementRef: ElementRef, private _changeDetectorRef: ChangeDetectorRef) {}\n\n /** @Hidden */\n ngAfterViewInit(): void {\n this._listTitleDirectives?.changes.pipe(startWith(null)).subscribe(() => {\n const directivesLength = this._listTitleDirectives?.length ?? 0;\n this._renderer = directivesLength > 0 ? 'plain' : 'title';\n this._changeDetectorRef.detectChanges();\n });\n }\n\n /**\n * @hidden\n * Since select components could be using the option's label to display the selected values\n * and they don't have a way of knowing if the option's label has changed\n * we have to check for changes in the DOM ourselves and dispatch an event\n */\n ngAfterViewChecked(): void {\n if (this.selected) {\n const viewValue = this.viewValue;\n\n if (viewValue !== this._mostRecentViewValue) {\n this._mostRecentViewValue = viewValue;\n this._stateChanges.next();\n }\n }\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this._stateChanges.complete();\n }\n\n /** @hidden\n * This method sets display styles on the option to make it appear\n * active. This is used by the ActiveDescendantKeyManager so key\n * events will display the proper options as active on arrow key events.\n */\n setActiveStyles(): void {\n if (!this._active) {\n this._active = true;\n this._changeDetectorRef.markForCheck();\n }\n }\n\n /** @hidden\n * This method removes display styles on the option that made it appear\n * active. This is used by the ActiveDescendantKeyManager so key\n * events will display the proper options as active on arrow key events.\n */\n setInactiveStyles(): void {\n if (this._active) {\n this._active = false;\n this._changeDetectorRef.markForCheck();\n }\n }\n\n /** @hidden\n * Focuses the element. */\n focus(_origin?: FocusOrigin, options?: FocusOptions): void {\n const element = this._elementRef.nativeElement;\n\n if (typeof element.focus === 'function') {\n element.focus(options);\n }\n }\n\n /** @hidden\n * option value\n */\n getLabel(): string {\n return this.viewValue;\n }\n\n /** @hidden\n * Returns HTMLElement representation of the component. */\n _getHtmlElement(): HTMLElement {\n return this._elementRef.nativeElement as HTMLElement;\n }\n\n /** Selects the option.\n * * @hidden\n */\n _select(): void {\n if (!this.selected) {\n this.selected = true;\n this._changeDetectorRef.markForCheck();\n this.selectionChange.emit(new FdOptionSelectionChange(this, false));\n }\n }\n\n /** @hidden\n * Deselects the option.\n */\n _deselect(): void {\n if (this.selected) {\n this.selected = false;\n this._changeDetectorRef.markForCheck();\n this.selectionChange.emit(new FdOptionSelectionChange(this, false));\n }\n }\n\n /**\n * Ensures the option is selected when activated from the keyboard.\n *\n * @hidden\n */\n _handleKeydown(event: KeyboardEvent): void {\n if (KeyUtil.isKeyCode(event, [ENTER, SPACE]) && !hasModifierKey(event)) {\n this._selectViaInteraction();\n event.preventDefault();\n }\n }\n\n /** @hidden */\n _selectViaInteraction(): void {\n if (!this.disabled) {\n this.selected = true;\n this._changeDetectorRef.markForCheck();\n this.selectionChange.emit(new FdOptionSelectionChange(this, true));\n }\n }\n}\n","<span fd-list-title *ngIf=\"_renderer === 'title'; else plainRenderer\">\n <ng-template *ngTemplateOutlet=\"plainRenderer\"></ng-template>\n</span>\n<ng-template #plainRenderer>\n <ng-content></ng-content>\n</ng-template>\n<ng-content select=\"[secondary]\"></ng-content>\n","import {\n AfterViewInit,\n Component,\n ElementRef,\n Inject,\n OnDestroy,\n OnInit,\n Optional,\n TemplateRef,\n HostListener,\n ViewChild,\n ChangeDetectionStrategy\n} from '@angular/core';\nimport { Subscription } from 'rxjs';\n\nimport { SELECT_COMPONENT, SelectInterface } from '../select.interface';\nimport { DialogService } from '@fundamental-ngx/core/dialog';\nimport { KeyUtil } from '@fundamental-ngx/cdk/utils';\nimport {\n MOBILE_MODE_CONFIG,\n MobileModeConfigToken,\n MobileModeBase,\n MobileModeControl\n} from '@fundamental-ngx/core/mobile-mode';\nimport { ESCAPE } from '@angular/cdk/keycodes';\n\n/**\n * This component provides extended mobile support for Select component to render list of option since full screen\n * dialog.\n */\n@Component({\n selector: 'fd-select-mobile',\n templateUrl: './select-mobile.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class SelectMobileComponent extends MobileModeBase<SelectInterface> implements OnInit, AfterViewInit, OnDestroy {\n /** @hidden\n * from mobile class can not prefix _,\n * to avoid build issues\n */\n childContent: TemplateRef<any> | null = null;\n\n /** @hidden */\n @ViewChild('dialogTemplate')\n _dialogTemplate: TemplateRef<any>;\n\n /** @hidden */\n private _subscriptions = new Subscription();\n\n /** @hidden */\n @HostListener('keydown', ['$event'])\n onItemKeydown(event: KeyboardEvent): void {\n if (event && KeyUtil.isKeyCode(event, [ESCAPE])) {\n this._component.close(true);\n }\n }\n\n /** @hidden */\n constructor(\n _elementRef: ElementRef,\n _dialogService: DialogService,\n @Inject(SELECT_COMPONENT) _selectComponent: SelectInterface,\n @Optional() @Inject(MOBILE_MODE_CONFIG) mobileModes: MobileModeConfigToken[]\n ) {\n super(_elementRef, _dialogService, _selectComponent, MobileModeControl.SELECT, mobileModes);\n }\n\n /** @hidden */\n ngOnInit(): void {\n this._listenOnSelectOpenChange();\n }\n\n /** @hidden */\n ngAfterViewInit(): void {\n this._openDialog();\n this.dialogRef.hide(true);\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this.dialogRef.close();\n super.onDestroy();\n this._subscriptions.unsubscribe();\n }\n\n /**\n * Only when we have Approve.\n * @hidden\n */\n _cancel(): void {\n this._component.close(true);\n }\n\n /** @hidden */\n _approve(): void {\n this._component.close(true);\n }\n\n /** @hidden Hide/Show the Dialog when Select Open/Close*/\n private _listenOnSelectOpenChange(): void {\n this._subscriptions.add(\n this._component.isOpenChange.subscribe((isOpen) => {\n this._elementRef.nativeElement.blur();\n this.dialogRef.hide(!isOpen);\n })\n );\n }\n\n /** @hidden */\n private _openDialog(): void {\n this.dialogRef = this._dialogService.open(this._dialogTemplate, {\n ...this.dialogConfig,\n mobile: true,\n disablePaddings: true,\n backdropClickCloseable: false,\n container: this._elementRef.nativeElement,\n ariaLabelledBy: 'fd-dialog-header'\n });\n }\n}\n","<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #dialogTemplate>\n <fd-dialog tabindex=\"-1\" [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\">\n <fd-dialog-header>\n <h1 id=\"fd-dialog-header\" *ngIf=\"mobileConfig.title\" fd-title>{{ mobileConfig.title }}</h1>\n <button\n role=\"button\"\n *ngIf=\"mobileConfig.hasCloseButton\"\n aria-label=\"close\"\n fd-dialog-close-button\n [mobile]=\"true\"\n (click)=\"_cancel()\"\n ></button>\n </fd-dialog-header>\n\n <fd-dialog-body>\n <ng-container *ngTemplateOutlet=\"childContent\"></ng-container>\n </fd-dialog-body>\n\n <fd-dialog-footer *ngIf=\"mobileConfig.approveButtonText || mobileConfig.cancelButtonText\">\n <fd-button-bar\n *ngIf=\"mobileConfig?.approveButtonText\"\n fdType=\"emphasized\"\n [label]=\"mobileConfig.approveButtonText!\"\n (click)=\"_approve()\"\n >\n </fd-button-bar>\n <fd-button-bar\n *ngIf=\"mobileConfig?.cancelButtonText\"\n [label]=\"mobileConfig.cancelButtonText!\"\n (click)=\"_cancel()\"\n >\n </fd-button-bar>\n </fd-dialog-footer>\n </fd-dialog>\n</ng-template>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { ButtonModule } from '@fundamental-ngx/core/button';\nimport { DialogModule } from '@fundamental-ngx/core/dialog';\nimport { DynamicComponentService } from '@fundamental-ngx/cdk/utils';\nimport { SelectMobileComponent } from './select-mobile.component';\n\n@NgModule({\n declarations: [SelectMobileComponent],\n imports: [CommonModule, DialogModule, ButtonModule],\n exports: [SelectMobileComponent],\n providers: [DynamicComponentService]\n})\nexport class SelectMobileModule {}\n","import {\n AfterContentInit,\n AfterViewInit,\n Attribute,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n EventEmitter,\n HostListener,\n Injector,\n Input,\n isDevMode,\n OnChanges,\n OnDestroy,\n OnInit,\n Optional,\n Output,\n QueryList,\n Self,\n SimpleChanges,\n TemplateRef,\n ViewChild,\n ViewContainerRef,\n ViewEncapsulation\n} from '@angular/core';\nimport { ControlValueAccessor, NgControl } from '@angular/forms';\nimport { LiveAnnouncer } from '@angular/cdk/a11y';\nimport { CdkConnectedOverlay } from '@angular/cdk/overlay';\nimport { SelectionModel } from '@angular/cdk/collections';\nimport { defer, merge, Observable, Subject, Subscription } from 'rxjs';\nimport { startWith, switchMap, takeUntil } from 'rxjs/operators';\n\nimport { PopoverFillMode } from '@fundamental-ngx/core/shared';\nimport { DynamicComponentService, KeyUtil, ModuleDeprecation, Nullable, RtlService } from '@fundamental-ngx/cdk/utils';\nimport { MobileModeConfig } from '@fundamental-ngx/core/mobile-mode';\nimport { FormItemControl, registerFormItemControl } from '@fundamental-ngx/core/form';\n\nimport { SELECT_COMPONENT, SelectInterface } from './select.interface';\nimport { SelectKeyManagerService } from './select-key-manager.service';\nimport { FdOptionSelectionChange, OptionComponent } from './option/option.component';\nimport { SelectMobileComponent } from './select-mobile/select-mobile.component';\nimport { SelectMobileModule } from './select-mobile/select-mobile.module';\nimport { ContentDensityObserver, contentDensityObserverProviders } from '@fundamental-ngx/core/content-density';\nimport { ENTER, ESCAPE, SPACE } from '@angular/cdk/keycodes';\nimport { FormStates } from '@fundamental-ngx/cdk/forms';\n\nlet selectUniqueId = 0;\n\n/** @deprecated use `import { FormStates } from \"@fundamental-ngx/cdk/forms\"` instead */\nexport type SelectControlState = FormStates;\n\nconst SELECT_HEADER_IDENTIFIER = '.fd-list__group-header';\n\nexport const SELECT_PANEL_MAX_HEIGHT = 250;\n\n/** The height of the select items in `rem` units. */\nexport const SELECT_ITEM_HEIGHT_EM = 4;\n\n/**\n * Select component intended to mimic\n * the behaviour of the native select element.\n */\n@Component({\n selector: 'fd-select',\n templateUrl: './select.component.html',\n styleUrls: ['./select.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'fd-select',\n '[class.fd-select--inline]': 'inline',\n // @deprecated leaving class fd-select-custom-class for backwards compatibility\n '[class.fd-select-custom-class]': 'inline',\n // @deprecated leaving class fd-select-custom-class--mobile for backwards compatibility\n '[class.fd-select-custom-class--mobile]': 'mobile'\n },\n providers: [\n {\n provide: SELECT_COMPONENT,\n useExisting: SelectComponent\n },\n registerFormItemControl(SelectComponent),\n SelectKeyManagerService,\n contentDensityObserverProviders()\n ]\n})\nexport class SelectComponent<T = any>\n implements\n ControlValueAccessor,\n SelectInterface,\n OnInit,\n AfterViewInit,\n AfterContentInit,\n OnChanges,\n OnDestroy,\n FormItemControl\n{\n /** Id of the control. */\n @Input()\n controlId = `fd-select-${selectUniqueId++}`;\n\n /** Holds the control state of select */\n @Input()\n state: Nullable<FormStates>;\n\n /** Whether the select component should be displayed in mobile mode. */\n @Input()\n mobile = false;\n\n /** Holds the message with respect to state */\n @Input()\n stateMessage: Nullable<string>;\n\n /** Whether the select component is disabled. */\n @Input()\n disabled = false;\n\n /** If it is mandatory field */\n @Input()\n required = false;\n\n /** Whether the select component is readonly. */\n @Input()\n readonly = false;\n\n /** Placeholder for the select. Appears in the triggerbox if no option is selected. */\n @Input()\n placeholder: string;\n\n /** Value of the select control. */\n @Input()\n set value(newValue: any) {\n if (newValue !== this._internalValue) {\n this.writeValue(newValue);\n this._internalValue = newValue;\n }\n }\n get value(): any {\n return this._internalValue;\n }\n\n /** @deprecated\n * it is handled internally by controlTemplate != null|undefined is\n * Equal as extendedBodyTemplate as true.\n * Whether option components contain more than basic text. */\n @Input()\n extendedBodyTemplate = false;\n\n /** Max height of the popover. Any overflowing elements will be accessible through scrolling. */\n @Input()\n maxHeight: string;\n\n /** Glyph to add icon in the select component. */\n @Input()\n glyph = 'slim-arrow-down';\n\n /** Whether close the popover on outside click. */\n @Input()\n closeOnOutsideClick = true;\n\n /**\n * Preset options for the Select body width, whatever is chosen, the body has a 600px limit.\n * * `at-least` will apply a minimum width to the body equivalent to the width of the control. - Default\n * * `equal` will apply a width to the body equivalent to the width of the control.\n * * 'fit-content' will apply width needed to properly display items inside, independent of control.\n */\n @Input()\n fillControlMode: PopoverFillMode = 'at-least';\n\n /** Custom template used to build control body. */\n @Input()\n controlTemplate: TemplateRef<any> | undefined;\n\n /** The element to which the popover should be appended. */\n @Input()\n appendTo: ElementRef;\n\n /**\n * If the option should be unselected and value changed to undefined, when the current value is\n * not presented in option array. Switching it off can be handy, when there is some delay between providing\n * possible options and chosen value.\n */\n @Input()\n unselectMissingOption = true;\n\n /** Time to wait in milliseconds after the last keydown before focusing or selecting option based on alphanumeric keys. */\n @Input()\n typeaheadDebounceInterval = 250;\n\n /** Binds to control aria-labelledBy attribute */\n @Input()\n ariaLabelledBy: Nullable<string>;\n\n /** Sets control aria-label attribute value */\n @Input()\n ariaLabel: Nullable<string>;\n\n /** Select Input Mobile Configuration */\n @Input()\n mobileConfig: MobileModeConfig = { hasCloseButton: true };\n\n /** Should select be inlined. */\n @Input()\n inline = true;\n\n /** Additional classname for the select control element. */\n @Input()\n selectControlClass: Nullable<string>;\n\n /** Additional classname for the select dropdown button element. */\n @Input()\n selectDropdownButtonClass: Nullable<string>;\n\n /** Event emitted when the popover open state changes. */\n @Output()\n readonly isOpenChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n\n /** Event emitted when the selected value of the select changes. */\n @Output()\n readonly valueChange = new EventEmitter<T>();\n\n /** @hidden */\n @ContentChildren(OptionComponent, { descendants: true })\n _options: QueryList<OptionComponent>;\n\n /** @hidden */\n @ViewChild('selectControl')\n _controlElementRef: ElementRef<HTMLDivElement>;\n\n /** Reference to element containing list of options */\n @ViewChild('selectOptionsListTemplate')\n selectOptionsListTemplate: TemplateRef<any>;\n\n /** @hidden\n * Reference to root element for the mobile mode dialog */\n @ViewChild('dialogContainer')\n _dialogContainerElementRef: ElementRef;\n\n /**\n * Overlay pane containing the options.\n * @hidden\n */\n @ViewChild(CdkConnectedOverlay)\n _overlayDir: CdkConnectedOverlay;\n\n /** @hidden\n * Referent to the option;s container\n */\n @ViewChild('optionPanel', { read: ElementRef })\n _optionPanel: ElementRef;\n\n /** Whether popover is opened\n * @hidden\n */\n _isOpen = false;\n\n /** @hidden */\n _tabIndex: number;\n\n /** @hidden */\n _liveAnnouncer: LiveAnnouncer;\n\n /** @hidden */\n _internalValue: any;\n\n /** @hidden */\n _calculatedMaxHeight: number;\n\n /** @hidden */\n _rtl = false;\n\n /** @hidden */\n _selectionModel: SelectionModel<OptionComponent>;\n\n /**\n * @hidden\n * Triggers when component is destroyed\n */\n readonly _destroy = new Subject<void>();\n\n /** @hidden */\n get _selectControlClass(): string {\n return [this.state ? `is-${this.state}` : '', this.selectControlClass]\n .filter((className) => !!className)\n .join(' ');\n }\n\n /**\n * @hidden\n * Combined stream of all of the child options' change events.\n */\n readonly _optionSelectionChanges: Observable<FdOptionSelectionChange> = defer(() => {\n const _options = this._options;\n\n return _options?.changes.pipe(\n startWith(_options),\n switchMap(() => merge(..._options.map((option) => option.selectionChange)))\n );\n });\n\n /** @hidden */\n private _controlElemFontSize = 0;\n\n /** @hidden */\n private _focused = false;\n\n /**\n * @hidden\n * Stored calculated maxHeight from Option Panel\n */\n private _maxHeight: number;\n\n /** @hidden */\n private _subscriptions: Subscription = new Subscription();\n\n /** @hidden */\n @HostListener('window:resize')\n _resizeScrollHandler(): void {\n this._updateCalculatedHeight();\n }\n\n /** @hidden */\n setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled;\n this._tabIndex = this.disabled ? -1 : 0;\n }\n\n /** Selected option. */\n get selected(): OptionComponent {\n return this._selectionModel.selected[0];\n }\n\n /** Retrieves selected value if any. */\n get triggerValue(): string {\n const emptyValue = ' ';\n if (this._selectionModel.isEmpty()) {\n return this.placeholder || emptyValue;\n }\n return this.selected.viewValue || this.placeholder || emptyValue;\n }\n\n /** equal to close\n * Tells the OptionList if it's closable by simply selecting the item either with CLICK | SPACE | ENTER.\n * When we are in mobile mode (mobile=true) and have we have enabled confirmation buttons then we\n * dont close option list. We close only after we hit confirm button.\n */\n get canClose(): boolean {\n return !(this.mobile && this.mobileConfig.approveButtonText);\n }\n\n /** Whether control can be interacted with */\n get isInteractive(): boolean {\n return !(this.readonly || this.disabled);\n }\n\n /**\n * Check if we can emit a value. They are 3 different paths where we can emit value:\n * - We are not in mobile mode [mobile]=false\n * - We are in mobile mode [mobile]=true and mobile dialog as just close X button to dismiss it\n * - We are in mobile mode [mobile]=true and mobile dialog has ApproveButton available and\n * dialog is closed. (meaning we already clicked this button)\n */\n get canEmitValueChange(): boolean {\n return (\n !this.mobile ||\n (this.mobile &&\n // Approve + Cancel\n !!this.mobileConfig.approveButtonText &&\n !this._isOpen) ||\n // CloseButton. Emits when you click on the option item\n (!!this.mobileConfig.hasCloseButton && !!this.mobileConfig.approveButtonText === false)\n );\n }\n\n /** @hidden */\n _compareWith = (o1: any, o2: any): boolean => o1 === o2;\n\n /** Function to compare the option values with the selected values. */\n @Input()\n set compareWith(fn: (o1: any, o2: any) => boolean) {\n if (typeof fn !== 'function') {\n throw Error('compareWith` must be a function.');\n }\n this._compareWith = fn;\n if (this._selectionModel) {\n // A different comparator means the selection could change.\n this._initializeSelection();\n }\n }\n get compareWith(): (o1: any, o2: any) => boolean {\n return this._compareWith;\n }\n\n /** @hidden */\n get focused(): boolean {\n return this._focused || this._isOpen;\n }\n\n /** @hidden */\n get calculatedMaxHeight(): number {\n return this._maxHeight || this._calculatedMaxHeight;\n }\n\n /** @hidden */\n constructor(\n @Attribute('tabindex') _tabIndex: string,\n @Optional() private readonly _rtlService: RtlService,\n private readonly _keyManagerService: SelectKeyManagerService,\n private readonly _changeDetectorRef: ChangeDetectorRef,\n private readonly _viewContainerRef: ViewContainerRef,\n @Optional() private readonly _dynamicComponentService: DynamicComponentService,\n @Optional() @Self() private readonly ngControl: NgControl,\n @Optional() private readonly _injector: Injector,\n readonly _contentDensityObserver: ContentDensityObserver\n ) {\n if (this.ngControl) {\n this.ngControl.valueAccessor = this;\n }\n this._tabIndex = parseInt(_tabIndex, 10) || 0;\n }\n\n /** @hidden */\n ngOnInit(): void {\n this._initializeCommonBehavior();\n }\n\n /** @hidden */\n ngAfterViewInit(): void {\n this._keyManagerService._initKeyManager();\n this._setupMobileMode();\n }\n\n /** @hidden */\n ngAfterContentInit(): void {\n this._registerEventsAfterContentInit();\n }\n\n /** @hidden */\n ngOnChanges(changes: SimpleChanges): void {\n if (changes['typeaheadDebounceInterval'] && this._keyManagerService._keyManager) {\n this._keyManagerService._keyManager.withTypeAhead(this.typeaheadDebounceInterval);\n } else if (changes['disabled']) {\n this._tabIndex = this.disabled ? -1 : 0;\n }\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this._subscriptions.unsubscribe();\n this._cleanupCommonBehavior();\n }\n\n /** @hidden */\n onChange: (value: any) => void = () => {};\n\n /** @hidden */\n onTouched = (): void => {};\n\n /** Toggles the open state of the select. */\n @HostListener('click')\n toggle(): void {\n this._isOpen ? this.close() : this.open();\n }\n\n /** Opens the select popover body. */\n open(): void {\n if (this.disabled || this.readonly || !this._options || !this._getItemCount() || this._isOpen) {\n return;\n }\n this._isOpen = true;\n\n this._controlElemFontSize = parseInt(\n getComputedStyle(this._controlElementRef.nativeElement).fontSize || '0',\n 10\n );\n\n this._keyManagerService._keyManager.withHorizontalOrientation(null);\n this._highlightCorrectOption();\n this._changeDetectorRef.markForCheck();\n\n this._controlElementRef.nativeElement.focus();\n\n this.isOpenChange.emit(true);\n }\n\n /** @hidden */\n close(forceClose: boolean = false): void {\n if (this._isOpen || forceClose) {\n this._isOpen = false;\n this._keyManagerService._keyManager.withHorizontalOrientation(this._isRtl() ? 'rtl' : 'ltr');\n this._changeDetectorRef.markForCheck();\n this.onTouched();\n\n this.isOpenChange.emit(false);\n }\n }\n\n /** Focuses select control. */\n focus(): void {\n (this._controlElementRef?.nativeElement as HTMLElement).focus();\n }\n\n /** Blurs select control. */\n blur(): void {\n (this._controlElementRef?.nativeElement as HTMLElement).blur();\n }\n\n /** @hidden */\n registerOnChange(fn: (value: any) => void): void {\n this.onChange = fn;\n }\n\n /** @hidden */\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n /** @hidden from ControlValue Accessor */\n writeValue(value: any): void {\n if (this._options) {\n this._setSelectionByValue(value);\n }\n }\n\n /** @hidden */\n _setSelectionByValue(value: any | any[]): void {\n this._selectionModel.clear();\n const correspondingOption = this._selectValue(value);\n\n // Shift focus to the active item. Note that we shouldn't do this in multiple\n // mode, because we don't know what option the user interacted with last.\n if (correspondingOption) {\n this._keyManagerService._keyManager.setActiveItem(correspondingOption);\n } else if (!this._isOpen) {\n // Otherwise reset the highlighted option. Note that we only want to do this while\n // closed, because doing it while open can shift the user's focus unnecessarily.\n this._keyManagerService._keyManager.setActiveItem(-1);\n }\n\n this._changeDetectorRef.markForCheck();\n }\n\n /** @hidden */\n _selectValue(value: any): OptionComponent | undefined {\n const correspondingOption = this._options.find((option: OptionComponent) => {\n try {\n // Treat null as a special reset value.\n return option.value != null && this._compareWith(option.value, value);\n } catch (error) {\n if (isDevMode()) {\n // Notify developers of errors in their comparator.\n console.warn(error);\n }\n return false;\n }\n });\n\n if (correspondingOption) {\n this._selectionModel.select(correspondingOption);\n }\n\n return correspondingOption;\n }\n\n /** @hidden */\n _popoverOpenChangeHandle(isOpen: boolean): void {\n isOpen ? this.open() : this.close();\n }\n\n /** @hidden Returns _keyManagerService. */\n _getKeyService(): SelectKeyManagerService {\n return this._keyManagerService;\n }\n\n /** @hidden */\n _setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled;\n this._changeDetectorRef.markForCheck();\n\n this._tabIndex = -1;\n }\n\n /** @hidden */\n _highlightCorrectOption(): void {\n if (this._keyManagerService._keyManager && this._selectionModel.isEmpty()) {\n this._keyManagerService._keyManager.setFirstItemActive();\n } else if (this._keyManagerService._keyManager && !this._selectionModel.isEmpty()) {\n this._keyManagerService._keyManager.setActiveItem(this.selected);\n }\n }\n\n /** @hidden */\n _cleanupCommonBehavior(): void {\n this._destroy.next();\n this._destroy.complete();\n }\n\n /** @hidden */\n _initializeSelection(): void {\n // Defer setting the value in order to avoid the \"Expression\n // has changed after it was checked\" errors from Angular.\n Promise.resolve().then(() => {\n this._setSelectionByValue(this.ngControl ? this.ngControl.value : this._internalValue);\n });\n }\n\n /**\n * Expose outside of this mixin to give component ability\n * to update caluclatedMaxHeight if needed\n * @hidden\n */\n _updateCalculatedHeight(): void {\n this._calculatedMaxHeight = window.innerHeight * 0.45;\n }\n\n /** @hidden */\n _getOptionScrollPosition(optionIndex: number, itemHeight: number, currentScrollPosition: number): number {\n const optionHeight = this._options.get(optionIndex)?._getHtmlElement().offsetHeight || itemHeight;\n const optionOffset = optionIndex * optionHeight;\n if (optionOffset < currentScrollPosition) {\n return optionOffset;\n }\n\n if (optionOffset + optionHeight > currentScrollPosition + SELECT_PANEL_MAX_HEIGHT) {\n return Math.max(0, optionOffset - SELECT_PANEL_MAX_HEIGHT + optionHeight);\n }\n return currentScrollPosition;\n }\n\n /** @hidden */\n _getItemHeight(): number {\n // also include border with default value 1.\n return this._controlElemFontSize * SELECT_ITEM_HEIGHT_EM + 1;\n }\n\n /** @hidden */\n _initializeCommonBehavior(): void {\n this._selectionModel = new SelectionModel<OptionComponent>(false);\n this._keyManagerService._component = this;\n\n this._updateCalculatedHeight();\n }\n\n /** @hidden */\n _isRtl(): boolean {\n if (this._rtlService) {\n this._subscriptions.add(\n this._rtlService.rtl.subscribe((rtl) => {\n this._rtl = rtl;\n })\n );\n }\n return this._rtl === true ? true : false;\n }\n\n /** @hidden */\n _registerEventsAfterContentInit(): void {\n this._selectionModel.changed.pipe(takeUntil(this._destroy)).subscribe((event) => {\n event.added.forEach((option) => option._select());\n event.removed.forEach((option) => option._deselect());\n });\n\n this._options.changes.pipe(startWith(null), takeUntil(this._destroy)).subscribe(() => {\n this._resetOptions();\n this._initializeSelection();\n });\n }\n\n /** @hidden */\n @HostListener('keydown', ['$event'])\n _handleKeydown(event: KeyboardEvent): void {\n if (!this.disabled && !this.readonly) {\n this._isOpen\n ? this._keyManagerService._handleOpenKeydown(event)\n : this._keyManagerService._handleClosedKeydown(event);\n }\n if (KeyUtil.isKeyCode(event, [ESCAPE, ENTER, SPACE])) {\n this._controlElementRef.nativeElement.focus();\n }\n }\n\n /** @hidden */\n _getAriaActiveDescendant(): string | null {\n if (this._isOpen && this._keyManagerService._keyManager && this._keyManagerService._keyManager.activeItem) {\n return this._keyManagerService._keyManager.activeItem.id;\n }\n return null;\n }\n\n /** @hidden */\n _onFocus(): void {\n if (!this.disabled) {\n this._focused = true;\n this._changeDetectorRef.markForCheck();\n }\n }\n\n /** @hidden */\n _onBlur(): void {\n this._focused = false;\n\n if (!this.disabled && !this._isOpen) {\n this.onTouched();\n this._changeDetectorRef.markForCheck();\n }\n }\n\n /** @hidden */\n _buttonClick(): void {}\n\n /** @hidden */\n private _resetOptions(): void {\n const changedOrDestroyed = merge(this._options.changes, this._destroy);\n\n this._optionSelectionChanges.pipe(takeUntil(changedOrDestroyed)).subscribe((event) => {\n this._onSelect(event.source, event.isUserInput);\n\n if (event.isUserInput && this._isOpen) {\n this.close();\n this.focus();\n }\n });\n\n // Listen to changes in the internal state of the _options and react accordingly.\n // Handles cases like the labels of the selected _options changing.\n merge(...this._options.map((option) => option._stateChanges))\n .pipe(takeUntil(changedOrDestroyed))\n .subscribe(() => {\n this._changeDetectorRef.markForCheck();\n });\n }\n\n /**\n * @hidden\n * Invoked when an option is clicked.\n */\n private _onSelect(option: OptionComponent, isUserInput: boolean): void {\n const wasSelected = this._selectionModel.isSelected(option);\n if ((option.value === null || option.value === undefined) && this.unselectMissingOption) {\n option._deselect();\n this._selectionModel.clear();\n this._emitSelectChange(option.value);\n } else {\n if (wasSelected !== option.selected) {\n option.selected ? this._selectionModel.select(option) : this._selectionModel.deselect(option);\n }\n if (isUserInput) {\n this._keyManagerService._keyManager.setActiveItem(option);\n }\n }\n\n if (wasSelected !== this._selectionModel.isSelected(option) || this.mobile) {\n this._emitSelectChange();\n }\n }\n\n /** @hidden */\n private _emitSelectChange(defaultVal?: any): void {\n if (this.canEmitValueChange) {\n this._internalValue =\n this._selectionModel.selected && this._selectionModel.selected.length !== 0\n ? (this.selected as OptionComponent).value\n : defaultVal;\n this.valueChange.emit(this._internalValue);\n this.onChange(this._internalValue);\n this._changeDetectorRef.markForCheck();\n }\n }\n\n /** @hidden */\n private _getItemCount(): number {\n if (this._optionPanel && this._headerElements().length > 0) {\n return this._options.length + this._headerElements().length;\n }\n return this._options.length;\n }\n\n /** @hidden */\n private _headerElements(): NodeListOf<Element> {\n return this._optionPanel?.nativeElement.querySelectorAll(SELECT_HEADER_IDENTIFIER);\n }\n\n /** @hidden */\n private async _setupMobileMode(): Promise<void> {\n if (!this.mobile) {\n return;\n }\n\n const injector = Injector.create({\n providers: [{ provide: SELECT_COMPONENT, useValue: this }],\n parent: this._injector\n });\n\n await this._dynamicComponentService.createDynamicModule(\n this.selectOptionsListTemplate,\n SelectMobileModule,\n SelectMobileComponent,\n this._viewContainerRef,\n injector\n );\n }\n}\n\nexport class DeprecatedSelectCSSClasses implements ModuleDeprecation {\n /** @hidden */\n message = `Select CSS classes fd-select--compact, fd-select--compact--mobile, fd-popover-custom-select-body, fd-popover-custom-list are deprecated`;\n\n /** @hidden */\n alternative = {\n name: 'Inspect the elements of the Select component to see the new classes',\n link: ['/core', 'select']\n };\n}\n","<ng-container *ngTemplateOutlet=\"mobile ? mobileTemplate : desktopTemplate\"></ng-container>\n\n<ng-template #desktopTemplate>\n <!-- @deprecated leaving class fd-popover-custom-list to support backwards compatibility-->\n <fd-popover\n additionalBodyClass=\"fd-select-dropdown fd-popover-custom-list\"\n [isOpen]=\"_isOpen\"\n [triggers]=\"[]\"\n [focusTrapped]=\"true\"\n [disabled]=\"disabled || readonly\"\n [appendTo]=\"appendTo\"\n [closeOnEscapeKey]=\"true\"\n [fillControlMode]=\"fillControlMode\"\n [maxWidth]=\"600\"\n [closeOnOutsideClick]=\"closeOnOutsideClick\"\n (isOpenChange)=\"_popoverOpenChangeHandle($event)\"\n >\n <fd-popover-control>\n <ng-container [ngTemplateOutlet]=\"selectInputControlTemplate\"></ng-container>\n </fd-popover-control>\n\n <!-- @deprecated leaving class fd-popover-custom-select-body to support backwards compatibility-->\n <fd-popover-body class=\"fd-popover-custom-select-body\">\n <ng-container [ngTemplateOutlet]=\"selectOptionsListTemplate\"></ng-container>\n </fd-popover-body>\n </fd-popover>\n</ng-template>\n\n<ng-template #selectInputControlTemplate>\n <div\n class=\"fd-select__control\"\n role=\"listbox\"\n #selectControl\n [class]=\"_selectControlClass\"\n [class.is-active]=\"_isOpen\"\n [class.is-expanded]=\"_isOpen\"\n [class.is-disabled]=\"disabled\"\n [class.is-readonly]=\"readonly\"\n [attr.tabindex]=\"_tabIndex\"\n [attr.id]=\"controlId\"\n [attr.aria-active]=\"_isOpen\"\n aria-live=\"polite\"\n [attr.aria-selected]=\"selected ? selected.selected : false\"\n [attr.aria-expanded]=\"_isOpen\"\n [attr.aria-disabled]=\"disabled\"\n [attr.aria-controls]=\"controlId + '-list-box'\"\n [attr.aria-haspopup]=\"!(this.readonly || this.disabled)\"\n [attr.aria-required]=\"required\"\n [attr.title]=\"triggerValue\"\n [attr.aria-label]=\"ariaLabel || ('platformSelect.selectOptionLabel' | fdTranslate)\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-activedescendant]=\"_getAriaActiveDescendant()\"\n (focus)=\"_onFocus()\"\n (blur)=\"_onBlur()\"\n >\n <div role=\"listitem\" class=\"fd-select__text-content\" [attr.aria-label]=\"triggerValue\">\n <ng-container\n [ngTemplateOutlet]=\"controlTemplate ? controlTemplate : defaultSelectContent\"\n [ngTemplateOutletContext]=\"{ $implicit: triggerValue, selected: selected }\"\n >\n </ng-container>\n\n <ng-template #defaultSelectContent>\n {{ triggerValue }}\n </ng-template>\n </div>\n <span\n class=\"fd-button fd-button--transparent fd-select__button\"\n [ngClass]=\"selectDropdownButtonClass\"\n [class.is-disabled]=\"disabled\"\n *ngIf=\"!readonly\"\n >\n <fd-icon [glyph]=\"glyph\"></fd-icon>\n </span>\n <!-- <button-->\n <!-- fd-button-->\n <!-- tabindex=\"-1\"-->\n <!-- class=\"fd-button--transparent fd-select__button {{ selectDropdownButtonClass }}\"-->\n <!-- (click)=\"_buttonClick()\"-->\n <!-- *ngIf=\"!readonly\"-->\n <!-- [disabled]=\"disabled\"-->\n <!-- [glyph]=\"glyph\"-->\n <!-- ></button>-->\n </div>\n</ng-template>\n\n<ng-template #selectOptionsListTemplate>\n <ul\n #optionPanel\n fd-list\n class=\"fd-select-options\"\n role=\"listbox\"\n tabindex=\"-1\"\n [mobileMode]=\"mobile\"\n [dropdownMode]=\"true\"\n [hasMessage]=\"!!stateMessage\"\n [attr.id]=\"controlId + '-list-box'\"\n [style.max-height]=\"maxHeight || calculatedMaxHeight + 'px'\"\n [attr.tooltip]=\"triggerValue\"\n >\n <li\n *ngIf=\"stateMessage\"\n [attr.aria-label]=\"stateMessage\"\n fd-list-message\n tabindex=\"-1\"\n role=\"presentation\"\n [type]=\"state || 'default'\"\n [innerHtml]=\"stateMessage\"\n ></li>\n\n <ng-content></ng-content>\n </ul>\n</ng-template>\n\n<ng-template #mobileTemplate>\n <ng-container [ngTemplateOutlet]=\"selectInputControlTemplate\"></ng-container>\n\n <div #dialogContainer></div>\n</ng-template>\n","import { CONTENT_DENSITY_DIRECTIVE, DeprecatedCompactDirective } from '@fundamental-ngx/core/content-density';\nimport { Directive, forwardRef } from '@angular/core';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: 'fd-select[compact]',\n providers: [\n {\n provide: CONTENT_DENSITY_DIRECTIVE,\n useExisting: forwardRef(() => DeprecatedSelectCompactDirective)\n }\n ]\n})\nexport class DeprecatedSelectCompactDirective extends DeprecatedCompactDirective {\n /** @hidden */\n constructor() {\n super('fd-select');\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { PopoverModule } from '@fundamental-ngx/core/popover';\nimport { ButtonModule } from '@fundamental-ngx/core/button';\nimport { IconModule } from '@fundamental-ngx/core/icon';\nimport { BusyIndicatorModule } from '@fundamental-ngx/core/busy-indicator';\nimport { ListModule } from '@fundamental-ngx/core/list';\nimport { I18nModule } from '@fundamental-ngx/i18n';\nimport { ContentDensityModule } from '@fundamental-ngx/core/content-density';\nimport { SelectComponent } from './select.component';\nimport { OptionComponent } from './option/option.component';\nimport { DeprecatedSelectCompactDirective } from './deprecated-select-compact.directive';\n\n@NgModule({\n declarations: [SelectComponent, OptionComponent, DeprecatedSelectCompactDirective],\n exports: [SelectComponent, OptionComponent, DeprecatedSelectCompactDirective, ContentDensityModule],\n imports: [\n BusyIndicatorModule,\n CommonModule,\n PopoverModule,\n ButtonModule,\n IconModule,\n ListModule,\n ContentDensityModule,\n I18nModule\n ]\n})\nexport class SelectModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2","i2.SelectKeyManagerService","i3","i4"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"fundamental-ngx-core-select.mjs","sources":["../../../../libs/core/src/lib/select/select.interface.ts","../../../../libs/core/src/lib/select/select-key-manager.service.ts","../../../../libs/core/src/lib/select/option/option.component.ts","../../../../libs/core/src/lib/select/option/option.component.html","../../../../libs/core/src/lib/select/select-mobile/select-mobile.component.ts","../../../../libs/core/src/lib/select/select-mobile/select-mobile.component.html","../../../../libs/core/src/lib/select/select-mobile/select-mobile.module.ts","../../../../libs/core/src/lib/select/select.component.ts","../../../../libs/core/src/lib/select/select.component.html","../../../../libs/core/src/lib/select/deprecated-select-compact.directive.ts","../../../../libs/core/src/lib/select/select.module.ts","../../../../libs/core/src/lib/select/fundamental-ngx-core-select.ts"],"sourcesContent":["import { EventEmitter, InjectionToken, QueryList, ElementRef } from '@angular/core';\n\nimport { OptionComponent } from './option/option.component';\nimport { MobileMode } from '@fundamental-ngx/core/mobile-mode';\nimport { LiveAnnouncer } from '@angular/cdk/a11y';\nimport { MobileModeConfig } from '@fundamental-ngx/core/mobile-mode';\n\nexport const SELECT_COMPONENT = new InjectionToken<SelectInterface>('SelectInterface');\n\n/**\n * Select Interface to have typing and avoid circular dependency between\n * SelectComponent <==> SelectMobileComponent\n */\nexport interface SelectInterface extends MobileMode {\n typeaheadDebounceInterval: number;\n selected: OptionComponent;\n mobileConfig: MobileModeConfig;\n _options: QueryList<any>;\n _destroy: any;\n _optionPanel: ElementRef;\n _isOpen: boolean;\n _calculatedMaxHeight: number;\n _liveAnnouncer: LiveAnnouncer;\n\n isOpenChange: EventEmitter<boolean>;\n valueChange: EventEmitter<any>;\n\n close(forceClose?: boolean): void;\n open(): void;\n focus(): void;\n blur(): void;\n _isRtl(): boolean;\n _getItemHeight(): number;\n _getOptionScrollPosition(optionIndex: number, optionHeight: number, currentScrollPosition: number): void;\n}\n","import { Injectable } from '@angular/core';\nimport { takeUntil } from 'rxjs/operators';\nimport { ActiveDescendantKeyManager } from '@angular/cdk/a11y';\nimport { KeyUtil } from '@fundamental-ngx/cdk/utils';\nimport { UP_ARROW, DOWN_ARROW, ENTER, SPACE, HOME, TAB, END, ESCAPE, hasModifierKey } from '@angular/cdk/keycodes';\n\nimport { SelectInterface } from './select.interface';\nimport { OptionsInterface } from './options.interface';\n\n@Injectable()\nexport class SelectKeyManagerService {\n /** @hidden */\n _component: SelectInterface;\n\n /** @hidden */\n _keyManager: ActiveDescendantKeyManager<OptionsInterface>;\n\n /**\n * Sets up a key manager to listen to keyboard events on the overlay panel.\n * @hidden\n */\n _initKeyManager(): void {\n this._keyManager = new ActiveDescendantKeyManager<OptionsInterface>(this._component._options)\n .withTypeAhead(this._component.typeaheadDebounceInterval)\n .withVerticalOrientation()\n .withHorizontalOrientation(this._component._isRtl() ? 'rtl' : 'ltr')\n .withAllowedModifierKeys(['shiftKey']);\n\n this._keyManager.tabOut.pipe(takeUntil(this._component._destroy)).subscribe(() => {\n // tab focus fix for mobile\n if (!this._component.mobile) {\n this._component.focus();\n this._component.close();\n }\n });\n\n this._keyManager.change.pipe(takeUntil(this._component._destroy)).subscribe(() => {\n if (this._component._isOpen && this._component._optionPanel) {\n this._scrollActiveOptionIntoView();\n } else if (!this._component._isOpen && this._keyManager.activeItem) {\n this._keyManager.activeItem._selectViaInteraction();\n }\n });\n }\n\n /** @hidden */\n _scrollActiveOptionIntoView(): void {\n const activeOptionIndex = this._keyManager.activeItemIndex || 0;\n this._component._optionPanel.nativeElement.scrollTop = this._component._getOptionScrollPosition(\n activeOptionIndex,\n this._component._getItemHeight(),\n this._component._optionPanel.nativeElement.scrollTop\n );\n }\n\n /**\n * Handles keyboard events while the select is closed.\n * @hidden\n */\n _handleClosedKeydown(event: KeyboardEvent): void {\n const isOpenKey = KeyUtil.isKeyCode(event, [ENTER, SPACE]);\n const manager = this._keyManager;\n\n // Open the select on ALT + arrow key to match the native <select>\n if (!manager.isTyping() && isOpenKey && !hasModifierKey(event)) {\n // prevents the page from scrolling down when pressing space\n event.preventDefault();\n this._component.open();\n } else {\n const previouslySelectedOption = this._component.selected;\n\n if (KeyUtil.isKeyCode(event, [HOME, END])) {\n if (KeyUtil.isKeyCode(event, HOME)) {\n manager.setFirstItemActive();\n } else {\n manager.setLastItemActive();\n }\n event.preventDefault();\n }\n\n const selectedOption = this._component.selected;\n\n // a11y Since the value has changed, we need to announce it.\n if (selectedOption && previouslySelectedOption !== selectedOption) {\n this._component._liveAnnouncer.announce((selectedOption as OptionsInterface).viewValue, 10000);\n }\n manager.onKeydown(event);\n }\n }\n\n /**\n * Handles keyboard events when the selected is open.\n *\n * @hidden\n */\n _handleOpenKeydown(event: KeyboardEvent): void {\n const manager = this._keyManager;\n const isArrowKey = KeyUtil.isKeyCode(event, [UP_ARROW, DOWN_ARROW]);\n const isTyping = manager.isTyping();\n\n if (KeyUtil.isKeyCode(event, [HOME, END])) {\n event.preventDefault();\n if (KeyUtil.isKeyCode(event, HOME)) {\n manager.setFirstItemActive();\n } else {\n manager.setLastItemActive();\n }\n } else if ((isArrowKey && event.altKey) || KeyUtil.isKeyCode(event, [ESCAPE])) {\n // Close the select on ALT + arrow key to match the native <select>\n event.preventDefault();\n this._component.blur();\n this._component.close();\n // When user is typing do nothing,\n // because the typing sequence can include the space key.\n } else if (\n !isTyping &&\n KeyUtil.isKeyCode(event, [ENTER, SPACE]) &&\n manager.activeItem &&\n !hasModifierKey(event)\n ) {\n event.preventDefault();\n manager.activeItem._selectViaInteraction();\n this._component.blur();\n } else if (!isTyping && KeyUtil.isKeyCode(event, [TAB]) && this._component.mobile) {\n event.preventDefault();\n } else {\n manager.onKeydown(event);\n }\n }\n}\n","import {\n AfterViewChecked,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n EventEmitter,\n HostBinding,\n Input,\n OnDestroy,\n Output,\n QueryList,\n ViewEncapsulation\n} from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { FocusableOption, FocusOrigin } from '@angular/cdk/a11y';\nimport { ENTER, hasModifierKey, SPACE } from '@angular/cdk/keycodes';\n\nimport { ListTitleDirective } from '@fundamental-ngx/core/list';\n\nimport { KeyUtil } from '@fundamental-ngx/cdk/utils';\nimport { startWith } from 'rxjs/operators';\nimport { OptionsInterface } from '../options.interface';\n\nlet optionUniqueId = 0;\n\n/**\n * Event object emitted by OptionComponent when\n * selected or deselected.\n */\nexport class FdOptionSelectionChange {\n /**\n * Reference to the OptionComponent that emitted the event.\n * @param source The option that emitted the event.\n * @param isUserInput Whether the change in the option's value was a result of a user interaction.\n */\n constructor(\n /** Reference to the option that emitted the event. */\n readonly source: OptionComponent,\n /** Whether the change in the option's value was a result of a user action. */\n readonly isUserInput = false\n ) {}\n}\n\n/**\n * Used to represent an option of the select component.\n */\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[fd-option], fd-option',\n templateUrl: './option.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'fd-list__item',\n '[attr.aria-disabled]': 'disabled',\n '[attr.aria-selected]': 'selected',\n '[class.is-focus]': 'active',\n '[attr.id]': 'id',\n '[tabindex]': '-1',\n role: 'option',\n '(click)': '_selectViaInteraction()',\n '(keydown)': '_handleKeydown($event)'\n },\n styles: [\n `\n .fd-list__item[aria-disabled='true'],\n .fd-list__item.is-disabled,\n .fd-list__item:disabled {\n opacity: 0.4;\n cursor: not-allowed;\n }\n\n .fd-list__item:disabled:focus {\n outline: none;\n }\n `\n ]\n})\nexport class OptionComponent implements AfterViewChecked, OnDestroy, FocusableOption, OptionsInterface {\n /** Option id attribute */\n @Input()\n id = `fd-option-${optionUniqueId++}`;\n\n /** Value of the option. Similar to how a native select operates. */\n @Input()\n value: any;\n\n /** Whether to disable this option specifically. */\n @Input()\n disabled = false;\n\n /**\n * Emits event when option is selected or deselected.\n */\n @Output()\n readonly selectionChange = new EventEmitter<FdOptionSelectionChange>();\n\n /** @hidden */\n @HostBinding('class.is-selected')\n selected = false;\n\n /** @Hidden */\n @ContentChildren(ListTitleDirective)\n _listTitleDirectives: QueryList<ListTitleDirective> | undefined;\n\n /** @hidden */\n _renderer: 'plain' | 'title' = 'title';\n\n /**\n * The displayed value of the option. It shows the selected option in the select's trigger.\n */\n get viewValue(): string {\n return (this._elementRef.nativeElement.textContent || '').trim();\n }\n\n /** used in components like autocomplete where focus must remain on the input.*/\n get active(): boolean {\n return this._active;\n }\n\n /** @hidden */\n readonly _stateChanges = new Subject<void>();\n\n /** @hidden */\n private _mostRecentViewValue = '';\n\n /** @hidden */\n private _active = false;\n\n /** @hidden */\n constructor(private _elementRef: ElementRef, private _changeDetectorRef: ChangeDetectorRef) {}\n\n /** @Hidden */\n ngAfterViewInit(): void {\n this._listTitleDirectives?.changes.pipe(startWith(null)).subscribe(() => {\n const directivesLength = this._listTitleDirectives?.length ?? 0;\n this._renderer = directivesLength > 0 ? 'plain' : 'title';\n this._changeDetectorRef.detectChanges();\n });\n }\n\n /**\n * @hidden\n * Since select components could be using the option's label to display the selected values\n * and they don't have a way of knowing if the option's label has changed\n * we have to check for changes in the DOM ourselves and dispatch an event\n */\n ngAfterViewChecked(): void {\n if (this.selected) {\n const viewValue = this.viewValue;\n\n if (viewValue !== this._mostRecentViewValue) {\n this._mostRecentViewValue = viewValue;\n this._stateChanges.next();\n }\n }\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this._stateChanges.complete();\n }\n\n /** @hidden\n * This method sets display styles on the option to make it appear\n * active. This is used by the ActiveDescendantKeyManager so key\n * events will display the proper options as active on arrow key events.\n */\n setActiveStyles(): void {\n if (!this._active) {\n this._active = true;\n this._changeDetectorRef.markForCheck();\n }\n }\n\n /** @hidden\n * This method removes display styles on the option that made it appear\n * active. This is used by the ActiveDescendantKeyManager so key\n * events will display the proper options as active on arrow key events.\n */\n setInactiveStyles(): void {\n if (this._active) {\n this._active = false;\n this._changeDetectorRef.markForCheck();\n }\n }\n\n /** @hidden\n * Focuses the element. */\n focus(_origin?: FocusOrigin, options?: FocusOptions): void {\n const element = this._elementRef.nativeElement;\n\n if (typeof element.focus === 'function') {\n element.focus(options);\n }\n }\n\n /** @hidden\n * option value\n */\n getLabel(): string {\n return this.viewValue;\n }\n\n /** @hidden\n * Returns HTMLElement representation of the component. */\n _getHtmlElement(): HTMLElement {\n return this._elementRef.nativeElement as HTMLElement;\n }\n\n /** Selects the option.\n * * @hidden\n */\n _select(): void {\n if (!this.selected) {\n this.selected = true;\n this._changeDetectorRef.markForCheck();\n this.selectionChange.emit(new FdOptionSelectionChange(this, false));\n }\n }\n\n /** @hidden\n * Deselects the option.\n */\n _deselect(): void {\n if (this.selected) {\n this.selected = false;\n this._changeDetectorRef.markForCheck();\n this.selectionChange.emit(new FdOptionSelectionChange(this, false));\n }\n }\n\n /**\n * Ensures the option is selected when activated from the keyboard.\n *\n * @hidden\n */\n _handleKeydown(event: KeyboardEvent): void {\n if (KeyUtil.isKeyCode(event, [ENTER, SPACE]) && !hasModifierKey(event)) {\n this._selectViaInteraction();\n event.preventDefault();\n }\n }\n\n /** @hidden */\n _selectViaInteraction(): void {\n if (!this.disabled) {\n this.selected = true;\n this._changeDetectorRef.markForCheck();\n this.selectionChange.emit(new FdOptionSelectionChange(this, true));\n }\n }\n}\n","<span fd-list-title *ngIf=\"_renderer === 'title'; else plainRenderer\">\n <ng-template *ngTemplateOutlet=\"plainRenderer\"></ng-template>\n</span>\n<ng-template #plainRenderer>\n <ng-content></ng-content>\n</ng-template>\n<ng-content select=\"[secondary]\"></ng-content>\n","import {\n AfterViewInit,\n Component,\n ElementRef,\n Inject,\n OnDestroy,\n OnInit,\n Optional,\n TemplateRef,\n HostListener,\n ViewChild,\n ChangeDetectionStrategy\n} from '@angular/core';\nimport { Subscription } from 'rxjs';\n\nimport { SELECT_COMPONENT, SelectInterface } from '../select.interface';\nimport { DialogService } from '@fundamental-ngx/core/dialog';\nimport { KeyUtil } from '@fundamental-ngx/cdk/utils';\nimport {\n MOBILE_MODE_CONFIG,\n MobileModeConfigToken,\n MobileModeBase,\n MobileModeControl\n} from '@fundamental-ngx/core/mobile-mode';\nimport { ESCAPE } from '@angular/cdk/keycodes';\n\n/**\n * This component provides extended mobile support for Select component to render list of option since full screen\n * dialog.\n */\n@Component({\n selector: 'fd-select-mobile',\n templateUrl: './select-mobile.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class SelectMobileComponent extends MobileModeBase<SelectInterface> implements OnInit, AfterViewInit, OnDestroy {\n /** @hidden\n * from mobile class can not prefix _,\n * to avoid build issues\n */\n childContent: TemplateRef<any> | null = null;\n\n /** @hidden */\n @ViewChild('dialogTemplate')\n _dialogTemplate: TemplateRef<any>;\n\n /** @hidden */\n private _subscriptions = new Subscription();\n\n /** @hidden */\n @HostListener('keydown', ['$event'])\n onItemKeydown(event: KeyboardEvent): void {\n if (event && KeyUtil.isKeyCode(event, [ESCAPE])) {\n this._component.close(true);\n }\n }\n\n /** @hidden */\n constructor(\n _elementRef: ElementRef,\n _dialogService: DialogService,\n @Inject(SELECT_COMPONENT) _selectComponent: SelectInterface,\n @Optional() @Inject(MOBILE_MODE_CONFIG) mobileModes: MobileModeConfigToken[]\n ) {\n super(_elementRef, _dialogService, _selectComponent, MobileModeControl.SELECT, mobileModes);\n }\n\n /** @hidden */\n ngOnInit(): void {\n this._listenOnSelectOpenChange();\n }\n\n /** @hidden */\n ngAfterViewInit(): void {\n this._openDialog();\n this.dialogRef.hide(true);\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this.dialogRef.close();\n super.onDestroy();\n this._subscriptions.unsubscribe();\n }\n\n /**\n * Only when we have Approve.\n * @hidden\n */\n _cancel(): void {\n this._component.close(true);\n }\n\n /** @hidden */\n _approve(): void {\n this._component.close(true);\n }\n\n /** @hidden Hide/Show the Dialog when Select Open/Close*/\n private _listenOnSelectOpenChange(): void {\n this._subscriptions.add(\n this._component.isOpenChange.subscribe((isOpen) => {\n this._elementRef.nativeElement.blur();\n this.dialogRef.hide(!isOpen);\n })\n );\n }\n\n /** @hidden */\n private _openDialog(): void {\n this.dialogRef = this._dialogService.open(this._dialogTemplate, {\n ...this.dialogConfig,\n mobile: true,\n disablePaddings: true,\n backdropClickCloseable: false,\n container: this._elementRef.nativeElement,\n ariaLabelledBy: 'fd-dialog-header'\n });\n }\n}\n","<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #dialogTemplate>\n <fd-dialog tabindex=\"-1\" [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\">\n <fd-dialog-header>\n <h1 id=\"fd-dialog-header\" *ngIf=\"mobileConfig.title\" fd-title>{{ mobileConfig.title }}</h1>\n <button\n role=\"button\"\n *ngIf=\"mobileConfig.hasCloseButton\"\n aria-label=\"close\"\n fd-dialog-close-button\n [mobile]=\"true\"\n (click)=\"_cancel()\"\n ></button>\n </fd-dialog-header>\n\n <fd-dialog-body>\n <ng-container *ngTemplateOutlet=\"childContent\"></ng-container>\n </fd-dialog-body>\n\n <fd-dialog-footer *ngIf=\"mobileConfig.approveButtonText || mobileConfig.cancelButtonText\">\n <fd-button-bar\n *ngIf=\"mobileConfig?.approveButtonText\"\n fdType=\"emphasized\"\n [label]=\"mobileConfig.approveButtonText!\"\n (click)=\"_approve()\"\n >\n </fd-button-bar>\n <fd-button-bar\n *ngIf=\"mobileConfig?.cancelButtonText\"\n [label]=\"mobileConfig.cancelButtonText!\"\n (click)=\"_cancel()\"\n >\n </fd-button-bar>\n </fd-dialog-footer>\n </fd-dialog>\n</ng-template>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { ButtonModule } from '@fundamental-ngx/core/button';\nimport { DialogModule } from '@fundamental-ngx/core/dialog';\nimport { DynamicComponentService } from '@fundamental-ngx/cdk/utils';\nimport { SelectMobileComponent } from './select-mobile.component';\n\n@NgModule({\n declarations: [SelectMobileComponent],\n imports: [CommonModule, DialogModule, ButtonModule],\n exports: [SelectMobileComponent],\n providers: [DynamicComponentService]\n})\nexport class SelectMobileModule {}\n","import {\n AfterContentInit,\n AfterViewInit,\n Attribute,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n EventEmitter,\n HostListener,\n Injector,\n Input,\n isDevMode,\n OnChanges,\n OnDestroy,\n OnInit,\n Optional,\n Output,\n QueryList,\n Self,\n SimpleChanges,\n TemplateRef,\n ViewChild,\n ViewContainerRef,\n ViewEncapsulation\n} from '@angular/core';\nimport { ControlValueAccessor, NgControl } from '@angular/forms';\nimport { LiveAnnouncer } from '@angular/cdk/a11y';\nimport { CdkConnectedOverlay } from '@angular/cdk/overlay';\nimport { SelectionModel } from '@angular/cdk/collections';\nimport { defer, merge, Observable, Subject, Subscription } from 'rxjs';\nimport { startWith, switchMap, takeUntil } from 'rxjs/operators';\n\nimport { PopoverFillMode } from '@fundamental-ngx/core/shared';\nimport { DynamicComponentService, KeyUtil, ModuleDeprecation, Nullable, RtlService } from '@fundamental-ngx/cdk/utils';\nimport { MobileModeConfig } from '@fundamental-ngx/core/mobile-mode';\nimport { FormItemControl, registerFormItemControl } from '@fundamental-ngx/core/form';\n\nimport { SELECT_COMPONENT, SelectInterface } from './select.interface';\nimport { SelectKeyManagerService } from './select-key-manager.service';\nimport { FdOptionSelectionChange, OptionComponent } from './option/option.component';\nimport { SelectMobileComponent } from './select-mobile/select-mobile.component';\nimport { SelectMobileModule } from './select-mobile/select-mobile.module';\nimport { ContentDensityObserver, contentDensityObserverProviders } from '@fundamental-ngx/core/content-density';\nimport { ENTER, ESCAPE, SPACE } from '@angular/cdk/keycodes';\nimport { FormStates } from '@fundamental-ngx/cdk/forms';\n\nlet selectUniqueId = 0;\n\n/** @deprecated use `import { FormStates } from \"@fundamental-ngx/cdk/forms\"` instead */\nexport type SelectControlState = FormStates;\n\nconst SELECT_HEADER_IDENTIFIER = '.fd-list__group-header';\n\nexport const SELECT_PANEL_MAX_HEIGHT = 250;\n\n/** The height of the select items in `rem` units. */\nexport const SELECT_ITEM_HEIGHT_EM = 4;\n\n/**\n * Select component intended to mimic\n * the behaviour of the native select element.\n */\n@Component({\n selector: 'fd-select',\n templateUrl: './select.component.html',\n styleUrls: ['./select.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'fd-select',\n '[class.fd-select--inline]': 'inline',\n // @deprecated leaving class fd-select-custom-class for backwards compatibility\n '[class.fd-select-custom-class]': 'inline',\n // @deprecated leaving class fd-select-custom-class--mobile for backwards compatibility\n '[class.fd-select-custom-class--mobile]': 'mobile'\n },\n providers: [\n {\n provide: SELECT_COMPONENT,\n useExisting: SelectComponent\n },\n registerFormItemControl(SelectComponent),\n SelectKeyManagerService,\n contentDensityObserverProviders()\n ]\n})\nexport class SelectComponent<T = any>\n implements\n ControlValueAccessor,\n SelectInterface,\n OnInit,\n AfterViewInit,\n AfterContentInit,\n OnChanges,\n OnDestroy,\n FormItemControl\n{\n /** Id of the control. */\n @Input()\n controlId = `fd-select-${selectUniqueId++}`;\n\n /** Holds the control state of select */\n @Input()\n state: Nullable<FormStates>;\n\n /** Whether the select component should be displayed in mobile mode. */\n @Input()\n mobile = false;\n\n /** Holds the message with respect to state */\n @Input()\n stateMessage: Nullable<string>;\n\n /** Whether the select component is disabled. */\n @Input()\n disabled = false;\n\n /** If it is mandatory field */\n @Input()\n required = false;\n\n /** Whether the select component is readonly. */\n @Input()\n readonly = false;\n\n /** Placeholder for the select. Appears in the triggerbox if no option is selected. */\n @Input()\n placeholder: string;\n\n /** Value of the select control. */\n @Input()\n set value(newValue: any) {\n if (newValue !== this._internalValue) {\n this.writeValue(newValue);\n this._internalValue = newValue;\n }\n }\n get value(): any {\n return this._internalValue;\n }\n\n /** @deprecated\n * it is handled internally by controlTemplate != null|undefined is\n * Equal as extendedBodyTemplate as true.\n * Whether option components contain more than basic text. */\n @Input()\n extendedBodyTemplate = false;\n\n /** Max height of the popover. Any overflowing elements will be accessible through scrolling. */\n @Input()\n maxHeight: string;\n\n /** Glyph to add icon in the select component. */\n @Input()\n glyph = 'slim-arrow-down';\n\n /** Whether close the popover on outside click. */\n @Input()\n closeOnOutsideClick = true;\n\n /**\n * Preset options for the Select body width, whatever is chosen, the body has a 600px limit.\n * * `at-least` will apply a minimum width to the body equivalent to the width of the control. - Default\n * * `equal` will apply a width to the body equivalent to the width of the control.\n * * 'fit-content' will apply width needed to properly display items inside, independent of control.\n */\n @Input()\n fillControlMode: PopoverFillMode = 'at-least';\n\n /** Custom template used to build control body. */\n @Input()\n controlTemplate: TemplateRef<any> | undefined;\n\n /** The element to which the popover should be appended. */\n @Input()\n appendTo: ElementRef;\n\n /**\n * If the option should be unselected and value changed to undefined, when the current value is\n * not presented in option array. Switching it off can be handy, when there is some delay between providing\n * possible options and chosen value.\n */\n @Input()\n unselectMissingOption = true;\n\n /** Time to wait in milliseconds after the last keydown before focusing or selecting option based on alphanumeric keys. */\n @Input()\n typeaheadDebounceInterval = 250;\n\n /** Binds to control aria-labelledBy attribute */\n @Input()\n ariaLabelledBy: Nullable<string>;\n\n /** Sets control aria-label attribute value */\n @Input()\n ariaLabel: Nullable<string>;\n\n /** Select Input Mobile Configuration */\n @Input()\n mobileConfig: MobileModeConfig = { hasCloseButton: true };\n\n /** Should select be inlined. */\n @Input()\n inline = true;\n\n /** Additional classname for the select control element. */\n @Input()\n selectControlClass: Nullable<string>;\n\n /** Additional classname for the select dropdown button element. */\n @Input()\n selectDropdownButtonClass: Nullable<string>;\n\n /** Event emitted when the popover open state changes. */\n @Output()\n readonly isOpenChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n\n /** Event emitted when the selected value of the select changes. */\n @Output()\n readonly valueChange = new EventEmitter<T>();\n\n /** @hidden */\n @ContentChildren(OptionComponent, { descendants: true })\n _options: QueryList<OptionComponent>;\n\n /** @hidden */\n @ViewChild('selectControl')\n _controlElementRef: ElementRef<HTMLDivElement>;\n\n /** Reference to element containing list of options */\n @ViewChild('selectOptionsListTemplate')\n selectOptionsListTemplate: TemplateRef<any>;\n\n /** @hidden\n * Reference to root element for the mobile mode dialog */\n @ViewChild('dialogContainer')\n _dialogContainerElementRef: ElementRef;\n\n /**\n * Overlay pane containing the options.\n * @hidden\n */\n @ViewChild(CdkConnectedOverlay)\n _overlayDir: CdkConnectedOverlay;\n\n /** @hidden\n * Referent to the option;s container\n */\n @ViewChild('optionPanel', { read: ElementRef })\n _optionPanel: ElementRef;\n\n /** Whether popover is opened\n * @hidden\n */\n _isOpen = false;\n\n /** @hidden */\n _tabIndex: number;\n\n /** @hidden */\n _liveAnnouncer: LiveAnnouncer;\n\n /** @hidden */\n _internalValue: any;\n\n /** @hidden */\n _calculatedMaxHeight: number;\n\n /** @hidden */\n _rtl = false;\n\n /** @hidden */\n _selectionModel: SelectionModel<OptionComponent>;\n\n /**\n * @hidden\n * Triggers when component is destroyed\n */\n readonly _destroy = new Subject<void>();\n\n /** @hidden */\n get _selectControlClass(): string {\n return [this.state ? `is-${this.state}` : '', this.selectControlClass]\n .filter((className) => !!className)\n .join(' ');\n }\n\n /**\n * @hidden\n * Combined stream of all of the child options' change events.\n */\n readonly _optionSelectionChanges: Observable<FdOptionSelectionChange> = defer(() => {\n const _options = this._options;\n\n return _options?.changes.pipe(\n startWith(_options),\n switchMap(() => merge(..._options.map((option) => option.selectionChange)))\n );\n });\n\n /** @hidden */\n private _controlElemFontSize = 0;\n\n /** @hidden */\n private _focused = false;\n\n /**\n * @hidden\n * Stored calculated maxHeight from Option Panel\n */\n private _maxHeight: number;\n\n /** @hidden */\n private _subscriptions: Subscription = new Subscription();\n\n /** @hidden */\n @HostListener('window:resize')\n _resizeScrollHandler(): void {\n this._updateCalculatedHeight();\n }\n\n /** @hidden */\n setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled;\n this._tabIndex = this.disabled ? -1 : 0;\n }\n\n /** Selected option. */\n get selected(): OptionComponent {\n return this._selectionModel.selected[0];\n }\n\n /** Retrieves selected value if any. */\n get triggerValue(): string {\n const emptyValue = ' ';\n if (this._selectionModel.isEmpty()) {\n return this.placeholder || emptyValue;\n }\n return this.selected.viewValue || this.placeholder || emptyValue;\n }\n\n /** equal to close\n * Tells the OptionList if it's closable by simply selecting the item either with CLICK | SPACE | ENTER.\n * When we are in mobile mode (mobile=true) and have we have enabled confirmation buttons then we\n * dont close option list. We close only after we hit confirm button.\n */\n get canClose(): boolean {\n return !(this.mobile && this.mobileConfig.approveButtonText);\n }\n\n /** Whether control can be interacted with */\n get isInteractive(): boolean {\n return !(this.readonly || this.disabled);\n }\n\n /**\n * Check if we can emit a value. They are 3 different paths where we can emit value:\n * - We are not in mobile mode [mobile]=false\n * - We are in mobile mode [mobile]=true and mobile dialog as just close X button to dismiss it\n * - We are in mobile mode [mobile]=true and mobile dialog has ApproveButton available and\n * dialog is closed. (meaning we already clicked this button)\n */\n get canEmitValueChange(): boolean {\n return (\n !this.mobile ||\n (this.mobile &&\n // Approve + Cancel\n !!this.mobileConfig.approveButtonText &&\n !this._isOpen) ||\n // CloseButton. Emits when you click on the option item\n (!!this.mobileConfig.hasCloseButton && !!this.mobileConfig.approveButtonText === false)\n );\n }\n\n /** @hidden */\n _compareWith = (o1: any, o2: any): boolean => o1 === o2;\n\n /** Function to compare the option values with the selected values. */\n @Input()\n set compareWith(fn: (o1: any, o2: any) => boolean) {\n if (typeof fn !== 'function') {\n throw Error('compareWith` must be a function.');\n }\n this._compareWith = fn;\n if (this._selectionModel) {\n // A different comparator means the selection could change.\n this._initializeSelection();\n }\n }\n get compareWith(): (o1: any, o2: any) => boolean {\n return this._compareWith;\n }\n\n /** @hidden */\n get focused(): boolean {\n return this._focused || this._isOpen;\n }\n\n /** @hidden */\n get calculatedMaxHeight(): number {\n return this._maxHeight || this._calculatedMaxHeight;\n }\n\n /** @hidden */\n constructor(\n @Attribute('tabindex') _tabIndex: string,\n @Optional() private readonly _rtlService: RtlService,\n private readonly _keyManagerService: SelectKeyManagerService,\n private readonly _changeDetectorRef: ChangeDetectorRef,\n private readonly _viewContainerRef: ViewContainerRef,\n @Optional() private readonly _dynamicComponentService: DynamicComponentService,\n @Optional() @Self() private readonly ngControl: NgControl,\n @Optional() private readonly _injector: Injector,\n readonly _contentDensityObserver: ContentDensityObserver\n ) {\n if (this.ngControl) {\n this.ngControl.valueAccessor = this;\n }\n this._tabIndex = parseInt(_tabIndex, 10) || 0;\n }\n\n /** @hidden */\n ngOnInit(): void {\n this._initializeCommonBehavior();\n }\n\n /** @hidden */\n ngAfterViewInit(): void {\n this._keyManagerService._initKeyManager();\n this._setupMobileMode();\n }\n\n /** @hidden */\n ngAfterContentInit(): void {\n this._registerEventsAfterContentInit();\n }\n\n /** @hidden */\n ngOnChanges(changes: SimpleChanges): void {\n if (changes['typeaheadDebounceInterval'] && this._keyManagerService._keyManager) {\n this._keyManagerService._keyManager.withTypeAhead(this.typeaheadDebounceInterval);\n } else if (changes['disabled']) {\n this._tabIndex = this.disabled ? -1 : 0;\n }\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this._subscriptions.unsubscribe();\n this._cleanupCommonBehavior();\n }\n\n /** @hidden */\n onChange: (value: any) => void = () => {};\n\n /** @hidden */\n onTouched = (): void => {};\n\n /** Toggles the open state of the select. */\n @HostListener('click')\n toggle(): void {\n this._isOpen ? this.close() : this.open();\n }\n\n /** Opens the select popover body. */\n open(): void {\n if (this.disabled || this.readonly || !this._options || !this._getItemCount() || this._isOpen) {\n return;\n }\n this._isOpen = true;\n\n this._controlElemFontSize = parseInt(\n getComputedStyle(this._controlElementRef.nativeElement).fontSize || '0',\n 10\n );\n\n this._keyManagerService._keyManager.withHorizontalOrientation(null);\n this._highlightCorrectOption();\n this._changeDetectorRef.markForCheck();\n\n this._controlElementRef.nativeElement.focus();\n\n this.isOpenChange.emit(true);\n }\n\n /** @hidden */\n close(forceClose: boolean = false): void {\n if (this._isOpen || forceClose) {\n this._isOpen = false;\n this._keyManagerService._keyManager.withHorizontalOrientation(this._isRtl() ? 'rtl' : 'ltr');\n this._changeDetectorRef.markForCheck();\n this.onTouched();\n\n this.isOpenChange.emit(false);\n }\n }\n\n /** Focuses select control. */\n focus(): void {\n (this._controlElementRef?.nativeElement as HTMLElement).focus();\n }\n\n /** Blurs select control. */\n blur(): void {\n (this._controlElementRef?.nativeElement as HTMLElement).blur();\n }\n\n /** @hidden */\n registerOnChange(fn: (value: any) => void): void {\n this.onChange = fn;\n }\n\n /** @hidden */\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n /** @hidden from ControlValue Accessor */\n writeValue(value: any): void {\n if (this._options) {\n this._setSelectionByValue(value);\n }\n }\n\n /** @hidden */\n _setSelectionByValue(value: any | any[]): void {\n this._selectionModel.clear();\n const correspondingOption = this._selectValue(value);\n\n // Shift focus to the active item. Note that we shouldn't do this in multiple\n // mode, because we don't know what option the user interacted with last.\n if (correspondingOption) {\n this._keyManagerService._keyManager.setActiveItem(correspondingOption);\n } else if (!this._isOpen) {\n // Otherwise reset the highlighted option. Note that we only want to do this while\n // closed, because doing it while open can shift the user's focus unnecessarily.\n this._keyManagerService._keyManager.setActiveItem(-1);\n }\n\n this._changeDetectorRef.markForCheck();\n }\n\n /** @hidden */\n _selectValue(value: any): OptionComponent | undefined {\n const correspondingOption = this._options.find((option: OptionComponent) => {\n try {\n // Treat null as a special reset value.\n return option.value != null && this._compareWith(option.value, value);\n } catch (error) {\n if (isDevMode()) {\n // Notify developers of errors in their comparator.\n console.warn(error);\n }\n return false;\n }\n });\n\n if (correspondingOption) {\n this._selectionModel.select(correspondingOption);\n }\n\n return correspondingOption;\n }\n\n /** @hidden */\n _popoverOpenChangeHandle(isOpen: boolean): void {\n isOpen ? this.open() : this.close();\n }\n\n /** @hidden Returns _keyManagerService. */\n _getKeyService(): SelectKeyManagerService {\n return this._keyManagerService;\n }\n\n /** @hidden */\n _setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled;\n this._changeDetectorRef.markForCheck();\n\n this._tabIndex = -1;\n }\n\n /** @hidden */\n _highlightCorrectOption(): void {\n if (this._keyManagerService._keyManager && this._selectionModel.isEmpty()) {\n this._keyManagerService._keyManager.setFirstItemActive();\n } else if (this._keyManagerService._keyManager && !this._selectionModel.isEmpty()) {\n this._keyManagerService._keyManager.setActiveItem(this.selected);\n }\n }\n\n /** @hidden */\n _cleanupCommonBehavior(): void {\n this._destroy.next();\n this._destroy.complete();\n }\n\n /** @hidden */\n _initializeSelection(): void {\n // Defer setting the value in order to avoid the \"Expression\n // has changed after it was checked\" errors from Angular.\n Promise.resolve().then(() => {\n this._setSelectionByValue(this.ngControl ? this.ngControl.value : this._internalValue);\n });\n }\n\n /**\n * Expose outside of this mixin to give component ability\n * to update caluclatedMaxHeight if needed\n * @hidden\n */\n _updateCalculatedHeight(): void {\n this._calculatedMaxHeight = window.innerHeight * 0.45;\n }\n\n /** @hidden */\n _getOptionScrollPosition(optionIndex: number, itemHeight: number, currentScrollPosition: number): number {\n const optionHeight = this._options.get(optionIndex)?._getHtmlElement().offsetHeight || itemHeight;\n const optionOffset = optionIndex * optionHeight;\n if (optionOffset < currentScrollPosition) {\n return optionOffset;\n }\n\n if (optionOffset + optionHeight > currentScrollPosition + SELECT_PANEL_MAX_HEIGHT) {\n return Math.max(0, optionOffset - SELECT_PANEL_MAX_HEIGHT + optionHeight);\n }\n return currentScrollPosition;\n }\n\n /** @hidden */\n _getItemHeight(): number {\n // also include border with default value 1.\n return this._controlElemFontSize * SELECT_ITEM_HEIGHT_EM + 1;\n }\n\n /** @hidden */\n _initializeCommonBehavior(): void {\n this._selectionModel = new SelectionModel<OptionComponent>(false);\n this._keyManagerService._component = this;\n\n this._updateCalculatedHeight();\n }\n\n /** @hidden */\n _isRtl(): boolean {\n if (this._rtlService) {\n this._subscriptions.add(\n this._rtlService.rtl.subscribe((rtl) => {\n this._rtl = rtl;\n })\n );\n }\n return this._rtl === true ? true : false;\n }\n\n /** @hidden */\n _registerEventsAfterContentInit(): void {\n this._selectionModel.changed.pipe(takeUntil(this._destroy)).subscribe((event) => {\n event.added.forEach((option) => option._select());\n event.removed.forEach((option) => option._deselect());\n });\n\n this._options.changes.pipe(startWith(null), takeUntil(this._destroy)).subscribe(() => {\n this._resetOptions();\n this._initializeSelection();\n });\n }\n\n /** @hidden */\n @HostListener('keydown', ['$event'])\n _handleKeydown(event: KeyboardEvent): void {\n if (!this.disabled && !this.readonly) {\n this._isOpen\n ? this._keyManagerService._handleOpenKeydown(event)\n : this._keyManagerService._handleClosedKeydown(event);\n }\n if (KeyUtil.isKeyCode(event, [ESCAPE, ENTER, SPACE])) {\n this._controlElementRef.nativeElement.focus();\n }\n }\n\n /** @hidden */\n _getAriaActiveDescendant(): string | null {\n if (this._isOpen && this._keyManagerService._keyManager && this._keyManagerService._keyManager.activeItem) {\n return this._keyManagerService._keyManager.activeItem.id;\n }\n return null;\n }\n\n /** @hidden */\n _onFocus(): void {\n if (!this.disabled) {\n this._focused = true;\n this._changeDetectorRef.markForCheck();\n }\n }\n\n /** @hidden */\n _onBlur(): void {\n this._focused = false;\n\n if (!this.disabled && !this._isOpen) {\n this.onTouched();\n this._changeDetectorRef.markForCheck();\n }\n }\n\n /** @hidden */\n _buttonClick(): void {}\n\n /** @hidden */\n private _resetOptions(): void {\n const changedOrDestroyed = merge(this._options.changes, this._destroy);\n\n this._optionSelectionChanges.pipe(takeUntil(changedOrDestroyed)).subscribe((event) => {\n this._onSelect(event.source, event.isUserInput);\n\n if (event.isUserInput && this._isOpen) {\n this.close();\n this.focus();\n }\n });\n\n // Listen to changes in the internal state of the _options and react accordingly.\n // Handles cases like the labels of the selected _options changing.\n merge(...this._options.map((option) => option._stateChanges))\n .pipe(takeUntil(changedOrDestroyed))\n .subscribe(() => {\n this._changeDetectorRef.markForCheck();\n });\n }\n\n /**\n * @hidden\n * Invoked when an option is clicked.\n */\n private _onSelect(option: OptionComponent, isUserInput: boolean): void {\n const wasSelected = this._selectionModel.isSelected(option);\n if ((option.value === null || option.value === undefined) && this.unselectMissingOption) {\n option._deselect();\n this._selectionModel.clear();\n this._emitSelectChange(option.value);\n } else {\n if (wasSelected !== option.selected) {\n option.selected ? this._selectionModel.select(option) : this._selectionModel.deselect(option);\n }\n if (isUserInput) {\n this._keyManagerService._keyManager.setActiveItem(option);\n }\n }\n\n if (wasSelected !== this._selectionModel.isSelected(option) || this.mobile) {\n this._emitSelectChange();\n }\n }\n\n /** @hidden */\n private _emitSelectChange(defaultVal?: any): void {\n if (this.canEmitValueChange) {\n this._internalValue =\n this._selectionModel.selected && this._selectionModel.selected.length !== 0\n ? (this.selected as OptionComponent).value\n : defaultVal;\n this.valueChange.emit(this._internalValue);\n this.onChange(this._internalValue);\n this._changeDetectorRef.markForCheck();\n }\n }\n\n /** @hidden */\n private _getItemCount(): number {\n if (this._optionPanel && this._headerElements().length > 0) {\n return this._options.length + this._headerElements().length;\n }\n return this._options.length;\n }\n\n /** @hidden */\n private _headerElements(): NodeListOf<Element> {\n return this._optionPanel?.nativeElement.querySelectorAll(SELECT_HEADER_IDENTIFIER);\n }\n\n /** @hidden */\n private async _setupMobileMode(): Promise<void> {\n if (!this.mobile) {\n return;\n }\n\n const injector = Injector.create({\n providers: [{ provide: SELECT_COMPONENT, useValue: this }],\n parent: this._injector\n });\n\n await this._dynamicComponentService.createDynamicModule(\n this.selectOptionsListTemplate,\n SelectMobileModule,\n SelectMobileComponent,\n this._viewContainerRef,\n injector\n );\n }\n}\n\nexport class DeprecatedSelectCSSClasses implements ModuleDeprecation {\n /** @hidden */\n message = `Select CSS classes fd-select--compact, fd-select--compact--mobile, fd-popover-custom-select-body, fd-popover-custom-list are deprecated`;\n\n /** @hidden */\n alternative = {\n name: 'Inspect the elements of the Select component to see the new classes',\n link: ['/core', 'select']\n };\n}\n","<ng-container *ngTemplateOutlet=\"mobile ? mobileTemplate : desktopTemplate\"></ng-container>\n\n<ng-template #desktopTemplate>\n <!-- @deprecated leaving class fd-popover-custom-list to support backwards compatibility-->\n <fd-popover\n additionalBodyClass=\"fd-select-dropdown fd-popover-custom-list\"\n [isOpen]=\"_isOpen\"\n [triggers]=\"[]\"\n [focusTrapped]=\"true\"\n [disabled]=\"disabled || readonly\"\n [appendTo]=\"appendTo\"\n [closeOnEscapeKey]=\"true\"\n [fillControlMode]=\"fillControlMode\"\n [maxWidth]=\"600\"\n [closeOnOutsideClick]=\"closeOnOutsideClick\"\n (isOpenChange)=\"_popoverOpenChangeHandle($event)\"\n >\n <fd-popover-control>\n <ng-container [ngTemplateOutlet]=\"selectInputControlTemplate\"></ng-container>\n </fd-popover-control>\n\n <!-- @deprecated leaving class fd-popover-custom-select-body to support backwards compatibility-->\n <fd-popover-body class=\"fd-popover-custom-select-body\">\n <ng-container [ngTemplateOutlet]=\"selectOptionsListTemplate\"></ng-container>\n </fd-popover-body>\n </fd-popover>\n</ng-template>\n\n<ng-template #selectInputControlTemplate>\n <div\n class=\"fd-select__control\"\n role=\"listbox\"\n #selectControl\n [class]=\"_selectControlClass\"\n [class.is-active]=\"_isOpen\"\n [class.is-expanded]=\"_isOpen\"\n [class.is-disabled]=\"disabled\"\n [class.is-readonly]=\"readonly\"\n [attr.tabindex]=\"_tabIndex\"\n [attr.id]=\"controlId\"\n [attr.aria-active]=\"_isOpen\"\n aria-live=\"polite\"\n [attr.aria-selected]=\"selected ? selected.selected : false\"\n [attr.aria-expanded]=\"_isOpen\"\n [attr.aria-disabled]=\"disabled\"\n [attr.aria-controls]=\"controlId + '-list-box'\"\n [attr.aria-haspopup]=\"!(this.readonly || this.disabled)\"\n [attr.aria-required]=\"required\"\n [attr.title]=\"triggerValue\"\n [attr.aria-label]=\"ariaLabel || ('platformSelect.selectOptionLabel' | fdTranslate)\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-activedescendant]=\"_getAriaActiveDescendant()\"\n (focus)=\"_onFocus()\"\n (blur)=\"_onBlur()\"\n >\n <div role=\"listitem\" class=\"fd-select__text-content\" [attr.aria-label]=\"triggerValue\">\n <ng-container\n [ngTemplateOutlet]=\"controlTemplate ? controlTemplate : defaultSelectContent\"\n [ngTemplateOutletContext]=\"{ $implicit: triggerValue, selected: selected }\"\n >\n </ng-container>\n\n <ng-template #defaultSelectContent>\n {{ triggerValue }}\n </ng-template>\n </div>\n <span\n class=\"fd-button fd-button--transparent fd-select__button\"\n [ngClass]=\"selectDropdownButtonClass\"\n [class.is-disabled]=\"disabled\"\n *ngIf=\"!readonly\"\n >\n <fd-icon [glyph]=\"glyph\"></fd-icon>\n </span>\n </div>\n</ng-template>\n\n<ng-template #selectOptionsListTemplate>\n <ul\n #optionPanel\n fd-list\n class=\"fd-select-options\"\n role=\"listbox\"\n tabindex=\"-1\"\n [mobileMode]=\"mobile\"\n [dropdownMode]=\"true\"\n [hasMessage]=\"!!stateMessage\"\n [attr.id]=\"controlId + '-list-box'\"\n [style.max-height]=\"maxHeight || calculatedMaxHeight + 'px'\"\n [attr.tooltip]=\"triggerValue\"\n >\n <li\n *ngIf=\"stateMessage\"\n [attr.aria-label]=\"stateMessage\"\n fd-list-message\n tabindex=\"-1\"\n role=\"presentation\"\n [type]=\"state || 'default'\"\n [innerHtml]=\"stateMessage\"\n ></li>\n\n <ng-content></ng-content>\n </ul>\n</ng-template>\n\n<ng-template #mobileTemplate>\n <ng-container [ngTemplateOutlet]=\"selectInputControlTemplate\"></ng-container>\n\n <div #dialogContainer></div>\n</ng-template>\n","import { CONTENT_DENSITY_DIRECTIVE, DeprecatedCompactDirective } from '@fundamental-ngx/core/content-density';\nimport { Directive, forwardRef } from '@angular/core';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: 'fd-select[compact]',\n providers: [\n {\n provide: CONTENT_DENSITY_DIRECTIVE,\n useExisting: forwardRef(() => DeprecatedSelectCompactDirective)\n }\n ]\n})\nexport class DeprecatedSelectCompactDirective extends DeprecatedCompactDirective {\n /** @hidden */\n constructor() {\n super('fd-select');\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { PopoverModule } from '@fundamental-ngx/core/popover';\nimport { ButtonModule } from '@fundamental-ngx/core/button';\nimport { IconModule } from '@fundamental-ngx/core/icon';\nimport { BusyIndicatorModule } from '@fundamental-ngx/core/busy-indicator';\nimport { ListModule } from '@fundamental-ngx/core/list';\nimport { I18nModule } from '@fundamental-ngx/i18n';\nimport { ContentDensityModule } from '@fundamental-ngx/core/content-density';\nimport { SelectComponent } from './select.component';\nimport { OptionComponent } from './option/option.component';\nimport { DeprecatedSelectCompactDirective } from './deprecated-select-compact.directive';\n\n@NgModule({\n declarations: [SelectComponent, OptionComponent, DeprecatedSelectCompactDirective],\n exports: [SelectComponent, OptionComponent, DeprecatedSelectCompactDirective, ContentDensityModule],\n imports: [\n BusyIndicatorModule,\n CommonModule,\n PopoverModule,\n ButtonModule,\n IconModule,\n ListModule,\n ContentDensityModule,\n I18nModule\n ]\n})\nexport class SelectModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2","i2.SelectKeyManagerService","i3","i4"],"mappings":"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"}
|
|
@@ -85,9 +85,9 @@ class ValueStateAriaMessageService {
|
|
|
85
85
|
this.error = 'Value State Error';
|
|
86
86
|
}
|
|
87
87
|
}
|
|
88
|
-
ValueStateAriaMessageService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
89
|
-
ValueStateAriaMessageService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.
|
|
90
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
88
|
+
ValueStateAriaMessageService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ValueStateAriaMessageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
89
|
+
ValueStateAriaMessageService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ValueStateAriaMessageService, providedIn: 'root' });
|
|
90
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ValueStateAriaMessageService, decorators: [{
|
|
91
91
|
type: Injectable,
|
|
92
92
|
args: [{
|
|
93
93
|
providedIn: 'root'
|