@eui/ecl 21.0.0-alpha.1 → 21.0.0-alpha.11

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 (139) hide show
  1. package/components/ecl-content-item/index.d.ts.map +1 -1
  2. package/components/ecl-date-block/index.d.ts.map +1 -1
  3. package/components/ecl-icon/index.d.ts +2 -3
  4. package/components/ecl-icon/index.d.ts.map +1 -1
  5. package/components/ecl-menu/index.d.ts.map +1 -1
  6. package/components/ecl-multiselect/index.d.ts.map +1 -1
  7. package/components/ecl-search-form/index.d.ts.map +1 -1
  8. package/docs/changelog.html +377 -0
  9. package/docs/components/EclIconComponent.html +1 -15
  10. package/docs/js/search/search_index.js +2 -2
  11. package/docs/miscellaneous/variables.html +2 -2
  12. package/docs/properties.html +1 -1
  13. package/fesm2022/eui-ecl-components-ecl-accordion.mjs +10 -10
  14. package/fesm2022/eui-ecl-components-ecl-accordion.mjs.map +1 -1
  15. package/fesm2022/eui-ecl-components-ecl-app.mjs +7 -7
  16. package/fesm2022/eui-ecl-components-ecl-app.mjs.map +1 -1
  17. package/fesm2022/eui-ecl-components-ecl-banner.mjs +34 -34
  18. package/fesm2022/eui-ecl-components-ecl-banner.mjs.map +1 -1
  19. package/fesm2022/eui-ecl-components-ecl-blockquote.mjs +13 -13
  20. package/fesm2022/eui-ecl-components-ecl-blockquote.mjs.map +1 -1
  21. package/fesm2022/eui-ecl-components-ecl-breadcrumb.mjs +13 -13
  22. package/fesm2022/eui-ecl-components-ecl-breadcrumb.mjs.map +1 -1
  23. package/fesm2022/eui-ecl-components-ecl-button.mjs +16 -16
  24. package/fesm2022/eui-ecl-components-ecl-button.mjs.map +1 -1
  25. package/fesm2022/eui-ecl-components-ecl-card.mjs +16 -16
  26. package/fesm2022/eui-ecl-components-ecl-card.mjs.map +1 -1
  27. package/fesm2022/eui-ecl-components-ecl-carousel.mjs +10 -10
  28. package/fesm2022/eui-ecl-components-ecl-carousel.mjs.map +1 -1
  29. package/fesm2022/eui-ecl-components-ecl-category-filter.mjs +13 -13
  30. package/fesm2022/eui-ecl-components-ecl-category-filter.mjs.map +1 -1
  31. package/fesm2022/eui-ecl-components-ecl-checkbox.mjs +16 -16
  32. package/fesm2022/eui-ecl-components-ecl-checkbox.mjs.map +1 -1
  33. package/fesm2022/eui-ecl-components-ecl-content-block.mjs +58 -58
  34. package/fesm2022/eui-ecl-components-ecl-content-block.mjs.map +1 -1
  35. package/fesm2022/eui-ecl-components-ecl-content-item.mjs +13 -13
  36. package/fesm2022/eui-ecl-components-ecl-content-item.mjs.map +1 -1
  37. package/fesm2022/eui-ecl-components-ecl-date-block.mjs +31 -7
  38. package/fesm2022/eui-ecl-components-ecl-date-block.mjs.map +1 -1
  39. package/fesm2022/eui-ecl-components-ecl-date-picker.mjs +7 -7
  40. package/fesm2022/eui-ecl-components-ecl-date-picker.mjs.map +1 -1
  41. package/fesm2022/eui-ecl-components-ecl-expandable.mjs +7 -7
  42. package/fesm2022/eui-ecl-components-ecl-expandable.mjs.map +1 -1
  43. package/fesm2022/eui-ecl-components-ecl-fact-figures.mjs +22 -22
  44. package/fesm2022/eui-ecl-components-ecl-fact-figures.mjs.map +1 -1
  45. package/fesm2022/eui-ecl-components-ecl-featured.mjs +25 -25
  46. package/fesm2022/eui-ecl-components-ecl-featured.mjs.map +1 -1
  47. package/fesm2022/eui-ecl-components-ecl-feedback-message.mjs +7 -7
  48. package/fesm2022/eui-ecl-components-ecl-feedback-message.mjs.map +1 -1
  49. package/fesm2022/eui-ecl-components-ecl-file-upload.mjs +7 -7
  50. package/fesm2022/eui-ecl-components-ecl-file-upload.mjs.map +1 -1
  51. package/fesm2022/eui-ecl-components-ecl-file.mjs +34 -34
  52. package/fesm2022/eui-ecl-components-ecl-file.mjs.map +1 -1
  53. package/fesm2022/eui-ecl-components-ecl-form-group.mjs +7 -7
  54. package/fesm2022/eui-ecl-components-ecl-form-group.mjs.map +1 -1
  55. package/fesm2022/eui-ecl-components-ecl-form-label.mjs +10 -10
  56. package/fesm2022/eui-ecl-components-ecl-form-label.mjs.map +1 -1
  57. package/fesm2022/eui-ecl-components-ecl-gallery.mjs +22 -22
  58. package/fesm2022/eui-ecl-components-ecl-gallery.mjs.map +1 -1
  59. package/fesm2022/eui-ecl-components-ecl-help-block.mjs +7 -7
  60. package/fesm2022/eui-ecl-components-ecl-help-block.mjs.map +1 -1
  61. package/fesm2022/eui-ecl-components-ecl-icon.mjs +18 -19
  62. package/fesm2022/eui-ecl-components-ecl-icon.mjs.map +1 -1
  63. package/fesm2022/eui-ecl-components-ecl-inpage-navigation.mjs +16 -16
  64. package/fesm2022/eui-ecl-components-ecl-inpage-navigation.mjs.map +1 -1
  65. package/fesm2022/eui-ecl-components-ecl-label.mjs +7 -7
  66. package/fesm2022/eui-ecl-components-ecl-label.mjs.map +1 -1
  67. package/fesm2022/eui-ecl-components-ecl-link.mjs +16 -16
  68. package/fesm2022/eui-ecl-components-ecl-link.mjs.map +1 -1
  69. package/fesm2022/eui-ecl-components-ecl-list-illustration.mjs +19 -19
  70. package/fesm2022/eui-ecl-components-ecl-list-illustration.mjs.map +1 -1
  71. package/fesm2022/eui-ecl-components-ecl-list.mjs +31 -31
  72. package/fesm2022/eui-ecl-components-ecl-list.mjs.map +1 -1
  73. package/fesm2022/eui-ecl-components-ecl-loading-indicator.mjs +13 -13
  74. package/fesm2022/eui-ecl-components-ecl-loading-indicator.mjs.map +1 -1
  75. package/fesm2022/eui-ecl-components-ecl-media-container.mjs +19 -19
  76. package/fesm2022/eui-ecl-components-ecl-media-container.mjs.map +1 -1
  77. package/fesm2022/eui-ecl-components-ecl-mega-menu.mjs +49 -49
  78. package/fesm2022/eui-ecl-components-ecl-mega-menu.mjs.map +1 -1
  79. package/fesm2022/eui-ecl-components-ecl-menu.mjs +16 -16
  80. package/fesm2022/eui-ecl-components-ecl-menu.mjs.map +1 -1
  81. package/fesm2022/eui-ecl-components-ecl-modal.mjs +25 -25
  82. package/fesm2022/eui-ecl-components-ecl-modal.mjs.map +1 -1
  83. package/fesm2022/eui-ecl-components-ecl-multiselect.mjs +25 -25
  84. package/fesm2022/eui-ecl-components-ecl-multiselect.mjs.map +1 -1
  85. package/fesm2022/eui-ecl-components-ecl-navigation-list.mjs +16 -16
  86. package/fesm2022/eui-ecl-components-ecl-navigation-list.mjs.map +1 -1
  87. package/fesm2022/eui-ecl-components-ecl-news-ticker.mjs +13 -13
  88. package/fesm2022/eui-ecl-components-ecl-news-ticker.mjs.map +1 -1
  89. package/fesm2022/eui-ecl-components-ecl-notification.mjs +10 -10
  90. package/fesm2022/eui-ecl-components-ecl-notification.mjs.map +1 -1
  91. package/fesm2022/eui-ecl-components-ecl-page-header.mjs +37 -37
  92. package/fesm2022/eui-ecl-components-ecl-page-header.mjs.map +1 -1
  93. package/fesm2022/eui-ecl-components-ecl-pagination.mjs +15 -15
  94. package/fesm2022/eui-ecl-components-ecl-pagination.mjs.map +1 -1
  95. package/fesm2022/eui-ecl-components-ecl-popover.mjs +13 -13
  96. package/fesm2022/eui-ecl-components-ecl-popover.mjs.map +1 -1
  97. package/fesm2022/eui-ecl-components-ecl-radio.mjs +16 -16
  98. package/fesm2022/eui-ecl-components-ecl-radio.mjs.map +1 -1
  99. package/fesm2022/eui-ecl-components-ecl-range.mjs +13 -13
  100. package/fesm2022/eui-ecl-components-ecl-range.mjs.map +1 -1
  101. package/fesm2022/eui-ecl-components-ecl-rating-field.mjs +7 -7
  102. package/fesm2022/eui-ecl-components-ecl-rating-field.mjs.map +1 -1
  103. package/fesm2022/eui-ecl-components-ecl-search-form.mjs +9 -9
  104. package/fesm2022/eui-ecl-components-ecl-search-form.mjs.map +1 -1
  105. package/fesm2022/eui-ecl-components-ecl-select.mjs +10 -10
  106. package/fesm2022/eui-ecl-components-ecl-select.mjs.map +1 -1
  107. package/fesm2022/eui-ecl-components-ecl-separator.mjs +7 -7
  108. package/fesm2022/eui-ecl-components-ecl-separator.mjs.map +1 -1
  109. package/fesm2022/eui-ecl-components-ecl-site-footer.mjs +61 -61
  110. package/fesm2022/eui-ecl-components-ecl-site-footer.mjs.map +1 -1
  111. package/fesm2022/eui-ecl-components-ecl-site-header.mjs +67 -67
  112. package/fesm2022/eui-ecl-components-ecl-site-header.mjs.map +1 -1
  113. package/fesm2022/eui-ecl-components-ecl-social-media-follow.mjs +13 -13
  114. package/fesm2022/eui-ecl-components-ecl-social-media-follow.mjs.map +1 -1
  115. package/fesm2022/eui-ecl-components-ecl-social-media-share.mjs +13 -13
  116. package/fesm2022/eui-ecl-components-ecl-social-media-share.mjs.map +1 -1
  117. package/fesm2022/eui-ecl-components-ecl-splash-page.mjs +31 -31
  118. package/fesm2022/eui-ecl-components-ecl-splash-page.mjs.map +1 -1
  119. package/fesm2022/eui-ecl-components-ecl-sticky-container.mjs +7 -7
  120. package/fesm2022/eui-ecl-components-ecl-sticky-container.mjs.map +1 -1
  121. package/fesm2022/eui-ecl-components-ecl-table.mjs +35 -35
  122. package/fesm2022/eui-ecl-components-ecl-table.mjs.map +1 -1
  123. package/fesm2022/eui-ecl-components-ecl-tabs.mjs +16 -16
  124. package/fesm2022/eui-ecl-components-ecl-tabs.mjs.map +1 -1
  125. package/fesm2022/eui-ecl-components-ecl-tag.mjs +16 -16
  126. package/fesm2022/eui-ecl-components-ecl-tag.mjs.map +1 -1
  127. package/fesm2022/eui-ecl-components-ecl-text-area.mjs +7 -7
  128. package/fesm2022/eui-ecl-components-ecl-text-area.mjs.map +1 -1
  129. package/fesm2022/eui-ecl-components-ecl-text-input.mjs +7 -7
  130. package/fesm2022/eui-ecl-components-ecl-text-input.mjs.map +1 -1
  131. package/fesm2022/eui-ecl-components-ecl-timeline.mjs +19 -19
  132. package/fesm2022/eui-ecl-components-ecl-timeline.mjs.map +1 -1
  133. package/fesm2022/eui-ecl-core.mjs +25 -25
  134. package/fesm2022/eui-ecl-core.mjs.map +1 -1
  135. package/fesm2022/eui-ecl-shared.mjs +3 -3
  136. package/fesm2022/eui-ecl-shared.mjs.map +1 -1
  137. package/fesm2022/eui-ecl.mjs +4 -4
  138. package/fesm2022/eui-ecl.mjs.map +1 -1
  139. package/package.json +40 -40
