@eui/ecl 22.0.0-alpha.39 → 22.0.0-alpha.40
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/docs/changelog.html +28 -0
- package/docs/components/EclAddToCalendarComponent.html +42 -3
- package/docs/components/EclAnimatedNumbersComponent.html +42 -3
- package/docs/components/EclAnimatedNumbersItemComponent.html +42 -3
- package/docs/components/EclAppComponent.html +26 -3
- package/docs/components/EclBannerComponent.html +42 -3
- package/docs/components/EclBlockquoteComponent.html +42 -3
- package/docs/components/EclBreadcrumbComponent.html +104 -4
- package/docs/components/EclBreadcrumbSegmentComponent.html +26 -3
- package/docs/components/EclButtonComponent.html +42 -3
- package/docs/components/EclCardBodyComponent.html +42 -3
- package/docs/components/EclCardComponent.html +42 -3
- package/docs/components/EclCarouselComponent.html +26 -3
- package/docs/components/EclCarouselItemComponent.html +26 -3
- package/docs/components/EclCategoryFilterComponent.html +42 -3
- package/docs/components/EclCategoryFilterItemComponent.html +26 -3
- package/docs/components/EclCategoryFilterListComponent.html +42 -3
- package/docs/components/EclCheckboxHelpComponent.html +42 -3
- package/docs/components/EclCheckboxLabelComponent.html +42 -3
- package/docs/components/EclContentBlockComponent.html +42 -3
- package/docs/components/EclContentItemComponent.html +42 -3
- package/docs/components/EclDateBlockComponent.html +42 -3
- package/docs/components/EclDescriptionListDefinitionComponent.html +42 -3
- package/docs/components/EclExpandableComponent.html +21 -58
- package/docs/components/EclFactFiguresComponent.html +42 -3
- package/docs/components/EclFactFiguresItemComponent.html +42 -3
- package/docs/components/EclFactFiguresViewAllComponent.html +42 -3
- package/docs/components/EclFeaturedComponent.html +42 -3
- package/docs/components/EclFeaturedItemComponent.html +42 -3
- package/docs/components/EclFeaturedItemDescriptionComponent.html +42 -3
- package/docs/components/EclFileComponent.html +26 -3
- package/docs/components/EclFileItemComponent.html +42 -3
- package/docs/components/EclFileItemsComponent.html +26 -3
- package/docs/components/EclFileListsComponent.html +42 -3
- package/docs/components/EclFormGroupComponent.html +42 -3
- package/docs/components/EclFormLabelComponent.html +42 -3
- package/docs/components/EclGalleryComponent.html +26 -3
- package/docs/components/EclGalleryItemComponent.html +26 -3
- package/docs/components/EclHighlightBoxComponent.html +42 -3
- package/docs/components/EclHighlightedSearchComponent.html +26 -3
- package/docs/components/EclInpageNavigationComponent.html +26 -3
- package/docs/components/EclInpageNavigationItemComponent.html +26 -3
- package/docs/components/EclLayoutWrapperComponent.html +42 -3
- package/docs/components/EclListIllustrationComponent.html +42 -3
- package/docs/components/EclListIllustrationItemComponent.html +42 -3
- package/docs/components/EclLoadingIndicatorComponent.html +42 -3
- package/docs/components/EclMediaContainerComponent.html +42 -3
- package/docs/components/EclMegaMenuComponent.html +26 -3
- package/docs/components/EclMegaMenuFeaturedComponent.html +42 -3
- package/docs/components/EclMegaMenuInfoComponent.html +42 -3
- package/docs/components/EclMegaMenuItemComponent.html +26 -3
- package/docs/components/EclMegaMenuSubitemComponent.html +26 -3
- package/docs/components/EclMenuComponent.html +26 -3
- package/docs/components/EclMenuItemComponent.html +26 -3
- package/docs/components/EclMenuMegaComponent.html +26 -3
- package/docs/components/EclMenuMegaItemComponent.html +26 -3
- package/docs/components/EclModalBodyComponent.html +42 -3
- package/docs/components/EclModalComponent.html +26 -3
- package/docs/components/EclModalFooterComponent.html +42 -3
- package/docs/components/EclModalHeaderComponent.html +26 -3
- package/docs/components/EclMultiselectComponent.html +26 -3
- package/docs/components/EclMultiselectDropdownComponent.html +27 -4
- package/docs/components/EclMultiselectInputComponent.html +26 -3
- package/docs/components/EclMultiselectOptgroupComponent.html +42 -3
- package/docs/components/EclMultiselectOptionComponent.html +26 -3
- package/docs/components/EclNavigationListComponent.html +42 -3
- package/docs/components/EclNavigationListItemComponent.html +42 -3
- package/docs/components/EclNewsTickerComponent.html +26 -3
- package/docs/components/EclNewsTickerItemComponent.html +26 -3
- package/docs/components/EclNotificationComponent.html +26 -3
- package/docs/components/EclPageHeaderComponent.html +42 -3
- package/docs/components/EclPageHeaderDescriptionContainerComponent.html +42 -3
- package/docs/components/EclPageHeaderExpandableComponent.html +42 -3
- package/docs/components/EclPageHeaderSectionComponent.html +42 -3
- package/docs/components/EclPageHeaderSectionInfoComponent.html +42 -3
- package/docs/components/EclPaginationComponent.html +26 -3
- package/docs/components/EclPaginationItemComponent.html +26 -3
- package/docs/components/EclPopoverComponent.html +26 -3
- package/docs/components/EclQuizCardComponent.html +26 -3
- package/docs/components/EclQuizComponent.html +42 -3
- package/docs/components/EclRadioHelpComponent.html +26 -3
- package/docs/components/EclRadioLabelComponent.html +26 -3
- package/docs/components/EclRangeBubbleComponent.html +42 -3
- package/docs/components/EclRangeValueComponent.html +42 -3
- package/docs/components/EclRatingFieldComponent.html +21 -21
- package/docs/components/EclSearchFormComponent.html +26 -3
- package/docs/components/EclSelectContainerComponent.html +26 -3
- package/docs/components/EclSiteFooterComponent.html +42 -3
- package/docs/components/EclSiteFooterCoownerComponent.html +42 -3
- package/docs/components/EclSiteFooterCoreComponent.html +42 -3
- package/docs/components/EclSiteFooterFeedbackComponent.html +42 -3
- package/docs/components/EclSiteFooterFixedContentEUComponent.html +42 -3
- package/docs/components/EclSiteFooterRowCommonComponent.html +42 -3
- package/docs/components/EclSiteHeaderActionComponent.html +42 -3
- package/docs/components/EclSiteHeaderBannerTopComponent.html +42 -3
- package/docs/components/EclSiteHeaderComponent.html +26 -3
- package/docs/components/EclSiteHeaderCustomActionComponent.html +42 -3
- package/docs/components/EclSiteHeaderEnvironmentComponent.html +42 -3
- package/docs/components/EclSiteHeaderLanguageComponent.html +26 -3
- package/docs/components/EclSiteHeaderLanguagePopoverComponent.html +26 -3
- package/docs/components/EclSiteHeaderLoginComponent.html +26 -3
- package/docs/components/EclSiteHeaderNotificationComponent.html +42 -3
- package/docs/components/EclSiteHeaderSearchComponent.html +26 -3
- package/docs/components/EclSloganTickerComponent.html +42 -3
- package/docs/components/EclSocialMediaFollowComponent.html +42 -3
- package/docs/components/EclSocialMediaFollowItemComponent.html +26 -3
- package/docs/components/EclSplashPageComponent.html +27 -29
- package/docs/components/EclSplashPageLanguageCategoryComponent.html +27 -34
- package/docs/components/EclSplashPageLanguageContainerComponent.html +27 -34
- package/docs/components/EclSplashPageLanguageLinkComponent.html +39 -45
- package/docs/components/EclSpotlightComponent.html +28 -31
- package/docs/components/EclSpotlightLinkComponent.html +27 -29
- package/docs/components/EclStickyContainerComponent.html +26 -70
- package/docs/components/EclStoryCardComponent.html +27 -4
- package/docs/components/EclStoryCardGridDetailsComponent.html +42 -3
- package/docs/components/EclStoryCardItemComponent.html +26 -3
- package/docs/components/EclTabComponent.html +40 -310
- package/docs/components/EclTabLabelComponent.html +42 -3
- package/docs/components/EclTableSortButtonComponent.html +23 -73
- package/docs/components/EclTabsComponent.html +27 -1619
- package/docs/components/EclTagComponent.html +26 -3
- package/docs/components/EclTextMediaComponent.html +42 -3
- package/docs/components/EclTimelineComponent.html +42 -3
- package/docs/components/EclTimelineItemComponent.html +26 -3
- package/docs/components/EclTimelineItemTogglerComponent.html +26 -3
- package/docs/directives/ECLBaseDirective.html +42 -3
- package/docs/directives/ECLClickOutsideDirective.html +26 -3
- package/docs/directives/EclBannerDescriptionDirective.html +42 -3
- package/docs/directives/EclBannerDescriptionLinkDirective.html +42 -3
- package/docs/directives/EclBannerDescriptionTextDirective.html +42 -3
- package/docs/directives/EclBannerImageDirective.html +42 -3
- package/docs/directives/EclBannerPictureDirective.html +42 -3
- package/docs/directives/EclBannerTitleDirective.html +42 -3
- package/docs/directives/EclBannerTitleLinkDirective.html +42 -3
- package/docs/directives/EclBannerTitleTextDirective.html +42 -3
- package/docs/directives/EclBannerVideoDirective.html +42 -3
- package/docs/directives/EclBlockquoteImageDirective.html +42 -3
- package/docs/directives/EclBlockquotePictureDirective.html +42 -3
- package/docs/directives/EclBreadcrumbContainerDirective.html +42 -3
- package/docs/directives/EclButtonLabelDirective.html +42 -3
- package/docs/directives/EclCardImageDirective.html +42 -3
- package/docs/directives/EclCardPictureDirective.html +42 -3
- package/docs/directives/EclCheckboxDirective.html +42 -3
- package/docs/directives/EclCheckboxInputDirective.html +42 -3
- package/docs/directives/EclContainerDirective.html +42 -3
- package/docs/directives/EclContentBlockDescriptionDirective.html +42 -3
- package/docs/directives/EclContentBlockLabelDirective.html +42 -3
- package/docs/directives/EclContentBlockLabelsDirective.html +42 -3
- package/docs/directives/EclContentBlockLinkDirective.html +42 -3
- package/docs/directives/EclContentBlockLinksContainerDirective.html +42 -3
- package/docs/directives/EclContentBlockLinksDirective.html +42 -3
- package/docs/directives/EclContentBlockListContainerDirective.html +42 -3
- package/docs/directives/EclContentBlockListDirective.html +42 -3
- package/docs/directives/EclContentBlockPrimaryMetaDirective.html +42 -3
- package/docs/directives/EclContentBlockPrimaryMetasDirective.html +42 -3
- package/docs/directives/EclContentBlockSecondaryMetaDirective.html +42 -3
- package/docs/directives/EclContentBlockSecondaryMetaIconDirective.html +42 -3
- package/docs/directives/EclContentBlockSecondaryMetaLabelDirective.html +42 -3
- package/docs/directives/EclContentBlockSecondaryMetasDirective.html +42 -3
- package/docs/directives/EclContentBlockTagDirective.html +42 -3
- package/docs/directives/EclContentBlockTagsDirective.html +42 -3
- package/docs/directives/EclContentBlockTitleDirective.html +42 -3
- package/docs/directives/EclContentItemImageDirective.html +42 -3
- package/docs/directives/EclContentItemPictureDirective.html +42 -3
- package/docs/directives/EclDescriptionListDefinitionItemDirective.html +42 -3
- package/docs/directives/EclDescriptionListDefinitionListDirective.html +42 -3
- package/docs/directives/EclDescriptionListDirective.html +42 -3
- package/docs/directives/EclDescriptionListTermDirective.html +42 -3
- package/docs/directives/EclDividerDirective.html +42 -3
- package/docs/directives/EclFactFiguresDescriptionDirective.html +42 -3
- package/docs/directives/EclFeaturedItemLinkDirective.html +42 -3
- package/docs/directives/EclFeaturedMediaAnchorDirective.html +42 -3
- package/docs/directives/EclFeedbackMessageDirective.html +42 -3
- package/docs/directives/EclFileDownloadDirective.html +42 -3
- package/docs/directives/EclFileImageDirective.html +42 -3
- package/docs/directives/EclFileMetaDirective.html +42 -3
- package/docs/directives/EclFilePictureDirective.html +42 -3
- package/docs/directives/EclFilePreviewDirective.html +42 -3
- package/docs/directives/EclFileTitleDirective.html +42 -3
- package/docs/directives/EclFileTranslationDownloadDirective.html +42 -3
- package/docs/directives/EclFileUploadDirective.html +26 -3
- package/docs/directives/EclGalleryMediaDirective.html +42 -3
- package/docs/directives/EclGalleryPictureDirective.html +42 -3
- package/docs/directives/EclGalleryThumbnailDirective.html +42 -3
- package/docs/directives/EclHelpBlockDirective.html +42 -3
- package/docs/directives/EclHiddenDirective.html +42 -3
- package/docs/directives/EclInpageNavigationListDirective.html +42 -3
- package/docs/directives/EclLabelDirective.html +42 -3
- package/docs/directives/EclLinkDirective.html +42 -3
- package/docs/directives/EclLinkLabelDirective.html +42 -3
- package/docs/directives/EclListIllustrationIconDirective.html +42 -3
- package/docs/directives/EclListIllustrationImageDirective.html +42 -3
- package/docs/directives/EclListIllustrationPictureDirective.html +42 -3
- package/docs/directives/EclLoadingIndicatorOverlayDirective.html +42 -3
- package/docs/directives/EclMediaContainerCaptionDirective.html +42 -3
- package/docs/directives/EclMediaContainerCreditDirective.html +42 -3
- package/docs/directives/EclMediaContainerIframeDirective.html +42 -3
- package/docs/directives/EclMediaContainerItemAudioDescriptionDirective.html +42 -3
- package/docs/directives/EclMediaContainerItemDirective.html +42 -3
- package/docs/directives/EclMediaContainerPictureDirective.html +42 -3
- package/docs/directives/EclMegaMenuContainerDirective.html +42 -3
- package/docs/directives/EclMegaMenuFeaturedImageDirective.html +42 -3
- package/docs/directives/EclMegaMenuFeaturedListDirective.html +42 -3
- package/docs/directives/EclMegaMenuFeaturedListItemDescriptionDirective.html +42 -3
- package/docs/directives/EclMegaMenuFeaturedListItemDirective.html +42 -3
- package/docs/directives/EclMegaMenuFeaturedPictureDirective.html +42 -3
- package/docs/directives/EclMegaMenuListDirective.html +42 -3
- package/docs/directives/EclMegaMenuSpacerDirective.html +42 -3
- package/docs/directives/EclMegaMenuSublistDirective.html +26 -3
- package/docs/directives/EclModalBodyFixedContentDirective.html +42 -3
- package/docs/directives/EclModalCloseDirective.html +26 -3
- package/docs/directives/EclModalTriggerDirective.html +42 -3
- package/docs/directives/EclMultiselectOptionDirective.html +42 -3
- package/docs/directives/EclNavigationListImageDirective.html +42 -3
- package/docs/directives/EclNavigationListPictureDirective.html +42 -3
- package/docs/directives/EclNewsTickerIconDirective.html +42 -3
- package/docs/directives/EclNotificationTitleDirective.html +42 -3
- package/docs/directives/EclOrderedListDirective.html +42 -3
- package/docs/directives/EclOrderedListItemDirective.html +42 -3
- package/docs/directives/EclPageHeaderBackgroundImageDirective.html +42 -3
- package/docs/directives/EclPageHeaderBackgroundPictureDirective.html +42 -3
- package/docs/directives/EclPageHeaderContainerDirective.html +42 -3
- package/docs/directives/EclPageHeaderDescriptionDirective.html +42 -3
- package/docs/directives/EclPageHeaderDescriptionPictureDirective.html +42 -3
- package/docs/directives/EclPageHeaderDescriptionThumbnailDirective.html +42 -3
- package/docs/directives/EclPageHeaderExpandableHeaderDirective.html +42 -3
- package/docs/directives/EclPageHeaderInfoDirective.html +42 -3
- package/docs/directives/EclPageHeaderMetaDirective.html +42 -3
- package/docs/directives/EclPageHeaderMetaItemDirective.html +42 -3
- package/docs/directives/EclPageHeaderTitleDirective.html +42 -3
- package/docs/directives/EclPaginationListDirective.html +42 -3
- package/docs/directives/EclPopoverContentDirective.html +42 -3
- package/docs/directives/EclPopoverToggleDirective.html +26 -3
- package/docs/directives/EclRadioDirective.html +42 -3
- package/docs/directives/EclRadioInputDirective.html +42 -3
- package/docs/directives/EclRangeDirective.html +26 -3
- package/docs/directives/EclSelectDirective.html +42 -3
- package/docs/directives/EclSiteFooterColumnDirective.html +42 -3
- package/docs/directives/EclSiteFooterCoownerItemDirective.html +42 -3
- package/docs/directives/EclSiteFooterCoownerListDirective.html +42 -3
- package/docs/directives/EclSiteFooterDescriptionDirective.html +42 -3
- package/docs/directives/EclSiteFooterDescriptionNameDirective.html +42 -3
- package/docs/directives/EclSiteFooterListDirective.html +42 -3
- package/docs/directives/EclSiteFooterListItemDirective.html +42 -3
- package/docs/directives/EclSiteFooterRowDirective.html +42 -3
- package/docs/directives/EclSiteFooterSectionDirective.html +42 -3
- package/docs/directives/EclSiteFooterSocialMediaDirective.html +42 -3
- package/docs/directives/EclSiteFooterTitleDirective.html +42 -3
- package/docs/directives/EclSiteFooterTitleLinkDirective.html +42 -3
- package/docs/directives/EclSiteHeaderCtaDirective.html +42 -3
- package/docs/directives/EclSiteHeaderCustomActionContentDirective.html +42 -3
- package/docs/directives/EclSiteHeaderCustomActionLinkDirective.html +26 -3
- package/docs/directives/EclSiteHeaderCustomActionTitleDirective.html +42 -3
- package/docs/directives/EclSiteHeaderImageDirective.html +42 -3
- package/docs/directives/EclSiteHeaderLinkDirective.html +42 -3
- package/docs/directives/EclSiteHeaderLoginDescriptionDirective.html +42 -3
- package/docs/directives/EclSiteHeaderLoginSeparatorDirective.html +42 -3
- package/docs/directives/EclSiteHeaderPictureDirective.html +42 -3
- package/docs/directives/EclSocialMediaFollowLinkDirective.html +42 -3
- package/docs/directives/EclSplashPageLanguageItemDirective.html +21 -98
- package/docs/directives/EclSplashPageLanguageListDirective.html +21 -98
- package/docs/directives/EclSplashPageLogoImageDirective.html +23 -29
- package/docs/directives/EclSplashPageLogoLinkDirective.html +23 -29
- package/docs/directives/EclSplashPagePictureDirective.html +23 -29
- package/docs/directives/EclSpotlightImageDirective.html +21 -98
- package/docs/directives/EclSpotlightPictureDirective.html +21 -98
- package/docs/directives/EclStoryCardLinkDirective.html +42 -3
- package/docs/directives/EclStoryCardListDirective.html +42 -3
- package/docs/directives/EclStoryCardPictureDirective.html +42 -3
- package/docs/directives/EclTableBodyDirective.html +35 -29
- package/docs/directives/EclTableCaptionDirective.html +33 -98
- package/docs/directives/EclTableCellDirective.html +35 -29
- package/docs/directives/EclTableCellGroupDirective.html +35 -29
- package/docs/directives/EclTableDirective.html +33 -53
- package/docs/directives/EclTableHeadDirective.html +23 -42
- package/docs/directives/EclTableHeaderDirective.html +49 -130
- package/docs/directives/EclTableResponsiveDirective.html +35 -29
- package/docs/directives/EclTableRowDirective.html +35 -29
- package/docs/directives/EclTagIconExternalDirective.html +42 -3
- package/docs/directives/EclTagSetDirective.html +42 -3
- package/docs/directives/EclTagSetItemDirective.html +42 -3
- package/docs/directives/EclTextAreaDirective.html +42 -3
- package/docs/directives/EclTextInputDirective.html +42 -3
- package/docs/directives/EclTimelineItemLabelDirective.html +42 -3
- package/docs/directives/EclTimelineItemTitleDirective.html +42 -3
- package/docs/directives/EclTimelineSetDirective.html +42 -3
- package/docs/directives/EclUnorderedListDirective.html +42 -3
- package/docs/directives/EclUnorderedListItemDirective.html +42 -3
- package/docs/js/search/search_index.js +2 -2
- package/docs/json/ECLBaseDirective.md +5 -2
- package/docs/json/ECLClickOutsideDirective.md +3 -2
- package/docs/json/EclAddToCalendarComponent.md +5 -2
- package/docs/json/EclAnimatedNumbersComponent.md +5 -2
- package/docs/json/EclAnimatedNumbersItemComponent.md +5 -2
- package/docs/json/EclAppComponent.md +3 -2
- package/docs/json/EclBannerComponent.md +5 -2
- package/docs/json/EclBannerDescriptionDirective.md +5 -2
- package/docs/json/EclBannerDescriptionLinkDirective.md +5 -2
- package/docs/json/EclBannerDescriptionTextDirective.md +5 -2
- package/docs/json/EclBannerImageDirective.md +5 -2
- package/docs/json/EclBannerPictureDirective.md +5 -2
- package/docs/json/EclBannerTitleDirective.md +5 -2
- package/docs/json/EclBannerTitleLinkDirective.md +5 -2
- package/docs/json/EclBannerTitleTextDirective.md +5 -2
- package/docs/json/EclBannerVideoDirective.md +5 -2
- package/docs/json/EclBlockquoteComponent.md +5 -2
- package/docs/json/EclBlockquoteImageDirective.md +5 -2
- package/docs/json/EclBlockquotePictureDirective.md +5 -2
- package/docs/json/EclBreadcrumbComponent.md +7 -2
- package/docs/json/EclBreadcrumbContainerDirective.md +5 -2
- package/docs/json/EclBreadcrumbSegmentComponent.md +3 -2
- package/docs/json/EclButtonComponent.md +5 -2
- package/docs/json/EclButtonLabelDirective.md +5 -2
- package/docs/json/EclCardBodyComponent.md +5 -2
- package/docs/json/EclCardComponent.md +5 -2
- package/docs/json/EclCardImageDirective.md +5 -2
- package/docs/json/EclCardPictureDirective.md +5 -2
- package/docs/json/EclCarouselComponent.md +3 -2
- package/docs/json/EclCarouselItemComponent.md +3 -2
- package/docs/json/EclCategoryFilterComponent.md +5 -2
- package/docs/json/EclCategoryFilterItemComponent.md +3 -2
- package/docs/json/EclCategoryFilterListComponent.md +5 -2
- package/docs/json/EclCheckboxDirective.md +5 -2
- package/docs/json/EclCheckboxHelpComponent.md +5 -2
- package/docs/json/EclCheckboxInputDirective.md +5 -2
- package/docs/json/EclCheckboxLabelComponent.md +5 -2
- package/docs/json/EclContainerDirective.md +5 -2
- package/docs/json/EclContentBlockComponent.md +5 -2
- package/docs/json/EclContentBlockDescriptionDirective.md +5 -2
- package/docs/json/EclContentBlockLabelDirective.md +5 -2
- package/docs/json/EclContentBlockLabelsDirective.md +5 -2
- package/docs/json/EclContentBlockLinkDirective.md +5 -2
- package/docs/json/EclContentBlockLinksContainerDirective.md +5 -2
- package/docs/json/EclContentBlockLinksDirective.md +5 -2
- package/docs/json/EclContentBlockListContainerDirective.md +5 -2
- package/docs/json/EclContentBlockListDirective.md +5 -2
- package/docs/json/EclContentBlockPrimaryMetaDirective.md +5 -2
- package/docs/json/EclContentBlockPrimaryMetasDirective.md +5 -2
- package/docs/json/EclContentBlockSecondaryMetaDirective.md +5 -2
- package/docs/json/EclContentBlockSecondaryMetaIconDirective.md +5 -2
- package/docs/json/EclContentBlockSecondaryMetaLabelDirective.md +5 -2
- package/docs/json/EclContentBlockSecondaryMetasDirective.md +5 -2
- package/docs/json/EclContentBlockTagDirective.md +5 -2
- package/docs/json/EclContentBlockTagsDirective.md +5 -2
- package/docs/json/EclContentBlockTitleDirective.md +5 -2
- package/docs/json/EclContentItemComponent.md +5 -2
- package/docs/json/EclContentItemImageDirective.md +5 -2
- package/docs/json/EclContentItemPictureDirective.md +5 -2
- package/docs/json/EclDateBlockComponent.md +5 -2
- package/docs/json/EclDescriptionListDefinitionComponent.md +5 -2
- package/docs/json/EclDescriptionListDefinitionItemDirective.md +5 -2
- package/docs/json/EclDescriptionListDefinitionListDirective.md +5 -2
- package/docs/json/EclDescriptionListDirective.md +5 -2
- package/docs/json/EclDescriptionListTermDirective.md +5 -2
- package/docs/json/EclDividerDirective.md +5 -2
- package/docs/json/EclExpandableComponent.md +5 -6
- package/docs/json/EclFactFiguresComponent.md +5 -2
- package/docs/json/EclFactFiguresDescriptionDirective.md +5 -2
- package/docs/json/EclFactFiguresItemComponent.md +5 -2
- package/docs/json/EclFactFiguresViewAllComponent.md +5 -2
- package/docs/json/EclFeaturedComponent.md +5 -2
- package/docs/json/EclFeaturedItemComponent.md +5 -2
- package/docs/json/EclFeaturedItemDescriptionComponent.md +5 -2
- package/docs/json/EclFeaturedItemLinkDirective.md +5 -2
- package/docs/json/EclFeaturedMediaAnchorDirective.md +5 -2
- package/docs/json/EclFeedbackMessageDirective.md +5 -2
- package/docs/json/EclFileComponent.md +3 -2
- package/docs/json/EclFileDownloadDirective.md +5 -2
- package/docs/json/EclFileImageDirective.md +5 -2
- package/docs/json/EclFileItemComponent.md +5 -2
- package/docs/json/EclFileItemsComponent.md +3 -2
- package/docs/json/EclFileListsComponent.md +5 -2
- package/docs/json/EclFileMetaDirective.md +5 -2
- package/docs/json/EclFilePictureDirective.md +5 -2
- package/docs/json/EclFilePreviewDirective.md +5 -2
- package/docs/json/EclFileTitleDirective.md +5 -2
- package/docs/json/EclFileTranslationDownloadDirective.md +5 -2
- package/docs/json/EclFileUploadDirective.md +3 -2
- package/docs/json/EclFormGroupComponent.md +5 -2
- package/docs/json/EclFormLabelComponent.md +5 -2
- package/docs/json/EclGalleryComponent.md +3 -2
- package/docs/json/EclGalleryItemComponent.md +3 -2
- package/docs/json/EclGalleryMediaDirective.md +5 -2
- package/docs/json/EclGalleryPictureDirective.md +5 -2
- package/docs/json/EclGalleryThumbnailDirective.md +5 -2
- package/docs/json/EclHelpBlockDirective.md +5 -2
- package/docs/json/EclHiddenDirective.md +5 -2
- package/docs/json/EclHighlightBoxComponent.md +5 -2
- package/docs/json/EclHighlightedSearchComponent.md +3 -2
- package/docs/json/EclInpageNavigationComponent.md +3 -2
- package/docs/json/EclInpageNavigationItemComponent.md +3 -2
- package/docs/json/EclInpageNavigationListDirective.md +5 -2
- package/docs/json/EclLabelDirective.md +5 -2
- package/docs/json/EclLayoutWrapperComponent.md +5 -2
- package/docs/json/EclLinkDirective.md +5 -2
- package/docs/json/EclLinkLabelDirective.md +5 -2
- package/docs/json/EclListIllustrationComponent.md +5 -2
- package/docs/json/EclListIllustrationIconDirective.md +5 -2
- package/docs/json/EclListIllustrationImageDirective.md +5 -2
- package/docs/json/EclListIllustrationItemComponent.md +5 -2
- package/docs/json/EclListIllustrationPictureDirective.md +5 -2
- package/docs/json/EclLoadingIndicatorComponent.md +5 -2
- package/docs/json/EclLoadingIndicatorOverlayDirective.md +5 -2
- package/docs/json/EclMediaContainerCaptionDirective.md +5 -2
- package/docs/json/EclMediaContainerComponent.md +5 -2
- package/docs/json/EclMediaContainerCreditDirective.md +5 -2
- package/docs/json/EclMediaContainerIframeDirective.md +5 -2
- package/docs/json/EclMediaContainerItemAudioDescriptionDirective.md +5 -2
- package/docs/json/EclMediaContainerItemDirective.md +5 -2
- package/docs/json/EclMediaContainerPictureDirective.md +5 -2
- package/docs/json/EclMegaMenuComponent.md +3 -2
- package/docs/json/EclMegaMenuContainerDirective.md +5 -2
- package/docs/json/EclMegaMenuFeaturedComponent.md +5 -2
- package/docs/json/EclMegaMenuFeaturedImageDirective.md +5 -2
- package/docs/json/EclMegaMenuFeaturedListDirective.md +5 -2
- package/docs/json/EclMegaMenuFeaturedListItemDescriptionDirective.md +5 -2
- package/docs/json/EclMegaMenuFeaturedListItemDirective.md +5 -2
- package/docs/json/EclMegaMenuFeaturedPictureDirective.md +5 -2
- package/docs/json/EclMegaMenuInfoComponent.md +5 -2
- package/docs/json/EclMegaMenuItemComponent.md +3 -2
- package/docs/json/EclMegaMenuListDirective.md +5 -2
- package/docs/json/EclMegaMenuSpacerDirective.md +5 -2
- package/docs/json/EclMegaMenuSubitemComponent.md +3 -2
- package/docs/json/EclMegaMenuSublistDirective.md +3 -2
- package/docs/json/EclMenuComponent.md +3 -2
- package/docs/json/EclMenuItemComponent.md +3 -2
- package/docs/json/EclMenuMegaComponent.md +3 -2
- package/docs/json/EclMenuMegaItemComponent.md +3 -2
- package/docs/json/EclModalBodyComponent.md +5 -2
- package/docs/json/EclModalBodyFixedContentDirective.md +5 -2
- package/docs/json/EclModalCloseDirective.md +3 -2
- package/docs/json/EclModalComponent.md +3 -2
- package/docs/json/EclModalFooterComponent.md +5 -2
- package/docs/json/EclModalHeaderComponent.md +3 -2
- package/docs/json/EclModalTriggerDirective.md +5 -2
- package/docs/json/EclMultiselectComponent.md +3 -2
- package/docs/json/EclMultiselectDropdownComponent.md +3 -2
- package/docs/json/EclMultiselectInputComponent.md +3 -2
- package/docs/json/EclMultiselectOptgroupComponent.md +5 -2
- package/docs/json/EclMultiselectOptionComponent.md +3 -2
- package/docs/json/EclMultiselectOptionDirective.md +5 -2
- package/docs/json/EclNavigationListComponent.md +5 -2
- package/docs/json/EclNavigationListImageDirective.md +5 -2
- package/docs/json/EclNavigationListItemComponent.md +5 -2
- package/docs/json/EclNavigationListPictureDirective.md +5 -2
- package/docs/json/EclNewsTickerComponent.md +3 -2
- package/docs/json/EclNewsTickerIconDirective.md +5 -2
- package/docs/json/EclNewsTickerItemComponent.md +3 -2
- package/docs/json/EclNotificationComponent.md +3 -2
- package/docs/json/EclNotificationTitleDirective.md +5 -2
- package/docs/json/EclOrderedListDirective.md +5 -2
- package/docs/json/EclOrderedListItemDirective.md +5 -2
- package/docs/json/EclPageHeaderBackgroundImageDirective.md +5 -2
- package/docs/json/EclPageHeaderBackgroundPictureDirective.md +5 -2
- package/docs/json/EclPageHeaderComponent.md +5 -2
- package/docs/json/EclPageHeaderContainerDirective.md +5 -2
- package/docs/json/EclPageHeaderDescriptionContainerComponent.md +5 -2
- package/docs/json/EclPageHeaderDescriptionDirective.md +5 -2
- package/docs/json/EclPageHeaderDescriptionPictureDirective.md +5 -2
- package/docs/json/EclPageHeaderDescriptionThumbnailDirective.md +5 -2
- package/docs/json/EclPageHeaderExpandableComponent.md +5 -2
- package/docs/json/EclPageHeaderExpandableHeaderDirective.md +5 -2
- package/docs/json/EclPageHeaderInfoDirective.md +5 -2
- package/docs/json/EclPageHeaderMetaDirective.md +5 -2
- package/docs/json/EclPageHeaderMetaItemDirective.md +5 -2
- package/docs/json/EclPageHeaderSectionComponent.md +5 -2
- package/docs/json/EclPageHeaderSectionInfoComponent.md +5 -2
- package/docs/json/EclPageHeaderTitleDirective.md +5 -2
- package/docs/json/EclPaginationComponent.md +3 -2
- package/docs/json/EclPaginationItemComponent.md +3 -2
- package/docs/json/EclPaginationListDirective.md +5 -2
- package/docs/json/EclPopoverComponent.md +3 -2
- package/docs/json/EclPopoverContentDirective.md +5 -2
- package/docs/json/EclPopoverToggleDirective.md +3 -2
- package/docs/json/EclQuizCardComponent.md +3 -2
- package/docs/json/EclQuizComponent.md +5 -2
- package/docs/json/EclRadioDirective.md +5 -2
- package/docs/json/EclRadioHelpComponent.md +3 -2
- package/docs/json/EclRadioInputDirective.md +5 -2
- package/docs/json/EclRadioLabelComponent.md +3 -2
- package/docs/json/EclRangeBubbleComponent.md +5 -2
- package/docs/json/EclRangeDirective.md +3 -2
- package/docs/json/EclRangeValueComponent.md +5 -2
- package/docs/json/EclRatingFieldComponent.md +4 -4
- package/docs/json/EclSearchFormComponent.md +3 -2
- package/docs/json/EclSelectContainerComponent.md +3 -2
- package/docs/json/EclSelectDirective.md +5 -2
- package/docs/json/EclSiteFooterColumnDirective.md +5 -2
- package/docs/json/EclSiteFooterComponent.md +5 -2
- package/docs/json/EclSiteFooterCoownerComponent.md +5 -2
- package/docs/json/EclSiteFooterCoownerItemDirective.md +5 -2
- package/docs/json/EclSiteFooterCoownerListDirective.md +5 -2
- package/docs/json/EclSiteFooterCoreComponent.md +5 -2
- package/docs/json/EclSiteFooterDescriptionDirective.md +5 -2
- package/docs/json/EclSiteFooterDescriptionNameDirective.md +5 -2
- package/docs/json/EclSiteFooterFeedbackComponent.md +5 -2
- package/docs/json/EclSiteFooterFixedContentEUComponent.md +5 -2
- package/docs/json/EclSiteFooterListDirective.md +5 -2
- package/docs/json/EclSiteFooterListItemDirective.md +5 -2
- package/docs/json/EclSiteFooterRowCommonComponent.md +5 -2
- package/docs/json/EclSiteFooterRowDirective.md +5 -2
- package/docs/json/EclSiteFooterSectionDirective.md +5 -2
- package/docs/json/EclSiteFooterSocialMediaDirective.md +5 -2
- package/docs/json/EclSiteFooterTitleDirective.md +5 -2
- package/docs/json/EclSiteFooterTitleLinkDirective.md +5 -2
- package/docs/json/EclSiteHeaderActionComponent.md +5 -2
- package/docs/json/EclSiteHeaderBannerTopComponent.md +5 -2
- package/docs/json/EclSiteHeaderComponent.md +3 -2
- package/docs/json/EclSiteHeaderCtaDirective.md +5 -2
- package/docs/json/EclSiteHeaderCustomActionComponent.md +3 -2
- package/docs/json/EclSiteHeaderCustomActionContentDirective.md +5 -2
- package/docs/json/EclSiteHeaderCustomActionLinkDirective.md +3 -2
- package/docs/json/EclSiteHeaderCustomActionTitleDirective.md +5 -2
- package/docs/json/EclSiteHeaderEnvironmentComponent.md +5 -2
- package/docs/json/EclSiteHeaderImageDirective.md +5 -2
- package/docs/json/EclSiteHeaderLanguageComponent.md +3 -2
- package/docs/json/EclSiteHeaderLanguagePopoverComponent.md +3 -2
- package/docs/json/EclSiteHeaderLinkDirective.md +5 -2
- package/docs/json/EclSiteHeaderLoginComponent.md +3 -2
- package/docs/json/EclSiteHeaderLoginDescriptionDirective.md +5 -2
- package/docs/json/EclSiteHeaderLoginSeparatorDirective.md +5 -2
- package/docs/json/EclSiteHeaderNotificationComponent.md +5 -2
- package/docs/json/EclSiteHeaderPictureDirective.md +5 -2
- package/docs/json/EclSiteHeaderSearchComponent.md +3 -2
- package/docs/json/EclSloganTickerComponent.md +5 -2
- package/docs/json/EclSocialMediaFollowComponent.md +5 -2
- package/docs/json/EclSocialMediaFollowItemComponent.md +3 -2
- package/docs/json/EclSocialMediaFollowLinkDirective.md +5 -2
- package/docs/json/EclSplashPageComponent.md +5 -2
- package/docs/json/EclSplashPageLanguageCategoryComponent.md +5 -2
- package/docs/json/EclSplashPageLanguageContainerComponent.md +5 -2
- package/docs/json/EclSplashPageLanguageItemDirective.md +5 -2
- package/docs/json/EclSplashPageLanguageLinkComponent.md +5 -2
- package/docs/json/EclSplashPageLanguageListDirective.md +5 -2
- package/docs/json/EclSplashPageLogoImageDirective.md +5 -2
- package/docs/json/EclSplashPageLogoLinkDirective.md +5 -2
- package/docs/json/EclSplashPagePictureDirective.md +5 -2
- package/docs/json/EclSpotlightComponent.md +5 -2
- package/docs/json/EclSpotlightImageDirective.md +5 -2
- package/docs/json/EclSpotlightLinkComponent.md +5 -2
- package/docs/json/EclSpotlightPictureDirective.md +5 -2
- package/docs/json/EclStickyContainerComponent.md +7 -4
- package/docs/json/EclStoryCardComponent.md +3 -2
- package/docs/json/EclStoryCardGridDetailsComponent.md +5 -2
- package/docs/json/EclStoryCardItemComponent.md +3 -2
- package/docs/json/EclStoryCardLinkDirective.md +5 -2
- package/docs/json/EclStoryCardListDirective.md +5 -2
- package/docs/json/EclStoryCardPictureDirective.md +5 -2
- package/docs/json/EclTabComponent.md +5 -4
- package/docs/json/EclTabLabelComponent.md +5 -2
- package/docs/json/EclTableBodyDirective.md +7 -2
- package/docs/json/EclTableCaptionDirective.md +7 -2
- package/docs/json/EclTableCellDirective.md +7 -2
- package/docs/json/EclTableCellGroupDirective.md +7 -2
- package/docs/json/EclTableDirective.md +5 -4
- package/docs/json/EclTableHeadDirective.md +5 -2
- package/docs/json/EclTableHeaderDirective.md +9 -5
- package/docs/json/EclTableResponsiveDirective.md +7 -2
- package/docs/json/EclTableRowDirective.md +7 -2
- package/docs/json/EclTableSortButtonComponent.md +5 -2
- package/docs/json/EclTabsComponent.md +3 -2
- package/docs/json/EclTagComponent.md +3 -2
- package/docs/json/EclTagIconExternalDirective.md +5 -2
- package/docs/json/EclTagSetDirective.md +5 -2
- package/docs/json/EclTagSetItemDirective.md +5 -2
- package/docs/json/EclTextAreaDirective.md +5 -2
- package/docs/json/EclTextInputDirective.md +5 -2
- package/docs/json/EclTextMediaComponent.md +5 -2
- package/docs/json/EclTimelineComponent.md +5 -2
- package/docs/json/EclTimelineItemComponent.md +3 -2
- package/docs/json/EclTimelineItemLabelDirective.md +5 -2
- package/docs/json/EclTimelineItemTitleDirective.md +5 -2
- package/docs/json/EclTimelineItemTogglerComponent.md +3 -2
- package/docs/json/EclTimelineSetDirective.md +5 -2
- package/docs/json/EclUnorderedListDirective.md +5 -2
- package/docs/json/EclUnorderedListItemDirective.md +5 -2
- package/docs/json/documentation.json +15953 -6451
- package/docs/llms.txt +1633 -931
- package/docs/properties.html +1 -1
- package/fesm2022/eui-ecl-components-ecl-banner.mjs +1 -1
- package/fesm2022/eui-ecl-components-ecl-banner.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-breadcrumb.mjs +14 -3
- package/fesm2022/eui-ecl-components-ecl-breadcrumb.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-content-item.mjs +2 -2
- package/fesm2022/eui-ecl-components-ecl-content-item.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-expandable.mjs +22 -20
- package/fesm2022/eui-ecl-components-ecl-expandable.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-fact-figures.mjs +2 -2
- package/fesm2022/eui-ecl-components-ecl-fact-figures.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-featured.mjs +1 -1
- package/fesm2022/eui-ecl-components-ecl-featured.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-media-container.mjs +1 -1
- package/fesm2022/eui-ecl-components-ecl-media-container.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-mega-menu.mjs +2 -2
- package/fesm2022/eui-ecl-components-ecl-mega-menu.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-menu.mjs +2 -2
- package/fesm2022/eui-ecl-components-ecl-menu.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-modal.mjs +1 -1
- package/fesm2022/eui-ecl-components-ecl-modal.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-multiselect.mjs +2 -2
- package/fesm2022/eui-ecl-components-ecl-multiselect.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-navigation-list.mjs +1 -1
- package/fesm2022/eui-ecl-components-ecl-navigation-list.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-news-ticker.mjs +9 -4
- package/fesm2022/eui-ecl-components-ecl-news-ticker.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-notification.mjs +1 -1
- package/fesm2022/eui-ecl-components-ecl-notification.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-page-header.mjs +2 -2
- package/fesm2022/eui-ecl-components-ecl-page-header.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-rating-field.mjs +17 -9
- package/fesm2022/eui-ecl-components-ecl-rating-field.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-site-footer.mjs +2 -2
- package/fesm2022/eui-ecl-components-ecl-site-footer.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-splash-page.mjs +67 -86
- package/fesm2022/eui-ecl-components-ecl-splash-page.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-spotlight.mjs +21 -37
- package/fesm2022/eui-ecl-components-ecl-spotlight.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-sticky-container.mjs +10 -15
- package/fesm2022/eui-ecl-components-ecl-sticky-container.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-story-card.mjs +13 -18
- package/fesm2022/eui-ecl-components-ecl-story-card.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-table.mjs +195 -209
- package/fesm2022/eui-ecl-components-ecl-table.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-tabs.mjs +213 -261
- package/fesm2022/eui-ecl-components-ecl-tabs.mjs.map +1 -1
- package/fesm2022/eui-ecl-core.mjs +15 -17
- package/fesm2022/eui-ecl-core.mjs.map +1 -1
- package/package.json +1 -1
- package/types/eui-ecl-components-ecl-breadcrumb.d.ts +10 -1
- package/types/eui-ecl-components-ecl-breadcrumb.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-expandable.d.ts +14 -10
- package/types/eui-ecl-components-ecl-expandable.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-news-ticker.d.ts +1 -0
- package/types/eui-ecl-components-ecl-news-ticker.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-rating-field.d.ts +10 -2
- package/types/eui-ecl-components-ecl-rating-field.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-splash-page.d.ts +4 -17
- package/types/eui-ecl-components-ecl-splash-page.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-spotlight.d.ts +0 -8
- package/types/eui-ecl-components-ecl-spotlight.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-sticky-container.d.ts +4 -4
- package/types/eui-ecl-components-ecl-sticky-container.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-story-card.d.ts +7 -7
- package/types/eui-ecl-components-ecl-story-card.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-table.d.ts +85 -53
- package/types/eui-ecl-components-ecl-table.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-tabs.d.ts +90 -120
- package/types/eui-ecl-components-ecl-tabs.d.ts.map +1 -1
- package/types/eui-ecl-core.d.ts +4 -5
- package/types/eui-ecl-core.d.ts.map +1 -1
|
@@ -1,14 +1,12 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { inject, ElementRef, Component, input, model, booleanAttribute, signal,
|
|
2
|
+
import { inject, ElementRef, Component, input, model, booleanAttribute, signal, output, viewChild, computed, contentChild, effect, contentChildren, forwardRef, IterableDiffers, ChangeDetectorRef, PLATFORM_ID, DestroyRef, afterNextRender, ViewEncapsulation } from '@angular/core';
|
|
3
3
|
import { ECLBaseDirective, EclBaseEvent, EclRtlService, KeyCode } from '@eui/ecl/core';
|
|
4
4
|
import * as i1 from '@eui/ecl/components/ecl-link';
|
|
5
5
|
import { EclLinkDirective, EUI_ECL_LINK } from '@eui/ecl/components/ecl-link';
|
|
6
6
|
import { BreakpointObserver } from '@angular/cdk/layout';
|
|
7
7
|
import { isPlatformBrowser, NgTemplateOutlet } from '@angular/common';
|
|
8
|
-
import { toObservable } from '@angular/core/rxjs-interop';
|
|
8
|
+
import { toObservable, takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
9
9
|
import { TranslatePipe } from '@ngx-translate/core';
|
|
10
|
-
import { Subject } from 'rxjs';
|
|
11
|
-
import { takeUntil } from 'rxjs/operators';
|
|
12
10
|
import * as i1$1 from '@eui/ecl/components/ecl-button';
|
|
13
11
|
import { EUI_ECL_BUTTON } from '@eui/ecl/components/ecl-button';
|
|
14
12
|
import * as i2 from '@eui/ecl/components/ecl-icon';
|
|
@@ -61,8 +59,8 @@ class EclTabComponent extends ECLBaseDirective {
|
|
|
61
59
|
/**
|
|
62
60
|
* Extra classes to be added to the anchor tag.
|
|
63
61
|
*/
|
|
64
|
-
this.anchorExtraClasses = input(
|
|
65
|
-
...(ngDevMode ? [{ debugName: "anchorExtraClasses" }] : /* istanbul ignore next */ []));
|
|
62
|
+
this.anchorExtraClasses = input(/* @ts-ignore */
|
|
63
|
+
...(ngDevMode ? [undefined, { debugName: "anchorExtraClasses" }] : /* istanbul ignore next */ []));
|
|
66
64
|
/**
|
|
67
65
|
* Hides the tab when true by applying the `ecl-tabs__item--hidden` CSS class.
|
|
68
66
|
*/
|
|
@@ -77,50 +75,49 @@ class EclTabComponent extends ECLBaseDirective {
|
|
|
77
75
|
/**
|
|
78
76
|
* Emits when the tab is selected via click.
|
|
79
77
|
*/
|
|
80
|
-
this.selectTab =
|
|
78
|
+
this.selectTab = output();
|
|
81
79
|
/**
|
|
82
80
|
* Emits when a keydown event occurs on the tab.
|
|
83
81
|
*/
|
|
84
|
-
this.keydownTab =
|
|
82
|
+
this.keydownTab = output();
|
|
85
83
|
/**
|
|
86
84
|
* Reference to the tab content template.
|
|
87
85
|
*/
|
|
88
86
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
89
87
|
this.contentTemplate = viewChild('content', /* @ts-ignore */
|
|
90
88
|
...(ngDevMode ? [{ debugName: "contentTemplate" }] : /* istanbul ignore next */ []));
|
|
91
|
-
/**
|
|
92
|
-
* Reference to the internal link directive used in the tab.
|
|
93
|
-
*/
|
|
94
|
-
this.link = viewChild(EclLinkDirective, /* @ts-ignore */
|
|
95
|
-
...(ngDevMode ? [{ debugName: "link" }] : /* istanbul ignore next */ []));
|
|
96
|
-
/**
|
|
97
|
-
* Reference to the projected tab label component.
|
|
98
|
-
*/
|
|
99
|
-
this.label = contentChild(EclTabLabelComponent, /* @ts-ignore */
|
|
100
|
-
...(ngDevMode ? [{ debugName: "label" }] : /* istanbul ignore next */ []));
|
|
101
89
|
/**
|
|
102
90
|
* Contains the inner HTML of the tab label.
|
|
103
91
|
*/
|
|
104
92
|
this.tabLabel = '';
|
|
93
|
+
/**
|
|
94
|
+
* The computed id used across the tab's DOM hooks.
|
|
95
|
+
*/
|
|
96
|
+
this.finalId = computed(() => this.id() ?? this.generatedId(), /* @ts-ignore */
|
|
97
|
+
...(ngDevMode ? [{ debugName: "finalId" }] : /* istanbul ignore next */ []));
|
|
105
98
|
/**
|
|
106
99
|
* The tab index value for the tab's link.
|
|
107
100
|
*/
|
|
108
101
|
this.hrefTabindex = computed(() => this._isActive() ? 0 : -1, /* @ts-ignore */
|
|
109
102
|
...(ngDevMode ? [{ debugName: "hrefTabindex" }] : /* istanbul ignore next */ []));
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
103
|
+
/**
|
|
104
|
+
* CSS classes applied to the host element, bound via the `host` metadata (`[class]`).
|
|
105
|
+
* Reactive to the base `class` model signal.
|
|
106
|
+
*/
|
|
107
|
+
this.cssClasses = computed(() => this.getCssClasses('ecl-tabs__item'), /* @ts-ignore */
|
|
108
|
+
...(ngDevMode ? [{ debugName: "cssClasses" }] : /* istanbul ignore next */ []));
|
|
109
|
+
this.linkId = computed(() => `${this.finalId()}-link`, /* @ts-ignore */
|
|
115
110
|
...(ngDevMode ? [{ debugName: "linkId" }] : /* istanbul ignore next */ []));
|
|
116
|
-
this.ariaControls = computed(() => {
|
|
117
|
-
return `${this.finalId()}-tabpanel`;
|
|
118
|
-
}, /* @ts-ignore */
|
|
111
|
+
this.ariaControls = computed(() => `${this.finalId()}-tabpanel`, /* @ts-ignore */
|
|
119
112
|
...(ngDevMode ? [{ debugName: "ariaControls" }] : /* istanbul ignore next */ []));
|
|
113
|
+
this.link = viewChild(EclLinkDirective, /* @ts-ignore */
|
|
114
|
+
...(ngDevMode ? [{ debugName: "link" }] : /* istanbul ignore next */ []));
|
|
115
|
+
this.label = contentChild(EclTabLabelComponent, /* @ts-ignore */
|
|
116
|
+
...(ngDevMode ? [{ debugName: "label" }] : /* istanbul ignore next */ []));
|
|
120
117
|
this.generatedId = signal(crypto.randomUUID(), /* @ts-ignore */
|
|
121
118
|
...(ngDevMode ? [{ debugName: "generatedId" }] : /* istanbul ignore next */ []));
|
|
122
|
-
this.isFirstCall = true;
|
|
123
119
|
this.elementRef = inject(ElementRef);
|
|
120
|
+
this.isFirstCall = true;
|
|
124
121
|
if (this.isUsingOldSelector) {
|
|
125
122
|
console.warn('"ecl-tab" selector is deprecated; use "div[eclTab]" instead.');
|
|
126
123
|
}
|
|
@@ -147,12 +144,6 @@ class EclTabComponent extends ECLBaseDirective {
|
|
|
147
144
|
this.tabLabel = this.label().el.nativeElement.innerHTML;
|
|
148
145
|
// this._isActive.set(this.isActive());
|
|
149
146
|
}
|
|
150
|
-
/**
|
|
151
|
-
* Returns the CSS classes applied to the host element.
|
|
152
|
-
*/
|
|
153
|
-
get cssClasses() {
|
|
154
|
-
return [super.getCssClasses('ecl-tabs__item')].join(' ').trim();
|
|
155
|
-
}
|
|
156
147
|
/**
|
|
157
148
|
* Returns the inner HTML content of the tab label.
|
|
158
149
|
*/
|
|
@@ -170,18 +161,6 @@ class EclTabComponent extends ECLBaseDirective {
|
|
|
170
161
|
}
|
|
171
162
|
return this.width;
|
|
172
163
|
}
|
|
173
|
-
/**
|
|
174
|
-
* Handles a click event on the tab and emits the `selectTab` event.
|
|
175
|
-
*/
|
|
176
|
-
onTabClick() {
|
|
177
|
-
this.selectTab.next(new EclTabSelectEvent(this));
|
|
178
|
-
}
|
|
179
|
-
/**
|
|
180
|
-
* Handles a keydown event on the tab and emits the `keydownTab` event.
|
|
181
|
-
*/
|
|
182
|
-
onKeydown(event) {
|
|
183
|
-
this.keydownTab.next(event);
|
|
184
|
-
}
|
|
185
164
|
/**
|
|
186
165
|
* Calls the focus method on the inner link directive.
|
|
187
166
|
*/
|
|
@@ -194,23 +173,29 @@ class EclTabComponent extends ECLBaseDirective {
|
|
|
194
173
|
onBlur() {
|
|
195
174
|
this.link().onBlur();
|
|
196
175
|
}
|
|
176
|
+
/**
|
|
177
|
+
* Handles a click event on the tab and emits the `selectTab` event.
|
|
178
|
+
*/
|
|
179
|
+
onTabClick() {
|
|
180
|
+
this.selectTab.emit(new EclTabSelectEvent(this));
|
|
181
|
+
}
|
|
182
|
+
/**
|
|
183
|
+
* Handles a keydown event on the tab and emits the `keydownTab` event.
|
|
184
|
+
*/
|
|
185
|
+
onKeydown(event) {
|
|
186
|
+
this.keydownTab.emit(event);
|
|
187
|
+
}
|
|
197
188
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: EclTabComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
198
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "22.1.2", type: EclTabComponent, isStandalone: true, selector: "div[eclTab]", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, anchorExtraClasses: { classPropertyName: "anchorExtraClasses", publicName: "anchorExtraClasses", isSignal: true, isRequired: false, transformFunction: null }, isHidden: { classPropertyName: "isHidden", publicName: "isHidden", isSignal: true, isRequired: false, transformFunction: null }, isActive: { classPropertyName: "isActive", publicName: "isActive", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { isHidden: "isHiddenChange", selectTab: "selectTab", keydownTab: "keydownTab" }, host: { properties: { "attr.id": "id()", "class
|
|
189
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "22.1.2", type: EclTabComponent, isStandalone: true, selector: "div[eclTab]", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, anchorExtraClasses: { classPropertyName: "anchorExtraClasses", publicName: "anchorExtraClasses", isSignal: true, isRequired: false, transformFunction: null }, isHidden: { classPropertyName: "isHidden", publicName: "isHidden", isSignal: true, isRequired: false, transformFunction: null }, isActive: { classPropertyName: "isActive", publicName: "isActive", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { isHidden: "isHiddenChange", selectTab: "selectTab", keydownTab: "keydownTab" }, host: { properties: { "attr.id": "id()", "class": "cssClasses()", "class.ecl-tabs__item--hidden": "isHidden()" } }, queries: [{ propertyName: "label", first: true, predicate: EclTabLabelComponent, descendants: true, isSignal: true }], viewQueries: [{ propertyName: "contentTemplate", first: true, predicate: ["content"], descendants: true, isSignal: true }, { propertyName: "link", first: true, predicate: EclLinkDirective, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<a\n eclLink\n role=\"tab\"\n class=\"ecl-tabs__link eui-ecl-u-cursor-pointer {{anchorExtraClasses()}}\"\n [class.ecl-tabs__link--active]=\"_isActive()\"\n [attr.aria-selected]=\"_isActive()\"\n [tabindex]=\"hrefTabindex()\"\n (keydown)=\"onKeydown($event)\"\n (click)=\"onTabClick()\"\n [id]=\"linkId()\"\n [attr.aria-controls]=\"ariaControls()\">\n <ng-content select=\"ecl-tab-label\"></ng-content>\n</a>\n\n<ng-template #content>\n <ng-content></ng-content>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i1.EclLinkDirective, selector: "[eclLink]", inputs: ["extraAttributes", "isInverted", "isIconOnly", "isHighlight", "isNoVisited", "isBranded", "variant"] }] }); }
|
|
199
190
|
}
|
|
200
191
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: EclTabComponent, decorators: [{
|
|
201
192
|
type: Component,
|
|
202
193
|
args: [{ selector: 'div[eclTab]', host: {
|
|
203
194
|
'[attr.id]': 'id()',
|
|
195
|
+
'[class]': 'cssClasses()',
|
|
204
196
|
'[class.ecl-tabs__item--hidden]': 'isHidden()',
|
|
205
197
|
}, imports: [...EUI_ECL_LINK], template: "<a\n eclLink\n role=\"tab\"\n class=\"ecl-tabs__link eui-ecl-u-cursor-pointer {{anchorExtraClasses()}}\"\n [class.ecl-tabs__link--active]=\"_isActive()\"\n [attr.aria-selected]=\"_isActive()\"\n [tabindex]=\"hrefTabindex()\"\n (keydown)=\"onKeydown($event)\"\n (click)=\"onTabClick()\"\n [id]=\"linkId()\"\n [attr.aria-controls]=\"ariaControls()\">\n <ng-content select=\"ecl-tab-label\"></ng-content>\n</a>\n\n<ng-template #content>\n <ng-content></ng-content>\n</ng-template>\n" }]
|
|
206
|
-
}], ctorParameters: () => [], propDecorators: { id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], anchorExtraClasses: [{ type: i0.Input, args: [{ isSignal: true, alias: "anchorExtraClasses", required: false }] }], isHidden: [{ type: i0.Input, args: [{ isSignal: true, alias: "isHidden", required: false }] }, { type: i0.Output, args: ["isHiddenChange"] }], isActive: [{ type: i0.Input, args: [{ isSignal: true, alias: "isActive", required: false }] }], selectTab: [{
|
|
207
|
-
type: Output
|
|
208
|
-
}], keydownTab: [{
|
|
209
|
-
type: Output
|
|
210
|
-
}], contentTemplate: [{ type: i0.ViewChild, args: ['content', { isSignal: true }] }], link: [{ type: i0.ViewChild, args: [i0.forwardRef(() => EclLinkDirective), { isSignal: true }] }], label: [{ type: i0.ContentChild, args: [i0.forwardRef(() => EclTabLabelComponent), { isSignal: true }] }], cssClasses: [{
|
|
211
|
-
type: HostBinding,
|
|
212
|
-
args: ['class']
|
|
213
|
-
}] } });
|
|
198
|
+
}], ctorParameters: () => [], propDecorators: { id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], anchorExtraClasses: [{ type: i0.Input, args: [{ isSignal: true, alias: "anchorExtraClasses", required: false }] }], isHidden: [{ type: i0.Input, args: [{ isSignal: true, alias: "isHidden", required: false }] }, { type: i0.Output, args: ["isHiddenChange"] }], isActive: [{ type: i0.Input, args: [{ isSignal: true, alias: "isActive", required: false }] }], selectTab: [{ type: i0.Output, args: ["selectTab"] }], keydownTab: [{ type: i0.Output, args: ["keydownTab"] }], contentTemplate: [{ type: i0.ViewChild, args: ['content', { isSignal: true }] }], link: [{ type: i0.ViewChild, args: [i0.forwardRef(() => EclLinkDirective), { isSignal: true }] }], label: [{ type: i0.ContentChild, args: [i0.forwardRef(() => EclTabLabelComponent), { isSignal: true }] }] } });
|
|
214
199
|
|
|
215
200
|
var ShiftDirection;
|
|
216
201
|
(function (ShiftDirection) {
|
|
@@ -223,14 +208,6 @@ var ShiftDirection;
|
|
|
223
208
|
class EclTabsComponent extends ECLBaseDirective {
|
|
224
209
|
constructor() {
|
|
225
210
|
super();
|
|
226
|
-
/**
|
|
227
|
-
* Adds `ecl-tabs` class to the host if not using the deprecated selector.
|
|
228
|
-
*/
|
|
229
|
-
this.hasClass = !this.isUsingOldSelector;
|
|
230
|
-
/**
|
|
231
|
-
* Marks the component as initialized, enabling ECL CSS that depends on this attribute.
|
|
232
|
-
*/
|
|
233
|
-
this.autoInitialized = 'true';
|
|
234
211
|
/**
|
|
235
212
|
* Class applied to the tab body container.
|
|
236
213
|
*/
|
|
@@ -246,79 +223,91 @@ class EclTabsComponent extends ECLBaseDirective {
|
|
|
246
223
|
this.tabs = contentChildren(forwardRef(() => EclTabComponent), /* @ts-ignore */
|
|
247
224
|
...(ngDevMode ? [{ debugName: "tabs" }] : /* istanbul ignore next */ []));
|
|
248
225
|
/**
|
|
249
|
-
*
|
|
250
|
-
*/
|
|
251
|
-
this.tabsList = viewChild('tabsList', /* @ts-ignore */
|
|
252
|
-
...(ngDevMode ? [{ debugName: "tabsList" }] : /* istanbul ignore next */ []));
|
|
253
|
-
/**
|
|
254
|
-
* Reference to the "more" button.
|
|
255
|
-
*/
|
|
256
|
-
this.moreButton = viewChild('moreButton', /* @ts-ignore */
|
|
257
|
-
...(ngDevMode ? [{ debugName: "moreButton" }] : /* istanbul ignore next */ []));
|
|
258
|
-
/**
|
|
259
|
-
* Reference to the scroll previous button.
|
|
226
|
+
* Tabs displayed in the visible list.
|
|
260
227
|
*/
|
|
261
|
-
this.
|
|
262
|
-
...(ngDevMode ? [{ debugName: "
|
|
228
|
+
this.listTabs = signal([], /* @ts-ignore */
|
|
229
|
+
...(ngDevMode ? [{ debugName: "listTabs" }] : /* istanbul ignore next */ []));
|
|
263
230
|
/**
|
|
264
|
-
*
|
|
231
|
+
* Indicates whether the dropdown is expanded.
|
|
265
232
|
*/
|
|
266
|
-
this.
|
|
267
|
-
...(ngDevMode ? [{ debugName: "
|
|
233
|
+
this.isDropdownExpanded = signal(false, /* @ts-ignore */
|
|
234
|
+
...(ngDevMode ? [{ debugName: "isDropdownExpanded" }] : /* istanbul ignore next */ []));
|
|
268
235
|
/**
|
|
269
|
-
*
|
|
236
|
+
* Indicates whether the scroll previous button is shown.
|
|
270
237
|
*/
|
|
271
|
-
this.
|
|
272
|
-
...(ngDevMode ? [{ debugName: "
|
|
238
|
+
this.isScrollPrevBtnShow = signal(false, /* @ts-ignore */
|
|
239
|
+
...(ngDevMode ? [{ debugName: "isScrollPrevBtnShow" }] : /* istanbul ignore next */ []));
|
|
273
240
|
/**
|
|
274
|
-
*
|
|
241
|
+
* Indicates whether the scroll next button is shown.
|
|
275
242
|
*/
|
|
276
|
-
this.
|
|
277
|
-
...(ngDevMode ? [{ debugName: "
|
|
243
|
+
this.isScrollNextBtnShow = signal(false, /* @ts-ignore */
|
|
244
|
+
...(ngDevMode ? [{ debugName: "isScrollNextBtnShow" }] : /* istanbul ignore next */ []));
|
|
278
245
|
/**
|
|
279
|
-
*
|
|
246
|
+
* CSS transform applied to the scrollable tab list.
|
|
280
247
|
*/
|
|
281
|
-
this.
|
|
248
|
+
this.styleTransform = signal('translate3d(0px, 0px, 0px)', /* @ts-ignore */
|
|
249
|
+
...(ngDevMode ? [{ debugName: "styleTransform" }] : /* istanbul ignore next */ []));
|
|
282
250
|
/**
|
|
283
|
-
*
|
|
251
|
+
* Whether any visible tab is active.
|
|
284
252
|
*/
|
|
285
|
-
this.
|
|
253
|
+
this.isMoreButtonActive = computed(() => this.listTabs().find((el) => el._isActive() && !el.isHidden()) !== undefined, /* @ts-ignore */
|
|
254
|
+
...(ngDevMode ? [{ debugName: "isMoreButtonActive" }] : /* istanbul ignore next */ []));
|
|
286
255
|
/**
|
|
287
|
-
*
|
|
256
|
+
* Get the tabindex for more button.
|
|
288
257
|
*/
|
|
289
|
-
this.
|
|
290
|
-
|
|
258
|
+
this.customTabIndex = computed(() => {
|
|
259
|
+
if (!this.isMoreButtonActive()) {
|
|
260
|
+
return '-1';
|
|
261
|
+
}
|
|
262
|
+
return this.isDropdownExpanded() ? '-1' : '0';
|
|
263
|
+
}, /* @ts-ignore */
|
|
264
|
+
...(ngDevMode ? [{ debugName: "customTabIndex" }] : /* istanbul ignore next */ []));
|
|
291
265
|
/**
|
|
292
|
-
*
|
|
266
|
+
* Returns the number of tabs shown in the dropdown.
|
|
267
|
+
*
|
|
268
|
+
* Counts the dropdown clones that are visible (`isHidden() === false`), which is the
|
|
269
|
+
* exact set rendered in the dropdown. Counting the main tabs' hidden state instead can
|
|
270
|
+
* diverge from what the dropdown shows, because the main-bar hidden signals are updated
|
|
271
|
+
* by the imperative resize measurement pass.
|
|
293
272
|
*/
|
|
294
|
-
this.
|
|
273
|
+
this.hiddenTabsCount = computed(() => this.listTabs().filter((item) => !item.isHidden()).length, /* @ts-ignore */
|
|
274
|
+
...(ngDevMode ? [{ debugName: "hiddenTabsCount" }] : /* istanbul ignore next */ []));
|
|
295
275
|
/**
|
|
296
|
-
*
|
|
276
|
+
* Returns the duration of the transition animation.
|
|
297
277
|
*/
|
|
298
|
-
this.
|
|
299
|
-
...(ngDevMode ? [{ debugName: "
|
|
278
|
+
this.transitionDuration = computed(() => (this.isMobileBreakpoint() ? '0.4s' : '0'), /* @ts-ignore */
|
|
279
|
+
...(ngDevMode ? [{ debugName: "transitionDuration" }] : /* istanbul ignore next */ []));
|
|
280
|
+
this.tabsList = viewChild('tabsList', /* @ts-ignore */
|
|
281
|
+
...(ngDevMode ? [{ debugName: "tabsList" }] : /* istanbul ignore next */ []));
|
|
282
|
+
this.moreButton = viewChild('moreButton', /* @ts-ignore */
|
|
283
|
+
...(ngDevMode ? [{ debugName: "moreButton" }] : /* istanbul ignore next */ []));
|
|
284
|
+
this.btnPrev = viewChild('btnPrev', /* @ts-ignore */
|
|
285
|
+
...(ngDevMode ? [{ debugName: "btnPrev" }] : /* istanbul ignore next */ []));
|
|
286
|
+
this.dropdownList = viewChild('dropdownList', /* @ts-ignore */
|
|
287
|
+
...(ngDevMode ? [{ debugName: "dropdownList" }] : /* istanbul ignore next */ []));
|
|
288
|
+
this.moreItem = viewChild('moreItem', /* @ts-ignore */
|
|
289
|
+
...(ngDevMode ? [{ debugName: "moreItem" }] : /* istanbul ignore next */ []));
|
|
300
290
|
/**
|
|
301
|
-
*
|
|
291
|
+
* Index of the active tab.
|
|
302
292
|
*/
|
|
303
|
-
this.
|
|
304
|
-
...(ngDevMode ? [{ debugName: "
|
|
293
|
+
this.index = signal(0, /* @ts-ignore */
|
|
294
|
+
...(ngDevMode ? [{ debugName: "index" }] : /* istanbul ignore next */ []));
|
|
305
295
|
/**
|
|
306
|
-
*
|
|
296
|
+
* Indicates whether the mobile breakpoint is active.
|
|
307
297
|
*/
|
|
308
|
-
this.
|
|
298
|
+
this.isMobileBreakpoint = signal(false, /* @ts-ignore */
|
|
299
|
+
...(ngDevMode ? [{ debugName: "isMobileBreakpoint" }] : /* istanbul ignore next */ []));
|
|
309
300
|
this.differs = inject(IterableDiffers);
|
|
310
301
|
this.cdkBreakpointObserver = inject(BreakpointObserver);
|
|
311
302
|
this.cd = inject(ChangeDetectorRef);
|
|
312
303
|
this.el = inject(ElementRef);
|
|
313
304
|
this.eclRtlService = inject(EclRtlService);
|
|
314
305
|
this.platformId = inject(PLATFORM_ID);
|
|
315
|
-
this.
|
|
306
|
+
this.destroyRef = inject(DestroyRef);
|
|
316
307
|
this.tabsChanges$ = toObservable(this.tabs);
|
|
308
|
+
this.tabSubscriptions = new Map();
|
|
317
309
|
this.isRtl = false;
|
|
318
310
|
this.TIMEOUT_INTERVAL = 0;
|
|
319
|
-
if (this.isUsingOldSelector) {
|
|
320
|
-
console.warn('"ecl-tabs" selector is deprecated; use "div[eclTabs]" instead.');
|
|
321
|
-
}
|
|
322
311
|
this.differ = this.differs.find([]).create();
|
|
323
312
|
afterNextRender(() => {
|
|
324
313
|
this.observeTabsChanges();
|
|
@@ -332,48 +321,11 @@ class EclTabsComponent extends ECLBaseDirective {
|
|
|
332
321
|
this.handleRtlChangeState();
|
|
333
322
|
}
|
|
334
323
|
}
|
|
335
|
-
ngOnDestroy() {
|
|
336
|
-
this.destroy$.next(true);
|
|
337
|
-
this.destroy$.unsubscribe();
|
|
338
|
-
}
|
|
339
324
|
onClick(target) {
|
|
340
325
|
if (!this.moreButton().el.nativeElement.contains(target) && !this.dropdownList().nativeElement.contains(target)) {
|
|
341
326
|
this.closeDropdown();
|
|
342
327
|
}
|
|
343
328
|
}
|
|
344
|
-
/**
|
|
345
|
-
* Whether the deprecated selector is being used.
|
|
346
|
-
*/
|
|
347
|
-
get isUsingOldSelector() {
|
|
348
|
-
if (this.el?.nativeElement.tagName.toLowerCase() === 'ecl-tabs') {
|
|
349
|
-
return true;
|
|
350
|
-
}
|
|
351
|
-
return false;
|
|
352
|
-
}
|
|
353
|
-
/**
|
|
354
|
-
* Whether any visible tab is active.
|
|
355
|
-
*/
|
|
356
|
-
get isMoreButtonActive() {
|
|
357
|
-
return this.listTabs.find((el) => el._isActive() && !el.isHidden()) !== undefined;
|
|
358
|
-
}
|
|
359
|
-
/**
|
|
360
|
-
* Get the tabindex for more button.
|
|
361
|
-
*/
|
|
362
|
-
get customTabIndex() {
|
|
363
|
-
let result = '0';
|
|
364
|
-
if (this.isMoreButtonActive) {
|
|
365
|
-
if (this.isDropdownExpanded()) {
|
|
366
|
-
result = '-1';
|
|
367
|
-
}
|
|
368
|
-
else {
|
|
369
|
-
result = '0';
|
|
370
|
-
}
|
|
371
|
-
}
|
|
372
|
-
else {
|
|
373
|
-
result = '-1';
|
|
374
|
-
}
|
|
375
|
-
return result;
|
|
376
|
-
}
|
|
377
329
|
/**
|
|
378
330
|
* Scrolls the tab list to the left.
|
|
379
331
|
*/
|
|
@@ -392,84 +344,21 @@ class EclTabsComponent extends ECLBaseDirective {
|
|
|
392
344
|
onDropdownToggle() {
|
|
393
345
|
this.isDropdownExpanded.set(!this.isDropdownExpanded());
|
|
394
346
|
}
|
|
395
|
-
/**
|
|
396
|
-
* Returns the number of tabs hidden in dropdown.
|
|
397
|
-
*/
|
|
398
|
-
getHiddenTabsCount() {
|
|
399
|
-
return this.tabs().filter((item) => item.isHidden()).length;
|
|
400
|
-
}
|
|
401
347
|
/**
|
|
402
348
|
* Returns the label of the tab at the specified index.
|
|
403
349
|
*/
|
|
404
350
|
getTabLabel(index) {
|
|
405
351
|
return this.getTabsAsArray()[index].getTabLabel();
|
|
406
352
|
}
|
|
407
|
-
/**
|
|
408
|
-
* Returns the duration of the transition animation.
|
|
409
|
-
*/
|
|
410
|
-
getTransitionDuration() {
|
|
411
|
-
if (this.isMobileBreakpoint) {
|
|
412
|
-
return '0.4s';
|
|
413
|
-
}
|
|
414
|
-
return '0';
|
|
415
|
-
}
|
|
416
353
|
/**
|
|
417
354
|
* Handles tab selection.
|
|
418
355
|
* @param tab Tab to activate.
|
|
419
356
|
*/
|
|
420
357
|
onTabSelect(tab) {
|
|
421
|
-
this.deactivateAllTabs(Array.from(this.tabs()), this.listTabs);
|
|
358
|
+
this.deactivateAllTabs(Array.from(this.tabs()), this.listTabs());
|
|
422
359
|
this.activateTab(tab);
|
|
423
360
|
this.sendTabSelectEvent(tab);
|
|
424
361
|
}
|
|
425
|
-
/**
|
|
426
|
-
* Handles right arrow key navigation.
|
|
427
|
-
* @param index Current tab index.
|
|
428
|
-
*/
|
|
429
|
-
onTabKeydownArrowRight(index) {
|
|
430
|
-
if (this.isMobileBreakpoint) {
|
|
431
|
-
this.shiftTabs(ShiftDirection.NEXT);
|
|
432
|
-
if (index === this.getTabsCount() - 1) {
|
|
433
|
-
return;
|
|
434
|
-
}
|
|
435
|
-
}
|
|
436
|
-
if (index === this.getTabsCount() - 1 && !this.isMobileBreakpoint) {
|
|
437
|
-
this.focusOnFirstTab();
|
|
438
|
-
}
|
|
439
|
-
else {
|
|
440
|
-
this.focusOnNextTab(index);
|
|
441
|
-
}
|
|
442
|
-
}
|
|
443
|
-
/**
|
|
444
|
-
* Handles left arrow key navigation.
|
|
445
|
-
* @param index Current tab index.
|
|
446
|
-
*/
|
|
447
|
-
onTabKeydownArrowLeft(index) {
|
|
448
|
-
if (this.isMobileBreakpoint) {
|
|
449
|
-
this.shiftTabs(ShiftDirection.PREVIOUS);
|
|
450
|
-
if (index === 0) {
|
|
451
|
-
return;
|
|
452
|
-
}
|
|
453
|
-
}
|
|
454
|
-
if (index === 0 && !this.isMobileBreakpoint) {
|
|
455
|
-
this.focusOnLastTab();
|
|
456
|
-
}
|
|
457
|
-
else {
|
|
458
|
-
this.focusOnPrevTab(index);
|
|
459
|
-
}
|
|
460
|
-
}
|
|
461
|
-
/**
|
|
462
|
-
* Focuses the first tab in the list.
|
|
463
|
-
*/
|
|
464
|
-
onTabKeydownHome() {
|
|
465
|
-
this.focusOnFirstTab();
|
|
466
|
-
}
|
|
467
|
-
/**
|
|
468
|
-
* Focuses the last tab in the list.
|
|
469
|
-
*/
|
|
470
|
-
onTabKeydownEnd() {
|
|
471
|
-
this.focusOnLastTab();
|
|
472
|
-
}
|
|
473
362
|
/**
|
|
474
363
|
* Handles all supported keyboard events for a tab.
|
|
475
364
|
* @param event KeyboardEvent triggered.
|
|
@@ -516,34 +405,83 @@ class EclTabsComponent extends ECLBaseDirective {
|
|
|
516
405
|
}
|
|
517
406
|
}
|
|
518
407
|
onMoreButtonFocus() {
|
|
519
|
-
const index = this.listTabs.findIndex((el) => el._isActive() && !el.isHidden());
|
|
408
|
+
const index = this.listTabs().findIndex((el) => el._isActive() && !el.isHidden());
|
|
520
409
|
if (index < 0)
|
|
521
410
|
return;
|
|
522
411
|
this.openDropdown();
|
|
523
412
|
this.moreButton().el.nativeElement.blur();
|
|
524
413
|
this.focusOnDropdownTab(index);
|
|
525
414
|
}
|
|
415
|
+
/**
|
|
416
|
+
* Handles right arrow key navigation.
|
|
417
|
+
* @param index Current tab index.
|
|
418
|
+
*/
|
|
419
|
+
onTabKeydownArrowRight(index) {
|
|
420
|
+
if (this.isMobileBreakpoint()) {
|
|
421
|
+
this.shiftTabs(ShiftDirection.NEXT);
|
|
422
|
+
if (index === this.getTabsCount() - 1) {
|
|
423
|
+
return;
|
|
424
|
+
}
|
|
425
|
+
}
|
|
426
|
+
if (index === this.getTabsCount() - 1 && !this.isMobileBreakpoint()) {
|
|
427
|
+
this.focusOnFirstTab();
|
|
428
|
+
}
|
|
429
|
+
else {
|
|
430
|
+
this.focusOnNextTab(index);
|
|
431
|
+
}
|
|
432
|
+
}
|
|
433
|
+
/**
|
|
434
|
+
* Handles left arrow key navigation.
|
|
435
|
+
* @param index Current tab index.
|
|
436
|
+
*/
|
|
437
|
+
onTabKeydownArrowLeft(index) {
|
|
438
|
+
if (this.isMobileBreakpoint()) {
|
|
439
|
+
this.shiftTabs(ShiftDirection.PREVIOUS);
|
|
440
|
+
if (index === 0) {
|
|
441
|
+
return;
|
|
442
|
+
}
|
|
443
|
+
}
|
|
444
|
+
if (index === 0 && !this.isMobileBreakpoint()) {
|
|
445
|
+
this.focusOnLastTab();
|
|
446
|
+
}
|
|
447
|
+
else {
|
|
448
|
+
this.focusOnPrevTab(index);
|
|
449
|
+
}
|
|
450
|
+
}
|
|
451
|
+
/**
|
|
452
|
+
* Focuses the first tab in the list.
|
|
453
|
+
*/
|
|
454
|
+
onTabKeydownHome() {
|
|
455
|
+
this.focusOnFirstTab();
|
|
456
|
+
}
|
|
457
|
+
/**
|
|
458
|
+
* Focuses the last tab in the list.
|
|
459
|
+
*/
|
|
460
|
+
onTabKeydownEnd() {
|
|
461
|
+
this.focusOnLastTab();
|
|
462
|
+
}
|
|
526
463
|
onTabTab() {
|
|
527
464
|
this.closeDropdown();
|
|
528
465
|
}
|
|
529
466
|
getCurrentTabIndex(tab) {
|
|
530
467
|
const index = this.getTabsAsArray().indexOf(tab);
|
|
531
|
-
return index !== -1 ? index : this.listTabs.indexOf(tab);
|
|
468
|
+
return index !== -1 ? index : this.listTabs().indexOf(tab);
|
|
532
469
|
}
|
|
533
470
|
shiftTabs(dir) {
|
|
534
|
-
|
|
535
|
-
this.
|
|
536
|
-
this.
|
|
537
|
-
|
|
471
|
+
const newIndex = this.getShifIndex(dir, this.index());
|
|
472
|
+
this.index.set(newIndex);
|
|
473
|
+
this.isScrollPrevBtnShow.set(newIndex >= 1);
|
|
474
|
+
this.isScrollNextBtnShow.set(newIndex < this.getTabsCount() - 1);
|
|
475
|
+
const leftMargin = newIndex === 0 ? 0 : this.btnPrev().el.nativeElement.getBoundingClientRect().width + 13;
|
|
538
476
|
let newOffset = 0;
|
|
539
477
|
if (this.isRtl) {
|
|
540
478
|
newOffset = Math.ceil(this.tabsList().nativeElement.offsetWidth -
|
|
541
|
-
this.getTabsAsArray()[
|
|
542
|
-
this.getTabsAsArray()[
|
|
479
|
+
this.getTabsAsArray()[newIndex].hostElement.offsetLeft -
|
|
480
|
+
this.getTabsAsArray()[newIndex].hostElement.offsetWidth -
|
|
543
481
|
leftMargin);
|
|
544
482
|
}
|
|
545
483
|
else {
|
|
546
|
-
newOffset = Math.ceil(this.getTabsAsArray()[
|
|
484
|
+
newOffset = Math.ceil(this.getTabsAsArray()[newIndex]?.hostElement.offsetLeft - leftMargin);
|
|
547
485
|
}
|
|
548
486
|
const maxScroll = Math.ceil(this.getTabsListWidth() - this.el.nativeElement.getBoundingClientRect().width);
|
|
549
487
|
if (newOffset > maxScroll) {
|
|
@@ -551,15 +489,15 @@ class EclTabsComponent extends ECLBaseDirective {
|
|
|
551
489
|
newOffset = maxScroll;
|
|
552
490
|
}
|
|
553
491
|
if (this.isRtl) {
|
|
554
|
-
this.styleTransform
|
|
492
|
+
this.styleTransform.set(`translate3d(${newOffset}px, 0px, 0px)`);
|
|
555
493
|
}
|
|
556
494
|
else {
|
|
557
|
-
this.styleTransform
|
|
495
|
+
this.styleTransform.set(`translate3d(-${newOffset}px, 0px, 0px)`);
|
|
558
496
|
}
|
|
559
497
|
}
|
|
560
498
|
getShifIndex(dir, index) {
|
|
561
499
|
if (dir === ShiftDirection.NEXT) {
|
|
562
|
-
if (index === this.getTabsCount() - 1 && !this.isMobileBreakpoint) {
|
|
500
|
+
if (index === this.getTabsCount() - 1 && !this.isMobileBreakpoint()) {
|
|
563
501
|
return 0;
|
|
564
502
|
}
|
|
565
503
|
else {
|
|
@@ -567,7 +505,7 @@ class EclTabsComponent extends ECLBaseDirective {
|
|
|
567
505
|
}
|
|
568
506
|
}
|
|
569
507
|
else {
|
|
570
|
-
if (index === 0 && !this.isMobileBreakpoint) {
|
|
508
|
+
if (index === 0 && !this.isMobileBreakpoint()) {
|
|
571
509
|
return this.getTabsCount() - 1;
|
|
572
510
|
}
|
|
573
511
|
else {
|
|
@@ -576,13 +514,22 @@ class EclTabsComponent extends ECLBaseDirective {
|
|
|
576
514
|
}
|
|
577
515
|
}
|
|
578
516
|
createSecondListForDropdown() {
|
|
579
|
-
|
|
517
|
+
const newList = [];
|
|
580
518
|
this.tabs().forEach((tab) => {
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
519
|
+
// Shallow-copying a tab would share the original's `isHidden`/`_isActive`
|
|
520
|
+
// signal references, so writes to a dropdown clone would mutate the real tab
|
|
521
|
+
// (corrupting the main-bar hidden state, the "More" count, and keyboard focus).
|
|
522
|
+
// Build the clone with its own independent writable signals instead. A plain
|
|
523
|
+
// `signal` is used (not `model`) because `model()` may only be called in a class
|
|
524
|
+
// field initializer, and the clone only needs read/`set` access.
|
|
525
|
+
const newTab = {
|
|
526
|
+
...tab,
|
|
527
|
+
isHidden: signal(true),
|
|
528
|
+
_isActive: signal(tab.isActive()),
|
|
529
|
+
};
|
|
530
|
+
newList.push(newTab);
|
|
585
531
|
});
|
|
532
|
+
this.listTabs.set(newList);
|
|
586
533
|
}
|
|
587
534
|
getTabsAsArray() {
|
|
588
535
|
return Array.from(this.tabs());
|
|
@@ -597,7 +544,7 @@ class EclTabsComponent extends ECLBaseDirective {
|
|
|
597
544
|
this.isDropdownExpanded.set(true);
|
|
598
545
|
}
|
|
599
546
|
observeTabsChanges() {
|
|
600
|
-
this.tabsChanges$.pipe(
|
|
547
|
+
this.tabsChanges$.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(this.onTabsChanges.bind(this));
|
|
601
548
|
}
|
|
602
549
|
onTabsChanges() {
|
|
603
550
|
this.diff = this.differ.diff(this.tabs());
|
|
@@ -617,12 +564,18 @@ class EclTabsComponent extends ECLBaseDirective {
|
|
|
617
564
|
this.createSecondListForDropdown();
|
|
618
565
|
}
|
|
619
566
|
connectTabEvents(tab) {
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
}
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
567
|
+
if (this.tabSubscriptions.has(tab)) {
|
|
568
|
+
return;
|
|
569
|
+
}
|
|
570
|
+
const subscriptions = [
|
|
571
|
+
tab.selectTab.subscribe(() => {
|
|
572
|
+
this.onTabSelect(tab);
|
|
573
|
+
}),
|
|
574
|
+
tab.keydownTab.subscribe((event) => {
|
|
575
|
+
this.onTabKeydown(event, tab);
|
|
576
|
+
}),
|
|
577
|
+
];
|
|
578
|
+
this.tabSubscriptions.set(tab, subscriptions);
|
|
626
579
|
}
|
|
627
580
|
focusOnNextTab(index) {
|
|
628
581
|
if (this.getTabsAsArray()[index + 1].isHidden()) {
|
|
@@ -648,7 +601,7 @@ class EclTabsComponent extends ECLBaseDirective {
|
|
|
648
601
|
}
|
|
649
602
|
}
|
|
650
603
|
focusOnPrevTab(index) {
|
|
651
|
-
if (!this.listTabs[index - 1].isHidden()) {
|
|
604
|
+
if (!this.listTabs()[index - 1].isHidden()) {
|
|
652
605
|
this.focusOnDropdownTab(index - 1);
|
|
653
606
|
}
|
|
654
607
|
else {
|
|
@@ -666,8 +619,10 @@ class EclTabsComponent extends ECLBaseDirective {
|
|
|
666
619
|
return this.getTabsAsArray()[0];
|
|
667
620
|
}
|
|
668
621
|
disconnectTabEvents(tab) {
|
|
669
|
-
|
|
670
|
-
|
|
622
|
+
const subscriptions = this.tabSubscriptions.get(tab);
|
|
623
|
+
if (subscriptions) {
|
|
624
|
+
subscriptions.forEach((subscription) => subscription.unsubscribe());
|
|
625
|
+
this.tabSubscriptions.delete(tab);
|
|
671
626
|
}
|
|
672
627
|
}
|
|
673
628
|
deactivateAllTabs(tabs, listTabs) {
|
|
@@ -687,19 +642,19 @@ class EclTabsComponent extends ECLBaseDirective {
|
|
|
687
642
|
observeBreakpointChanges() {
|
|
688
643
|
this.cdkBreakpointObserver
|
|
689
644
|
.observe(['(max-width: 480px)'])
|
|
690
|
-
.pipe(
|
|
645
|
+
.pipe(takeUntilDestroyed(this.destroyRef))
|
|
691
646
|
.subscribe((result) => {
|
|
692
|
-
this.isMobileBreakpoint
|
|
647
|
+
this.isMobileBreakpoint.set(result.matches);
|
|
693
648
|
});
|
|
694
649
|
}
|
|
695
650
|
handleResize() {
|
|
696
651
|
this.closeDropdown();
|
|
697
|
-
if (this.isMobileBreakpoint) {
|
|
652
|
+
if (this.isMobileBreakpoint()) {
|
|
698
653
|
this.handleMobile();
|
|
699
654
|
return;
|
|
700
655
|
}
|
|
701
|
-
this.styleTransform
|
|
702
|
-
this.index
|
|
656
|
+
this.styleTransform.set('translate3d(0px, 0px, 0px)');
|
|
657
|
+
this.index.set(0);
|
|
703
658
|
this.isScrollNextBtnShow.set(false);
|
|
704
659
|
this.isScrollPrevBtnShow.set(false);
|
|
705
660
|
// Reset list width to auto for measurement (direct DOM, same as ECL)
|
|
@@ -739,7 +694,7 @@ class EclTabsComponent extends ECLBaseDirective {
|
|
|
739
694
|
item.isHidden.set(true);
|
|
740
695
|
item.hostElement.classList.add('ecl-tabs__item--hidden');
|
|
741
696
|
if (item._isActive()) {
|
|
742
|
-
this.listTabs[i]._isActive.set(true);
|
|
697
|
+
this.listTabs()[i]._isActive.set(true);
|
|
743
698
|
}
|
|
744
699
|
hiddenItems.push(i);
|
|
745
700
|
}
|
|
@@ -760,10 +715,10 @@ class EclTabsComponent extends ECLBaseDirective {
|
|
|
760
715
|
this.cd.markForCheck();
|
|
761
716
|
}
|
|
762
717
|
hideAllDropdownTabs() {
|
|
763
|
-
this.listTabs.forEach(item => item.isHidden.set(true));
|
|
718
|
+
this.listTabs().forEach(item => item.isHidden.set(true));
|
|
764
719
|
}
|
|
765
720
|
setActiveItemForMainTabs() {
|
|
766
|
-
this.listTabs.forEach((item, index) => {
|
|
721
|
+
this.listTabs().forEach((item, index) => {
|
|
767
722
|
if (item._isActive()) {
|
|
768
723
|
setTimeout(() => this.tabs()[index]._isActive.set(true));
|
|
769
724
|
}
|
|
@@ -774,7 +729,7 @@ class EclTabsComponent extends ECLBaseDirective {
|
|
|
774
729
|
return this.tabsList().nativeElement.getBoundingClientRect().width;
|
|
775
730
|
}
|
|
776
731
|
setHiddenItemsForDropdownTabs(hiddenItems) {
|
|
777
|
-
this.listTabs.forEach((item, index) => {
|
|
732
|
+
this.listTabs().forEach((item, index) => {
|
|
778
733
|
if (hiddenItems.includes(index)) {
|
|
779
734
|
item.isHidden.set(false);
|
|
780
735
|
}
|
|
@@ -806,10 +761,10 @@ class EclTabsComponent extends ECLBaseDirective {
|
|
|
806
761
|
}
|
|
807
762
|
handleRtlChangeState() {
|
|
808
763
|
const isRtlOld = this.isRtl;
|
|
809
|
-
this.eclRtlService.currentRtlState$.pipe(
|
|
764
|
+
this.eclRtlService.currentRtlState$.pipe(takeUntilDestroyed(this.destroyRef)).subscribe((rtlState) => {
|
|
810
765
|
setTimeout(() => {
|
|
811
766
|
this.isRtl = rtlState;
|
|
812
|
-
if (this.isMobileBreakpoint && this.hasRtlChanged(isRtlOld)) {
|
|
767
|
+
if (this.isMobileBreakpoint() && this.hasRtlChanged(isRtlOld)) {
|
|
813
768
|
this.handleRtlChange();
|
|
814
769
|
}
|
|
815
770
|
});
|
|
@@ -820,32 +775,29 @@ class EclTabsComponent extends ECLBaseDirective {
|
|
|
820
775
|
}
|
|
821
776
|
handleRtlChange() {
|
|
822
777
|
this.handleMobile();
|
|
823
|
-
this.styleTransform
|
|
824
|
-
this.index
|
|
778
|
+
this.styleTransform.set('translate3d(0px, 0px, 0px)');
|
|
779
|
+
this.index.set(0);
|
|
825
780
|
}
|
|
826
781
|
observeElementSizeChanges() {
|
|
827
|
-
new ResizeObserver(() => {
|
|
782
|
+
const resizeObserver = new ResizeObserver(() => {
|
|
828
783
|
setTimeout(() => {
|
|
829
784
|
this.handleResize();
|
|
830
785
|
}, this.TIMEOUT_INTERVAL);
|
|
831
|
-
})
|
|
786
|
+
});
|
|
787
|
+
resizeObserver.observe(this.tabsList().nativeElement);
|
|
788
|
+
this.destroyRef.onDestroy(() => resizeObserver.disconnect());
|
|
832
789
|
}
|
|
833
790
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: EclTabsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
834
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.2", type: EclTabsComponent, isStandalone: true, selector: "div[eclTabs]", inputs: { bodyClass: { classPropertyName: "bodyClass", publicName: "bodyClass", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { tabSelect: "tabSelect" }, host: { listeners: { "document:click": "onClick($event.target)" },
|
|
791
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.2", type: EclTabsComponent, isStandalone: true, selector: "div[eclTabs]", inputs: { bodyClass: { classPropertyName: "bodyClass", publicName: "bodyClass", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { tabSelect: "tabSelect" }, host: { attributes: { "data-ecl-auto-initialized": "true" }, listeners: { "document:click": "onClick($event.target)" }, classAttribute: "ecl-tabs" }, queries: [{ propertyName: "tabs", predicate: i0.forwardRef(() => EclTabComponent), isSignal: true }], viewQueries: [{ propertyName: "tabsList", first: true, predicate: ["tabsList"], descendants: true, isSignal: true }, { propertyName: "moreButton", first: true, predicate: ["moreButton"], descendants: true, isSignal: true }, { propertyName: "btnPrev", first: true, predicate: ["btnPrev"], descendants: true, isSignal: true }, { propertyName: "dropdownList", first: true, predicate: ["dropdownList"], descendants: true, isSignal: true }, { propertyName: "moreItem", first: true, predicate: ["moreItem"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"ecl-tabs__container\" [class.ecl-tabs__container--right]=\"isScrollNextBtnShow()\"\n [class.ecl-tabs__container--left]=\"isScrollPrevBtnShow()\">\n <div class=\"ecl-tabs__list\" role=\"tablist\" #tabsList\n [style.transform]=\"styleTransform()\" [style.transition-duration]=\"transitionDuration()\">\n <ng-content select=\"[eclTab]\"></ng-content>\n <div class=\"ecl-tabs__item ecl-tabs__item--more\" #moreItem>\n @if (listTabs().length > 0) {\n <div class=\"ecl-tabs__dropdown\" [class.ecl-tabs__dropdown--show]=\"isDropdownExpanded()\">\n <div class=\"ecl-tabs__dropdown-list\" #dropdownList>\n @for (tab of listTabs(); track tab.finalId(); let i = $index) {\n <div eclTab [isActive]=\"tab._isActive()\" [isHidden]=\"tab.isHidden()\" (click)=\"onTabSelect(tab)\"\n (keydown)=\"onTabKeydown($event, tab)\">\n <ecl-tab-label>{{ getTabLabel(i) }}</ecl-tab-label>\n </div>\n }\n </div>\n </div>\n }\n </div>\n </div>\n <button #moreButton eclButton class=\"ecl-tabs__toggle\" variant=\"tertiary\" [tabindex]=\"customTabIndex()\"\n [attr.aria-expanded]=\"isDropdownExpanded()\" [class.ecl-tabs__toggle--active]=\"isMoreButtonActive()\"\n (click)=\"onDropdownToggle()\" (focus)=\"onMoreButtonFocus()\">\n <span eclButtonLabel>\n {{ 'ecl.common.MORE' | translate }}\n ({{ hiddenTabsCount() }})\n </span>\n <ecl-icon icon=\"corner-arrow\" transform=\"rotate-180\" size=\"fluid\"></ecl-icon>\n </button>\n</div>\n\n<div class=\"ecl-tabs__controls\">\n <button #btnPrev eclButton variant=\"tertiary\" isIconOnly class=\"ecl-tabs__prev\"\n [style.display]=\"isScrollPrevBtnShow() ? 'flex' : 'none'\" (click)=\"onScrollPrev()\">\n <span eclButtonLabel>{{ 'ecl.common.PREVIOUS' | translate }}</span>\n <ecl-icon icon=\"corner-arrow\" transform=\"rotate-270\" size=\"s\" class=\"\"> </ecl-icon>\n </button>\n <button #btnNext eclButton variant=\"tertiary\" isIconOnly class=\"ecl-tabs__next\"\n [style.display]=\"isScrollNextBtnShow() ? 'flex' : 'none'\" (click)=\"onScrollNext()\">\n <span eclButtonLabel>{{ 'ecl.common.NEXT' | translate }}</span>\n <ecl-icon icon=\"corner-arrow\" transform=\"rotate-90\" size=\"s\" class=\"\"> </ecl-icon>\n </button>\n</div>\n\n@for (tab of tabs(); track tab.finalId()) {\n@if (tab._isActive()) {\n<div id=\"{{tab.finalId()}}-tabpanel\" role=\"tabpanel\" aria-labelledby=\"{{tab.finalId()}}-link\" class=\"{{ bodyClass() }}\">\n <ng-container *ngTemplateOutlet=\"tab.contentTemplate()\"></ng-container>\n</div>\n}\n}\n@for (tab of listTabs(); track tab.finalId()) {\n@if (tab._isActive()) {\n<div id=\"{{tab.finalId()}}-tabpanel\" role=\"tabpanel\" aria-labelledby=\"{{tab.finalId()}}-link\" class=\"{{ bodyClass() }}\">\n <ng-container *ngTemplateOutlet=\"tab.contentTemplate()\"></ng-container>\n</div>\n}\n}", dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i1$1.EclButtonComponent, selector: "button[eclButton], button[ecl-button], a[eclButton]", inputs: ["isIconOnly", "variant", "eclStyle", "size", "containerStyleClass"] }, { kind: "directive", type: i1$1.EclButtonLabelDirective, selector: "[eclButtonLabel]" }, { kind: "component", type: i2.EclIconComponent, selector: "ecl-icon", inputs: ["iconSet", "icon", "size", "color", "transform", "ariaLabelledby", "role", "title", "ariaHidden", "focusable", "isFlipHorizontal"] }, { kind: "component", type: EclTabComponent, selector: "div[eclTab]", inputs: ["id", "anchorExtraClasses", "isHidden", "isActive"], outputs: ["isHiddenChange", "selectTab", "keydownTab"] }, { kind: "component", type: EclTabLabelComponent, selector: "ecl-tab-label" }, { kind: "pipe", type: TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
835
792
|
}
|
|
836
793
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: EclTabsComponent, decorators: [{
|
|
837
794
|
type: Component,
|
|
838
|
-
args: [{ selector: 'div[eclTabs]', imports: [TranslatePipe, NgTemplateOutlet, ...EUI_ECL_BUTTON, ...EUI_ECL_ICON, EclTabComponent, EclTabLabelComponent], encapsulation: ViewEncapsulation.None,
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
|
|
844
|
-
args: ['attr.data-ecl-auto-initialized']
|
|
845
|
-
}], bodyClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "bodyClass", required: false }] }], tabSelect: [{ type: i0.Output, args: ["tabSelect"] }], tabs: [{ type: i0.ContentChildren, args: [forwardRef(() => EclTabComponent), { isSignal: true }] }], tabsList: [{ type: i0.ViewChild, args: ['tabsList', { isSignal: true }] }], moreButton: [{ type: i0.ViewChild, args: ['moreButton', { isSignal: true }] }], btnPrev: [{ type: i0.ViewChild, args: ['btnPrev', { isSignal: true }] }], btnNext: [{ type: i0.ViewChild, args: ['btnNext', { isSignal: true }] }], dropdownList: [{ type: i0.ViewChild, args: ['dropdownList', { isSignal: true }] }], moreItem: [{ type: i0.ViewChild, args: ['moreItem', { isSignal: true }] }], onClick: [{
|
|
846
|
-
type: HostListener,
|
|
847
|
-
args: ['document:click', ['$event.target']]
|
|
848
|
-
}] } });
|
|
795
|
+
args: [{ selector: 'div[eclTabs]', imports: [TranslatePipe, NgTemplateOutlet, ...EUI_ECL_BUTTON, ...EUI_ECL_ICON, EclTabComponent, EclTabLabelComponent], encapsulation: ViewEncapsulation.None, host: {
|
|
796
|
+
'class': 'ecl-tabs',
|
|
797
|
+
'data-ecl-auto-initialized': 'true',
|
|
798
|
+
'(document:click)': 'onClick($event.target)',
|
|
799
|
+
}, template: "<div class=\"ecl-tabs__container\" [class.ecl-tabs__container--right]=\"isScrollNextBtnShow()\"\n [class.ecl-tabs__container--left]=\"isScrollPrevBtnShow()\">\n <div class=\"ecl-tabs__list\" role=\"tablist\" #tabsList\n [style.transform]=\"styleTransform()\" [style.transition-duration]=\"transitionDuration()\">\n <ng-content select=\"[eclTab]\"></ng-content>\n <div class=\"ecl-tabs__item ecl-tabs__item--more\" #moreItem>\n @if (listTabs().length > 0) {\n <div class=\"ecl-tabs__dropdown\" [class.ecl-tabs__dropdown--show]=\"isDropdownExpanded()\">\n <div class=\"ecl-tabs__dropdown-list\" #dropdownList>\n @for (tab of listTabs(); track tab.finalId(); let i = $index) {\n <div eclTab [isActive]=\"tab._isActive()\" [isHidden]=\"tab.isHidden()\" (click)=\"onTabSelect(tab)\"\n (keydown)=\"onTabKeydown($event, tab)\">\n <ecl-tab-label>{{ getTabLabel(i) }}</ecl-tab-label>\n </div>\n }\n </div>\n </div>\n }\n </div>\n </div>\n <button #moreButton eclButton class=\"ecl-tabs__toggle\" variant=\"tertiary\" [tabindex]=\"customTabIndex()\"\n [attr.aria-expanded]=\"isDropdownExpanded()\" [class.ecl-tabs__toggle--active]=\"isMoreButtonActive()\"\n (click)=\"onDropdownToggle()\" (focus)=\"onMoreButtonFocus()\">\n <span eclButtonLabel>\n {{ 'ecl.common.MORE' | translate }}\n ({{ hiddenTabsCount() }})\n </span>\n <ecl-icon icon=\"corner-arrow\" transform=\"rotate-180\" size=\"fluid\"></ecl-icon>\n </button>\n</div>\n\n<div class=\"ecl-tabs__controls\">\n <button #btnPrev eclButton variant=\"tertiary\" isIconOnly class=\"ecl-tabs__prev\"\n [style.display]=\"isScrollPrevBtnShow() ? 'flex' : 'none'\" (click)=\"onScrollPrev()\">\n <span eclButtonLabel>{{ 'ecl.common.PREVIOUS' | translate }}</span>\n <ecl-icon icon=\"corner-arrow\" transform=\"rotate-270\" size=\"s\" class=\"\"> </ecl-icon>\n </button>\n <button #btnNext eclButton variant=\"tertiary\" isIconOnly class=\"ecl-tabs__next\"\n [style.display]=\"isScrollNextBtnShow() ? 'flex' : 'none'\" (click)=\"onScrollNext()\">\n <span eclButtonLabel>{{ 'ecl.common.NEXT' | translate }}</span>\n <ecl-icon icon=\"corner-arrow\" transform=\"rotate-90\" size=\"s\" class=\"\"> </ecl-icon>\n </button>\n</div>\n\n@for (tab of tabs(); track tab.finalId()) {\n@if (tab._isActive()) {\n<div id=\"{{tab.finalId()}}-tabpanel\" role=\"tabpanel\" aria-labelledby=\"{{tab.finalId()}}-link\" class=\"{{ bodyClass() }}\">\n <ng-container *ngTemplateOutlet=\"tab.contentTemplate()\"></ng-container>\n</div>\n}\n}\n@for (tab of listTabs(); track tab.finalId()) {\n@if (tab._isActive()) {\n<div id=\"{{tab.finalId()}}-tabpanel\" role=\"tabpanel\" aria-labelledby=\"{{tab.finalId()}}-link\" class=\"{{ bodyClass() }}\">\n <ng-container *ngTemplateOutlet=\"tab.contentTemplate()\"></ng-container>\n</div>\n}\n}" }]
|
|
800
|
+
}], ctorParameters: () => [], propDecorators: { bodyClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "bodyClass", required: false }] }], tabSelect: [{ type: i0.Output, args: ["tabSelect"] }], tabs: [{ type: i0.ContentChildren, args: [forwardRef(() => EclTabComponent), { isSignal: true }] }], tabsList: [{ type: i0.ViewChild, args: ['tabsList', { isSignal: true }] }], moreButton: [{ type: i0.ViewChild, args: ['moreButton', { isSignal: true }] }], btnPrev: [{ type: i0.ViewChild, args: ['btnPrev', { isSignal: true }] }], dropdownList: [{ type: i0.ViewChild, args: ['dropdownList', { isSignal: true }] }], moreItem: [{ type: i0.ViewChild, args: ['moreItem', { isSignal: true }] }] } });
|
|
849
801
|
|
|
850
802
|
const EUI_ECL_TABS = [
|
|
851
803
|
EclTabsComponent, EclTabComponent, EclTabLabelComponent,
|