@eui/ecl 23.0.0-alpha.6 → 23.0.0-alpha.7
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 +41 -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 { booleanAttribute, HostBinding, Input, Component, input, ViewEncapsulation,
|
|
2
|
+
import { booleanAttribute, HostBinding, Input, Component, input, ViewEncapsulation, contentChild, forwardRef, Directive, inject } from '@angular/core';
|
|
3
3
|
import { ECLBaseDirective } from '@eui/ecl/core';
|
|
4
4
|
import { EclFormLabelComponent } from '@eui/ecl/components/ecl-form-label';
|
|
5
5
|
import { EclHelpBlockDirective } from '@eui/ecl/components/ecl-help-block';
|
|
@@ -101,6 +101,26 @@ class EclCheckboxDirective extends ECLBaseDirective {
|
|
|
101
101
|
* Indicates whether the checkbox is rendered as a single (standalone) item.
|
|
102
102
|
*/
|
|
103
103
|
this.isSingle = false;
|
|
104
|
+
/**
|
|
105
|
+
* Child label component projected into the checkbox.
|
|
106
|
+
*/
|
|
107
|
+
this.eclCheckboxLabelComponent = contentChild(forwardRef(() => EclCheckboxLabelComponent), /* @ts-ignore */
|
|
108
|
+
...(ngDevMode ? [{ debugName: "eclCheckboxLabelComponent" }] : /* istanbul ignore next */ []));
|
|
109
|
+
/**
|
|
110
|
+
* Child help component projected into the checkbox.
|
|
111
|
+
*/
|
|
112
|
+
this.eclCheckboxHelpComponent = contentChild(forwardRef(() => EclCheckboxHelpComponent), /* @ts-ignore */
|
|
113
|
+
...(ngDevMode ? [{ debugName: "eclCheckboxHelpComponent" }] : /* istanbul ignore next */ []));
|
|
114
|
+
/**
|
|
115
|
+
* Optional form label component projected into the checkbox.
|
|
116
|
+
*/
|
|
117
|
+
this.eclFormLabelDirective = contentChild(forwardRef(() => EclFormLabelComponent), /* @ts-ignore */
|
|
118
|
+
...(ngDevMode ? [{ debugName: "eclFormLabelDirective" }] : /* istanbul ignore next */ []));
|
|
119
|
+
/**
|
|
120
|
+
* Optional help block directive projected into the checkbox.
|
|
121
|
+
*/
|
|
122
|
+
this.eclHelpBlockDirective = contentChild(forwardRef(() => EclHelpBlockDirective), /* @ts-ignore */
|
|
123
|
+
...(ngDevMode ? [{ debugName: "eclHelpBlockDirective" }] : /* istanbul ignore next */ []));
|
|
104
124
|
}
|
|
105
125
|
/**
|
|
106
126
|
* Applies base CSS classes for the checkbox container.
|
|
@@ -115,16 +135,18 @@ class EclCheckboxDirective extends ECLBaseDirective {
|
|
|
115
135
|
this.updateChildElements();
|
|
116
136
|
}
|
|
117
137
|
updateChildElements() {
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
138
|
+
const eclCheckboxLabelComponent = this.eclCheckboxLabelComponent();
|
|
139
|
+
if (eclCheckboxLabelComponent) {
|
|
140
|
+
eclCheckboxLabelComponent.isInvalid = this.isInvalid;
|
|
141
|
+
eclCheckboxLabelComponent.isDisabled = this.isDisabled;
|
|
121
142
|
}
|
|
122
|
-
|
|
123
|
-
|
|
143
|
+
const eclCheckboxHelpComponent = this.eclCheckboxHelpComponent();
|
|
144
|
+
if (eclCheckboxHelpComponent) {
|
|
145
|
+
eclCheckboxHelpComponent.isDisabled = this.isDisabled;
|
|
124
146
|
}
|
|
125
147
|
}
|
|
126
148
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: EclCheckboxDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
|
|
127
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "
|
|
149
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "22.0.5", type: EclCheckboxDirective, isStandalone: true, selector: "[eclCheckbox]", inputs: { isDisabled: ["isDisabled", "isDisabled", booleanAttribute], isInvalid: ["isInvalid", "isInvalid", booleanAttribute], isSingle: ["isSingle", "isSingle", booleanAttribute] }, host: { properties: { "class.ecl-checkbox--disabled": "this.isDisabled", "class.ecl-checkbox--invalid": "this.isInvalid", "class.ecl-checkbox--single": "this.isSingle", "class": "this.cssClasses" } }, queries: [{ propertyName: "eclCheckboxLabelComponent", first: true, predicate: i0.forwardRef(() => EclCheckboxLabelComponent), descendants: true, isSignal: true }, { propertyName: "eclCheckboxHelpComponent", first: true, predicate: i0.forwardRef(() => EclCheckboxHelpComponent), descendants: true, isSignal: true }, { propertyName: "eclFormLabelDirective", first: true, predicate: i0.forwardRef(() => EclFormLabelComponent), descendants: true, isSignal: true }, { propertyName: "eclHelpBlockDirective", first: true, predicate: i0.forwardRef(() => EclHelpBlockDirective), descendants: true, isSignal: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0 }); }
|
|
128
150
|
}
|
|
129
151
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: EclCheckboxDirective, decorators: [{
|
|
130
152
|
type: Directive,
|
|
@@ -149,19 +171,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImpor
|
|
|
149
171
|
}, {
|
|
150
172
|
type: HostBinding,
|
|
151
173
|
args: ['class.ecl-checkbox--single']
|
|
152
|
-
}], eclCheckboxLabelComponent: [{
|
|
153
|
-
type: ContentChild,
|
|
154
|
-
args: [forwardRef(() => EclCheckboxLabelComponent)]
|
|
155
|
-
}], eclCheckboxHelpComponent: [{
|
|
156
|
-
type: ContentChild,
|
|
157
|
-
args: [forwardRef(() => EclCheckboxHelpComponent)]
|
|
158
|
-
}], eclFormLabelDirective: [{
|
|
159
|
-
type: ContentChild,
|
|
160
|
-
args: [forwardRef(() => EclFormLabelComponent)]
|
|
161
|
-
}], eclHelpBlockDirective: [{
|
|
162
|
-
type: ContentChild,
|
|
163
|
-
args: [forwardRef(() => EclHelpBlockDirective)]
|
|
164
|
-
}], cssClasses: [{
|
|
174
|
+
}], eclCheckboxLabelComponent: [{ type: i0.ContentChild, args: [forwardRef(() => EclCheckboxLabelComponent), { isSignal: true }] }], eclCheckboxHelpComponent: [{ type: i0.ContentChild, args: [forwardRef(() => EclCheckboxHelpComponent), { isSignal: true }] }], eclFormLabelDirective: [{ type: i0.ContentChild, args: [forwardRef(() => EclFormLabelComponent), { isSignal: true }] }], eclHelpBlockDirective: [{ type: i0.ContentChild, args: [forwardRef(() => EclHelpBlockDirective), { isSignal: true }] }], cssClasses: [{
|
|
165
175
|
type: HostBinding,
|
|
166
176
|
args: ['class']
|
|
167
177
|
}] } });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eui-ecl-components-ecl-checkbox.mjs","sources":["../../components/ecl-checkbox/ecl-checkbox-help.component.ts","../../components/ecl-checkbox/ecl-checkbox-help.component.html","../../components/ecl-checkbox/ecl-checkbox-label.component.ts","../../components/ecl-checkbox/ecl-checkbox-label.component.html","../../components/ecl-checkbox/ecl-checkbox.directive.ts","../../components/ecl-checkbox/ecl-checkbox-input.directive.ts","../../components/ecl-checkbox/index.ts","../../components/ecl-checkbox/eui-ecl-components-ecl-checkbox.ts"],"sourcesContent":["import { Component, HostBinding, Input, booleanAttribute } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Displays help text associated with a checkbox.\n */\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[eclCheckboxHelp]',\n templateUrl: './ecl-checkbox-help.component.html',\n})\nexport class EclCheckboxHelpComponent extends ECLBaseDirective {\n /**\n * Indicates whether the help text is disabled (e.g. visually muted).\n */\n @Input({ transform: booleanAttribute }) @HostBinding('class.ecl-checkbox__help--disabled') isDisabled = false;\n\n /**\n * Applies base CSS classes for checkbox help.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-checkbox__help')].join(' ');\n }\n}\n","<ng-content></ng-content>\n","import { Component, HostBinding, Input, ViewEncapsulation, booleanAttribute, input } from '@angular/core';\nimport { EUI_ECL_ICON } from '@eui/ecl/components/ecl-icon';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Label component for a checkbox, supporting state styles.\n */\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'label[eclCheckboxLabel]',\n templateUrl: './ecl-checkbox-label.component.html',\n imports: [...EUI_ECL_ICON],\n encapsulation: ViewEncapsulation.None,\n})\nexport class EclCheckboxLabelComponent extends ECLBaseDirective {\n /**\n * Indicates whether the checkbox is in an invalid state.\n */\n @Input({ transform: booleanAttribute }) isInvalid = false;\n\n /**\n * Indicates whether the checkbox is disabled.\n */\n @Input({ transform: booleanAttribute }) isDisabled = false;\n\n /**\n * Indicates whether the checkbox is required.\n */\n readonly isRequired = input(false, { transform: booleanAttribute });\n\n /**\n * Applies base CSS classes for checkbox label.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-checkbox__label')].join(' ');\n }\n}\n","<span class=\"ecl-checkbox__box\" [class.ecl-checkbox__box--disabled]=\"isDisabled\" [class.ecl-checkbox__box--invalid]=\"isInvalid\">\n <ecl-icon size=\"xs\" icon=\"check\" class=\"ecl-checkbox__icon\"></ecl-icon>\n</span>\n\n<span class=\"ecl-checkbox__text\">\n <ng-content></ng-content>\n</span>\n@if(isRequired()) {\n<span class=\"ecl-form-label__required\" role=\"note\">(required)</span>\n}\n","import {\n AfterContentInit,\n ContentChild,\n Directive,\n HostBinding,\n Input,\n OnChanges,\n booleanAttribute,\n forwardRef,\n} from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclFormLabelComponent } from '@eui/ecl/components/ecl-form-label';\nimport { EclHelpBlockDirective } from '@eui/ecl/components/ecl-help-block';\nimport { EclCheckboxHelpComponent } from './ecl-checkbox-help.component';\nimport { EclCheckboxLabelComponent } from './ecl-checkbox-label.component';\n\n/**\n * Directive that applies ECL styles and manages state for checkbox groups or standalone checkboxes.\n */\n@Directive({\n selector: '[eclCheckbox]',\n})\nexport class EclCheckboxDirective extends ECLBaseDirective implements AfterContentInit, OnChanges {\n /**\n * Indicates whether the checkbox is disabled.\n */\n @Input({ transform: booleanAttribute }) @HostBinding('class.ecl-checkbox--disabled') isDisabled = false;\n\n /**\n * Indicates whether the checkbox is in an invalid state.\n */\n @Input({ transform: booleanAttribute }) @HostBinding('class.ecl-checkbox--invalid') isInvalid = false;\n\n /**\n * Indicates whether the checkbox is rendered as a single (standalone) item.\n */\n @Input({ transform: booleanAttribute }) @HostBinding('class.ecl-checkbox--single') isSingle = false;\n\n /**\n * Child label component projected into the checkbox.\n */\n @ContentChild(forwardRef(() => EclCheckboxLabelComponent)) eclCheckboxLabelComponent: EclCheckboxLabelComponent;\n\n /**\n * Child help component projected into the checkbox.\n */\n @ContentChild(forwardRef(() => EclCheckboxHelpComponent)) eclCheckboxHelpComponent: EclCheckboxHelpComponent;\n\n /**\n * Optional form label component projected into the checkbox.\n */\n @ContentChild(forwardRef(() => EclFormLabelComponent)) eclFormLabelDirective: EclFormLabelComponent;\n\n /**\n * Optional help block directive projected into the checkbox.\n */\n @ContentChild(forwardRef(() => EclHelpBlockDirective)) eclHelpBlockDirective: EclHelpBlockDirective;\n\n /**\n * Applies base CSS classes for the checkbox container.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-checkbox')].join(' ');\n }\n\n ngAfterContentInit(): void {\n this.updateChildElements();\n }\n\n ngOnChanges(): void {\n this.updateChildElements();\n }\n\n private updateChildElements(): void {\n if (this.eclCheckboxLabelComponent) {\n this.eclCheckboxLabelComponent.isInvalid = this.isInvalid;\n this.eclCheckboxLabelComponent.isDisabled = this.isDisabled;\n }\n\n if (this.eclCheckboxHelpComponent) {\n this.eclCheckboxHelpComponent.isDisabled = this.isDisabled;\n }\n }\n}\n","import { Directive, DoCheck, HostBinding, inject } from '@angular/core';\nimport { NgControl } from '@angular/forms';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclCheckboxDirective } from './ecl-checkbox.directive';\n\n/**\n * Directive that decorates the native checkbox input with ECL styles and syncs validation state.\n */\n@Directive({\n selector: 'input[eclCheckboxInput]',\n})\nexport class EclCheckboxInputDirective extends ECLBaseDirective implements DoCheck {\n eclCheckbox = inject(EclCheckboxDirective);\n protected ngControl = inject(NgControl, { optional: true, self: true });\n\n /**\n * Applies base CSS classes for checkbox input.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-checkbox__input')].join(' ');\n }\n\n ngDoCheck(): void {\n if (this.ngControl) {\n if (this.eclCheckbox) {\n this.eclCheckbox.isInvalid = this.ngControl.invalid && this.ngControl.touched;\n this.eclCheckbox.isDisabled = this.ngControl.disabled;\n }\n }\n }\n}\n","import { EclCheckboxDirective } from './ecl-checkbox.directive';\nimport { EclCheckboxLabelComponent } from './ecl-checkbox-label.component';\nimport { EclCheckboxInputDirective } from './ecl-checkbox-input.directive';\nimport { EclCheckboxHelpComponent } from './ecl-checkbox-help.component';\n\nexport * from './ecl-checkbox-input.directive';\nexport * from './ecl-checkbox.directive';\nexport * from './ecl-checkbox-label.component';\nexport * from './ecl-checkbox-help.component';\n\nexport const EUI_ECL_CHECKBOX = [\n EclCheckboxLabelComponent, EclCheckboxHelpComponent, EclCheckboxInputDirective,\n EclCheckboxDirective,\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-checkbox.mjs","sources":["../../components/ecl-checkbox/ecl-checkbox-help.component.ts","../../components/ecl-checkbox/ecl-checkbox-help.component.html","../../components/ecl-checkbox/ecl-checkbox-label.component.ts","../../components/ecl-checkbox/ecl-checkbox-label.component.html","../../components/ecl-checkbox/ecl-checkbox.directive.ts","../../components/ecl-checkbox/ecl-checkbox-input.directive.ts","../../components/ecl-checkbox/index.ts","../../components/ecl-checkbox/eui-ecl-components-ecl-checkbox.ts"],"sourcesContent":["import { Component, HostBinding, Input, booleanAttribute } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Displays help text associated with a checkbox.\n */\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[eclCheckboxHelp]',\n templateUrl: './ecl-checkbox-help.component.html',\n})\nexport class EclCheckboxHelpComponent extends ECLBaseDirective {\n /**\n * Indicates whether the help text is disabled (e.g. visually muted).\n */\n @Input({ transform: booleanAttribute }) @HostBinding('class.ecl-checkbox__help--disabled') isDisabled = false;\n\n /**\n * Applies base CSS classes for checkbox help.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-checkbox__help')].join(' ');\n }\n}\n","<ng-content></ng-content>\n","import { Component, HostBinding, Input, ViewEncapsulation, booleanAttribute, input } from '@angular/core';\nimport { EUI_ECL_ICON } from '@eui/ecl/components/ecl-icon';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Label component for a checkbox, supporting state styles.\n */\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'label[eclCheckboxLabel]',\n templateUrl: './ecl-checkbox-label.component.html',\n imports: [...EUI_ECL_ICON],\n encapsulation: ViewEncapsulation.None,\n})\nexport class EclCheckboxLabelComponent extends ECLBaseDirective {\n /**\n * Indicates whether the checkbox is in an invalid state.\n */\n @Input({ transform: booleanAttribute }) isInvalid = false;\n\n /**\n * Indicates whether the checkbox is disabled.\n */\n @Input({ transform: booleanAttribute }) isDisabled = false;\n\n /**\n * Indicates whether the checkbox is required.\n */\n readonly isRequired = input(false, { transform: booleanAttribute });\n\n /**\n * Applies base CSS classes for checkbox label.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-checkbox__label')].join(' ');\n }\n}\n","<span class=\"ecl-checkbox__box\" [class.ecl-checkbox__box--disabled]=\"isDisabled\" [class.ecl-checkbox__box--invalid]=\"isInvalid\">\n <ecl-icon size=\"xs\" icon=\"check\" class=\"ecl-checkbox__icon\"></ecl-icon>\n</span>\n\n<span class=\"ecl-checkbox__text\">\n <ng-content></ng-content>\n</span>\n@if(isRequired()) {\n<span class=\"ecl-form-label__required\" role=\"note\">(required)</span>\n}\n","import {\n AfterContentInit,\n Directive,\n HostBinding,\n Input,\n OnChanges,\n booleanAttribute,\n forwardRef,\n contentChild,\n} from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclFormLabelComponent } from '@eui/ecl/components/ecl-form-label';\nimport { EclHelpBlockDirective } from '@eui/ecl/components/ecl-help-block';\nimport { EclCheckboxHelpComponent } from './ecl-checkbox-help.component';\nimport { EclCheckboxLabelComponent } from './ecl-checkbox-label.component';\n\n/**\n * Directive that applies ECL styles and manages state for checkbox groups or standalone checkboxes.\n */\n@Directive({\n selector: '[eclCheckbox]',\n})\nexport class EclCheckboxDirective extends ECLBaseDirective implements AfterContentInit, OnChanges {\n /**\n * Indicates whether the checkbox is disabled.\n */\n @Input({ transform: booleanAttribute }) @HostBinding('class.ecl-checkbox--disabled') isDisabled = false;\n\n /**\n * Indicates whether the checkbox is in an invalid state.\n */\n @Input({ transform: booleanAttribute }) @HostBinding('class.ecl-checkbox--invalid') isInvalid = false;\n\n /**\n * Indicates whether the checkbox is rendered as a single (standalone) item.\n */\n @Input({ transform: booleanAttribute }) @HostBinding('class.ecl-checkbox--single') isSingle = false;\n\n /**\n * Child label component projected into the checkbox.\n */\n readonly eclCheckboxLabelComponent = contentChild(forwardRef(() => EclCheckboxLabelComponent));\n\n /**\n * Child help component projected into the checkbox.\n */\n readonly eclCheckboxHelpComponent = contentChild(forwardRef(() => EclCheckboxHelpComponent));\n\n /**\n * Optional form label component projected into the checkbox.\n */\n readonly eclFormLabelDirective = contentChild(forwardRef(() => EclFormLabelComponent));\n\n /**\n * Optional help block directive projected into the checkbox.\n */\n readonly eclHelpBlockDirective = contentChild(forwardRef(() => EclHelpBlockDirective));\n\n /**\n * Applies base CSS classes for the checkbox container.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-checkbox')].join(' ');\n }\n\n ngAfterContentInit(): void {\n this.updateChildElements();\n }\n\n ngOnChanges(): void {\n this.updateChildElements();\n }\n\n private updateChildElements(): void {\n const eclCheckboxLabelComponent = this.eclCheckboxLabelComponent();\n if (eclCheckboxLabelComponent) {\n eclCheckboxLabelComponent.isInvalid = this.isInvalid;\n eclCheckboxLabelComponent.isDisabled = this.isDisabled;\n }\n\n const eclCheckboxHelpComponent = this.eclCheckboxHelpComponent();\n if (eclCheckboxHelpComponent) {\n eclCheckboxHelpComponent.isDisabled = this.isDisabled;\n }\n }\n}\n","import { Directive, DoCheck, HostBinding, inject } from '@angular/core';\nimport { NgControl } from '@angular/forms';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclCheckboxDirective } from './ecl-checkbox.directive';\n\n/**\n * Directive that decorates the native checkbox input with ECL styles and syncs validation state.\n */\n@Directive({\n selector: 'input[eclCheckboxInput]',\n})\nexport class EclCheckboxInputDirective extends ECLBaseDirective implements DoCheck {\n eclCheckbox = inject(EclCheckboxDirective);\n protected ngControl = inject(NgControl, { optional: true, self: true });\n\n /**\n * Applies base CSS classes for checkbox input.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-checkbox__input')].join(' ');\n }\n\n ngDoCheck(): void {\n if (this.ngControl) {\n if (this.eclCheckbox) {\n this.eclCheckbox.isInvalid = this.ngControl.invalid && this.ngControl.touched;\n this.eclCheckbox.isDisabled = this.ngControl.disabled;\n }\n }\n }\n}\n","import { EclCheckboxDirective } from './ecl-checkbox.directive';\nimport { EclCheckboxLabelComponent } from './ecl-checkbox-label.component';\nimport { EclCheckboxInputDirective } from './ecl-checkbox-input.directive';\nimport { EclCheckboxHelpComponent } from './ecl-checkbox-help.component';\n\nexport * from './ecl-checkbox-input.directive';\nexport * from './ecl-checkbox.directive';\nexport * from './ecl-checkbox-label.component';\nexport * from './ecl-checkbox-help.component';\n\nexport const EUI_ECL_CHECKBOX = [\n EclCheckboxLabelComponent, EclCheckboxHelpComponent, EclCheckboxInputDirective,\n EclCheckboxDirective,\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 { input, booleanAttribute, HostBinding, Directive, inject, ElementRef,
|
|
2
|
+
import { input, booleanAttribute, HostBinding, Directive, inject, ElementRef, contentChild, forwardRef, Renderer2, PLATFORM_ID, Component } from '@angular/core';
|
|
3
3
|
import { ECLBaseDirective } from '@eui/ecl/core';
|
|
4
4
|
import { EclContentBlockComponent, EclContentBlockTitleDirective } from '@eui/ecl/components/ecl-content-block';
|
|
5
5
|
import { EclDateBlockComponent } from '@eui/ecl/components/ecl-date-block';
|
|
@@ -94,6 +94,35 @@ class EclContentItemComponent extends ECLBaseDirective {
|
|
|
94
94
|
* Default is false.
|
|
95
95
|
*/
|
|
96
96
|
this.hasDivider = input(false, { ...(ngDevMode ? { debugName: "hasDivider" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
97
|
+
/**
|
|
98
|
+
* Reference to projected content block.
|
|
99
|
+
* Used to apply internal styling and structure.
|
|
100
|
+
*/
|
|
101
|
+
this.eclContentBlock = contentChild(forwardRef(() => EclContentBlockComponent), /* @ts-ignore */
|
|
102
|
+
...(ngDevMode ? [{ debugName: "eclContentBlock" }] : /* istanbul ignore next */ []));
|
|
103
|
+
/**
|
|
104
|
+
* Reference to projected date block component.
|
|
105
|
+
* Used to set styling and determine layout mode.
|
|
106
|
+
*/
|
|
107
|
+
this.eclDateBlock = contentChild(forwardRef(() => EclDateBlockComponent), /* @ts-ignore */
|
|
108
|
+
...(ngDevMode ? [{ debugName: "eclDateBlock" }] : /* istanbul ignore next */ []));
|
|
109
|
+
/**
|
|
110
|
+
* Reference to projected picture directive, used to determine layout mode (stacked).
|
|
111
|
+
*/
|
|
112
|
+
this.eclContentItemPicture = contentChild(forwardRef(() => EclContentItemPictureDirective), /* @ts-ignore */
|
|
113
|
+
...(ngDevMode ? [{ debugName: "eclContentItemPicture" }] : /* istanbul ignore next */ []));
|
|
114
|
+
/**
|
|
115
|
+
* Reference to projected title directive inside the content block.
|
|
116
|
+
* Used for linking behavior.
|
|
117
|
+
*/
|
|
118
|
+
this.eclContentBlockTitle = contentChild(forwardRef(() => EclContentBlockTitleDirective), /* @ts-ignore */
|
|
119
|
+
...(ngDevMode ? [{ debugName: "eclContentBlockTitle" }] : /* istanbul ignore next */ []));
|
|
120
|
+
/**
|
|
121
|
+
* Reference to projected image directive.
|
|
122
|
+
* Used to bind interaction behavior (click propagation).
|
|
123
|
+
*/
|
|
124
|
+
this.eclContentItemImage = contentChild(forwardRef(() => EclContentItemImageDirective), /* @ts-ignore */
|
|
125
|
+
...(ngDevMode ? [{ debugName: "eclContentItemImage" }] : /* istanbul ignore next */ []));
|
|
97
126
|
/**
|
|
98
127
|
* ARIA role attribute for the host element.
|
|
99
128
|
* Set to "article" to denote standalone content.
|
|
@@ -109,24 +138,29 @@ class EclContentItemComponent extends ECLBaseDirective {
|
|
|
109
138
|
* depending on layout and configuration options.
|
|
110
139
|
*/
|
|
111
140
|
get cssClasses() {
|
|
112
|
-
return [
|
|
141
|
+
return [
|
|
142
|
+
super.getCssClasses('ecl-content-item'),
|
|
113
143
|
this.isStack ? 'ecl-content-item--stack' : '',
|
|
114
144
|
this.isInline ? 'ecl-content-item--inline' : '',
|
|
115
|
-
this.hasDivider() ? 'ecl-content-item--divider' : ''
|
|
145
|
+
this.hasDivider() ? 'ecl-content-item--divider' : ''
|
|
146
|
+
].join(' ').trim();
|
|
116
147
|
}
|
|
117
148
|
/**
|
|
118
149
|
* Lifecycle hook called after content projection.
|
|
119
150
|
* Sets layout flags and attaches interactivity behavior to image and title.
|
|
120
151
|
*/
|
|
121
152
|
ngAfterContentInit() {
|
|
122
|
-
|
|
123
|
-
|
|
153
|
+
const eclContentBlock = this.eclContentBlock();
|
|
154
|
+
if (eclContentBlock) {
|
|
155
|
+
eclContentBlock.class = 'ecl-content-item__content-block';
|
|
124
156
|
}
|
|
125
|
-
|
|
126
|
-
|
|
157
|
+
const eclDateBlock = this.eclDateBlock();
|
|
158
|
+
if (eclDateBlock) {
|
|
159
|
+
eclDateBlock.class = 'ecl-content-item__date';
|
|
127
160
|
this.isInline = true;
|
|
128
161
|
}
|
|
129
|
-
|
|
162
|
+
const eclContentItemPicture = this.eclContentItemPicture();
|
|
163
|
+
if (eclContentItemPicture && eclContentItemPicture.position() === 'top') {
|
|
130
164
|
this.isStack = true;
|
|
131
165
|
}
|
|
132
166
|
if (isPlatformBrowser(this.platformId)) {
|
|
@@ -142,8 +176,8 @@ class EclContentItemComponent extends ECLBaseDirective {
|
|
|
142
176
|
* Only applies when both image and linked title are available.
|
|
143
177
|
*/
|
|
144
178
|
attachClickEventToImage() {
|
|
145
|
-
const link = this.eclContentBlockTitle?.eclLink;
|
|
146
|
-
const imgEl = this.eclContentItemImage?.el?.nativeElement;
|
|
179
|
+
const link = this.eclContentBlockTitle()?.eclLink;
|
|
180
|
+
const imgEl = this.eclContentItemImage()?.el?.nativeElement;
|
|
147
181
|
if (!link || !imgEl)
|
|
148
182
|
return;
|
|
149
183
|
this.renderer.setStyle(imgEl, 'cursor', 'pointer');
|
|
@@ -153,27 +187,12 @@ class EclContentItemComponent extends ECLBaseDirective {
|
|
|
153
187
|
});
|
|
154
188
|
}
|
|
155
189
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: EclContentItemComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
156
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.
|
|
190
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "22.0.5", type: EclContentItemComponent, isStandalone: true, selector: "ecl-content-item", inputs: { hasDivider: { classPropertyName: "hasDivider", publicName: "hasDivider", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "attr.role": "this.role", "class": "this.cssClasses" } }, queries: [{ propertyName: "eclContentBlock", first: true, predicate: i0.forwardRef(() => EclContentBlockComponent), descendants: true, isSignal: true }, { propertyName: "eclDateBlock", first: true, predicate: i0.forwardRef(() => EclDateBlockComponent), descendants: true, isSignal: true }, { propertyName: "eclContentItemPicture", first: true, predicate: i0.forwardRef(() => EclContentItemPictureDirective), descendants: true, isSignal: true }, { propertyName: "eclContentBlockTitle", first: true, predicate: i0.forwardRef(() => EclContentBlockTitleDirective), descendants: true, isSignal: true }, { propertyName: "eclContentItemImage", first: true, predicate: i0.forwardRef(() => EclContentItemImageDirective), descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<ng-content></ng-content>\n" }); }
|
|
157
191
|
}
|
|
158
192
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: EclContentItemComponent, decorators: [{
|
|
159
193
|
type: Component,
|
|
160
194
|
args: [{ selector: 'ecl-content-item', template: "<ng-content></ng-content>\n" }]
|
|
161
|
-
}], propDecorators: { hasDivider: [{ type: i0.Input, args: [{ isSignal: true, alias: "hasDivider", required: false }] }], eclContentBlock: [{
|
|
162
|
-
type: ContentChild,
|
|
163
|
-
args: [forwardRef(() => EclContentBlockComponent)]
|
|
164
|
-
}], eclDateBlock: [{
|
|
165
|
-
type: ContentChild,
|
|
166
|
-
args: [forwardRef(() => EclDateBlockComponent)]
|
|
167
|
-
}], eclContentItemPicture: [{
|
|
168
|
-
type: ContentChild,
|
|
169
|
-
args: [forwardRef(() => EclContentItemPictureDirective)]
|
|
170
|
-
}], eclContentBlockTitle: [{
|
|
171
|
-
type: ContentChild,
|
|
172
|
-
args: [forwardRef(() => EclContentBlockTitleDirective), { descendants: true }]
|
|
173
|
-
}], eclContentItemImage: [{
|
|
174
|
-
type: ContentChild,
|
|
175
|
-
args: [forwardRef(() => EclContentItemImageDirective), { descendants: true }]
|
|
176
|
-
}], role: [{
|
|
195
|
+
}], propDecorators: { hasDivider: [{ type: i0.Input, args: [{ isSignal: true, alias: "hasDivider", required: false }] }], eclContentBlock: [{ type: i0.ContentChild, args: [forwardRef(() => EclContentBlockComponent), { isSignal: true }] }], eclDateBlock: [{ type: i0.ContentChild, args: [forwardRef(() => EclDateBlockComponent), { isSignal: true }] }], eclContentItemPicture: [{ type: i0.ContentChild, args: [forwardRef(() => EclContentItemPictureDirective), { isSignal: true }] }], eclContentBlockTitle: [{ type: i0.ContentChild, args: [forwardRef(() => EclContentBlockTitleDirective), { isSignal: true }] }], eclContentItemImage: [{ type: i0.ContentChild, args: [forwardRef(() => EclContentItemImageDirective), { isSignal: true }] }], role: [{
|
|
177
196
|
type: HostBinding,
|
|
178
197
|
args: ['attr.role']
|
|
179
198
|
}], cssClasses: [{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eui-ecl-components-ecl-content-item.mjs","sources":["../../components/ecl-content-item/ecl-content-item-image.directive.ts","../../components/ecl-content-item/ecl-content-item.component.ts","../../components/ecl-content-item/ecl-content-item.component.html","../../components/ecl-content-item/index.ts","../../components/ecl-content-item/eui-ecl-components-ecl-content-item.ts"],"sourcesContent":["import { Directive, HostBinding, ElementRef, booleanAttribute, inject, input } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Directive used to style and configure the image container (e.g., picture) within a content item.\n * It allows adjusting size, position, and zoom behavior of the image block.\n */\n@Directive({\n selector: '[eclContentItemPicture]',\n host: {\n '[class.ecl-picture--zoom]': 'hasZoom()',\n },\n})\nexport class EclContentItemPictureDirective extends ECLBaseDirective {\n /**\n * Controls the size of the picture. Default is 'large'.\n * Accepted values: 'small' | 'large'\n */\n readonly size = input<'small' | 'large'>('large');\n\n /**\n * Defines the position of the picture relative to the content.\n * Accepted values: 'left' | 'right' | 'top'\n * Default is 'left'.\n */\n readonly position = input<'left' | 'right' | 'top'>('left');\n\n /**\n * If true, enables a zoom effect on hover.\n */\n readonly hasZoom = input(false, { transform: booleanAttribute });\n\n /**\n * Computed CSS classes for the host element based on size and position.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [\n super.getCssClasses('ecl-content-item__picture ecl-picture'),\n `ecl-content-item__picture--${this.size()}`,\n `ecl-content-item__picture--${this.position()}`,\n ]\n .join(' ')\n .trim();\n }\n}\n\n/**\n * Directive used for styling the inner image element inside the content item.\n * Also used programmatically for interaction bindings.\n */\n@Directive({\n selector: '[eclContentItemImage]',\n})\nexport class EclContentItemImageDirective extends ECLBaseDirective {\n el = inject(ElementRef);\n\n /**\n * Computed CSS classes for the host image element.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-content-item__image')].join(' ').trim();\n }\n}\n","import {\n AfterContentInit,\n booleanAttribute,\n Component,\n ContentChild,\n forwardRef,\n HostBinding,\n Renderer2,\n inject,\n PLATFORM_ID,\n input,\n OnDestroy,\n} from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclContentBlockComponent, EclContentBlockTitleDirective } from '@eui/ecl/components/ecl-content-block';\nimport { EclDateBlockComponent } from '@eui/ecl/components/ecl-date-block';\nimport { EclContentItemImageDirective, EclContentItemPictureDirective } from './ecl-content-item-image.directive';\nimport { isPlatformBrowser } from '@angular/common';\n\n@Component({\n selector: 'ecl-content-item',\n templateUrl: './ecl-content-item.component.html',\n})\nexport class EclContentItemComponent extends ECLBaseDirective implements AfterContentInit, OnDestroy {\n /**\n * Whether to display a divider below the content item.\n * When true, the component will have a visual divider applied.\n * Default is false.\n */\n readonly hasDivider = input(false, { transform: booleanAttribute });\n\n /**\n * Reference to projected content block.\n * Used to apply internal styling and structure.\n */\n @ContentChild(forwardRef(() => EclContentBlockComponent)) eclContentBlock: EclContentBlockComponent;\n\n /**\n * Reference to projected date block component.\n * Used to set styling and determine layout mode.\n */\n @ContentChild(forwardRef(() => EclDateBlockComponent)) eclDateBlock: EclDateBlockComponent;\n\n /**\n * Reference to projected picture directive, used to determine layout mode (stacked).\n */\n @ContentChild(forwardRef(() => EclContentItemPictureDirective)) eclContentItemPicture: EclContentItemPictureDirective;\n\n /**\n * Reference to projected title directive inside the content block.\n * Used for linking behavior.\n */\n @ContentChild(forwardRef(() => EclContentBlockTitleDirective), { descendants: true }) eclContentBlockTitle: EclContentBlockTitleDirective;\n\n /**\n * Reference to projected image directive.\n * Used to bind interaction behavior (click propagation).\n */\n @ContentChild(forwardRef(() => EclContentItemImageDirective), { descendants: true }) eclContentItemImage: EclContentItemImageDirective;\n\n /**\n * ARIA role attribute for the host element.\n * Set to \"article\" to denote standalone content.\n */\n @HostBinding('attr.role') role = 'article';\n\n /**\n * Computes the CSS class string applied to the host element,\n * depending on layout and configuration options.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-content-item'),\n this.isStack ? 'ecl-content-item--stack' : '',\n this.isInline ? 'ecl-content-item--inline' : '',\n this.hasDivider() ? 'ecl-content-item--divider' : '' ].join(' ').trim();\n }\n\n private isStack = false;\n private isInline = false;\n private renderer = inject(Renderer2);\n private unlistenImageClick?: () => void;\n private platformId = inject(PLATFORM_ID);\n\n /**\n * Lifecycle hook called after content projection.\n * Sets layout flags and attaches interactivity behavior to image and title.\n */\n ngAfterContentInit(): void {\n if (this.eclContentBlock) {\n this.eclContentBlock.class = 'ecl-content-item__content-block';\n }\n\n if (this.eclDateBlock) {\n this.eclDateBlock.class = 'ecl-content-item__date';\n this.isInline = true;\n }\n\n if (this.eclContentItemPicture && this.eclContentItemPicture.position() === 'top') {\n this.isStack = true;\n }\n\n if (isPlatformBrowser(this.platformId)) {\n this.attachClickEventToImage();\n }\n }\n\n ngOnDestroy(): void {\n this.unlistenImageClick?.();\n this.unlistenImageClick = undefined;\n }\n\n /**\n * Attaches click behavior to image so it triggers the link defined in the title.\n * Only applies when both image and linked title are available.\n */\n private attachClickEventToImage(): void {\n const link = this.eclContentBlockTitle?.eclLink;\n const imgEl = this.eclContentItemImage?.el?.nativeElement;\n\n if (!link || !imgEl) return;\n\n this.renderer.setStyle(imgEl, 'cursor', 'pointer');\n\n this.unlistenImageClick?.(); // avoid duplicates if called twice\n this.unlistenImageClick = this.renderer.listen(imgEl, 'click', () => {\n link.onClick();\n });\n }\n}\n","<ng-content></ng-content>\n","import { EclContentItemImageDirective, EclContentItemPictureDirective } from './ecl-content-item-image.directive';\nimport { EclContentItemComponent } from './ecl-content-item.component';\n\nexport * from './ecl-content-item-image.directive';\nexport * from './ecl-content-item.component';\n\nexport const EUI_ECL_CONTENT_ITEM = [\n EclContentItemImageDirective, EclContentItemPictureDirective,\n EclContentItemComponent,\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-content-item.mjs","sources":["../../components/ecl-content-item/ecl-content-item-image.directive.ts","../../components/ecl-content-item/ecl-content-item.component.ts","../../components/ecl-content-item/ecl-content-item.component.html","../../components/ecl-content-item/index.ts","../../components/ecl-content-item/eui-ecl-components-ecl-content-item.ts"],"sourcesContent":["import { Directive, HostBinding, ElementRef, booleanAttribute, inject, input } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Directive used to style and configure the image container (e.g., picture) within a content item.\n * It allows adjusting size, position, and zoom behavior of the image block.\n */\n@Directive({\n selector: '[eclContentItemPicture]',\n host: {\n '[class.ecl-picture--zoom]': 'hasZoom()',\n },\n})\nexport class EclContentItemPictureDirective extends ECLBaseDirective {\n /**\n * Controls the size of the picture. Default is 'large'.\n * Accepted values: 'small' | 'large'\n */\n readonly size = input<'small' | 'large'>('large');\n\n /**\n * Defines the position of the picture relative to the content.\n * Accepted values: 'left' | 'right' | 'top'\n * Default is 'left'.\n */\n readonly position = input<'left' | 'right' | 'top'>('left');\n\n /**\n * If true, enables a zoom effect on hover.\n */\n readonly hasZoom = input(false, { transform: booleanAttribute });\n\n /**\n * Computed CSS classes for the host element based on size and position.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [\n super.getCssClasses('ecl-content-item__picture ecl-picture'),\n `ecl-content-item__picture--${this.size()}`,\n `ecl-content-item__picture--${this.position()}`,\n ]\n .join(' ')\n .trim();\n }\n}\n\n/**\n * Directive used for styling the inner image element inside the content item.\n * Also used programmatically for interaction bindings.\n */\n@Directive({\n selector: '[eclContentItemImage]',\n})\nexport class EclContentItemImageDirective extends ECLBaseDirective {\n el = inject(ElementRef);\n\n /**\n * Computed CSS classes for the host image element.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-content-item__image')].join(' ').trim();\n }\n}\n","import {\n AfterContentInit,\n booleanAttribute,\n Component,\n forwardRef,\n HostBinding,\n Renderer2,\n inject,\n PLATFORM_ID,\n input,\n OnDestroy,\n contentChild,\n} from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclContentBlockComponent, EclContentBlockTitleDirective } from '@eui/ecl/components/ecl-content-block';\nimport { EclDateBlockComponent } from '@eui/ecl/components/ecl-date-block';\nimport { EclContentItemImageDirective, EclContentItemPictureDirective } from './ecl-content-item-image.directive';\nimport { isPlatformBrowser } from '@angular/common';\n\n@Component({\n selector: 'ecl-content-item',\n templateUrl: './ecl-content-item.component.html',\n})\nexport class EclContentItemComponent extends ECLBaseDirective implements AfterContentInit, OnDestroy {\n /**\n * Whether to display a divider below the content item.\n * When true, the component will have a visual divider applied.\n * Default is false.\n */\n readonly hasDivider = input(false, { transform: booleanAttribute });\n\n /**\n * Reference to projected content block.\n * Used to apply internal styling and structure.\n */\n readonly eclContentBlock = contentChild(forwardRef(() => EclContentBlockComponent));\n\n /**\n * Reference to projected date block component.\n * Used to set styling and determine layout mode.\n */\n readonly eclDateBlock = contentChild(forwardRef(() => EclDateBlockComponent));\n\n /**\n * Reference to projected picture directive, used to determine layout mode (stacked).\n */\n readonly eclContentItemPicture = contentChild(forwardRef(() => EclContentItemPictureDirective));\n\n /**\n * Reference to projected title directive inside the content block.\n * Used for linking behavior.\n */\n readonly eclContentBlockTitle = contentChild(forwardRef(() => EclContentBlockTitleDirective));\n\n /**\n * Reference to projected image directive.\n * Used to bind interaction behavior (click propagation).\n */\n readonly eclContentItemImage = contentChild(forwardRef(() => EclContentItemImageDirective));\n\n /**\n * ARIA role attribute for the host element.\n * Set to \"article\" to denote standalone content.\n */\n @HostBinding('attr.role') role = 'article';\n\n /**\n * Computes the CSS class string applied to the host element,\n * depending on layout and configuration options.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [\n super.getCssClasses('ecl-content-item'),\n this.isStack ? 'ecl-content-item--stack' : '',\n this.isInline ? 'ecl-content-item--inline' : '',\n this.hasDivider() ? 'ecl-content-item--divider' : '' ].join(' ').trim();\n }\n\n private isStack = false;\n private isInline = false;\n private renderer = inject(Renderer2);\n private unlistenImageClick?: () => void;\n private platformId = inject(PLATFORM_ID);\n\n /**\n * Lifecycle hook called after content projection.\n * Sets layout flags and attaches interactivity behavior to image and title.\n */\n ngAfterContentInit(): void {\n const eclContentBlock = this.eclContentBlock();\n if (eclContentBlock) {\n eclContentBlock.class = 'ecl-content-item__content-block';\n }\n\n const eclDateBlock = this.eclDateBlock();\n if (eclDateBlock) {\n eclDateBlock.class = 'ecl-content-item__date';\n this.isInline = true;\n }\n\n const eclContentItemPicture = this.eclContentItemPicture();\n if (eclContentItemPicture && eclContentItemPicture.position() === 'top') {\n this.isStack = true;\n }\n\n if (isPlatformBrowser(this.platformId)) {\n this.attachClickEventToImage();\n }\n }\n\n ngOnDestroy(): void {\n this.unlistenImageClick?.();\n this.unlistenImageClick = undefined;\n }\n\n /**\n * Attaches click behavior to image so it triggers the link defined in the title.\n * Only applies when both image and linked title are available.\n */\n private attachClickEventToImage(): void {\n const link = this.eclContentBlockTitle()?.eclLink;\n const imgEl = this.eclContentItemImage()?.el?.nativeElement;\n\n if (!link || !imgEl) return;\n\n this.renderer.setStyle(imgEl, 'cursor', 'pointer');\n\n this.unlistenImageClick?.(); // avoid duplicates if called twice\n this.unlistenImageClick = this.renderer.listen(imgEl, 'click', () => {\n link.onClick();\n });\n }\n}\n","<ng-content></ng-content>\n","import { EclContentItemImageDirective, EclContentItemPictureDirective } from './ecl-content-item-image.directive';\nimport { EclContentItemComponent } from './ecl-content-item.component';\n\nexport * from './ecl-content-item-image.directive';\nexport * from './ecl-content-item.component';\n\nexport const EUI_ECL_CONTENT_ITEM = [\n EclContentItemImageDirective, EclContentItemPictureDirective,\n EclContentItemComponent,\n] as const;","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|