@eui/ecl 23.0.0-alpha.6 → 23.0.0-alpha.8
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 +86 -0
- package/docs/classes/EclLanguageService.html +8 -8
- package/docs/components/EclBannerComponent.html +28 -56
- package/docs/components/EclCardComponent.html +12 -24
- package/docs/components/EclCarouselComponent.html +33 -65
- package/docs/components/EclCarouselItemComponent.html +4 -8
- package/docs/components/EclCategoryFilterComponent.html +4 -8
- package/docs/components/EclCategoryFilterItemComponent.html +5 -9
- package/docs/components/EclCategoryFilterListComponent.html +5 -9
- package/docs/components/EclContentItemComponent.html +20 -40
- package/docs/components/EclFactFiguresItemComponent.html +4 -8
- package/docs/components/EclFactFiguresViewAllComponent.html +4 -8
- package/docs/components/EclFeaturedItemComponent.html +4 -10
- package/docs/components/EclFileComponent.html +4 -8
- package/docs/components/EclFileItemsComponent.html +4 -8
- package/docs/components/EclFormGroupComponent.html +4 -8
- package/docs/components/EclGalleryComponent.html +21 -41
- package/docs/components/EclGalleryItemComponent.html +8 -16
- package/docs/components/EclIconComponent.html +4 -8
- package/docs/components/EclInpageNavigationComponent.html +20 -40
- package/docs/components/EclInpageNavigationItemComponent.html +4 -8
- package/docs/components/EclListIllustrationComponent.html +4 -8
- package/docs/components/EclListIllustrationItemComponent.html +9 -17
- package/docs/components/EclMediaContainerComponent.html +21 -41
- package/docs/components/EclMegaMenuComponent.html +4 -8
- package/docs/components/EclMegaMenuFeaturedComponent.html +12 -24
- package/docs/components/EclMegaMenuInfoComponent.html +4 -8
- package/docs/components/EclMegaMenuItemComponent.html +37 -73
- package/docs/components/EclMegaMenuSubitemComponent.html +21 -43
- package/docs/components/EclMenuComponent.html +20 -40
- package/docs/components/EclMenuItemComponent.html +12 -24
- package/docs/components/EclMenuMegaItemComponent.html +12 -24
- package/docs/components/EclModalComponent.html +1 -1
- package/docs/components/EclMultiselectComponent.html +4 -8
- package/docs/components/EclMultiselectDropdownComponent.html +21 -41
- package/docs/components/EclMultiselectInputComponent.html +4 -8
- package/docs/components/EclMultiselectOptionComponent.html +4 -8
- package/docs/components/EclNavigationListComponent.html +4 -8
- package/docs/components/EclNavigationListItemComponent.html +4 -8
- package/docs/components/EclNewsTickerComponent.html +28 -48
- package/docs/components/EclNewsTickerItemComponent.html +4 -8
- package/docs/components/EclPageHeaderComponent.html +8 -16
- package/docs/components/EclPaginationComponent.html +4 -8
- package/docs/components/EclPopoverComponent.html +12 -24
- package/docs/components/EclSiteHeaderComponent.html +44 -88
- package/docs/components/EclSiteHeaderCustomActionComponent.html +8 -16
- package/docs/components/EclSiteHeaderLanguageComponent.html +10 -18
- package/docs/components/EclSiteHeaderLanguagePopoverComponent.html +6 -10
- package/docs/components/EclSiteHeaderLoginComponent.html +4 -8
- package/docs/components/EclSiteHeaderSearchComponent.html +4 -8
- package/docs/components/EclTabComponent.html +12 -24
- package/docs/components/EclTabsComponent.html +29 -57
- package/docs/components/EclTimelineComponent.html +4 -8
- package/docs/components/EclTimelineItemComponent.html +16 -32
- package/docs/directives/EclCheckboxDirective.html +16 -32
- package/docs/directives/EclDescriptionListDirective.html +4 -8
- package/docs/directives/EclGalleryMediaDirective.html +2 -2
- package/docs/directives/EclGalleryPictureDirective.html +1 -1
- package/docs/directives/EclListIllustrationPictureDirective.html +4 -8
- package/docs/directives/EclMediaContainerItemDirective.html +4 -8
- package/docs/directives/EclMegaMenuSublistDirective.html +8 -16
- package/docs/directives/EclMultiselectOptionDirective.html +4 -8
- package/docs/directives/EclPageHeaderMetaItemDirective.html +9 -0
- package/docs/directives/EclRadioDirective.html +8 -16
- package/docs/directives/EclSocialMediaFollowLinkDirective.html +4 -8
- package/docs/directives/EclTableDirective.html +4 -8
- package/docs/directives/EclTableHeadDirective.html +4 -8
- package/docs/injectables/EclDefaultLanguageService.html +7 -7
- package/docs/injectables/EclMegaMenuService.html +2 -2
- package/docs/interfaces/EclMegaMenuItem.html +2 -2
- package/docs/interfaces/EclMenuItem.html +2 -2
- package/docs/js/search/search_index.js +2 -2
- package/docs/json/EclMegaMenuItemComponent.md +1 -1
- package/docs/json/EclMegaMenuSubitemComponent.md +1 -1
- package/docs/json/EclSiteHeaderLanguagePopoverComponent.md +2 -2
- package/docs/json/documentation.json +1365 -2133
- package/docs/llms.txt +182 -182
- package/docs/miscellaneous/variables.html +16 -16
- package/docs/properties.html +1 -1
- package/fesm2022/eui-ecl-components-ecl-banner.mjs +37 -40
- package/fesm2022/eui-ecl-components-ecl-banner.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-card.mjs +23 -17
- package/fesm2022/eui-ecl-components-ecl-card.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-carousel.mjs +105 -82
- package/fesm2022/eui-ecl-components-ecl-carousel.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-category-filter.mjs +36 -29
- package/fesm2022/eui-ecl-components-ecl-category-filter.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-checkbox.mjs +30 -20
- package/fesm2022/eui-ecl-components-ecl-checkbox.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-content-item.mjs +46 -27
- package/fesm2022/eui-ecl-components-ecl-content-item.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-date-picker.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-fact-figures.mjs +25 -15
- package/fesm2022/eui-ecl-components-ecl-fact-figures.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-featured.mjs +10 -9
- package/fesm2022/eui-ecl-components-ecl-featured.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-file.mjs +17 -13
- package/fesm2022/eui-ecl-components-ecl-file.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-form-group.mjs +12 -7
- package/fesm2022/eui-ecl-components-ecl-form-group.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-gallery.mjs +44 -49
- package/fesm2022/eui-ecl-components-ecl-gallery.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-icon.mjs +7 -8
- package/fesm2022/eui-ecl-components-ecl-icon.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-inpage-navigation.mjs +48 -50
- package/fesm2022/eui-ecl-components-ecl-inpage-navigation.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-link.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-list-illustration.mjs +19 -24
- package/fesm2022/eui-ecl-components-ecl-list-illustration.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-list.mjs +6 -7
- package/fesm2022/eui-ecl-components-ecl-list.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-loading-indicator.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-media-container.mjs +31 -34
- package/fesm2022/eui-ecl-components-ecl-media-container.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-mega-menu.mjs +237 -197
- package/fesm2022/eui-ecl-components-ecl-mega-menu.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-menu.mjs +108 -86
- package/fesm2022/eui-ecl-components-ecl-menu.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-modal.mjs +0 -1
- package/fesm2022/eui-ecl-components-ecl-modal.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-multiselect.mjs +70 -67
- package/fesm2022/eui-ecl-components-ecl-multiselect.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-navigation-list.mjs +16 -14
- package/fesm2022/eui-ecl-components-ecl-navigation-list.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-news-ticker.mjs +67 -51
- package/fesm2022/eui-ecl-components-ecl-news-ticker.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-page-header.mjs +17 -12
- package/fesm2022/eui-ecl-components-ecl-page-header.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-pagination.mjs +9 -7
- package/fesm2022/eui-ecl-components-ecl-pagination.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-popover.mjs +44 -38
- package/fesm2022/eui-ecl-components-ecl-popover.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-radio.mjs +22 -14
- package/fesm2022/eui-ecl-components-ecl-radio.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-site-footer.mjs +1 -1
- package/fesm2022/eui-ecl-components-ecl-site-footer.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-site-header.mjs +123 -118
- package/fesm2022/eui-ecl-components-ecl-site-header.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-slogan-ticker.mjs +2 -2
- package/fesm2022/eui-ecl-components-ecl-slogan-ticker.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-social-media-follow.mjs +10 -8
- package/fesm2022/eui-ecl-components-ecl-social-media-follow.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-table.mjs +17 -15
- package/fesm2022/eui-ecl-components-ecl-table.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-tabs.mjs +101 -81
- package/fesm2022/eui-ecl-components-ecl-tabs.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-timeline.mjs +47 -37
- package/fesm2022/eui-ecl-components-ecl-timeline.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-tooltip.mjs.map +1 -1
- package/fesm2022/eui-ecl-core.mjs +1 -1
- package/fesm2022/eui-ecl-core.mjs.map +1 -1
- package/package.json +1 -1
- package/types/eui-ecl-components-ecl-banner.d.ts +42 -43
- package/types/eui-ecl-components-ecl-banner.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-card.d.ts +34 -35
- package/types/eui-ecl-components-ecl-card.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-carousel.d.ts +10 -11
- package/types/eui-ecl-components-ecl-carousel.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-category-filter.d.ts +6 -6
- package/types/eui-ecl-components-ecl-category-filter.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-checkbox.d.ts +47 -49
- package/types/eui-ecl-components-ecl-checkbox.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-content-item.d.ts +16 -18
- package/types/eui-ecl-components-ecl-content-item.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-fact-figures.d.ts +3 -3
- package/types/eui-ecl-components-ecl-fact-figures.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-featured.d.ts +2 -2
- package/types/eui-ecl-components-ecl-featured.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-file.d.ts +42 -43
- package/types/eui-ecl-components-ecl-file.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-form-group.d.ts +1 -3
- package/types/eui-ecl-components-ecl-form-group.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-gallery.d.ts +12 -12
- package/types/eui-ecl-components-ecl-gallery.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-icon.d.ts +1 -1
- package/types/eui-ecl-components-ecl-icon.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-inpage-navigation.d.ts +8 -8
- package/types/eui-ecl-components-ecl-inpage-navigation.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-list-illustration.d.ts +44 -44
- package/types/eui-ecl-components-ecl-list-illustration.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-list.d.ts +2 -2
- package/types/eui-ecl-components-ecl-list.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-media-container.d.ts +33 -33
- package/types/eui-ecl-components-ecl-media-container.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-mega-menu.d.ts +185 -191
- package/types/eui-ecl-components-ecl-mega-menu.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-menu.d.ts +126 -128
- package/types/eui-ecl-components-ecl-menu.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-modal.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-multiselect.d.ts +10 -10
- package/types/eui-ecl-components-ecl-multiselect.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-navigation-list.d.ts +3 -4
- package/types/eui-ecl-components-ecl-navigation-list.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-news-ticker.d.ts +18 -18
- package/types/eui-ecl-components-ecl-news-ticker.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-page-header.d.ts +3 -3
- package/types/eui-ecl-components-ecl-page-header.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-pagination.d.ts +1 -1
- package/types/eui-ecl-components-ecl-pagination.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-popover.d.ts +3 -3
- package/types/eui-ecl-components-ecl-popover.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-radio.d.ts +28 -28
- package/types/eui-ecl-components-ecl-radio.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-site-header.d.ts +48 -48
- package/types/eui-ecl-components-ecl-site-header.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-social-media-follow.d.ts +1 -1
- package/types/eui-ecl-components-ecl-social-media-follow.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-table.d.ts +3 -3
- package/types/eui-ecl-components-ecl-table.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-tabs.d.ts +12 -12
- package/types/eui-ecl-components-ecl-tabs.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-timeline.d.ts +27 -28
- package/types/eui-ecl-components-ecl-timeline.d.ts.map +1 -1
- package/types/eui-ecl-core.d.ts +11 -11
- package/types/eui-ecl-core.d.ts.map +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { HostBinding, Directive, input, booleanAttribute,
|
|
2
|
+
import { HostBinding, Directive, input, booleanAttribute, contentChild, forwardRef, signal, computed, Component, numberAttribute, contentChildren, inject, afterNextRender, effect } from '@angular/core';
|
|
3
3
|
import { ECLBaseDirective } from '@eui/ecl/core';
|
|
4
4
|
import { BreakpointObserver } from '@angular/cdk/layout';
|
|
5
5
|
|
|
@@ -41,6 +41,7 @@ class EclListIllustrationPictureDirective extends ECLBaseDirective {
|
|
|
41
41
|
* If true, image is styled with square dimensions.
|
|
42
42
|
*/
|
|
43
43
|
this.isSquare = input(false, { ...(ngDevMode ? { debugName: "isSquare" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
44
|
+
this.eclIllustrationImage = contentChild.required(forwardRef(() => EclListIllustrationImageDirective));
|
|
44
45
|
}
|
|
45
46
|
/**
|
|
46
47
|
* Applies the base ECL picture classes for list illustration pictures.
|
|
@@ -51,20 +52,17 @@ class EclListIllustrationPictureDirective extends ECLBaseDirective {
|
|
|
51
52
|
].join(' ').trim();
|
|
52
53
|
}
|
|
53
54
|
ngAfterContentInit() {
|
|
54
|
-
this.eclIllustrationImage.isSquare = this.isSquare();
|
|
55
|
+
this.eclIllustrationImage().isSquare = this.isSquare();
|
|
55
56
|
}
|
|
56
57
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: EclListIllustrationPictureDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
|
|
57
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.
|
|
58
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "22.0.5", type: EclListIllustrationPictureDirective, isStandalone: true, selector: "picture[eclListIllustrationPicture]", inputs: { isSquare: { classPropertyName: "isSquare", publicName: "isSquare", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "this.cssClasses" } }, queries: [{ propertyName: "eclIllustrationImage", first: true, predicate: i0.forwardRef(() => EclListIllustrationImageDirective), descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0 }); }
|
|
58
59
|
}
|
|
59
60
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: EclListIllustrationPictureDirective, decorators: [{
|
|
60
61
|
type: Directive,
|
|
61
62
|
args: [{
|
|
62
63
|
selector: 'picture[eclListIllustrationPicture]',
|
|
63
64
|
}]
|
|
64
|
-
}], propDecorators: { isSquare: [{ type: i0.Input, args: [{ isSignal: true, alias: "isSquare", required: false }] }], eclIllustrationImage: [{
|
|
65
|
-
type: ContentChild,
|
|
66
|
-
args: [forwardRef(() => EclListIllustrationImageDirective)]
|
|
67
|
-
}], cssClasses: [{
|
|
65
|
+
}], propDecorators: { isSquare: [{ type: i0.Input, args: [{ isSignal: true, alias: "isSquare", required: false }] }], eclIllustrationImage: [{ type: i0.ContentChild, args: [forwardRef(() => EclListIllustrationImageDirective), { isSignal: true }] }], cssClasses: [{
|
|
68
66
|
type: HostBinding,
|
|
69
67
|
args: ['class']
|
|
70
68
|
}] } });
|
|
@@ -138,20 +136,24 @@ class EclListIllustrationItemComponent extends ECLBaseDirective {
|
|
|
138
136
|
* Applies ECL class for illustration list item.
|
|
139
137
|
*/
|
|
140
138
|
this.className = true;
|
|
139
|
+
this.eclIllustrationIcon = contentChild(forwardRef(() => EclListIllustrationIconDirective), /* @ts-ignore */
|
|
140
|
+
...(ngDevMode ? [{ debugName: "eclIllustrationIcon" }] : /* istanbul ignore next */ []));
|
|
141
|
+
this.eclIllustrationPicture = contentChild(forwardRef(() => EclListIllustrationPictureDirective), /* @ts-ignore */
|
|
142
|
+
...(ngDevMode ? [{ debugName: "eclIllustrationPicture" }] : /* istanbul ignore next */ []));
|
|
141
143
|
/** A special class needs to be added, for vertical lists with picture. */
|
|
142
144
|
this.isVerticalPicture = signal(false, /* @ts-ignore */
|
|
143
145
|
...(ngDevMode ? [{ debugName: "isVerticalPicture" }] : /* istanbul ignore next */ []));
|
|
144
146
|
/** A special class needs to be added, if an icon list has dividers between items. */
|
|
145
147
|
this.hasDivider = signal(false, /* @ts-ignore */
|
|
146
148
|
...(ngDevMode ? [{ debugName: "hasDivider" }] : /* istanbul ignore next */ []));
|
|
147
|
-
this.hasPicture = computed(() => this.eclIllustrationPicture !== undefined, /* @ts-ignore */
|
|
149
|
+
this.hasPicture = computed(() => this.eclIllustrationPicture() !== undefined, /* @ts-ignore */
|
|
148
150
|
...(ngDevMode ? [{ debugName: "hasPicture" }] : /* istanbul ignore next */ []));
|
|
149
151
|
}
|
|
150
152
|
/**
|
|
151
153
|
* Returns `true` if the item has a title or any projected icons.
|
|
152
154
|
*/
|
|
153
155
|
get hasTitle() {
|
|
154
|
-
return Boolean(this.eclTitle()) || this.eclIllustrationIcon !== undefined;
|
|
156
|
+
return Boolean(this.eclTitle()) || this.eclIllustrationIcon() !== undefined;
|
|
155
157
|
}
|
|
156
158
|
/**
|
|
157
159
|
* Returns `true` if the item has a value.
|
|
@@ -160,7 +162,7 @@ class EclListIllustrationItemComponent extends ECLBaseDirective {
|
|
|
160
162
|
return Boolean(this.eclValue());
|
|
161
163
|
}
|
|
162
164
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: EclListIllustrationItemComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
163
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.5", type: EclListIllustrationItemComponent, isStandalone: true, selector: "ecl-list-illustration-item, li[eclListIllustrationItem]", inputs: { eclTitle: { classPropertyName: "eclTitle", publicName: "eclTitle", isSignal: true, isRequired: false, transformFunction: null }, eclValue: { classPropertyName: "eclValue", publicName: "eclValue", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "attr.role": "this.role", "class.ecl-list-illustration__item": "this.className" } }, queries: [{ propertyName: "eclIllustrationIcon", first: true, predicate: i0.forwardRef(() => EclListIllustrationIconDirective), descendants: true }, { propertyName: "eclIllustrationPicture", first: true, predicate: i0.forwardRef(() => EclListIllustrationPictureDirective), descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"ecl-list-illustration__item-content\" [class.ecl-list-illustration__item-content--row]=\"isVerticalPicture()\"\n [class.ecl-list-illustration__divider]=\"hasDivider()\">\n <ng-content select=\"[eclListIllustrationImage],[eclListIllustrationPicture],[eclListIllustrationIcon]\"></ng-content>\n <div class=\"ecl-list-illustration__detail\">\n @if (hasTitle || hasValue) {\n <div class=\"ecl-list-illustration__title-container\">\n @if (hasValue) {\n <div class=\"ecl-list-illustration__value\">{{ eclValue() }}</div>\n }\n <div class=\"ecl-list-illustration__title\">{{ eclTitle() }}</div>\n </div>\n }\n\n <div class=\"ecl-list-illustration__description\">\n <ng-content></ng-content>\n </div>\n </div>\n</div>" }); }
|
|
165
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.5", type: EclListIllustrationItemComponent, isStandalone: true, selector: "ecl-list-illustration-item, li[eclListIllustrationItem]", inputs: { eclTitle: { classPropertyName: "eclTitle", publicName: "eclTitle", isSignal: true, isRequired: false, transformFunction: null }, eclValue: { classPropertyName: "eclValue", publicName: "eclValue", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "attr.role": "this.role", "class.ecl-list-illustration__item": "this.className" } }, queries: [{ propertyName: "eclIllustrationIcon", first: true, predicate: i0.forwardRef(() => EclListIllustrationIconDirective), descendants: true, isSignal: true }, { propertyName: "eclIllustrationPicture", first: true, predicate: i0.forwardRef(() => EclListIllustrationPictureDirective), descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"ecl-list-illustration__item-content\" [class.ecl-list-illustration__item-content--row]=\"isVerticalPicture()\"\n [class.ecl-list-illustration__divider]=\"hasDivider()\">\n <ng-content select=\"[eclListIllustrationImage],[eclListIllustrationPicture],[eclListIllustrationIcon]\"></ng-content>\n <div class=\"ecl-list-illustration__detail\">\n @if (hasTitle || hasValue) {\n <div class=\"ecl-list-illustration__title-container\">\n @if (hasValue) {\n <div class=\"ecl-list-illustration__value\">{{ eclValue() }}</div>\n }\n <div class=\"ecl-list-illustration__title\">{{ eclTitle() }}</div>\n </div>\n }\n\n <div class=\"ecl-list-illustration__description\">\n <ng-content></ng-content>\n </div>\n </div>\n</div>" }); }
|
|
164
166
|
}
|
|
165
167
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: EclListIllustrationItemComponent, decorators: [{
|
|
166
168
|
type: Component,
|
|
@@ -171,13 +173,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImpor
|
|
|
171
173
|
}], className: [{
|
|
172
174
|
type: HostBinding,
|
|
173
175
|
args: ['class.ecl-list-illustration__item']
|
|
174
|
-
}], eclIllustrationIcon: [{
|
|
175
|
-
type: ContentChild,
|
|
176
|
-
args: [forwardRef(() => EclListIllustrationIconDirective)]
|
|
177
|
-
}], eclIllustrationPicture: [{
|
|
178
|
-
type: ContentChild,
|
|
179
|
-
args: [forwardRef(() => EclListIllustrationPictureDirective)]
|
|
180
|
-
}] } });
|
|
176
|
+
}], eclIllustrationIcon: [{ type: i0.ContentChild, args: [forwardRef(() => EclListIllustrationIconDirective), { isSignal: true }] }], eclIllustrationPicture: [{ type: i0.ContentChild, args: [forwardRef(() => EclListIllustrationPictureDirective), { isSignal: true }] }] } });
|
|
181
177
|
|
|
182
178
|
/**
|
|
183
179
|
* Component representing a list using ECL illustration styles.
|
|
@@ -232,6 +228,8 @@ class EclListIllustrationComponent extends ECLBaseDirective {
|
|
|
232
228
|
/** If we have a number-list, the user can set the start of the counter. */
|
|
233
229
|
this.counterStart = input(null, /* @ts-ignore */
|
|
234
230
|
...(ngDevMode ? [{ debugName: "counterStart" }] : /* istanbul ignore next */ []));
|
|
231
|
+
this.eclIllustrationItems = contentChildren(forwardRef(() => EclListIllustrationItemComponent), /* @ts-ignore */
|
|
232
|
+
...(ngDevMode ? [{ debugName: "eclIllustrationItems" }] : /* istanbul ignore next */ []));
|
|
235
233
|
/**
|
|
236
234
|
* Applies ARIA role for list elements.
|
|
237
235
|
*/
|
|
@@ -258,13 +256,13 @@ class EclListIllustrationComponent extends ECLBaseDirective {
|
|
|
258
256
|
}
|
|
259
257
|
ngAfterContentInit() {
|
|
260
258
|
if (this.horizontalColumns() === 0) {
|
|
261
|
-
this.eclIllustrationItems?.forEach(item => {
|
|
259
|
+
this.eclIllustrationItems()?.forEach(item => {
|
|
262
260
|
if (item.hasPicture())
|
|
263
261
|
item.isVerticalPicture.set(true);
|
|
264
262
|
});
|
|
265
263
|
}
|
|
266
264
|
if (this.variant() === 'icon-list' && this.hasDividers()) {
|
|
267
|
-
this.eclIllustrationItems?.forEach(item => {
|
|
265
|
+
this.eclIllustrationItems()?.forEach(item => {
|
|
268
266
|
item.hasDivider.set(true);
|
|
269
267
|
});
|
|
270
268
|
}
|
|
@@ -277,17 +275,14 @@ class EclListIllustrationComponent extends ECLBaseDirective {
|
|
|
277
275
|
});
|
|
278
276
|
}
|
|
279
277
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: EclListIllustrationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
280
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.
|
|
278
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "22.0.5", type: EclListIllustrationComponent, isStandalone: true, selector: "ecl-list-illustration, ul[eclListIllustration], ol[eclListIllustration]", inputs: { isZebra: { classPropertyName: "isZebra", publicName: "isZebra", isSignal: true, isRequired: false, transformFunction: null }, horizontalColumns: { classPropertyName: "horizontalColumns", publicName: "horizontalColumns", isSignal: true, isRequired: false, transformFunction: null }, fontSize: { classPropertyName: "fontSize", publicName: "fontSize", isSignal: true, isRequired: false, transformFunction: null }, isCentered: { classPropertyName: "isCentered", publicName: "isCentered", isSignal: true, isRequired: false, transformFunction: null }, isIconInline: { classPropertyName: "isIconInline", publicName: "isIconInline", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, hasDividers: { classPropertyName: "hasDividers", publicName: "hasDividers", isSignal: true, isRequired: false, transformFunction: null }, counterStart: { classPropertyName: "counterStart", publicName: "counterStart", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "style.display": "elementDisplayStyle()", "attr.role": "this.role", "class": "this.cssClasses", "style.--ecl-list-illustration-counter-start": "this.counterStartStyle", "attr.start": "this.startAttr" } }, queries: [{ propertyName: "eclIllustrationItems", predicate: i0.forwardRef(() => EclListIllustrationItemComponent), isSignal: true }], usesInheritance: true, ngImport: i0, template: "<ng-content></ng-content>" }); }
|
|
281
279
|
}
|
|
282
280
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: EclListIllustrationComponent, decorators: [{
|
|
283
281
|
type: Component,
|
|
284
282
|
args: [{ selector: 'ecl-list-illustration, ul[eclListIllustration], ol[eclListIllustration]', host: {
|
|
285
283
|
'[style.display]': 'elementDisplayStyle()',
|
|
286
284
|
}, template: "<ng-content></ng-content>" }]
|
|
287
|
-
}], ctorParameters: () => [], propDecorators: { isZebra: [{ type: i0.Input, args: [{ isSignal: true, alias: "isZebra", required: false }] }], horizontalColumns: [{ type: i0.Input, args: [{ isSignal: true, alias: "horizontalColumns", required: false }] }], fontSize: [{ type: i0.Input, args: [{ isSignal: true, alias: "fontSize", required: false }] }], isCentered: [{ type: i0.Input, args: [{ isSignal: true, alias: "isCentered", required: false }] }], isIconInline: [{ type: i0.Input, args: [{ isSignal: true, alias: "isIconInline", required: false }] }], variant: [{ type: i0.Input, args: [{ isSignal: true, alias: "variant", required: false }] }], hasDividers: [{ type: i0.Input, args: [{ isSignal: true, alias: "hasDividers", required: false }] }], counterStart: [{ type: i0.Input, args: [{ isSignal: true, alias: "counterStart", required: false }] }], eclIllustrationItems: [{
|
|
288
|
-
type: ContentChildren,
|
|
289
|
-
args: [forwardRef(() => EclListIllustrationItemComponent)]
|
|
290
|
-
}], role: [{
|
|
285
|
+
}], ctorParameters: () => [], propDecorators: { isZebra: [{ type: i0.Input, args: [{ isSignal: true, alias: "isZebra", required: false }] }], horizontalColumns: [{ type: i0.Input, args: [{ isSignal: true, alias: "horizontalColumns", required: false }] }], fontSize: [{ type: i0.Input, args: [{ isSignal: true, alias: "fontSize", required: false }] }], isCentered: [{ type: i0.Input, args: [{ isSignal: true, alias: "isCentered", required: false }] }], isIconInline: [{ type: i0.Input, args: [{ isSignal: true, alias: "isIconInline", required: false }] }], variant: [{ type: i0.Input, args: [{ isSignal: true, alias: "variant", required: false }] }], hasDividers: [{ type: i0.Input, args: [{ isSignal: true, alias: "hasDividers", required: false }] }], counterStart: [{ type: i0.Input, args: [{ isSignal: true, alias: "counterStart", required: false }] }], eclIllustrationItems: [{ type: i0.ContentChildren, args: [forwardRef(() => EclListIllustrationItemComponent), { isSignal: true }] }], role: [{
|
|
291
286
|
type: HostBinding,
|
|
292
287
|
args: ['attr.role']
|
|
293
288
|
}], cssClasses: [{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eui-ecl-components-ecl-list-illustration.mjs","sources":["../../components/ecl-list-illustration/ecl-list-illustration-icon.directive.ts","../../components/ecl-list-illustration/ecl-list-illustration-picture.directive.ts","../../components/ecl-list-illustration/ecl-list-illustration-item.component.ts","../../components/ecl-list-illustration/ecl-list-illustration-item.component.html","../../components/ecl-list-illustration/ecl-list-illustration.component.ts","../../components/ecl-list-illustration/ecl-list-illustration.component.html","../../components/ecl-list-illustration/index.ts","../../components/ecl-list-illustration/eui-ecl-components-ecl-list-illustration.ts"],"sourcesContent":["import { Directive, HostBinding } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Directive representing an icon within an ECL illustration list item.\n *\n * Applies the correct ECL class for list item icons.\n */\n@Directive({\n selector: '[eclListIllustrationIcon]',\n})\nexport class EclListIllustrationIconDirective extends ECLBaseDirective {\n /**\n * Applies the ECL class for illustration item icons.\n */\n @HostBinding('class.ecl-list-illustration__icon') className = true;\n}\n","import { ContentChild, Directive, HostBinding, booleanAttribute, forwardRef, AfterContentInit, input } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Directive applied to `<picture>` elements within ECL list illustrations.\n *\n * Adds the necessary ECL CSS classes for illustration pictures.\n */\n@Directive({\n selector: 'picture[eclListIllustrationPicture]',\n})\nexport class EclListIllustrationPictureDirective extends ECLBaseDirective implements AfterContentInit {\n\n /**\n * If true, image is styled with square dimensions.\n */\n readonly isSquare = input(false, { transform: booleanAttribute });\n\n @ContentChild(forwardRef(() => EclListIllustrationImageDirective))\n eclIllustrationImage!: EclListIllustrationImageDirective;\n\n /**\n * Applies the base ECL picture classes for list illustration pictures.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-picture ecl-list-illustration__picture'),\n this.isSquare() ? 'ecl-list-illustration__picture--square' : '',\n ].join(' ').trim();\n }\n\n ngAfterContentInit(): void {\n this.eclIllustrationImage.isSquare = this.isSquare();\n }\n}\n\n/**\n * Directive applied to `<img>` elements within ECL list illustrations.\n *\n * Supports square variant and size options for image styling.\n */\n@Directive({\n selector: 'img[eclListIllustrationImage]',\n})\nexport class EclListIllustrationImageDirective extends ECLBaseDirective {\n /**\n * If true, image is styled with square dimensions.\n */\n isSquare = false;\n\n /**\n * Defines the size variant of the image.\n * Possible values: `'s'`, `'m'`, `'l'`.\n */\n readonly size = input<'s' | 'm' | 'l'>('m');\n\n /**\n * Computes the appropriate ECL CSS classes for the image.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [\n super.getCssClasses('ecl-list-illustration__image'),\n this.isSquare ? 'ecl-list-illustration__image--square' : '',\n this.isSquare ? `ecl-list-illustration__image--${this.size()}` : '',\n ]\n .join(' ')\n .trim();\n }\n}\n","import {\n Component,\n computed,\n ContentChild,\n forwardRef,\n HostBinding,\n Signal,\n signal,\n input,\n} from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclListIllustrationIconDirective } from './ecl-list-illustration-icon.directive';\nimport { EclListIllustrationPictureDirective } from './ecl-list-illustration-picture.directive';\n\n/**\n * Component representing a single item in an ECL illustration list.\n *\n * Displays optional title, value, and one or more illustration icons.\n */\n@Component({\n selector: 'ecl-list-illustration-item, li[eclListIllustrationItem]',\n templateUrl: './ecl-list-illustration-item.component.html',\n})\nexport class EclListIllustrationItemComponent extends ECLBaseDirective {\n /**\n * Text displayed as the item title.\n */\n readonly eclTitle = input('');\n\n /**\n * Text displayed as the item value.\n */\n readonly eclValue = input('');\n\n /**\n * Applies ARIA role for list items.\n */\n @HostBinding('attr.role') role = 'listitem';\n\n /**\n * Applies ECL class for illustration list item.\n */\n @HostBinding('class.ecl-list-illustration__item') className = true;\n\n @ContentChild(forwardRef(() => EclListIllustrationIconDirective))\n eclIllustrationIcon: EclListIllustrationIconDirective;\n\n @ContentChild(forwardRef(() => EclListIllustrationPictureDirective))\n eclIllustrationPicture: EclListIllustrationPictureDirective;\n\n /** A special class needs to be added, for vertical lists with picture. */\n isVerticalPicture = signal(false);\n\n /** A special class needs to be added, if an icon list has dividers between items. */\n hasDivider = signal(false);\n\n hasPicture: Signal<boolean> = computed(() => this.eclIllustrationPicture !== undefined);\n\n /**\n * Returns `true` if the item has a title or any projected icons.\n */\n get hasTitle(): boolean {\n return Boolean(this.eclTitle()) || this.eclIllustrationIcon !== undefined;\n }\n\n /**\n * Returns `true` if the item has a value.\n */\n get hasValue(): boolean {\n return Boolean(this.eclValue());\n }\n}\n","<div class=\"ecl-list-illustration__item-content\" [class.ecl-list-illustration__item-content--row]=\"isVerticalPicture()\"\n [class.ecl-list-illustration__divider]=\"hasDivider()\">\n <ng-content select=\"[eclListIllustrationImage],[eclListIllustrationPicture],[eclListIllustrationIcon]\"></ng-content>\n <div class=\"ecl-list-illustration__detail\">\n @if (hasTitle || hasValue) {\n <div class=\"ecl-list-illustration__title-container\">\n @if (hasValue) {\n <div class=\"ecl-list-illustration__value\">{{ eclValue() }}</div>\n }\n <div class=\"ecl-list-illustration__title\">{{ eclTitle() }}</div>\n </div>\n }\n\n <div class=\"ecl-list-illustration__description\">\n <ng-content></ng-content>\n </div>\n </div>\n</div>","import { Component, HostBinding, booleanAttribute, numberAttribute, afterNextRender, inject, ContentChildren, forwardRef, QueryList, AfterContentInit, Signal, computed, input, effect, signal } from '@angular/core';\nimport { BreakpointObserver } from '@angular/cdk/layout';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclListIllustrationItemComponent } from './ecl-list-illustration-item.component';\n\n/**\n * Component representing a list using ECL illustration styles.\n *\n * Supports zebra styling, responsive horizontal layout, and font size options.\n */\n@Component({\n selector: 'ecl-list-illustration, ul[eclListIllustration], ol[eclListIllustration]',\n templateUrl: './ecl-list-illustration.component.html',\n host: {\n '[style.display]': 'elementDisplayStyle()',\n }\n})\nexport class EclListIllustrationComponent extends ECLBaseDirective implements AfterContentInit {\n /**\n * Enables zebra style (alternating background colors for list items).\n */\n readonly isZebra = input(false, { transform: booleanAttribute });\n\n /**\n * Number of horizontal columns. If greater than `0`, items are displayed in a grid layout.\n */\n horizontalColumns = input(0, { transform: numberAttribute });\n\n /**\n * Font size for list content.\n * Possible values:\n * - `'m'` – medium\n * - `'l'` – large (default)\n */\n readonly fontSize = input<'m' | 'l'>('l');\n\n /** If content should be centered */\n readonly isCentered = input(false, { transform: booleanAttribute });\n\n /** If the icon should be on the same row as title - for list with icons */\n readonly isIconInline = input(false, { transform: booleanAttribute });\n\n /** Two variants available: icon-list and number-list. */\n readonly variant = input<'icon-list' | 'number-list' | null>(null);\n\n /** If this is an icon-list, it can have dividers between each item. */\n readonly hasDividers = input(false, { transform: booleanAttribute });\n\n /** If we have a number-list, the user can set the start of the counter. */\n counterStart = input<number | null>(null);\n\n @ContentChildren(forwardRef(() => EclListIllustrationItemComponent))\n eclIllustrationItems: QueryList<EclListIllustrationItemComponent>;\n\n /**\n * Applies ARIA role for list elements.\n */\n @HostBinding('attr.role') role = 'list';\n\n /**\n * Applies the appropriate ECL CSS classes to the host element.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [\n super.getCssClasses('ecl-list-illustration'),\n this.isZebra() ? 'ecl-list-illustration--zebra' : '',\n this.horizontalColumns() > 0 ? `ecl-list-illustration--col-${this.horizontalColumns()}` : '',\n this.fontSize() === 'm' ? 'ecl-list-illustration--font-m' : '',\n this.isCentered() ? 'ecl-list-illustration--centered' : '',\n this.isIconInline() ? 'ecl-list-illustration--icon-inline' : '',\n this.variant() === 'icon-list' ? 'ecl-list-illustration--icon-list' : '',\n this.variant() === 'number-list' ? 'ecl-list-illustration--number-list ecl-list-illustration--number-list-reset': '',\n ]\n .join(' ')\n .trim();\n }\n\n /**\n * Controls `display` style of the host element based on breakpoint and column count.\n */\n elementDisplayStyle = computed(() =>\n this.horizontalColumns() > 0 && this.isTabletBreakpoint() ? null : 'block'\n );\n\n @HostBinding('style.--ecl-list-illustration-counter-start')\n counterStartStyle = '';\n\n @HostBinding('attr.start')\n startAttr: string | null = null;\n\n private isTabletBreakpoint = signal(false);\n private cdkBreakpointObserver = inject(BreakpointObserver);\n\n constructor() {\n super();\n afterNextRender(() => {\n this.observeBreakpointChanges();\n });\n effect(() => {\n const value = this.counterStart();\n const stringValue = value != null ? `${value}` : null;\n\n this.startAttr = stringValue;\n this.counterStartStyle = stringValue ?? '';\n });\n }\n\n ngAfterContentInit(): void {\n if (this.horizontalColumns() === 0) {\n this.eclIllustrationItems?.forEach(item => {\n if (item.hasPicture()) item.isVerticalPicture.set(true);\n });\n }\n\n if (this.variant() === 'icon-list' && this.hasDividers()) {\n this.eclIllustrationItems?.forEach(item => {\n item.hasDivider.set(true);\n });\n }\n }\n\n private observeBreakpointChanges(): void {\n this.cdkBreakpointObserver\n .observe(['(min-width: 768px)'])\n .subscribe((result) => {\n this.isTabletBreakpoint.set(result.matches);\n });\n }\n}\n","<ng-content></ng-content>","import { EclListIllustrationIconDirective } from './ecl-list-illustration-icon.directive';\nimport { EclListIllustrationItemComponent } from './ecl-list-illustration-item.component';\nimport { EclListIllustrationImageDirective, EclListIllustrationPictureDirective } from './ecl-list-illustration-picture.directive';\nimport { EclListIllustrationComponent } from './ecl-list-illustration.component';\n\nexport * from './ecl-list-illustration-item.component';\nexport * from './ecl-list-illustration-icon.directive';\nexport * from './ecl-list-illustration-picture.directive';\nexport * from './ecl-list-illustration.component';\n\nexport const EUI_ECL_LIST_ILUSTRATION = [\n EclListIllustrationComponent,\n EclListIllustrationItemComponent,\n EclListIllustrationIconDirective,\n EclListIllustrationPictureDirective,\n EclListIllustrationImageDirective,\n] as const;","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;AAGA;;;;AAIG;AAIG,MAAO,gCAAiC,SAAQ,gBAAgB,CAAA;AAHtE,IAAA,WAAA,GAAA;;AAII;;AAEG;QAC+C,IAAA,CAAA,SAAS,GAAG,IAAI;AACrE,IAAA;8GALY,gCAAgC,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAhC,gCAAgC,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,2BAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,mCAAA,EAAA,gBAAA,EAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAAhC,gCAAgC,EAAA,UAAA,EAAA,CAAA;kBAH5C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,2BAA2B;AACxC,iBAAA;;sBAKI,WAAW;uBAAC,mCAAmC;;;ACZpD;;;;AAIG;AAIG,MAAO,mCAAoC,SAAQ,gBAAgB,CAAA;AAHzE,IAAA,WAAA,GAAA;;AAKI;;AAEG;QACM,IAAA,CAAA,QAAQ,GAAG,KAAK,CAAC,KAAK,gFAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG;AAkBpE,IAAA;AAbG;;AAEG;AACH,IAAA,IACI,UAAU,GAAA;AACV,QAAA,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,4CAA4C,CAAC;YACrE,IAAI,CAAC,QAAQ,EAAE,GAAG,wCAAwC,GAAG,EAAE;AAClE,SAAA,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE;IACtB;IAEA,kBAAkB,GAAA;QACd,IAAI,CAAC,oBAAoB,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE;IACxD;8GAtBS,mCAAmC,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAnC,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,mCAAmC,wWAOb,iCAAiC,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAPvD,mCAAmC,EAAA,UAAA,EAAA,CAAA;kBAH/C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,qCAAqC;AAClD,iBAAA;;sBAQI,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAA,UAAU,CAAC,MAAM,iCAAiC,CAAC;;sBAMhE,WAAW;uBAAC,OAAO;;AAYxB;;;;AAIG;AAIG,MAAO,iCAAkC,SAAQ,gBAAgB,CAAA;AAHvE,IAAA,WAAA,GAAA;;AAII;;AAEG;QACH,IAAA,CAAA,QAAQ,GAAG,KAAK;AAEhB;;;AAGG;QACM,IAAA,CAAA,IAAI,GAAG,KAAK,CAAkB,GAAG;iFAAC;AAe9C,IAAA;AAbG;;AAEG;AACH,IAAA,IACI,UAAU,GAAA;QACV,OAAO;AACH,YAAA,KAAK,CAAC,aAAa,CAAC,8BAA8B,CAAC;YACnD,IAAI,CAAC,QAAQ,GAAG,sCAAsC,GAAG,EAAE;AAC3D,YAAA,IAAI,CAAC,QAAQ,GAAG,CAAA,8BAAA,EAAiC,IAAI,CAAC,IAAI,EAAE,CAAA,CAAE,GAAG,EAAE;AACtE;aACI,IAAI,CAAC,GAAG;AACR,aAAA,IAAI,EAAE;IACf;8GAxBS,iCAAiC,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAjC,iCAAiC,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,+BAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,iBAAA,EAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAAjC,iCAAiC,EAAA,UAAA,EAAA,CAAA;kBAH7C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,+BAA+B;AAC5C,iBAAA;;sBAgBI,WAAW;uBAAC,OAAO;;;AC7CxB;;;;AAIG;AAKG,MAAO,gCAAiC,SAAQ,gBAAgB,CAAA;AAJtE,IAAA,WAAA,GAAA;;AAKI;;AAEG;QACM,IAAA,CAAA,QAAQ,GAAG,KAAK,CAAC,EAAE;qFAAC;AAE7B;;AAEG;QACM,IAAA,CAAA,QAAQ,GAAG,KAAK,CAAC,EAAE;qFAAC;AAE7B;;AAEG;QACuB,IAAA,CAAA,IAAI,GAAG,UAAU;AAE3C;;AAEG;QAC+C,IAAA,CAAA,SAAS,GAAG,IAAI;;QASlE,IAAA,CAAA,iBAAiB,GAAG,MAAM,CAAC,KAAK;8FAAC;;QAGjC,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,KAAK;uFAAC;QAE1B,IAAA,CAAA,UAAU,GAAoB,QAAQ,CAAC,MAAM,IAAI,CAAC,sBAAsB,KAAK,SAAS;uFAAC;AAe1F,IAAA;AAbG;;AAEG;AACH,IAAA,IAAI,QAAQ,GAAA;AACR,QAAA,OAAO,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,IAAI,IAAI,CAAC,mBAAmB,KAAK,SAAS;IAC7E;AAEA;;AAEG;AACH,IAAA,IAAI,QAAQ,GAAA;AACR,QAAA,OAAO,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;IACnC;8GA/CS,gCAAgC,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAhC,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,gCAAgC,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,yDAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,WAAA,EAAA,WAAA,EAAA,mCAAA,EAAA,gBAAA,EAAA,EAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,qBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,EAAA,CAAA,UAAA,CAAA,MAqBV,gCAAgC,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,wBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,EAAA,CAAA,UAAA,CAAA,MAGhC,mCAAmC,wEC/CtE,i0BAiBM,EAAA,CAAA,CAAA;;2FDMO,gCAAgC,EAAA,UAAA,EAAA,CAAA;kBAJ5C,SAAS;+BACI,yDAAyD,EAAA,QAAA,EAAA,i0BAAA,EAAA;;sBAiBlE,WAAW;uBAAC,WAAW;;sBAKvB,WAAW;uBAAC,mCAAmC;;sBAE/C,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAA,UAAU,CAAC,MAAM,gCAAgC,CAAC;;sBAG/D,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAA,UAAU,CAAC,MAAM,mCAAmC,CAAC;;;AE1CvE;;;;AAIG;AAQG,MAAO,4BAA6B,SAAQ,gBAAgB,CAAA;AA0C9D;;AAEG;AACH,IAAA,IACI,UAAU,GAAA;QACV,OAAO;AACH,YAAA,KAAK,CAAC,aAAa,CAAC,uBAAuB,CAAC;YAC5C,IAAI,CAAC,OAAO,EAAE,GAAG,8BAA8B,GAAG,EAAE;AACpD,YAAA,IAAI,CAAC,iBAAiB,EAAE,GAAG,CAAC,GAAG,CAAA,2BAAA,EAA8B,IAAI,CAAC,iBAAiB,EAAE,EAAE,GAAG,EAAE;AAC5F,YAAA,IAAI,CAAC,QAAQ,EAAE,KAAK,GAAG,GAAG,+BAA+B,GAAG,EAAE;YAC9D,IAAI,CAAC,UAAU,EAAE,GAAG,iCAAiC,GAAG,EAAE;YAC1D,IAAI,CAAC,YAAY,EAAE,GAAG,oCAAoC,GAAG,EAAE;AAC/D,YAAA,IAAI,CAAC,OAAO,EAAE,KAAK,WAAW,GAAG,kCAAkC,GAAG,EAAE;AACxE,YAAA,IAAI,CAAC,OAAO,EAAE,KAAK,aAAa,GAAG,6EAA6E,GAAE,EAAE;AACvH;aACI,IAAI,CAAC,GAAG;AACR,aAAA,IAAI,EAAE;IACf;AAkBA,IAAA,WAAA,GAAA;AACI,QAAA,KAAK,EAAE;AA7EX;;AAEG;QACM,IAAA,CAAA,OAAO,GAAG,KAAK,CAAC,KAAK,+EAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG;AAEhE;;AAEG;QACH,IAAA,CAAA,iBAAiB,GAAG,KAAK,CAAC,CAAC,yFAAI,SAAS,EAAE,eAAe,EAAA,CAAG;AAE5D;;;;;AAKG;QACM,IAAA,CAAA,QAAQ,GAAG,KAAK,CAAY,GAAG;qFAAC;;QAGhC,IAAA,CAAA,UAAU,GAAG,KAAK,CAAC,KAAK,kFAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG;;QAG1D,IAAA,CAAA,YAAY,GAAG,KAAK,CAAC,KAAK,oFAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG;;QAG5D,IAAA,CAAA,OAAO,GAAG,KAAK,CAAqC,IAAI;oFAAC;;QAGzD,IAAA,CAAA,WAAW,GAAG,KAAK,CAAC,KAAK,mFAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG;;QAGpE,IAAA,CAAA,YAAY,GAAG,KAAK,CAAgB,IAAI;yFAAC;AAKzC;;AAEG;QACuB,IAAA,CAAA,IAAI,GAAG,MAAM;AAqBvC;;AAEG;QACH,IAAA,CAAA,mBAAmB,GAAG,QAAQ,CAAC,MAC3B,IAAI,CAAC,iBAAiB,EAAE,GAAG,CAAC,IAAI,IAAI,CAAC,kBAAkB,EAAE,GAAG,IAAI,GAAG,OAAO;gGAC7E;QAGD,IAAA,CAAA,iBAAiB,GAAG,EAAE;QAGtB,IAAA,CAAA,SAAS,GAAkB,IAAI;QAEvB,IAAA,CAAA,kBAAkB,GAAG,MAAM,CAAC,KAAK;+FAAC;AAClC,QAAA,IAAA,CAAA,qBAAqB,GAAG,MAAM,CAAC,kBAAkB,CAAC;QAItD,eAAe,CAAC,MAAK;YACjB,IAAI,CAAC,wBAAwB,EAAE;AACnC,QAAA,CAAC,CAAC;QACF,MAAM,CAAC,MAAK;AACR,YAAA,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,EAAE;AACjC,YAAA,MAAM,WAAW,GAAG,KAAK,IAAI,IAAI,GAAG,CAAA,EAAG,KAAK,CAAA,CAAE,GAAG,IAAI;AAErD,YAAA,IAAI,CAAC,SAAS,GAAG,WAAW;AAC5B,YAAA,IAAI,CAAC,iBAAiB,GAAG,WAAW,IAAI,EAAE;AAC9C,QAAA,CAAC,CAAC;IACN;IAEA,kBAAkB,GAAA;AACd,QAAA,IAAI,IAAI,CAAC,iBAAiB,EAAE,KAAK,CAAC,EAAE;AAChC,YAAA,IAAI,CAAC,oBAAoB,EAAE,OAAO,CAAC,IAAI,IAAG;gBACtC,IAAI,IAAI,CAAC,UAAU,EAAE;AAAE,oBAAA,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC;AAC3D,YAAA,CAAC,CAAC;QACN;AAEA,QAAA,IAAI,IAAI,CAAC,OAAO,EAAE,KAAK,WAAW,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE;AACtD,YAAA,IAAI,CAAC,oBAAoB,EAAE,OAAO,CAAC,IAAI,IAAG;AACtC,gBAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;AAC7B,YAAA,CAAC,CAAC;QACN;IACJ;IAEQ,wBAAwB,GAAA;AAC5B,QAAA,IAAI,CAAC;AACA,aAAA,OAAO,CAAC,CAAC,oBAAoB,CAAC;AAC9B,aAAA,SAAS,CAAC,CAAC,MAAM,KAAI;YAClB,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC;AAC/C,QAAA,CAAC,CAAC;IACV;8GA/GS,4BAA4B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAA5B,4BAA4B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,yEAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,UAAA,EAAA,mBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,iBAAA,EAAA,YAAA,EAAA,UAAA,EAAA,YAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,YAAA,EAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,UAAA,EAAA,cAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,YAAA,EAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,UAAA,EAAA,cAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,eAAA,EAAA,uBAAA,EAAA,WAAA,EAAA,WAAA,EAAA,OAAA,EAAA,iBAAA,EAAA,6CAAA,EAAA,wBAAA,EAAA,YAAA,EAAA,gBAAA,EAAA,EAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,sBAAA,EAAA,SAAA,EAAA,EAAA,CAAA,UAAA,CAAA,MAkCH,gCAAgC,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECnDtE,2BAAyB,EAAA,CAAA,CAAA;;2FDiBZ,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBAPxC,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,yEAAyE,EAAA,IAAA,EAE7E;AACF,wBAAA,iBAAiB,EAAE,uBAAuB;AAC7C,qBAAA,EAAA,QAAA,EAAA,2BAAA,EAAA;;sBAoCA,eAAe;AAAC,gBAAA,IAAA,EAAA,CAAA,UAAU,CAAC,MAAM,gCAAgC,CAAC;;sBAMlE,WAAW;uBAAC,WAAW;;sBAKvB,WAAW;uBAAC,OAAO;;sBAuBnB,WAAW;uBAAC,6CAA6C;;sBAGzD,WAAW;uBAAC,YAAY;;;AE9EtB,MAAM,wBAAwB,GAAG;IACpC,4BAA4B;IAC5B,gCAAgC;IAChC,gCAAgC;IAChC,mCAAmC;IACnC,iCAAiC;;;ACfrC;;AAEG;;;;"}
|
|
1
|
+
{"version":3,"file":"eui-ecl-components-ecl-list-illustration.mjs","sources":["../../components/ecl-list-illustration/ecl-list-illustration-icon.directive.ts","../../components/ecl-list-illustration/ecl-list-illustration-picture.directive.ts","../../components/ecl-list-illustration/ecl-list-illustration-item.component.ts","../../components/ecl-list-illustration/ecl-list-illustration-item.component.html","../../components/ecl-list-illustration/ecl-list-illustration.component.ts","../../components/ecl-list-illustration/ecl-list-illustration.component.html","../../components/ecl-list-illustration/index.ts","../../components/ecl-list-illustration/eui-ecl-components-ecl-list-illustration.ts"],"sourcesContent":["import { Directive, HostBinding } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Directive representing an icon within an ECL illustration list item.\n *\n * Applies the correct ECL class for list item icons.\n */\n@Directive({\n selector: '[eclListIllustrationIcon]',\n})\nexport class EclListIllustrationIconDirective extends ECLBaseDirective {\n /**\n * Applies the ECL class for illustration item icons.\n */\n @HostBinding('class.ecl-list-illustration__icon') className = true;\n}\n","import { Directive, HostBinding, booleanAttribute, forwardRef, AfterContentInit, input, contentChild } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Directive applied to `<picture>` elements within ECL list illustrations.\n *\n * Adds the necessary ECL CSS classes for illustration pictures.\n */\n@Directive({\n selector: 'picture[eclListIllustrationPicture]',\n})\nexport class EclListIllustrationPictureDirective extends ECLBaseDirective implements AfterContentInit {\n\n /**\n * If true, image is styled with square dimensions.\n */\n readonly isSquare = input(false, { transform: booleanAttribute });\n\n readonly eclIllustrationImage = contentChild.required(forwardRef(() => EclListIllustrationImageDirective));\n\n /**\n * Applies the base ECL picture classes for list illustration pictures.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-picture ecl-list-illustration__picture'),\n this.isSquare() ? 'ecl-list-illustration__picture--square' : '',\n ].join(' ').trim();\n }\n\n ngAfterContentInit(): void {\n this.eclIllustrationImage().isSquare = this.isSquare();\n }\n}\n\n/**\n * Directive applied to `<img>` elements within ECL list illustrations.\n *\n * Supports square variant and size options for image styling.\n */\n@Directive({\n selector: 'img[eclListIllustrationImage]',\n})\nexport class EclListIllustrationImageDirective extends ECLBaseDirective {\n /**\n * If true, image is styled with square dimensions.\n */\n isSquare = false;\n\n /**\n * Defines the size variant of the image.\n * Possible values: `'s'`, `'m'`, `'l'`.\n */\n readonly size = input<'s' | 'm' | 'l'>('m');\n\n /**\n * Computes the appropriate ECL CSS classes for the image.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [\n super.getCssClasses('ecl-list-illustration__image'),\n this.isSquare ? 'ecl-list-illustration__image--square' : '',\n this.isSquare ? `ecl-list-illustration__image--${this.size()}` : '',\n ]\n .join(' ')\n .trim();\n }\n}\n","import {\n Component,\n computed,\n forwardRef,\n HostBinding,\n Signal,\n signal,\n input,\n contentChild,\n} from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclListIllustrationIconDirective } from './ecl-list-illustration-icon.directive';\nimport { EclListIllustrationPictureDirective } from './ecl-list-illustration-picture.directive';\n\n/**\n * Component representing a single item in an ECL illustration list.\n *\n * Displays optional title, value, and one or more illustration icons.\n */\n@Component({\n selector: 'ecl-list-illustration-item, li[eclListIllustrationItem]',\n templateUrl: './ecl-list-illustration-item.component.html',\n})\nexport class EclListIllustrationItemComponent extends ECLBaseDirective {\n /**\n * Text displayed as the item title.\n */\n readonly eclTitle = input('');\n\n /**\n * Text displayed as the item value.\n */\n readonly eclValue = input('');\n\n /**\n * Applies ARIA role for list items.\n */\n @HostBinding('attr.role') role = 'listitem';\n\n /**\n * Applies ECL class for illustration list item.\n */\n @HostBinding('class.ecl-list-illustration__item') className = true;\n\n readonly eclIllustrationIcon = contentChild(forwardRef(() => EclListIllustrationIconDirective));\n\n readonly eclIllustrationPicture = contentChild(forwardRef(() => EclListIllustrationPictureDirective));\n\n /** A special class needs to be added, for vertical lists with picture. */\n isVerticalPicture = signal(false);\n\n /** A special class needs to be added, if an icon list has dividers between items. */\n hasDivider = signal(false);\n\n hasPicture: Signal<boolean> = computed(() => this.eclIllustrationPicture() !== undefined);\n\n /**\n * Returns `true` if the item has a title or any projected icons.\n */\n get hasTitle(): boolean {\n return Boolean(this.eclTitle()) || this.eclIllustrationIcon() !== undefined;\n }\n\n /**\n * Returns `true` if the item has a value.\n */\n get hasValue(): boolean {\n return Boolean(this.eclValue());\n }\n}\n","<div class=\"ecl-list-illustration__item-content\" [class.ecl-list-illustration__item-content--row]=\"isVerticalPicture()\"\n [class.ecl-list-illustration__divider]=\"hasDivider()\">\n <ng-content select=\"[eclListIllustrationImage],[eclListIllustrationPicture],[eclListIllustrationIcon]\"></ng-content>\n <div class=\"ecl-list-illustration__detail\">\n @if (hasTitle || hasValue) {\n <div class=\"ecl-list-illustration__title-container\">\n @if (hasValue) {\n <div class=\"ecl-list-illustration__value\">{{ eclValue() }}</div>\n }\n <div class=\"ecl-list-illustration__title\">{{ eclTitle() }}</div>\n </div>\n }\n\n <div class=\"ecl-list-illustration__description\">\n <ng-content></ng-content>\n </div>\n </div>\n</div>","import { Component, HostBinding, booleanAttribute, numberAttribute, afterNextRender, inject, forwardRef, AfterContentInit, Signal, computed, input, effect, signal, contentChildren } from '@angular/core';\nimport { BreakpointObserver } from '@angular/cdk/layout';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclListIllustrationItemComponent } from './ecl-list-illustration-item.component';\n\n/**\n * Component representing a list using ECL illustration styles.\n *\n * Supports zebra styling, responsive horizontal layout, and font size options.\n */\n@Component({\n selector: 'ecl-list-illustration, ul[eclListIllustration], ol[eclListIllustration]',\n templateUrl: './ecl-list-illustration.component.html',\n host: {\n '[style.display]': 'elementDisplayStyle()',\n },\n})\nexport class EclListIllustrationComponent extends ECLBaseDirective implements AfterContentInit {\n /**\n * Enables zebra style (alternating background colors for list items).\n */\n readonly isZebra = input(false, { transform: booleanAttribute });\n\n /**\n * Number of horizontal columns. If greater than `0`, items are displayed in a grid layout.\n */\n horizontalColumns = input(0, { transform: numberAttribute });\n\n /**\n * Font size for list content.\n * Possible values:\n * - `'m'` – medium\n * - `'l'` – large (default)\n */\n readonly fontSize = input<'m' | 'l'>('l');\n\n /** If content should be centered */\n readonly isCentered = input(false, { transform: booleanAttribute });\n\n /** If the icon should be on the same row as title - for list with icons */\n readonly isIconInline = input(false, { transform: booleanAttribute });\n\n /** Two variants available: icon-list and number-list. */\n readonly variant = input<'icon-list' | 'number-list' | null>(null);\n\n /** If this is an icon-list, it can have dividers between each item. */\n readonly hasDividers = input(false, { transform: booleanAttribute });\n\n /** If we have a number-list, the user can set the start of the counter. */\n counterStart = input<number | null>(null);\n\n readonly eclIllustrationItems = contentChildren(forwardRef(() => EclListIllustrationItemComponent));\n\n /**\n * Applies ARIA role for list elements.\n */\n @HostBinding('attr.role') role = 'list';\n\n /**\n * Applies the appropriate ECL CSS classes to the host element.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [\n super.getCssClasses('ecl-list-illustration'),\n this.isZebra() ? 'ecl-list-illustration--zebra' : '',\n this.horizontalColumns() > 0 ? `ecl-list-illustration--col-${this.horizontalColumns()}` : '',\n this.fontSize() === 'm' ? 'ecl-list-illustration--font-m' : '',\n this.isCentered() ? 'ecl-list-illustration--centered' : '',\n this.isIconInline() ? 'ecl-list-illustration--icon-inline' : '',\n this.variant() === 'icon-list' ? 'ecl-list-illustration--icon-list' : '',\n this.variant() === 'number-list' ? 'ecl-list-illustration--number-list ecl-list-illustration--number-list-reset': '',\n ]\n .join(' ')\n .trim();\n }\n\n /**\n * Controls `display` style of the host element based on breakpoint and column count.\n */\n elementDisplayStyle = computed(() =>\n this.horizontalColumns() > 0 && this.isTabletBreakpoint() ? null : 'block'\n );\n\n @HostBinding('style.--ecl-list-illustration-counter-start')\n counterStartStyle = '';\n\n @HostBinding('attr.start')\n startAttr: string | null = null;\n\n private isTabletBreakpoint = signal(false);\n private cdkBreakpointObserver = inject(BreakpointObserver);\n\n constructor() {\n super();\n afterNextRender(() => {\n this.observeBreakpointChanges();\n });\n effect(() => {\n const value = this.counterStart();\n const stringValue = value != null ? `${value}` : null;\n\n this.startAttr = stringValue;\n this.counterStartStyle = stringValue ?? '';\n });\n }\n\n ngAfterContentInit(): void {\n if (this.horizontalColumns() === 0) {\n this.eclIllustrationItems()?.forEach(item => {\n if (item.hasPicture()) item.isVerticalPicture.set(true);\n });\n }\n\n if (this.variant() === 'icon-list' && this.hasDividers()) {\n this.eclIllustrationItems()?.forEach(item => {\n item.hasDivider.set(true);\n });\n }\n }\n\n private observeBreakpointChanges(): void {\n this.cdkBreakpointObserver\n .observe(['(min-width: 768px)'])\n .subscribe((result) => {\n this.isTabletBreakpoint.set(result.matches);\n });\n }\n}\n","<ng-content></ng-content>","import { EclListIllustrationIconDirective } from './ecl-list-illustration-icon.directive';\nimport { EclListIllustrationItemComponent } from './ecl-list-illustration-item.component';\nimport { EclListIllustrationImageDirective, EclListIllustrationPictureDirective } from './ecl-list-illustration-picture.directive';\nimport { EclListIllustrationComponent } from './ecl-list-illustration.component';\n\nexport * from './ecl-list-illustration-item.component';\nexport * from './ecl-list-illustration-icon.directive';\nexport * from './ecl-list-illustration-picture.directive';\nexport * from './ecl-list-illustration.component';\n\nexport const EUI_ECL_LIST_ILUSTRATION = [\n EclListIllustrationComponent,\n EclListIllustrationItemComponent,\n EclListIllustrationIconDirective,\n EclListIllustrationPictureDirective,\n EclListIllustrationImageDirective,\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 { HostBinding, Directive, input, signal, contentChildren, viewChild, inject, ElementRef, ApplicationRef, DestroyRef, computed, afterNextRender, effect, Component, booleanAttribute, numberAttribute, ChangeDetectorRef
|
|
2
|
+
import { HostBinding, Directive, input, signal, contentChildren, viewChild, inject, ElementRef, ApplicationRef, DestroyRef, computed, afterNextRender, effect, Component, booleanAttribute, numberAttribute, ChangeDetectorRef } from '@angular/core';
|
|
3
3
|
import { ECLBaseDirective } from '@eui/ecl/core';
|
|
4
4
|
import * as i1 from '@eui/ecl/components/ecl-link';
|
|
5
5
|
import { EUI_ECL_LINK } from '@eui/ecl/components/ecl-link';
|
|
@@ -370,6 +370,8 @@ class EclDescriptionListDirective extends ECLBaseDirective {
|
|
|
370
370
|
* Applied to nested `eclDescriptionListDefinition` components.
|
|
371
371
|
*/
|
|
372
372
|
this.maxVisibleItems = input(0, { ...(ngDevMode ? { debugName: "maxVisibleItems" } : /* istanbul ignore next */ {}), transform: numberAttribute });
|
|
373
|
+
this.eclListItems = contentChildren(EclDescriptionListDefinitionComponent, /* @ts-ignore */
|
|
374
|
+
...(ngDevMode ? [{ debugName: "eclListItems" }] : /* istanbul ignore next */ []));
|
|
373
375
|
this.cd = inject(ChangeDetectorRef);
|
|
374
376
|
}
|
|
375
377
|
get horizontalClass() {
|
|
@@ -386,12 +388,12 @@ class EclDescriptionListDirective extends ECLBaseDirective {
|
|
|
386
388
|
*/
|
|
387
389
|
ngAfterContentInit() {
|
|
388
390
|
if (!this.isHorizontal() && this.maxVisibleItems() > 0) {
|
|
389
|
-
this.eclListItems.forEach((item) => (item.maxVisibleItems.set(this.maxVisibleItems())));
|
|
391
|
+
this.eclListItems().forEach((item) => (item.maxVisibleItems.set(this.maxVisibleItems())));
|
|
390
392
|
}
|
|
391
393
|
this.cd.detectChanges();
|
|
392
394
|
}
|
|
393
395
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: EclDescriptionListDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
|
|
394
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.
|
|
396
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "22.0.5", type: EclDescriptionListDirective, isStandalone: true, selector: "[eclDescriptionList]", inputs: { isHorizontal: { classPropertyName: "isHorizontal", publicName: "isHorizontal", isSignal: true, isRequired: false, transformFunction: null }, maxVisibleItems: { classPropertyName: "maxVisibleItems", publicName: "maxVisibleItems", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.ecl-description-list--horizontal": "this.horizontalClass", "class": "this.cssClasses" } }, queries: [{ propertyName: "eclListItems", predicate: EclDescriptionListDefinitionComponent, isSignal: true }], usesInheritance: true, ngImport: i0 }); }
|
|
395
397
|
}
|
|
396
398
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: EclDescriptionListDirective, decorators: [{
|
|
397
399
|
type: Directive,
|
|
@@ -401,10 +403,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImpor
|
|
|
401
403
|
}], propDecorators: { isHorizontal: [{ type: i0.Input, args: [{ isSignal: true, alias: "isHorizontal", required: false }] }], horizontalClass: [{
|
|
402
404
|
type: HostBinding,
|
|
403
405
|
args: ['class.ecl-description-list--horizontal']
|
|
404
|
-
}], maxVisibleItems: [{ type: i0.Input, args: [{ isSignal: true, alias: "maxVisibleItems", required: false }] }], eclListItems: [{
|
|
405
|
-
type: ContentChildren,
|
|
406
|
-
args: [EclDescriptionListDefinitionComponent]
|
|
407
|
-
}], cssClasses: [{
|
|
406
|
+
}], maxVisibleItems: [{ type: i0.Input, args: [{ isSignal: true, alias: "maxVisibleItems", required: false }] }], eclListItems: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => EclDescriptionListDefinitionComponent), { isSignal: true }] }], cssClasses: [{
|
|
408
407
|
type: HostBinding,
|
|
409
408
|
args: ['class']
|
|
410
409
|
}] } });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eui-ecl-components-ecl-list.mjs","sources":["../../components/ecl-list/ecl-description-list-definition-item.directive.ts","../../components/ecl-list/ecl-description-list-definition/ecl-description-list-definition.component.ts","../../components/ecl-list/ecl-description-list-definition/ecl-description-list-definition.component.html","../../components/ecl-list/ecl-list.directive.ts","../../components/ecl-list/index.ts","../../components/ecl-list/eui-ecl-components-ecl-list.ts"],"sourcesContent":["import { Directive, HostBinding } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Directive representing a single item in an ECL description list definition.\n *\n * Applies the appropriate styling classes and allows visibility control for \"see all\" behavior.\n */\n@Directive({\n selector: '[eclDescriptionListDefinitionItem]',\n})\nexport class EclDescriptionListDefinitionItemDirective extends ECLBaseDirective {\n /**\n * Applies appropriate ECL classes based on visibility state.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [\n super.getCssClasses('ecl-description-list__definition-item'),\n this.isHidden ? 'ecl-description-list__definition-item--hidden' : '',\n this.isLastVisible ? 'ecl-description-list__definition-item--last-visible' : '',\n ].join(' ');\n }\n\n /**\n * Internal state used to hide the item when exceeding the visible limit.\n */\n isHidden = false;\n\n /**\n * Indicates whether this is the last item visible before the \"see all\" action is triggered.\n */\n isLastVisible = false;\n}\n\n/**\n * Directive representing a container for definition list items within an ECL description list.\n *\n * Applies the ECL-specific class for the list wrapper.\n */\n@Directive({\n selector: '[eclDescriptionListDefinitionList]',\n})\nexport class EclDescriptionListDefinitionListDirective extends ECLBaseDirective {\n /**\n * Applies the ECL list container class.\n */\n @HostBinding('class.ecl-description-list__definition-list') cmpClass = true;\n}\n","import {\n ApplicationRef,\n Component,\n DestroyRef,\n ElementRef,\n EmbeddedViewRef,\n HostBinding,\n TemplateRef,\n afterNextRender,\n computed,\n contentChildren,\n effect,\n inject,\n input,\n signal,\n viewChild,\n} from '@angular/core';\n\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclDescriptionListDefinitionItemDirective } from '../ecl-description-list-definition-item.directive';\nimport { EUI_ECL_LINK } from '@eui/ecl/components/ecl-link';\nimport { TranslatePipe } from '@ngx-translate/core';\n\n/**\n * Component for a definition item within an ECL description list.\n * Supports variants (link, inline, taxonomy, tag) and collapsible functionality\n * with maxVisibleItems control.\n */\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[eclDescriptionListDefinition]',\n standalone: true,\n templateUrl: './ecl-description-list-definition.component.html',\n imports: [...EUI_ECL_LINK, TranslatePipe],\n})\nexport class EclDescriptionListDefinitionComponent extends ECLBaseDirective {\n\n /**\n * Visual variant of the definition list item.\n * Options: 'link', 'inline', 'taxonomy', 'tag'.\n */\n variant = input<'link' | 'inline' | 'taxonomy' | 'tag' | null>(null);\n\n /**\n * Maximum number of items to display before showing \"See all\" link.\n * Controlled by parent EclDescriptionListDirective.\n */\n maxVisibleItems = signal<number | null>(null);\n\n private readonly eclListItems = contentChildren(EclDescriptionListDefinitionItemDirective, {\n descendants: true,\n });\n\n private readonly seeMoreTpl = viewChild.required<TemplateRef<unknown>>('seeMoreTpl');\n\n private readonly host = inject(ElementRef<HTMLElement>);\n private readonly appRef = inject(ApplicationRef);\n private readonly destroyRef = inject(DestroyRef);\n\n private seeMoreView?: EmbeddedViewRef<unknown>;\n private appended = false;\n\n @HostBinding('class')\n get cssClasses(): string {\n const v = this.variant();\n return [\n super.getCssClasses('ecl-description-list__definition'),\n v ? `ecl-description-list__definition--${v}` : '',\n ].join(' ');\n }\n // we use this to defer \"append into <ul>\" until the DOM exists\n /**\n * Signal indicating whether the DOM is ready for manipulation.\n * Set to true after first render to ensure projected content exists.\n */\n readonly domReady = signal(false);\n \n /**\n * Computed signal that returns the total number of list items.\n */\n private readonly currentItemsNumber = computed(() => this.eclListItems().length);\n\n /**\n * Computed signal that determines if \"See all\" link should be shown.\n * Returns true when maxVisibleItems is set and less than total items.\n */\n readonly hasSeeAll = computed(() => {\n const max = this.maxVisibleItems();\n const total = this.currentItemsNumber();\n return !!max && total > 0 && max < total;\n });\n\n constructor() {\n super();\n // Mark DOM ready AFTER first render (projected <ul> will exist)\n afterNextRender(() => this.domReady.set(true));\n // TODO: This needs to be refactored in the next version (v22/v23). I am adding this solution, for adding /removing the\n // 'See all' link now, to be dynamically handled via DOM manipulation, to avoid breaking changes. Can be done in an easier way,\n // but with minimal change in the way the component is used. To be refactored.\n effect(() => {\n const items = this.eclListItems();\n // If DOM not ready yet, only do state updates (no DOM querying/appending)\n const ready = this.domReady();\n\n if (!this.hasSeeAll()) {\n // show all items\n items.forEach((it) => {\n it.isHidden = false;\n it.isLastVisible = false;\n });\n\n if (ready) this.removeSeeMoreFromDom();\n return;\n }\n\n // \"See all\" needed → hide beyond max\n const max = this.maxVisibleItems()!;\n items.forEach((it, idx) => {\n it.isHidden = idx >= max;\n it.isLastVisible = false;\n });\n const last = items[max - 1];\n if (last) last.isLastVisible = true;\n\n if (ready) this.ensureSeeMoreInsideProjectedUl();\n });\n\n this.destroyRef.onDestroy(() => this.removeSeeMoreFromDom());\n }\n\n /**\n * Handles the \"Show all items\" link click event.\n * Expands all hidden items and removes the \"See all\" link from DOM.\n */\n onShowAllItems(evt: Event): void {\n evt.preventDefault();\n this.showAllInternal();\n this.removeSeeMoreFromDom();\n }\n\n /**\n * Shows all items by setting isHidden to false for all items.\n */\n private showAllInternal(): void {\n const items = this.eclListItems();\n items.forEach((item) => (item.isHidden = false));\n items.forEach((item) => (item.isLastVisible = false));\n }\n\n /**\n * Ensures the \"See all\" link is appended inside the projected <ul> element.\n * Creates and attaches the embedded view if needed.\n */\n private ensureSeeMoreInsideProjectedUl(): void {\n if (!this.hasSeeAll()) return;\n\n const ul = this.findProjectedUl();\n if (!ul) return;\n\n // If it's already in there (e.g. reruns), do nothing\n if (ul.querySelector(':scope > li.ecl-description-list__see_more')) return;\n\n // Create the embedded view once and append its root <li> into the projected <ul>\n if (!this.seeMoreView) {\n this.seeMoreView = this.seeMoreTpl().createEmbeddedView({});\n this.appRef.attachView(this.seeMoreView);\n this.seeMoreView.detectChanges();\n }\n\n const [liNode] = this.seeMoreView.rootNodes as HTMLElement[];\n if (liNode && !this.appended) {\n ul.appendChild(liNode);\n this.appended = true;\n } else if (liNode && liNode.parentElement !== ul) {\n // if it was moved/removed, re-append\n ul.appendChild(liNode);\n }\n }\n\n /**\n * Removes the \"See all\" link from the DOM and cleans up the embedded view.\n */\n private removeSeeMoreFromDom(): void {\n const ul = this.findProjectedUl();\n ul?.querySelector(':scope > li.ecl-description-list__see_more')?.remove();\n\n this.appended = false;\n\n if (this.seeMoreView) {\n this.appRef.detachView(this.seeMoreView);\n this.seeMoreView.destroy();\n this.seeMoreView = undefined;\n }\n }\n\n /**\n * Finds the projected <ul> element with eclDescriptionListDefinitionList directive.\n * Returns null if not found.\n */\n private findProjectedUl(): HTMLUListElement | null {\n // your projected UL uses this attribute directive\n return this.host.nativeElement.querySelector(\n 'ul[eclDescriptionListDefinitionList]'\n ) as HTMLUListElement | null;\n }\n}","<ng-content></ng-content>\n\n<ng-template #seeMoreTpl>\n <li class=\"ecl-description-list__see_more\">\n <a eclLink variant=\"standalone\" href (click)=\"onShowAllItems($event)\">\n {{ 'ecl.SHOW-MORE-ITEMS' | translate }}\n </a>\n </li>\n</ng-template>","import { AfterContentInit, ChangeDetectorRef, ContentChildren, Directive, HostBinding, QueryList, booleanAttribute, numberAttribute, inject, input } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclDescriptionListDefinitionComponent } from './ecl-description-list-definition/ecl-description-list-definition.component';\n\n/**\n * Directive representing an ordered list using ECL styles.\n */\n@Directive({\n selector: '[eclOrderedList]',\n})\nexport class EclOrderedListDirective extends ECLBaseDirective {\n /**\n * Applies the ECL class for ordered lists.\n */\n @HostBinding('class.ecl-ordered-list') cmpClass = true;\n}\n\n/**\n * Directive for a single item within an ECL ordered list.\n */\n@Directive({\n selector: '[eclOrderedListItem]',\n})\nexport class EclOrderedListItemDirective extends ECLBaseDirective {\n /**\n * Applies the ECL class for ordered list items.\n */\n @HostBinding('class.ecl-ordered-list__item') cmpClass = true;\n}\n\n/**\n * Directive representing an unordered list using ECL styles.\n *\n * Supports optional variants like divider and no-marker.\n */\n@Directive({\n selector: '[eclUnorderedList]',\n})\nexport class EclUnorderedListDirective extends ECLBaseDirective {\n /**\n * Applies the ECL class for unordered lists.\n */\n @HostBinding('class.ecl-unordered-list') cmpClass = true;\n\n /**\n * Adds a divider between list items.\n */\n isDivider = input(false, { transform: booleanAttribute });\n\n @HostBinding('class.ecl-unordered-list--divider')\n get dividerClass() {\n return this.isDivider();\n }\n\n /**\n * Removes markers from list items.\n */\n isNoMarker = input(false, { transform: booleanAttribute });\n\n @HostBinding('class.ecl-unordered-list--no-marker')\n get noMarkerClass() {\n return this.isNoMarker();\n }\n}\n\n/**\n * Directive for a single item within an ECL unordered list.\n */\n@Directive({\n selector: '[eclUnorderedListItem]',\n})\nexport class EclUnorderedListItemDirective extends ECLBaseDirective {\n /**\n * Applies the ECL class for unordered list items.\n */\n @HostBinding('class.ecl-unordered-list__item') cmpClass = true;\n}\n\n/**\n * Directive for a description list using ECL styles.\n *\n * Supports horizontal layout and maxVisibleItems functionality\n * passed down to nested definition components.\n */\n@Directive({\n selector: '[eclDescriptionList]',\n})\nexport class EclDescriptionListDirective extends ECLBaseDirective implements AfterContentInit {\n /**\n * Enables horizontal layout.\n */\n isHorizontal = input(false, { transform: booleanAttribute });\n\n @HostBinding('class.ecl-description-list--horizontal')\n get horizontalClass() {\n return this.isHorizontal();\n }\n\n /**\n * Maximum number of visible items before collapsing.\n * Applied to nested `eclDescriptionListDefinition` components.\n */\n maxVisibleItems = input(0, { transform: numberAttribute });\n\n @ContentChildren(EclDescriptionListDefinitionComponent)\n eclListItems: QueryList<EclDescriptionListDefinitionComponent>;\n\n /**\n * Applies the base ECL class for description lists.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-description-list')].join(' ');\n }\n private cd = inject(ChangeDetectorRef);\n\n /**\n * Assigns `maxVisibleItems` to child definition components if needed.\n */\n ngAfterContentInit(): void {\n if (!this.isHorizontal() && this.maxVisibleItems() > 0) {\n this.eclListItems.forEach((item) => (item.maxVisibleItems.set(this.maxVisibleItems())));\n }\n this.cd.detectChanges();\n }\n}\n\n/**\n * Directive representing a term within an ECL description list.\n */\n@Directive({\n selector: '[eclDescriptionListTerm]',\n})\nexport class EclDescriptionListTermDirective extends ECLBaseDirective {\n /**\n * Applies the ECL class for description list terms.\n */\n @HostBinding('class.ecl-description-list__term') cmpClass = true;\n}\n","import { EclDescriptionListDefinitionItemDirective, EclDescriptionListDefinitionListDirective } from './ecl-description-list-definition-item.directive';\nimport { EclDescriptionListDefinitionComponent } from './ecl-description-list-definition/ecl-description-list-definition.component';\nimport {\n EclDescriptionListDirective,\n EclDescriptionListTermDirective,\n EclOrderedListDirective,\n EclOrderedListItemDirective,\n EclUnorderedListDirective,\n EclUnorderedListItemDirective,\n} from './ecl-list.directive';\n\nexport * from './ecl-list.directive';\nexport * from './ecl-description-list-definition-item.directive';\nexport * from './ecl-description-list-definition/ecl-description-list-definition.component';\n\nexport const EUI_ECL_LIST = [\n EclOrderedListDirective,\n EclOrderedListItemDirective,\n EclUnorderedListDirective,\n EclUnorderedListItemDirective,\n EclDescriptionListDirective,\n EclDescriptionListTermDirective,\n EclDescriptionListDefinitionComponent,\n EclDescriptionListDefinitionItemDirective,\n EclDescriptionListDefinitionListDirective,\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-list.mjs","sources":["../../components/ecl-list/ecl-description-list-definition-item.directive.ts","../../components/ecl-list/ecl-description-list-definition/ecl-description-list-definition.component.ts","../../components/ecl-list/ecl-description-list-definition/ecl-description-list-definition.component.html","../../components/ecl-list/ecl-list.directive.ts","../../components/ecl-list/index.ts","../../components/ecl-list/eui-ecl-components-ecl-list.ts"],"sourcesContent":["import { Directive, HostBinding } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Directive representing a single item in an ECL description list definition.\n *\n * Applies the appropriate styling classes and allows visibility control for \"see all\" behavior.\n */\n@Directive({\n selector: '[eclDescriptionListDefinitionItem]',\n})\nexport class EclDescriptionListDefinitionItemDirective extends ECLBaseDirective {\n /**\n * Applies appropriate ECL classes based on visibility state.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [\n super.getCssClasses('ecl-description-list__definition-item'),\n this.isHidden ? 'ecl-description-list__definition-item--hidden' : '',\n this.isLastVisible ? 'ecl-description-list__definition-item--last-visible' : '',\n ].join(' ');\n }\n\n /**\n * Internal state used to hide the item when exceeding the visible limit.\n */\n isHidden = false;\n\n /**\n * Indicates whether this is the last item visible before the \"see all\" action is triggered.\n */\n isLastVisible = false;\n}\n\n/**\n * Directive representing a container for definition list items within an ECL description list.\n *\n * Applies the ECL-specific class for the list wrapper.\n */\n@Directive({\n selector: '[eclDescriptionListDefinitionList]',\n})\nexport class EclDescriptionListDefinitionListDirective extends ECLBaseDirective {\n /**\n * Applies the ECL list container class.\n */\n @HostBinding('class.ecl-description-list__definition-list') cmpClass = true;\n}\n","import {\n ApplicationRef,\n Component,\n DestroyRef,\n ElementRef,\n EmbeddedViewRef,\n HostBinding,\n TemplateRef,\n afterNextRender,\n computed,\n contentChildren,\n effect,\n inject,\n input,\n signal,\n viewChild,\n} from '@angular/core';\n\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclDescriptionListDefinitionItemDirective } from '../ecl-description-list-definition-item.directive';\nimport { EUI_ECL_LINK } from '@eui/ecl/components/ecl-link';\nimport { TranslatePipe } from '@ngx-translate/core';\n\n/**\n * Component for a definition item within an ECL description list.\n * Supports variants (link, inline, taxonomy, tag) and collapsible functionality\n * with maxVisibleItems control.\n */\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[eclDescriptionListDefinition]',\n standalone: true,\n templateUrl: './ecl-description-list-definition.component.html',\n imports: [...EUI_ECL_LINK, TranslatePipe],\n})\nexport class EclDescriptionListDefinitionComponent extends ECLBaseDirective {\n\n /**\n * Visual variant of the definition list item.\n * Options: 'link', 'inline', 'taxonomy', 'tag'.\n */\n variant = input<'link' | 'inline' | 'taxonomy' | 'tag' | null>(null);\n\n /**\n * Maximum number of items to display before showing \"See all\" link.\n * Controlled by parent EclDescriptionListDirective.\n */\n maxVisibleItems = signal<number | null>(null);\n\n private readonly eclListItems = contentChildren(EclDescriptionListDefinitionItemDirective, {\n descendants: true,\n });\n\n private readonly seeMoreTpl = viewChild.required<TemplateRef<unknown>>('seeMoreTpl');\n\n private readonly host = inject(ElementRef<HTMLElement>);\n private readonly appRef = inject(ApplicationRef);\n private readonly destroyRef = inject(DestroyRef);\n\n private seeMoreView?: EmbeddedViewRef<unknown>;\n private appended = false;\n\n @HostBinding('class')\n get cssClasses(): string {\n const v = this.variant();\n return [\n super.getCssClasses('ecl-description-list__definition'),\n v ? `ecl-description-list__definition--${v}` : '',\n ].join(' ');\n }\n // we use this to defer \"append into <ul>\" until the DOM exists\n /**\n * Signal indicating whether the DOM is ready for manipulation.\n * Set to true after first render to ensure projected content exists.\n */\n readonly domReady = signal(false);\n \n /**\n * Computed signal that returns the total number of list items.\n */\n private readonly currentItemsNumber = computed(() => this.eclListItems().length);\n\n /**\n * Computed signal that determines if \"See all\" link should be shown.\n * Returns true when maxVisibleItems is set and less than total items.\n */\n readonly hasSeeAll = computed(() => {\n const max = this.maxVisibleItems();\n const total = this.currentItemsNumber();\n return !!max && total > 0 && max < total;\n });\n\n constructor() {\n super();\n // Mark DOM ready AFTER first render (projected <ul> will exist)\n afterNextRender(() => this.domReady.set(true));\n // TODO: This needs to be refactored in the next version (v22/v23). I am adding this solution, for adding /removing the\n // 'See all' link now, to be dynamically handled via DOM manipulation, to avoid breaking changes. Can be done in an easier way,\n // but with minimal change in the way the component is used. To be refactored.\n effect(() => {\n const items = this.eclListItems();\n // If DOM not ready yet, only do state updates (no DOM querying/appending)\n const ready = this.domReady();\n\n if (!this.hasSeeAll()) {\n // show all items\n items.forEach((it) => {\n it.isHidden = false;\n it.isLastVisible = false;\n });\n\n if (ready) this.removeSeeMoreFromDom();\n return;\n }\n\n // \"See all\" needed → hide beyond max\n const max = this.maxVisibleItems()!;\n items.forEach((it, idx) => {\n it.isHidden = idx >= max;\n it.isLastVisible = false;\n });\n const last = items[max - 1];\n if (last) last.isLastVisible = true;\n\n if (ready) this.ensureSeeMoreInsideProjectedUl();\n });\n\n this.destroyRef.onDestroy(() => this.removeSeeMoreFromDom());\n }\n\n /**\n * Handles the \"Show all items\" link click event.\n * Expands all hidden items and removes the \"See all\" link from DOM.\n */\n onShowAllItems(evt: Event): void {\n evt.preventDefault();\n this.showAllInternal();\n this.removeSeeMoreFromDom();\n }\n\n /**\n * Shows all items by setting isHidden to false for all items.\n */\n private showAllInternal(): void {\n const items = this.eclListItems();\n items.forEach((item) => (item.isHidden = false));\n items.forEach((item) => (item.isLastVisible = false));\n }\n\n /**\n * Ensures the \"See all\" link is appended inside the projected <ul> element.\n * Creates and attaches the embedded view if needed.\n */\n private ensureSeeMoreInsideProjectedUl(): void {\n if (!this.hasSeeAll()) return;\n\n const ul = this.findProjectedUl();\n if (!ul) return;\n\n // If it's already in there (e.g. reruns), do nothing\n if (ul.querySelector(':scope > li.ecl-description-list__see_more')) return;\n\n // Create the embedded view once and append its root <li> into the projected <ul>\n if (!this.seeMoreView) {\n this.seeMoreView = this.seeMoreTpl().createEmbeddedView({});\n this.appRef.attachView(this.seeMoreView);\n this.seeMoreView.detectChanges();\n }\n\n const [liNode] = this.seeMoreView.rootNodes as HTMLElement[];\n if (liNode && !this.appended) {\n ul.appendChild(liNode);\n this.appended = true;\n } else if (liNode && liNode.parentElement !== ul) {\n // if it was moved/removed, re-append\n ul.appendChild(liNode);\n }\n }\n\n /**\n * Removes the \"See all\" link from the DOM and cleans up the embedded view.\n */\n private removeSeeMoreFromDom(): void {\n const ul = this.findProjectedUl();\n ul?.querySelector(':scope > li.ecl-description-list__see_more')?.remove();\n\n this.appended = false;\n\n if (this.seeMoreView) {\n this.appRef.detachView(this.seeMoreView);\n this.seeMoreView.destroy();\n this.seeMoreView = undefined;\n }\n }\n\n /**\n * Finds the projected <ul> element with eclDescriptionListDefinitionList directive.\n * Returns null if not found.\n */\n private findProjectedUl(): HTMLUListElement | null {\n // your projected UL uses this attribute directive\n return this.host.nativeElement.querySelector(\n 'ul[eclDescriptionListDefinitionList]'\n ) as HTMLUListElement | null;\n }\n}","<ng-content></ng-content>\n\n<ng-template #seeMoreTpl>\n <li class=\"ecl-description-list__see_more\">\n <a eclLink variant=\"standalone\" href (click)=\"onShowAllItems($event)\">\n {{ 'ecl.SHOW-MORE-ITEMS' | translate }}\n </a>\n </li>\n</ng-template>","import { AfterContentInit, ChangeDetectorRef, Directive, HostBinding, booleanAttribute, numberAttribute, inject, input, contentChildren } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclDescriptionListDefinitionComponent } from './ecl-description-list-definition/ecl-description-list-definition.component';\n\n/**\n * Directive representing an ordered list using ECL styles.\n */\n@Directive({\n selector: '[eclOrderedList]',\n})\nexport class EclOrderedListDirective extends ECLBaseDirective {\n /**\n * Applies the ECL class for ordered lists.\n */\n @HostBinding('class.ecl-ordered-list') cmpClass = true;\n}\n\n/**\n * Directive for a single item within an ECL ordered list.\n */\n@Directive({\n selector: '[eclOrderedListItem]',\n})\nexport class EclOrderedListItemDirective extends ECLBaseDirective {\n /**\n * Applies the ECL class for ordered list items.\n */\n @HostBinding('class.ecl-ordered-list__item') cmpClass = true;\n}\n\n/**\n * Directive representing an unordered list using ECL styles.\n *\n * Supports optional variants like divider and no-marker.\n */\n@Directive({\n selector: '[eclUnorderedList]',\n})\nexport class EclUnorderedListDirective extends ECLBaseDirective {\n /**\n * Applies the ECL class for unordered lists.\n */\n @HostBinding('class.ecl-unordered-list') cmpClass = true;\n\n /**\n * Adds a divider between list items.\n */\n isDivider = input(false, { transform: booleanAttribute });\n\n @HostBinding('class.ecl-unordered-list--divider')\n get dividerClass() {\n return this.isDivider();\n }\n\n /**\n * Removes markers from list items.\n */\n isNoMarker = input(false, { transform: booleanAttribute });\n\n @HostBinding('class.ecl-unordered-list--no-marker')\n get noMarkerClass() {\n return this.isNoMarker();\n }\n}\n\n/**\n * Directive for a single item within an ECL unordered list.\n */\n@Directive({\n selector: '[eclUnorderedListItem]',\n})\nexport class EclUnorderedListItemDirective extends ECLBaseDirective {\n /**\n * Applies the ECL class for unordered list items.\n */\n @HostBinding('class.ecl-unordered-list__item') cmpClass = true;\n}\n\n/**\n * Directive for a description list using ECL styles.\n *\n * Supports horizontal layout and maxVisibleItems functionality\n * passed down to nested definition components.\n */\n@Directive({\n selector: '[eclDescriptionList]',\n})\nexport class EclDescriptionListDirective extends ECLBaseDirective implements AfterContentInit {\n /**\n * Enables horizontal layout.\n */\n isHorizontal = input(false, { transform: booleanAttribute });\n\n @HostBinding('class.ecl-description-list--horizontal')\n get horizontalClass() {\n return this.isHorizontal();\n }\n\n /**\n * Maximum number of visible items before collapsing.\n * Applied to nested `eclDescriptionListDefinition` components.\n */\n maxVisibleItems = input(0, { transform: numberAttribute });\n\n readonly eclListItems = contentChildren(EclDescriptionListDefinitionComponent);\n\n /**\n * Applies the base ECL class for description lists.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-description-list')].join(' ');\n }\n private cd = inject(ChangeDetectorRef);\n\n /**\n * Assigns `maxVisibleItems` to child definition components if needed.\n */\n ngAfterContentInit(): void {\n if (!this.isHorizontal() && this.maxVisibleItems() > 0) {\n this.eclListItems().forEach((item) => (item.maxVisibleItems.set(this.maxVisibleItems())));\n }\n this.cd.detectChanges();\n }\n}\n\n/**\n * Directive representing a term within an ECL description list.\n */\n@Directive({\n selector: '[eclDescriptionListTerm]',\n})\nexport class EclDescriptionListTermDirective extends ECLBaseDirective {\n /**\n * Applies the ECL class for description list terms.\n */\n @HostBinding('class.ecl-description-list__term') cmpClass = true;\n}\n","import { EclDescriptionListDefinitionItemDirective, EclDescriptionListDefinitionListDirective } from './ecl-description-list-definition-item.directive';\nimport { EclDescriptionListDefinitionComponent } from './ecl-description-list-definition/ecl-description-list-definition.component';\nimport {\n EclDescriptionListDirective,\n EclDescriptionListTermDirective,\n EclOrderedListDirective,\n EclOrderedListItemDirective,\n EclUnorderedListDirective,\n EclUnorderedListItemDirective,\n} from './ecl-list.directive';\n\nexport * from './ecl-list.directive';\nexport * from './ecl-description-list-definition-item.directive';\nexport * from './ecl-description-list-definition/ecl-description-list-definition.component';\n\nexport const EUI_ECL_LIST = [\n EclOrderedListDirective,\n EclOrderedListItemDirective,\n EclUnorderedListDirective,\n EclUnorderedListItemDirective,\n EclDescriptionListDirective,\n EclDescriptionListTermDirective,\n EclDescriptionListDefinitionComponent,\n EclDescriptionListDefinitionItemDirective,\n EclDescriptionListDefinitionListDirective,\n] as const;","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eui-ecl-components-ecl-loading-indicator.mjs","sources":["../../components/ecl-loading-indicator/ecl-loading-indicator.component.ts","../../components/ecl-loading-indicator/ecl-loading-indicator.component.html","../../components/ecl-loading-indicator/ecl-loading-indicator-label.directive.ts","../../components/ecl-loading-indicator/ecl-loading-indicator-overlay.directive.ts","../../components/ecl-loading-indicator/index.ts","../../components/ecl-loading-indicator/eui-ecl-components-ecl-loading-indicator.ts"],"sourcesContent":["import { Component, HostBinding, booleanAttribute, input } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Component representing a loading indicator (spinner) using ECL styles.\n *\n * Supports different sizes, color variants, centering and visibility options.\n */\n@Component({\n selector: 'ecl-loading-indicator',\n templateUrl: './ecl-loading-indicator.component.html',\n})\nexport class EclLoadingIndicatorComponent extends ECLBaseDirective {\n /**\n * Size of the spinner.\n *\n * Possible values:\n * - `'s'` – small\n * - `'m'` – medium (default)\n * - `'l'` – large\n */\n readonly size = input<'s' | 'm' | 'l'>('m');\n\n /**\n * Variant of the spinner color.\n *\n * Possible values:\n * - `'primary'` – default appearance\n * - `'inverted'` – used on dark backgrounds\n */\n readonly variant = input<'primary' | 'inverted'>('primary');\n\n /**\n * Controls whether the spinner should be centered.\n *\n * Defaults to `true`.\n */\n readonly isCentered = input(true, { transform: booleanAttribute });\n\n /**\n * Controls visibility of the spinner.\n *\n * When set to `false`, the spinner will be hidden via CSS.\n *\n * Defaults to `true`.\n */\n readonly isVisible = input(true, { transform: booleanAttribute });\n\n /**\n * Applies ARIA role for accessibility.\n */\n @HostBinding('attr.role') role = 'alert';\n\n /**\n * Applies CSS classes based on size, variant and visibility settings.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [\n super.getCssClasses('ecl-spinner'),\n `ecl-spinner--${this.size()}`,\n `ecl-spinner--${this.variant()}`,\n this.isCentered() ? 'ecl-spinner--centered' : '',\n this.isVisible() ? 'ecl-spinner--visible' : '',\n ]\n .join(' ')\n .trim();\n }\n}\n","<svg class=\"ecl-spinner__loader\" viewBox=\"25 25 50 50\">\n <circle\n class=\"ecl-spinner__circle\"\n cx=\"50\"\n cy=\"50\"\n r=\"20\"\n fill=\"none\"\n stroke-width=\"4px\"\n stroke-miterlimit=\"10\"\n vector-effect=\"non-scaling-stroke\"></circle>\n</svg>\n<ng-content></ng-content>\n","import { Directive, HostBinding } from '@angular/core';\n\n/**\n * Directive for styling the label text of an ECL loading indicator.\n *\n * Adds the `ecl-spinner__text` class to the host element.\n */\n@Directive({\n selector: '[eclLoadingIndicatorLabel]',\n})\nexport class EclLoadingIndicatorLabelDirective {\n /**\n * Applies the ECL class for spinner label text.\n */\n @HostBinding('class.ecl-spinner__text') className = true;\n}\n","import { Directive, HostBinding } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Directive that adds an overlay layer to an ECL loading indicator.\n *\n * Automatically applies the ECL spinner overlay classes.\n */\n@Directive({\n selector: '[eclLoadingIndicatorOverlay]',\n})\nexport class EclLoadingIndicatorOverlayDirective extends ECLBaseDirective {\n /**\n * Applies the CSS classes for the spinner overlay.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-spinner__overlay ecl-spinner__overlay--visible')].join(' ').trim();\n }\n}\n","import { EclLoadingIndicatorComponent } from './ecl-loading-indicator.component';\nimport { EclLoadingIndicatorLabelDirective } from './ecl-loading-indicator-label.directive';\nimport { EclLoadingIndicatorOverlayDirective } from './ecl-loading-indicator-overlay.directive';\n\nexport * from './ecl-loading-indicator.component';\nexport * from './ecl-loading-indicator-label.directive';\nexport * from './ecl-loading-indicator-overlay.directive';\n\nexport const EUI_ECL_LOADING_INDICATOR = [\n
|
|
1
|
+
{"version":3,"file":"eui-ecl-components-ecl-loading-indicator.mjs","sources":["../../components/ecl-loading-indicator/ecl-loading-indicator.component.ts","../../components/ecl-loading-indicator/ecl-loading-indicator.component.html","../../components/ecl-loading-indicator/ecl-loading-indicator-label.directive.ts","../../components/ecl-loading-indicator/ecl-loading-indicator-overlay.directive.ts","../../components/ecl-loading-indicator/index.ts","../../components/ecl-loading-indicator/eui-ecl-components-ecl-loading-indicator.ts"],"sourcesContent":["import { Component, HostBinding, booleanAttribute, input } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Component representing a loading indicator (spinner) using ECL styles.\n *\n * Supports different sizes, color variants, centering and visibility options.\n */\n@Component({\n selector: 'ecl-loading-indicator',\n templateUrl: './ecl-loading-indicator.component.html',\n})\nexport class EclLoadingIndicatorComponent extends ECLBaseDirective {\n /**\n * Size of the spinner.\n *\n * Possible values:\n * - `'s'` – small\n * - `'m'` – medium (default)\n * - `'l'` – large\n */\n readonly size = input<'s' | 'm' | 'l'>('m');\n\n /**\n * Variant of the spinner color.\n *\n * Possible values:\n * - `'primary'` – default appearance\n * - `'inverted'` – used on dark backgrounds\n */\n readonly variant = input<'primary' | 'inverted'>('primary');\n\n /**\n * Controls whether the spinner should be centered.\n *\n * Defaults to `true`.\n */\n readonly isCentered = input(true, { transform: booleanAttribute });\n\n /**\n * Controls visibility of the spinner.\n *\n * When set to `false`, the spinner will be hidden via CSS.\n *\n * Defaults to `true`.\n */\n readonly isVisible = input(true, { transform: booleanAttribute });\n\n /**\n * Applies ARIA role for accessibility.\n */\n @HostBinding('attr.role') role = 'alert';\n\n /**\n * Applies CSS classes based on size, variant and visibility settings.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [\n super.getCssClasses('ecl-spinner'),\n `ecl-spinner--${this.size()}`,\n `ecl-spinner--${this.variant()}`,\n this.isCentered() ? 'ecl-spinner--centered' : '',\n this.isVisible() ? 'ecl-spinner--visible' : '',\n ]\n .join(' ')\n .trim();\n }\n}\n","<svg class=\"ecl-spinner__loader\" viewBox=\"25 25 50 50\">\n <circle\n class=\"ecl-spinner__circle\"\n cx=\"50\"\n cy=\"50\"\n r=\"20\"\n fill=\"none\"\n stroke-width=\"4px\"\n stroke-miterlimit=\"10\"\n vector-effect=\"non-scaling-stroke\"></circle>\n</svg>\n<ng-content></ng-content>\n","import { Directive, HostBinding } from '@angular/core';\n\n/**\n * Directive for styling the label text of an ECL loading indicator.\n *\n * Adds the `ecl-spinner__text` class to the host element.\n */\n@Directive({\n selector: '[eclLoadingIndicatorLabel]',\n})\nexport class EclLoadingIndicatorLabelDirective {\n /**\n * Applies the ECL class for spinner label text.\n */\n @HostBinding('class.ecl-spinner__text') className = true;\n}\n","import { Directive, HostBinding } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Directive that adds an overlay layer to an ECL loading indicator.\n *\n * Automatically applies the ECL spinner overlay classes.\n */\n@Directive({\n selector: '[eclLoadingIndicatorOverlay]',\n})\nexport class EclLoadingIndicatorOverlayDirective extends ECLBaseDirective {\n /**\n * Applies the CSS classes for the spinner overlay.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-spinner__overlay ecl-spinner__overlay--visible')].join(' ').trim();\n }\n}\n","import { EclLoadingIndicatorComponent } from './ecl-loading-indicator.component';\nimport { EclLoadingIndicatorLabelDirective } from './ecl-loading-indicator-label.directive';\nimport { EclLoadingIndicatorOverlayDirective } from './ecl-loading-indicator-overlay.directive';\n\nexport * from './ecl-loading-indicator.component';\nexport * from './ecl-loading-indicator-label.directive';\nexport * from './ecl-loading-indicator-overlay.directive';\n\nexport const EUI_ECL_LOADING_INDICATOR = [\n EclLoadingIndicatorComponent,\n EclLoadingIndicatorLabelDirective,\n EclLoadingIndicatorOverlayDirective,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|