@@ -58,10 +58,10 @@ class EclBlockquoteComponent extends ECLBaseDirective {
58
58
  this.cd.detectChanges();
59
59
  });
60
60
  }
61
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: EclBlockquoteComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
62
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.6", type: EclBlockquoteComponent, isStandalone: true, selector: "[eclBlockquote]", inputs: { author: "author" }, host: { properties: { "class": "this.cssClasses" } }, usesInheritance: true, ngImport: i0, template: "<ng-content select=\"picture[eclBlockquotePicture]\"></ng-content>\n<div class=\"ecl-blockquote__body\">\n <blockquote class=\"ecl-blockquote__quote\">\n <p class=\"ecl-blockquote__citation\" [attr.lang]=\"languageCode\">\n <ng-content></ng-content>\n </p>\n @if (hasAuthor) {\n <footer class=\"ecl-blockquote__attribution\">\n <cite class=\"ecl-blockquote__author\">{{ author }}</cite>\n </footer>\n }\n </blockquote>\n</div>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
61
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclBlockquoteComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
62
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.0-next.1", type: EclBlockquoteComponent, isStandalone: true, selector: "[eclBlockquote]", inputs: { author: "author" }, host: { properties: { "class": "this.cssClasses" } }, usesInheritance: true, ngImport: i0, template: "<ng-content select=\"picture[eclBlockquotePicture]\"></ng-content>\n<div class=\"ecl-blockquote__body\">\n <blockquote class=\"ecl-blockquote__quote\">\n <p class=\"ecl-blockquote__citation\" [attr.lang]=\"languageCode\">\n <ng-content></ng-content>\n </p>\n @if (hasAuthor) {\n <footer class=\"ecl-blockquote__attribution\">\n <cite class=\"ecl-blockquote__author\">{{ author }}</cite>\n </footer>\n }\n </blockquote>\n</div>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
63
63
  }
