@eui/ecl 21.0.0-next.9 → 21.0.0-rc.1
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 +863 -0
- package/docs/components/EclAccordionComponent.html +9 -3
- package/docs/components/EclAccordionItemComponent.html +9 -3
- package/docs/components/EclAppComponent.html +3 -3
- package/docs/components/EclBannerComponent.html +17 -5
- package/docs/components/EclBlockquoteComponent.html +3 -3
- package/docs/components/EclBreadcrumbComponent.html +12 -46
- package/docs/components/EclBreadcrumbSegmentComponent.html +10 -4
- package/docs/components/EclButtonComponent.html +9 -3
- package/docs/components/EclCardBodyComponent.html +3 -3
- package/docs/components/EclCardComponent.html +3 -3
- package/docs/components/EclCarouselComponent.html +31 -5
- package/docs/components/EclCarouselItemComponent.html +9 -3
- package/docs/components/EclCategoryFilterComponent.html +9 -3
- package/docs/components/EclCategoryFilterItemComponent.html +21 -5
- package/docs/components/EclCategoryFilterListComponent.html +9 -5
- package/docs/components/EclCheckboxHelpComponent.html +3 -3
- package/docs/components/EclCheckboxLabelComponent.html +3 -3
- package/docs/components/EclContentBlockComponent.html +3 -3
- package/docs/components/EclContentItemComponent.html +3 -3
- package/docs/components/EclDateBlockComponent.html +8 -6
- package/docs/components/EclDescriptionListDefinitionComponent.html +3 -5
- package/docs/components/EclExpandableComponent.html +3 -3
- package/docs/components/EclFactFiguresComponent.html +3 -3
- package/docs/components/EclFactFiguresItemComponent.html +3 -3
- package/docs/components/EclFactFiguresViewAllComponent.html +3 -3
- package/docs/components/EclFeaturedComponent.html +9 -3
- package/docs/components/EclFeaturedItemComponent.html +9 -3
- package/docs/components/EclFeaturedItemDescriptionComponent.html +9 -3
- package/docs/components/EclFileComponent.html +9 -3
- package/docs/components/EclFileItemComponent.html +3 -3
- package/docs/components/EclFileItemsComponent.html +3 -3
- package/docs/components/EclFileTaxonomyComponent.html +3 -3
- package/docs/components/EclFormGroupComponent.html +3 -3
- package/docs/components/EclFormLabelComponent.html +10 -4
- package/docs/components/EclGalleryComponent.html +15 -3
- package/docs/components/EclGalleryFooterComponent.html +9 -9
- package/docs/components/EclGalleryItemComponent.html +4 -75
- package/docs/components/EclIconComponent.html +15 -3
- package/docs/components/EclInpageNavigationComponent.html +19 -42
- package/docs/components/EclInpageNavigationItemComponent.html +10 -4
- package/docs/components/EclListIllustrationComponent.html +3 -3
- package/docs/components/EclListIllustrationItemComponent.html +21 -3
- package/docs/components/EclLoadingIndicatorComponent.html +3 -3
- package/docs/components/EclMediaContainerComponent.html +9 -3
- package/docs/components/EclMegaMenuComponent.html +56 -4
- package/docs/components/EclMegaMenuFeaturedComponent.html +9 -3
- package/docs/components/EclMegaMenuInfoComponent.html +9 -3
- package/docs/components/EclMegaMenuItemComponent.html +39 -3
- package/docs/components/EclMegaMenuSubitemComponent.html +18 -24
- package/docs/components/EclMenuComponent.html +51 -3
- package/docs/components/EclMenuItemComponent.html +33 -3
- package/docs/components/EclMenuMegaComponent.html +9 -3
- package/docs/components/EclMenuMegaItemComponent.html +21 -3
- package/docs/components/EclModalBodyComponent.html +4 -40
- package/docs/components/EclModalComponent.html +9 -5
- package/docs/components/EclModalFooterComponent.html +3 -3
- package/docs/components/EclModalHeaderComponent.html +9 -3
- package/docs/components/EclMultiselectComponent.html +9 -13
- package/docs/components/EclMultiselectDropdownComponent.html +27 -7
- package/docs/components/EclMultiselectInputComponent.html +3 -3
- package/docs/components/EclMultiselectOptgroupComponent.html +3 -3
- package/docs/components/EclMultiselectOptionComponent.html +10 -8
- package/docs/components/EclNavigationListComponent.html +3 -3
- package/docs/components/EclNavigationListItemComponent.html +9 -3
- package/docs/components/EclNewsTickerComponent.html +15 -5
- package/docs/components/EclNewsTickerItemComponent.html +9 -5
- package/docs/components/EclNotificationComponent.html +70 -4
- package/docs/components/EclPageHeaderComponent.html +3 -3
- package/docs/components/EclPageHeaderExpandableComponent.html +15 -4
- package/docs/components/EclPaginationComponent.html +15 -3
- package/docs/components/EclPaginationItemComponent.html +10 -4
- package/docs/components/EclPopoverComponent.html +9 -38
- package/docs/components/EclRadioHelpComponent.html +3 -3
- package/docs/components/EclRadioLabelComponent.html +3 -3
- package/docs/components/EclRangeBubbleComponent.html +15 -3
- package/docs/components/EclRangeValueComponent.html +3 -3
- package/docs/components/EclRatingFieldComponent.html +3 -3
- package/docs/components/EclSearchFormComponent.html +8 -8
- package/docs/components/EclSelectContainerComponent.html +3 -3
- package/docs/components/EclSiteFooterComponent.html +23 -4
- package/docs/components/{EclTabMoreComponent.html → EclSiteFooterCoownerComponent.html} +16 -50
- package/docs/components/EclSiteFooterCoreComponent.html +3 -3
- package/docs/components/EclSiteFooterFixedContentEUComponent.html +4 -4
- package/docs/components/EclSiteFooterRowCommonComponent.html +3 -3
- package/docs/components/EclSiteHeaderActionComponent.html +3 -3
- package/docs/components/EclSiteHeaderBannerTopComponent.html +9 -3
- package/docs/components/EclSiteHeaderComponent.html +9 -22
- package/docs/components/EclSiteHeaderCustomActionComponent.html +9 -3
- package/docs/components/EclSiteHeaderEnvironmentComponent.html +3 -3
- package/docs/components/EclSiteHeaderLanguageComponent.html +9 -3
- package/docs/components/EclSiteHeaderLanguagePopoverComponent.html +10 -4
- package/docs/components/EclSiteHeaderLoginComponent.html +9 -3
- package/docs/components/EclSiteHeaderNotificationComponent.html +3 -3
- package/docs/components/EclSiteHeaderSearchComponent.html +13 -7
- package/docs/components/EclSocialMediaFollowComponent.html +3 -3
- package/docs/components/EclSocialMediaFollowItemComponent.html +34 -5
- package/docs/components/EclSplashPageComponent.html +3 -3
- package/docs/components/EclSplashPageLanguageCategoryComponent.html +3 -3
- package/docs/components/EclSplashPageLanguageContainerComponent.html +3 -3
- package/docs/components/EclSplashPageLanguageLinkComponent.html +3 -3
- package/docs/components/EclSpotlightComponent.html +9 -3
- package/docs/components/EclSpotlightLinkComponent.html +21 -3
- package/docs/components/EclStickyContainerComponent.html +3 -3
- package/docs/components/EclTabComponent.html +10 -6
- package/docs/components/EclTabLabelComponent.html +9 -3
- package/docs/components/EclTableSortButtonComponent.html +9 -3
- package/docs/components/EclTabsComponent.html +46 -74
- package/docs/components/EclTagComponent.html +15 -3
- package/docs/components/EclTimelineComponent.html +3 -3
- package/docs/components/EclTimelineItemComponent.html +3 -3
- package/docs/components/EclTimelineItemTogglerComponent.html +3 -3
- package/docs/directives/ECLClickOutsideDirective.html +5 -1
- package/docs/directives/ECLFormLabelOptionalDirective.html +6 -0
- package/docs/directives/EclBannerDescriptionLinkDirective.html +6 -0
- package/docs/directives/EclBannerImageDirective.html +12 -0
- package/docs/directives/EclBannerTitleLinkDirective.html +6 -0
- package/docs/directives/EclBannerVideoDirective.html +6 -0
- package/docs/directives/EclBreadcrumbContainerDirective.html +6 -23
- package/docs/directives/EclButtonIconContainerDirective.html +6 -0
- package/docs/directives/EclCardImageDirective.html +6 -0
- package/docs/directives/EclCheckboxInputDirective.html +6 -0
- package/docs/directives/EclContentItemImageDirective.html +6 -0
- package/docs/directives/EclDescriptionListDefinitionItemDirective.html +12 -0
- package/docs/directives/EclDescriptionListDefinitionListDirective.html +6 -0
- package/docs/directives/EclDescriptionListTermDirective.html +6 -0
- package/docs/directives/EclDividerDirective.html +6 -0
- package/docs/directives/EclFeaturedItemLinkDirective.html +6 -2
- package/docs/directives/EclFeedbackHiddenDirective.html +385 -0
- package/docs/directives/EclFileDownloadDirective.html +6 -0
- package/docs/directives/EclFileImageDirective.html +6 -0
- package/docs/directives/EclFilePreviewDirective.html +12 -0
- package/docs/directives/EclFileTitleDirective.html +6 -0
- package/docs/directives/EclFileTranslationDownloadDirective.html +6 -0
- package/docs/directives/EclGalleryMediaDirective.html +6 -0
- package/docs/directives/EclGalleryPictureDirective.html +6 -0
- package/docs/{modules/EclFormLabelModule.html → directives/EclHelpHiddenDirective.html} +169 -57
- package/docs/directives/EclIndicatorDirective.html +6 -0
- package/docs/directives/EclInpageNavigationListDirective.html +18 -0
- package/docs/directives/EclLinkDirective.html +150 -8
- package/docs/directives/EclLinkIconContainerDirective.html +6 -0
- package/docs/directives/EclLinkIndicatorDirective.html +6 -0
- package/docs/directives/EclListIllustrationIconDirective.html +6 -0
- package/docs/directives/EclListIllustrationImageDirective.html +6 -0
- package/docs/directives/EclLoadingIndicatorLabelDirective.html +6 -0
- package/docs/directives/EclMediaContainerIframeDirective.html +6 -0
- package/docs/directives/EclMediaContainerItemDirective.html +12 -0
- package/docs/directives/EclMegaMenuContainerDirective.html +6 -0
- package/docs/directives/EclMegaMenuFeaturedImageDirective.html +6 -0
- package/docs/directives/EclMegaMenuFeaturedListDirective.html +6 -0
- package/docs/directives/EclMegaMenuFeaturedListItemDescriptionDirective.html +6 -0
- package/docs/directives/EclMegaMenuFeaturedListItemDirective.html +6 -0
- package/docs/directives/EclMegaMenuListDirective.html +6 -0
- package/docs/directives/EclMegaMenuSpacerDirective.html +6 -0
- package/docs/directives/EclMegaMenuSublistDirective.html +18 -0
- package/docs/directives/EclModalBodyFixedContentDirective.html +6 -0
- package/docs/directives/EclMultiselectOptionDirective.html +11 -5
- package/docs/directives/EclNewsTickerIconDirective.html +6 -0
- package/docs/{modules/EclNotificationModule.html → directives/EclNotificationIconDirective.html} +169 -57
- package/docs/directives/{EclSiteFooterLogoListDirective.html → EclNotificationLinkDirective.html} +57 -161
- package/docs/directives/EclOrderedListDirective.html +6 -0
- package/docs/directives/EclOrderedListItemDirective.html +6 -0
- package/docs/directives/EclPaginationListDirective.html +6 -0
- package/docs/directives/EclPopoverToggleDirective.html +12 -0
- package/docs/directives/EclRadioInputDirective.html +6 -0
- package/docs/directives/EclSiteFooterColumnDirective.html +6 -0
- package/docs/directives/{EclSiteFooterLogoDirective.html → EclSiteFooterCoownerItemDirective.html} +63 -31
- package/docs/directives/{EclSiteFooterLogoItemDirective.html → EclSiteFooterCoownerListDirective.html} +50 -166
- package/docs/directives/EclSiteFooterDescriptionDirective.html +6 -0
- package/docs/directives/EclSiteFooterDescriptionNameDirective.html +6 -0
- package/docs/directives/EclSiteFooterLinkDirective.html +6 -0
- package/docs/directives/EclSiteFooterListDirective.html +6 -19
- package/docs/directives/EclSiteFooterListItemDirective.html +6 -0
- package/docs/directives/EclSiteFooterLogoImageDirective.html +6 -0
- package/docs/directives/EclSiteFooterLogoLinkDirective.html +6 -0
- package/docs/directives/EclSiteFooterRowDirective.html +6 -0
- package/docs/directives/EclSiteFooterSectionDirective.html +0 -96
- package/docs/directives/EclSiteFooterSocialMediaDirective.html +6 -0
- package/docs/directives/EclSiteFooterTitleDirective.html +6 -0
- package/docs/directives/EclSiteFooterTitleLinkDirective.html +6 -0
- package/docs/directives/EclSiteHeaderCtaDirective.html +6 -0
- package/docs/directives/EclSiteHeaderCustomActionContentDirective.html +6 -0
- package/docs/directives/EclSiteHeaderCustomActionTitleDirective.html +6 -0
- package/docs/directives/EclSpotlightImageDirective.html +6 -0
- package/docs/directives/EclTableCaptionDirective.html +6 -0
- package/docs/directives/EclTagSetItemDirective.html +6 -0
- package/docs/directives/EclTimelineSetDirective.html +6 -0
- package/docs/directives/EclUnorderedListDirective.html +6 -0
- package/docs/directives/EclUnorderedListItemDirective.html +6 -0
- package/docs/injectables/EclRtlService.html +6 -0
- package/docs/js/libs/bootstrap-native.js +1 -1
- package/docs/js/libs/vis-network.min.js +78 -0
- package/docs/js/menu-wc.js +53 -2401
- package/docs/js/menu-wc_es5.js +1 -1
- package/docs/js/search/search_index.js +2 -2
- package/docs/miscellaneous/functions.html +5 -1
- package/docs/miscellaneous/variables.html +534 -1395
- package/docs/modules.html +2 -722
- package/docs/overview.html +2 -2
- package/docs/properties.html +1 -1
- package/fesm2022/eui-ecl-components-ecl-accordion.mjs +8 -27
- package/fesm2022/eui-ecl-components-ecl-accordion.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-app.mjs +5 -23
- package/fesm2022/eui-ecl-components-ecl-app.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-banner.mjs +36 -85
- package/fesm2022/eui-ecl-components-ecl-banner.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-blockquote.mjs +11 -30
- package/fesm2022/eui-ecl-components-ecl-blockquote.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-breadcrumb.mjs +15 -42
- package/fesm2022/eui-ecl-components-ecl-breadcrumb.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-button.mjs +14 -34
- package/fesm2022/eui-ecl-components-ecl-button.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-card.mjs +14 -45
- package/fesm2022/eui-ecl-components-ecl-card.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-carousel.mjs +8 -27
- package/fesm2022/eui-ecl-components-ecl-carousel.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-category-filter.mjs +11 -30
- package/fesm2022/eui-ecl-components-ecl-category-filter.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-checkbox.mjs +15 -34
- package/fesm2022/eui-ecl-components-ecl-checkbox.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-content-block.mjs +56 -128
- package/fesm2022/eui-ecl-components-ecl-content-block.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-content-item.mjs +11 -30
- package/fesm2022/eui-ecl-components-ecl-content-item.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-date-block.mjs +5 -23
- package/fesm2022/eui-ecl-components-ecl-date-block.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-date-picker.mjs +5 -23
- package/fesm2022/eui-ecl-components-ecl-date-picker.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-divider.mjs +6 -24
- package/fesm2022/eui-ecl-components-ecl-divider.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-expandable.mjs +5 -23
- package/fesm2022/eui-ecl-components-ecl-expandable.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-fact-figures.mjs +14 -48
- package/fesm2022/eui-ecl-components-ecl-fact-figures.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-featured.mjs +14 -47
- package/fesm2022/eui-ecl-components-ecl-featured.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-feedback-message.mjs +5 -23
- package/fesm2022/eui-ecl-components-ecl-feedback-message.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-file-upload.mjs +5 -23
- package/fesm2022/eui-ecl-components-ecl-file-upload.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-file.mjs +32 -81
- package/fesm2022/eui-ecl-components-ecl-file.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-form-group.mjs +5 -23
- package/fesm2022/eui-ecl-components-ecl-form-group.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-form-label.mjs +51 -22
- package/fesm2022/eui-ecl-components-ecl-form-label.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-gallery.mjs +21 -75
- package/fesm2022/eui-ecl-components-ecl-gallery.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-help-block.mjs +5 -23
- package/fesm2022/eui-ecl-components-ecl-help-block.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-icon.mjs +5 -23
- package/fesm2022/eui-ecl-components-ecl-icon.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-inpage-navigation.mjs +24 -51
- package/fesm2022/eui-ecl-components-ecl-inpage-navigation.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-label.mjs +5 -23
- package/fesm2022/eui-ecl-components-ecl-label.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-link.mjs +44 -41
- package/fesm2022/eui-ecl-components-ecl-link.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-list-illustration.mjs +18 -51
- package/fesm2022/eui-ecl-components-ecl-list-illustration.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-list.mjs +29 -74
- package/fesm2022/eui-ecl-components-ecl-list.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-loading-indicator.mjs +11 -30
- package/fesm2022/eui-ecl-components-ecl-loading-indicator.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-media-container.mjs +17 -50
- package/fesm2022/eui-ecl-components-ecl-media-container.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-mega-menu.mjs +50 -112
- package/fesm2022/eui-ecl-components-ecl-mega-menu.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-menu.mjs +14 -33
- package/fesm2022/eui-ecl-components-ecl-menu.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-modal.mjs +25 -80
- package/fesm2022/eui-ecl-components-ecl-modal.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-multiselect.mjs +27 -66
- package/fesm2022/eui-ecl-components-ecl-multiselect.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-navigation-list.mjs +14 -44
- package/fesm2022/eui-ecl-components-ecl-navigation-list.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-news-ticker.mjs +11 -39
- package/fesm2022/eui-ecl-components-ecl-news-ticker.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-notification.mjs +86 -50
- package/fesm2022/eui-ecl-components-ecl-notification.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-page-header.mjs +43 -100
- package/fesm2022/eui-ecl-components-ecl-page-header.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-pagination.mjs +12 -32
- package/fesm2022/eui-ecl-components-ecl-pagination.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-popover.mjs +16 -44
- package/fesm2022/eui-ecl-components-ecl-popover.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-radio.mjs +14 -32
- package/fesm2022/eui-ecl-components-ecl-radio.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-range.mjs +11 -30
- package/fesm2022/eui-ecl-components-ecl-range.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-rating-field.mjs +5 -23
- package/fesm2022/eui-ecl-components-ecl-rating-field.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-search-form.mjs +12 -32
- package/fesm2022/eui-ecl-components-ecl-search-form.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-select.mjs +8 -33
- package/fesm2022/eui-ecl-components-ecl-select.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-site-footer.mjs +150 -260
- package/fesm2022/eui-ecl-components-ecl-site-footer.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-site-header.mjs +73 -157
- package/fesm2022/eui-ecl-components-ecl-site-header.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-social-media-follow.mjs +14 -32
- package/fesm2022/eui-ecl-components-ecl-social-media-follow.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-splash-page.mjs +29 -74
- package/fesm2022/eui-ecl-components-ecl-splash-page.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-spotlight.mjs +13 -13
- package/fesm2022/eui-ecl-components-ecl-spotlight.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-sticky-container.mjs +5 -23
- package/fesm2022/eui-ecl-components-ecl-sticky-container.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-table.mjs +32 -80
- package/fesm2022/eui-ecl-components-ecl-table.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-tabs.mjs +56 -129
- package/fesm2022/eui-ecl-components-ecl-tabs.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-tag.mjs +14 -33
- package/fesm2022/eui-ecl-components-ecl-tag.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-text-area.mjs +5 -24
- package/fesm2022/eui-ecl-components-ecl-text-area.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-text-input.mjs +5 -24
- package/fesm2022/eui-ecl-components-ecl-text-input.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-timeline.mjs +20 -62
- package/fesm2022/eui-ecl-components-ecl-timeline.mjs.map +1 -1
- package/fesm2022/eui-ecl-core.mjs +25 -62
- package/fesm2022/eui-ecl-core.mjs.map +1 -1
- package/fesm2022/eui-ecl-shared.mjs +3 -3
- package/fesm2022/eui-ecl-shared.mjs.map +1 -1
- package/fesm2022/eui-ecl.mjs +1 -203
- package/fesm2022/eui-ecl.mjs.map +1 -1
- package/package.json +17 -17
- package/types/eui-ecl-components-ecl-accordion.d.ts +1 -13
- package/types/eui-ecl-components-ecl-accordion.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-app.d.ts +2 -13
- package/types/eui-ecl-components-ecl-app.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-banner.d.ts +2 -14
- package/types/eui-ecl-components-ecl-banner.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-blockquote.d.ts +1 -13
- package/types/eui-ecl-components-ecl-blockquote.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-breadcrumb.d.ts +11 -27
- package/types/eui-ecl-components-ecl-breadcrumb.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-button.d.ts +1 -13
- package/types/eui-ecl-components-ecl-button.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-card.d.ts +1 -13
- package/types/eui-ecl-components-ecl-card.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-carousel.d.ts +1 -13
- package/types/eui-ecl-components-ecl-carousel.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-category-filter.d.ts +1 -13
- package/types/eui-ecl-components-ecl-category-filter.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-checkbox.d.ts +1 -12
- package/types/eui-ecl-components-ecl-checkbox.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-content-block.d.ts +1 -12
- package/types/eui-ecl-components-ecl-content-block.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-content-item.d.ts +1 -12
- package/types/eui-ecl-components-ecl-content-item.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-date-block.d.ts +1 -12
- package/types/eui-ecl-components-ecl-date-block.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-date-picker.d.ts +2 -13
- package/types/eui-ecl-components-ecl-date-picker.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-divider.d.ts +1 -12
- package/types/eui-ecl-components-ecl-divider.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-expandable.d.ts +2 -13
- package/types/eui-ecl-components-ecl-expandable.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-fact-figures.d.ts +1 -12
- package/types/eui-ecl-components-ecl-fact-figures.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-featured.d.ts +1 -13
- package/types/eui-ecl-components-ecl-featured.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-feedback-message.d.ts +1 -12
- package/types/eui-ecl-components-ecl-feedback-message.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-file-upload.d.ts +1 -12
- package/types/eui-ecl-components-ecl-file-upload.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-file.d.ts +1 -12
- package/types/eui-ecl-components-ecl-file.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-form-group.d.ts +1 -12
- package/types/eui-ecl-components-ecl-form-group.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-form-label.d.ts +24 -10
- package/types/eui-ecl-components-ecl-form-label.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-gallery.d.ts +3 -20
- package/types/eui-ecl-components-ecl-gallery.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-help-block.d.ts +1 -12
- package/types/eui-ecl-components-ecl-help-block.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-icon.d.ts +1 -12
- package/types/eui-ecl-components-ecl-icon.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-inpage-navigation.d.ts +2 -17
- package/types/eui-ecl-components-ecl-inpage-navigation.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-label.d.ts +1 -12
- package/types/eui-ecl-components-ecl-label.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-link.d.ts +17 -16
- package/types/eui-ecl-components-ecl-link.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-list-illustration.d.ts +1 -12
- package/types/eui-ecl-components-ecl-list-illustration.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-list.d.ts +1 -12
- package/types/eui-ecl-components-ecl-list.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-loading-indicator.d.ts +1 -13
- package/types/eui-ecl-components-ecl-loading-indicator.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-media-container.d.ts +1 -12
- package/types/eui-ecl-components-ecl-media-container.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-mega-menu.d.ts +1 -13
- package/types/eui-ecl-components-ecl-mega-menu.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-menu.d.ts +1 -12
- package/types/eui-ecl-components-ecl-menu.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-modal.d.ts +2 -19
- package/types/eui-ecl-components-ecl-modal.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-multiselect.d.ts +1 -12
- package/types/eui-ecl-components-ecl-multiselect.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-navigation-list.d.ts +1 -12
- package/types/eui-ecl-components-ecl-navigation-list.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-news-ticker.d.ts +1 -13
- package/types/eui-ecl-components-ecl-news-ticker.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-notification.d.ts +45 -29
- package/types/eui-ecl-components-ecl-notification.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-page-header.d.ts +1 -12
- package/types/eui-ecl-components-ecl-page-header.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-pagination.d.ts +3 -14
- package/types/eui-ecl-components-ecl-pagination.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-popover.d.ts +5 -17
- package/types/eui-ecl-components-ecl-popover.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-radio.d.ts +1 -12
- package/types/eui-ecl-components-ecl-radio.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-range.d.ts +1 -12
- package/types/eui-ecl-components-ecl-range.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-rating-field.d.ts +2 -13
- package/types/eui-ecl-components-ecl-rating-field.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-search-form.d.ts +4 -15
- package/types/eui-ecl-components-ecl-search-form.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-select.d.ts +1 -13
- package/types/eui-ecl-components-ecl-select.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-site-footer.d.ts +42 -63
- package/types/eui-ecl-components-ecl-site-footer.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-site-header.d.ts +4 -19
- package/types/eui-ecl-components-ecl-site-header.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-social-media-follow.d.ts +6 -13
- package/types/eui-ecl-components-ecl-social-media-follow.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-splash-page.d.ts +1 -12
- package/types/eui-ecl-components-ecl-splash-page.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-sticky-container.d.ts +1 -12
- package/types/eui-ecl-components-ecl-sticky-container.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-table.d.ts +1 -12
- package/types/eui-ecl-components-ecl-table.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-tabs.d.ts +4 -46
- package/types/eui-ecl-components-ecl-tabs.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-tag.d.ts +1 -12
- package/types/eui-ecl-components-ecl-tag.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-text-area.d.ts +1 -13
- package/types/eui-ecl-components-ecl-text-area.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-text-input.d.ts +1 -13
- package/types/eui-ecl-components-ecl-text-input.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-timeline.d.ts +1 -12
- package/types/eui-ecl-components-ecl-timeline.d.ts.map +1 -1
- package/types/eui-ecl-core.d.ts +0 -3
- package/types/eui-ecl-core.d.ts.map +1 -1
- package/types/eui-ecl.d.ts +1 -69
- package/types/eui-ecl.d.ts.map +1 -1
- package/docs/js/libs/vis.min.js +0 -47
- package/docs/modules/EclAccordionModule.html +0 -273
- package/docs/modules/EclAllModule.html +0 -261
- package/docs/modules/EclAppModule.html +0 -267
- package/docs/modules/EclBannerModule.html +0 -321
- package/docs/modules/EclBlockquoteModule.html +0 -279
- package/docs/modules/EclBreadcrumbModule.html +0 -321
- package/docs/modules/EclButtonModule.html +0 -285
- package/docs/modules/EclCardModule.html +0 -321
- package/docs/modules/EclCarouselModule.html +0 -273
- package/docs/modules/EclCategoryFilterModule.html +0 -279
- package/docs/modules/EclCheckboxModule.html +0 -321
- package/docs/modules/EclContentBlockModule.html +0 -321
- package/docs/modules/EclContentItemModule.html +0 -321
- package/docs/modules/EclDateBlockModule.html +0 -267
- package/docs/modules/EclDatePickerModule.html +0 -267
- package/docs/modules/EclDividerModule.html +0 -267
- package/docs/modules/EclExpandableModule.html +0 -267
- package/docs/modules/EclFactFiguresModule.html +0 -285
- package/docs/modules/EclFeaturedModule.html +0 -321
- package/docs/modules/EclFeedbackMessageModule.html +0 -267
- package/docs/modules/EclFileModule.html +0 -321
- package/docs/modules/EclFileUploadModule.html +0 -267
- package/docs/modules/EclFormGroupModule.html +0 -267
- package/docs/modules/EclGalleryModule.html +0 -321
- package/docs/modules/EclHelpBlockModule.html +0 -267
- package/docs/modules/EclIconModule.html +0 -267
- package/docs/modules/EclInpageNavigationModule.html +0 -321
- package/docs/modules/EclLabelModule.html +0 -267
- package/docs/modules/EclLinkModule.html +0 -285
- package/docs/modules/EclListIllustrationModule.html +0 -321
- package/docs/modules/EclListModule.html +0 -321
- package/docs/modules/EclLoadingIndicatorModule.html +0 -279
- package/docs/modules/EclMediaContainerModule.html +0 -321
- package/docs/modules/EclMegaMenuModule.html +0 -321
- package/docs/modules/EclMenuModule.html +0 -321
- package/docs/modules/EclModalModule.html +0 -321
- package/docs/modules/EclMultiselectModule.html +0 -321
- package/docs/modules/EclNavigationListModule.html +0 -321
- package/docs/modules/EclNewsTickerModule.html +0 -321
- package/docs/modules/EclPageHeaderModule.html +0 -321
- package/docs/modules/EclPaginationModule.html +0 -321
- package/docs/modules/EclPopoverModule.html +0 -321
- package/docs/modules/EclRadioModule.html +0 -285
- package/docs/modules/EclRangeModule.html +0 -321
- package/docs/modules/EclRatingFieldModule.html +0 -267
- package/docs/modules/EclSearchFormModule.html +0 -267
- package/docs/modules/EclSelectModule.html +0 -321
- package/docs/modules/EclSiteFooterModule.html +0 -321
- package/docs/modules/EclSiteHeaderModule.html +0 -321
- package/docs/modules/EclSocialMediaFollowModule.html +0 -321
- package/docs/modules/EclSplashPageModule.html +0 -321
- package/docs/modules/EclStickyContainerModule.html +0 -267
- package/docs/modules/EclTableModule.html +0 -321
- package/docs/modules/EclTabsModule.html +0 -321
- package/docs/modules/EclTagModule.html +0 -321
- package/docs/modules/EclTextAreaModule.html +0 -267
- package/docs/modules/EclTextInputModule.html +0 -267
- package/docs/modules/EclTimelineModule.html +0 -297
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eui-ecl-components-ecl-radio.mjs","sources":["../../components/ecl-radio/ecl-radio-help.component.ts","../../components/ecl-radio/ecl-radio-help.component.html","../../components/ecl-radio/ecl-radio-label.component.ts","../../components/ecl-radio/ecl-radio-label.component.html","../../components/ecl-radio/ecl-radio.directive.ts","../../components/ecl-radio/ecl-radio-input.directive.ts","../../components/ecl-radio/ecl-radio.module.ts","../../components/ecl-radio/index.ts","../../components/ecl-radio/eui-ecl-components-ecl-radio.ts"],"sourcesContent":["import { Component, HostBinding, Input, booleanAttribute } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Component that displays help text for the ECL radio input.\n *\n * Supports styling for the disabled state and applies the proper ECL CSS classes.\n * Should be placed inside a component using eclRadio.\n */\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[eclRadioHelp]',\n templateUrl: './ecl-radio-help.component.html',\n})\nexport class EclRadioHelpComponent extends ECLBaseDirective {\n /**\n * Adds styling for a disabled help text.\n */\n @Input({ transform: booleanAttribute }) \n @HostBinding('class.ecl-radio__help--disabled')\n isDisabled = false;\n\n /**\n * Returns the CSS classes applied to the host element.\n * Includes the base ecl-radio__help class.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-radio__help')].join(' ').trim();\n }\n}\n","<ng-content></ng-content>\n","import { Component, HostBinding, Input, ViewEncapsulation, booleanAttribute } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Component representing a label for an ECL radio button.\n *\n * Used inside an element with the [eclRadio] directive to provide\n * a styled label that can reflect the radio's state.\n */\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[eclRadioLabel]',\n templateUrl: './ecl-radio-label.component.html',\n encapsulation: ViewEncapsulation.None,\n})\nexport class EclRadioLabelComponent extends ECLBaseDirective {\n /**\n * Adds styling for an invalid state.\n */\n @Input({ transform: booleanAttribute }) isInvalid = false;\n\n /**\n * Adds styling for a disabled state.\n */\n @Input({ transform: booleanAttribute }) isDisabled = false;\n\n /**\n * Returns the CSS classes applied to the host element.\n * Includes the base `ecl-radio__label` class.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-radio__label')].join(' ').trim();\n }\n}\n","<span class=\"ecl-radio__box\" [class.ecl-radio__box--disabled]=\"isDisabled\" [class.ecl-radio__box--invalid]=\"isInvalid\">\n <span class=\"ecl-radio__box-inner\"></span>\n</span>\n\n<ng-content></ng-content>\n","import { booleanAttribute, ContentChild, Directive, DoCheck, forwardRef, HostBinding, Input } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclRadioHelpComponent } from './ecl-radio-help.component';\nimport { EclRadioLabelComponent } from './ecl-radio-label.component';\n\n/**\n * Directive that applies the ECL radio button styling and behavior.\n *\n * Should be applied to native radio input elements to enhance them\n * with ECL styles and support for invalid, disabled and binary states.\n */\n@Directive({\n selector: '[eclRadio]',\n})\nexport class EclRadioDirective extends ECLBaseDirective implements DoCheck {\n /**\n * Adds the `ecl-radio--binary` class when true.\n */\n @Input({ transform: booleanAttribute }) isBinary: boolean;\n\n /**\n * Adds the `ecl-radio--disabled` class to the host element when true.\n */\n @Input({ transform: booleanAttribute })\n @HostBinding('class.ecl-radio--disabled')\n isDisabled = false;\n\n /**\n * Adds the `ecl-radio--invalid` class to the host element when true.\n */\n @Input({ transform: booleanAttribute })\n @HostBinding('class.ecl-radio--invalid')\n isInvalid = false;\n\n /**\n * Reference to the projected EclRadioLabelComponent, if present.\n * Used to synchronize disabled and invalid states with the label.\n */\n @ContentChild(forwardRef(() => EclRadioLabelComponent))\n eclRadioLabelComponent: EclRadioLabelComponent;\n\n /**\n * Reference to the projected EclRadioHelpComponent, if present.\n * Used to synchronize the disabled state with the help text.\n */\n @ContentChild(forwardRef(() => EclRadioHelpComponent))\n eclRadioHelpComponent: EclRadioHelpComponent;\n\n /**\n * Returns the CSS classes to apply on the host element.\n * Includes the base `ecl-radio` class and the binary modifier if applicable.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-radio'), this.isBinary ? 'ecl-radio--binary' : ''].join(' ').trim();\n }\n\n /**\n * Angular lifecycle hook called during every change detection run.\n * Used to update child components with the current disabled and invalid states.\n */\n ngDoCheck(): void {\n this.updateChildElements();\n }\n\n private updateChildElements(): void {\n if (this.eclRadioLabelComponent) {\n this.eclRadioLabelComponent.isInvalid = this.isInvalid;\n this.eclRadioLabelComponent.isDisabled = this.isDisabled;\n }\n\n if (this.eclRadioHelpComponent) {\n this.eclRadioHelpComponent.isDisabled = this.isDisabled;\n }\n }\n}\n","import { Directive, HostBinding, ChangeDetectorRef, DoCheck, inject } from '@angular/core';\nimport { NgControl } from '@angular/forms';\nimport { EclRadioDirective } from './ecl-radio.directive';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Directive that decorates native <input> elements to be styled as ECL radio inputs.\n *\n * Applies the proper ECL CSS classes and integrates with Angular forms\n * to reflect validation states (invalid, disabled) in the parent ECL radio directive.\n * Should be used together with the eclRadio directive.\n */\n@Directive({\n selector: 'input[eclRadioInput]',\n})\nexport class EclRadioInputDirective extends ECLBaseDirective implements DoCheck {\n eclRadio = inject(EclRadioDirective);\n protected ngControl = inject(NgControl, { optional: true, self: true });\n protected cd = inject(ChangeDetectorRef);\n\n /**\n * Returns the CSS classes applied to the host input element.\n * Includes the base ecl-radio__input class.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-radio__input')].join(' ').trim();\n }\n\n ngDoCheck(): void {\n if (this.ngControl) {\n if (this.eclRadio) {\n this.eclRadio.isInvalid = this.ngControl.invalid && this.ngControl.touched;\n this.eclRadio.isDisabled = this.ngControl.disabled;\n }\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { EclRadioHelpComponent } from './ecl-radio-help.component';\nimport { EclRadioInputDirective } from './ecl-radio-input.directive';\nimport { EclRadioLabelComponent } from './ecl-radio-label.component';\nimport { EclRadioDirective } from './ecl-radio.directive';\n\n/**\n * Module that provides the EclRadio directive and its dependencies.\n *\n * @deprecated Use {@link EUI_ECL_RADIO} instead.\n */\n@NgModule({\n imports: [EclRadioDirective, EclRadioInputDirective, EclRadioLabelComponent, EclRadioHelpComponent],\n exports: [EclRadioDirective, EclRadioInputDirective, EclRadioLabelComponent, EclRadioHelpComponent],\n})\nexport class EclRadioModule {}\n","import { EclRadioHelpComponent } from './ecl-radio-help.component';\nimport { EclRadioInputDirective } from './ecl-radio-input.directive';\nimport { EclRadioLabelComponent } from './ecl-radio-label.component';\nimport { EclRadioDirective } from './ecl-radio.directive';\n\nexport * from './ecl-radio.module';\nexport * from './ecl-radio-input.directive';\nexport * from './ecl-radio.directive';\nexport * from './ecl-radio-label.component';\nexport * from './ecl-radio-help.component';\n\nexport const EUI_ECL_RADIO = [\n EclRadioDirective, EclRadioInputDirective, EclRadioLabelComponent, EclRadioHelpComponent,\n] as const;","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"eui-ecl-components-ecl-radio.mjs","sources":["../../components/ecl-radio/ecl-radio-help.component.ts","../../components/ecl-radio/ecl-radio-help.component.html","../../components/ecl-radio/ecl-radio-label.component.ts","../../components/ecl-radio/ecl-radio-label.component.html","../../components/ecl-radio/ecl-radio.directive.ts","../../components/ecl-radio/ecl-radio-input.directive.ts","../../components/ecl-radio/index.ts","../../components/ecl-radio/eui-ecl-components-ecl-radio.ts"],"sourcesContent":["import { Component, HostBinding, Input, booleanAttribute } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Component that displays help text for the ECL radio input.\n *\n * Supports styling for the disabled state and applies the proper ECL CSS classes.\n * Should be placed inside a component using eclRadio.\n */\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[eclRadioHelp]',\n templateUrl: './ecl-radio-help.component.html',\n})\nexport class EclRadioHelpComponent extends ECLBaseDirective {\n /**\n * Adds styling for a disabled help text.\n */\n @Input({ transform: booleanAttribute }) \n @HostBinding('class.ecl-radio__help--disabled')\n isDisabled = false;\n\n /**\n * Returns the CSS classes applied to the host element.\n * Includes the base ecl-radio__help class.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-radio__help')].join(' ').trim();\n }\n}\n","<ng-content></ng-content>\n","import { Component, HostBinding, Input, ViewEncapsulation, booleanAttribute } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Component representing a label for an ECL radio button.\n *\n * Used inside an element with the [eclRadio] directive to provide\n * a styled label that can reflect the radio's state.\n */\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[eclRadioLabel]',\n templateUrl: './ecl-radio-label.component.html',\n encapsulation: ViewEncapsulation.None,\n})\nexport class EclRadioLabelComponent extends ECLBaseDirective {\n /**\n * Adds styling for an invalid state.\n */\n @Input({ transform: booleanAttribute }) isInvalid = false;\n\n /**\n * Adds styling for a disabled state.\n */\n @Input({ transform: booleanAttribute }) isDisabled = false;\n\n /**\n * Returns the CSS classes applied to the host element.\n * Includes the base `ecl-radio__label` class.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-radio__label')].join(' ').trim();\n }\n}\n","<span class=\"ecl-radio__box\" [class.ecl-radio__box--disabled]=\"isDisabled\" [class.ecl-radio__box--invalid]=\"isInvalid\">\n <span class=\"ecl-radio__box-inner\"></span>\n</span>\n\n<ng-content></ng-content>\n","import { booleanAttribute, ContentChild, Directive, DoCheck, forwardRef, HostBinding, Input } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclRadioHelpComponent } from './ecl-radio-help.component';\nimport { EclRadioLabelComponent } from './ecl-radio-label.component';\n\n/**\n * Directive that applies the ECL radio button styling and behavior.\n *\n * Should be applied to native radio input elements to enhance them\n * with ECL styles and support for invalid, disabled and binary states.\n */\n@Directive({\n selector: '[eclRadio]',\n})\nexport class EclRadioDirective extends ECLBaseDirective implements DoCheck {\n /**\n * Adds the `ecl-radio--binary` class when true.\n */\n @Input({ transform: booleanAttribute }) isBinary: boolean;\n\n /**\n * Adds the `ecl-radio--disabled` class to the host element when true.\n */\n @Input({ transform: booleanAttribute })\n @HostBinding('class.ecl-radio--disabled')\n isDisabled = false;\n\n /**\n * Adds the `ecl-radio--invalid` class to the host element when true.\n */\n @Input({ transform: booleanAttribute })\n @HostBinding('class.ecl-radio--invalid')\n isInvalid = false;\n\n /**\n * Reference to the projected EclRadioLabelComponent, if present.\n * Used to synchronize disabled and invalid states with the label.\n */\n @ContentChild(forwardRef(() => EclRadioLabelComponent))\n eclRadioLabelComponent: EclRadioLabelComponent;\n\n /**\n * Reference to the projected EclRadioHelpComponent, if present.\n * Used to synchronize the disabled state with the help text.\n */\n @ContentChild(forwardRef(() => EclRadioHelpComponent))\n eclRadioHelpComponent: EclRadioHelpComponent;\n\n /**\n * Returns the CSS classes to apply on the host element.\n * Includes the base `ecl-radio` class and the binary modifier if applicable.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-radio'), this.isBinary ? 'ecl-radio--binary' : ''].join(' ').trim();\n }\n\n /**\n * Angular lifecycle hook called during every change detection run.\n * Used to update child components with the current disabled and invalid states.\n */\n ngDoCheck(): void {\n this.updateChildElements();\n }\n\n private updateChildElements(): void {\n if (this.eclRadioLabelComponent) {\n this.eclRadioLabelComponent.isInvalid = this.isInvalid;\n this.eclRadioLabelComponent.isDisabled = this.isDisabled;\n }\n\n if (this.eclRadioHelpComponent) {\n this.eclRadioHelpComponent.isDisabled = this.isDisabled;\n }\n }\n}\n","import { Directive, HostBinding, ChangeDetectorRef, DoCheck, inject } from '@angular/core';\nimport { NgControl } from '@angular/forms';\nimport { EclRadioDirective } from './ecl-radio.directive';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Directive that decorates native <input> elements to be styled as ECL radio inputs.\n *\n * Applies the proper ECL CSS classes and integrates with Angular forms\n * to reflect validation states (invalid, disabled) in the parent ECL radio directive.\n * Should be used together with the eclRadio directive.\n */\n@Directive({\n selector: 'input[eclRadioInput]',\n})\nexport class EclRadioInputDirective extends ECLBaseDirective implements DoCheck {\n eclRadio = inject(EclRadioDirective);\n protected ngControl = inject(NgControl, { optional: true, self: true });\n protected cd = inject(ChangeDetectorRef);\n\n /**\n * Returns the CSS classes applied to the host input element.\n * Includes the base ecl-radio__input class.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-radio__input')].join(' ').trim();\n }\n\n ngDoCheck(): void {\n if (this.ngControl) {\n if (this.eclRadio) {\n this.eclRadio.isInvalid = this.ngControl.invalid && this.ngControl.touched;\n this.eclRadio.isDisabled = this.ngControl.disabled;\n }\n }\n }\n}\n","import { EclRadioHelpComponent } from './ecl-radio-help.component';\nimport { EclRadioInputDirective } from './ecl-radio-input.directive';\nimport { EclRadioLabelComponent } from './ecl-radio-label.component';\nimport { EclRadioDirective } from './ecl-radio.directive';\n\nexport * from './ecl-radio-input.directive';\nexport * from './ecl-radio.directive';\nexport * from './ecl-radio-label.component';\nexport * from './ecl-radio-help.component';\n\nexport const EUI_ECL_RADIO = [\n EclRadioDirective, EclRadioInputDirective, EclRadioLabelComponent, EclRadioHelpComponent,\n] as const;","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;AAGA;;;;;AAKG;AAMG,MAAO,qBAAsB,SAAQ,gBAAgB,CAAA;AAL3D,IAAA,WAAA,GAAA;;AAMI;;AAEG;QAGH,IAAA,CAAA,UAAU,GAAG,KAAK;AAUrB,IAAA;AARG;;;AAGG;AACH,IAAA,IACI,UAAU,GAAA;AACV,QAAA,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE;IACpE;8GAfS,qBAAqB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAArB,qBAAqB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,EAAA,UAAA,EAAA,CAAA,YAAA,EAAA,YAAA,EAIV,gBAAgB,CAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,iCAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,iBAAA,EAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EClBxC,6BACA,EAAA,CAAA,CAAA;;2FDaa,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBALjC,SAAS;+BAEI,gBAAgB,EAAA,QAAA,EAAA,6BAAA,EAAA;;sBAOzB,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE;;sBACrC,WAAW;uBAAC,iCAAiC;;sBAO7C,WAAW;uBAAC,OAAO;;;AEvBxB;;;;;AAKG;AAOG,MAAO,sBAAuB,SAAQ,gBAAgB,CAAA;AAN5D,IAAA,WAAA,GAAA;;AAOI;;AAEG;QACqC,IAAA,CAAA,SAAS,GAAG,KAAK;AAEzD;;AAEG;QACqC,IAAA,CAAA,UAAU,GAAG,KAAK;AAU7D,IAAA;AARG;;;AAGG;AACH,IAAA,IACI,UAAU,GAAA;AACV,QAAA,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE;IACrE;8GAlBS,sBAAsB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAtB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,sBAAsB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,EAAA,SAAA,EAAA,CAAA,WAAA,EAAA,WAAA,EAIX,gBAAgB,CAAA,EAAA,UAAA,EAAA,CAAA,YAAA,EAAA,YAAA,EAKhB,gBAAgB,0GCxBxC,yNAKA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FDUa,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBANlC,SAAS;+BAEI,iBAAiB,EAAA,aAAA,EAEZ,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,yNAAA,EAAA;;sBAMpC,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE;;sBAKrC,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE;;sBAMrC,WAAW;uBAAC,OAAO;;;AEzBxB;;;;;AAKG;AAIG,MAAO,iBAAkB,SAAQ,gBAAgB,CAAA;AAHvD,IAAA,WAAA,GAAA;;AASI;;AAEG;QAGH,IAAA,CAAA,UAAU,GAAG,KAAK;AAElB;;AAEG;QAGH,IAAA,CAAA,SAAS,GAAG,KAAK;AA2CpB,IAAA;AA3BG;;;AAGG;AACH,IAAA,IACI,UAAU,GAAA;AACV,QAAA,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,WAAW,CAAC,EAAE,IAAI,CAAC,QAAQ,GAAG,mBAAmB,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE;IACxG;AAEA;;;AAGG;IACH,SAAS,GAAA;QACL,IAAI,CAAC,mBAAmB,EAAE;IAC9B;IAEQ,mBAAmB,GAAA;AACvB,QAAA,IAAI,IAAI,CAAC,sBAAsB,EAAE;YAC7B,IAAI,CAAC,sBAAsB,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS;YACtD,IAAI,CAAC,sBAAsB,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU;QAC5D;AAEA,QAAA,IAAI,IAAI,CAAC,qBAAqB,EAAE;YAC5B,IAAI,CAAC,qBAAqB,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU;QAC3D;IACJ;8GA5DS,iBAAiB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAjB,iBAAiB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,CAAA,UAAA,EAAA,UAAA,EAIN,gBAAgB,CAAA,EAAA,UAAA,EAAA,CAAA,YAAA,EAAA,YAAA,EAKhB,gBAAgB,yCAOhB,gBAAgB,CAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,2BAAA,EAAA,iBAAA,EAAA,0BAAA,EAAA,gBAAA,EAAA,OAAA,EAAA,iBAAA,EAAA,EAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,wBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,EAAA,CAAA,UAAA,CAAA,MAQL,sBAAsB,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,uBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,EAAA,CAAA,UAAA,CAAA,MAOtB,qBAAqB,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FA/B3C,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAH7B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,YAAY;AACzB,iBAAA;;sBAKI,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE;;sBAKrC,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE;;sBACrC,WAAW;uBAAC,2BAA2B;;sBAMvC,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE;;sBACrC,WAAW;uBAAC,0BAA0B;;sBAOtC,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAA,UAAU,CAAC,MAAM,sBAAsB,CAAC;;sBAOrD,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAA,UAAU,CAAC,MAAM,qBAAqB,CAAC;;sBAOpD,WAAW;uBAAC,OAAO;;;AC/CxB;;;;;;AAMG;AAIG,MAAO,sBAAuB,SAAQ,gBAAgB,CAAA;AAH5D,IAAA,WAAA,GAAA;;AAII,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,iBAAiB,CAAC;AAC1B,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,SAAS,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AAC7D,QAAA,IAAA,CAAA,EAAE,GAAG,MAAM,CAAC,iBAAiB,CAAC;AAmB3C,IAAA;AAjBG;;;AAGG;AACH,IAAA,IACI,UAAU,GAAA;AACV,QAAA,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE;IACrE;IAEA,SAAS,GAAA;AACL,QAAA,IAAI,IAAI,CAAC,SAAS,EAAE;AAChB,YAAA,IAAI,IAAI,CAAC,QAAQ,EAAE;AACf,gBAAA,IAAI,CAAC,QAAQ,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO;gBAC1E,IAAI,CAAC,QAAQ,CAAC,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ;YACtD;QACJ;IACJ;8GArBS,sBAAsB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAtB,sBAAsB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,iBAAA,EAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAAtB,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAHlC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,sBAAsB;AACnC,iBAAA;;sBAUI,WAAW;uBAAC,OAAO;;;ACdjB,MAAM,aAAa,GAAG;AACzB,IAAA,iBAAiB,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,qBAAqB;;;ACX5F;;AAEG;;;;"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { inject, ElementRef, HostBinding, Input, Component, EventEmitter, ViewContainerRef, ChangeDetectorRef, booleanAttribute, HostListener, Output, Directive
|
|
2
|
+
import { inject, ElementRef, HostBinding, Input, Component, EventEmitter, ViewContainerRef, ChangeDetectorRef, booleanAttribute, HostListener, Output, Directive } from '@angular/core';
|
|
3
3
|
import { ECLBaseDirective, EclBaseEvent, EclRtlService } from '@eui/ecl/core';
|
|
4
4
|
import * as i1 from '@ngx-translate/core';
|
|
5
5
|
import { TranslateModule } from '@ngx-translate/core';
|
|
@@ -30,10 +30,10 @@ class EclRangeBubbleComponent extends ECLBaseDirective {
|
|
|
30
30
|
this.isVisible ? 'ecl-range__bubble--visible' : '',
|
|
31
31
|
].join(' ').trim();
|
|
32
32
|
}
|
|
33
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.
|
|
34
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.
|
|
33
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: EclRangeBubbleComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
34
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.3", type: EclRangeBubbleComponent, isStandalone: true, selector: "ecl-range-bubble", inputs: { value: "value" }, host: { properties: { "class": "this.cssClasses", "style.left.px": "this.left" } }, usesInheritance: true, ngImport: i0, template: "<span class=\"ecl-range__value-bubble\">{{value}}</span>" }); }
|
|
35
35
|
}
|
|
36
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.
|
|
36
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: EclRangeBubbleComponent, decorators: [{
|
|
37
37
|
type: Component,
|
|
38
38
|
args: [{ selector: 'ecl-range-bubble', template: "<span class=\"ecl-range__value-bubble\">{{value}}</span>" }]
|
|
39
39
|
}], propDecorators: { value: [{
|
|
@@ -58,10 +58,10 @@ class EclRangeValueComponent extends ECLBaseDirective {
|
|
|
58
58
|
get cssClasses() {
|
|
59
59
|
return [super.getCssClasses('ecl-range__value')].join(' ').trim();
|
|
60
60
|
}
|
|
61
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.
|
|
62
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.
|
|
61
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: EclRangeValueComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
62
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.3", type: EclRangeValueComponent, isStandalone: true, selector: "ecl-range-value", inputs: { value: "value", id: "id" }, host: { properties: { "attr.id": "this.id", "class": "this.cssClasses" } }, usesInheritance: true, ngImport: i0, template: "{{ 'ecl.common.VALUE' | translate }}: <span class=\"ecl-range__value-current\"> {{ value }} </span>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] }); }
|
|
63
63
|
}
|
|
64
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.
|
|
64
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: EclRangeValueComponent, decorators: [{
|
|
65
65
|
type: Component,
|
|
66
66
|
args: [{ selector: 'ecl-range-value', imports: [TranslateModule], template: "{{ 'ecl.common.VALUE' | translate }}: <span class=\"ecl-range__value-current\"> {{ value }} </span>\n", styles: [":host{display:block}\n"] }]
|
|
67
67
|
}], propDecorators: { value: [{
|
|
@@ -234,10 +234,10 @@ class EclRangeDirective extends ECLBaseDirective {
|
|
|
234
234
|
this.rangeBubbleComponent.left = valuePxPosition - halfLabelWidth - offset + this.el.nativeElement.offsetLeft;
|
|
235
235
|
}
|
|
236
236
|
}
|
|
237
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.
|
|
238
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "21.0.
|
|
237
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: EclRangeDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
|
|
238
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "21.0.3", type: EclRangeDirective, isStandalone: true, selector: "input[eclRange]", inputs: { eclSize: "eclSize", value: "value", rangeValueId: "rangeValueId", isInvalid: ["isInvalid", "isInvalid", booleanAttribute], hasValueLabel: ["hasValueLabel", "hasValueLabel", booleanAttribute] }, outputs: { rangeChange: "rangeChange" }, host: { listeners: { "input": "onInput($any($event))" }, properties: { "class": "this.cssClasses", "class.ecl-range--invalid": "this.invalidState" } }, usesInheritance: true, ngImport: i0 }); }
|
|
239
239
|
}
|
|
240
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.
|
|
240
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: EclRangeDirective, decorators: [{
|
|
241
241
|
type: Directive,
|
|
242
242
|
args: [{
|
|
243
243
|
selector: 'input[eclRange]',
|
|
@@ -267,25 +267,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-rc.2", ng
|
|
|
267
267
|
args: ['input', ['$any($event)']]
|
|
268
268
|
}] } });
|
|
269
269
|
|
|
270
|
-
const COMPONENTS = [EclRangeDirective, EclRangeValueComponent, EclRangeBubbleComponent];
|
|
271
|
-
/**
|
|
272
|
-
* Module that provides the EclRange directive and its dependencies.
|
|
273
|
-
*
|
|
274
|
-
* @deprecated Use {@link EUI_ECL_RANGE} instead.
|
|
275
|
-
*/
|
|
276
|
-
class EclRangeModule {
|
|
277
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-rc.2", ngImport: i0, type: EclRangeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
278
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.0.0-rc.2", ngImport: i0, type: EclRangeModule, imports: [EclRangeDirective, EclRangeValueComponent, EclRangeBubbleComponent], exports: [EclRangeDirective, EclRangeValueComponent, EclRangeBubbleComponent] }); }
|
|
279
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.0.0-rc.2", ngImport: i0, type: EclRangeModule, imports: [EclRangeValueComponent] }); }
|
|
280
|
-
}
|
|
281
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-rc.2", ngImport: i0, type: EclRangeModule, decorators: [{
|
|
282
|
-
type: NgModule,
|
|
283
|
-
args: [{
|
|
284
|
-
imports: [...COMPONENTS],
|
|
285
|
-
exports: [...COMPONENTS],
|
|
286
|
-
}]
|
|
287
|
-
}] });
|
|
288
|
-
|
|
289
270
|
const EUI_ECL_RANGE = [
|
|
290
271
|
EclRangeDirective, EclRangeValueComponent, EclRangeBubbleComponent,
|
|
291
272
|
];
|
|
@@ -294,5 +275,5 @@ const EUI_ECL_RANGE = [
|
|
|
294
275
|
* Generated bundle index. Do not edit.
|
|
295
276
|
*/
|
|
296
277
|
|
|
297
|
-
export { EUI_ECL_RANGE, EclRangeBubbleComponent, EclRangeDirective, EclRangeEvent,
|
|
278
|
+
export { EUI_ECL_RANGE, EclRangeBubbleComponent, EclRangeDirective, EclRangeEvent, EclRangeValueComponent };
|
|
298
279
|
//# sourceMappingURL=eui-ecl-components-ecl-range.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eui-ecl-components-ecl-range.mjs","sources":["../../components/ecl-range/ecl-range-bubble.component.ts","../../components/ecl-range/ecl-range-bubble.component.html","../../components/ecl-range/ecl-range-value.component.ts","../../components/ecl-range/ecl-range-value.component.html","../../components/ecl-range/events/ecl-range.event.ts","../../components/ecl-range/ecl-range.directive.ts","../../components/ecl-range/ecl-range.module.ts","../../components/ecl-range/index.ts","../../components/ecl-range/eui-ecl-components-ecl-range.ts"],"sourcesContent":["import { Component, ElementRef, HostBinding, Input, inject } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Component representing a bubble tooltip shown above a range input,\n * used to display the current value with ECL styling.\n */\n@Component({\n\tselector: 'ecl-range-bubble',\n\ttemplateUrl: './ecl-range-bubble.component.html',\n})\nexport class EclRangeBubbleComponent extends ECLBaseDirective {\n\tel = inject(ElementRef);\n\n\t/**\n\t * Value displayed inside the bubble.\n\t */\n\t@Input() value: number;\n\n\t/**\n\t * Returns the CSS classes applied to the host element.\n\t * Always includes `ecl-range__bubble` and optionally adds the visible modifier.\n\t */\n\t@HostBinding('class')\n\tget cssClasses(): string {\n\t\treturn [\n\t\t\tsuper.getCssClasses('ecl-range__bubble'),\n\t\t\tthis.isVisible ? 'ecl-range__bubble--visible' : '',\n\t\t].join(' ').trim();\n\t}\n\n\t/**\n\t * Horizontal offset in pixels for positioning the bubble.\n\t * Applied as the left style property of the host element.\n\t */\n\t@HostBinding('style.left.px') left: number;\n\n\t/**\n\t * Controls the visibility of the bubble.\n\t * Adds the `ecl-range__bubble--visible` class when true.\n\t */\n\tisVisible = false;\n}\n","<span class=\"ecl-range__value-bubble\">{{value}}</span>","import { Component, HostBinding, Input } from '@angular/core';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Component representing the value label displayed next to a range input.\n * Applies ECL styling for the value element.\n */\n@Component({\n selector: 'ecl-range-value',\n templateUrl: './ecl-range-value.component.html',\n imports: [TranslateModule],\n styles: [\n `\n :host {\n display: block;\n }\n `,\n ],\n})\nexport class EclRangeValueComponent extends ECLBaseDirective {\n /**\n * Value to display next to the range input.\n */\n @Input() value: number;\n\n /**\n * ID attribute applied to the component's host element.\n */\n @Input() @HostBinding('attr.id') id: string;\n\n /**\n * Returns the CSS classes applied to the host element.\n * Adds the base `ecl-range__value` class for styling.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-range__value')].join(' ').trim();\n }\n}\n","{{ 'ecl.common.VALUE' | translate }}: <span class=\"ecl-range__value-current\"> {{ value }} </span>\n","import { EclBaseEvent } from '@eui/ecl/core';\n\n/**\n * Event emitted by the ECL range directive\n * whenever the range value changes.\n */\nexport class EclRangeEvent extends EclBaseEvent {\n /**\n * The current numeric value of the range input.\n */\n constructor(public value: number) {\n super();\n }\n}\n","import { Directive, ElementRef, EventEmitter, HostBinding, HostListener, Input, OnDestroy, OnInit, Output, ViewContainerRef, booleanAttribute, ChangeDetectorRef, inject } from '@angular/core';\nimport { NgControl } from '@angular/forms';\nimport { Subject, distinctUntilChanged, fromEvent, takeUntil } from 'rxjs';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclRtlService } from '@eui/ecl/core';\nimport { EclRangeValueComponent } from './ecl-range-value.component';\nimport { EclRangeBubbleComponent } from './ecl-range-bubble.component';\nimport { EclRangeEvent } from './events/ecl-range.event';\n\n/**\n * Directive enhancing native input[type=range] with ECL styles and behavior.\n * Adds value display, bubble indicator, RTL support and integration with reactive forms.\n */\n@Directive({\n selector: 'input[eclRange]',\n})\nexport class EclRangeDirective extends ECLBaseDirective implements OnInit, OnDestroy {\n protected ngControl = inject(NgControl, { optional: true, self: true });\n\n /**\n * Defines the size of the range component.\n * Adds a corresponding size class like `ecl-range--m`.\n */\n @Input() eclSize = 'm';\n\n /**\n * Initial value for the range input when used standalone.\n */\n @Input() value: string;\n\n /**\n * ID assigned to the projected ECL range value component.\n */\n @Input() rangeValueId: string;\n\n /**\n * Adds the `ecl-range--invalid` class when true.\n */\n @Input({ transform: booleanAttribute }) isInvalid = false;\n\n /**\n * Enables or disables the display of a value label.\n */\n @Input({ transform: booleanAttribute }) hasValueLabel = true;\n\n /**\n * Emits when the range value changes.\n */\n @Output() rangeChange = new EventEmitter<EclRangeEvent>();\n\n private rangeValueComponent: EclRangeValueComponent;\n private rangeBubbleComponent: EclRangeBubbleComponent;\n private isRtl = false;\n private destroy$: Subject<boolean> = new Subject<boolean>();\n private viewContainerRef = inject(ViewContainerRef);\n private el = inject(ElementRef);\n private eclRtlService = inject(EclRtlService);\n private cd = inject(ChangeDetectorRef);\n\n /**\n * Returns the CSS classes applied to the host element.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-range'), this.eclSize ? `ecl-range--${this.eclSize}` : ''].join(' ').trim();\n }\n\n /**\n * Returns whether the component is in an invalid state.\n * Checks reactive form control if available, or uses `isInvalid` input.\n */\n @HostBinding('class.ecl-range--invalid')\n get invalidState(): boolean {\n if (this.ngControl) {\n return this.ngControl.status === 'INVALID' && this.ngControl.touched;\n } else {\n return this.isInvalid;\n }\n }\n\n /**\n * Handles native input events on the range element\n * when not used with reactive forms.\n */\n @HostListener('input', ['$any($event)'])\n onInput(evt: InputEvent): void {\n if (!this.ngControl) {\n const target = evt.target as HTMLInputElement;\n this.updateRangeValue(target.value);\n }\n }\n\n /**\n * Angular lifecycle hook.\n * Initializes dynamic components and event listeners.\n */\n ngOnInit(): void {\n this.createRangeValueComponent();\n this.initializeRangeValueComponent();\n this.initializeEventListeners();\n this.observeReactiveFormValueChanges();\n this.handleRtlChangeState();\n }\n\n /**\n * Angular lifecycle hook.\n * Cleans up subscriptions on destroy.\n */\n ngOnDestroy(): void {\n this.destroy$.next(true);\n this.destroy$.unsubscribe();\n }\n\n private handleRtlChangeState(): void {\n this.eclRtlService.currentRtlState$.pipe(takeUntil(this.destroy$)).subscribe((rtlState) => {\n this.isRtl = rtlState;\n });\n }\n\n private createRangeValueComponent(): void {\n const componentRangeBubbleRef = this.viewContainerRef.createComponent(EclRangeBubbleComponent);\n const componentRangeValueRef = this.viewContainerRef.createComponent(EclRangeValueComponent);\n this.rangeBubbleComponent = componentRangeBubbleRef.instance;\n this.rangeValueComponent = componentRangeValueRef.instance;\n if (this.rangeValueId) {\n this.rangeValueComponent.id = this.rangeValueId;\n }\n }\n\n private initializeRangeValueComponent(): void {\n const initialValue = this.ngControl ? this.ngControl.value : this.value;\n this.updateRangeValue(initialValue);\n }\n\n private observeReactiveFormValueChanges(): void {\n this.ngControl?.valueChanges.pipe(distinctUntilChanged()).subscribe((value: string) => {\n this.updateRangeValue(value);\n });\n }\n\n private updateRangeValue(value: string): void {\n const numberValue = parseInt(value, 10);\n\n this.rangeBubbleComponent.value = numberValue;\n this.rangeValueComponent.value = numberValue;\n\n this.rangeChange.next(new EclRangeEvent(numberValue));\n }\n\n private initializeEventListeners(): void {\n const rangeElement = this.el.nativeElement;\n\n const mouseEnter$ = fromEvent(rangeElement, 'mouseenter');\n const mouseLeave$ = fromEvent(rangeElement, 'mouseleave');\n const rangeValueChange$ = fromEvent(rangeElement, 'input');\n\n mouseEnter$.pipe(takeUntil(this.destroy$)).subscribe(() => {\n this.rangeBubbleComponent.isVisible = true;\n this.cd.detectChanges();\n this.recalculateBubblePosition();\n });\n\n rangeValueChange$.pipe(takeUntil(this.destroy$)).subscribe(() => {\n this.recalculateBubblePosition();\n });\n\n mouseLeave$.pipe(takeUntil(this.destroy$)).subscribe(() => {\n this.rangeBubbleComponent.isVisible = false;\n });\n }\n\n private recalculateBubblePosition(): void {\n\n const halfThumbWidth = 8;\n const halfLabelWidth = this.rangeBubbleComponent.el.nativeElement.offsetWidth / 2;\n\n const rect = this.el.nativeElement.getBoundingClientRect();\n const center = rect.width / 2;\n\n const min = this.el.nativeElement.min ? this.el.nativeElement.min : 0;\n const max = this.el.nativeElement.max;\n const percentOfRange =\n (this.el.nativeElement.value - min) / (max - min);\n\n const valuePxPosition = percentOfRange * rect.width;\n const distFromCenter = valuePxPosition - center;\n const percentDistFromCenter = distFromCenter / center;\n\n const offset = percentDistFromCenter * halfThumbWidth;\n if (this.isRtl) {\n this.rangeBubbleComponent.left = this.el.nativeElement.offsetLeft + rect.width - valuePxPosition - halfLabelWidth + offset;\n } else {\n this.rangeBubbleComponent.left = valuePxPosition - halfLabelWidth - offset + this.el.nativeElement.offsetLeft;\n }\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { EclRangeBubbleComponent } from './ecl-range-bubble.component';\nimport { EclRangeValueComponent } from './ecl-range-value.component';\nimport { EclRangeDirective } from './ecl-range.directive';\n\nconst COMPONENTS = [EclRangeDirective, EclRangeValueComponent, EclRangeBubbleComponent];\n\n/**\n * Module that provides the EclRange directive and its dependencies.\n *\n * @deprecated Use {@link EUI_ECL_RANGE} instead.\n */\n@NgModule({\n imports: [...COMPONENTS],\n exports: [...COMPONENTS],\n})\nexport class EclRangeModule {}\n","import { EclRangeBubbleComponent } from './ecl-range-bubble.component';\nimport { EclRangeValueComponent } from './ecl-range-value.component';\nimport { EclRangeDirective } from './ecl-range.directive';\n\nexport * from './ecl-range.module';\nexport * from './ecl-range.directive';\nexport * from './ecl-range-value.component';\nexport * from './ecl-range-bubble.component';\nexport * from './events/ecl-range.event';\n\nexport const EUI_ECL_RANGE = [\n EclRangeDirective, EclRangeValueComponent, EclRangeBubbleComponent,\n] as const;","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;AAGA;;;AAGG;AAKG,MAAO,uBAAwB,SAAQ,gBAAgB,CAAA;AAJ7D,IAAA,WAAA,GAAA;;AAKC,QAAA,IAAA,CAAA,EAAE,GAAG,MAAM,CAAC,UAAU,CAAC;AAyBvB;;;AAGG;QACH,IAAA,CAAA,SAAS,GAAG,KAAK;AACjB,IAAA;AAvBA;;;AAGG;AACH,IAAA,IACI,UAAU,GAAA;QACb,OAAO;AACN,YAAA,KAAK,CAAC,aAAa,CAAC,mBAAmB,CAAC;YACxC,IAAI,CAAC,SAAS,GAAG,4BAA4B,GAAG,EAAE;AAClD,SAAA,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE;IACnB;mHAlBY,uBAAuB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAvB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,aAAA,EAAA,IAAA,EAAA,uBAAuB,mNCXpC,0DAAsD,EAAA,CAAA,CAAA;;gGDWzC,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAJnC,SAAS;+BACC,kBAAkB,EAAA,QAAA,EAAA,0DAAA,EAAA;;sBAS3B;;sBAMA,WAAW;uBAAC,OAAO;;sBAYnB,WAAW;uBAAC,eAAe;;;AE/B7B;;;AAGG;AAaG,MAAO,sBAAuB,SAAQ,gBAAgB,CAAA;AAWxD;;;AAGG;AACH,IAAA,IACI,UAAU,GAAA;AACV,QAAA,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE;IACrE;mHAlBS,sBAAsB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;uGAAtB,sBAAsB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,SAAA,EAAA,SAAA,EAAA,OAAA,EAAA,iBAAA,EAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECpBnC,uGACA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDUc,eAAe,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,aAAA,EAAA,IAAA,EAAA,WAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;gGAShB,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAZlC,SAAS;+BACI,iBAAiB,EAAA,OAAA,EAElB,CAAC,eAAe,CAAC,EAAA,QAAA,EAAA,uGAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA;;sBAazB;;sBAKA;;sBAAS,WAAW;uBAAC,SAAS;;sBAM9B,WAAW;uBAAC,OAAO;;;AEjCxB;;;AAGG;AACG,MAAO,aAAc,SAAQ,YAAY,CAAA;AAC3C;;AAEG;AACH,IAAA,WAAA,CAAmB,KAAa,EAAA;AAC5B,QAAA,KAAK,EAAE;QADQ,IAAA,CAAA,KAAK,GAAL,KAAK;IAExB;AACH;;ACJD;;;AAGG;AAIG,MAAO,iBAAkB,SAAQ,gBAAgB,CAAA;AAHvD,IAAA,WAAA,GAAA;;AAIc,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,SAAS,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AAEvE;;;AAGG;QACM,IAAA,CAAA,OAAO,GAAG,GAAG;AAYtB;;AAEG;QACqC,IAAA,CAAA,SAAS,GAAG,KAAK;AAEzD;;AAEG;QACqC,IAAA,CAAA,aAAa,GAAG,IAAI;AAE5D;;AAEG;AACO,QAAA,IAAA,CAAA,WAAW,GAAG,IAAI,YAAY,EAAiB;QAIjD,IAAA,CAAA,KAAK,GAAG,KAAK;AACb,QAAA,IAAA,CAAA,QAAQ,GAAqB,IAAI,OAAO,EAAW;AACnD,QAAA,IAAA,CAAA,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAC;AAC3C,QAAA,IAAA,CAAA,EAAE,GAAG,MAAM,CAAC,UAAU,CAAC;AACvB,QAAA,IAAA,CAAA,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC;AACrC,QAAA,IAAA,CAAA,EAAE,GAAG,MAAM,CAAC,iBAAiB,CAAC;AA2IzC,IAAA;AAzIG;;AAEG;AACH,IAAA,IACI,UAAU,GAAA;AACV,QAAA,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,WAAW,CAAC,EAAE,IAAI,CAAC,OAAO,GAAG,CAAA,WAAA,EAAc,IAAI,CAAC,OAAO,CAAA,CAAE,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE;IAChH;AAEA;;;AAGG;AACH,IAAA,IACI,YAAY,GAAA;AACZ,QAAA,IAAI,IAAI,CAAC,SAAS,EAAE;AAChB,YAAA,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO;QACxE;aAAO;YACH,OAAO,IAAI,CAAC,SAAS;QACzB;IACJ;AAEA;;;AAGG;AAEH,IAAA,OAAO,CAAC,GAAe,EAAA;AACnB,QAAA,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;AACjB,YAAA,MAAM,MAAM,GAAG,GAAG,CAAC,MAA0B;AAC7C,YAAA,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,KAAK,CAAC;QACvC;IACJ;AAEA;;;AAGG;IACH,QAAQ,GAAA;QACJ,IAAI,CAAC,yBAAyB,EAAE;QAChC,IAAI,CAAC,6BAA6B,EAAE;QACpC,IAAI,CAAC,wBAAwB,EAAE;QAC/B,IAAI,CAAC,+BAA+B,EAAE;QACtC,IAAI,CAAC,oBAAoB,EAAE;IAC/B;AAEA;;;AAGG;IACH,WAAW,GAAA;AACP,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;AACxB,QAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE;IAC/B;IAEQ,oBAAoB,GAAA;QACxB,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,QAAQ,KAAI;AACtF,YAAA,IAAI,CAAC,KAAK,GAAG,QAAQ;AACzB,QAAA,CAAC,CAAC;IACN;IAEQ,yBAAyB,GAAA;QAC7B,MAAM,uBAAuB,GAAG,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,uBAAuB,CAAC;QAC9F,MAAM,sBAAsB,GAAG,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,sBAAsB,CAAC;AAC5F,QAAA,IAAI,CAAC,oBAAoB,GAAG,uBAAuB,CAAC,QAAQ;AAC5D,QAAA,IAAI,CAAC,mBAAmB,GAAG,sBAAsB,CAAC,QAAQ;AAC1D,QAAA,IAAI,IAAI,CAAC,YAAY,EAAE;YACnB,IAAI,CAAC,mBAAmB,CAAC,EAAE,GAAG,IAAI,CAAC,YAAY;QACnD;IACJ;IAEQ,6BAA6B,GAAA;AACjC,QAAA,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK;AACvE,QAAA,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC;IACvC;IAEQ,+BAA+B,GAAA;AACnC,QAAA,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,KAAa,KAAI;AAClF,YAAA,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC;AAChC,QAAA,CAAC,CAAC;IACN;AAEQ,IAAA,gBAAgB,CAAC,KAAa,EAAA;QAClC,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC;AAEvC,QAAA,IAAI,CAAC,oBAAoB,CAAC,KAAK,GAAG,WAAW;AAC7C,QAAA,IAAI,CAAC,mBAAmB,CAAC,KAAK,GAAG,WAAW;QAE5C,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,aAAa,CAAC,WAAW,CAAC,CAAC;IACzD;IAEQ,wBAAwB,GAAA;AAC5B,QAAA,MAAM,YAAY,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa;QAE1C,MAAM,WAAW,GAAG,SAAS,CAAC,YAAY,EAAE,YAAY,CAAC;QACzD,MAAM,WAAW,GAAG,SAAS,CAAC,YAAY,EAAE,YAAY,CAAC;QACzD,MAAM,iBAAiB,GAAG,SAAS,CAAC,YAAY,EAAE,OAAO,CAAC;AAExD,QAAA,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,MAAK;AACtD,YAAA,IAAI,CAAC,oBAAoB,CAAC,SAAS,GAAG,IAAI;AAC1C,YAAA,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE;YACvB,IAAI,CAAC,yBAAyB,EAAE;AACpC,QAAA,CAAC,CAAC;AAEF,QAAA,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,MAAK;YAC5D,IAAI,CAAC,yBAAyB,EAAE;AAChC,QAAA,CAAC,CAAC;AAEN,QAAA,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,MAAK;AACtD,YAAA,IAAI,CAAC,oBAAoB,CAAC,SAAS,GAAG,KAAK;AAC/C,QAAA,CAAC,CAAC;IACR;IAEQ,yBAAyB,GAAA;QAE7B,MAAM,cAAc,GAAG,CAAC;AACxB,QAAA,MAAM,cAAc,GAAG,IAAI,CAAC,oBAAoB,CAAC,EAAE,CAAC,aAAa,CAAC,WAAW,GAAG,CAAC;QAEjF,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,qBAAqB,EAAE;AAC1D,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,GAAG,CAAC;QAE7B,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,GAAG,GAAG,CAAC;QACrE,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,GAAG;AACrC,QAAA,MAAM,cAAc,GAClB,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,KAAK,GAAG,GAAG,KAAK,GAAG,GAAG,GAAG,CAAC;AAEnD,QAAA,MAAM,eAAe,GAAG,cAAc,GAAG,IAAI,CAAC,KAAK;AACnD,QAAA,MAAM,cAAc,GAAG,eAAe,GAAG,MAAM;AAC/C,QAAA,MAAM,qBAAqB,GAAG,cAAc,GAAG,MAAM;AAErD,QAAA,MAAM,MAAM,GAAG,qBAAqB,GAAG,cAAc;AACrD,QAAA,IAAI,IAAI,CAAC,KAAK,EAAE;YACZ,IAAI,CAAC,oBAAoB,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,GAAG,eAAe,GAAG,cAAc,GAAG,MAAM;QAC9H;aAAQ;AACJ,YAAA,IAAI,CAAC,oBAAoB,CAAC,IAAI,GAAG,eAAe,GAAG,cAAc,GAAG,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,UAAU;QACjH;IACJ;mHAlLS,iBAAiB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;uGAAjB,iBAAiB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,KAAA,EAAA,OAAA,EAAA,YAAA,EAAA,cAAA,EAAA,SAAA,EAAA,CAAA,WAAA,EAAA,WAAA,EAsBN,gBAAgB,CAAA,EAAA,aAAA,EAAA,CAAA,eAAA,EAAA,eAAA,EAKhB,gBAAgB,CAAA,EAAA,EAAA,OAAA,EAAA,EAAA,WAAA,EAAA,aAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,uBAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,iBAAA,EAAA,0BAAA,EAAA,mBAAA,EAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;gGA3B3B,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAH7B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,iBAAiB;AAC9B,iBAAA;;sBAQI;;sBAKA;;sBAKA;;sBAKA,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE;;sBAKrC,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE;;sBAKrC;;sBAcA,WAAW;uBAAC,OAAO;;sBASnB,WAAW;uBAAC,0BAA0B;;sBAatC,YAAY;uBAAC,OAAO,EAAE,CAAC,cAAc,CAAC;;;AC/E3C,MAAM,UAAU,GAAG,CAAC,iBAAiB,EAAE,sBAAsB,EAAE,uBAAuB,CAAC;AAEvF;;;;AAIG;MAKU,cAAc,CAAA;mHAAd,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;oHAAd,cAAc,EAAA,OAAA,EAAA,CAXP,iBAAiB,EAAE,sBAAsB,EAAE,uBAAuB,CAAA,EAAA,OAAA,EAAA,CAAlE,iBAAiB,EAAE,sBAAsB,EAAE,uBAAuB,CAAA,EAAA,CAAA,CAAA;AAWzE,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,aAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,cAAc,YAXY,sBAAsB,CAAA,EAAA,CAAA,CAAA;;gGAWhD,cAAc,EAAA,UAAA,EAAA,CAAA;kBAJ1B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,OAAO,EAAE,CAAC,GAAG,UAAU,CAAC;AACxB,oBAAA,OAAO,EAAE,CAAC,GAAG,UAAU,CAAC;AAC3B,iBAAA;;;ACLM,MAAM,aAAa,GAAG;IACzB,iBAAiB,EAAE,sBAAsB,EAAE,uBAAuB;;;ACXtE;;AAEG;;;;"}
|
|
1
|
+
{"version":3,"file":"eui-ecl-components-ecl-range.mjs","sources":["../../components/ecl-range/ecl-range-bubble.component.ts","../../components/ecl-range/ecl-range-bubble.component.html","../../components/ecl-range/ecl-range-value.component.ts","../../components/ecl-range/ecl-range-value.component.html","../../components/ecl-range/events/ecl-range.event.ts","../../components/ecl-range/ecl-range.directive.ts","../../components/ecl-range/index.ts","../../components/ecl-range/eui-ecl-components-ecl-range.ts"],"sourcesContent":["import { Component, ElementRef, HostBinding, Input, inject } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Component representing a bubble tooltip shown above a range input,\n * used to display the current value with ECL styling.\n */\n@Component({\n\tselector: 'ecl-range-bubble',\n\ttemplateUrl: './ecl-range-bubble.component.html',\n})\nexport class EclRangeBubbleComponent extends ECLBaseDirective {\n\tel = inject(ElementRef);\n\n\t/**\n\t * Value displayed inside the bubble.\n\t */\n\t@Input() value: number;\n\n\t/**\n\t * Returns the CSS classes applied to the host element.\n\t * Always includes `ecl-range__bubble` and optionally adds the visible modifier.\n\t */\n\t@HostBinding('class')\n\tget cssClasses(): string {\n\t\treturn [\n\t\t\tsuper.getCssClasses('ecl-range__bubble'),\n\t\t\tthis.isVisible ? 'ecl-range__bubble--visible' : '',\n\t\t].join(' ').trim();\n\t}\n\n\t/**\n\t * Horizontal offset in pixels for positioning the bubble.\n\t * Applied as the left style property of the host element.\n\t */\n\t@HostBinding('style.left.px') left: number;\n\n\t/**\n\t * Controls the visibility of the bubble.\n\t * Adds the `ecl-range__bubble--visible` class when true.\n\t */\n\tisVisible = false;\n}\n","<span class=\"ecl-range__value-bubble\">{{value}}</span>","import { Component, HostBinding, Input } from '@angular/core';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Component representing the value label displayed next to a range input.\n * Applies ECL styling for the value element.\n */\n@Component({\n selector: 'ecl-range-value',\n templateUrl: './ecl-range-value.component.html',\n imports: [TranslateModule],\n styles: [\n `\n :host {\n display: block;\n }\n `,\n ],\n})\nexport class EclRangeValueComponent extends ECLBaseDirective {\n /**\n * Value to display next to the range input.\n */\n @Input() value: number;\n\n /**\n * ID attribute applied to the component's host element.\n */\n @Input() @HostBinding('attr.id') id: string;\n\n /**\n * Returns the CSS classes applied to the host element.\n * Adds the base `ecl-range__value` class for styling.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-range__value')].join(' ').trim();\n }\n}\n","{{ 'ecl.common.VALUE' | translate }}: <span class=\"ecl-range__value-current\"> {{ value }} </span>\n","import { EclBaseEvent } from '@eui/ecl/core';\n\n/**\n * Event emitted by the ECL range directive\n * whenever the range value changes.\n */\nexport class EclRangeEvent extends EclBaseEvent {\n /**\n * The current numeric value of the range input.\n */\n constructor(public value: number) {\n super();\n }\n}\n","import { Directive, ElementRef, EventEmitter, HostBinding, HostListener, Input, OnDestroy, OnInit, Output, ViewContainerRef, booleanAttribute, ChangeDetectorRef, inject } from '@angular/core';\nimport { NgControl } from '@angular/forms';\nimport { Subject, distinctUntilChanged, fromEvent, takeUntil } from 'rxjs';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclRtlService } from '@eui/ecl/core';\nimport { EclRangeValueComponent } from './ecl-range-value.component';\nimport { EclRangeBubbleComponent } from './ecl-range-bubble.component';\nimport { EclRangeEvent } from './events/ecl-range.event';\n\n/**\n * Directive enhancing native input[type=range] with ECL styles and behavior.\n * Adds value display, bubble indicator, RTL support and integration with reactive forms.\n */\n@Directive({\n selector: 'input[eclRange]',\n})\nexport class EclRangeDirective extends ECLBaseDirective implements OnInit, OnDestroy {\n protected ngControl = inject(NgControl, { optional: true, self: true });\n\n /**\n * Defines the size of the range component.\n * Adds a corresponding size class like `ecl-range--m`.\n */\n @Input() eclSize = 'm';\n\n /**\n * Initial value for the range input when used standalone.\n */\n @Input() value: string;\n\n /**\n * ID assigned to the projected ECL range value component.\n */\n @Input() rangeValueId: string;\n\n /**\n * Adds the `ecl-range--invalid` class when true.\n */\n @Input({ transform: booleanAttribute }) isInvalid = false;\n\n /**\n * Enables or disables the display of a value label.\n */\n @Input({ transform: booleanAttribute }) hasValueLabel = true;\n\n /**\n * Emits when the range value changes.\n */\n @Output() rangeChange = new EventEmitter<EclRangeEvent>();\n\n private rangeValueComponent: EclRangeValueComponent;\n private rangeBubbleComponent: EclRangeBubbleComponent;\n private isRtl = false;\n private destroy$: Subject<boolean> = new Subject<boolean>();\n private viewContainerRef = inject(ViewContainerRef);\n private el = inject(ElementRef);\n private eclRtlService = inject(EclRtlService);\n private cd = inject(ChangeDetectorRef);\n\n /**\n * Returns the CSS classes applied to the host element.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-range'), this.eclSize ? `ecl-range--${this.eclSize}` : ''].join(' ').trim();\n }\n\n /**\n * Returns whether the component is in an invalid state.\n * Checks reactive form control if available, or uses `isInvalid` input.\n */\n @HostBinding('class.ecl-range--invalid')\n get invalidState(): boolean {\n if (this.ngControl) {\n return this.ngControl.status === 'INVALID' && this.ngControl.touched;\n } else {\n return this.isInvalid;\n }\n }\n\n /**\n * Handles native input events on the range element\n * when not used with reactive forms.\n */\n @HostListener('input', ['$any($event)'])\n onInput(evt: InputEvent): void {\n if (!this.ngControl) {\n const target = evt.target as HTMLInputElement;\n this.updateRangeValue(target.value);\n }\n }\n\n /**\n * Angular lifecycle hook.\n * Initializes dynamic components and event listeners.\n */\n ngOnInit(): void {\n this.createRangeValueComponent();\n this.initializeRangeValueComponent();\n this.initializeEventListeners();\n this.observeReactiveFormValueChanges();\n this.handleRtlChangeState();\n }\n\n /**\n * Angular lifecycle hook.\n * Cleans up subscriptions on destroy.\n */\n ngOnDestroy(): void {\n this.destroy$.next(true);\n this.destroy$.unsubscribe();\n }\n\n private handleRtlChangeState(): void {\n this.eclRtlService.currentRtlState$.pipe(takeUntil(this.destroy$)).subscribe((rtlState) => {\n this.isRtl = rtlState;\n });\n }\n\n private createRangeValueComponent(): void {\n const componentRangeBubbleRef = this.viewContainerRef.createComponent(EclRangeBubbleComponent);\n const componentRangeValueRef = this.viewContainerRef.createComponent(EclRangeValueComponent);\n this.rangeBubbleComponent = componentRangeBubbleRef.instance;\n this.rangeValueComponent = componentRangeValueRef.instance;\n if (this.rangeValueId) {\n this.rangeValueComponent.id = this.rangeValueId;\n }\n }\n\n private initializeRangeValueComponent(): void {\n const initialValue = this.ngControl ? this.ngControl.value : this.value;\n this.updateRangeValue(initialValue);\n }\n\n private observeReactiveFormValueChanges(): void {\n this.ngControl?.valueChanges.pipe(distinctUntilChanged()).subscribe((value: string) => {\n this.updateRangeValue(value);\n });\n }\n\n private updateRangeValue(value: string): void {\n const numberValue = parseInt(value, 10);\n\n this.rangeBubbleComponent.value = numberValue;\n this.rangeValueComponent.value = numberValue;\n\n this.rangeChange.next(new EclRangeEvent(numberValue));\n }\n\n private initializeEventListeners(): void {\n const rangeElement = this.el.nativeElement;\n\n const mouseEnter$ = fromEvent(rangeElement, 'mouseenter');\n const mouseLeave$ = fromEvent(rangeElement, 'mouseleave');\n const rangeValueChange$ = fromEvent(rangeElement, 'input');\n\n mouseEnter$.pipe(takeUntil(this.destroy$)).subscribe(() => {\n this.rangeBubbleComponent.isVisible = true;\n this.cd.detectChanges();\n this.recalculateBubblePosition();\n });\n\n rangeValueChange$.pipe(takeUntil(this.destroy$)).subscribe(() => {\n this.recalculateBubblePosition();\n });\n\n mouseLeave$.pipe(takeUntil(this.destroy$)).subscribe(() => {\n this.rangeBubbleComponent.isVisible = false;\n });\n }\n\n private recalculateBubblePosition(): void {\n\n const halfThumbWidth = 8;\n const halfLabelWidth = this.rangeBubbleComponent.el.nativeElement.offsetWidth / 2;\n\n const rect = this.el.nativeElement.getBoundingClientRect();\n const center = rect.width / 2;\n\n const min = this.el.nativeElement.min ? this.el.nativeElement.min : 0;\n const max = this.el.nativeElement.max;\n const percentOfRange =\n (this.el.nativeElement.value - min) / (max - min);\n\n const valuePxPosition = percentOfRange * rect.width;\n const distFromCenter = valuePxPosition - center;\n const percentDistFromCenter = distFromCenter / center;\n\n const offset = percentDistFromCenter * halfThumbWidth;\n if (this.isRtl) {\n this.rangeBubbleComponent.left = this.el.nativeElement.offsetLeft + rect.width - valuePxPosition - halfLabelWidth + offset;\n } else {\n this.rangeBubbleComponent.left = valuePxPosition - halfLabelWidth - offset + this.el.nativeElement.offsetLeft;\n }\n }\n\n}\n","import { EclRangeBubbleComponent } from './ecl-range-bubble.component';\nimport { EclRangeValueComponent } from './ecl-range-value.component';\nimport { EclRangeDirective } from './ecl-range.directive';\n\nexport * from './ecl-range.directive';\nexport * from './ecl-range-value.component';\nexport * from './ecl-range-bubble.component';\nexport * from './events/ecl-range.event';\n\nexport const EUI_ECL_RANGE = [\n EclRangeDirective, EclRangeValueComponent, EclRangeBubbleComponent,\n] as const;","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { forwardRef, EventEmitter, booleanAttribute, numberAttribute, HostBinding, Output, Input, Component
|
|
2
|
+
import { forwardRef, EventEmitter, booleanAttribute, numberAttribute, HostBinding, Output, Input, Component } from '@angular/core';
|
|
3
3
|
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
4
4
|
import { EclBaseEvent, ECLBaseDirective } from '@eui/ecl/core';
|
|
5
5
|
import * as i1 from '@eui/ecl/components/ecl-icon';
|
|
@@ -91,10 +91,10 @@ class EclRatingFieldComponent extends ECLBaseDirective {
|
|
|
91
91
|
registerOnTouched(fn) {
|
|
92
92
|
this.onTouched = fn;
|
|
93
93
|
}
|
|
94
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.
|
|
95
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.
|
|
94
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: EclRatingFieldComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
95
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.3", type: EclRatingFieldComponent, isStandalone: true, selector: "ecl-rating-field", inputs: { name: "name", numberOfStars: ["numberOfStars", "numberOfStars", numberAttribute], rating: ["rating", "rating", numberAttribute], disabled: ["disabled", "disabled", booleanAttribute] }, outputs: { ratingChange: "ratingChange" }, host: { properties: { "attr.disabled": "this.disabled", "class": "this.cssClasses" } }, providers: [ECL_RATINGFIELD_VALUE_ACCESSOR], usesInheritance: true, ngImport: i0, template: "@for(n of numbers;track n) {\n <input\n type=\"radio\"\n id=\"{{ name }}-{{ n }}\"\n [name]=\"name\"\n class=\"ecl-rating-field__input\"\n [value]=\"n\"\n required=\"\"\n [attr.checked]=\"rating === n ? true : undefined\"\n [attr.disabled]=\"disabled ? true : undefined\"\n (click)=\"onRadioClick(n)\" />\n <label class=\"ecl-rating-field__label\" for=\"{{ name }}-{{ n }}\">\n <span class=\"ecl-rating-field__sr-label\">{{ n }} stars</span>\n <ecl-icon icon=\"star-filled\" class=\"ecl-rating-field__icon-filled\" size=\"l\"> </ecl-icon>\n <ecl-icon icon=\"star-outline\" class=\"ecl-rating-field__icon-outline\" size=\"l\"> </ecl-icon>\n </label>\n}\n", dependencies: [{ kind: "component", type: i1.EclIconComponent, selector: "ecl-icon", inputs: ["iconSet", "icon", "size", "color", "transform", "ariaLabelledby", "role", "title", "ariaHidden", "focusable", "isFlipHorizontal"] }] }); }
|
|
96
96
|
}
|
|
97
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.
|
|
97
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: EclRatingFieldComponent, decorators: [{
|
|
98
98
|
type: Component,
|
|
99
99
|
args: [{ selector: 'ecl-rating-field', imports: [...EUI_ECL_ICON], providers: [ECL_RATINGFIELD_VALUE_ACCESSOR], template: "@for(n of numbers;track n) {\n <input\n type=\"radio\"\n id=\"{{ name }}-{{ n }}\"\n [name]=\"name\"\n class=\"ecl-rating-field__input\"\n [value]=\"n\"\n required=\"\"\n [attr.checked]=\"rating === n ? true : undefined\"\n [attr.disabled]=\"disabled ? true : undefined\"\n (click)=\"onRadioClick(n)\" />\n <label class=\"ecl-rating-field__label\" for=\"{{ name }}-{{ n }}\">\n <span class=\"ecl-rating-field__sr-label\">{{ n }} stars</span>\n <ecl-icon icon=\"star-filled\" class=\"ecl-rating-field__icon-filled\" size=\"l\"> </ecl-icon>\n <ecl-icon icon=\"star-outline\" class=\"ecl-rating-field__icon-outline\" size=\"l\"> </ecl-icon>\n </label>\n}\n" }]
|
|
100
100
|
}], propDecorators: { name: [{
|
|
@@ -118,24 +118,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-rc.2", ng
|
|
|
118
118
|
args: ['class']
|
|
119
119
|
}] } });
|
|
120
120
|
|
|
121
|
-
/**
|
|
122
|
-
* Module that provides the EclRatingField component.
|
|
123
|
-
*
|
|
124
|
-
* @deprecated Use {@link EUI_ECL_RATING_FIELD} instead.
|
|
125
|
-
*/
|
|
126
|
-
class EclRatingFieldModule {
|
|
127
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-rc.2", ngImport: i0, type: EclRatingFieldModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
128
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.0.0-rc.2", ngImport: i0, type: EclRatingFieldModule, imports: [EclRatingFieldComponent], exports: [EclRatingFieldComponent] }); }
|
|
129
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.0.0-rc.2", ngImport: i0, type: EclRatingFieldModule, imports: [EclRatingFieldComponent] }); }
|
|
130
|
-
}
|
|
131
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-rc.2", ngImport: i0, type: EclRatingFieldModule, decorators: [{
|
|
132
|
-
type: NgModule,
|
|
133
|
-
args: [{
|
|
134
|
-
imports: [EclRatingFieldComponent],
|
|
135
|
-
exports: [EclRatingFieldComponent],
|
|
136
|
-
}]
|
|
137
|
-
}] });
|
|
138
|
-
|
|
139
121
|
const EUI_ECL_RATING_FIELD = [
|
|
140
122
|
EclRatingFieldComponent,
|
|
141
123
|
];
|
|
@@ -144,5 +126,5 @@ const EUI_ECL_RATING_FIELD = [
|
|
|
144
126
|
* Generated bundle index. Do not edit.
|
|
145
127
|
*/
|
|
146
128
|
|
|
147
|
-
export { ECL_RATINGFIELD_VALUE_ACCESSOR, EUI_ECL_RATING_FIELD, EclRatingChangeEvent, EclRatingFieldComponent
|
|
129
|
+
export { ECL_RATINGFIELD_VALUE_ACCESSOR, EUI_ECL_RATING_FIELD, EclRatingChangeEvent, EclRatingFieldComponent };
|
|
148
130
|
//# sourceMappingURL=eui-ecl-components-ecl-rating-field.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eui-ecl-components-ecl-rating-field.mjs","sources":["../../components/ecl-rating-field/events/ecl-rating-change.event.ts","../../components/ecl-rating-field/ecl-rating-field.component.ts","../../components/ecl-rating-field/ecl-rating-field.component.html","../../components/ecl-rating-field/
|
|
1
|
+
{"version":3,"file":"eui-ecl-components-ecl-rating-field.mjs","sources":["../../components/ecl-rating-field/events/ecl-rating-change.event.ts","../../components/ecl-rating-field/ecl-rating-field.component.ts","../../components/ecl-rating-field/ecl-rating-field.component.html","../../components/ecl-rating-field/index.ts","../../components/ecl-rating-field/eui-ecl-components-ecl-rating-field.ts"],"sourcesContent":["import { EclBaseEvent } from '@eui/ecl/core';\n\nexport class EclRatingChangeEvent extends EclBaseEvent {\n constructor(public readonly value: number) {\n super();\n }\n}","import { booleanAttribute, Component, EventEmitter, forwardRef, HostBinding, Input, numberAttribute, Output, Provider } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclRatingChangeEvent } from './events/ecl-rating-change.event';\nimport { EUI_ECL_ICON } from '@eui/ecl/components/ecl-icon';\n\nexport const ECL_RATINGFIELD_VALUE_ACCESSOR: Provider = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => EclRatingFieldComponent),\n multi: true,\n};\n\nconst noop = (): void => {\n /** empty */\n};\n\n/**\n * Component representing rating field, displayed with stars.\n * Typically used when the user needs to evaluate something.\n */\n@Component({\n selector: 'ecl-rating-field',\n templateUrl: './ecl-rating-field.component.html',\n imports: [...EUI_ECL_ICON],\n providers: [ECL_RATINGFIELD_VALUE_ACCESSOR],\n})\nexport class EclRatingFieldComponent extends ECLBaseDirective implements ControlValueAccessor {\n /**\n * Name of the radio group. Also used for creating id for each radio button.\n */\n @Input() name = 'rating';\n /**\n * How many stars should the rating have.\n */\n @Input({ transform: numberAttribute }) numberOfStars = 5;\n /**\n * The initial value, if any.\n */\n @Input({ transform: numberAttribute }) rating: number;\n /**\n * Can be used to set disabled status.\n */\n @Input({ transform: booleanAttribute })\n @HostBinding('attr.disabled')\n disabled: boolean;\n\n /**\n * The event to be emitted when rating is changed.\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n @Output() ratingChange = new EventEmitter<any>();\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n private onChange: (_: any) => void = noop;\n private onTouched: () => void = noop;\n\n /**\n * Array of numbers, from 1 to 'numberOfStars'\n */\n get numbers(): Array<number> {\n return Array(this.numberOfStars)\n .fill(0)\n .map((_, i) => this.numberOfStars - i);\n }\n\n /**\n * Applies the base class `ecl-rating-field` to the host element. Applies 'ecl-rating-field--disabled' class on condition.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-rating-field'), this.disabled ? 'ecl-rating-field--disabled' : ''].join(' ').trim();\n }\n\n /**\n * Method that sets the new rating and emit 'ratingChange' event, that includes the new rating number.\n * @param rating - the new rating\n */\n onRadioClick(rating: number): void {\n this.rating = rating;\n this.onTouched();\n this.onChange(this.rating);\n\n const evt = new EclRatingChangeEvent(rating);\n this.ratingChange.next(evt);\n }\n\n /**\n * Informs the component of any changes in the parent (ControlValueAccessor). Sets the new value for the 'rating' property.\n * @param value \n */\n writeValue(value: number): void {\n this.rating = value;\n }\n\n /**\n * Disable/enable component.\n * @param isDisabled \n */\n setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled || null;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n registerOnChange(fn: any): void {\n this.onChange = fn;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n registerOnTouched(fn: any): void {\n this.onTouched = fn;\n }\n}\n","@for(n of numbers;track n) {\n <input\n type=\"radio\"\n id=\"{{ name }}-{{ n }}\"\n [name]=\"name\"\n class=\"ecl-rating-field__input\"\n [value]=\"n\"\n required=\"\"\n [attr.checked]=\"rating === n ? true : undefined\"\n [attr.disabled]=\"disabled ? true : undefined\"\n (click)=\"onRadioClick(n)\" />\n <label class=\"ecl-rating-field__label\" for=\"{{ name }}-{{ n }}\">\n <span class=\"ecl-rating-field__sr-label\">{{ n }} stars</span>\n <ecl-icon icon=\"star-filled\" class=\"ecl-rating-field__icon-filled\" size=\"l\"> </ecl-icon>\n <ecl-icon icon=\"star-outline\" class=\"ecl-rating-field__icon-outline\" size=\"l\"> </ecl-icon>\n </label>\n}\n","import { EclRatingFieldComponent } from './ecl-rating-field.component';\n\nexport * from './ecl-rating-field.component';\nexport * from './events/ecl-rating-change.event';\n\nexport const EUI_ECL_RATING_FIELD = [\n EclRatingFieldComponent,\n] as const;","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { forwardRef, inject, EventEmitter, HostListener, Output, HostBinding, Input, Component
|
|
2
|
+
import { forwardRef, inject, EventEmitter, HostListener, Output, HostBinding, Input, Component } from '@angular/core';
|
|
3
3
|
import * as i1 from '@angular/forms';
|
|
4
4
|
import { NG_VALUE_ACCESSOR, FormsModule } from '@angular/forms';
|
|
5
5
|
import * as i6 from '@ngx-translate/core';
|
|
@@ -8,9 +8,9 @@ import { EclBaseEvent, ECLBaseDirective, EclThemeService } from '@eui/ecl/core';
|
|
|
8
8
|
import * as i2 from '@eui/ecl/components/ecl-button';
|
|
9
9
|
import { EUI_ECL_BUTTON } from '@eui/ecl/components/ecl-button';
|
|
10
10
|
import * as i3 from '@eui/ecl/components/ecl-form-group';
|
|
11
|
-
import {
|
|
11
|
+
import { EUI_ECL_FORM_GROUP } from '@eui/ecl/components/ecl-form-group';
|
|
12
12
|
import * as i4 from '@eui/ecl/components/ecl-text-input';
|
|
13
|
-
import {
|
|
13
|
+
import { EUI_ECL_TEXT_INPUT } from '@eui/ecl/components/ecl-text-input';
|
|
14
14
|
import * as i5 from '@eui/ecl/components/ecl-icon';
|
|
15
15
|
import { EUI_ECL_ICON } from '@eui/ecl/components/ecl-icon';
|
|
16
16
|
|
|
@@ -43,9 +43,7 @@ class EclSearchFormComponent extends ECLBaseDirective {
|
|
|
43
43
|
/**
|
|
44
44
|
* This event is emited, when user performs the search action. Includes the search text from the input field.
|
|
45
45
|
*/
|
|
46
|
-
|
|
47
|
-
// eslint-disable-next-line @angular-eslint/no-output-native
|
|
48
|
-
this.search = new EventEmitter();
|
|
46
|
+
this.searchEvent = new EventEmitter();
|
|
49
47
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
50
48
|
this.onChange = noop;
|
|
51
49
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
@@ -61,14 +59,14 @@ class EclSearchFormComponent extends ECLBaseDirective {
|
|
|
61
59
|
* Perform search when user clicks the search button. Emits the search event with the search text.
|
|
62
60
|
*/
|
|
63
61
|
onSearchClick(evt) {
|
|
64
|
-
this.
|
|
62
|
+
this.searchEvent.next(new EclSearchFormEvent(this.searchInputText));
|
|
65
63
|
evt.preventDefault();
|
|
66
64
|
}
|
|
67
65
|
/**
|
|
68
66
|
* Perform search when user clicks Enter when on the input field. Emits the search event with the search text.
|
|
69
67
|
*/
|
|
70
68
|
onEnterKeyDown(evt) {
|
|
71
|
-
this.
|
|
69
|
+
this.searchEvent.next(new EclSearchFormEvent(this.searchInputText));
|
|
72
70
|
evt.preventDefault();
|
|
73
71
|
}
|
|
74
72
|
/**
|
|
@@ -91,12 +89,12 @@ class EclSearchFormComponent extends ECLBaseDirective {
|
|
|
91
89
|
registerOnTouched(fn) {
|
|
92
90
|
this.onTouched = fn;
|
|
93
91
|
}
|
|
94
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.
|
|
95
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.
|
|
92
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: EclSearchFormComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
93
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.3", type: EclSearchFormComponent, isStandalone: true, selector: "ecl-search-form", inputs: { searchInputText: "searchInputText", placeholder: "placeholder", searchButtonLabel: "searchButtonLabel", searchButtonIcon: "searchButtonIcon", buttonExtraClassses: "buttonExtraClassses", inputExtraClassses: "inputExtraClassses" }, outputs: { searchEvent: "searchEvent" }, host: { listeners: { "keydown.enter": "onEnterKeyDown($event)" }, properties: { "class": "this.cssClasses", "attr.role": "this.role" } }, providers: [ECL_SEARCH_FORM_VALUE_ACCESSOR], usesInheritance: true, ngImport: i0, template: "<ecl-form-group>\n <input\n eclTextInput\n [(ngModel)]=\"searchInputText\"\n (ngModelChange)=\"onModelChange($event)\"\n type=\"search\"\n name=\"search-input\"\n placeholder=\"{{ placeholder || 'ecl.common.SEARCH' | translate }}\"\n class=\"ecl-search-form__text-input {{inputExtraClassses}}\" />\n</ecl-form-group>\n<button eclButton type=\"submit\" [variant]=\"eclThemeService.isECTheme() ? 'tertiary': 'primary'\" (click)=\"onSearchClick($event)\"\n class=\"ecl-button--neutral ecl-search-form__button {{buttonExtraClassses}}\" isIconOnly>\n <ecl-icon [icon]=\"searchButtonIcon\" size=\"xs\"></ecl-icon>\n <span eclButtonLabel>\n {{ searchButtonLabel || 'ecl.common.SEARCH' | translate }}\n </span>\n</button>\n", dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2.EclButtonComponent, selector: "button[eclButton], button[ecl-button], a[eclButton]", inputs: ["isIconOnly", "variant", "eclStyle", "size", "containerStyleClass"] }, { kind: "directive", type: i2.EclButtonLabelDirective, selector: "[eclButtonLabel]" }, { kind: "component", type: i3.EclFormGroupComponent, selector: "[eclFormGroup], ecl-form-group" }, { kind: "directive", type: i4.EclTextInputDirective, selector: "input[eclTextInput]", inputs: ["type", "eclSize", "isInvalid"] }, { kind: "component", type: i5.EclIconComponent, selector: "ecl-icon", inputs: ["iconSet", "icon", "size", "color", "transform", "ariaLabelledby", "role", "title", "ariaHidden", "focusable", "isFlipHorizontal"] }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }] }); }
|
|
96
94
|
}
|
|
97
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.
|
|
95
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: EclSearchFormComponent, decorators: [{
|
|
98
96
|
type: Component,
|
|
99
|
-
args: [{ selector: 'ecl-search-form', imports: [TranslateModule, FormsModule, ...EUI_ECL_BUTTON,
|
|
97
|
+
args: [{ selector: 'ecl-search-form', imports: [TranslateModule, FormsModule, ...EUI_ECL_BUTTON, ...EUI_ECL_FORM_GROUP, ...EUI_ECL_TEXT_INPUT, ...EUI_ECL_ICON], providers: [ECL_SEARCH_FORM_VALUE_ACCESSOR], template: "<ecl-form-group>\n <input\n eclTextInput\n [(ngModel)]=\"searchInputText\"\n (ngModelChange)=\"onModelChange($event)\"\n type=\"search\"\n name=\"search-input\"\n placeholder=\"{{ placeholder || 'ecl.common.SEARCH' | translate }}\"\n class=\"ecl-search-form__text-input {{inputExtraClassses}}\" />\n</ecl-form-group>\n<button eclButton type=\"submit\" [variant]=\"eclThemeService.isECTheme() ? 'tertiary': 'primary'\" (click)=\"onSearchClick($event)\"\n class=\"ecl-button--neutral ecl-search-form__button {{buttonExtraClassses}}\" isIconOnly>\n <ecl-icon [icon]=\"searchButtonIcon\" size=\"xs\"></ecl-icon>\n <span eclButtonLabel>\n {{ searchButtonLabel || 'ecl.common.SEARCH' | translate }}\n </span>\n</button>\n" }]
|
|
100
98
|
}], propDecorators: { searchInputText: [{
|
|
101
99
|
type: Input
|
|
102
100
|
}], placeholder: [{
|
|
@@ -115,31 +113,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-rc.2", ng
|
|
|
115
113
|
}], role: [{
|
|
116
114
|
type: HostBinding,
|
|
117
115
|
args: ['attr.role']
|
|
118
|
-
}],
|
|
116
|
+
}], searchEvent: [{
|
|
119
117
|
type: Output
|
|
120
118
|
}], onEnterKeyDown: [{
|
|
121
119
|
type: HostListener,
|
|
122
120
|
args: ['keydown.enter', ['$event']]
|
|
123
121
|
}] } });
|
|
124
122
|
|
|
125
|
-
/**
|
|
126
|
-
* Module that provides the EclSearchForm component.
|
|
127
|
-
*
|
|
128
|
-
* @deprecated Use {@link EUI_ECL_SEARCH_FORM} instead.
|
|
129
|
-
*/
|
|
130
|
-
class EclSearchFormModule {
|
|
131
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-rc.2", ngImport: i0, type: EclSearchFormModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
132
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.0.0-rc.2", ngImport: i0, type: EclSearchFormModule, imports: [EclSearchFormComponent], exports: [EclSearchFormComponent] }); }
|
|
133
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.0.0-rc.2", ngImport: i0, type: EclSearchFormModule, imports: [EclSearchFormComponent] }); }
|
|
134
|
-
}
|
|
135
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-rc.2", ngImport: i0, type: EclSearchFormModule, decorators: [{
|
|
136
|
-
type: NgModule,
|
|
137
|
-
args: [{
|
|
138
|
-
imports: [EclSearchFormComponent],
|
|
139
|
-
exports: [EclSearchFormComponent],
|
|
140
|
-
}]
|
|
141
|
-
}] });
|
|
142
|
-
|
|
143
123
|
const EUI_ECL_SEARCH_FORM = [
|
|
144
124
|
EclSearchFormComponent,
|
|
145
125
|
];
|
|
@@ -148,5 +128,5 @@ const EUI_ECL_SEARCH_FORM = [
|
|
|
148
128
|
* Generated bundle index. Do not edit.
|
|
149
129
|
*/
|
|
150
130
|
|
|
151
|
-
export { ECL_SEARCH_FORM_VALUE_ACCESSOR, EUI_ECL_SEARCH_FORM, EclSearchFormComponent, EclSearchFormEvent
|
|
131
|
+
export { ECL_SEARCH_FORM_VALUE_ACCESSOR, EUI_ECL_SEARCH_FORM, EclSearchFormComponent, EclSearchFormEvent };
|
|
152
132
|
//# sourceMappingURL=eui-ecl-components-ecl-search-form.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eui-ecl-components-ecl-search-form.mjs","sources":["../../components/ecl-search-form/events/ecl-search-form.event.ts","../../components/ecl-search-form/ecl-search-form.component.ts","../../components/ecl-search-form/ecl-search-form.component.html","../../components/ecl-search-form/ecl-search-form.module.ts","../../components/ecl-search-form/index.ts","../../components/ecl-search-form/eui-ecl-components-ecl-search-form.ts"],"sourcesContent":["import { EclBaseEvent } from '@eui/ecl/core';\n\nexport class EclSearchFormEvent extends EclBaseEvent {\n\tconstructor(public keyword: string) {\n\t\tsuper();\n\t}\n}\n","import {\n Component,\n EventEmitter,\n forwardRef,\n HostBinding,\n HostListener,\n Input,\n Output,\n Provider,\n inject,\n} from '@angular/core';\nimport { ControlValueAccessor, FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclThemeService } from '@eui/ecl/core';\nimport { EclSearchFormEvent } from './events/ecl-search-form.event';\nimport { EUI_ECL_BUTTON } from '@eui/ecl/components/ecl-button';\nimport { EclFormGroupModule } from '@eui/ecl/components/ecl-form-group';\nimport { EclTextInputModule } from '@eui/ecl/components/ecl-text-input';\nimport { EUI_ECL_ICON } from '@eui/ecl/components/ecl-icon';\n\nexport const ECL_SEARCH_FORM_VALUE_ACCESSOR: Provider = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => EclSearchFormComponent),\n multi: true,\n};\n\nconst noop = (): void => {\n /** empty*/\n};\n\n/**\n * Component representing search field - input and button, in a responsive, styled layout.\n */\n@Component({\n selector: 'ecl-search-form',\n templateUrl: 'ecl-search-form.component.html',\n imports: [TranslateModule, FormsModule, ...EUI_ECL_BUTTON, EclFormGroupModule, EclTextInputModule, ...EUI_ECL_ICON], // TODO: replace with new names EUI_ECL_...\n providers: [ECL_SEARCH_FORM_VALUE_ACCESSOR],\n})\nexport class EclSearchFormComponent extends ECLBaseDirective implements ControlValueAccessor {\n protected eclThemeService = inject(EclThemeService);\n\n /**\n * The current/default search text.\n */\n @Input() searchInputText: string;\n @Input() placeholder: string;\n @Input() searchButtonLabel: string;\n @Input() searchButtonIcon = 'search';\n @Input() buttonExtraClassses = '';\n @Input() inputExtraClassses = '';\n\n /**\n * Applies the base class `ecl-search-form` to the host element.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-search-form')].join(' ').trim();\n }\n\n @HostBinding('attr.role') role = 'search';\n\n /**\n * This event is emited, when user performs the search action. Includes the search text from the input field.\n */\n // TODO: this output should be renamed in v20 - breaking change!\n // eslint-disable-next-line @angular-eslint/no-output-native\n @Output() search = new EventEmitter<EclSearchFormEvent>();\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n private onChange: (_: any) => void = noop;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n private onTouched: (_: any) => void = noop;\n\n /**\n * Perform search when user clicks the search button. Emits the search event with the search text.\n */\n onSearchClick(evt: Event): void {\n this.search.next(new EclSearchFormEvent(this.searchInputText));\n evt.preventDefault();\n }\n\n /**\n * Perform search when user clicks Enter when on the input field. Emits the search event with the search text.\n */\n @HostListener('keydown.enter', ['$event'])\n onEnterKeyDown(evt: Event): void {\n this.search.next(new EclSearchFormEvent(this.searchInputText));\n evt.preventDefault();\n }\n\n /**\n * Assigns the new input text value to the 'searchInputText' property, each time the input is changed.\n * @param newValue\n */\n onModelChange(newValue: string): void {\n this.searchInputText = newValue;\n this.onChange(newValue);\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n writeValue(value: any): void {\n this.searchInputText = value;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n registerOnChange(fn: (_: any) => void): void {\n this.onChange = fn;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n registerOnTouched(fn: (_: any) => void): void {\n this.onTouched = fn;\n }\n}\n","<ecl-form-group>\n <input\n eclTextInput\n [(ngModel)]=\"searchInputText\"\n (ngModelChange)=\"onModelChange($event)\"\n type=\"search\"\n name=\"search-input\"\n placeholder=\"{{ placeholder || 'ecl.common.SEARCH' | translate }}\"\n class=\"ecl-search-form__text-input {{inputExtraClassses}}\" />\n</ecl-form-group>\n<button eclButton type=\"submit\" [variant]=\"eclThemeService.isECTheme() ? 'tertiary': 'primary'\" (click)=\"onSearchClick($event)\"\n class=\"ecl-button--neutral ecl-search-form__button {{buttonExtraClassses}}\" isIconOnly>\n <ecl-icon [icon]=\"searchButtonIcon\" size=\"xs\"></ecl-icon>\n <span eclButtonLabel>\n {{ searchButtonLabel || 'ecl.common.SEARCH' | translate }}\n </span>\n</button>\n","import { NgModule } from '@angular/core';\nimport { EclSearchFormComponent } from './ecl-search-form.component';\n\n/**\n * Module that provides the EclSearchForm component.\n *\n * @deprecated Use {@link EUI_ECL_SEARCH_FORM} instead.\n */\n@NgModule({\n imports: [EclSearchFormComponent],\n exports: [EclSearchFormComponent],\n})\nexport class EclSearchFormModule {}\n","import { EclSearchFormComponent } from './ecl-search-form.component';\n\nexport * from './ecl-search-form.module';\nexport * from './ecl-search-form.component';\nexport * from './events/ecl-search-form.event';\n\nexport const EUI_ECL_SEARCH_FORM = [\n EclSearchFormComponent,\n] as const;","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"eui-ecl-components-ecl-search-form.mjs","sources":["../../components/ecl-search-form/events/ecl-search-form.event.ts","../../components/ecl-search-form/ecl-search-form.component.ts","../../components/ecl-search-form/ecl-search-form.component.html","../../components/ecl-search-form/index.ts","../../components/ecl-search-form/eui-ecl-components-ecl-search-form.ts"],"sourcesContent":["import { EclBaseEvent } from '@eui/ecl/core';\n\nexport class EclSearchFormEvent extends EclBaseEvent {\n\tconstructor(public keyword: string) {\n\t\tsuper();\n\t}\n}\n","import {\n Component,\n EventEmitter,\n forwardRef,\n HostBinding,\n HostListener,\n Input,\n Output,\n Provider,\n inject,\n} from '@angular/core';\nimport { ControlValueAccessor, FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclThemeService } from '@eui/ecl/core';\nimport { EclSearchFormEvent } from './events/ecl-search-form.event';\nimport { EUI_ECL_BUTTON } from '@eui/ecl/components/ecl-button';\nimport { EUI_ECL_FORM_GROUP } from '@eui/ecl/components/ecl-form-group';\nimport { EUI_ECL_TEXT_INPUT } from '@eui/ecl/components/ecl-text-input';\nimport { EUI_ECL_ICON } from '@eui/ecl/components/ecl-icon';\n\nexport const ECL_SEARCH_FORM_VALUE_ACCESSOR: Provider = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => EclSearchFormComponent),\n multi: true,\n};\n\nconst noop = (): void => {\n /** empty*/\n};\n\n/**\n * Component representing search field - input and button, in a responsive, styled layout.\n */\n@Component({\n selector: 'ecl-search-form',\n templateUrl: 'ecl-search-form.component.html',\n imports: [TranslateModule, FormsModule, ...EUI_ECL_BUTTON, ...EUI_ECL_FORM_GROUP, ...EUI_ECL_TEXT_INPUT, ...EUI_ECL_ICON], // TODO: replace with new names EUI_ECL_...\n providers: [ECL_SEARCH_FORM_VALUE_ACCESSOR],\n})\nexport class EclSearchFormComponent extends ECLBaseDirective implements ControlValueAccessor {\n protected eclThemeService = inject(EclThemeService);\n\n /**\n * The current/default search text.\n */\n @Input() searchInputText: string;\n @Input() placeholder: string;\n @Input() searchButtonLabel: string;\n @Input() searchButtonIcon = 'search';\n @Input() buttonExtraClassses = '';\n @Input() inputExtraClassses = '';\n\n /**\n * Applies the base class `ecl-search-form` to the host element.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-search-form')].join(' ').trim();\n }\n\n @HostBinding('attr.role') role = 'search';\n\n /**\n * This event is emited, when user performs the search action. Includes the search text from the input field.\n */ \n @Output() searchEvent = new EventEmitter<EclSearchFormEvent>();\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n private onChange: (_: any) => void = noop;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n private onTouched: (_: any) => void = noop;\n\n /**\n * Perform search when user clicks the search button. Emits the search event with the search text.\n */\n onSearchClick(evt: Event): void {\n this.searchEvent.next(new EclSearchFormEvent(this.searchInputText));\n evt.preventDefault();\n }\n\n /**\n * Perform search when user clicks Enter when on the input field. Emits the search event with the search text.\n */\n @HostListener('keydown.enter', ['$event'])\n onEnterKeyDown(evt: Event): void {\n this.searchEvent.next(new EclSearchFormEvent(this.searchInputText));\n evt.preventDefault();\n }\n\n /**\n * Assigns the new input text value to the 'searchInputText' property, each time the input is changed.\n * @param newValue\n */\n onModelChange(newValue: string): void {\n this.searchInputText = newValue;\n this.onChange(newValue);\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n writeValue(value: any): void {\n this.searchInputText = value;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n registerOnChange(fn: (_: any) => void): void {\n this.onChange = fn;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n registerOnTouched(fn: (_: any) => void): void {\n this.onTouched = fn;\n }\n}\n","<ecl-form-group>\n <input\n eclTextInput\n [(ngModel)]=\"searchInputText\"\n (ngModelChange)=\"onModelChange($event)\"\n type=\"search\"\n name=\"search-input\"\n placeholder=\"{{ placeholder || 'ecl.common.SEARCH' | translate }}\"\n class=\"ecl-search-form__text-input {{inputExtraClassses}}\" />\n</ecl-form-group>\n<button eclButton type=\"submit\" [variant]=\"eclThemeService.isECTheme() ? 'tertiary': 'primary'\" (click)=\"onSearchClick($event)\"\n class=\"ecl-button--neutral ecl-search-form__button {{buttonExtraClassses}}\" isIconOnly>\n <ecl-icon [icon]=\"searchButtonIcon\" size=\"xs\"></ecl-icon>\n <span eclButtonLabel>\n {{ searchButtonLabel || 'ecl.common.SEARCH' | translate }}\n </span>\n</button>\n","import { EclSearchFormComponent } from './ecl-search-form.component';\n\nexport * from './ecl-search-form.component';\nexport * from './events/ecl-search-form.event';\n\nexport const EUI_ECL_SEARCH_FORM = [\n EclSearchFormComponent,\n] as const;","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|