@eui/ecl 22.0.0-alpha.4 → 22.0.0-alpha.6

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.
Files changed (59) hide show
  1. package/docs/changelog.html +274 -0
  2. package/docs/components/EclDescriptionListDefinitionComponent.html +6 -44
  3. package/docs/components/EclIconComponent.html +1 -1
  4. package/docs/components/EclListIllustrationComponent.html +0 -171
  5. package/docs/components/EclListIllustrationItemComponent.html +77 -83
  6. package/docs/components/EclLoadingIndicatorComponent.html +4 -91
  7. package/docs/components/EclSocialMediaFollowItemComponent.html +10 -10
  8. package/docs/components/EclStoryCardComponent.html +1 -1
  9. package/docs/directives/EclDescriptionListDefinitionItemDirective.html +6 -47
  10. package/docs/directives/EclDescriptionListDefinitionListDirective.html +0 -116
  11. package/docs/directives/EclLabelDirective.html +0 -46
  12. package/docs/directives/EclLinkDirective.html +0 -39
  13. package/docs/directives/EclLoadingIndicatorLabelDirective.html +0 -61
  14. package/docs/directives/EclLoadingIndicatorOverlayDirective.html +0 -45
  15. package/docs/directives/EclMediaContainerCaptionDirective.html +0 -39
  16. package/docs/directives/EclMediaContainerCreditDirective.html +0 -39
  17. package/docs/directives/EclMediaContainerIframeDirective.html +13 -19
  18. package/docs/directives/EclMediaContainerItemAudioDescriptionDirective.html +0 -39
  19. package/docs/directives/EclMediaContainerItemDirective.html +0 -39
  20. package/docs/directives/EclMediaContainerPictureDirective.html +0 -39
  21. package/docs/js/search/search_index.js +2 -2
  22. package/docs/json/EclIconComponent.md +1 -1
  23. package/docs/json/EclMediaContainerIframeDirective.md +0 -1
  24. package/docs/json/documentation.json +242 -561
  25. package/docs/llms.txt +8 -12
  26. package/docs/properties.html +1 -1
  27. package/fesm2022/eui-ecl-components-ecl-icon.mjs.map +1 -1
  28. package/fesm2022/eui-ecl-components-ecl-label.mjs +6 -6
  29. package/fesm2022/eui-ecl-components-ecl-label.mjs.map +1 -1
  30. package/fesm2022/eui-ecl-components-ecl-link.mjs +10 -13
  31. package/fesm2022/eui-ecl-components-ecl-link.mjs.map +1 -1
  32. package/fesm2022/eui-ecl-components-ecl-list-illustration.mjs +19 -30
  33. package/fesm2022/eui-ecl-components-ecl-list-illustration.mjs.map +1 -1
  34. package/fesm2022/eui-ecl-components-ecl-list.mjs +44 -41
  35. package/fesm2022/eui-ecl-components-ecl-list.mjs.map +1 -1
  36. package/fesm2022/eui-ecl-components-ecl-loading-indicator.mjs +17 -20
  37. package/fesm2022/eui-ecl-components-ecl-loading-indicator.mjs.map +1 -1
  38. package/fesm2022/eui-ecl-components-ecl-media-container.mjs +36 -33
  39. package/fesm2022/eui-ecl-components-ecl-media-container.mjs.map +1 -1
  40. package/fesm2022/eui-ecl-components-ecl-menu.mjs.map +1 -1
  41. package/fesm2022/eui-ecl-components-ecl-site-footer.mjs +2 -2
  42. package/fesm2022/eui-ecl-components-ecl-site-footer.mjs.map +1 -1
  43. package/fesm2022/eui-ecl-components-ecl-social-media-follow.mjs +6 -6
  44. package/fesm2022/eui-ecl-components-ecl-social-media-follow.mjs.map +1 -1
  45. package/fesm2022/eui-ecl-components-ecl-story-card.mjs +2 -2
  46. package/fesm2022/eui-ecl-components-ecl-story-card.mjs.map +1 -1
  47. package/package.json +1 -1
  48. package/types/eui-ecl-components-ecl-label.d.ts.map +1 -1
  49. package/types/eui-ecl-components-ecl-link.d.ts +2 -4
  50. package/types/eui-ecl-components-ecl-link.d.ts.map +1 -1
  51. package/types/eui-ecl-components-ecl-list-illustration.d.ts +3 -3
  52. package/types/eui-ecl-components-ecl-list-illustration.d.ts.map +1 -1
  53. package/types/eui-ecl-components-ecl-list.d.ts +9 -12
  54. package/types/eui-ecl-components-ecl-list.d.ts.map +1 -1
  55. package/types/eui-ecl-components-ecl-loading-indicator.d.ts.map +1 -1
  56. package/types/eui-ecl-components-ecl-media-container.d.ts +7 -2
  57. package/types/eui-ecl-components-ecl-media-container.d.ts.map +1 -1
  58. package/types/eui-ecl-components-ecl-social-media-follow.d.ts +3 -3
  59. package/types/eui-ecl-components-ecl-social-media-follow.d.ts.map +1 -1
@@ -472,7 +472,7 @@ class EclStoryCardComponent extends ECLBaseDirective {
472
472
  return Array.from({ length: this.totalSlides() }, (_, i) => i);
473
473
  }