64
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: EclBlockquoteComponent, decorators: [{
64
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclBlockquoteComponent, decorators: [{
65
65
  type: Component,
66
66
  args: [{ selector: '[eclBlockquote]', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, imports: [CommonModule], template: "<ng-content select=\"picture[eclBlockquotePicture]\"></ng-content>\n<div class=\"ecl-blockquote__body\">\n <blockquote class=\"ecl-blockquote__quote\">\n <p class=\"ecl-blockquote__citation\" [attr.lang]=\"languageCode\">\n <ng-content></ng-content>\n </p>\n @if (hasAuthor) {\n <footer class=\"ecl-blockquote__attribution\">\n <cite class=\"ecl-blockquote__author\">{{ author }}</cite>\n </footer>\n }\n </blockquote>\n</div>\n" }]
67
67
  }], propDecorators: { author: [{
@@ -82,10 +82,10 @@ class EclBlockquotePictureDirective extends ECLBaseDirective {
82
82
  get cssClasses() {
83
83
  return [super.getCssClasses('ecl-picture ecl-blockquote__picture')].join(' ').trim();
84
84
  }
85
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: EclBlockquotePictureDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
86
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.1.6", type: EclBlockquotePictureDirective, isStandalone: true, selector: "picture[eclBlockquotePicture]", host: { properties: { "class": "this.cssClasses" } }, usesInheritance: true, ngImport: i0 }); }
85
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclBlockquotePictureDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
86
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.0-next.1", type: EclBlockquotePictureDirective, isStandalone: true, selector: "picture[eclBlockquotePicture]", host: { properties: { "class": "this.cssClasses" } }, usesInheritance: true, ngImport: i0 }); }
87
87
  }
88
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: EclBlockquotePictureDirective, decorators: [{
88
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclBlockquotePictureDirective, decorators: [{
89
89
  type: Directive,
90
90
  args: [{
91
91
  selector: 'picture[eclBlockquotePicture]',
@@ -105,10 +105,10 @@ class EclBlockquoteImageDirective extends ECLBaseDirective {
105
105
  get cssClasses() {
106
106
  return [super.getCssClasses('ecl-blockquote__image')].join(' ').trim();
107
107
  }
108
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: EclBlockquoteImageDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
109
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.1.6", type: EclBlockquoteImageDirective, isStandalone: true, selector: "img[eclBlockquoteImage]", host: { properties: { "class": "this.cssClasses" } }, usesInheritance: true, ngImport: i0 }); }
108
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclBlockquoteImageDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
109
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.0-next.1", type: EclBlockquoteImageDirective, isStandalone: true, selector: "img[eclBlockquoteImage]", host: { properties: { "class": "this.cssClasses" } }, usesInheritance: true, ngImport: i0 }); }
110
110
  }
111
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: EclBlockquoteImageDirective, decorators: [{
111
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclBlockquoteImageDirective, decorators: [{
112
112
  type: Directive,
113
113
  args: [{
114
114
  selector: 'img[eclBlockquoteImage]',
@@ -126,11 +126,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImpor
126
126
  * @deprecated Use {@link EUI_ECL_BLOCKQUOTE} instead.
127
127
  */
128
128
  class EclBlockquoteModule {
129
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: EclBlockquoteModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
130
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.1.6", ngImport: i0, type: EclBlockquoteModule, imports: [EclBlockquoteComponent, EclBlockquoteImageDirective, EclBlockquotePictureDirective], exports: [EclBlockquoteComponent, EclBlockquoteImageDirective, EclBlockquotePictureDirective] }); }
131
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: EclBlockquoteModule, imports: [EclBlockquoteComponent] }); }
129
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclBlockquoteModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
130
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclBlockquoteModule, imports: [EclBlockquoteComponent, EclBlockquoteImageDirective, EclBlockquotePictureDirective], exports: [EclBlockquoteComponent, EclBlockquoteImageDirective, EclBlockquotePictureDirective] }); }
131
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclBlockquoteModule, imports: [EclBlockquoteComponent] }); }
132
132
  }
133
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: EclBlockquoteModule, decorators: [{
133
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclBlockquoteModule, decorators: [{
134
134
  type: NgModule,
135
135
  args: [{
136
136
  imports: [EclBlockquoteComponent, EclBlockquoteImageDirective, EclBlockquotePictureDirective],
@@ -1 +1 @@
1
- {"version":3,"file":"eui-ecl-components-ecl-blockquote.mjs","sources":["../../components/ecl-blockquote/ecl-blockquote.component.ts","../../components/ecl-blockquote/ecl-blockquote.component.html","../../components/ecl-blockquote/ecl-blockquote-picture.directive.ts","../../components/ecl-blockquote/ecl-blockquote.module.ts","../../components/ecl-blockquote/index.ts","../../components/ecl-blockquote/eui-ecl-components-ecl-blockquote.ts"],"sourcesContent":["import {\n Component,\n Input,\n HostBinding,\n ChangeDetectionStrategy,\n ViewEncapsulation,\n OnInit,\n OnDestroy,\n ChangeDetectorRef,\n inject,\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport { I18nService } from '@eui/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Blockquote component based on the ECL design system.\n * Displays quoted text with an optional author.\n * Supports language awareness through the I18n service.\n */\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[eclBlockquote]',\n templateUrl: './ecl-blockquote.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n})\nexport class EclBlockquoteComponent extends ECLBaseDirective implements OnInit, OnDestroy {\n /**\n * Author name associated with the quoted content.\n * If provided, it will be displayed below the blockquote.\n */\n @Input() author: string;\n /**\n * Current active language code, retrieved from the I18n service.\n */\n languageCode = 'en';\n protected i18nService = inject(I18nService);\n private cd = inject(ChangeDetectorRef);\n\n /**\n * Applies the CSS classes for the blockquote element.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-blockquote')].join(' ').trim();\n }\n\n private destroy$: Subject<boolean> = new Subject<boolean>();\n\n /**\n * Angular lifecycle hook.\n * Subscribes to language change events on component initialization.\n */\n ngOnInit(): void {\n this.handleLanguageChangeState();\n }\n\n /**\n * Angular lifecycle hook.\n * Cleans up subscriptions on component destruction.\n */\n ngOnDestroy(): void {\n this.destroy$.next(true);\n this.destroy$.unsubscribe();\n }\n\n /**\n * Checks if an author is provided.\n */\n get hasAuthor(): boolean {\n return this.author !== null;\n }\n\n /**\n * Handles updates to the language code when the I18n service state changes.\n */\n private handleLanguageChangeState(): void {\n this.i18nService.getState().pipe(takeUntil(this.destroy$)).subscribe((lang) => {\n this.languageCode = lang.activeLang;\n this.cd.detectChanges();\n });\n }\n}\n","<ng-content select=\"picture[eclBlockquotePicture]\"></ng-content>\n<div class=\"ecl-blockquote__body\">\n <blockquote class=\"ecl-blockquote__quote\">\n <p class=\"ecl-blockquote__citation\" [attr.lang]=\"languageCode\">\n <ng-content></ng-content>\n </p>\n @if (hasAuthor) {\n <footer class=\"ecl-blockquote__attribution\">\n <cite class=\"ecl-blockquote__author\">{{ author }}</cite>\n </footer>\n }\n </blockquote>\n</div>\n","import { Directive, HostBinding } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Directive for the picture element inside the ECL Blockquote.\n * Automatically applies the `ecl-picture` and `ecl-blockquote__picture` CSS classes.\n */\n@Directive({\n selector: 'picture[eclBlockquotePicture]',\n})\nexport class EclBlockquotePictureDirective extends ECLBaseDirective {\n /**\n * Returns the CSS classes to apply for the blockquote picture element.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-picture ecl-blockquote__picture')].join(' ').trim();\n }\n}\n\n/**\n * Directive for the image inside the ECL Blockquote.\n * Automatically applies the `ecl-blockquote__image` CSS class.\n */\n@Directive({\n selector: 'img[eclBlockquoteImage]',\n standalone: true,\n})\nexport class EclBlockquoteImageDirective extends ECLBaseDirective {\n /**\n * Returns the CSS classes to apply for the blockquote image element.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-blockquote__image')].join(' ').trim();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { EclBlockquoteComponent } from './ecl-blockquote.component';\nimport { EclBlockquoteImageDirective, EclBlockquotePictureDirective } from './ecl-blockquote-picture.directive';\n\n/**\n * @description\n * Module that provides the EclBlockquote component and its dependencies.\n *\n * @deprecated Use {@link EUI_ECL_BLOCKQUOTE} instead.\n */\n@NgModule({\n imports: [EclBlockquoteComponent, EclBlockquoteImageDirective, EclBlockquotePictureDirective],\n exports: [EclBlockquoteComponent, EclBlockquoteImageDirective, EclBlockquotePictureDirective],\n})\nexport class EclBlockquoteModule {}\n","import { EclBlockquoteComponent } from './ecl-blockquote.component';\nimport { EclBlockquoteImageDirective } from './ecl-blockquote-picture.directive';\nimport { EclBlockquotePictureDirective } from './ecl-blockquote-picture.directive';\n\nexport * from './ecl-blockquote.module';\nexport * from './ecl-blockquote.component';\nexport * from './ecl-blockquote-picture.directive';\n\nexport const EUI_ECL_BLOCKQUOTE = [\n EclBlockquoteComponent,\n EclBlockquoteImageDirective,\n EclBlockquotePictureDirective,\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-blockquote.mjs","sources":["../../components/ecl-blockquote/ecl-blockquote.component.ts","../../components/ecl-blockquote/ecl-blockquote.component.html","../../components/ecl-blockquote/ecl-blockquote-picture.directive.ts","../../components/ecl-blockquote/ecl-blockquote.module.ts","../../components/ecl-blockquote/index.ts","../../components/ecl-blockquote/eui-ecl-components-ecl-blockquote.ts"],"sourcesContent":["import {\n Component,\n Input,\n HostBinding,\n ChangeDetectionStrategy,\n ViewEncapsulation,\n OnInit,\n OnDestroy,\n ChangeDetectorRef,\n inject,\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport { I18nService } from '@eui/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Blockquote component based on the ECL design system.\n * Displays quoted text with an optional author.\n * Supports language awareness through the I18n service.\n */\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[eclBlockquote]',\n templateUrl: './ecl-blockquote.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n})\nexport class EclBlockquoteComponent extends ECLBaseDirective implements OnInit, OnDestroy {\n /**\n * Author name associated with the quoted content.\n * If provided, it will be displayed below the blockquote.\n */\n @Input() author: string;\n /**\n * Current active language code, retrieved from the I18n service.\n */\n languageCode = 'en';\n protected i18nService = inject(I18nService);\n private cd = inject(ChangeDetectorRef);\n\n /**\n * Applies the CSS classes for the blockquote element.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-blockquote')].join(' ').trim();\n }\n\n private destroy$: Subject<boolean> = new Subject<boolean>();\n\n /**\n * Angular lifecycle hook.\n * Subscribes to language change events on component initialization.\n */\n ngOnInit(): void {\n this.handleLanguageChangeState();\n }\n\n /**\n * Angular lifecycle hook.\n * Cleans up subscriptions on component destruction.\n */\n ngOnDestroy(): void {\n this.destroy$.next(true);\n this.destroy$.unsubscribe();\n }\n\n /**\n * Checks if an author is provided.\n */\n get hasAuthor(): boolean {\n return this.author !== null;\n }\n\n /**\n * Handles updates to the language code when the I18n service state changes.\n */\n private handleLanguageChangeState(): void {\n this.i18nService.getState().pipe(takeUntil(this.destroy$)).subscribe((lang) => {\n this.languageCode = lang.activeLang;\n this.cd.detectChanges();\n });\n }\n}\n","<ng-content select=\"picture[eclBlockquotePicture]\"></ng-content>\n<div class=\"ecl-blockquote__body\">\n <blockquote class=\"ecl-blockquote__quote\">\n <p class=\"ecl-blockquote__citation\" [attr.lang]=\"languageCode\">\n <ng-content></ng-content>\n </p>\n @if (hasAuthor) {\n <footer class=\"ecl-blockquote__attribution\">\n <cite class=\"ecl-blockquote__author\">{{ author }}</cite>\n </footer>\n }\n </blockquote>\n</div>\n","import { Directive, HostBinding } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Directive for the picture element inside the ECL Blockquote.\n * Automatically applies the `ecl-picture` and `ecl-blockquote__picture` CSS classes.\n */\n@Directive({\n selector: 'picture[eclBlockquotePicture]',\n})\nexport class EclBlockquotePictureDirective extends ECLBaseDirective {\n /**\n * Returns the CSS classes to apply for the blockquote picture element.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-picture ecl-blockquote__picture')].join(' ').trim();\n }\n}\n\n/**\n * Directive for the image inside the ECL Blockquote.\n * Automatically applies the `ecl-blockquote__image` CSS class.\n */\n@Directive({\n selector: 'img[eclBlockquoteImage]',\n standalone: true,\n})\nexport class EclBlockquoteImageDirective extends ECLBaseDirective {\n /**\n * Returns the CSS classes to apply for the blockquote image element.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-blockquote__image')].join(' ').trim();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { EclBlockquoteComponent } from './ecl-blockquote.component';\nimport { EclBlockquoteImageDirective, EclBlockquotePictureDirective } from './ecl-blockquote-picture.directive';\n\n/**\n * @description\n * Module that provides the EclBlockquote component and its dependencies.\n *\n * @deprecated Use {@link EUI_ECL_BLOCKQUOTE} instead.\n */\n@NgModule({\n imports: [EclBlockquoteComponent, EclBlockquoteImageDirective, EclBlockquotePictureDirective],\n exports: [EclBlockquoteComponent, EclBlockquoteImageDirective, EclBlockquotePictureDirective],\n})\nexport class EclBlockquoteModule {}\n","import { EclBlockquoteComponent } from './ecl-blockquote.component';\nimport { EclBlockquoteImageDirective } from './ecl-blockquote-picture.directive';\nimport { EclBlockquotePictureDirective } from './ecl-blockquote-picture.directive';\n\nexport * from './ecl-blockquote.module';\nexport * from './ecl-blockquote.component';\nexport * from './ecl-blockquote-picture.directive';\n\nexport const EUI_ECL_BLOCKQUOTE = [\n EclBlockquoteComponent,\n EclBlockquoteImageDirective,\n EclBlockquotePictureDirective,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -93,10 +93,10 @@ class EclBreadcrumbSegmentComponent extends ECLBaseDirective {
93
93
  evt.stopPropagation();
94
94
  }
95
95
  }
96
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: EclBreadcrumbSegmentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
97
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.6", type: EclBreadcrumbSegmentComponent, isStandalone: true, selector: "ecl-breadcrumb-segment, li[eclBreadcrumbSegment]", inputs: { routerLink: "routerLink", queryParams: "queryParams", href: "href", queryParamsHandling: "queryParamsHandling", isEllipsis: ["isEllipsis", "isEllipsis", booleanAttribute], isCurrentPage: ["isCurrentPage", "isCurrentPage", booleanAttribute], isHidden: ["isHidden", "isHidden", booleanAttribute] }, outputs: { segmentClick: "segmentClick" }, host: { properties: { "attr.tabindex": "this.tabIndex", "attr.role": "this.role", "attr.aria-hidden": "this.isHidden", "class": "this.cssClasses" } }, usesInheritance: true, ngImport: i0, template: "@if (!isEllipsis) {\n@if (!isCurrentPage && href) {\n<a eclLink variant=\"standalone\" [isNoVisited]=\"true\" [href]=\"href\" tabindex=\"0\" (click)=\"onSegmentClick($event)\"\n class=\"ecl-breadcrumb__link\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</a>\n}\n@if (!isCurrentPage && !href) {\n<a eclLink [routerLink]=\"routerLink\" [queryParams]=\"queryParams\" [queryParamsHandling]=\"queryParamsHandling\"\n variant=\"standalone\" [isNoVisited]=\"true\" tabindex=\"0\" (click)=\"onSegmentClick($event)\"\n class=\"ecl-breadcrumb__link\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</a>\n}\n} @else {\n<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n}\n\n@if (isCurrentPage) {\n<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n} @else {\n<ecl-icon role=\"presentation\" icon=\"corner-arrow\" ariaHidden=\"true\" focusable=\"false\" size=\"fluid\"\n class=\"ecl-breadcrumb__icon\">\n</ecl-icon>\n}\n<ng-template #content>\n <ng-content></ng-content>\n</ng-template>", dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "ngmodule", type: EclIconModule }, { kind: "component", type: i2.EclIconComponent, selector: "ecl-icon", inputs: ["iconSet", "icon", "size", "color", "transform", "ariaLabelledby", "role", "title", "ariaHidden", "focusable", "isFlipHorizontal"] }, { kind: "ngmodule", type: EclLinkModule }, { kind: "directive", type: i3.EclLinkDirective, selector: "[eclLink]", inputs: ["isInverted", "isIconOnly", "isNoVisited", "variant"] }], encapsulation: i0.ViewEncapsulation.None }); }
96
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclBreadcrumbSegmentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
97
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.0-next.1", type: EclBreadcrumbSegmentComponent, isStandalone: true, selector: "ecl-breadcrumb-segment, li[eclBreadcrumbSegment]", inputs: { routerLink: "routerLink", queryParams: "queryParams", href: "href", queryParamsHandling: "queryParamsHandling", isEllipsis: ["isEllipsis", "isEllipsis", booleanAttribute], isCurrentPage: ["isCurrentPage", "isCurrentPage", booleanAttribute], isHidden: ["isHidden", "isHidden", booleanAttribute] }, outputs: { segmentClick: "segmentClick" }, host: { properties: { "attr.tabindex": "this.tabIndex", "attr.role": "this.role", "attr.aria-hidden": "this.isHidden", "class": "this.cssClasses" } }, usesInheritance: true, ngImport: i0, template: "@if (!isEllipsis) {\n@if (!isCurrentPage && href) {\n<a eclLink variant=\"standalone\" [isNoVisited]=\"true\" [href]=\"href\" tabindex=\"0\" (click)=\"onSegmentClick($event)\"\n class=\"ecl-breadcrumb__link\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</a>\n}\n@if (!isCurrentPage && !href) {\n<a eclLink [routerLink]=\"routerLink\" [queryParams]=\"queryParams\" [queryParamsHandling]=\"queryParamsHandling\"\n variant=\"standalone\" [isNoVisited]=\"true\" tabindex=\"0\" (click)=\"onSegmentClick($event)\"\n class=\"ecl-breadcrumb__link\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</a>\n}\n} @else {\n<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n}\n\n@if (isCurrentPage) {\n<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n} @else {\n<ecl-icon role=\"presentation\" icon=\"corner-arrow\" ariaHidden=\"true\" focusable=\"false\" size=\"fluid\"\n class=\"ecl-breadcrumb__icon\">\n</ecl-icon>\n}\n<ng-template #content>\n <ng-content></ng-content>\n</ng-template>", dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "ngmodule", type: EclIconModule }, { kind: "component", type: i2.EclIconComponent, selector: "ecl-icon", inputs: ["iconSet", "icon", "size", "color", "transform", "ariaLabelledby", "role", "title", "ariaHidden", "focusable", "isFlipHorizontal"] }, { kind: "ngmodule", type: EclLinkModule }, { kind: "directive", type: i3.EclLinkDirective, selector: "[eclLink]", inputs: ["isInverted", "isIconOnly", "isNoVisited", "variant"] }], encapsulation: i0.ViewEncapsulation.None }); }
98
98
  }
99
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: EclBreadcrumbSegmentComponent, decorators: [{
99
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclBreadcrumbSegmentComponent, decorators: [{
100
100
  type: Component,
101
101
  args: [{ selector: 'ecl-breadcrumb-segment, li[eclBreadcrumbSegment]', imports: [NgTemplateOutlet, RouterModule, EclIconModule, EclLinkModule], encapsulation: ViewEncapsulation.None, template: "@if (!isEllipsis) {\n@if (!isCurrentPage && href) {\n<a eclLink variant=\"standalone\" [isNoVisited]=\"true\" [href]=\"href\" tabindex=\"0\" (click)=\"onSegmentClick($event)\"\n class=\"ecl-breadcrumb__link\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</a>\n}\n@if (!isCurrentPage && !href) {\n<a eclLink [routerLink]=\"routerLink\" [queryParams]=\"queryParams\" [queryParamsHandling]=\"queryParamsHandling\"\n variant=\"standalone\" [isNoVisited]=\"true\" tabindex=\"0\" (click)=\"onSegmentClick($event)\"\n class=\"ecl-breadcrumb__link\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</a>\n}\n} @else {\n<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n}\n\n@if (isCurrentPage) {\n<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n} @else {\n<ecl-icon role=\"presentation\" icon=\"corner-arrow\" ariaHidden=\"true\" focusable=\"false\" size=\"fluid\"\n class=\"ecl-breadcrumb__icon\">\n</ecl-icon>\n}\n<ng-template #content>\n <ng-content></ng-content>\n</ng-template>" }]
102
102
  }], ctorParameters: () => [], propDecorators: { tabIndex: [{
@@ -144,10 +144,10 @@ class EclBreadcrumbContainerDirective extends ECLBaseDirective {
144
144
  */
145
145
  this.hasClass = true;
146
146
  }
147
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: EclBreadcrumbContainerDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
148
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.1.6", type: EclBreadcrumbContainerDirective, isStandalone: true, selector: "[eclBreadcrumbContainer]", host: { properties: { "class.ecl-breadcrumb__container": "this.hasClass" } }, usesInheritance: true, ngImport: i0 }); }
147
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclBreadcrumbContainerDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
148
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.0-next.1", type: EclBreadcrumbContainerDirective, isStandalone: true, selector: "[eclBreadcrumbContainer]", host: { properties: { "class.ecl-breadcrumb__container": "this.hasClass" } }, usesInheritance: true, ngImport: i0 }); }
149
149
  }
150
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: EclBreadcrumbContainerDirective, decorators: [{
150
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclBreadcrumbContainerDirective, decorators: [{
151
151
  type: Directive,
152
152
  args: [{
153
153
  selector: '[eclBreadcrumbContainer]',
@@ -312,10 +312,10 @@ class EclBreadcrumbComponent extends ECLBaseDirective {
312
312
  getSegmentsTotalWidth() {
313
313
  return this.eclSegments.reduce((width, segmentComponent) => width + segmentComponent.el.nativeElement.offsetWidth, 0);
314
314
  }
315
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: EclBreadcrumbComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
316
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.6", type: EclBreadcrumbComponent, isStandalone: true, selector: "ecl-breadcrumb", inputs: { isExpanded: ["isExpanded", "isExpanded", booleanAttribute] }, host: { listeners: { "window:resize": "onWindowResize($event)" }, properties: { "attr.role": "this.role", "attr.aria-label": "this.ariaLabel", "class": "this.cssClasses", "attr.data-ecl-auto-initialized": "this.autoInitialized" } }, queries: [{ propertyName: "eclBreadcrumbContainer", first: true, predicate: EclBreadcrumbContainerDirective, descendants: true }, { propertyName: "eclSegments", predicate: i0.forwardRef(() => EclBreadcrumbSegmentComponent), descendants: true }], viewQueries: [{ propertyName: "eclEllipsisSegment", first: true, predicate: ["ellipsisSegment"], descendants: true }, { propertyName: "breadcrumbContainer", first: true, predicate: ["breadcrumbContainer"], descendants: true }], usesInheritance: true, ngImport: i0, template: "@if (!hasContainer) {\n<ol class=\"ecl-breadcrumb__container\" #breadcrumbContainer>\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</ol>\n} @else {\n<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n}\n<ng-template #content>\n <li eclBreadcrumbSegment #ellipsisSegment [isHidden]=\"true\" isEllipsis>\n <button tabindex=\"0\" eclButton variant=\"ghost\" class=\"ecl-breadcrumb__ellipsis\"\n [attr.aria-label]=\"'ecl.breadcrumb.SHOW-MORE-ITEMS' | translate\" (click)=\"onEllipsisSegmentClick($event)\">\n ...\n </button>\n </li>\n <ng-content></ng-content>\n</ng-template>", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "ngmodule", type: EclButtonModule }, { kind: "component", type: i1$1.EclButtonComponent, selector: "button[eclButton], button[ecl-button], a[eclButton]", inputs: ["isIconOnly", "variant", "containerStyleClass"] }, { kind: "component", type: EclBreadcrumbSegmentComponent, selector: "ecl-breadcrumb-segment, li[eclBreadcrumbSegment]", inputs: ["routerLink", "queryParams", "href", "queryParamsHandling", "isEllipsis", "isCurrentPage", "isHidden"], outputs: ["segmentClick"] }, { kind: "pipe", type: i2$1.TranslatePipe, name: "translate" }] }); }
315
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclBreadcrumbComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
316
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.0-next.1", type: EclBreadcrumbComponent, isStandalone: true, selector: "ecl-breadcrumb", inputs: { isExpanded: ["isExpanded", "isExpanded", booleanAttribute] }, host: { listeners: { "window:resize": "onWindowResize($event)" }, properties: { "attr.role": "this.role", "attr.aria-label": "this.ariaLabel", "class": "this.cssClasses", "attr.data-ecl-auto-initialized": "this.autoInitialized" } }, queries: [{ propertyName: "eclBreadcrumbContainer", first: true, predicate: EclBreadcrumbContainerDirective, descendants: true }, { propertyName: "eclSegments", predicate: i0.forwardRef(() => EclBreadcrumbSegmentComponent), descendants: true }], viewQueries: [{ propertyName: "eclEllipsisSegment", first: true, predicate: ["ellipsisSegment"], descendants: true }, { propertyName: "breadcrumbContainer", first: true, predicate: ["breadcrumbContainer"], descendants: true }], usesInheritance: true, ngImport: i0, template: "@if (!hasContainer) {\n<ol class=\"ecl-breadcrumb__container\" #breadcrumbContainer>\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</ol>\n} @else {\n<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n}\n<ng-template #content>\n <li eclBreadcrumbSegment #ellipsisSegment [isHidden]=\"true\" isEllipsis>\n <button tabindex=\"0\" eclButton variant=\"ghost\" class=\"ecl-breadcrumb__ellipsis\"\n [attr.aria-label]=\"'ecl.breadcrumb.SHOW-MORE-ITEMS' | translate\" (click)=\"onEllipsisSegmentClick($event)\">\n ...\n </button>\n </li>\n <ng-content></ng-content>\n</ng-template>", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "ngmodule", type: EclButtonModule }, { kind: "component", type: i1$1.EclButtonComponent, selector: "button[eclButton], button[ecl-button], a[eclButton]", inputs: ["isIconOnly", "variant", "containerStyleClass"] }, { kind: "component", type: EclBreadcrumbSegmentComponent, selector: "ecl-breadcrumb-segment, li[eclBreadcrumbSegment]", inputs: ["routerLink", "queryParams", "href", "queryParamsHandling", "isEllipsis", "isCurrentPage", "isHidden"], outputs: ["segmentClick"] }, { kind: "pipe", type: i2$1.TranslatePipe, name: "translate" }] }); }
317
317
  }
318
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: EclBreadcrumbComponent, decorators: [{
318
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclBreadcrumbComponent, decorators: [{
319
319
  type: Component,
320
320
  args: [{ selector: 'ecl-breadcrumb', imports: [NgTemplateOutlet, TranslateModule, EclButtonModule, EclBreadcrumbSegmentComponent], template: "@if (!hasContainer) {\n<ol class=\"ecl-breadcrumb__container\" #breadcrumbContainer>\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</ol>\n} @else {\n<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n}\n<ng-template #content>\n <li eclBreadcrumbSegment #ellipsisSegment [isHidden]=\"true\" isEllipsis>\n <button tabindex=\"0\" eclButton variant=\"ghost\" class=\"ecl-breadcrumb__ellipsis\"\n [attr.aria-label]=\"'ecl.breadcrumb.SHOW-MORE-ITEMS' | translate\" (click)=\"onEllipsisSegmentClick($event)\">\n ...\n </button>\n </li>\n <ng-content></ng-content>\n</ng-template>", styles: [":host{display:block}\n"] }]
321
321
  }], ctorParameters: () => [], propDecorators: { isExpanded: [{
@@ -357,11 +357,11 @@ const COMPONENTS = [EclBreadcrumbComponent, EclBreadcrumbSegmentComponent, EclBr
357
357
  * @deprecated Use {@link EUI_ECL_BREADCRUMB} instead.
358
358
  */
359
359
  class EclBreadcrumbModule {
360
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: EclBreadcrumbModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
361
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.1.6", ngImport: i0, type: EclBreadcrumbModule, imports: [EclBreadcrumbComponent, EclBreadcrumbSegmentComponent, EclBreadcrumbContainerDirective], exports: [EclBreadcrumbComponent, EclBreadcrumbSegmentComponent, EclBreadcrumbContainerDirective] }); }
362
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: EclBreadcrumbModule, imports: [EclBreadcrumbComponent, EclBreadcrumbSegmentComponent] }); }
360
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclBreadcrumbModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
361
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclBreadcrumbModule, imports: [EclBreadcrumbComponent, EclBreadcrumbSegmentComponent, EclBreadcrumbContainerDirective], exports: [EclBreadcrumbComponent, EclBreadcrumbSegmentComponent, EclBreadcrumbContainerDirective] }); }
362
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclBreadcrumbModule, imports: [EclBreadcrumbComponent, EclBreadcrumbSegmentComponent] }); }
363
363
  }
364
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: EclBreadcrumbModule, decorators: [{
364
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclBreadcrumbModule, decorators: [{
365
365
  type: NgModule,
366
366
  args: [{
367
367
  imports: [...COMPONENTS],
@@ -1 +1 @@
1
- {"version":3,"file":"eui-ecl-components-ecl-breadcrumb.mjs","sources":["../../components/ecl-breadcrumb/events/ecl-breadcrumb-segment-click.event.ts","../../components/ecl-breadcrumb/ecl-breadcrumb-segment.component.ts","../../components/ecl-breadcrumb/ecl-breadcrumb-segment.component.html","../../components/ecl-breadcrumb/ecl-breadcrumb-container.directive.ts","../../components/ecl-breadcrumb/ecl-breadcrumb.component.ts","../../components/ecl-breadcrumb/ecl-breadcrumb.component.html","../../components/ecl-breadcrumb/ecl-breadcrumb.module.ts","../../components/ecl-breadcrumb/index.ts","../../components/ecl-breadcrumb/eui-ecl-components-ecl-breadcrumb.ts"],"sourcesContent":["import { EclBaseEvent } from '@eui/ecl/core';\n\n/**\n * Event emitted when a breadcrumb segment is clicked.\n */\nexport class EclBreadcrumbSegmentClickEvent extends EclBaseEvent {}\n","import {\n Component,\n ElementRef,\n EventEmitter,\n HostBinding,\n Input,\n Output,\n ViewEncapsulation,\n booleanAttribute,\n inject,\n} from '@angular/core';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { Params, QueryParamsHandling, RouterModule } from '@angular/router';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclBreadcrumbSegmentClickEvent } from './events/ecl-breadcrumb-segment-click.event';\nimport { EclIconModule } from '@eui/ecl/components/ecl-icon';\nimport { EclLinkModule } from '@eui/ecl/components/ecl-link';\n\n// TODO: ecl-breadcrumb-segment selector is deprecated and should be removed in v20\n\n/**\n * Displays a single breadcrumb segment with optional navigation or ellipsis.\n */\n@Component({\n selector: 'ecl-breadcrumb-segment, li[eclBreadcrumbSegment]',\n templateUrl: './ecl-breadcrumb-segment.component.html',\n imports: [NgTemplateOutlet, RouterModule, EclIconModule, EclLinkModule],\n encapsulation: ViewEncapsulation.None,\n})\nexport class EclBreadcrumbSegmentComponent extends ECLBaseDirective {\n el = inject(ElementRef);\n\n /**\n * Defines the tabindex attribute for accessibility.\n */\n @HostBinding('attr.tabindex') tabIndex = '-1';\n\n /**\n * Defines the ARIA role for accessibility.\n */\n @HostBinding('attr.role') role = 'listitem';\n\n /**\n * Router link for navigation.\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n @Input() routerLink: string | any[] = null;\n\n /**\n * Query parameters used with routerLink.\n */\n @Input() queryParams: Params | null = null;\n\n /**\n * Href used for standard navigation.\n */\n @Input() href = '';\n\n /**\n * Strategy for handling existing query parameters during navigation.\n */\n @Input() queryParamsHandling: QueryParamsHandling = null;\n\n /**\n * Displays the segment as an ellipsis instead of a link.\n */\n @Input({ transform: booleanAttribute }) isEllipsis = false;\n\n /**\n * Highlights the segment as the current page.\n */\n @Input({ transform: booleanAttribute }) isCurrentPage = false;\n\n /**\n * Hides the segment visually and from assistive technologies.\n */\n @Input({ transform: booleanAttribute })\n @HostBinding('attr.aria-hidden')\n isHidden = false;\n\n /**\n * Emits when the segment is clicked.\n */\n @Output() segmentClick = new EventEmitter<EclBreadcrumbSegmentClickEvent>();\n\n constructor() {\n super();\n const el = this.el;\n\n if (el.nativeElement.tagName.toLowerCase() === 'ecl-breadcrumb-segment') {\n console.warn('\"ecl-breadcrumb-segment\" selector is deprecated; use \"li[eclBreadcrumbSegment]\" instead.');\n }\n }\n\n /**\n * Computes the CSS classes applied to the segment.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [\n super.getCssClasses('ecl-breadcrumb__segment'),\n this.isCurrentPage ? 'ecl-breadcrumb__current-page' : '',\n this.isEllipsis ? 'ecl-breadcrumb__segment--ellipsis' : '',\n ].join(' ').trim();\n }\n\n /**\n * Handles the click event on the segment.\n */\n onSegmentClick(evt: MouseEvent): void {\n this.segmentClick.next(new EclBreadcrumbSegmentClickEvent());\n if (!this.href) {\n evt.stopPropagation();\n }\n }\n}\n","@if (!isEllipsis) {\n@if (!isCurrentPage && href) {\n<a eclLink variant=\"standalone\" [isNoVisited]=\"true\" [href]=\"href\" tabindex=\"0\" (click)=\"onSegmentClick($event)\"\n class=\"ecl-breadcrumb__link\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</a>\n}\n@if (!isCurrentPage && !href) {\n<a eclLink [routerLink]=\"routerLink\" [queryParams]=\"queryParams\" [queryParamsHandling]=\"queryParamsHandling\"\n variant=\"standalone\" [isNoVisited]=\"true\" tabindex=\"0\" (click)=\"onSegmentClick($event)\"\n class=\"ecl-breadcrumb__link\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</a>\n}\n} @else {\n<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n}\n\n@if (isCurrentPage) {\n<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n} @else {\n<ecl-icon role=\"presentation\" icon=\"corner-arrow\" ariaHidden=\"true\" focusable=\"false\" size=\"fluid\"\n class=\"ecl-breadcrumb__icon\">\n</ecl-icon>\n}\n<ng-template #content>\n <ng-content></ng-content>\n</ng-template>","import { Directive, ElementRef, HostBinding, inject } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Used to wrap breadcrumb segments inside the breadcrumb component.\n */\n@Directive({\n selector: '[eclBreadcrumbContainer]',\n})\nexport class EclBreadcrumbContainerDirective extends ECLBaseDirective {\n el = inject(ElementRef);\n\n /**\n * Adds breadcrumb container CSS class to the host element.\n */\n @HostBinding('class.ecl-breadcrumb__container') hasClass = true;\n}\n","import {\n Component,\n ContentChildren,\n ElementRef,\n HostBinding,\n Input,\n OnDestroy,\n OnInit,\n QueryList,\n Renderer2,\n ViewChild,\n booleanAttribute,\n forwardRef,\n HostListener,\n afterNextRender,\n ContentChild,\n inject,\n} from '@angular/core';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { TranslateService, TranslateModule } from '@ngx-translate/core';\nimport { Subject, takeUntil } from 'rxjs';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclBreadcrumbSegmentComponent } from './ecl-breadcrumb-segment.component';\nimport { EclBreadcrumbContainerDirective } from './ecl-breadcrumb-container.directive';\nimport { EclButtonModule } from '@eui/ecl/components/ecl-button';\n\n/**\n * Displays navigation segments and handles overflow with ellipsis.\n */\n@Component({\n selector: 'ecl-breadcrumb',\n templateUrl: './ecl-breadcrumb.component.html',\n imports: [NgTemplateOutlet, TranslateModule, EclButtonModule, EclBreadcrumbSegmentComponent],\n styles: [\n `\n :host {\n display: block;\n }\n `,\n ],\n})\nexport class EclBreadcrumbComponent extends ECLBaseDirective implements OnInit, OnDestroy {\n /**\n * Expands all breadcrumb segments instead of collapsing them.\n */\n @Input({ transform: booleanAttribute }) isExpanded = false;\n\n /**\n * ARIA role attribute for accessibility.\n */\n @HostBinding('attr.role') role = 'navigation';\n\n /**\n * ARIA label describing the breadcrumb purpose.\n */\n @HostBinding('attr.aria-label') ariaLabel;\n\n /**\n * Reference to the ellipsis segment element.\n */\n @ViewChild('ellipsisSegment') eclEllipsisSegment: EclBreadcrumbSegmentComponent;\n\n /**\n * @deprecated To be removed in v20. Not needed, replaced by 'eclBreadcrumbContainer'\n */\n @ViewChild('breadcrumbContainer') breadcrumbContainer: ElementRef;\n\n /**\n * Reference to the breadcrumb container directive inside this component.\n */\n @ContentChild(EclBreadcrumbContainerDirective) eclBreadcrumbContainer: EclBreadcrumbContainerDirective;\n\n /**\n * List of breadcrumb segment components.\n */\n @ContentChildren(forwardRef(() => EclBreadcrumbSegmentComponent), { descendants: true })\n eclSegments: QueryList<EclBreadcrumbSegmentComponent>;\n private el = inject(ElementRef);\n private translate = inject(TranslateService);\n private renderer = inject(Renderer2);\n private destroy$: Subject<boolean> = new Subject<boolean>();\n private nonStaticSegments: EclBreadcrumbSegmentComponent[] = [];\n\n constructor() {\n super();\n afterNextRender(() => {\n this.init();\n this.handleOverflownSegments();\n });\n }\n\n /**\n * CSS classes applied to the breadcrumb element.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [\n super.getCssClasses('ecl-breadcrumb'),\n this.isExpanded ? 'ecl-breadcrumb--wrap' : 'ecl-breadcrumb--collapsed',\n ].join(' ').trim();\n }\n\n /**\n * Returns true if breadcrumb was auto-initialized.\n */\n @HostBinding('attr.data-ecl-auto-initialized')\n get autoInitialized(): boolean | null {\n return this.isExpanded || null;\n }\n\n /**\n * Initializes translations for ARIA label.\n */\n ngOnInit(): void {\n this.translate\n .stream('ecl.breadcrumb.YOU-ARE-HERE')\n .pipe(takeUntil(this.destroy$))\n .subscribe((text) => {\n this.ariaLabel = text;\n });\n }\n\n /**\n * Cleans up subscriptions on destroy.\n */\n ngOnDestroy(): void {\n this.destroy$.next(true);\n this.destroy$.unsubscribe();\n }\n\n /**\n * Handles window resize and recalculates overflown segments.\n */\n @HostListener('window:resize', ['$event'])\n onWindowResize(): void {\n this.handleOverflownSegments();\n }\n\n /**\n * Returns true if breadcrumb container directive exists.\n */\n get hasContainer(): boolean {\n return !!this.eclBreadcrumbContainer;\n }\n\n /**\n * Expands hidden breadcrumb segments after clicking ellipsis.\n */\n onEllipsisSegmentClick(evt: MouseEvent): void {\n this.eclSegments.forEach((segment) => {\n segment.isHidden = false;\n });\n this.hideEllipsis();\n this.isExpanded = true;\n }\n\n private init(): void {\n setTimeout(() => {\n this.insertEllipsisSegmentIntoPosition();\n this.handleStaticAndNonStaticSegments();\n });\n }\n\n private insertEllipsisSegmentIntoPosition(): void {\n if (this.hasEnoughSegments()) {\n const secondEclSegmentEl: HTMLElement = this.eclSegments.get(1).el.nativeElement;\n const ellipsisSegmentEl: HTMLElement = this.eclEllipsisSegment.el.nativeElement;\n if (this.hasContainer) {\n this.renderer.insertBefore(this.eclBreadcrumbContainer.el.nativeElement, ellipsisSegmentEl, secondEclSegmentEl);\n } else {\n this.renderer.insertBefore(this.breadcrumbContainer.nativeElement, ellipsisSegmentEl, secondEclSegmentEl);\n }\n }\n }\n\n private handleOverflownSegments(): void {\n if (this.hasEnoughSegments()) {\n setTimeout(() => {\n if (this.isBreadcrumbOverflowed()) {\n this.hideNonStaticSegments();\n this.showEllipsis();\n this.collapse();\n } else {\n this.hideEllipsis();\n this.showNonStaticSegments()\n this.expand();\n }\n });\n }\n }\n\n private hideNonStaticSegments(): void {\n this.nonStaticSegments.forEach((segment) => {\n segment.isHidden = true;\n });\n }\n\n private showNonStaticSegments(): void {\n this.nonStaticSegments.forEach((segment) => {\n segment.isHidden = false;\n });\n }\n\n private collapse(): void {\n this.isExpanded = false;\n }\n\n private expand(): void {\n this.isExpanded = true;\n }\n\n private hideEllipsis(): void {\n this.eclEllipsisSegment.isHidden = true;\n }\n\n private showEllipsis(): void {\n this.eclEllipsisSegment.isHidden = false;\n }\n\n private hasEnoughSegments(): boolean {\n return this.eclSegments && this.eclSegments.length > 3;\n }\n\n private handleStaticAndNonStaticSegments(): void {\n if (this.hasEnoughSegments()) {\n this.nonStaticSegments = this.eclSegments.toArray().slice(1, this.eclSegments.length - 2);\n }\n }\n\n private isBreadcrumbOverflowed(): boolean {\n const breadcrumbTotalWidth = this.getBreadcrumbTotalWidth();\n const segmentsTotalWidth = this.getSegmentsTotalWidth();\n const marginOfError = 1.1;\n\n return segmentsTotalWidth * marginOfError >= breadcrumbTotalWidth;\n }\n\n private getBreadcrumbTotalWidth(): number {\n return this.el.nativeElement.offsetWidth;\n }\n\n private getSegmentsTotalWidth(): number {\n return this.eclSegments.reduce((width: number, segmentComponent) => width + segmentComponent.el.nativeElement.offsetWidth, 0);\n }\n}\n","@if (!hasContainer) {\n<ol class=\"ecl-breadcrumb__container\" #breadcrumbContainer>\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</ol>\n} @else {\n<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n}\n<ng-template #content>\n <li eclBreadcrumbSegment #ellipsisSegment [isHidden]=\"true\" isEllipsis>\n <button tabindex=\"0\" eclButton variant=\"ghost\" class=\"ecl-breadcrumb__ellipsis\"\n [attr.aria-label]=\"'ecl.breadcrumb.SHOW-MORE-ITEMS' | translate\" (click)=\"onEllipsisSegmentClick($event)\">\n ...\n </button>\n </li>\n <ng-content></ng-content>\n</ng-template>","import { NgModule } from '@angular/core';\nimport { EclBreadcrumbComponent } from './ecl-breadcrumb.component';\nimport { EclBreadcrumbSegmentComponent } from './ecl-breadcrumb-segment.component';\nimport { EclBreadcrumbContainerDirective } from './ecl-breadcrumb-container.directive';\n\nconst COMPONENTS = [EclBreadcrumbComponent, EclBreadcrumbSegmentComponent, EclBreadcrumbContainerDirective];\n/**\n * Module that provides the EclBreadcrumbComponent and it's dependencies.\n *\n * @deprecated Use {@link EUI_ECL_BREADCRUMB} instead.\n */\n@NgModule({\n imports: [...COMPONENTS],\n exports: [...COMPONENTS],\n})\nexport class EclBreadcrumbModule {}\n","import { EclBreadcrumbComponent } from './ecl-breadcrumb.component';\nimport { EclBreadcrumbSegmentComponent } from './ecl-breadcrumb-segment.component';\nimport { EclBreadcrumbContainerDirective } from './ecl-breadcrumb-container.directive';\n\nexport * from './ecl-breadcrumb.module';\nexport * from './ecl-breadcrumb.component';\nexport * from './ecl-breadcrumb-segment.component';\nexport * from './models/ecl-breadcrumb.model';\nexport * from './events/ecl-breadcrumb-segment-click.event';\nexport * from './ecl-breadcrumb-container.directive';\n\nexport const EUI_ECL_BREADCRUMB = [\n EclBreadcrumbComponent, EclBreadcrumbSegmentComponent, EclBreadcrumbContainerDirective,\n] as const;","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2"],"mappings":"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"}
1
+ {"version":3,"file":"eui-ecl-components-ecl-breadcrumb.mjs","sources":["../../components/ecl-breadcrumb/events/ecl-breadcrumb-segment-click.event.ts","../../components/ecl-breadcrumb/ecl-breadcrumb-segment.component.ts","../../components/ecl-breadcrumb/ecl-breadcrumb-segment.component.html","../../components/ecl-breadcrumb/ecl-breadcrumb-container.directive.ts","../../components/ecl-breadcrumb/ecl-breadcrumb.component.ts","../../components/ecl-breadcrumb/ecl-breadcrumb.component.html","../../components/ecl-breadcrumb/ecl-breadcrumb.module.ts","../../components/ecl-breadcrumb/index.ts","../../components/ecl-breadcrumb/eui-ecl-components-ecl-breadcrumb.ts"],"sourcesContent":["import { EclBaseEvent } from '@eui/ecl/core';\n\n/**\n * Event emitted when a breadcrumb segment is clicked.\n */\nexport class EclBreadcrumbSegmentClickEvent extends EclBaseEvent {}\n","import {\n Component,\n ElementRef,\n EventEmitter,\n HostBinding,\n Input,\n Output,\n ViewEncapsulation,\n booleanAttribute,\n inject,\n} from '@angular/core';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { Params, QueryParamsHandling, RouterModule } from '@angular/router';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclBreadcrumbSegmentClickEvent } from './events/ecl-breadcrumb-segment-click.event';\nimport { EclIconModule } from '@eui/ecl/components/ecl-icon';\nimport { EclLinkModule } from '@eui/ecl/components/ecl-link';\n\n// TODO: ecl-breadcrumb-segment selector is deprecated and should be removed in v20\n\n/**\n * Displays a single breadcrumb segment with optional navigation or ellipsis.\n */\n@Component({\n selector: 'ecl-breadcrumb-segment, li[eclBreadcrumbSegment]',\n templateUrl: './ecl-breadcrumb-segment.component.html',\n imports: [NgTemplateOutlet, RouterModule, EclIconModule, EclLinkModule],\n encapsulation: ViewEncapsulation.None,\n})\nexport class EclBreadcrumbSegmentComponent extends ECLBaseDirective {\n el = inject(ElementRef);\n\n /**\n * Defines the tabindex attribute for accessibility.\n */\n @HostBinding('attr.tabindex') tabIndex = '-1';\n\n /**\n * Defines the ARIA role for accessibility.\n */\n @HostBinding('attr.role') role = 'listitem';\n\n /**\n * Router link for navigation.\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n @Input() routerLink: string | any[] = null;\n\n /**\n * Query parameters used with routerLink.\n */\n @Input() queryParams: Params | null = null;\n\n /**\n * Href used for standard navigation.\n */\n @Input() href = '';\n\n /**\n * Strategy for handling existing query parameters during navigation.\n */\n @Input() queryParamsHandling: QueryParamsHandling = null;\n\n /**\n * Displays the segment as an ellipsis instead of a link.\n */\n @Input({ transform: booleanAttribute }) isEllipsis = false;\n\n /**\n * Highlights the segment as the current page.\n */\n @Input({ transform: booleanAttribute }) isCurrentPage = false;\n\n /**\n * Hides the segment visually and from assistive technologies.\n */\n @Input({ transform: booleanAttribute })\n @HostBinding('attr.aria-hidden')\n isHidden = false;\n\n /**\n * Emits when the segment is clicked.\n */\n @Output() segmentClick = new EventEmitter<EclBreadcrumbSegmentClickEvent>();\n\n constructor() {\n super();\n const el = this.el;\n\n if (el.nativeElement.tagName.toLowerCase() === 'ecl-breadcrumb-segment') {\n console.warn('\"ecl-breadcrumb-segment\" selector is deprecated; use \"li[eclBreadcrumbSegment]\" instead.');\n }\n }\n\n /**\n * Computes the CSS classes applied to the segment.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [\n super.getCssClasses('ecl-breadcrumb__segment'),\n this.isCurrentPage ? 'ecl-breadcrumb__current-page' : '',\n this.isEllipsis ? 'ecl-breadcrumb__segment--ellipsis' : '',\n ].join(' ').trim();\n }\n\n /**\n * Handles the click event on the segment.\n */\n onSegmentClick(evt: MouseEvent): void {\n this.segmentClick.next(new EclBreadcrumbSegmentClickEvent());\n if (!this.href) {\n evt.stopPropagation();\n }\n }\n}\n","@if (!isEllipsis) {\n@if (!isCurrentPage && href) {\n<a eclLink variant=\"standalone\" [isNoVisited]=\"true\" [href]=\"href\" tabindex=\"0\" (click)=\"onSegmentClick($event)\"\n class=\"ecl-breadcrumb__link\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</a>\n}\n@if (!isCurrentPage && !href) {\n<a eclLink [routerLink]=\"routerLink\" [queryParams]=\"queryParams\" [queryParamsHandling]=\"queryParamsHandling\"\n variant=\"standalone\" [isNoVisited]=\"true\" tabindex=\"0\" (click)=\"onSegmentClick($event)\"\n class=\"ecl-breadcrumb__link\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</a>\n}\n} @else {\n<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n}\n\n@if (isCurrentPage) {\n<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n} @else {\n<ecl-icon role=\"presentation\" icon=\"corner-arrow\" ariaHidden=\"true\" focusable=\"false\" size=\"fluid\"\n class=\"ecl-breadcrumb__icon\">\n</ecl-icon>\n}\n<ng-template #content>\n <ng-content></ng-content>\n</ng-template>","import { Directive, ElementRef, HostBinding, inject } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Used to wrap breadcrumb segments inside the breadcrumb component.\n */\n@Directive({\n selector: '[eclBreadcrumbContainer]',\n})\nexport class EclBreadcrumbContainerDirective extends ECLBaseDirective {\n el = inject(ElementRef);\n\n /**\n * Adds breadcrumb container CSS class to the host element.\n */\n @HostBinding('class.ecl-breadcrumb__container') hasClass = true;\n}\n","import {\n Component,\n ContentChildren,\n ElementRef,\n HostBinding,\n Input,\n OnDestroy,\n OnInit,\n QueryList,\n Renderer2,\n ViewChild,\n booleanAttribute,\n forwardRef,\n HostListener,\n afterNextRender,\n ContentChild,\n inject,\n} from '@angular/core';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { TranslateService, TranslateModule } from '@ngx-translate/core';\nimport { Subject, takeUntil } from 'rxjs';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclBreadcrumbSegmentComponent } from './ecl-breadcrumb-segment.component';\nimport { EclBreadcrumbContainerDirective } from './ecl-breadcrumb-container.directive';\nimport { EclButtonModule } from '@eui/ecl/components/ecl-button';\n\n/**\n * Displays navigation segments and handles overflow with ellipsis.\n */\n@Component({\n selector: 'ecl-breadcrumb',\n templateUrl: './ecl-breadcrumb.component.html',\n imports: [NgTemplateOutlet, TranslateModule, EclButtonModule, EclBreadcrumbSegmentComponent],\n styles: [\n `\n :host {\n display: block;\n }\n `,\n ],\n})\nexport class EclBreadcrumbComponent extends ECLBaseDirective implements OnInit, OnDestroy {\n /**\n * Expands all breadcrumb segments instead of collapsing them.\n */\n @Input({ transform: booleanAttribute }) isExpanded = false;\n\n /**\n * ARIA role attribute for accessibility.\n */\n @HostBinding('attr.role') role = 'navigation';\n\n /**\n * ARIA label describing the breadcrumb purpose.\n */\n @HostBinding('attr.aria-label') ariaLabel;\n\n /**\n * Reference to the ellipsis segment element.\n */\n @ViewChild('ellipsisSegment') eclEllipsisSegment: EclBreadcrumbSegmentComponent;\n\n /**\n * @deprecated To be removed in v20. Not needed, replaced by 'eclBreadcrumbContainer'\n */\n @ViewChild('breadcrumbContainer') breadcrumbContainer: ElementRef;\n\n /**\n * Reference to the breadcrumb container directive inside this component.\n */\n @ContentChild(EclBreadcrumbContainerDirective) eclBreadcrumbContainer: EclBreadcrumbContainerDirective;\n\n /**\n * List of breadcrumb segment components.\n */\n @ContentChildren(forwardRef(() => EclBreadcrumbSegmentComponent), { descendants: true })\n eclSegments: QueryList<EclBreadcrumbSegmentComponent>;\n private el = inject(ElementRef);\n private translate = inject(TranslateService);\n private renderer = inject(Renderer2);\n private destroy$: Subject<boolean> = new Subject<boolean>();\n private nonStaticSegments: EclBreadcrumbSegmentComponent[] = [];\n\n constructor() {\n super();\n afterNextRender(() => {\n this.init();\n this.handleOverflownSegments();\n });\n }\n\n /**\n * CSS classes applied to the breadcrumb element.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [\n super.getCssClasses('ecl-breadcrumb'),\n this.isExpanded ? 'ecl-breadcrumb--wrap' : 'ecl-breadcrumb--collapsed',\n ].join(' ').trim();\n }\n\n /**\n * Returns true if breadcrumb was auto-initialized.\n */\n @HostBinding('attr.data-ecl-auto-initialized')\n get autoInitialized(): boolean | null {\n return this.isExpanded || null;\n }\n\n /**\n * Initializes translations for ARIA label.\n */\n ngOnInit(): void {\n this.translate\n .stream('ecl.breadcrumb.YOU-ARE-HERE')\n .pipe(takeUntil(this.destroy$))\n .subscribe((text) => {\n this.ariaLabel = text;\n });\n }\n\n /**\n * Cleans up subscriptions on destroy.\n */\n ngOnDestroy(): void {\n this.destroy$.next(true);\n this.destroy$.unsubscribe();\n }\n\n /**\n * Handles window resize and recalculates overflown segments.\n */\n @HostListener('window:resize', ['$event'])\n onWindowResize(): void {\n this.handleOverflownSegments();\n }\n\n /**\n * Returns true if breadcrumb container directive exists.\n */\n get hasContainer(): boolean {\n return !!this.eclBreadcrumbContainer;\n }\n\n /**\n * Expands hidden breadcrumb segments after clicking ellipsis.\n */\n onEllipsisSegmentClick(evt: MouseEvent): void {\n this.eclSegments.forEach((segment) => {\n segment.isHidden = false;\n });\n this.hideEllipsis();\n this.isExpanded = true;\n }\n\n private init(): void {\n setTimeout(() => {\n this.insertEllipsisSegmentIntoPosition();\n this.handleStaticAndNonStaticSegments();\n });\n }\n\n private insertEllipsisSegmentIntoPosition(): void {\n if (this.hasEnoughSegments()) {\n const secondEclSegmentEl: HTMLElement = this.eclSegments.get(1).el.nativeElement;\n const ellipsisSegmentEl: HTMLElement = this.eclEllipsisSegment.el.nativeElement;\n if (this.hasContainer) {\n this.renderer.insertBefore(this.eclBreadcrumbContainer.el.nativeElement, ellipsisSegmentEl, secondEclSegmentEl);\n } else {\n this.renderer.insertBefore(this.breadcrumbContainer.nativeElement, ellipsisSegmentEl, secondEclSegmentEl);\n }\n }\n }\n\n private handleOverflownSegments(): void {\n if (this.hasEnoughSegments()) {\n setTimeout(() => {\n if (this.isBreadcrumbOverflowed()) {\n this.hideNonStaticSegments();\n this.showEllipsis();\n this.collapse();\n } else {\n this.hideEllipsis();\n this.showNonStaticSegments()\n this.expand();\n }\n });\n }\n }\n\n private hideNonStaticSegments(): void {\n this.nonStaticSegments.forEach((segment) => {\n segment.isHidden = true;\n });\n }\n\n private showNonStaticSegments(): void {\n this.nonStaticSegments.forEach((segment) => {\n segment.isHidden = false;\n });\n }\n\n private collapse(): void {\n this.isExpanded = false;\n }\n\n private expand(): void {\n this.isExpanded = true;\n }\n\n private hideEllipsis(): void {\n this.eclEllipsisSegment.isHidden = true;\n }\n\n private showEllipsis(): void {\n this.eclEllipsisSegment.isHidden = false;\n }\n\n private hasEnoughSegments(): boolean {\n return this.eclSegments && this.eclSegments.length > 3;\n }\n\n private handleStaticAndNonStaticSegments(): void {\n if (this.hasEnoughSegments()) {\n this.nonStaticSegments = this.eclSegments.toArray().slice(1, this.eclSegments.length - 2);\n }\n }\n\n private isBreadcrumbOverflowed(): boolean {\n const breadcrumbTotalWidth = this.getBreadcrumbTotalWidth();\n const segmentsTotalWidth = this.getSegmentsTotalWidth();\n const marginOfError = 1.1;\n\n return segmentsTotalWidth * marginOfError >= breadcrumbTotalWidth;\n }\n\n private getBreadcrumbTotalWidth(): number {\n return this.el.nativeElement.offsetWidth;\n }\n\n private getSegmentsTotalWidth(): number {\n return this.eclSegments.reduce((width: number, segmentComponent) => width + segmentComponent.el.nativeElement.offsetWidth, 0);\n }\n}\n","@if (!hasContainer) {\n<ol class=\"ecl-breadcrumb__container\" #breadcrumbContainer>\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</ol>\n} @else {\n<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n}\n<ng-template #content>\n <li eclBreadcrumbSegment #ellipsisSegment [isHidden]=\"true\" isEllipsis>\n <button tabindex=\"0\" eclButton variant=\"ghost\" class=\"ecl-breadcrumb__ellipsis\"\n [attr.aria-label]=\"'ecl.breadcrumb.SHOW-MORE-ITEMS' | translate\" (click)=\"onEllipsisSegmentClick($event)\">\n ...\n </button>\n </li>\n <ng-content></ng-content>\n</ng-template>","import { NgModule } from '@angular/core';\nimport { EclBreadcrumbComponent } from './ecl-breadcrumb.component';\nimport { EclBreadcrumbSegmentComponent } from './ecl-breadcrumb-segment.component';\nimport { EclBreadcrumbContainerDirective } from './ecl-breadcrumb-container.directive';\n\nconst COMPONENTS = [EclBreadcrumbComponent, EclBreadcrumbSegmentComponent, EclBreadcrumbContainerDirective];\n/**\n * Module that provides the EclBreadcrumbComponent and it's dependencies.\n *\n * @deprecated Use {@link EUI_ECL_BREADCRUMB} instead.\n */\n@NgModule({\n imports: [...COMPONENTS],\n exports: [...COMPONENTS],\n})\nexport class EclBreadcrumbModule {}\n","import { EclBreadcrumbComponent } from './ecl-breadcrumb.component';\nimport { EclBreadcrumbSegmentComponent } from './ecl-breadcrumb-segment.component';\nimport { EclBreadcrumbContainerDirective } from './ecl-breadcrumb-container.directive';\n\nexport * from './ecl-breadcrumb.module';\nexport * from './ecl-breadcrumb.component';\nexport * from './ecl-breadcrumb-segment.component';\nexport * from './models/ecl-breadcrumb.model';\nexport * from './events/ecl-breadcrumb-segment-click.event';\nexport * from './ecl-breadcrumb-container.directive';\n\nexport const EUI_ECL_BREADCRUMB = [\n EclBreadcrumbComponent, EclBreadcrumbSegmentComponent, EclBreadcrumbContainerDirective,\n] as const;","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2"],"mappings":"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"}
@@ -15,10 +15,10 @@ class EclButtonLabelDirective extends ECLBaseDirective {
15
15
  get cssClasses() {
16
16
  return [super.getCssClasses('ecl-button__label')].join(' ').trim();
17
17
  }
18
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: EclButtonLabelDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
19
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.1.6", type: EclButtonLabelDirective, isStandalone: true, selector: "[eclButtonLabel]", host: { properties: { "class": "this.cssClasses" } }, usesInheritance: true, ngImport: i0 }); }
18
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclButtonLabelDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
19
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.0-next.1", type: EclButtonLabelDirective, isStandalone: true, selector: "[eclButtonLabel]", host: { properties: { "class": "this.cssClasses" } }, usesInheritance: true, ngImport: i0 }); }
20
20
  }
21
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: EclButtonLabelDirective, decorators: [{
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclButtonLabelDirective, decorators: [{
22
22
  type: Directive,
23
23
  args: [{
24
24
  selector: '[eclButtonLabel]',
@@ -38,10 +38,10 @@ class EclIndicatorDirective {
38
38
  */
39
39
  this.hasClass = true;
40
40
  }
41
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: EclIndicatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
42
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.1.6", type: EclIndicatorDirective, isStandalone: true, selector: "[eclIndicator]", host: { properties: { "class.ecl-indicator": "this.hasClass" } }, ngImport: i0 }); }
41
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclIndicatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
42
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.0-next.1", type: EclIndicatorDirective, isStandalone: true, selector: "[eclIndicator]", host: { properties: { "class.ecl-indicator": "this.hasClass" } }, ngImport: i0 }); }
43
43
  }
44
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: EclIndicatorDirective, decorators: [{
44
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclIndicatorDirective, decorators: [{
45
45
  type: Directive,
46
46
  args: [{
47
47
  selector: '[eclIndicator]',
@@ -61,10 +61,10 @@ class EclButtonIconContainerDirective {
61
61
  */
62
62
  this.hasClass = true;
63
63
  }
64
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: EclButtonIconContainerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
65
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.1.6", type: EclButtonIconContainerDirective, isStandalone: true, selector: "[eclButtonIconContainer]", host: { properties: { "class.ecl-button__icon-container": "this.hasClass" } }, ngImport: i0 }); }
64
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclButtonIconContainerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
65
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.0-next.1", type: EclButtonIconContainerDirective, isStandalone: true, selector: "[eclButtonIconContainer]", host: { properties: { "class.ecl-button__icon-container": "this.hasClass" } }, ngImport: i0 }); }
66
66
  }
67
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: EclButtonIconContainerDirective, decorators: [{
67
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclButtonIconContainerDirective, decorators: [{
68
68
  type: Directive,
69
69
  args: [{
70
70
  selector: '[eclButtonIconContainer]',
@@ -135,10 +135,10 @@ class EclButtonComponent extends ECLBaseDirective {
135
135
  onFocus() {
136
136
  this.el.nativeElement.focus();
137
137
  }
138
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: EclButtonComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
139
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.6", type: EclButtonComponent, isStandalone: true, selector: "button[eclButton], button[ecl-button], a[eclButton]", inputs: { isIconOnly: ["isIconOnly", "isIconOnly", booleanAttribute], variant: "variant", containerStyleClass: "containerStyleClass" }, host: { properties: { "class": "this.cssClasses" } }, queries: [{ propertyName: "indicator", first: true, predicate: i0.forwardRef(() => EclIndicatorDirective), descendants: true }, { propertyName: "iconComponents", predicate: i0.forwardRef(() => EclIconComponent) }], usesInheritance: true, ngImport: i0, template: "@if (hasIcon) {\n<span class=\"ecl-button__container {{ containerStyleClass }}\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</span>\n}\n@else {\n<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n}\n<ng-template #content>\n <ng-content></ng-content>\n</ng-template>", dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: EclIconModule }] }); }
138
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclButtonComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
139
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.0-next.1", type: EclButtonComponent, isStandalone: true, selector: "button[eclButton], button[ecl-button], a[eclButton]", inputs: { isIconOnly: ["isIconOnly", "isIconOnly", booleanAttribute], variant: "variant", containerStyleClass: "containerStyleClass" }, host: { properties: { "class": "this.cssClasses" } }, queries: [{ propertyName: "indicator", first: true, predicate: i0.forwardRef(() => EclIndicatorDirective), descendants: true }, { propertyName: "iconComponents", predicate: i0.forwardRef(() => EclIconComponent) }], usesInheritance: true, ngImport: i0, template: "@if (hasIcon) {\n<span class=\"ecl-button__container {{ containerStyleClass }}\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</span>\n}\n@else {\n<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n}\n<ng-template #content>\n <ng-content></ng-content>\n</ng-template>", dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: EclIconModule }] }); }
140
140
  }
141
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: EclButtonComponent, decorators: [{
141
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclButtonComponent, decorators: [{
142
142
  type: Component,
143
143
  args: [{ selector: 'button[eclButton], button[ecl-button], a[eclButton]', imports: [
144
144
  NgTemplateOutlet,
@@ -169,11 +169,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImpor
169
169
  * @deprecated Use {@link EUI_ECL_BUTTON} instead.
170
170
  */
171
171
  class EclButtonModule {
172
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: EclButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
173
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.1.6", ngImport: i0, type: EclButtonModule, imports: [EclButtonComponent, EclButtonLabelDirective, EclIndicatorDirective, EclButtonIconContainerDirective], exports: [EclButtonComponent, EclButtonLabelDirective, EclIndicatorDirective, EclButtonIconContainerDirective] }); }
174
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: EclButtonModule, imports: [EclButtonComponent] }); }
172
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
173
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclButtonModule, imports: [EclButtonComponent, EclButtonLabelDirective, EclIndicatorDirective, EclButtonIconContainerDirective], exports: [EclButtonComponent, EclButtonLabelDirective, EclIndicatorDirective, EclButtonIconContainerDirective] }); }
174
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclButtonModule, imports: [EclButtonComponent] }); }
175
175
  }
176
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: EclButtonModule, decorators: [{
176
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclButtonModule, decorators: [{
177
177
  type: NgModule,
178
178
  args: [{
179
179
  imports: [EclButtonComponent, EclButtonLabelDirective, EclIndicatorDirective, EclButtonIconContainerDirective],
@@ -1 +1 @@
1
- {"version":3,"file":"eui-ecl-components-ecl-button.mjs","sources":["../../components/ecl-button/ecl-button-label.directive.ts","../../components/ecl-button/ecl-button.component.ts","../../components/ecl-button/ecl-button.component.html","../../components/ecl-button/ecl-button.module.ts","../../components/ecl-button/index.ts","../../components/ecl-button/eui-ecl-components-ecl-button.ts"],"sourcesContent":["import { Directive, HostBinding } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Directive for labeling content inside the ECL Button.\n * Automatically applies the `ecl-button__label` CSS class.\n */\n@Directive({\n selector: '[eclButtonLabel]',\n})\nexport class EclButtonLabelDirective extends ECLBaseDirective {\n /**\n * Returns the CSS classes to apply for the button label.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-button__label')].join(' ').trim();\n }\n}\n\n/**\n * Directive for indicating special content inside the ECL Button.\n * Automatically applies the `ecl-indicator` CSS class.\n */\n@Directive({\n selector: '[eclIndicator]',\n})\nexport class EclIndicatorDirective {\n /**\n * Applies the `ecl-indicator` CSS class.\n */\n @HostBinding('class.ecl-indicator') hasClass = true;\n}\n\n/**\n * Directive for the icon container inside the ECL Button.\n * Automatically applies the `ecl-button__icon-container` CSS class.\n */\n@Directive({\n selector: '[eclButtonIconContainer]',\n})\nexport class EclButtonIconContainerDirective {\n /**\n * Applies the `ecl-button__icon-container` CSS class.\n */\n @HostBinding('class.ecl-button__icon-container') hasClass = true;\n}\n","import {\n booleanAttribute,\n Component,\n ContentChildren,\n ElementRef,\n forwardRef,\n HostBinding,\n Input,\n QueryList,\n AfterViewInit,\n ContentChild,\n inject,\n} from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclIconComponent, EclIconModule } from '@eui/ecl/components/ecl-icon';\nimport { EclIndicatorDirective } from './ecl-button-label.directive';\nimport { NgTemplateOutlet } from '@angular/common';\n\n/**\n * Button component based on ECL design system.\n * Can render as a `<button>` or `<a>` element depending on usage.\n * Supports multiple visual variants and optional icon/indicator content.\n */\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'button[eclButton], button[ecl-button], a[eclButton]',\n templateUrl: './ecl-button.component.html',\n imports: [\n NgTemplateOutlet,\n EclIconModule,\n ],\n})\nexport class EclButtonComponent extends ECLBaseDirective implements AfterViewInit {\n el = inject(ElementRef);\n\n /**\n * Whether the button should be styled as icon-only.\n * When true, the `ecl-button--icon-only` class is applied.\n */\n @Input({ transform: booleanAttribute }) isIconOnly = false;\n\n /**\n * Visual variant of the button.\n * Can be 'primary', 'secondary', 'tertiary', 'cta', 'ghost', or 'ghost-inverted'.\n * Defaults to 'primary'.\n */\n @Input() variant: 'primary' | 'secondary' | 'tertiary' | 'cta' | 'ghost' | 'ghost-inverted' = 'primary';\n\n /**\n * Optional additional class to apply to the button container.\n */\n @Input() containerStyleClass: string;\n\n /**\n * List of projected icon components inside the button.\n * Used internally to detect presence of icons.\n */\n @ContentChildren(forwardRef(() => EclIconComponent)) iconComponents: QueryList<EclIconComponent>;\n\n /**\n * Projected indicator element inside the button (e.g., for loading or notification).\n * Used internally to detect its presence.\n */\n @ContentChild(forwardRef(() => EclIndicatorDirective)) indicator: EclIndicatorDirective;\n\n /**\n * Computes the full set of CSS classes to apply to the button element.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-button'), `ecl-button--${this.variant}`,\n this.isIconOnly ? 'ecl-button--icon-only' : ''].join(' ').trim();\n }\n\n /**\n * Indicates whether the button contains an icon.\n * Used internally for styling logic.\n */\n get hasIcon(): boolean {\n return this.iconComponents.length > 0;\n }\n\n /**\n * Indicates whether the button contains an indicator element.\n * Used internally for styling logic.\n */\n get hasIndicator(): boolean {\n return !!this.indicator;\n }\n\n /**\n * Lifecycle hook triggered after content is projected.\n * Assigns a button-specific class to projected icon components.\n */\n ngAfterViewInit(): void {\n if (this.iconComponents) {\n setTimeout(() => {\n this.iconComponents.forEach((icn) => {\n icn.baseDirective.class = 'ecl-button__icon';\n });\n });\n }\n }\n\n /**\n * Manually focuses the button element.\n */\n onFocus(): void {\n this.el.nativeElement.focus();\n }\n}\n","@if (hasIcon) {\n<span class=\"ecl-button__container {{ containerStyleClass }}\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</span>\n}\n@else {\n<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n}\n<ng-template #content>\n <ng-content></ng-content>\n</ng-template>","import { NgModule } from '@angular/core';\nimport { EclButtonComponent } from './ecl-button.component';\nimport { EclButtonIconContainerDirective, EclButtonLabelDirective, EclIndicatorDirective } from './ecl-button-label.directive';\n\n/**\n * @description\n * Module that provides the EclButton component and its dependencies.\n *\n * @deprecated Use {@link EUI_ECL_BUTTON} instead.\n */\n@NgModule({\n imports:[EclButtonComponent, EclButtonLabelDirective, EclIndicatorDirective, EclButtonIconContainerDirective],\n exports: [EclButtonComponent, EclButtonLabelDirective, EclIndicatorDirective, EclButtonIconContainerDirective],\n})\nexport class EclButtonModule {}\n","import { EclButtonComponent } from './ecl-button.component';\nimport { EclButtonLabelDirective, EclIndicatorDirective, EclButtonIconContainerDirective } from './ecl-button-label.directive';\n\nexport * from './ecl-button.module';\nexport * from './ecl-button.component';\nexport * from './ecl-button-label.directive';\n\nexport const EUI_ECL_BUTTON = [\n EclButtonComponent,\n EclButtonLabelDirective,\n EclIndicatorDirective,\n EclButtonIconContainerDirective,\n] as const;","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"eui-ecl-components-ecl-button.mjs","sources":["../../components/ecl-button/ecl-button-label.directive.ts","../../components/ecl-button/ecl-button.component.ts","../../components/ecl-button/ecl-button.component.html","../../components/ecl-button/ecl-button.module.ts","../../components/ecl-button/index.ts","../../components/ecl-button/eui-ecl-components-ecl-button.ts"],"sourcesContent":["import { Directive, HostBinding } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Directive for labeling content inside the ECL Button.\n * Automatically applies the `ecl-button__label` CSS class.\n */\n@Directive({\n selector: '[eclButtonLabel]',\n})\nexport class EclButtonLabelDirective extends ECLBaseDirective {\n /**\n * Returns the CSS classes to apply for the button label.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-button__label')].join(' ').trim();\n }\n}\n\n/**\n * Directive for indicating special content inside the ECL Button.\n * Automatically applies the `ecl-indicator` CSS class.\n */\n@Directive({\n selector: '[eclIndicator]',\n})\nexport class EclIndicatorDirective {\n /**\n * Applies the `ecl-indicator` CSS class.\n */\n @HostBinding('class.ecl-indicator') hasClass = true;\n}\n\n/**\n * Directive for the icon container inside the ECL Button.\n * Automatically applies the `ecl-button__icon-container` CSS class.\n */\n@Directive({\n selector: '[eclButtonIconContainer]',\n})\nexport class EclButtonIconContainerDirective {\n /**\n * Applies the `ecl-button__icon-container` CSS class.\n */\n @HostBinding('class.ecl-button__icon-container') hasClass = true;\n}\n","import {\n booleanAttribute,\n Component,\n ContentChildren,\n ElementRef,\n forwardRef,\n HostBinding,\n Input,\n QueryList,\n AfterViewInit,\n ContentChild,\n inject,\n} from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclIconComponent, EclIconModule } from '@eui/ecl/components/ecl-icon';\nimport { EclIndicatorDirective } from './ecl-button-label.directive';\nimport { NgTemplateOutlet } from '@angular/common';\n\n/**\n * Button component based on ECL design system.\n * Can render as a `<button>` or `<a>` element depending on usage.\n * Supports multiple visual variants and optional icon/indicator content.\n */\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'button[eclButton], button[ecl-button], a[eclButton]',\n templateUrl: './ecl-button.component.html',\n imports: [\n NgTemplateOutlet,\n EclIconModule,\n ],\n})\nexport class EclButtonComponent extends ECLBaseDirective implements AfterViewInit {\n el = inject(ElementRef);\n\n /**\n * Whether the button should be styled as icon-only.\n * When true, the `ecl-button--icon-only` class is applied.\n */\n @Input({ transform: booleanAttribute }) isIconOnly = false;\n\n /**\n * Visual variant of the button.\n * Can be 'primary', 'secondary', 'tertiary', 'cta', 'ghost', or 'ghost-inverted'.\n * Defaults to 'primary'.\n */\n @Input() variant: 'primary' | 'secondary' | 'tertiary' | 'cta' | 'ghost' | 'ghost-inverted' = 'primary';\n\n /**\n * Optional additional class to apply to the button container.\n */\n @Input() containerStyleClass: string;\n\n /**\n * List of projected icon components inside the button.\n * Used internally to detect presence of icons.\n */\n @ContentChildren(forwardRef(() => EclIconComponent)) iconComponents: QueryList<EclIconComponent>;\n\n /**\n * Projected indicator element inside the button (e.g., for loading or notification).\n * Used internally to detect its presence.\n */\n @ContentChild(forwardRef(() => EclIndicatorDirective)) indicator: EclIndicatorDirective;\n\n /**\n * Computes the full set of CSS classes to apply to the button element.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-button'), `ecl-button--${this.variant}`,\n this.isIconOnly ? 'ecl-button--icon-only' : ''].join(' ').trim();\n }\n\n /**\n * Indicates whether the button contains an icon.\n * Used internally for styling logic.\n */\n get hasIcon(): boolean {\n return this.iconComponents.length > 0;\n }\n\n /**\n * Indicates whether the button contains an indicator element.\n * Used internally for styling logic.\n */\n get hasIndicator(): boolean {\n return !!this.indicator;\n }\n\n /**\n * Lifecycle hook triggered after content is projected.\n * Assigns a button-specific class to projected icon components.\n */\n ngAfterViewInit(): void {\n if (this.iconComponents) {\n setTimeout(() => {\n this.iconComponents.forEach((icn) => {\n icn.baseDirective.class = 'ecl-button__icon';\n });\n });\n }\n }\n\n /**\n * Manually focuses the button element.\n */\n onFocus(): void {\n this.el.nativeElement.focus();\n }\n}\n","@if (hasIcon) {\n<span class=\"ecl-button__container {{ containerStyleClass }}\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</span>\n}\n@else {\n<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n}\n<ng-template #content>\n <ng-content></ng-content>\n</ng-template>","import { NgModule } from '@angular/core';\nimport { EclButtonComponent } from './ecl-button.component';\nimport { EclButtonIconContainerDirective, EclButtonLabelDirective, EclIndicatorDirective } from './ecl-button-label.directive';\n\n/**\n * @description\n * Module that provides the EclButton component and its dependencies.\n *\n * @deprecated Use {@link EUI_ECL_BUTTON} instead.\n */\n@NgModule({\n imports:[EclButtonComponent, EclButtonLabelDirective, EclIndicatorDirective, EclButtonIconContainerDirective],\n exports: [EclButtonComponent, EclButtonLabelDirective, EclIndicatorDirective, EclButtonIconContainerDirective],\n})\nexport class EclButtonModule {}\n","import { EclButtonComponent } from './ecl-button.component';\nimport { EclButtonLabelDirective, EclIndicatorDirective, EclButtonIconContainerDirective } from './ecl-button-label.directive';\n\nexport * from './ecl-button.module';\nexport * from './ecl-button.component';\nexport * from './ecl-button-label.directive';\n\nexport const EUI_ECL_BUTTON = [\n EclButtonComponent,\n EclButtonLabelDirective,\n EclIndicatorDirective,\n EclButtonIconContainerDirective,\n] as const;","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -21,10 +21,10 @@ class EclCardPictureDirective extends ECLBaseDirective {
21
21
  get cssClasses() {
22
22
  return [super.getCssClasses('ecl-picture ecl-card__picture')].join(' ').trim();
23
23
  }
24
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: EclCardPictureDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
25
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "20.1.6", type: EclCardPictureDirective, isStandalone: true, selector: "picture[eclCardPicture]", inputs: { hasZoom: ["hasZoom", "hasZoom", booleanAttribute] }, host: { properties: { "class": "this.cssClasses", "class.ecl-picture--zoom": "this.hasZoom" } }, usesInheritance: true, ngImport: i0 }); }
24
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclCardPictureDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
25
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "21.0.0-next.1", type: EclCardPictureDirective, isStandalone: true, selector: "picture[eclCardPicture]", inputs: { hasZoom: ["hasZoom", "hasZoom", booleanAttribute] }, host: { properties: { "class": "this.cssClasses", "class.ecl-picture--zoom": "this.hasZoom" } }, usesInheritance: true, ngImport: i0 }); }
26
26
  }
27
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: EclCardPictureDirective, decorators: [{
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclCardPictureDirective, decorators: [{
28
28
  type: Directive,
29
29
  args: [{
30
30
  selector: 'picture[eclCardPicture]',
@@ -54,10 +54,10 @@ class EclCardImageDirective extends ECLBaseDirective {
54
54
  get cssClasses() {
55
55
  return [super.getCssClasses('ecl-card__image')].join(' ').trim();
56
56
  }
57
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: EclCardImageDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
58
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.1.6", type: EclCardImageDirective, isStandalone: true, selector: "img[eclCardImage]", host: { properties: { "class": "this.cssClasses" } }, usesInheritance: true, ngImport: i0 }); }
57
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclCardImageDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
58
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.0-next.1", type: EclCardImageDirective, isStandalone: true, selector: "img[eclCardImage]", host: { properties: { "class": "this.cssClasses" } }, usesInheritance: true, ngImport: i0 }); }
59
59
  }
60
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: EclCardImageDirective, decorators: [{
60
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclCardImageDirective, decorators: [{
61
61
  type: Directive,
62
62
  args: [{
63
63
  selector: 'img[eclCardImage]',
@@ -110,10 +110,10 @@ class EclCardComponent extends ECLBaseDirective {
110
110
  }
111
111
  }
112
112
  }
113
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: EclCardComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
114
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.1.6", type: EclCardComponent, isStandalone: true, selector: "ecl-card", host: { properties: { "attr.role": "this.role", "class": "this.cssClasses" } }, queries: [{ propertyName: "eclContentBlock", first: true, predicate: i0.forwardRef(() => EclContentBlockComponent), descendants: true }, { propertyName: "eclContentBlockTitle", first: true, predicate: i0.forwardRef(() => EclContentBlockTitleDirective), descendants: true }, { propertyName: "eclCardImage", first: true, predicate: i0.forwardRef(() => EclCardImageDirective), descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-content></ng-content>\n", styles: [":host{display:block}\n"] }); }
113
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclCardComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
114
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.0-next.1", type: EclCardComponent, isStandalone: true, selector: "ecl-card", host: { properties: { "attr.role": "this.role", "class": "this.cssClasses" } }, queries: [{ propertyName: "eclContentBlock", first: true, predicate: i0.forwardRef(() => EclContentBlockComponent), descendants: true }, { propertyName: "eclContentBlockTitle", first: true, predicate: i0.forwardRef(() => EclContentBlockTitleDirective), descendants: true }, { propertyName: "eclCardImage", first: true, predicate: i0.forwardRef(() => EclCardImageDirective), descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-content></ng-content>\n", styles: [":host{display:block}\n"] }); }
115
115
  }
116
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: EclCardComponent, decorators: [{
116
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclCardComponent, decorators: [{
117
117
  type: Component,
118
118
  args: [{ selector: 'ecl-card', template: "<ng-content></ng-content>\n", styles: [":host{display:block}\n"] }]
119
119
  }], propDecorators: { role: [{
@@ -144,10 +144,10 @@ class EclCardBodyComponent extends ECLBaseDirective {
144
144
  get cssClasses() {
145
145
  return [super.getCssClasses('ecl-card__body')].join(' ').trim();
146
146
  }
147
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: EclCardBodyComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
148
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.1.6", type: EclCardBodyComponent, isStandalone: true, selector: "ecl-card-body", host: { properties: { "class": "this.cssClasses" } }, usesInheritance: true, ngImport: i0, template: "<ng-content></ng-content>\n", styles: [":host{display:block}\n"] }); }
147
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclCardBodyComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
148
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.0-next.1", type: EclCardBodyComponent, isStandalone: true, selector: "ecl-card-body", host: { properties: { "class": "this.cssClasses" } }, usesInheritance: true, ngImport: i0, template: "<ng-content></ng-content>\n", styles: [":host{display:block}\n"] }); }
149
149
  }
150
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: EclCardBodyComponent, decorators: [{
150
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclCardBodyComponent, decorators: [{
151
151
  type: Component,
152
152
  args: [{ selector: 'ecl-card-body', template: "<ng-content></ng-content>\n", styles: [":host{display:block}\n"] }]
153
153
  }], propDecorators: { cssClasses: [{
@@ -168,17 +168,17 @@ const COMPONENTS = [
168
168
  * @deprecated Use {@link EUI_ECL_CARD} instead.
169
169
  */
170
170
  class EclCardModule {
171
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: EclCardModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
172
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.1.6", ngImport: i0, type: EclCardModule, imports: [EclCardComponent,
171
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclCardModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
172
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclCardModule, imports: [EclCardComponent,
173
173
  EclCardBodyComponent,
174
174
  EclCardPictureDirective,
175
175
  EclCardImageDirective], exports: [EclCardComponent,
176
176
  EclCardBodyComponent,
177
177
  EclCardPictureDirective,
178
178
  EclCardImageDirective] }); }
179
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: EclCardModule }); }
179
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclCardModule }); }
180
180
  }
181
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: EclCardModule, decorators: [{
181
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-next.1", ngImport: i0, type: EclCardModule, decorators: [{
182
182
  type: NgModule,
183
183
  args: [{
184
184
  imports: [...COMPONENTS],