474
474
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: EclStoryCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
475
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.2", type: EclStoryCardComponent, isStandalone: true, selector: "section[eclStoryCard]", inputs: { eclTitle: { classPropertyName: "eclTitle", publicName: "eclTitle", isSignal: true, isRequired: false, transformFunction: null }, eclDescription: { classPropertyName: "eclDescription", publicName: "eclDescription", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, isAutoplay: { classPropertyName: "isAutoplay", publicName: "isAutoplay", isSignal: true, isRequired: false, transformFunction: null }, autoplayDelay: { classPropertyName: "autoplayDelay", publicName: "autoplayDelay", isSignal: true, isRequired: false, transformFunction: null }, eclId: { classPropertyName: "eclId", publicName: "id", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { selectionChange: "selectionChange" }, host: { properties: { "id": "componentId()", "class": "cssClasses()", "attr.aria-labelledby": "titleId()", "style.--ecl-story-card-slide-duration": "slideDuration()" } }, queries: [{ propertyName: "items", predicate: EclStoryCardItemComponent, descendants: true, isSignal: true }, { propertyName: "detailsPanels", predicate: EclStoryCardGridDetailsComponent, descendants: true, isSignal: true }], viewQueries: [{ propertyName: "emblaRef", first: true, predicate: EmblaCarouselDirective, descendants: true, isSignal: true }, { propertyName: "carouselImageWrappers", predicate: ["carouselImageWrapper"], descendants: true, isSignal: true }, { propertyName: "carouselContentWrappers", predicate: ["carouselContentWrapper"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "@if (eclTitle() || eclDescription()) {\n<div class=\"ecl-story-card__header\">\n @if (eclTitle()) {\n <div class=\"ecl-story-card__title\" [attr.id]=\"titleId()\">{{ eclTitle() }}</div>\n }\n @if (eclDescription()) {\n <div class=\"ecl-story-card__description\">{{ eclDescription() }}</div>\n }\n</div>\n}\n\n<!-- Mobile: Embla Carousel (auto-generated from items + details) -->\n<div class=\"ecl-story-card__carousel\">\n <div class=\"ecl-story-card__carousel-viewport\"\n role=\"region\"\n [attr.aria-label]=\"'ecl.story-card.SLIDER-LABEL' | translate\"\n emblaCarousel\n [options]=\"emblaOptions\"\n [subscribeToEvents]=\"subscribeToEvents\"\n (emblaChange)=\"onEmblaChange($event)\">\n <ul class=\"ecl-story-card__carousel-container\">\n @for (item of items(); track i; let i = $index) {\n <li class=\"ecl-story-card__carousel-slide\"\n [attr.aria-hidden]=\"i !== activeSlideIndex() ? true : null\">\n <article class=\"ecl-story-card__card\">\n <div class=\"ecl-story-card__image-wrapper\" #carouselImageWrapper>\n </div>\n <div class=\"ecl-story-card__content\" #carouselContentWrapper>\n @if (detailsPanels()[i]; as panel) {\n @if (panel.eclTitle()) {\n <div class=\"ecl-story-card__card-title\">{{ panel.eclTitle() }}</div>\n }\n @if (panel.description()) {\n <div class=\"ecl-story-card__card-description\">{{ panel.description() }}</div>\n }\n }\n </div>\n </article>\n </li>\n }\n </ul>\n </div>\n\n <!-- Carousel Controls -->\n @if (totalSlides() > 1) {\n <div class=\"ecl-story-card__pager\">\n <button class=\"ecl-story-card__prev\"\n [disabled]=\"prevDisabled()\"\n (click)=\"onCarouselPrevClick()\"\n [attr.aria-label]=\"'ecl.story-card.SHOW-PREV-SLIDE' | translate\">\n <ecl-icon icon=\"corner-arrow\" size=\"s\" transform=\"rotate-270\"></ecl-icon>\n <span class=\"ecl-story-card__prev-label\">\n {{ 'ecl.story-card.PREVIOUS' | translate }}\n </span>\n </button>\n\n <div class=\"ecl-story-card__dots\">\n @for (dotIndex of getDotIndices(); track dotIndex) {\n <button\n #dotButton\n class=\"ecl-story-card__dot\"\n [class.ecl-story-card__dot--active]=\"dotIndex === activeSlideIndex()\"\n [class.is-prev]=\"dotIndex === activeSlideIndex() - 1\"\n [attr.aria-label]=\"'ecl.story-card.GO-TO-SLIDE' | translate: { current: dotIndex + 1, total: totalSlides() }\"\n (click)=\"goToSlide(dotIndex)\">\n </button>\n }\n </div>\n\n <button class=\"ecl-story-card__next\"\n [disabled]=\"nextDisabled()\"\n (click)=\"onCarouselNextClick()\"\n [attr.aria-label]=\"'ecl.story-card.SHOW-NEXT-SLIDE' | translate\">\n <span class=\"ecl-story-card__next-label\">\n {{ 'ecl.story-card.NEXT' | translate }}\n </span>\n <ecl-icon icon=\"corner-arrow\" size=\"s\" transform=\"rotate-90\"></ecl-icon>\n </button>\n </div>\n }\n</div>\n\n<!-- Desktop: Grid with Accordion (user-authored content projected here) -->\n<div class=\"ecl-story-card__grid\">\n <ng-content select=\"ul[eclStoryCardList]\"></ng-content>\n <ng-content select=\"[eclStoryCardGridDetails]\"></ng-content>\n\n <!-- Grid Controls -->\n @if (totalSlides() > 1) {\n <div class=\"ecl-story-card__grid-controls\">\n <button class=\"ecl-button ecl-button--tertiary ecl-button--neutral ecl-story-card__grid-prev ecl-button--icon-only\"\n type=\"button\"\n (click)=\"onGridPrevClick()\"\n [attr.aria-label]=\"'ecl.story-card.PREVIOUS' | translate\">\n <span class=\"ecl-button__container\">\n <span class=\"ecl-button__label\" data-ecl-label=\"true\">\n {{ 'ecl.story-card.PREVIOUS' | translate }}\n </span>\n <ecl-icon iconSet=\"phosphor\" icon=\"caret-left\" size=\"l\"></ecl-icon>\n </span>\n </button>\n\n <button class=\"ecl-button ecl-button--secondary ecl-button--neutral ecl-story-card__grid-play ecl-button--icon-only\"\n type=\"button\"\n [style.display]=\"isAutoPlaying() ? 'none' : 'flex'\"\n (click)=\"onPlayClick()\"\n [attr.aria-label]=\"'ecl.story-card.PLAY' | translate\">\n <span class=\"ecl-button__container\">\n <span class=\"ecl-button__label\" data-ecl-label=\"true\">\n {{ 'ecl.story-card.PLAY' | translate }}\n </span>\n <ecl-icon iconSet=\"phosphor-fill\" icon=\"play\" size=\"l\"></ecl-icon>\n </span>\n </button>\n\n <button class=\"ecl-button ecl-button--secondary ecl-button--neutral ecl-story-card__grid-pause ecl-button--icon-only\"\n type=\"button\"\n [style.display]=\"isAutoPlaying() ? 'flex' : 'none'\"\n (click)=\"onPauseClick()\"\n [attr.aria-label]=\"'ecl.story-card.PAUSE' | translate\">\n <span class=\"ecl-button__container\">\n <span class=\"ecl-button__label\" data-ecl-label=\"true\">\n {{ 'ecl.story-card.PAUSE' | translate }}\n </span>\n <ecl-icon iconSet=\"phosphor-fill\" icon=\"pause\" size=\"l\"></ecl-icon>\n </span>\n </button>\n\n <button class=\"ecl-button ecl-button--tertiary ecl-button--neutral ecl-story-card__grid-next ecl-button--icon-only\"\n type=\"button\"\n (click)=\"onGridNextClick()\"\n [attr.aria-label]=\"'ecl.story-card.NEXT' | translate\">\n <span class=\"ecl-button__container\">\n <span class=\"ecl-button__label\" data-ecl-label=\"true\">\n {{ 'ecl.story-card.NEXT' | translate }}\n </span>\n <ecl-icon iconSet=\"phosphor\" icon=\"caret-right\" size=\"l\"></ecl-icon>\n </span>\n </button>\n </div>\n }\n</div>\n", dependencies: [{ kind: "component", type: EclIconComponent, selector: "ecl-icon", inputs: ["iconSet", "icon", "size", "color", "transform", "ariaLabelledby", "role", "title", "ariaHidden", "focusable", "isFlipHorizontal"] }, { kind: "directive", type: EmblaCarouselDirective, selector: "[emblaCarousel]", inputs: ["options", "plugins", "subscribeToEvents", "eventsThrottleTime"], outputs: ["emblaChange"], exportAs: ["emblaCarousel"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
475
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.2", type: EclStoryCardComponent, isStandalone: true, selector: "section[eclStoryCard]", inputs: { eclTitle: { classPropertyName: "eclTitle", publicName: "eclTitle", isSignal: true, isRequired: false, transformFunction: null }, eclDescription: { classPropertyName: "eclDescription", publicName: "eclDescription", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, isAutoplay: { classPropertyName: "isAutoplay", publicName: "isAutoplay", isSignal: true, isRequired: false, transformFunction: null }, autoplayDelay: { classPropertyName: "autoplayDelay", publicName: "autoplayDelay", isSignal: true, isRequired: false, transformFunction: null }, eclId: { classPropertyName: "eclId", publicName: "id", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { selectionChange: "selectionChange" }, host: { properties: { "id": "componentId()", "class": "cssClasses()", "attr.aria-labelledby": "titleId()", "style.--ecl-story-card-slide-duration": "slideDuration()" } }, queries: [{ propertyName: "items", predicate: EclStoryCardItemComponent, descendants: true, isSignal: true }, { propertyName: "detailsPanels", predicate: EclStoryCardGridDetailsComponent, descendants: true, isSignal: true }], viewQueries: [{ propertyName: "emblaRef", first: true, predicate: EmblaCarouselDirective, descendants: true, isSignal: true }, { propertyName: "carouselImageWrappers", predicate: ["carouselImageWrapper"], descendants: true, isSignal: true }, { propertyName: "carouselContentWrappers", predicate: ["carouselContentWrapper"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "@if (eclTitle() || eclDescription()) {\n<div class=\"ecl-story-card__header\">\n @if (eclTitle()) {\n <div class=\"ecl-story-card__title\" [attr.id]=\"titleId()\">{{ eclTitle() }}</div>\n }\n @if (eclDescription()) {\n <div class=\"ecl-story-card__description\">{{ eclDescription() }}</div>\n }\n</div>\n}\n\n<!-- Mobile: Embla Carousel (auto-generated from items + details) -->\n<div class=\"ecl-story-card__carousel\">\n <div class=\"ecl-story-card__carousel-viewport\"\n role=\"region\"\n [attr.aria-label]=\"'ecl.story-card.SLIDER-LABEL' | translate\"\n emblaCarousel\n [options]=\"emblaOptions\"\n [subscribeToEvents]=\"subscribeToEvents\"\n (emblaChange)=\"onEmblaChange($event)\">\n <ul class=\"ecl-story-card__carousel-container\">\n @for (item of items(); track i; let i = $index) {\n <li class=\"ecl-story-card__carousel-slide\"\n [attr.aria-hidden]=\"i !== activeSlideIndex() ? true : null\">\n <article class=\"ecl-story-card__card\">\n <div class=\"ecl-story-card__image-wrapper\" #carouselImageWrapper>\n </div>\n <div class=\"ecl-story-card__content\" #carouselContentWrapper>\n @if (detailsPanels()[i]; as panel) {\n @if (panel.eclTitle()) {\n <div class=\"ecl-story-card__card-title\">{{ panel.eclTitle() }}</div>\n }\n @if (panel.description()) {\n <div class=\"ecl-story-card__card-description\">{{ panel.description() }}</div>\n }\n }\n </div>\n </article>\n </li>\n }\n </ul>\n </div>\n\n <!-- Carousel Controls -->\n @if (totalSlides() > 1) {\n <div class=\"ecl-story-card__pager\">\n <button class=\"ecl-story-card__prev\"\n [disabled]=\"prevDisabled()\"\n (click)=\"onCarouselPrevClick()\"\n [attr.aria-label]=\"'ecl.story-card.SHOW-PREV-SLIDE' | translate\">\n <ecl-icon icon=\"corner-arrow\" size=\"s\" transform=\"rotate-270\"></ecl-icon>\n <span class=\"ecl-story-card__prev-label\">\n {{ 'ecl.story-card.PREVIOUS' | translate }}\n </span>\n </button>\n\n <div class=\"ecl-story-card__dots\">\n @for (dotIndex of getDotIndices(); track dotIndex) {\n <button\n #dotButton\n class=\"ecl-story-card__dot\"\n [class.ecl-story-card__dot--active]=\"dotIndex === activeSlideIndex()\"\n [class.is-prev]=\"dotIndex === activeSlideIndex() - 1\"\n [attr.aria-label]=\"'ecl.story-card.GO-TO-SLIDE' | translate: { current: dotIndex + 1, total: totalSlides() }\"\n (click)=\"goToSlide(dotIndex)\">\n </button>\n }\n </div>\n\n <button class=\"ecl-story-card__next\"\n [disabled]=\"nextDisabled()\"\n (click)=\"onCarouselNextClick()\"\n [attr.aria-label]=\"'ecl.story-card.SHOW-NEXT-SLIDE' | translate\">\n <span class=\"ecl-story-card__next-label\">\n {{ 'ecl.story-card.NEXT' | translate }}\n </span>\n <ecl-icon icon=\"corner-arrow\" size=\"s\" transform=\"rotate-90\"></ecl-icon>\n </button>\n </div>\n }\n</div>\n\n<!-- Desktop: Grid with Accordion (user-authored content projected here) -->\n<div class=\"ecl-story-card__grid\">\n <ng-content select=\"ul[eclStoryCardList]\"></ng-content>\n <ng-content select=\"[eclStoryCardGridDetails]\"></ng-content>\n\n <!-- Grid Controls -->\n @if (totalSlides() > 1) {\n <div class=\"ecl-story-card__grid-controls\">\n <button class=\"ecl-button ecl-button--tertiary ecl-button--neutral ecl-story-card__grid-prev ecl-button--icon-only\"\n type=\"button\"\n (click)=\"onGridPrevClick()\"\n [attr.aria-label]=\"'ecl.story-card.PREVIOUS' | translate\">\n <span class=\"ecl-button__container\">\n <span class=\"ecl-button__label\">\n {{ 'ecl.story-card.PREVIOUS' | translate }}\n </span>\n <ecl-icon iconSet=\"phosphor\" icon=\"caret-left\" size=\"l\"></ecl-icon>\n </span>\n </button>\n\n <button class=\"ecl-button ecl-button--secondary ecl-button--neutral ecl-story-card__grid-play ecl-button--icon-only\"\n type=\"button\"\n [style.display]=\"isAutoPlaying() ? 'none' : 'flex'\"\n (click)=\"onPlayClick()\"\n [attr.aria-label]=\"'ecl.story-card.PLAY' | translate\">\n <span class=\"ecl-button__container\">\n <span class=\"ecl-button__label\">\n {{ 'ecl.story-card.PLAY' | translate }}\n </span>\n <ecl-icon iconSet=\"phosphor-fill\" icon=\"play\" size=\"l\"></ecl-icon>\n </span>\n </button>\n\n <button class=\"ecl-button ecl-button--secondary ecl-button--neutral ecl-story-card__grid-pause ecl-button--icon-only\"\n type=\"button\"\n [style.display]=\"isAutoPlaying() ? 'flex' : 'none'\"\n (click)=\"onPauseClick()\"\n [attr.aria-label]=\"'ecl.story-card.PAUSE' | translate\">\n <span class=\"ecl-button__container\">\n <span class=\"ecl-button__label\">\n {{ 'ecl.story-card.PAUSE' | translate }}\n </span>\n <ecl-icon iconSet=\"phosphor-fill\" icon=\"pause\" size=\"l\"></ecl-icon>\n </span>\n </button>\n\n <button class=\"ecl-button ecl-button--tertiary ecl-button--neutral ecl-story-card__grid-next ecl-button--icon-only\"\n type=\"button\"\n (click)=\"onGridNextClick()\"\n [attr.aria-label]=\"'ecl.story-card.NEXT' | translate\">\n <span class=\"ecl-button__container\">\n <span class=\"ecl-button__label\">\n {{ 'ecl.story-card.NEXT' | translate }}\n </span>\n <ecl-icon iconSet=\"phosphor\" icon=\"caret-right\" size=\"l\"></ecl-icon>\n </span>\n </button>\n </div>\n }\n</div>\n", dependencies: [{ kind: "component", type: EclIconComponent, selector: "ecl-icon", inputs: ["iconSet", "icon", "size", "color", "transform", "ariaLabelledby", "role", "title", "ariaHidden", "focusable", "isFlipHorizontal"] }, { kind: "directive", type: EmblaCarouselDirective, selector: "[emblaCarousel]", inputs: ["options", "plugins", "subscribeToEvents", "eventsThrottleTime"], outputs: ["emblaChange"], exportAs: ["emblaCarousel"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
476
476
  }
477
477
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: EclStoryCardComponent, decorators: [{
478
478
  type: Component,
@@ -485,7 +485,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImpor
485
485
  TranslatePipe,
486
486
  EclIconComponent,
487
487
  EmblaCarouselDirective,
488
- ], changeDetection: ChangeDetectionStrategy.OnPush, template: "@if (eclTitle() || eclDescription()) {\n<div class=\"ecl-story-card__header\">\n @if (eclTitle()) {\n <div class=\"ecl-story-card__title\" [attr.id]=\"titleId()\">{{ eclTitle() }}</div>\n }\n @if (eclDescription()) {\n <div class=\"ecl-story-card__description\">{{ eclDescription() }}</div>\n }\n</div>\n}\n\n<!-- Mobile: Embla Carousel (auto-generated from items + details) -->\n<div class=\"ecl-story-card__carousel\">\n <div class=\"ecl-story-card__carousel-viewport\"\n role=\"region\"\n [attr.aria-label]=\"'ecl.story-card.SLIDER-LABEL' | translate\"\n emblaCarousel\n [options]=\"emblaOptions\"\n [subscribeToEvents]=\"subscribeToEvents\"\n (emblaChange)=\"onEmblaChange($event)\">\n <ul class=\"ecl-story-card__carousel-container\">\n @for (item of items(); track i; let i = $index) {\n <li class=\"ecl-story-card__carousel-slide\"\n [attr.aria-hidden]=\"i !== activeSlideIndex() ? true : null\">\n <article class=\"ecl-story-card__card\">\n <div class=\"ecl-story-card__image-wrapper\" #carouselImageWrapper>\n </div>\n <div class=\"ecl-story-card__content\" #carouselContentWrapper>\n @if (detailsPanels()[i]; as panel) {\n @if (panel.eclTitle()) {\n <div class=\"ecl-story-card__card-title\">{{ panel.eclTitle() }}</div>\n }\n @if (panel.description()) {\n <div class=\"ecl-story-card__card-description\">{{ panel.description() }}</div>\n }\n }\n </div>\n </article>\n </li>\n }\n </ul>\n </div>\n\n <!-- Carousel Controls -->\n @if (totalSlides() > 1) {\n <div class=\"ecl-story-card__pager\">\n <button class=\"ecl-story-card__prev\"\n [disabled]=\"prevDisabled()\"\n (click)=\"onCarouselPrevClick()\"\n [attr.aria-label]=\"'ecl.story-card.SHOW-PREV-SLIDE' | translate\">\n <ecl-icon icon=\"corner-arrow\" size=\"s\" transform=\"rotate-270\"></ecl-icon>\n <span class=\"ecl-story-card__prev-label\">\n {{ 'ecl.story-card.PREVIOUS' | translate }}\n </span>\n </button>\n\n <div class=\"ecl-story-card__dots\">\n @for (dotIndex of getDotIndices(); track dotIndex) {\n <button\n #dotButton\n class=\"ecl-story-card__dot\"\n [class.ecl-story-card__dot--active]=\"dotIndex === activeSlideIndex()\"\n [class.is-prev]=\"dotIndex === activeSlideIndex() - 1\"\n [attr.aria-label]=\"'ecl.story-card.GO-TO-SLIDE' | translate: { current: dotIndex + 1, total: totalSlides() }\"\n (click)=\"goToSlide(dotIndex)\">\n </button>\n }\n </div>\n\n <button class=\"ecl-story-card__next\"\n [disabled]=\"nextDisabled()\"\n (click)=\"onCarouselNextClick()\"\n [attr.aria-label]=\"'ecl.story-card.SHOW-NEXT-SLIDE' | translate\">\n <span class=\"ecl-story-card__next-label\">\n {{ 'ecl.story-card.NEXT' | translate }}\n </span>\n <ecl-icon icon=\"corner-arrow\" size=\"s\" transform=\"rotate-90\"></ecl-icon>\n </button>\n </div>\n }\n</div>\n\n<!-- Desktop: Grid with Accordion (user-authored content projected here) -->\n<div class=\"ecl-story-card__grid\">\n <ng-content select=\"ul[eclStoryCardList]\"></ng-content>\n <ng-content select=\"[eclStoryCardGridDetails]\"></ng-content>\n\n <!-- Grid Controls -->\n @if (totalSlides() > 1) {\n <div class=\"ecl-story-card__grid-controls\">\n <button class=\"ecl-button ecl-button--tertiary ecl-button--neutral ecl-story-card__grid-prev ecl-button--icon-only\"\n type=\"button\"\n (click)=\"onGridPrevClick()\"\n [attr.aria-label]=\"'ecl.story-card.PREVIOUS' | translate\">\n <span class=\"ecl-button__container\">\n <span class=\"ecl-button__label\" data-ecl-label=\"true\">\n {{ 'ecl.story-card.PREVIOUS' | translate }}\n </span>\n <ecl-icon iconSet=\"phosphor\" icon=\"caret-left\" size=\"l\"></ecl-icon>\n </span>\n </button>\n\n <button class=\"ecl-button ecl-button--secondary ecl-button--neutral ecl-story-card__grid-play ecl-button--icon-only\"\n type=\"button\"\n [style.display]=\"isAutoPlaying() ? 'none' : 'flex'\"\n (click)=\"onPlayClick()\"\n [attr.aria-label]=\"'ecl.story-card.PLAY' | translate\">\n <span class=\"ecl-button__container\">\n <span class=\"ecl-button__label\" data-ecl-label=\"true\">\n {{ 'ecl.story-card.PLAY' | translate }}\n </span>\n <ecl-icon iconSet=\"phosphor-fill\" icon=\"play\" size=\"l\"></ecl-icon>\n </span>\n </button>\n\n <button class=\"ecl-button ecl-button--secondary ecl-button--neutral ecl-story-card__grid-pause ecl-button--icon-only\"\n type=\"button\"\n [style.display]=\"isAutoPlaying() ? 'flex' : 'none'\"\n (click)=\"onPauseClick()\"\n [attr.aria-label]=\"'ecl.story-card.PAUSE' | translate\">\n <span class=\"ecl-button__container\">\n <span class=\"ecl-button__label\" data-ecl-label=\"true\">\n {{ 'ecl.story-card.PAUSE' | translate }}\n </span>\n <ecl-icon iconSet=\"phosphor-fill\" icon=\"pause\" size=\"l\"></ecl-icon>\n </span>\n </button>\n\n <button class=\"ecl-button ecl-button--tertiary ecl-button--neutral ecl-story-card__grid-next ecl-button--icon-only\"\n type=\"button\"\n (click)=\"onGridNextClick()\"\n [attr.aria-label]=\"'ecl.story-card.NEXT' | translate\">\n <span class=\"ecl-button__container\">\n <span class=\"ecl-button__label\" data-ecl-label=\"true\">\n {{ 'ecl.story-card.NEXT' | translate }}\n </span>\n <ecl-icon iconSet=\"phosphor\" icon=\"caret-right\" size=\"l\"></ecl-icon>\n </span>\n </button>\n </div>\n }\n</div>\n" }]
488
+ ], changeDetection: ChangeDetectionStrategy.OnPush, template: "@if (eclTitle() || eclDescription()) {\n<div class=\"ecl-story-card__header\">\n @if (eclTitle()) {\n <div class=\"ecl-story-card__title\" [attr.id]=\"titleId()\">{{ eclTitle() }}</div>\n }\n @if (eclDescription()) {\n <div class=\"ecl-story-card__description\">{{ eclDescription() }}</div>\n }\n</div>\n}\n\n<!-- Mobile: Embla Carousel (auto-generated from items + details) -->\n<div class=\"ecl-story-card__carousel\">\n <div class=\"ecl-story-card__carousel-viewport\"\n role=\"region\"\n [attr.aria-label]=\"'ecl.story-card.SLIDER-LABEL' | translate\"\n emblaCarousel\n [options]=\"emblaOptions\"\n [subscribeToEvents]=\"subscribeToEvents\"\n (emblaChange)=\"onEmblaChange($event)\">\n <ul class=\"ecl-story-card__carousel-container\">\n @for (item of items(); track i; let i = $index) {\n <li class=\"ecl-story-card__carousel-slide\"\n [attr.aria-hidden]=\"i !== activeSlideIndex() ? true : null\">\n <article class=\"ecl-story-card__card\">\n <div class=\"ecl-story-card__image-wrapper\" #carouselImageWrapper>\n </div>\n <div class=\"ecl-story-card__content\" #carouselContentWrapper>\n @if (detailsPanels()[i]; as panel) {\n @if (panel.eclTitle()) {\n <div class=\"ecl-story-card__card-title\">{{ panel.eclTitle() }}</div>\n }\n @if (panel.description()) {\n <div class=\"ecl-story-card__card-description\">{{ panel.description() }}</div>\n }\n }\n </div>\n </article>\n </li>\n }\n </ul>\n </div>\n\n <!-- Carousel Controls -->\n @if (totalSlides() > 1) {\n <div class=\"ecl-story-card__pager\">\n <button class=\"ecl-story-card__prev\"\n [disabled]=\"prevDisabled()\"\n (click)=\"onCarouselPrevClick()\"\n [attr.aria-label]=\"'ecl.story-card.SHOW-PREV-SLIDE' | translate\">\n <ecl-icon icon=\"corner-arrow\" size=\"s\" transform=\"rotate-270\"></ecl-icon>\n <span class=\"ecl-story-card__prev-label\">\n {{ 'ecl.story-card.PREVIOUS' | translate }}\n </span>\n </button>\n\n <div class=\"ecl-story-card__dots\">\n @for (dotIndex of getDotIndices(); track dotIndex) {\n <button\n #dotButton\n class=\"ecl-story-card__dot\"\n [class.ecl-story-card__dot--active]=\"dotIndex === activeSlideIndex()\"\n [class.is-prev]=\"dotIndex === activeSlideIndex() - 1\"\n [attr.aria-label]=\"'ecl.story-card.GO-TO-SLIDE' | translate: { current: dotIndex + 1, total: totalSlides() }\"\n (click)=\"goToSlide(dotIndex)\">\n </button>\n }\n </div>\n\n <button class=\"ecl-story-card__next\"\n [disabled]=\"nextDisabled()\"\n (click)=\"onCarouselNextClick()\"\n [attr.aria-label]=\"'ecl.story-card.SHOW-NEXT-SLIDE' | translate\">\n <span class=\"ecl-story-card__next-label\">\n {{ 'ecl.story-card.NEXT' | translate }}\n </span>\n <ecl-icon icon=\"corner-arrow\" size=\"s\" transform=\"rotate-90\"></ecl-icon>\n </button>\n </div>\n }\n</div>\n\n<!-- Desktop: Grid with Accordion (user-authored content projected here) -->\n<div class=\"ecl-story-card__grid\">\n <ng-content select=\"ul[eclStoryCardList]\"></ng-content>\n <ng-content select=\"[eclStoryCardGridDetails]\"></ng-content>\n\n <!-- Grid Controls -->\n @if (totalSlides() > 1) {\n <div class=\"ecl-story-card__grid-controls\">\n <button class=\"ecl-button ecl-button--tertiary ecl-button--neutral ecl-story-card__grid-prev ecl-button--icon-only\"\n type=\"button\"\n (click)=\"onGridPrevClick()\"\n [attr.aria-label]=\"'ecl.story-card.PREVIOUS' | translate\">\n <span class=\"ecl-button__container\">\n <span class=\"ecl-button__label\">\n {{ 'ecl.story-card.PREVIOUS' | translate }}\n </span>\n <ecl-icon iconSet=\"phosphor\" icon=\"caret-left\" size=\"l\"></ecl-icon>\n </span>\n </button>\n\n <button class=\"ecl-button ecl-button--secondary ecl-button--neutral ecl-story-card__grid-play ecl-button--icon-only\"\n type=\"button\"\n [style.display]=\"isAutoPlaying() ? 'none' : 'flex'\"\n (click)=\"onPlayClick()\"\n [attr.aria-label]=\"'ecl.story-card.PLAY' | translate\">\n <span class=\"ecl-button__container\">\n <span class=\"ecl-button__label\">\n {{ 'ecl.story-card.PLAY' | translate }}\n </span>\n <ecl-icon iconSet=\"phosphor-fill\" icon=\"play\" size=\"l\"></ecl-icon>\n </span>\n </button>\n\n <button class=\"ecl-button ecl-button--secondary ecl-button--neutral ecl-story-card__grid-pause ecl-button--icon-only\"\n type=\"button\"\n [style.display]=\"isAutoPlaying() ? 'flex' : 'none'\"\n (click)=\"onPauseClick()\"\n [attr.aria-label]=\"'ecl.story-card.PAUSE' | translate\">\n <span class=\"ecl-button__container\">\n <span class=\"ecl-button__label\">\n {{ 'ecl.story-card.PAUSE' | translate }}\n </span>\n <ecl-icon iconSet=\"phosphor-fill\" icon=\"pause\" size=\"l\"></ecl-icon>\n </span>\n </button>\n\n <button class=\"ecl-button ecl-button--tertiary ecl-button--neutral ecl-story-card__grid-next ecl-button--icon-only\"\n type=\"button\"\n (click)=\"onGridNextClick()\"\n [attr.aria-label]=\"'ecl.story-card.NEXT' | translate\">\n <span class=\"ecl-button__container\">\n <span class=\"ecl-button__label\">\n {{ 'ecl.story-card.NEXT' | translate }}\n </span>\n <ecl-icon iconSet=\"phosphor\" icon=\"caret-right\" size=\"l\"></ecl-icon>\n </span>\n </button>\n </div>\n }\n</div>\n" }]
489
489
  }], ctorParameters: () => [], propDecorators: { eclTitle: [{ type: i0.Input, args: [{ isSignal: true, alias: "eclTitle", required: false }] }], eclDescription: [{ type: i0.Input, args: [{ isSignal: true, alias: "eclDescription", required: false }] }], variant: [{ type: i0.Input, args: [{ isSignal: true, alias: "variant", required: false }] }], isAutoplay: [{ type: i0.Input, args: [{ isSignal: true, alias: "isAutoplay", required: false }] }], autoplayDelay: [{ type: i0.Input, args: [{ isSignal: true, alias: "autoplayDelay", required: false }] }], eclId: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], selectionChange: [{ type: i0.Output, args: ["selectionChange"] }], items: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => EclStoryCardItemComponent), { ...{ descendants: true }, isSignal: true }] }], detailsPanels: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => EclStoryCardGridDetailsComponent), { ...{ descendants: true }, isSignal: true }] }], emblaRef: [{ type: i0.ViewChild, args: [i0.forwardRef(() => EmblaCarouselDirective), { isSignal: true }] }], carouselImageWrappers: [{ type: i0.ViewChildren, args: ['carouselImageWrapper', { isSignal: true }] }], carouselContentWrappers: [{ type: i0.ViewChildren, args: ['carouselContentWrapper', { isSignal: true }] }] } });
490
490
 
491
491
  const EUI_ECL_STORY_CARD = [
@@ -1 +1 @@
1
- {"version":3,"file":"eui-ecl-components-ecl-story-card.mjs","sources":["../../components/ecl-story-card/ecl-story-card-directives.ts","../../components/ecl-story-card/ecl-story-card-item/ecl-story-card-item.component.ts","../../components/ecl-story-card/ecl-story-card-item/ecl-story-card-item.component.html","../../components/ecl-story-card/ecl-story-card-grid-details/ecl-story-card-grid-details.component.ts","../../components/ecl-story-card/ecl-story-card-grid-details/ecl-story-card-grid-details.component.html","../../components/ecl-story-card/ecl-story-card.component.ts","../../components/ecl-story-card/ecl-story-card.component.html","../../components/ecl-story-card/index.ts","../../components/ecl-story-card/eui-ecl-components-ecl-story-card.ts"],"sourcesContent":["import { Directive } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Directive applied to the <ul> element that holds the story card items.\n * Adds the grid container class and tablist role.\n *\n * @example\n * <ul eclStoryCardList>...</ul>\n */\n@Directive({\n selector: 'ul[eclStoryCardList]',\n host: {\n role: 'tablist',\n '[class]': 'getCssClasses(\"ecl-story-card__grid-container\")',\n },\n})\nexport class EclStoryCardListDirective extends ECLBaseDirective {}\n\n/**\n * Directive applied to <picture> elements inside a story card item.\n * Adds the ECL picture classes.\n *\n * @example\n * <picture eclStoryCardPicture>\n * <source srcset=\"...\" media=\"(max-width: 50rem)\">\n * <img src=\"...\" alt=\"...\">\n * </picture>\n */\n@Directive({\n selector: 'picture[eclStoryCardPicture]',\n host: {\n '[class]': 'getCssClasses(\"ecl-picture ecl-story-card__picture\")',\n },\n})\nexport class EclStoryCardPictureDirective extends ECLBaseDirective {}\n\n/**\n * Directive applied to <a> elements inside story card grid details.\n * Adds the ECL link classes for the \"Read more\" link.\n *\n * @example\n * <a eclStoryCardLink href=\"/example\">Read more</a>\n */\n@Directive({\n selector: '[eclStoryCardLink]',\n host: {\n '[class]': 'getCssClasses(\"ecl-link ecl-link--standalone ecl-link--icon ecl-story-card__link\")',\n },\n})\nexport class EclStoryCardLinkDirective extends ECLBaseDirective {}\n","import {\n ChangeDetectionStrategy,\n Component,\n computed,\n contentChild,\n ElementRef,\n input,\n output,\n signal,\n} from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclStoryCardPictureDirective } from '../ecl-story-card-directives';\n\n/**\n * Component for a single story card grid item (tab).\n * Applied to <li> elements within the story card list.\n *\n * The user provides:\n * - `gridTitle`: the short label shown in the accordion tab button\n * - A <picture eclStoryCardPicture> as projected content\n *\n * The component internally renders the button with role=\"tab\",\n * the loading bar, and the title wrapper.\n *\n * @example\n * <li eclStoryCardItem gridTitle=\"why twelve\">\n * <picture eclStoryCardPicture>\n * <img src=\"example.jpg\" alt=\"Example\">\n * </picture>\n * </li>\n */\n@Component({\n selector: 'li[eclStoryCardItem]',\n templateUrl: './ecl-story-card-item.component.html',\n host: {\n role: 'presentation',\n '[class]': 'cssClasses()',\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class EclStoryCardItemComponent extends ECLBaseDirective {\n\n /** Short title displayed in the accordion tab button. */\n gridTitle = input<string>('');\n\n /** Whether this item is currently expanded/selected. Set by parent. */\n isExpanded = signal(false);\n\n /** Whether autoplay is active (controls loading bar animation). Set by parent. */\n isAutoPlaying = signal(false);\n\n /** The index of this item within the list. Set by parent. */\n index = signal(0);\n\n /** The generated ID for the tab button. Set by parent. */\n tabId = signal('');\n\n /** The ID of the controlled tabpanel. Set by parent. */\n panelId = signal('');\n\n /** Emitted when the item's button is clicked. */\n itemClick = output<number>();\n\n /** Emitted when the loading bar animation ends. */\n loadingBarAnimationEnd = output<void>();\n\n /** Reference to the projected picture element for cloning into carousel. */\n pictureRef = contentChild(EclStoryCardPictureDirective, { read: ElementRef });\n\n readonly cssClasses = computed(() => [\n super.getCssClasses('ecl-story-card__grid-item'),\n this.isExpanded() ? 'ecl-story-card__grid-item--expanded' : '',\n ].join(' ').trim());\n\n protected onButtonClick(): void {\n this.itemClick.emit(this.index());\n }\n\n protected onAnimationEnd(): void {\n this.loadingBarAnimationEnd.emit();\n }\n}\n","<button class=\"ecl-story-card__grid-card\"\n type=\"button\"\n [attr.id]=\"tabId()\"\n role=\"tab\"\n [attr.aria-selected]=\"isExpanded()\"\n [attr.aria-controls]=\"panelId()\"\n (click)=\"onButtonClick()\">\n <div class=\"ecl-story-card__grid-image\">\n <ng-content select=\"picture[eclStoryCardPicture]\"></ng-content>\n <div class=\"ecl-story-card__grid-loading-bar\">\n <div class=\"ecl-story-card__grid-loading-bar-completion\"\n [class.is-paused]=\"!isExpanded() || !isAutoPlaying()\"\n (animationend)=\"onAnimationEnd()\">\n </div>\n </div>\n </div>\n <div class=\"ecl-story-card__grid-title-wrapper\">\n @if (gridTitle()) {\n <div class=\"ecl-story-card__grid-title\">{{ gridTitle() }}</div>\n }\n </div>\n</button>\n","import {\n ChangeDetectionStrategy,\n Component,\n contentChild,\n ElementRef,\n input,\n signal,\n} from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclStoryCardLinkDirective } from '../ecl-story-card-directives';\n\n/**\n * Component for a story card grid details panel (tabpanel).\n * Contains the expanded content: title, description, and optional link.\n *\n * For the 'testimonial' variant, additional inputs are available:\n * - `author`: name of the author\n * - `role`: role/position of the author\n * - `source`: publication source\n *\n * @example\n * <div eclStoryCardGridDetails\n * eclTitle=\"The European flag...\"\n * description=\"It appears on official documents...\"\n * author=\"John Doe\"\n * role=\"Commissioner\"\n * source=\"Published on The Guardian\">\n * <a eclStoryCardLink eclLink variant=\"standalone\" href=\"/example\">\n * <span eclLinkLabel>Read more</span>\n * <ecl-icon icon=\"arrow-right\" size=\"xs\"></ecl-icon>\n * </a>\n * </div>\n */\n@Component({\n selector: '[eclStoryCardGridDetails]',\n templateUrl: './ecl-story-card-grid-details.component.html',\n host: {\n '[class]': 'getCssClasses(\"ecl-story-card__grid-details\")',\n '[attr.id]': 'panelId()',\n '[attr.role]': '\"tabpanel\"',\n '[attr.aria-labelledby]': 'tabId()',\n '[hidden]': '!isActive()',\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class EclStoryCardGridDetailsComponent extends ECLBaseDirective {\n\n /** Title shown in the details panel. */\n eclTitle = input<string>('');\n\n /** Description shown in the details panel. */\n description = input<string>('');\n\n /** Author name (testimonial variant). */\n author = input<string>('');\n\n /** Author role/position (testimonial variant). */\n role = input<string>('');\n\n /** Publication source (testimonial variant). */\n source = input<string>('');\n\n /** Whether this panel is currently visible. Set by parent. */\n isActive = signal(false);\n\n /** Whether the parent is in testimonial variant. Set by parent. */\n isTestimonial = signal(false);\n\n /** Index of this panel. Set by parent. */\n index = signal(0);\n\n /** Generated panel ID. Set by parent. */\n panelId = signal('');\n\n /** ID of the controlling tab. Set by parent. */\n tabId = signal('');\n\n /** Reference to the projected link element for cloning into carousel. */\n linkRef = contentChild(EclStoryCardLinkDirective, { read: ElementRef });\n}\n","<article class=\"ecl-story-card__grid-details-content\">\n <div class=\"ecl-story-card__content\">\n @if (isTestimonial()) {\n <div class=\"ecl-story-card__content-icon\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"22\" height=\"45\" viewBox=\"0 0 22 45\" fill=\"none\">\n <path d=\"M0 0H22V23.3143L0 44.5714V0Z\" fill=\"currentColor\"/>\n </svg>\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"22\" height=\"45\" viewBox=\"0 0 22 45\" fill=\"none\">\n <path d=\"M0 0H22V23.3143L0 44.5714V0Z\" fill=\"currentColor\"/>\n </svg>\n </div>\n }\n @if (eclTitle()) {\n <div class=\"ecl-story-card__card-title\">{{ eclTitle() }}</div>\n }\n @if (author() || role() || source()) {\n <div class=\"ecl-story-card__testimonial\">\n @if (author()) {\n <span class=\"ecl-story-card__author\">{{ author() }}</span>\n }\n @if (role()) {\n <span class=\"ecl-story-card__role\">{{ role() }}</span>\n }\n @if (source()) {\n <cite class=\"ecl-story-card__source\">{{ source() }}</cite>\n }\n </div>\n }\n @if (description()) {\n <div class=\"ecl-story-card__card-description\">{{ description() }}</div>\n }\n <ng-content select=\"[eclStoryCardLink]\"></ng-content>\n </div>\n</article>\n","import {\n afterNextRender,\n booleanAttribute,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n computed,\n contentChildren,\n effect,\n ElementRef,\n inject,\n input,\n OnDestroy,\n output,\n signal,\n untracked,\n viewChild,\n viewChildren,\n} from '@angular/core';\nimport { EclIconComponent } from '@eui/ecl/components/ecl-icon';\nimport { ECLBaseDirective, EclRtlService } from '@eui/ecl/core';\nimport { TranslatePipe } from '@ngx-translate/core';\nimport { EmblaCarouselDirective } from 'embla-carousel-angular';\nimport { Subject, takeUntil } from 'rxjs';\nimport { outputToObservable } from '@angular/core/rxjs-interop';\n\nimport { EclStoryCardItemComponent } from './ecl-story-card-item/ecl-story-card-item.component';\nimport { EclStoryCardGridDetailsComponent } from './ecl-story-card-grid-details/ecl-story-card-grid-details.component';\nimport { EmblaCarouselType, EmblaEventType } from 'embla-carousel';\n\nexport interface EclStoryCardSelectionEvent {\n index: number;\n}\n\n/**\n * ECL Story Card component.\n *\n * Renders a desktop grid accordion (user-authored) and automatically\n * generates a mobile carousel from the same data.\n *\n * Desktop: tablist/tab/tabpanel pattern with autoplay loading bar.\n * Mobile: Embla carousel with prev/next and dot navigation.\n *\n * @example\n * <section eclStoryCard isAutoplay [autoplayDelay]=\"10000\"\n * [eclTitle]=\"'Stories'\" [eclDescription]=\"'...'\">\n * <ul eclStoryCardList>\n * <li eclStoryCardItem gridTitle=\"why twelve\">\n * <picture eclStoryCardPicture>...</picture>\n * </li>\n * </ul>\n * <div eclStoryCardGridDetails eclTitle=\"...\" description=\"...\">\n * <a eclStoryCardLink href=\"...\">Read more</a>\n * </div>\n * </section>\n */\n@Component({\n selector: 'section[eclStoryCard]',\n templateUrl: './ecl-story-card.component.html',\n host: {\n '[id]': 'componentId()',\n '[class]': 'cssClasses()',\n '[attr.aria-labelledby]': 'titleId()',\n '[style.--ecl-story-card-slide-duration]': 'slideDuration()',\n },\n imports: [\n TranslatePipe,\n EclIconComponent,\n EmblaCarouselDirective,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class EclStoryCardComponent extends ECLBaseDirective implements OnDestroy {\n\n /** Title displayed in the story card header. */\n eclTitle = input<string>('');\n\n /** Description displayed below the title. */\n eclDescription = input<string>('');\n\n /** Variant of the story card: 'story' (default) or 'testimonial'. */\n variant = input<'story' | 'testimonial'>('story');\n\n /** Whether autoplay is enabled for the grid accordion. */\n isAutoplay = input(false, { transform: booleanAttribute });\n\n /** Autoplay delay in milliseconds. Default: 10000. */\n autoplayDelay = input<number>(10000);\n\n /** ID for the component. All internal IDs derive from it. If not provided, auto-generated. */\n eclId = input<string>('', { alias: 'id' });\n\n /** Emitted when the active grid item changes. */\n selectionChange = output<EclStoryCardSelectionEvent>();\n\n private generatedId = `story-card-${crypto.randomUUID().slice(0, 8)}`;\n protected componentId = computed(() => this.eclId() || this.generatedId);\n protected titleId = computed(() => `${this.componentId()}-title`);\n\n /** Embla carousel options. */\n protected emblaOptions: { loop: boolean; direction: 'ltr' | 'rtl' } = { loop: true, direction: 'ltr' };\n\n /** Subscribed Embla events. */\n protected subscribeToEvents: EmblaEventType[] = ['select', 'init', 'reInit'];\n\n /** Current carousel snap index. */\n protected activeSlideIndex = signal(0);\n\n /** Total number of items. */\n protected totalSlides = computed(() => this.items().length);\n\n /** Previous button disabled state (carousel). */\n protected prevDisabled = signal(false);\n\n /** Next button disabled state (carousel). */\n protected nextDisabled = signal(false);\n\n /** Currently expanded grid item index. */\n protected expandedIndex = signal(0);\n\n /** Whether grid autoplay is currently playing. */\n protected isAutoPlaying = signal(false);\n\n protected items = contentChildren(EclStoryCardItemComponent, { descendants: true });\n\n protected detailsPanels = contentChildren(EclStoryCardGridDetailsComponent, { descendants: true });\n\n private emblaRef = viewChild(EmblaCarouselDirective);\n private carouselImageWrappers = viewChildren<ElementRef>('carouselImageWrapper');\n private carouselContentWrappers = viewChildren<ElementRef>('carouselContentWrapper');\n\n private cd = inject(ChangeDetectorRef);\n private eclRtlService = inject(EclRtlService);\n private destroy$ = new Subject<void>();\n private setupTeardown$ = new Subject<void>();\n private emblaApi: EmblaCarouselType | undefined;\n\n constructor() {\n super();\n afterNextRender(() => {\n setTimeout(() => this.clonePicturesToCarousel());\n });\n\n effect(() => {\n const itemsArray = this.items();\n const detailsArray = this.detailsPanels();\n\n untracked(() => {\n this.setupGrid(itemsArray, detailsArray);\n });\n }, { allowSignalWrites: true });\n\n this.eclRtlService.currentRtlState$.pipe(takeUntil(this.destroy$)).subscribe((isRtl) => {\n const direction = isRtl ? 'rtl' : 'ltr';\n if (this.emblaOptions.direction !== direction) {\n this.emblaOptions = { ...this.emblaOptions, direction };\n this.cd.detectChanges();\n }\n });\n }\n\n readonly cssClasses = computed(() => [\n super.getCssClasses('ecl-story-card'),\n this.eclDescription() ? 'ecl-story-card--has-description' : '',\n this.variant() === 'testimonial' ? 'ecl-story-card--testimonial' : '',\n ].join(' ').trim());\n\n readonly slideDuration = computed(() => `${this.autoplayDelay()}ms`);\n\n ngOnDestroy(): void {\n this.setupTeardown$.next();\n this.setupTeardown$.complete();\n this.destroy$.next();\n this.destroy$.complete();\n }\n\n /**\n * Configures the grid accordion: assigns IDs, indices, and initial state\n * to each item and details panel, subscribes to item interaction events,\n * and starts autoplay if enabled.\n */\n private setupGrid(\n itemsArray: readonly EclStoryCardItemComponent[],\n detailsArray: readonly EclStoryCardGridDetailsComponent[],\n ): void {\n this.setupTeardown$.next();\n const id = this.componentId();\n\n itemsArray.forEach((item, i) => {\n item.index.set(i);\n item.tabId.set(`${id}-tab-${i}`);\n item.panelId.set(`${id}-details-${i}`);\n item.isExpanded.set(i === this.expandedIndex());\n item.isAutoPlaying.set(this.isAutoPlaying());\n\n outputToObservable(item.itemClick).pipe(\n takeUntil(this.setupTeardown$),\n ).subscribe((index: number) => this.onGridItemClick(index));\n\n outputToObservable(item.loadingBarAnimationEnd).pipe(\n takeUntil(this.setupTeardown$),\n ).subscribe(() => this.onLoadingBarAnimationEnd());\n });\n\n detailsArray.forEach((panel, i) => {\n panel.index.set(i);\n panel.panelId.set(`${id}-details-${i}`);\n panel.tabId.set(`${id}-tab-${i}`);\n panel.isActive.set(i === this.expandedIndex());\n panel.isTestimonial.set(this.variant() === 'testimonial');\n });\n\n if (this.isAutoplay()) {\n this.playAutoplay();\n }\n }\n\n /** Set the expanded grid item by index. */\n private setGridItem(index: number): void {\n const itemsArray = this.items();\n const detailsArray = this.detailsPanels();\n if (itemsArray.length === 0) return;\n\n const nextIndex = ((index % itemsArray.length) + itemsArray.length) % itemsArray.length;\n\n itemsArray.forEach((item, i) => {\n item.isExpanded.set(i === nextIndex);\n item.isAutoPlaying.set(this.isAutoPlaying());\n });\n\n detailsArray.forEach((panel, i) => {\n panel.isActive.set(i === nextIndex);\n });\n\n this.expandedIndex.set(nextIndex);\n this.selectionChange.emit({ index: nextIndex });\n }\n\n /** Handle click on a grid item button. */\n private onGridItemClick(index: number): void {\n const itemsArray = this.items();\n const isCurrentlyExpanded = itemsArray[index]?.isExpanded();\n\n if (isCurrentlyExpanded && !this.isAutoPlaying()) {\n this.playAutoplay();\n } else {\n this.pauseAutoplay();\n }\n\n this.setGridItem(index);\n }\n\n /** Go to the previous grid item. */\n protected onGridPrevClick(): void {\n this.setGridItem(this.expandedIndex() - 1);\n }\n\n /** Go to the next grid item. */\n protected onGridNextClick(): void {\n this.setGridItem(this.expandedIndex() + 1);\n }\n\n /** Handle animation end on the loading bar (advance to next). */\n private onLoadingBarAnimationEnd(): void {\n if (this.isAutoPlaying()) {\n this.setGridItem(this.expandedIndex() + 1);\n }\n }\n\n /** Start autoplay. */\n protected playAutoplay(): void {\n if (this.items().length < 2) return;\n this.isAutoPlaying.set(true);\n this.items().forEach(item => item.isAutoPlaying.set(true));\n }\n\n protected pauseAutoplay(): void {\n this.isAutoPlaying.set(false);\n this.items().forEach(item => item.isAutoPlaying.set(false));\n }\n\n /** Play button click. */\n protected onPlayClick(): void {\n this.playAutoplay();\n }\n\n /** Pause button click. */\n protected onPauseClick(): void {\n this.pauseAutoplay();\n }\n\n /** Clone each item's projected picture and link into the corresponding carousel slide. */\n private clonePicturesToCarousel(): void {\n const imageWrappers = this.carouselImageWrappers();\n const contentWrappers = this.carouselContentWrappers();\n const itemsArray = this.items();\n const detailsArray = this.detailsPanels();\n\n itemsArray.forEach((item, i) => {\n const pictureEl = item.pictureRef();\n if (pictureEl && imageWrappers[i]) {\n const clone = pictureEl.nativeElement.cloneNode(true) as HTMLElement;\n imageWrappers[i].nativeElement.appendChild(clone);\n }\n });\n\n detailsArray.forEach((panel, i) => {\n const linkEl = panel.linkRef();\n if (linkEl && contentWrappers[i]) {\n const clone = linkEl.nativeElement.cloneNode(true) as HTMLElement;\n contentWrappers[i].nativeElement.appendChild(clone);\n }\n });\n }\n\n protected onEmblaChange(eventName: string): void {\n if (!this.emblaApi) {\n this.emblaApi = this.emblaRef()?.emblaApi;\n }\n if (!this.emblaApi) return;\n\n if (eventName === 'select' || eventName === 'init' || eventName === 'reInit') {\n this.syncCarouselState();\n }\n }\n\n /** Sync carousel state from Embla API. */\n private syncCarouselState(): void {\n if (!this.emblaApi) return;\n\n this.activeSlideIndex.set(this.emblaApi.selectedScrollSnap());\n this.prevDisabled.set(!this.emblaApi.canScrollPrev());\n this.nextDisabled.set(!this.emblaApi.canScrollNext());\n }\n\n /** Navigate carousel to previous slide. */\n protected onCarouselPrevClick(): void {\n this.emblaRef()?.scrollPrev();\n }\n\n /** Navigate carousel to next slide. */\n protected onCarouselNextClick(): void {\n this.emblaRef()?.scrollNext();\n }\n\n /** Navigate carousel to a specific slide. */\n protected goToSlide(index: number): void {\n this.emblaRef()?.scrollTo(index);\n }\n\n /** Returns dot indices for rendering. */\n protected getDotIndices(): number[] {\n return Array.from({ length: this.totalSlides() }, (_, i) => i);\n }\n}\n","@if (eclTitle() || eclDescription()) {\n<div class=\"ecl-story-card__header\">\n @if (eclTitle()) {\n <div class=\"ecl-story-card__title\" [attr.id]=\"titleId()\">{{ eclTitle() }}</div>\n }\n @if (eclDescription()) {\n <div class=\"ecl-story-card__description\">{{ eclDescription() }}</div>\n }\n</div>\n}\n\n<!-- Mobile: Embla Carousel (auto-generated from items + details) -->\n<div class=\"ecl-story-card__carousel\">\n <div class=\"ecl-story-card__carousel-viewport\"\n role=\"region\"\n [attr.aria-label]=\"'ecl.story-card.SLIDER-LABEL' | translate\"\n emblaCarousel\n [options]=\"emblaOptions\"\n [subscribeToEvents]=\"subscribeToEvents\"\n (emblaChange)=\"onEmblaChange($event)\">\n <ul class=\"ecl-story-card__carousel-container\">\n @for (item of items(); track i; let i = $index) {\n <li class=\"ecl-story-card__carousel-slide\"\n [attr.aria-hidden]=\"i !== activeSlideIndex() ? true : null\">\n <article class=\"ecl-story-card__card\">\n <div class=\"ecl-story-card__image-wrapper\" #carouselImageWrapper>\n </div>\n <div class=\"ecl-story-card__content\" #carouselContentWrapper>\n @if (detailsPanels()[i]; as panel) {\n @if (panel.eclTitle()) {\n <div class=\"ecl-story-card__card-title\">{{ panel.eclTitle() }}</div>\n }\n @if (panel.description()) {\n <div class=\"ecl-story-card__card-description\">{{ panel.description() }}</div>\n }\n }\n </div>\n </article>\n </li>\n }\n </ul>\n </div>\n\n <!-- Carousel Controls -->\n @if (totalSlides() > 1) {\n <div class=\"ecl-story-card__pager\">\n <button class=\"ecl-story-card__prev\"\n [disabled]=\"prevDisabled()\"\n (click)=\"onCarouselPrevClick()\"\n [attr.aria-label]=\"'ecl.story-card.SHOW-PREV-SLIDE' | translate\">\n <ecl-icon icon=\"corner-arrow\" size=\"s\" transform=\"rotate-270\"></ecl-icon>\n <span class=\"ecl-story-card__prev-label\">\n {{ 'ecl.story-card.PREVIOUS' | translate }}\n </span>\n </button>\n\n <div class=\"ecl-story-card__dots\">\n @for (dotIndex of getDotIndices(); track dotIndex) {\n <button\n #dotButton\n class=\"ecl-story-card__dot\"\n [class.ecl-story-card__dot--active]=\"dotIndex === activeSlideIndex()\"\n [class.is-prev]=\"dotIndex === activeSlideIndex() - 1\"\n [attr.aria-label]=\"'ecl.story-card.GO-TO-SLIDE' | translate: { current: dotIndex + 1, total: totalSlides() }\"\n (click)=\"goToSlide(dotIndex)\">\n </button>\n }\n </div>\n\n <button class=\"ecl-story-card__next\"\n [disabled]=\"nextDisabled()\"\n (click)=\"onCarouselNextClick()\"\n [attr.aria-label]=\"'ecl.story-card.SHOW-NEXT-SLIDE' | translate\">\n <span class=\"ecl-story-card__next-label\">\n {{ 'ecl.story-card.NEXT' | translate }}\n </span>\n <ecl-icon icon=\"corner-arrow\" size=\"s\" transform=\"rotate-90\"></ecl-icon>\n </button>\n </div>\n }\n</div>\n\n<!-- Desktop: Grid with Accordion (user-authored content projected here) -->\n<div class=\"ecl-story-card__grid\">\n <ng-content select=\"ul[eclStoryCardList]\"></ng-content>\n <ng-content select=\"[eclStoryCardGridDetails]\"></ng-content>\n\n <!-- Grid Controls -->\n @if (totalSlides() > 1) {\n <div class=\"ecl-story-card__grid-controls\">\n <button class=\"ecl-button ecl-button--tertiary ecl-button--neutral ecl-story-card__grid-prev ecl-button--icon-only\"\n type=\"button\"\n (click)=\"onGridPrevClick()\"\n [attr.aria-label]=\"'ecl.story-card.PREVIOUS' | translate\">\n <span class=\"ecl-button__container\">\n <span class=\"ecl-button__label\" data-ecl-label=\"true\">\n {{ 'ecl.story-card.PREVIOUS' | translate }}\n </span>\n <ecl-icon iconSet=\"phosphor\" icon=\"caret-left\" size=\"l\"></ecl-icon>\n </span>\n </button>\n\n <button class=\"ecl-button ecl-button--secondary ecl-button--neutral ecl-story-card__grid-play ecl-button--icon-only\"\n type=\"button\"\n [style.display]=\"isAutoPlaying() ? 'none' : 'flex'\"\n (click)=\"onPlayClick()\"\n [attr.aria-label]=\"'ecl.story-card.PLAY' | translate\">\n <span class=\"ecl-button__container\">\n <span class=\"ecl-button__label\" data-ecl-label=\"true\">\n {{ 'ecl.story-card.PLAY' | translate }}\n </span>\n <ecl-icon iconSet=\"phosphor-fill\" icon=\"play\" size=\"l\"></ecl-icon>\n </span>\n </button>\n\n <button class=\"ecl-button ecl-button--secondary ecl-button--neutral ecl-story-card__grid-pause ecl-button--icon-only\"\n type=\"button\"\n [style.display]=\"isAutoPlaying() ? 'flex' : 'none'\"\n (click)=\"onPauseClick()\"\n [attr.aria-label]=\"'ecl.story-card.PAUSE' | translate\">\n <span class=\"ecl-button__container\">\n <span class=\"ecl-button__label\" data-ecl-label=\"true\">\n {{ 'ecl.story-card.PAUSE' | translate }}\n </span>\n <ecl-icon iconSet=\"phosphor-fill\" icon=\"pause\" size=\"l\"></ecl-icon>\n </span>\n </button>\n\n <button class=\"ecl-button ecl-button--tertiary ecl-button--neutral ecl-story-card__grid-next ecl-button--icon-only\"\n type=\"button\"\n (click)=\"onGridNextClick()\"\n [attr.aria-label]=\"'ecl.story-card.NEXT' | translate\">\n <span class=\"ecl-button__container\">\n <span class=\"ecl-button__label\" data-ecl-label=\"true\">\n {{ 'ecl.story-card.NEXT' | translate }}\n </span>\n <ecl-icon iconSet=\"phosphor\" icon=\"caret-right\" size=\"l\"></ecl-icon>\n </span>\n </button>\n </div>\n }\n</div>\n","import { EclStoryCardComponent } from './ecl-story-card.component';\nimport { EclStoryCardItemComponent } from './ecl-story-card-item/ecl-story-card-item.component';\nimport { EclStoryCardGridDetailsComponent } from './ecl-story-card-grid-details/ecl-story-card-grid-details.component';\nimport {\n EclStoryCardListDirective,\n EclStoryCardPictureDirective,\n EclStoryCardLinkDirective,\n} from './ecl-story-card-directives';\n\nexport * from './ecl-story-card.component';\nexport * from './ecl-story-card-item/ecl-story-card-item.component';\nexport * from './ecl-story-card-grid-details/ecl-story-card-grid-details.component';\nexport * from './ecl-story-card-directives';\n\nexport const EUI_ECL_STORY_CARD = [\n EclStoryCardComponent,\n EclStoryCardItemComponent,\n EclStoryCardGridDetailsComponent,\n EclStoryCardListDirective,\n EclStoryCardPictureDirective,\n EclStoryCardLinkDirective,\n] as const;\n","/**\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-story-card.mjs","sources":["../../components/ecl-story-card/ecl-story-card-directives.ts","../../components/ecl-story-card/ecl-story-card-item/ecl-story-card-item.component.ts","../../components/ecl-story-card/ecl-story-card-item/ecl-story-card-item.component.html","../../components/ecl-story-card/ecl-story-card-grid-details/ecl-story-card-grid-details.component.ts","../../components/ecl-story-card/ecl-story-card-grid-details/ecl-story-card-grid-details.component.html","../../components/ecl-story-card/ecl-story-card.component.ts","../../components/ecl-story-card/ecl-story-card.component.html","../../components/ecl-story-card/index.ts","../../components/ecl-story-card/eui-ecl-components-ecl-story-card.ts"],"sourcesContent":["import { Directive } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Directive applied to the <ul> element that holds the story card items.\n * Adds the grid container class and tablist role.\n *\n * @example\n * <ul eclStoryCardList>...</ul>\n */\n@Directive({\n selector: 'ul[eclStoryCardList]',\n host: {\n role: 'tablist',\n '[class]': 'getCssClasses(\"ecl-story-card__grid-container\")',\n },\n})\nexport class EclStoryCardListDirective extends ECLBaseDirective {}\n\n/**\n * Directive applied to <picture> elements inside a story card item.\n * Adds the ECL picture classes.\n *\n * @example\n * <picture eclStoryCardPicture>\n * <source srcset=\"...\" media=\"(max-width: 50rem)\">\n * <img src=\"...\" alt=\"...\">\n * </picture>\n */\n@Directive({\n selector: 'picture[eclStoryCardPicture]',\n host: {\n '[class]': 'getCssClasses(\"ecl-picture ecl-story-card__picture\")',\n },\n})\nexport class EclStoryCardPictureDirective extends ECLBaseDirective {}\n\n/**\n * Directive applied to <a> elements inside story card grid details.\n * Adds the ECL link classes for the \"Read more\" link.\n *\n * @example\n * <a eclStoryCardLink href=\"/example\">Read more</a>\n */\n@Directive({\n selector: '[eclStoryCardLink]',\n host: {\n '[class]': 'getCssClasses(\"ecl-link ecl-link--standalone ecl-link--icon ecl-story-card__link\")',\n },\n})\nexport class EclStoryCardLinkDirective extends ECLBaseDirective {}\n","import {\n ChangeDetectionStrategy,\n Component,\n computed,\n contentChild,\n ElementRef,\n input,\n output,\n signal,\n} from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclStoryCardPictureDirective } from '../ecl-story-card-directives';\n\n/**\n * Component for a single story card grid item (tab).\n * Applied to <li> elements within the story card list.\n *\n * The user provides:\n * - `gridTitle`: the short label shown in the accordion tab button\n * - A <picture eclStoryCardPicture> as projected content\n *\n * The component internally renders the button with role=\"tab\",\n * the loading bar, and the title wrapper.\n *\n * @example\n * <li eclStoryCardItem gridTitle=\"why twelve\">\n * <picture eclStoryCardPicture>\n * <img src=\"example.jpg\" alt=\"Example\">\n * </picture>\n * </li>\n */\n@Component({\n selector: 'li[eclStoryCardItem]',\n templateUrl: './ecl-story-card-item.component.html',\n host: {\n role: 'presentation',\n '[class]': 'cssClasses()',\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class EclStoryCardItemComponent extends ECLBaseDirective {\n\n /** Short title displayed in the accordion tab button. */\n gridTitle = input<string>('');\n\n /** Whether this item is currently expanded/selected. Set by parent. */\n isExpanded = signal(false);\n\n /** Whether autoplay is active (controls loading bar animation). Set by parent. */\n isAutoPlaying = signal(false);\n\n /** The index of this item within the list. Set by parent. */\n index = signal(0);\n\n /** The generated ID for the tab button. Set by parent. */\n tabId = signal('');\n\n /** The ID of the controlled tabpanel. Set by parent. */\n panelId = signal('');\n\n /** Emitted when the item's button is clicked. */\n itemClick = output<number>();\n\n /** Emitted when the loading bar animation ends. */\n loadingBarAnimationEnd = output<void>();\n\n /** Reference to the projected picture element for cloning into carousel. */\n pictureRef = contentChild(EclStoryCardPictureDirective, { read: ElementRef });\n\n readonly cssClasses = computed(() => [\n super.getCssClasses('ecl-story-card__grid-item'),\n this.isExpanded() ? 'ecl-story-card__grid-item--expanded' : '',\n ].join(' ').trim());\n\n protected onButtonClick(): void {\n this.itemClick.emit(this.index());\n }\n\n protected onAnimationEnd(): void {\n this.loadingBarAnimationEnd.emit();\n }\n}\n","<button class=\"ecl-story-card__grid-card\"\n type=\"button\"\n [attr.id]=\"tabId()\"\n role=\"tab\"\n [attr.aria-selected]=\"isExpanded()\"\n [attr.aria-controls]=\"panelId()\"\n (click)=\"onButtonClick()\">\n <div class=\"ecl-story-card__grid-image\">\n <ng-content select=\"picture[eclStoryCardPicture]\"></ng-content>\n <div class=\"ecl-story-card__grid-loading-bar\">\n <div class=\"ecl-story-card__grid-loading-bar-completion\"\n [class.is-paused]=\"!isExpanded() || !isAutoPlaying()\"\n (animationend)=\"onAnimationEnd()\">\n </div>\n </div>\n </div>\n <div class=\"ecl-story-card__grid-title-wrapper\">\n @if (gridTitle()) {\n <div class=\"ecl-story-card__grid-title\">{{ gridTitle() }}</div>\n }\n </div>\n</button>\n","import {\n ChangeDetectionStrategy,\n Component,\n contentChild,\n ElementRef,\n input,\n signal,\n} from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclStoryCardLinkDirective } from '../ecl-story-card-directives';\n\n/**\n * Component for a story card grid details panel (tabpanel).\n * Contains the expanded content: title, description, and optional link.\n *\n * For the 'testimonial' variant, additional inputs are available:\n * - `author`: name of the author\n * - `role`: role/position of the author\n * - `source`: publication source\n *\n * @example\n * <div eclStoryCardGridDetails\n * eclTitle=\"The European flag...\"\n * description=\"It appears on official documents...\"\n * author=\"John Doe\"\n * role=\"Commissioner\"\n * source=\"Published on The Guardian\">\n * <a eclStoryCardLink eclLink variant=\"standalone\" href=\"/example\">\n * <span eclLinkLabel>Read more</span>\n * <ecl-icon icon=\"arrow-right\" size=\"xs\"></ecl-icon>\n * </a>\n * </div>\n */\n@Component({\n selector: '[eclStoryCardGridDetails]',\n templateUrl: './ecl-story-card-grid-details.component.html',\n host: {\n '[class]': 'getCssClasses(\"ecl-story-card__grid-details\")',\n '[attr.id]': 'panelId()',\n '[attr.role]': '\"tabpanel\"',\n '[attr.aria-labelledby]': 'tabId()',\n '[hidden]': '!isActive()',\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class EclStoryCardGridDetailsComponent extends ECLBaseDirective {\n\n /** Title shown in the details panel. */\n eclTitle = input<string>('');\n\n /** Description shown in the details panel. */\n description = input<string>('');\n\n /** Author name (testimonial variant). */\n author = input<string>('');\n\n /** Author role/position (testimonial variant). */\n role = input<string>('');\n\n /** Publication source (testimonial variant). */\n source = input<string>('');\n\n /** Whether this panel is currently visible. Set by parent. */\n isActive = signal(false);\n\n /** Whether the parent is in testimonial variant. Set by parent. */\n isTestimonial = signal(false);\n\n /** Index of this panel. Set by parent. */\n index = signal(0);\n\n /** Generated panel ID. Set by parent. */\n panelId = signal('');\n\n /** ID of the controlling tab. Set by parent. */\n tabId = signal('');\n\n /** Reference to the projected link element for cloning into carousel. */\n linkRef = contentChild(EclStoryCardLinkDirective, { read: ElementRef });\n}\n","<article class=\"ecl-story-card__grid-details-content\">\n <div class=\"ecl-story-card__content\">\n @if (isTestimonial()) {\n <div class=\"ecl-story-card__content-icon\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"22\" height=\"45\" viewBox=\"0 0 22 45\" fill=\"none\">\n <path d=\"M0 0H22V23.3143L0 44.5714V0Z\" fill=\"currentColor\"/>\n </svg>\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"22\" height=\"45\" viewBox=\"0 0 22 45\" fill=\"none\">\n <path d=\"M0 0H22V23.3143L0 44.5714V0Z\" fill=\"currentColor\"/>\n </svg>\n </div>\n }\n @if (eclTitle()) {\n <div class=\"ecl-story-card__card-title\">{{ eclTitle() }}</div>\n }\n @if (author() || role() || source()) {\n <div class=\"ecl-story-card__testimonial\">\n @if (author()) {\n <span class=\"ecl-story-card__author\">{{ author() }}</span>\n }\n @if (role()) {\n <span class=\"ecl-story-card__role\">{{ role() }}</span>\n }\n @if (source()) {\n <cite class=\"ecl-story-card__source\">{{ source() }}</cite>\n }\n </div>\n }\n @if (description()) {\n <div class=\"ecl-story-card__card-description\">{{ description() }}</div>\n }\n <ng-content select=\"[eclStoryCardLink]\"></ng-content>\n </div>\n</article>\n","import {\n afterNextRender,\n booleanAttribute,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n computed,\n contentChildren,\n effect,\n ElementRef,\n inject,\n input,\n OnDestroy,\n output,\n signal,\n untracked,\n viewChild,\n viewChildren,\n} from '@angular/core';\nimport { EclIconComponent } from '@eui/ecl/components/ecl-icon';\nimport { ECLBaseDirective, EclRtlService } from '@eui/ecl/core';\nimport { TranslatePipe } from '@ngx-translate/core';\nimport { EmblaCarouselDirective } from 'embla-carousel-angular';\nimport { Subject, takeUntil } from 'rxjs';\nimport { outputToObservable } from '@angular/core/rxjs-interop';\n\nimport { EclStoryCardItemComponent } from './ecl-story-card-item/ecl-story-card-item.component';\nimport { EclStoryCardGridDetailsComponent } from './ecl-story-card-grid-details/ecl-story-card-grid-details.component';\nimport { EmblaCarouselType, EmblaEventType } from 'embla-carousel';\n\nexport interface EclStoryCardSelectionEvent {\n index: number;\n}\n\n/**\n * ECL Story Card component.\n *\n * Renders a desktop grid accordion (user-authored) and automatically\n * generates a mobile carousel from the same data.\n *\n * Desktop: tablist/tab/tabpanel pattern with autoplay loading bar.\n * Mobile: Embla carousel with prev/next and dot navigation.\n *\n * @example\n * <section eclStoryCard isAutoplay [autoplayDelay]=\"10000\"\n * [eclTitle]=\"'Stories'\" [eclDescription]=\"'...'\">\n * <ul eclStoryCardList>\n * <li eclStoryCardItem gridTitle=\"why twelve\">\n * <picture eclStoryCardPicture>...</picture>\n * </li>\n * </ul>\n * <div eclStoryCardGridDetails eclTitle=\"...\" description=\"...\">\n * <a eclStoryCardLink href=\"...\">Read more</a>\n * </div>\n * </section>\n */\n@Component({\n selector: 'section[eclStoryCard]',\n templateUrl: './ecl-story-card.component.html',\n host: {\n '[id]': 'componentId()',\n '[class]': 'cssClasses()',\n '[attr.aria-labelledby]': 'titleId()',\n '[style.--ecl-story-card-slide-duration]': 'slideDuration()',\n },\n imports: [\n TranslatePipe,\n EclIconComponent,\n EmblaCarouselDirective,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class EclStoryCardComponent extends ECLBaseDirective implements OnDestroy {\n\n /** Title displayed in the story card header. */\n eclTitle = input<string>('');\n\n /** Description displayed below the title. */\n eclDescription = input<string>('');\n\n /** Variant of the story card: 'story' (default) or 'testimonial'. */\n variant = input<'story' | 'testimonial'>('story');\n\n /** Whether autoplay is enabled for the grid accordion. */\n isAutoplay = input(false, { transform: booleanAttribute });\n\n /** Autoplay delay in milliseconds. Default: 10000. */\n autoplayDelay = input<number>(10000);\n\n /** ID for the component. All internal IDs derive from it. If not provided, auto-generated. */\n eclId = input<string>('', { alias: 'id' });\n\n /** Emitted when the active grid item changes. */\n selectionChange = output<EclStoryCardSelectionEvent>();\n\n private generatedId = `story-card-${crypto.randomUUID().slice(0, 8)}`;\n protected componentId = computed(() => this.eclId() || this.generatedId);\n protected titleId = computed(() => `${this.componentId()}-title`);\n\n /** Embla carousel options. */\n protected emblaOptions: { loop: boolean; direction: 'ltr' | 'rtl' } = { loop: true, direction: 'ltr' };\n\n /** Subscribed Embla events. */\n protected subscribeToEvents: EmblaEventType[] = ['select', 'init', 'reInit'];\n\n /** Current carousel snap index. */\n protected activeSlideIndex = signal(0);\n\n /** Total number of items. */\n protected totalSlides = computed(() => this.items().length);\n\n /** Previous button disabled state (carousel). */\n protected prevDisabled = signal(false);\n\n /** Next button disabled state (carousel). */\n protected nextDisabled = signal(false);\n\n /** Currently expanded grid item index. */\n protected expandedIndex = signal(0);\n\n /** Whether grid autoplay is currently playing. */\n protected isAutoPlaying = signal(false);\n\n protected items = contentChildren(EclStoryCardItemComponent, { descendants: true });\n\n protected detailsPanels = contentChildren(EclStoryCardGridDetailsComponent, { descendants: true });\n\n private emblaRef = viewChild(EmblaCarouselDirective);\n private carouselImageWrappers = viewChildren<ElementRef>('carouselImageWrapper');\n private carouselContentWrappers = viewChildren<ElementRef>('carouselContentWrapper');\n\n private cd = inject(ChangeDetectorRef);\n private eclRtlService = inject(EclRtlService);\n private destroy$ = new Subject<void>();\n private setupTeardown$ = new Subject<void>();\n private emblaApi: EmblaCarouselType | undefined;\n\n constructor() {\n super();\n afterNextRender(() => {\n setTimeout(() => this.clonePicturesToCarousel());\n });\n\n effect(() => {\n const itemsArray = this.items();\n const detailsArray = this.detailsPanels();\n\n untracked(() => {\n this.setupGrid(itemsArray, detailsArray);\n });\n }, { allowSignalWrites: true });\n\n this.eclRtlService.currentRtlState$.pipe(takeUntil(this.destroy$)).subscribe((isRtl) => {\n const direction = isRtl ? 'rtl' : 'ltr';\n if (this.emblaOptions.direction !== direction) {\n this.emblaOptions = { ...this.emblaOptions, direction };\n this.cd.detectChanges();\n }\n });\n }\n\n readonly cssClasses = computed(() => [\n super.getCssClasses('ecl-story-card'),\n this.eclDescription() ? 'ecl-story-card--has-description' : '',\n this.variant() === 'testimonial' ? 'ecl-story-card--testimonial' : '',\n ].join(' ').trim());\n\n readonly slideDuration = computed(() => `${this.autoplayDelay()}ms`);\n\n ngOnDestroy(): void {\n this.setupTeardown$.next();\n this.setupTeardown$.complete();\n this.destroy$.next();\n this.destroy$.complete();\n }\n\n /**\n * Configures the grid accordion: assigns IDs, indices, and initial state\n * to each item and details panel, subscribes to item interaction events,\n * and starts autoplay if enabled.\n */\n private setupGrid(\n itemsArray: readonly EclStoryCardItemComponent[],\n detailsArray: readonly EclStoryCardGridDetailsComponent[],\n ): void {\n this.setupTeardown$.next();\n const id = this.componentId();\n\n itemsArray.forEach((item, i) => {\n item.index.set(i);\n item.tabId.set(`${id}-tab-${i}`);\n item.panelId.set(`${id}-details-${i}`);\n item.isExpanded.set(i === this.expandedIndex());\n item.isAutoPlaying.set(this.isAutoPlaying());\n\n outputToObservable(item.itemClick).pipe(\n takeUntil(this.setupTeardown$),\n ).subscribe((index: number) => this.onGridItemClick(index));\n\n outputToObservable(item.loadingBarAnimationEnd).pipe(\n takeUntil(this.setupTeardown$),\n ).subscribe(() => this.onLoadingBarAnimationEnd());\n });\n\n detailsArray.forEach((panel, i) => {\n panel.index.set(i);\n panel.panelId.set(`${id}-details-${i}`);\n panel.tabId.set(`${id}-tab-${i}`);\n panel.isActive.set(i === this.expandedIndex());\n panel.isTestimonial.set(this.variant() === 'testimonial');\n });\n\n if (this.isAutoplay()) {\n this.playAutoplay();\n }\n }\n\n /** Set the expanded grid item by index. */\n private setGridItem(index: number): void {\n const itemsArray = this.items();\n const detailsArray = this.detailsPanels();\n if (itemsArray.length === 0) return;\n\n const nextIndex = ((index % itemsArray.length) + itemsArray.length) % itemsArray.length;\n\n itemsArray.forEach((item, i) => {\n item.isExpanded.set(i === nextIndex);\n item.isAutoPlaying.set(this.isAutoPlaying());\n });\n\n detailsArray.forEach((panel, i) => {\n panel.isActive.set(i === nextIndex);\n });\n\n this.expandedIndex.set(nextIndex);\n this.selectionChange.emit({ index: nextIndex });\n }\n\n /** Handle click on a grid item button. */\n private onGridItemClick(index: number): void {\n const itemsArray = this.items();\n const isCurrentlyExpanded = itemsArray[index]?.isExpanded();\n\n if (isCurrentlyExpanded && !this.isAutoPlaying()) {\n this.playAutoplay();\n } else {\n this.pauseAutoplay();\n }\n\n this.setGridItem(index);\n }\n\n /** Go to the previous grid item. */\n protected onGridPrevClick(): void {\n this.setGridItem(this.expandedIndex() - 1);\n }\n\n /** Go to the next grid item. */\n protected onGridNextClick(): void {\n this.setGridItem(this.expandedIndex() + 1);\n }\n\n /** Handle animation end on the loading bar (advance to next). */\n private onLoadingBarAnimationEnd(): void {\n if (this.isAutoPlaying()) {\n this.setGridItem(this.expandedIndex() + 1);\n }\n }\n\n /** Start autoplay. */\n protected playAutoplay(): void {\n if (this.items().length < 2) return;\n this.isAutoPlaying.set(true);\n this.items().forEach(item => item.isAutoPlaying.set(true));\n }\n\n protected pauseAutoplay(): void {\n this.isAutoPlaying.set(false);\n this.items().forEach(item => item.isAutoPlaying.set(false));\n }\n\n /** Play button click. */\n protected onPlayClick(): void {\n this.playAutoplay();\n }\n\n /** Pause button click. */\n protected onPauseClick(): void {\n this.pauseAutoplay();\n }\n\n /** Clone each item's projected picture and link into the corresponding carousel slide. */\n private clonePicturesToCarousel(): void {\n const imageWrappers = this.carouselImageWrappers();\n const contentWrappers = this.carouselContentWrappers();\n const itemsArray = this.items();\n const detailsArray = this.detailsPanels();\n\n itemsArray.forEach((item, i) => {\n const pictureEl = item.pictureRef();\n if (pictureEl && imageWrappers[i]) {\n const clone = pictureEl.nativeElement.cloneNode(true) as HTMLElement;\n imageWrappers[i].nativeElement.appendChild(clone);\n }\n });\n\n detailsArray.forEach((panel, i) => {\n const linkEl = panel.linkRef();\n if (linkEl && contentWrappers[i]) {\n const clone = linkEl.nativeElement.cloneNode(true) as HTMLElement;\n contentWrappers[i].nativeElement.appendChild(clone);\n }\n });\n }\n\n protected onEmblaChange(eventName: string): void {\n if (!this.emblaApi) {\n this.emblaApi = this.emblaRef()?.emblaApi;\n }\n if (!this.emblaApi) return;\n\n if (eventName === 'select' || eventName === 'init' || eventName === 'reInit') {\n this.syncCarouselState();\n }\n }\n\n /** Sync carousel state from Embla API. */\n private syncCarouselState(): void {\n if (!this.emblaApi) return;\n\n this.activeSlideIndex.set(this.emblaApi.selectedScrollSnap());\n this.prevDisabled.set(!this.emblaApi.canScrollPrev());\n this.nextDisabled.set(!this.emblaApi.canScrollNext());\n }\n\n /** Navigate carousel to previous slide. */\n protected onCarouselPrevClick(): void {\n this.emblaRef()?.scrollPrev();\n }\n\n /** Navigate carousel to next slide. */\n protected onCarouselNextClick(): void {\n this.emblaRef()?.scrollNext();\n }\n\n /** Navigate carousel to a specific slide. */\n protected goToSlide(index: number): void {\n this.emblaRef()?.scrollTo(index);\n }\n\n /** Returns dot indices for rendering. */\n protected getDotIndices(): number[] {\n return Array.from({ length: this.totalSlides() }, (_, i) => i);\n }\n}\n","@if (eclTitle() || eclDescription()) {\n<div class=\"ecl-story-card__header\">\n @if (eclTitle()) {\n <div class=\"ecl-story-card__title\" [attr.id]=\"titleId()\">{{ eclTitle() }}</div>\n }\n @if (eclDescription()) {\n <div class=\"ecl-story-card__description\">{{ eclDescription() }}</div>\n }\n</div>\n}\n\n<!-- Mobile: Embla Carousel (auto-generated from items + details) -->\n<div class=\"ecl-story-card__carousel\">\n <div class=\"ecl-story-card__carousel-viewport\"\n role=\"region\"\n [attr.aria-label]=\"'ecl.story-card.SLIDER-LABEL' | translate\"\n emblaCarousel\n [options]=\"emblaOptions\"\n [subscribeToEvents]=\"subscribeToEvents\"\n (emblaChange)=\"onEmblaChange($event)\">\n <ul class=\"ecl-story-card__carousel-container\">\n @for (item of items(); track i; let i = $index) {\n <li class=\"ecl-story-card__carousel-slide\"\n [attr.aria-hidden]=\"i !== activeSlideIndex() ? true : null\">\n <article class=\"ecl-story-card__card\">\n <div class=\"ecl-story-card__image-wrapper\" #carouselImageWrapper>\n </div>\n <div class=\"ecl-story-card__content\" #carouselContentWrapper>\n @if (detailsPanels()[i]; as panel) {\n @if (panel.eclTitle()) {\n <div class=\"ecl-story-card__card-title\">{{ panel.eclTitle() }}</div>\n }\n @if (panel.description()) {\n <div class=\"ecl-story-card__card-description\">{{ panel.description() }}</div>\n }\n }\n </div>\n </article>\n </li>\n }\n </ul>\n </div>\n\n <!-- Carousel Controls -->\n @if (totalSlides() > 1) {\n <div class=\"ecl-story-card__pager\">\n <button class=\"ecl-story-card__prev\"\n [disabled]=\"prevDisabled()\"\n (click)=\"onCarouselPrevClick()\"\n [attr.aria-label]=\"'ecl.story-card.SHOW-PREV-SLIDE' | translate\">\n <ecl-icon icon=\"corner-arrow\" size=\"s\" transform=\"rotate-270\"></ecl-icon>\n <span class=\"ecl-story-card__prev-label\">\n {{ 'ecl.story-card.PREVIOUS' | translate }}\n </span>\n </button>\n\n <div class=\"ecl-story-card__dots\">\n @for (dotIndex of getDotIndices(); track dotIndex) {\n <button\n #dotButton\n class=\"ecl-story-card__dot\"\n [class.ecl-story-card__dot--active]=\"dotIndex === activeSlideIndex()\"\n [class.is-prev]=\"dotIndex === activeSlideIndex() - 1\"\n [attr.aria-label]=\"'ecl.story-card.GO-TO-SLIDE' | translate: { current: dotIndex + 1, total: totalSlides() }\"\n (click)=\"goToSlide(dotIndex)\">\n </button>\n }\n </div>\n\n <button class=\"ecl-story-card__next\"\n [disabled]=\"nextDisabled()\"\n (click)=\"onCarouselNextClick()\"\n [attr.aria-label]=\"'ecl.story-card.SHOW-NEXT-SLIDE' | translate\">\n <span class=\"ecl-story-card__next-label\">\n {{ 'ecl.story-card.NEXT' | translate }}\n </span>\n <ecl-icon icon=\"corner-arrow\" size=\"s\" transform=\"rotate-90\"></ecl-icon>\n </button>\n </div>\n }\n</div>\n\n<!-- Desktop: Grid with Accordion (user-authored content projected here) -->\n<div class=\"ecl-story-card__grid\">\n <ng-content select=\"ul[eclStoryCardList]\"></ng-content>\n <ng-content select=\"[eclStoryCardGridDetails]\"></ng-content>\n\n <!-- Grid Controls -->\n @if (totalSlides() > 1) {\n <div class=\"ecl-story-card__grid-controls\">\n <button class=\"ecl-button ecl-button--tertiary ecl-button--neutral ecl-story-card__grid-prev ecl-button--icon-only\"\n type=\"button\"\n (click)=\"onGridPrevClick()\"\n [attr.aria-label]=\"'ecl.story-card.PREVIOUS' | translate\">\n <span class=\"ecl-button__container\">\n <span class=\"ecl-button__label\">\n {{ 'ecl.story-card.PREVIOUS' | translate }}\n </span>\n <ecl-icon iconSet=\"phosphor\" icon=\"caret-left\" size=\"l\"></ecl-icon>\n </span>\n </button>\n\n <button class=\"ecl-button ecl-button--secondary ecl-button--neutral ecl-story-card__grid-play ecl-button--icon-only\"\n type=\"button\"\n [style.display]=\"isAutoPlaying() ? 'none' : 'flex'\"\n (click)=\"onPlayClick()\"\n [attr.aria-label]=\"'ecl.story-card.PLAY' | translate\">\n <span class=\"ecl-button__container\">\n <span class=\"ecl-button__label\">\n {{ 'ecl.story-card.PLAY' | translate }}\n </span>\n <ecl-icon iconSet=\"phosphor-fill\" icon=\"play\" size=\"l\"></ecl-icon>\n </span>\n </button>\n\n <button class=\"ecl-button ecl-button--secondary ecl-button--neutral ecl-story-card__grid-pause ecl-button--icon-only\"\n type=\"button\"\n [style.display]=\"isAutoPlaying() ? 'flex' : 'none'\"\n (click)=\"onPauseClick()\"\n [attr.aria-label]=\"'ecl.story-card.PAUSE' | translate\">\n <span class=\"ecl-button__container\">\n <span class=\"ecl-button__label\">\n {{ 'ecl.story-card.PAUSE' | translate }}\n </span>\n <ecl-icon iconSet=\"phosphor-fill\" icon=\"pause\" size=\"l\"></ecl-icon>\n </span>\n </button>\n\n <button class=\"ecl-button ecl-button--tertiary ecl-button--neutral ecl-story-card__grid-next ecl-button--icon-only\"\n type=\"button\"\n (click)=\"onGridNextClick()\"\n [attr.aria-label]=\"'ecl.story-card.NEXT' | translate\">\n <span class=\"ecl-button__container\">\n <span class=\"ecl-button__label\">\n {{ 'ecl.story-card.NEXT' | translate }}\n </span>\n <ecl-icon iconSet=\"phosphor\" icon=\"caret-right\" size=\"l\"></ecl-icon>\n </span>\n </button>\n </div>\n }\n</div>\n","import { EclStoryCardComponent } from './ecl-story-card.component';\nimport { EclStoryCardItemComponent } from './ecl-story-card-item/ecl-story-card-item.component';\nimport { EclStoryCardGridDetailsComponent } from './ecl-story-card-grid-details/ecl-story-card-grid-details.component';\nimport {\n EclStoryCardListDirective,\n EclStoryCardPictureDirective,\n EclStoryCardLinkDirective,\n} from './ecl-story-card-directives';\n\nexport * from './ecl-story-card.component';\nexport * from './ecl-story-card-item/ecl-story-card-item.component';\nexport * from './ecl-story-card-grid-details/ecl-story-card-grid-details.component';\nexport * from './ecl-story-card-directives';\n\nexport const EUI_ECL_STORY_CARD = [\n EclStoryCardComponent,\n EclStoryCardItemComponent,\n EclStoryCardGridDetailsComponent,\n EclStoryCardListDirective,\n EclStoryCardPictureDirective,\n EclStoryCardLinkDirective,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eui/ecl",
3
- "version": "22.0.0-alpha.4",
3
+ "version": "22.0.0-alpha.6",
4
4
  "tag": "next",
5
5
  "description": "eUI ECL components package",
6
6
  "homepage": "https://eui.ecdevops.eu",
@@ -1 +1 @@
1
- {"version":3,"file":"eui-ecl-components-ecl-label.d.ts","sources":["../../components/ecl-label/ecl-label.directive.ts","../../components/ecl-label/index.ts"],"mappings":";;;AAGA;;;;;AAKG;AACH,cAGa,iBAAkB,SAAQ,gBAAgB;AACnD;;;;;;;;;AASG;sBACaA,EAAA,CAAA,WAAA;AAEhB;;;AAGG;;yCAhBM,iBAAiB;2CAAjB,iBAAiB;AAqB7B;;AC7BD,cAAa,aAAa,mBAAA,iBAAA;;;;","names":["_angular_core"]}
1
+ {"version":3,"file":"eui-ecl-components-ecl-label.d.ts","sources":["../../components/ecl-label/ecl-label.directive.ts","../../components/ecl-label/index.ts"],"mappings":";;;AAGA;;;;;AAKG;AACH,cAMa,iBAAkB,SAAQ,gBAAgB;AACnD;;;;;;;;;AASG;sBACaA,EAAA,CAAA,WAAA;AAEhB;;;AAGG;;yCAhBM,iBAAiB;2CAAjB,iBAAiB;AAoB7B;;AC/BD,cAAa,aAAa,mBAAA,iBAAA;;;;","names":["_angular_core"]}
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { AfterContentInit, ElementRef, Renderer2, ChangeDetectorRef } from '@angular/core';
2
+ import { ElementRef, Renderer2 } from '@angular/core';
3
3
  import { ECLBaseDirective } from '@eui/ecl/core';
4
4
 
5
5
  /**
@@ -42,10 +42,9 @@ declare class EclLinkIconContainerDirective {
42
42
  /**
43
43
  * 'eclLink' directive is used to add some styling to the defalt HTML anchor component. In order to comply with ECL standards.
44
44
  */
45
- declare class EclLinkDirective extends ECLBaseDirective implements AfterContentInit {
45
+ declare class EclLinkDirective extends ECLBaseDirective {
46
46
  el: ElementRef<any>;
47
47
  renderer: Renderer2;
48
- cd: ChangeDetectorRef;
49
48
  /**
50
49
  * Additional HTML attributes to be set on the link element.
51
50
  * Used e.g. by social-media-follow for passing extra_attributes.
@@ -86,7 +85,6 @@ declare class EclLinkDirective extends ECLBaseDirective implements AfterContentI
86
85
  * Adds speific ECL classes to the <a> component.
87
86
  */
88
87
  get cssClasses(): string;
89
- ngAfterContentInit(): void;
90
88
  /**
91
89
  * Calls the native focus() method of the default HTML element.
92
90
  */
@@ -1 +1 @@
1
- {"version":3,"file":"eui-ecl-components-ecl-link.d.ts","sources":["../../components/ecl-link/ecl-indicator/ecl-indicator.component.ts","../../components/ecl-link/ecl-indicator/ecl-indicator.directive.ts","../../components/ecl-link/ecl-link-label.directive.ts","../../components/ecl-link/ecl-link.directive.ts","../../components/ecl-link/index.ts"],"mappings":";;;;AAEA;;;AAGG;AACH,cAIa,qBAAqB;AAC9B;;AAEG;AACiC;yCAJ3B,qBAAqB;2CAArB,qBAAqB;AAKjC;;ACbD;;;AAGG;AACH,cAGa,0BAA0B;AACnC;;AAEG;AACwC;yCAJlC,0BAA0B;2CAA1B,0BAA0B;AAKtC;;ACVD,cAGa,qBAAsB,SAAQ,gBAAgB;;yCAA9C,qBAAqB;2CAArB,qBAAqB;AAKjC;AAED,cAGa,6BAA6B;AACS;yCADtC,6BAA6B;2CAA7B,6BAA6B;AAEzC;;ACfD;;AAEG;AACH,cAGa,gBAAiB,SAAQ,gBAAiB,YAAW,gBAAgB;AAC9E,QAAE,UAAA;AACF,cAAQ,SAAA;AACR,QAAE,iBAAA;AAEF;;;AAGG;qBACYA,EAAA,CAAA,WAAA;;AAAiC;AAAiC;AAEjF;;AAEG;AACH,gBAAUA,EAAA,CAAA,wBAAA;AAEV;;AAEG;AACH,gBAAUA,EAAA,CAAA,wBAAA;AAEV;;AAEE;AACF,iBAAWA,EAAA,CAAA,wBAAA;AAEX;;AAEG;AACH,iBAAWA,EAAA,CAAA,wBAAA;AAEX,eAASA,EAAA,CAAA,wBAAA;AAET;;AAEG;AACH,aAAOA,EAAA,CAAA,WAAA;AAEP,uBAAiBA,EAAA,CAAA,MAAA;;;;;;;AAwCjB;;AAEG;;AAeH;AAYA;;AAEG;AACH;AAIA;;AAEG;AACH;AAIA;;AAEG;AACH;yCA5HS,gBAAgB;2CAAhB,gBAAgB;AA+H5B;;AC/HD,cAAa,YAAY,mBAAA,gBAAA,SAAA,qBAAA,SAAA,6BAAA,SAAA,qBAAA,SAAA,0BAAA;;;;","names":["_angular_core"]}
1
+ {"version":3,"file":"eui-ecl-components-ecl-link.d.ts","sources":["../../components/ecl-link/ecl-indicator/ecl-indicator.component.ts","../../components/ecl-link/ecl-indicator/ecl-indicator.directive.ts","../../components/ecl-link/ecl-link-label.directive.ts","../../components/ecl-link/ecl-link.directive.ts","../../components/ecl-link/index.ts"],"mappings":";;;;AAEA;;;AAGG;AACH,cAIa,qBAAqB;AAC9B;;AAEG;AACiC;yCAJ3B,qBAAqB;2CAArB,qBAAqB;AAKjC;;ACbD;;;AAGG;AACH,cAGa,0BAA0B;AACnC;;AAEG;AACwC;yCAJlC,0BAA0B;2CAA1B,0BAA0B;AAKtC;;ACVD,cAGa,qBAAsB,SAAQ,gBAAgB;;yCAA9C,qBAAqB;2CAArB,qBAAqB;AAKjC;AAED,cAGa,6BAA6B;AACS;yCADtC,6BAA6B;2CAA7B,6BAA6B;AAEzC;;ACfD;;AAEG;AACH,cAGa,gBAAiB,SAAQ,gBAAgB;AAClD,QAAE,UAAA;AACF,cAAQ,SAAA;AAER;;;AAGG;qBACYA,EAAA,CAAA,WAAA;;AAAiC;AAAiC;AAEjF;;AAEG;AACH,gBAAUA,EAAA,CAAA,wBAAA;AAEV;;AAEG;AACH,gBAAUA,EAAA,CAAA,wBAAA;AAEV;;AAEE;AACF,iBAAWA,EAAA,CAAA,wBAAA;AAEX;;AAEG;AACH,iBAAWA,EAAA,CAAA,wBAAA;AAEX,eAASA,EAAA,CAAA,wBAAA;AAET;;AAEG;AACH,aAAOA,EAAA,CAAA,WAAA;AAEP,uBAAiBA,EAAA,CAAA,MAAA;;;;;;;AAkDjB;;AAEG;;AAeH;;AAEG;AACH;AAIA;;AAEG;AACH;AAIA;;AAEG;AACH;yCAzHS,gBAAgB;2CAAhB,gBAAgB;AA4H5B;;AC5HD,cAAa,YAAY,mBAAA,gBAAA,SAAA,qBAAA,SAAA,6BAAA,SAAA,qBAAA,SAAA,0BAAA;;;;","names":["_angular_core"]}
@@ -48,11 +48,11 @@ declare class EclListIllustrationItemComponent extends ECLBaseDirective {
48
48
  /**
49
49
  * Returns `true` if the item has a title or any projected icons.
50
50
  */
51
- get hasTitle(): boolean;
51
+ readonly hasTitle: Signal<boolean>;
52
52
  /**
53
53
  * Returns `true` if the item has a value.
54
54
  */
55
- get hasValue(): boolean;
55
+ readonly hasValue: Signal<boolean>;
56
56
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<EclListIllustrationItemComponent, never>;
57
57
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<EclListIllustrationItemComponent, "ecl-list-illustration-item, li[eclListIllustrationItem]", never, { "eclTitle": { "alias": "eclTitle"; "required": false; "isSignal": true; }; "eclValue": { "alias": "eclValue"; "required": false; "isSignal": true; }; }, {}, ["eclIllustrationIcon", "eclIllustrationPicture"], ["[eclListIllustrationImage],[eclListIllustrationPicture],[eclListIllustrationIcon]", "*"], true, never>;
58
58
  }
@@ -129,7 +129,7 @@ declare class EclListIllustrationComponent extends ECLBaseDirective implements A
129
129
  /** If this is an icon-list, it can have dividers between each item. */
130
130
  readonly hasDividers: _angular_core.InputSignalWithTransform<boolean, unknown>;
131
131
  /** If we have a number-list, the user can set the start of the counter. */
132
- counterStart: _angular_core.InputSignal<number>;
132
+ counterStart: _angular_core.InputSignalWithTransform<number, unknown>;
133
133
  readonly eclIllustrationItems: Signal<readonly any[]>;
134
134
  /**
135
135
  * Applies ARIA role for list elements.
@@ -1 +1 @@
1
- {"version":3,"file":"eui-ecl-components-ecl-list-illustration.d.ts","sources":["../../components/ecl-list-illustration/ecl-list-illustration-icon.directive.ts","../../components/ecl-list-illustration/ecl-list-illustration-item.component.ts","../../components/ecl-list-illustration/ecl-list-illustration-picture.directive.ts","../../components/ecl-list-illustration/ecl-list-illustration.component.ts","../../components/ecl-list-illustration/index.ts"],"mappings":";;;;AAGA;;;;AAIG;AACH,cAGa,gCAAiC,SAAQ,gBAAgB;AAClE;;AAEG;AAC+C;oDAJzC,gCAAgC;sDAAhC,gCAAgC;AAK5C;;ACFD;;;;AAIG;AACH,cAIa,gCAAiC,SAAQ,gBAAgB;AAClE;;AAEG;uBACc,aAAA,CAAA,WAAA;AAEjB;;AAEG;uBACc,aAAA,CAAA,WAAA;AAEjB;;AAEG;AACuB;AAE1B;;AAEG;AAC+C;kCAEtB,MAAA;qCAEG,MAAA;;AAG/B,uBAAiB,aAAA,CAAA,cAAA;;AAGjB,gBAAU,aAAA,CAAA,cAAA;AAEV,gBAAY,MAAM;AAElB;;AAEG;;AAKH;;AAEG;;oDA1CM,gCAAgC;sDAAhC,gCAAgC;AA8C5C;;AClED;;;;AAIG;AACH,cAGa,mCAAoC,SAAQ,gBAAiB,YAAW,gBAAgB;AAEjG;;AAEG;uBACc,aAAA,CAAA,wBAAA;mCAEY,aAAA,CAAA,MAAA;AAE7B;;AAEG;;AAQH;oDAnBS,mCAAmC;sDAAnC,mCAAmC;AAsB/C;AAED;;;;AAIG;AACH,cAGa,iCAAkC,SAAQ,gBAAgB;AACnE;;AAEG;AACH;AAEA;;;AAGG;mBACU,aAAA,CAAA,WAAA;AAEb;;AAEG;;oDAdM,iCAAiC;sDAAjC,iCAAiC;AAyB7C;;AC/DD;;;;AAIG;AACH,cAOa,4BAA6B,SAAQ,gBAAiB,YAAW,gBAAgB;AAC1F;;AAEG;sBACa,aAAA,CAAA,wBAAA;AAEhB;;AAEG;AACH,uBAAiB,aAAA,CAAA,wBAAA;AAEjB;;;;;AAKG;uBACc,aAAA,CAAA,WAAA;;yBAGE,aAAA,CAAA,wBAAA;;2BAGE,aAAA,CAAA,wBAAA;;sBAGL,aAAA,CAAA,WAAA;;0BAGI,aAAA,CAAA,wBAAA;;AAGpB,kBAAY,aAAA,CAAA,WAAA;mCAEiB,MAAA;AAE7B;;AAEG;AACuB;AAE1B;;AAEG;;AAiBH;;AAEG;AACH,yBAAmB,MAAA;AAKnB;AAGA;;;;AAmBA;AAcA;oDAxGS,4BAA4B;sDAA5B,4BAA4B;AA+GxC;;ACtHD,cAAa,wBAAwB,mBAAA,4BAAA,SAAA,gCAAA,SAAA,gCAAA,SAAA,mCAAA,SAAA,iCAAA;;;;","names":[]}
1
+ {"version":3,"file":"eui-ecl-components-ecl-list-illustration.d.ts","sources":["../../components/ecl-list-illustration/ecl-list-illustration-icon.directive.ts","../../components/ecl-list-illustration/ecl-list-illustration-item.component.ts","../../components/ecl-list-illustration/ecl-list-illustration-picture.directive.ts","../../components/ecl-list-illustration/ecl-list-illustration.component.ts","../../components/ecl-list-illustration/index.ts"],"mappings":";;;;AAGA;;;;AAIG;AACH,cAGa,gCAAiC,SAAQ,gBAAgB;AAClE;;AAEG;AAC+C;oDAJzC,gCAAgC;sDAAhC,gCAAgC;AAK5C;;ACFD;;;;AAIG;AACH,cAIa,gCAAiC,SAAQ,gBAAgB;AAClE;;AAEG;uBACc,aAAA,CAAA,WAAA;AAEjB;;AAEG;uBACc,aAAA,CAAA,WAAA;AAEjB;;AAEG;AACuB;AAE1B;;AAEG;AAC+C;kCAEtB,MAAA;qCAEG,MAAA;;AAG/B,uBAAiB,aAAA,CAAA,cAAA;;AAGjB,gBAAU,aAAA,CAAA,cAAA;AAEV,gBAAY,MAAM;AAElB;;AAEG;uBACc,MAAA;AAEjB;;AAEG;uBACc,MAAA;oDAzCR,gCAAgC;sDAAhC,gCAAgC;AA0C5C;;AC9DD;;;;AAIG;AACH,cAGa,mCAAoC,SAAQ,gBAAiB,YAAW,gBAAgB;AAEjG;;AAEG;uBACc,aAAA,CAAA,wBAAA;mCAEY,aAAA,CAAA,MAAA;AAE7B;;AAEG;;AAQH;oDAnBS,mCAAmC;sDAAnC,mCAAmC;AAsB/C;AAED;;;;AAIG;AACH,cAGa,iCAAkC,SAAQ,gBAAgB;AACnE;;AAEG;AACH;AAEA;;;AAGG;mBACU,aAAA,CAAA,WAAA;AAEb;;AAEG;;oDAdM,iCAAiC;sDAAjC,iCAAiC;AAyB7C;;AC/DD;;;;AAIG;AACH,cAWa,4BAA6B,SAAQ,gBAAiB,YAAW,gBAAgB;AAC1F;;AAEG;sBACa,aAAA,CAAA,wBAAA;AAEhB;;AAEG;AACH,uBAAiB,aAAA,CAAA,wBAAA;AAEjB;;;;;AAKG;uBACc,aAAA,CAAA,WAAA;;yBAGE,aAAA,CAAA,wBAAA;;2BAGE,aAAA,CAAA,wBAAA;;sBAGL,aAAA,CAAA,WAAA;;0BAGI,aAAA,CAAA,wBAAA;;AAGpB,kBAAY,aAAA,CAAA,wBAAA;mCAEiB,MAAA;AAE7B;;AAEG;AACH;AAEA;;AAEG;;AAgBH;;AAEG;AACH,yBAAmB,MAAA;AAInB;AAEA;;;;AAmBA;AAcA;oDArGS,4BAA4B;sDAA5B,4BAA4B;AA4GxC;;ACvHD,cAAa,wBAAwB,mBAAA,4BAAA,SAAA,gCAAA,SAAA,gCAAA,SAAA,mCAAA,SAAA,iCAAA;;;;","names":[]}
@@ -1,6 +1,6 @@
1
- import { ECLBaseDirective } from '@eui/ecl/core';
2
1
  import * as i0 from '@angular/core';
3
2
  import { AfterContentInit } from '@angular/core';
3
+ import { ECLBaseDirective } from '@eui/ecl/core';
4
4
 
5
5
  /**
6
6
  * Directive representing a single item in an ECL description list definition.
@@ -8,18 +8,18 @@ import { AfterContentInit } from '@angular/core';
8
8
  * Applies the appropriate styling classes and allows visibility control for "see all" behavior.
9
9
  */
10
10
  declare class EclDescriptionListDefinitionItemDirective extends ECLBaseDirective {
11
- /**
12
- * Applies appropriate ECL classes based on visibility state.
13
- */
14
- get cssClasses(): string;
15
11
  /**
16
12
  * Internal state used to hide the item when exceeding the visible limit.
17
13
  */
18
- isHidden: boolean;
14
+ readonly isHidden: i0.WritableSignal<boolean>;
19
15
  /**
20
16
  * Indicates whether this is the last item visible before the "see all" action is triggered.
21
17
  */
22
- isLastVisible: boolean;
18
+ readonly isLastVisible: i0.WritableSignal<boolean>;
19
+ /**
20
+ * Applies appropriate ECL classes based on visibility state.
21
+ */
22
+ get cssClasses(): string;
23
23
  static ɵfac: i0.ɵɵFactoryDeclaration<EclDescriptionListDefinitionItemDirective, never>;
24
24
  static ɵdir: i0.ɵɵDirectiveDeclaration<EclDescriptionListDefinitionItemDirective, "[eclDescriptionListDefinitionItem]", never, {}, {}, never, never, true, never>;
25
25
  }
@@ -29,10 +29,6 @@ declare class EclDescriptionListDefinitionItemDirective extends ECLBaseDirective
29
29
  * Applies the ECL-specific class for the list wrapper.
30
30
  */
31
31
  declare class EclDescriptionListDefinitionListDirective extends ECLBaseDirective {
32
- /**
33
- * Applies the ECL list container class.
34
- */
35
- cmpClass: boolean;
36
32
  static ɵfac: i0.ɵɵFactoryDeclaration<EclDescriptionListDefinitionListDirective, never>;
37
33
  static ɵdir: i0.ɵɵDirectiveDeclaration<EclDescriptionListDefinitionListDirective, "[eclDescriptionListDefinitionList]", never, {}, {}, never, never, true, never>;
38
34
  }
@@ -63,7 +59,8 @@ declare class EclDescriptionListDefinitionComponent extends ECLBaseDirective {
63
59
  get cssClasses(): string;
64
60
  /**
65
61
  * Signal indicating whether the DOM is ready for manipulation.
66
- * Set to true after first render to ensure projected content exists.
62
+ * Set to true after first render to ensure the projected <ul> exists before
63
+ * the see-more link is inserted into it. Defers DOM writes in the effect.
67
64
  */
68
65
  readonly domReady: i0.WritableSignal<boolean>;
69
66
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"eui-ecl-components-ecl-list.d.ts","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-list.directive.ts","../../components/ecl-list/index.ts"],"mappings":";;;;AAGA;;;;AAIG;AACH,cAGa,yCAA0C,SAAQ,gBAAgB;AAC3E;;AAEG;;AAUH;;AAEG;AACH;AAEA;;AAEG;AACH;yCArBS,yCAAyC;2CAAzC,yCAAyC;AAsBrD;AAED;;;;AAIG;AACH,cAGa,yCAA0C,SAAQ,gBAAgB;AAC3E;;AAEG;AACyD;yCAJnD,yCAAyC;2CAAzC,yCAAyC;AAKrD;;ACzBD;;;;AAIG;AACH,cAOa,qCAAsC,SAAQ,gBAAgB;AAEvE;;;AAGG;AACH,aAAOA,EAAA,CAAA,WAAA;AAEP;;;AAGG;AACH,qBAAeA,EAAA,CAAA,cAAA;AAEf;AAIA;AAEA;AACA;AACA;;;;AAcA;;;AAGG;uBACcA,EAAA,CAAA,cAAA;AAEjB;;AAEG;AACH;AAEA;;;AAGG;wBACeA,EAAA,CAAA,MAAA;;AA4ClB;;;AAGG;AACH,wBAAoB,KAAK;AAMzB;;AAEG;AACH;AAMA;;;AAGG;AACH;AA0BA;;AAEG;AACH;AAaA;;;AAGG;AACH;yCApKS,qCAAqC;2CAArC,qCAAqC;AA0KjD;;ACzMD;;AAEG;AACH,cAGa,uBAAwB,SAAQ,gBAAgB;AACzD;;AAEG;AACoC;yCAJ9B,uBAAuB;2CAAvB,uBAAuB;AAKnC;AAED;;AAEG;AACH,cAGa,2BAA4B,SAAQ,gBAAgB;AAC7D;;AAEG;AAC0C;yCAJpC,2BAA2B;2CAA3B,2BAA2B;AAKvC;AAED;;;;AAIG;AACH,cAGa,yBAA0B,SAAQ,gBAAgB;AAC3D;;AAEG;AACsC;AAEzC;;AAEG;AACH,eAASA,EAAA,CAAA,wBAAA;AAET;AAKA;;AAEG;AACH,gBAAUA,EAAA,CAAA,wBAAA;AAEV;yCArBS,yBAAyB;2CAAzB,yBAAyB;AAyBrC;AAED;;AAEG;AACH,cAGa,6BAA8B,SAAQ,gBAAgB;AAC/D;;AAEG;AAC4C;yCAJtC,6BAA6B;2CAA7B,6BAA6B;AAKzC;AAED;;;;;AAKG;AACH,cAGa,2BAA4B,SAAQ,gBAAiB,YAAW,gBAAgB;AACzF;;AAEG;AACH,kBAAYA,EAAA,CAAA,wBAAA;AAEZ;AAKA;;;AAGG;AACH,qBAAeA,EAAA,CAAA,wBAAA;2BAEMA,EAAA,CAAA,MAAA,UAAA,qCAAA;AAErB;;AAEG;;;AAOH;;AAEG;AACH;yCA/BS,2BAA2B;2CAA3B,2BAA2B;AAqCvC;AAED;;AAEG;AACH,cAGa,+BAAgC,SAAQ,gBAAgB;AACjE;;AAEG;AAC8C;yCAJxC,+BAA+B;2CAA/B,+BAA+B;AAK3C;;AC1HD,cAAa,YAAY,mBAAA,uBAAA,SAAA,2BAAA,SAAA,yBAAA,SAAA,6BAAA,SAAA,2BAAA,SAAA,+BAAA,SAAA,qCAAA,SAAA,yCAAA,SAAA,yCAAA;;;;","names":["_angular_core"]}
1
+ {"version":3,"file":"eui-ecl-components-ecl-list.d.ts","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-list.directive.ts","../../components/ecl-list/index.ts"],"mappings":";;;;AAGA;;;;AAIG;AACH,cAMa,yCAA0C,SAAQ,gBAAgB;AAC3E;;AAEG;uBACcA,EAAA,CAAA,cAAA;AAEjB;;AAEG;4BACmBA,EAAA,CAAA,cAAA;AAEtB;;AAEG;;yCAbM,yCAAyC;2CAAzC,yCAAyC;AAqBrD;AAED;;;;AAIG;AACH,cAMa,yCAA0C,SAAQ,gBAAgB;yCAAlE,yCAAyC;2CAAzC,yCAAyC;AAA4B;;AC1BlF;;;;AAIG;AACH,cASa,qCAAsC,SAAQ,gBAAgB;AAEvE;;;AAGG;AACH,aAAOA,EAAA,CAAA,WAAA;AAEP;;;AAGG;AACH,qBAAeA,EAAA,CAAA,cAAA;AAEf;AAIA;AAEA;AACA;AACA;;;;AAYA;;;;AAIG;uBACcA,EAAA,CAAA,cAAA;AAEjB;;AAEG;AACH;AAEA;;;AAGG;wBACeA,EAAA,CAAA,MAAA;;AAsDlB;;;AAGG;AACH,wBAAoB,KAAK;AAMzB;;AAEG;AACH;AAMA;;;AAGG;AACH;AA0BA;;AAEG;AACH;AAaA;;;AAGG;AACH;yCA7KS,qCAAqC;2CAArC,qCAAqC;AAmLjD;;ACnND;;AAEG;AACH,cAGa,uBAAwB,SAAQ,gBAAgB;AACzD;;AAEG;AACoC;yCAJ9B,uBAAuB;2CAAvB,uBAAuB;AAKnC;AAED;;AAEG;AACH,cAGa,2BAA4B,SAAQ,gBAAgB;AAC7D;;AAEG;AAC0C;yCAJpC,2BAA2B;2CAA3B,2BAA2B;AAKvC;AAED;;;;AAIG;AACH,cAGa,yBAA0B,SAAQ,gBAAgB;AAC3D;;AAEG;AACsC;AAEzC;;AAEG;AACH,eAASA,EAAA,CAAA,wBAAA;AAET;AAKA;;AAEG;AACH,gBAAUA,EAAA,CAAA,wBAAA;AAEV;yCArBS,yBAAyB;2CAAzB,yBAAyB;AAyBrC;AAED;;AAEG;AACH,cAGa,6BAA8B,SAAQ,gBAAgB;AAC/D;;AAEG;AAC4C;yCAJtC,6BAA6B;2CAA7B,6BAA6B;AAKzC;AAED;;;;;AAKG;AACH,cAGa,2BAA4B,SAAQ,gBAAiB,YAAW,gBAAgB;AACzF;;AAEG;AACH,kBAAYA,EAAA,CAAA,wBAAA;AAEZ;AAKA;;;AAGG;AACH,qBAAeA,EAAA,CAAA,wBAAA;2BAEMA,EAAA,CAAA,MAAA,UAAA,qCAAA;AAErB;;AAEG;;;AAOH;;AAEG;AACH;yCA/BS,2BAA2B;2CAA3B,2BAA2B;AAqCvC;AAED;;AAEG;AACH,cAGa,+BAAgC,SAAQ,gBAAgB;AACjE;;AAEG;AAC8C;yCAJxC,+BAA+B;2CAA/B,+BAA+B;AAK3C;;AC1HD,cAAa,YAAY,mBAAA,uBAAA,SAAA,2BAAA,SAAA,yBAAA,SAAA,6BAAA,SAAA,2BAAA,SAAA,+BAAA,SAAA,qCAAA,SAAA,yCAAA,SAAA,yCAAA;;;;","names":["_angular_core"]}
@@ -1 +1 @@
1
- {"version":3,"file":"eui-ecl-components-ecl-loading-indicator.d.ts","sources":["../../components/ecl-loading-indicator/ecl-loading-indicator.component.ts","../../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"],"mappings":";;;AAGA;;;;AAIG;AACH,cAIa,4BAA6B,SAAQ,gBAAgB;AAC9D;;;;;;;AAOG;mBACUA,EAAA,CAAA,WAAA;AAEb;;;;;;AAMG;sBACaA,EAAA,CAAA,WAAA;AAEhB;;;;AAIG;yBACgBA,EAAA,CAAA,wBAAA;AAEnB;;;;;;AAMG;wBACeA,EAAA,CAAA,wBAAA;AAElB;;AAEG;AACuB;AAE1B;;AAEG;;yCA3CM,4BAA4B;2CAA5B,4BAA4B;AAwDxC;;AClED;;;;AAIG;AACH,cAGa,iCAAiC;AAC1C;;AAEG;AACqC;yCAJ/B,iCAAiC;2CAAjC,iCAAiC;AAK7C;;ACZD;;;;AAIG;AACH,cAGa,mCAAoC,SAAQ,gBAAgB;AACrE;;AAEG;;yCAHM,mCAAmC;2CAAnC,mCAAmC;AAQ/C;;ACXD,cAAa,yBAAyB,mBAAA,4BAAA,SAAA,iCAAA,SAAA,mCAAA;;;;","names":["_angular_core"]}
1
+ {"version":3,"file":"eui-ecl-components-ecl-loading-indicator.d.ts","sources":["../../components/ecl-loading-indicator/ecl-loading-indicator.component.ts","../../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"],"mappings":";;;AAGA;;;;AAIG;AACH,cAQa,4BAA6B,SAAQ,gBAAgB;AAC9D;;;;;;;AAOG;mBACUA,EAAA,CAAA,WAAA;AAEb;;;;;;AAMG;sBACaA,EAAA,CAAA,WAAA;AAEhB;;;;AAIG;yBACgBA,EAAA,CAAA,wBAAA;AAEnB;;;;;;AAMG;wBACeA,EAAA,CAAA,wBAAA;AAElB;;AAEG;AACH;AAEA;;AAEG;;yCA3CM,4BAA4B;2CAA5B,4BAA4B;AAuDxC;;ACrED;;;;AAIG;AACH,cAMa,iCAAiC;AAC1C;;AAEG;AACH;yCAJS,iCAAiC;2CAAjC,iCAAiC;AAK7C;;ACfD;;;;AAIG;AACH,cAMa,mCAAoC,SAAQ,gBAAgB;AACrE;;AAEG;;yCAHM,mCAAmC;2CAAnC,mCAAmC;AAO/C;;ACbD,cAAa,yBAAyB,mBAAA,4BAAA,SAAA,iCAAA,SAAA,mCAAA;;;;","names":["_angular_core"]}
@@ -10,12 +10,17 @@ import { EclExpandableComponent } from '@eui/ecl/components/ecl-expandable';
10
10
  declare class EclMediaContainerIframeDirective extends ECLBaseDirective {
11
11
  readonly width: _angular_core.InputSignal<any>;
12
12
  readonly height: _angular_core.InputSignal<any>;
13
- get ratio(): string;
14
13
  hasCustomRatio: boolean;
15
14
  private elem;
15
+ /**
16
+ * Aspect ratio applied as a host style binding. Derived from the
17
+ * `width`/`height` inputs (falling back to the element's measured size),
18
+ * and only produced when a custom ratio is requested.
19
+ */
20
+ get ratio(): string | null;
16
21
  calculateCustomRatio(): string;
17
22
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<EclMediaContainerIframeDirective, never>;
18
- static ɵdir: _angular_core.ɵɵDirectiveDeclaration<EclMediaContainerIframeDirective, "iframe[eclMediaContainerIframe]", never, { "width": { "alias": "width"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; "ratio": { "alias": "ratio"; "required": false; }; }, {}, never, never, true, never>;
23
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<EclMediaContainerIframeDirective, "iframe[eclMediaContainerIframe]", never, { "width": { "alias": "width"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
19
24
  }
20
25
 
21
26
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"eui-ecl-components-ecl-media-container.d.ts","sources":["../../components/ecl-media-container/ecl-media-container-iframe.directive.ts","../../components/ecl-media-container/ecl-media-container-item-audio-description.directive.ts","../../components/ecl-media-container/ecl-media-container-item.directive.ts","../../components/ecl-media-container/ecl-media-container-picture.directive.ts","../../components/ecl-media-container/ecl-media-container-caption.directive.ts","../../components/ecl-media-container/ecl-media-container-credit.directive.ts","../../components/ecl-media-container/ecl-media-container.component.ts","../../components/ecl-media-container/index.ts"],"mappings":";;;;;;AAGA;;AAEG;AACH,cAGa,gCAAiC,SAAQ,gBAAgB;oBACpD,aAAA,CAAA,WAAA;qBACC,aAAA,CAAA,WAAA;;AAOf;;AAGA;oDAZS,gCAAgC;sDAAhC,gCAAgC;AAqB5C;;AC3BD;;AAEG;AACH,cAGa,8CAA+C,SAAQ,gBAAgB;;oDAAvE,8CAA8C;sDAA9C,8CAA8C;AAK1D;;ACTD;;AAEG;AACH,cAGa,8BAA+B,SAAQ,gBAAiB,YAAW,gBAAgB;AAC5F,QAAE,UAAA;oBAEY,aAAA,CAAA,WAAA;4BACQ,aAAA,CAAA,MAAA,CAAA,gCAAA;;AAcf;;;AAUP;AAYA;oDAxCS,8BAA8B;sDAA9B,8BAA8B;AAiD1C;;ACzDD;;AAEG;AACH,cAGa,iCAAkC,SAAQ,gBAAgB;;oDAA1D,iCAAiC;sDAAjC,iCAAiC;AAK7C;;ACXD;;AAEG;AACH,cAGa,iCAAkC,SAAQ,gBAAgB;;oDAA1D,iCAAiC;sDAAjC,iCAAiC;AAK7C;;ACXD;;AAEG;AACH,cAGa,gCAAiC,SAAQ,gBAAgB;;oDAAzD,gCAAgC;sDAAhC,gCAAgC;AAK5C;;ACJD;;AAEG;AACH,cAgBa,0BAA2B,SAAQ,gBAAiB,YAAW,gBAAgB,EAAE,SAAS;0BAC/E,aAAA,CAAA,wBAAA;AACpB;;AAEG;0BACiB,aAAA,CAAA,wBAAA;AAEpB,qBAAe,aAAA,CAAA,WAAA;AAEf;;AAEG;AACH,6BAAuB,aAAA,CAAA,cAAA;yBAEJ,aAAA,CAAA,MAAA,CAAA,sBAAA;oCACW,aAAA,CAAA,MAAA,CAAA,8BAAA;yBACX,aAAA,CAAA,MAAA,UAAA,kBAAA;0BACC,aAAA,CAAA,MAAA,CAAA,kBAAA;yBACD,aAAA,CAAA,MAAA,CAAA,kBAAA;;AAEnB;AACA;AAEA,yBAAmB,aAAA,CAAA,cAAA;AAEnB;;AAEG;AACH,6BAAuB,aAAA,CAAA,MAAA;AAEvB;;AAEG;AACH,gBAAU,aAAA,CAAA,MAAA;AAOV,cAAQ,aAAA,CAAA,cAAA;AAED;AACP;;;;;AAMA;AAiCA;AAOA;;AAEG;AACH;AAWA;;AAEG;AACH;AAWA;AAOA;oDA5HS,0BAA0B;sDAA1B,0BAA0B;AAmItC;;AChJD,cAAa,uBAAuB,mBAAA,0BAAA,SAAA,8BAAA,SAAA,gCAAA,SAAA,iCAAA,SAAA,8CAAA,SAAA,iCAAA,SAAA,gCAAA;;;;","names":[]}
1
+ {"version":3,"file":"eui-ecl-components-ecl-media-container.d.ts","sources":["../../components/ecl-media-container/ecl-media-container-iframe.directive.ts","../../components/ecl-media-container/ecl-media-container-item-audio-description.directive.ts","../../components/ecl-media-container/ecl-media-container-item.directive.ts","../../components/ecl-media-container/ecl-media-container-picture.directive.ts","../../components/ecl-media-container/ecl-media-container-caption.directive.ts","../../components/ecl-media-container/ecl-media-container-credit.directive.ts","../../components/ecl-media-container/ecl-media-container.component.ts","../../components/ecl-media-container/index.ts"],"mappings":";;;;;;AAGA;;AAEG;AACH,cAMa,gCAAiC,SAAQ,gBAAgB;oBACpD,aAAA,CAAA,WAAA;qBACC,aAAA,CAAA,WAAA;AAEf;;AAGA;;;;AAIG;AACH;AAIA;oDAhBS,gCAAgC;sDAAhC,gCAAgC;AAyB5C;;AClCD;;AAEG;AACH,cAMa,8CAA+C,SAAQ,gBAAgB;;oDAAvE,8CAA8C;sDAA9C,8CAA8C;AAI1D;;ACXD;;AAEG;AACH,cAMa,8BAA+B,SAAQ,gBAAiB,YAAW,gBAAgB;AAC5F,QAAE,UAAA;oBAEY,aAAA,CAAA,WAAA;4BACQ,aAAA,CAAA,MAAA,CAAA,gCAAA;;AAaf;;;AAUP;AAYA;oDAvCS,8BAA8B;sDAA9B,8BAA8B;AAgD1C;;AC3DD;;AAEG;AACH,cAMa,iCAAkC,SAAQ,gBAAgB;;oDAA1D,iCAAiC;sDAAjC,iCAAiC;AAI7C;;ACbD;;AAEG;AACH,cAMa,iCAAkC,SAAQ,gBAAgB;;oDAA1D,iCAAiC;sDAAjC,iCAAiC;AAI7C;;ACbD;;AAEG;AACH,cAMa,gCAAiC,SAAQ,gBAAgB;;oDAAzD,gCAAgC;sDAAhC,gCAAgC;AAI5C;;ACND;;AAEG;AACH,cAgBa,0BAA2B,SAAQ,gBAAiB,YAAW,gBAAgB,EAAE,SAAS;0BAC/E,aAAA,CAAA,wBAAA;AACpB;;AAEG;0BACiB,aAAA,CAAA,wBAAA;AAEpB,qBAAe,aAAA,CAAA,WAAA;AAEf;;AAEG;AACH,6BAAuB,aAAA,CAAA,cAAA;yBAEJ,aAAA,CAAA,MAAA,CAAA,sBAAA;oCACW,aAAA,CAAA,MAAA,CAAA,8BAAA;yBACX,aAAA,CAAA,MAAA,UAAA,kBAAA;0BACC,aAAA,CAAA,MAAA,CAAA,kBAAA;yBACD,aAAA,CAAA,MAAA,CAAA,kBAAA;;AAEnB;AACA;AAEA,yBAAmB,aAAA,CAAA,cAAA;AAEnB;;AAEG;AACH,6BAAuB,aAAA,CAAA,MAAA;AAEvB;;AAEG;AACH,gBAAU,aAAA,CAAA,MAAA;AAOV,cAAQ,aAAA,CAAA,cAAA;AAED;AACP;;;;;AAMA;AAiCA;AAOA;;AAEG;AACH;AAWA;;AAEG;AACH;AAWA;AAOA;oDA5HS,0BAA0B;sDAA1B,0BAA0B;AAmItC;;AChJD,cAAa,uBAAuB,mBAAA,0BAAA,SAAA,8BAAA,SAAA,gCAAA,SAAA,iCAAA,SAAA,8CAAA,SAAA,iCAAA,SAAA,gCAAA;;;;","names":[]}
@@ -27,11 +27,11 @@ declare class EclSocialMediaFollowItemComponent extends ECLBaseDirective {
27
27
  name: string;
28
28
  value?: string | null;
29
29
  }[]>;
30
- private parent;
31
- get isIconOnly(): boolean;
32
30
  get cssClasses(): string;
33
31
  readonly itemClick: _angular_core.OutputEmitterRef<EclSocialMediaFollowItemClickEvent>;
34
- onItemClick(evt: any): void;
32
+ private parent;
33
+ get isIconOnly(): boolean;
34
+ onItemClick(evt: Event): void;
35
35
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<EclSocialMediaFollowItemComponent, never>;
36
36
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<EclSocialMediaFollowItemComponent, "ecl-social-media-follow-item", never, { "isInverted": { "alias": "isInverted"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "iconSet": { "alias": "iconSet"; "required": false; "isSignal": true; }; "href": { "alias": "href"; "required": false; "isSignal": true; }; "routerLink": { "alias": "routerLink"; "required": false; "isSignal": true; }; "target": { "alias": "target"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "extraAttributes": { "alias": "extraAttributes"; "required": false; "isSignal": true; }; }, { "itemClick": "itemClick"; }, never, ["*"], true, never>;
37
37
  }
@@ -1 +1 @@
1
- {"version":3,"file":"eui-ecl-components-ecl-social-media-follow.d.ts","sources":["../../components/ecl-social-media-follow/ecl-social-media-follow.component.ts","../../components/ecl-social-media-follow/ecl-social-media-follow-item.component.ts","../../components/ecl-social-media-follow/ecl-social-media-follow-link.directive.ts","../../components/ecl-social-media-follow/index.ts"],"mappings":";;;;;AAGA,cAOa,6BAA8B,SAAQ,gBAAgB;0BAC3C,aAAA,CAAA,WAAA;yBACD,aAAA,CAAA,wBAAA;yBACA,aAAA,CAAA,wBAAA;kCACS,aAAA,CAAA,WAAA;;oDAJnB,6BAA6B;sDAA7B,6BAA6B;AAezC;;AChBD,cAAa,kCAAmC,SAAQ,YAAY;AAAG;AAEvE,cASa,iCAAkC,SAAQ,gBAAgB;yBAChD,aAAA,CAAA,wBAAA;AACnB,UAAI,aAAA,CAAA,WAAA;AACJ,aAAO,aAAA,CAAA,WAAA;mBACM,aAAA,CAAA,WAAA;yBACM,aAAA,CAAA,WAAA;qBACJ,aAAA,CAAA,WAAA;mBACF,aAAA,CAAA,WAAA;AACb,8BAAwB,aAAA,CAAA,WAAA;;AAEZ;AACI;;;;wBAYE,aAAA,CAAA,gBAAA,CAAA,kCAAA;AAElB;oDAzBS,iCAAiC;sDAAjC,iCAAiC;AA+B7C;;AC/CD,cAGa,iCAAkC,SAAQ,gBAAiB,YAAW,gBAAgB;sBAC/E,aAAA,CAAA,MAAA,CAAA,gBAAA;;AAOhB;oDARS,iCAAiC;sDAAjC,iCAAiC;AAa7C;;ACZD,cAAa,2BAA2B,mBAAA,6BAAA,SAAA,iCAAA,SAAA,iCAAA;;;;","names":[]}
1
+ {"version":3,"file":"eui-ecl-components-ecl-social-media-follow.d.ts","sources":["../../components/ecl-social-media-follow/ecl-social-media-follow.component.ts","../../components/ecl-social-media-follow/ecl-social-media-follow-item.component.ts","../../components/ecl-social-media-follow/ecl-social-media-follow-link.directive.ts","../../components/ecl-social-media-follow/index.ts"],"mappings":";;;;;AAGA,cAOa,6BAA8B,SAAQ,gBAAgB;0BAC3C,aAAA,CAAA,WAAA;yBACD,aAAA,CAAA,wBAAA;yBACA,aAAA,CAAA,wBAAA;kCACS,aAAA,CAAA,WAAA;;oDAJnB,6BAA6B;sDAA7B,6BAA6B;AAezC;;AChBD,cAAa,kCAAmC,SAAQ,YAAY;AAAG;AAEvE,cASa,iCAAkC,SAAQ,gBAAgB;yBAChD,aAAA,CAAA,wBAAA;AACnB,UAAI,aAAA,CAAA,WAAA;AACJ,aAAO,aAAA,CAAA,WAAA;mBACM,aAAA,CAAA,WAAA;yBACM,aAAA,CAAA,WAAA;qBACJ,aAAA,CAAA,WAAA;mBACF,aAAA,CAAA,WAAA;AACb,8BAAwB,aAAA,CAAA,WAAA;;AAEZ;AACI;;wBAME,aAAA,CAAA,gBAAA,CAAA,kCAAA;;;AAQlB,qBAAiB,KAAK;oDAzBb,iCAAiC;sDAAjC,iCAAiC;AA+B7C;;AC/CD,cAGa,iCAAkC,SAAQ,gBAAiB,YAAW,gBAAgB;sBAC/E,aAAA,CAAA,MAAA,CAAA,gBAAA;;AAOhB;oDARS,iCAAiC;sDAAjC,iCAAiC;AAa7C;;ACZD,cAAa,2BAA2B,mBAAA,6BAAA,SAAA,iCAAA,SAAA,iCAAA;;;;","names":[]}