@eui/ecl 21.3.2 → 21.3.3-snapshot-1782381806158
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/i18n-ecl/bg.json +1 -2
- package/assets/i18n-ecl/cs.json +1 -2
- package/assets/i18n-ecl/da.json +1 -2
- package/assets/i18n-ecl/de.json +1 -2
- package/assets/i18n-ecl/el.json +1 -2
- package/assets/i18n-ecl/en.json +1 -2
- package/assets/i18n-ecl/es.json +1 -2
- package/assets/i18n-ecl/et.json +66 -67
- package/assets/i18n-ecl/fi.json +47 -48
- package/assets/i18n-ecl/fr.json +1 -2
- package/assets/i18n-ecl/ga.json +3 -4
- package/assets/i18n-ecl/hr.json +59 -60
- package/assets/i18n-ecl/hu.json +1 -2
- package/assets/i18n-ecl/it.json +1 -2
- package/assets/i18n-ecl/lt.json +95 -96
- package/assets/i18n-ecl/lv.json +1 -2
- package/assets/i18n-ecl/mt.json +1 -2
- package/assets/i18n-ecl/nl.json +1 -2
- package/assets/i18n-ecl/pl.json +105 -106
- package/assets/i18n-ecl/pt.json +1 -2
- package/assets/i18n-ecl/ro.json +1 -2
- package/assets/i18n-ecl/sk.json +1 -2
- package/assets/i18n-ecl/sl.json +48 -49
- package/assets/i18n-ecl/sv.json +93 -94
- package/components/ecl-animated-numbers/package.json +4 -0
- package/components/ecl-page-summary/package.json +4 -0
- package/components/ecl-text-media/package.json +4 -0
- package/docs/changelog.html +32 -0
- package/docs/components/EclAccordionSummaryComponent.html +2 -2
- package/docs/components/EclAddToCalendarComponent.html +2 -2
- package/docs/components/EclAnimatedNumbersComponent.html +625 -0
- package/docs/components/EclAnimatedNumbersItemComponent.html +625 -0
- package/docs/components/EclAppComponent.html +2 -2
- package/docs/components/EclBannerComponent.html +2 -2
- package/docs/components/EclBlockquoteComponent.html +2 -2
- package/docs/components/EclBreadcrumbComponent.html +2 -2
- package/docs/components/EclBreadcrumbSegmentComponent.html +2 -2
- package/docs/components/EclButtonComponent.html +2 -2
- package/docs/components/EclCardBodyComponent.html +2 -2
- package/docs/components/EclCardComponent.html +2 -2
- package/docs/components/EclCarouselComponent.html +2 -2
- package/docs/components/EclCarouselItemComponent.html +2 -2
- package/docs/components/EclCategoryFilterComponent.html +2 -2
- package/docs/components/EclCategoryFilterItemComponent.html +2 -2
- package/docs/components/EclCategoryFilterListComponent.html +2 -2
- package/docs/components/EclCheckboxHelpComponent.html +2 -2
- package/docs/components/EclCheckboxLabelComponent.html +2 -2
- package/docs/components/EclContentBlockComponent.html +2 -2
- package/docs/components/EclContentItemComponent.html +2 -2
- package/docs/components/EclDateBlockComponent.html +2 -2
- package/docs/components/EclDescriptionListDefinitionComponent.html +2 -2
- package/docs/components/EclExpandableComponent.html +2 -2
- package/docs/components/EclFactFiguresComponent.html +2 -2
- package/docs/components/EclFactFiguresItemComponent.html +2 -2
- package/docs/components/EclFactFiguresViewAllComponent.html +2 -2
- package/docs/components/EclFeaturedComponent.html +2 -2
- package/docs/components/EclFeaturedItemComponent.html +2 -2
- package/docs/components/EclFeaturedItemDescriptionComponent.html +2 -2
- package/docs/components/EclFileComponent.html +2 -2
- package/docs/components/EclFileItemComponent.html +2 -2
- package/docs/components/EclFileItemsComponent.html +2 -2
- package/docs/components/EclFileTaxonomyComponent.html +2 -2
- package/docs/components/EclFormGroupComponent.html +2 -2
- package/docs/components/EclFormLabelComponent.html +2 -2
- package/docs/components/EclGalleryComponent.html +2 -2
- package/docs/components/EclGalleryFooterComponent.html +2 -2
- package/docs/components/EclGalleryItemComponent.html +2 -2
- package/docs/components/EclIconComponent.html +2 -2
- package/docs/components/EclIndicatorComponent-1.html +2 -2
- package/docs/components/EclIndicatorComponent.html +2 -2
- package/docs/components/EclInpageNavigationComponent.html +2 -2
- package/docs/components/EclInpageNavigationItemComponent.html +2 -2
- package/docs/components/EclListIllustrationComponent.html +2 -2
- package/docs/components/EclListIllustrationItemComponent.html +2 -2
- package/docs/components/EclLoadingIndicatorComponent.html +2 -2
- package/docs/components/EclMediaContainerComponent.html +189 -103
- package/docs/components/EclMegaMenuComponent.html +2 -2
- package/docs/components/EclMegaMenuFeaturedComponent.html +2 -2
- package/docs/components/EclMegaMenuInfoComponent.html +2 -2
- package/docs/components/EclMegaMenuItemComponent.html +2 -2
- package/docs/components/EclMegaMenuSubitemComponent.html +2 -2
- package/docs/components/EclMenuComponent.html +2 -2
- package/docs/components/EclMenuItemComponent.html +2 -2
- package/docs/components/EclMenuMegaComponent.html +2 -2
- package/docs/components/EclMenuMegaItemComponent.html +2 -2
- package/docs/components/EclModalBodyComponent.html +2 -2
- package/docs/components/EclModalComponent.html +2 -2
- package/docs/components/EclModalFooterComponent.html +2 -2
- package/docs/components/EclModalHeaderComponent.html +2 -2
- package/docs/components/EclMultiselectComponent.html +2 -2
- package/docs/components/EclMultiselectDropdownComponent.html +2 -2
- package/docs/components/EclMultiselectInputComponent.html +2 -2
- package/docs/components/EclMultiselectOptgroupComponent.html +2 -2
- package/docs/components/EclMultiselectOptionComponent.html +2 -2
- package/docs/components/EclNavigationListComponent.html +2 -2
- package/docs/components/EclNavigationListItemComponent.html +2 -2
- package/docs/components/EclNewsTickerComponent.html +2 -2
- package/docs/components/EclNewsTickerItemComponent.html +2 -2
- package/docs/components/EclNotificationComponent.html +2 -2
- package/docs/components/EclPageHeaderComponent.html +2 -2
- package/docs/components/EclPageHeaderDescriptionContainerComponent.html +2 -2
- package/docs/components/EclPageHeaderExpandableComponent.html +2 -2
- package/docs/components/EclPageHeaderNextComponent.html +2 -2
- package/docs/components/EclPageHeaderSectionComponent.html +2 -2
- package/docs/components/EclPageHeaderSectionInfoComponent.html +2 -2
- package/docs/components/EclPageSummaryComponent.html +364 -0
- package/docs/components/EclPaginationComponent.html +2 -2
- package/docs/components/EclPaginationItemComponent.html +2 -2
- package/docs/components/EclPopoverComponent.html +2 -2
- package/docs/components/EclQuizCardComponent.html +71 -402
- package/docs/components/EclQuizComponent.html +10 -137
- package/docs/components/EclRadioHelpComponent.html +2 -2
- package/docs/components/EclRadioLabelComponent.html +2 -2
- package/docs/components/EclRangeBubbleComponent.html +2 -2
- package/docs/components/EclRangeValueComponent.html +2 -2
- package/docs/components/EclRatingFieldComponent.html +2 -2
- package/docs/components/EclSearchFormComponent.html +2 -2
- package/docs/components/EclSelectContainerComponent.html +2 -2
- package/docs/components/EclSiteFooterComponent.html +2 -10
- package/docs/components/EclSiteFooterCoownerComponent.html +2 -2
- package/docs/components/EclSiteFooterCoreComponent.html +2 -2
- package/docs/components/EclSiteFooterFixedContentEUComponent.html +2 -2
- package/docs/components/EclSiteFooterRowCommonComponent.html +2 -2
- package/docs/components/EclSiteHeaderActionComponent.html +2 -2
- package/docs/components/EclSiteHeaderBannerTopComponent.html +2 -2
- package/docs/components/EclSiteHeaderComponent.html +2 -2
- package/docs/components/EclSiteHeaderCustomActionComponent.html +2 -2
- package/docs/components/EclSiteHeaderEnvironmentComponent.html +2 -2
- package/docs/components/EclSiteHeaderLanguageComponent.html +2 -2
- package/docs/components/EclSiteHeaderLanguagePopoverComponent.html +2 -2
- package/docs/components/EclSiteHeaderLoginComponent.html +2 -2
- package/docs/components/EclSiteHeaderNotificationComponent.html +2 -2
- package/docs/components/EclSiteHeaderSearchComponent.html +2 -2
- package/docs/components/EclSocialMediaFollowComponent.html +2 -2
- package/docs/components/EclSocialMediaFollowItemComponent.html +2 -2
- package/docs/components/EclSplashPageComponent.html +2 -2
- package/docs/components/EclSplashPageLanguageCategoryComponent.html +2 -2
- package/docs/components/EclSplashPageLanguageContainerComponent.html +2 -2
- package/docs/components/EclSplashPageLanguageLinkComponent.html +2 -2
- package/docs/components/EclSpotlightComponent.html +2 -2
- package/docs/components/EclSpotlightLinkComponent.html +2 -2
- package/docs/components/EclStickyContainerComponent.html +2 -2
- package/docs/components/EclTabComponent.html +2 -2
- package/docs/components/EclTabLabelComponent.html +2 -2
- package/docs/components/EclTableSortButtonComponent.html +2 -2
- package/docs/components/EclTabsComponent.html +2 -2
- package/docs/components/EclTagComponent.html +2 -2
- package/docs/components/EclTextMediaComponent.html +569 -0
- package/docs/components/EclTimelineComponent.html +2 -2
- package/docs/components/EclTimelineItemComponent.html +2 -2
- package/docs/components/EclTimelineItemTogglerComponent.html +2 -2
- package/docs/directives/EclAnimatedNumbersIconDirective.html +261 -0
- package/docs/directives/EclAnimatedNumbersItemsDirective.html +263 -0
- package/docs/directives/EclAnimatedNumbersSourceDirective.html +261 -0
- package/docs/directives/EclAnimatedNumbersSourcesItemDirective.html +263 -0
- package/docs/directives/EclAnimatedNumbersSourcesListDirective.html +263 -0
- package/docs/directives/EclPageInformationDirective.html +6 -130
- package/docs/directives/EclQuizListDirective.html +365 -0
- package/docs/directives/EclTextMediaContainerDirective.html +260 -0
- package/docs/directives/EclTextMediaDescriptionDirective.html +260 -0
- package/docs/directives/EclTextMediaLinkDirective.html +260 -0
- package/docs/directives/EclTextMediaMediaAnchorDirective.html +313 -0
- package/docs/directives/EclTextMediaMicroTitleDirective.html +260 -0
- package/docs/directives/EclTextMediaTitleDirective.html +260 -0
- package/docs/js/menu-wc.js +48 -0
- package/docs/js/menu-wc_es5.js +1 -1
- package/docs/js/search/search_index.js +2 -2
- package/docs/json/EclAccordionDirective.md +1 -0
- package/docs/json/EclAnimatedNumbersComponent.md +34 -0
- package/docs/json/EclAnimatedNumbersIconDirective.md +14 -0
- package/docs/json/EclAnimatedNumbersItemComponent.md +33 -0
- package/docs/json/EclAnimatedNumbersItemsDirective.md +16 -0
- package/docs/json/EclAnimatedNumbersSourceDirective.md +14 -0
- package/docs/json/EclAnimatedNumbersSourcesItemDirective.md +16 -0
- package/docs/json/EclAnimatedNumbersSourcesListDirective.md +16 -0
- package/docs/json/EclMediaContainerComponent.md +1 -0
- package/docs/json/EclPageSummaryComponent.md +12 -0
- package/docs/json/EclQuizCardComponent.md +2 -3
- package/docs/json/EclQuizComponent.md +1 -1
- package/docs/json/EclQuizListDirective.md +8 -0
- package/docs/json/EclTextMediaComponent.md +18 -0
- package/docs/json/EclTextMediaContainerDirective.md +10 -0
- package/docs/json/EclTextMediaDescriptionDirective.md +10 -0
- package/docs/json/EclTextMediaLinkDirective.md +10 -0
- package/docs/json/EclTextMediaMediaAnchorDirective.md +17 -0
- package/docs/json/EclTextMediaMicroTitleDirective.md +10 -0
- package/docs/json/EclTextMediaTitleDirective.md +10 -0
- package/docs/json/documentation.json +1252 -493
- package/docs/miscellaneous/variables.html +115 -0
- package/docs/overview.html +2 -2
- package/docs/properties.html +1 -1
- package/fesm2022/eui-ecl-components-ecl-accordion.mjs +1 -0
- package/fesm2022/eui-ecl-components-ecl-accordion.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-animated-numbers.mjs +359 -0
- package/fesm2022/eui-ecl-components-ecl-animated-numbers.mjs.map +1 -0
- package/fesm2022/eui-ecl-components-ecl-link.mjs +6 -1
- package/fesm2022/eui-ecl-components-ecl-link.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-media-container.mjs +57 -27
- package/fesm2022/eui-ecl-components-ecl-media-container.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-page-information.mjs +6 -14
- package/fesm2022/eui-ecl-components-ecl-page-information.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-page-summary.mjs +30 -0
- package/fesm2022/eui-ecl-components-ecl-page-summary.mjs.map +1 -0
- package/fesm2022/eui-ecl-components-ecl-quiz.mjs +63 -87
- package/fesm2022/eui-ecl-components-ecl-quiz.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-site-footer.mjs +4 -4
- package/fesm2022/eui-ecl-components-ecl-site-footer.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-text-media.mjs +161 -0
- package/fesm2022/eui-ecl-components-ecl-text-media.mjs.map +1 -0
- package/package.json +14 -2
- package/types/eui-ecl-components-ecl-accordion.d.ts +1 -0
- package/types/eui-ecl-components-ecl-accordion.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-animated-numbers.d.ts +165 -0
- package/types/eui-ecl-components-ecl-animated-numbers.d.ts.map +1 -0
- package/types/eui-ecl-components-ecl-link.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-media-container.d.ts +19 -4
- package/types/eui-ecl-components-ecl-media-container.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-page-information.d.ts +0 -6
- package/types/eui-ecl-components-ecl-page-information.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-page-summary.d.ts +13 -0
- package/types/eui-ecl-components-ecl-page-summary.d.ts.map +1 -0
- package/types/eui-ecl-components-ecl-quiz.d.ts +27 -23
- package/types/eui-ecl-components-ecl-quiz.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-site-footer.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-text-media.d.ts +69 -0
- package/types/eui-ecl-components-ecl-text-media.d.ts.map +1 -0
|
@@ -151,6 +151,9 @@
|
|
|
151
151
|
<li>
|
|
152
152
|
<a href="#EUI_ECL_ADD_TO_CALENDAR" title="packages/ecl/components/ecl-add-to-calendar/index.ts" ><b>EUI_ECL_ADD_TO_CALENDAR</b> (packages/.../index.ts)</a>
|
|
153
153
|
</li>
|
|
154
|
+
<li>
|
|
155
|
+
<a href="#EUI_ECL_ANIMATED_NUMBERS" title="packages/ecl/components/ecl-animated-numbers/index.ts" ><b>EUI_ECL_ANIMATED_NUMBERS</b> (packages/.../index.ts)</a>
|
|
156
|
+
</li>
|
|
154
157
|
<li>
|
|
155
158
|
<a href="#EUI_ECL_APP" title="packages/ecl/components/ecl-app/index.ts" ><b>EUI_ECL_APP</b> (packages/.../index.ts)</a>
|
|
156
159
|
</li>
|
|
@@ -274,6 +277,9 @@
|
|
|
274
277
|
<li>
|
|
275
278
|
<a href="#EUI_ECL_PAGE_INFORMATION" title="packages/ecl/components/ecl-page-information/index.ts" ><b>EUI_ECL_PAGE_INFORMATION</b> (packages/.../index.ts)</a>
|
|
276
279
|
</li>
|
|
280
|
+
<li>
|
|
281
|
+
<a href="#EUI_ECL_PAGE_SUMMARY" title="packages/ecl/components/ecl-page-summary/index.ts" ><b>EUI_ECL_PAGE_SUMMARY</b> (packages/.../index.ts)</a>
|
|
282
|
+
</li>
|
|
277
283
|
<li>
|
|
278
284
|
<a href="#EUI_ECL_PAGINATION" title="packages/ecl/components/ecl-pagination/index.ts" ><b>EUI_ECL_PAGINATION</b> (packages/.../index.ts)</a>
|
|
279
285
|
</li>
|
|
@@ -331,6 +337,9 @@
|
|
|
331
337
|
<li>
|
|
332
338
|
<a href="#EUI_ECL_TEXT_INPUT" title="packages/ecl/components/ecl-text-input/index.ts" ><b>EUI_ECL_TEXT_INPUT</b> (packages/.../index.ts)</a>
|
|
333
339
|
</li>
|
|
340
|
+
<li>
|
|
341
|
+
<a href="#EUI_ECL_TEXT_MEDIA" title="packages/ecl/components/ecl-text-media/index.ts" ><b>EUI_ECL_TEXT_MEDIA</b> (packages/.../index.ts)</a>
|
|
342
|
+
</li>
|
|
334
343
|
<li>
|
|
335
344
|
<a href="#EUI_ECL_TIMELINE" title="packages/ecl/components/ecl-timeline/index.ts" ><b>EUI_ECL_TIMELINE</b> (packages/.../index.ts)</a>
|
|
336
345
|
</li>
|
|
@@ -663,6 +672,43 @@
|
|
|
663
672
|
</tr>
|
|
664
673
|
|
|
665
674
|
|
|
675
|
+
</tbody>
|
|
676
|
+
</table>
|
|
677
|
+
</section>
|
|
678
|
+
<h3>packages/ecl/components/ecl-animated-numbers/index.ts</h3>
|
|
679
|
+
<section data-compodoc="block-properties">
|
|
680
|
+
<h3></h3> <table class="table table-sm table-bordered">
|
|
681
|
+
<tbody>
|
|
682
|
+
<tr>
|
|
683
|
+
<td class="col-md-4">
|
|
684
|
+
<a name="EUI_ECL_ANIMATED_NUMBERS"></a>
|
|
685
|
+
<span class="name">
|
|
686
|
+
<span ><b>EUI_ECL_ANIMATED_NUMBERS</b></span>
|
|
687
|
+
<a href="#EUI_ECL_ANIMATED_NUMBERS"><span class="icon ion-ios-link"></span></a>
|
|
688
|
+
</span>
|
|
689
|
+
</td>
|
|
690
|
+
</tr>
|
|
691
|
+
<tr>
|
|
692
|
+
<td class="col-md-4">
|
|
693
|
+
<i>Type : </i> <code>unknown</code>
|
|
694
|
+
|
|
695
|
+
</td>
|
|
696
|
+
</tr>
|
|
697
|
+
<tr>
|
|
698
|
+
<td class="col-md-4">
|
|
699
|
+
<i>Default value : </i><code>[
|
|
700
|
+
EclAnimatedNumbersComponent,
|
|
701
|
+
EclAnimatedNumbersItemsDirective,
|
|
702
|
+
EclAnimatedNumbersSourcesListDirective,
|
|
703
|
+
EclAnimatedNumbersSourcesItemDirective,
|
|
704
|
+
EclAnimatedNumbersSourceDirective,
|
|
705
|
+
EclAnimatedNumbersItemComponent,
|
|
706
|
+
EclAnimatedNumbersIconDirective,
|
|
707
|
+
] as const</code>
|
|
708
|
+
</td>
|
|
709
|
+
</tr>
|
|
710
|
+
|
|
711
|
+
|
|
666
712
|
</tbody>
|
|
667
713
|
</table>
|
|
668
714
|
</section>
|
|
@@ -2067,6 +2113,37 @@
|
|
|
2067
2113
|
</tr>
|
|
2068
2114
|
|
|
2069
2115
|
|
|
2116
|
+
</tbody>
|
|
2117
|
+
</table>
|
|
2118
|
+
</section>
|
|
2119
|
+
<h3>packages/ecl/components/ecl-page-summary/index.ts</h3>
|
|
2120
|
+
<section data-compodoc="block-properties">
|
|
2121
|
+
<h3></h3> <table class="table table-sm table-bordered">
|
|
2122
|
+
<tbody>
|
|
2123
|
+
<tr>
|
|
2124
|
+
<td class="col-md-4">
|
|
2125
|
+
<a name="EUI_ECL_PAGE_SUMMARY"></a>
|
|
2126
|
+
<span class="name">
|
|
2127
|
+
<span ><b>EUI_ECL_PAGE_SUMMARY</b></span>
|
|
2128
|
+
<a href="#EUI_ECL_PAGE_SUMMARY"><span class="icon ion-ios-link"></span></a>
|
|
2129
|
+
</span>
|
|
2130
|
+
</td>
|
|
2131
|
+
</tr>
|
|
2132
|
+
<tr>
|
|
2133
|
+
<td class="col-md-4">
|
|
2134
|
+
<i>Type : </i> <code>unknown</code>
|
|
2135
|
+
|
|
2136
|
+
</td>
|
|
2137
|
+
</tr>
|
|
2138
|
+
<tr>
|
|
2139
|
+
<td class="col-md-4">
|
|
2140
|
+
<i>Default value : </i><code>[
|
|
2141
|
+
EclPageSummaryComponent,
|
|
2142
|
+
] as const</code>
|
|
2143
|
+
</td>
|
|
2144
|
+
</tr>
|
|
2145
|
+
|
|
2146
|
+
|
|
2070
2147
|
</tbody>
|
|
2071
2148
|
</table>
|
|
2072
2149
|
</section>
|
|
@@ -2158,6 +2235,7 @@
|
|
|
2158
2235
|
<i>Default value : </i><code>[
|
|
2159
2236
|
EclQuizComponent,
|
|
2160
2237
|
EclQuizCardComponent,
|
|
2238
|
+
EclQuizListDirective,
|
|
2161
2239
|
] as const</code>
|
|
2162
2240
|
</td>
|
|
2163
2241
|
</tr>
|
|
@@ -2721,6 +2799,43 @@
|
|
|
2721
2799
|
</tr>
|
|
2722
2800
|
|
|
2723
2801
|
|
|
2802
|
+
</tbody>
|
|
2803
|
+
</table>
|
|
2804
|
+
</section>
|
|
2805
|
+
<h3>packages/ecl/components/ecl-text-media/index.ts</h3>
|
|
2806
|
+
<section data-compodoc="block-properties">
|
|
2807
|
+
<h3></h3> <table class="table table-sm table-bordered">
|
|
2808
|
+
<tbody>
|
|
2809
|
+
<tr>
|
|
2810
|
+
<td class="col-md-4">
|
|
2811
|
+
<a name="EUI_ECL_TEXT_MEDIA"></a>
|
|
2812
|
+
<span class="name">
|
|
2813
|
+
<span ><b>EUI_ECL_TEXT_MEDIA</b></span>
|
|
2814
|
+
<a href="#EUI_ECL_TEXT_MEDIA"><span class="icon ion-ios-link"></span></a>
|
|
2815
|
+
</span>
|
|
2816
|
+
</td>
|
|
2817
|
+
</tr>
|
|
2818
|
+
<tr>
|
|
2819
|
+
<td class="col-md-4">
|
|
2820
|
+
<i>Type : </i> <code>unknown</code>
|
|
2821
|
+
|
|
2822
|
+
</td>
|
|
2823
|
+
</tr>
|
|
2824
|
+
<tr>
|
|
2825
|
+
<td class="col-md-4">
|
|
2826
|
+
<i>Default value : </i><code>[
|
|
2827
|
+
EclTextMediaComponent,
|
|
2828
|
+
EclTextMediaMicroTitleDirective,
|
|
2829
|
+
EclTextMediaTitleDirective,
|
|
2830
|
+
EclTextMediaDescriptionDirective,
|
|
2831
|
+
EclTextMediaLinkDirective,
|
|
2832
|
+
EclTextMediaMediaAnchorDirective,
|
|
2833
|
+
EclTextMediaContainerDirective,
|
|
2834
|
+
] as const</code>
|
|
2835
|
+
</td>
|
|
2836
|
+
</tr>
|
|
2837
|
+
|
|
2838
|
+
|
|
2724
2839
|
</tbody>
|
|
2725
2840
|
</table>
|
|
2726
2841
|
</section>
|
package/docs/overview.html
CHANGED
|
@@ -122,7 +122,7 @@
|
|
|
122
122
|
<div class="card text-center">
|
|
123
123
|
<div class="card-block">
|
|
124
124
|
<h4 class="card-title"><span class="icon ion-md-cog"></span></h4>
|
|
125
|
-
<p class="card-text">
|
|
125
|
+
<p class="card-text">123 Components</p>
|
|
126
126
|
</div>
|
|
127
127
|
</div>
|
|
128
128
|
</div>
|
|
@@ -130,7 +130,7 @@
|
|
|
130
130
|
<div class="card text-center">
|
|
131
131
|
<div class="card-block">
|
|
132
132
|
<h4 class="card-title"><span class="icon ion-md-code-working"></span></h4>
|
|
133
|
-
<p class="card-text">
|
|
133
|
+
<p class="card-text">193 Directives</p>
|
|
134
134
|
</div>
|
|
135
135
|
</div>
|
|
136
136
|
</div>
|
package/docs/properties.html
CHANGED
|
@@ -58,6 +58,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.17", ngImpo
|
|
|
58
58
|
*
|
|
59
59
|
* @property {string} cssClasses - Returns a string of CSS classes applied to the host element.
|
|
60
60
|
* The main class is `ecl-accordion`, which can be extended with additional classes.
|
|
61
|
+
*
|
|
61
62
|
*/
|
|
62
63
|
class EclAccordionDirective {
|
|
63
64
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eui-ecl-components-ecl-accordion.mjs","sources":["../../components/ecl-accordion/ecl-accordion-item-new.directive.ts","../../components/ecl-accordion/ecl-accordion-summary.component.ts","../../components/ecl-accordion/ecl-accordion-summary.component.html","../../components/ecl-accordion/ecl-accordion.directive.ts","../../components/ecl-accordion/events/ecl-accordion-toggle.event.ts","../../components/ecl-accordion/index.ts","../../components/ecl-accordion/eui-ecl-components-ecl-accordion.ts"],"sourcesContent":["import { Directive } from \"@angular/core\";\n\n@Directive({\n selector: 'details[eclAccordionItem]',\n host: {\n class: 'ecl-accordion__item',\n },\n})\nexport class EclAccordionItemDirective {}\n\n@Directive({\n selector: 'div[eclAccordionContent]',\n host: {\n class: 'ecl-accordion__content',\n },\n})\nexport class EclAccordionContentDirective {}","import {\n Component\n} from '@angular/core';\nimport { EUI_ECL_ICON } from '@eui/ecl/components/ecl-icon';\n\n/**\n * Represents an individual item within an ECL Accordion.\n */\n@Component({\n selector: 'summary[eclAccordionToggle]',\n templateUrl: './ecl-accordion-summary.component.html',\n imports: [...EUI_ECL_ICON],\n host: {\n class: 'ecl-accordion__toggle',\n },\n})\nexport class EclAccordionSummaryComponent {}\n","<ng-content></ng-content>\n<ecl-icon icon=\"plus\" size=\"s\" class=\"ecl-accordion__toggle-icon\" ariaHidden=\"true\">\n</ecl-icon>\n<ecl-icon icon=\"minus\" size=\"s\" class=\"ecl-accordion__toggle-icon\" ariaHidden=\"true\">\n</ecl-icon>","import {\n afterNextRender,\n ContentChildren,\n Directive,\n ElementRef,\n forwardRef,\n HostBinding,\n inject,\n QueryList,\n Renderer2\n} from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { Subject, takeUntil } from 'rxjs';\nimport { EclAccordionItemDirective } from './ecl-accordion-item-new.directive';\n\n/**\n * Accordion component that manages the expansion and collapsing state of accordion items.\n * Uses the `ECLBaseDirective` to apply appropriate CSS classes and manage the visual styling.\n *\n * @description\n * This is the main component for the accordion container, responsible for managing the expansion\n * of individual items within the accordion. It provides the functionality to group and organize content\n * in expandable sections.\n *\n * @property {string} cssClasses - Returns a string of CSS classes applied to the host element.\n * The main class is `ecl-accordion`, which can be extended with additional classes.\n */\n@Directive({\n selector: 'div[eclAccordion]',\n hostDirectives: [\n {\n directive: ECLBaseDirective,\n },\n ],\n})\nexport class EclAccordionDirective {\n baseDirective = inject(ECLBaseDirective);\n private renderer = inject(Renderer2);\n\n @ContentChildren(forwardRef(() => EclAccordionItemDirective), { read: ElementRef })\n items!: QueryList<ElementRef>;\n private destroy$: Subject<boolean> = new Subject<boolean>();\n\n /**\n * @description\n * Retrieves and returns the CSS classes for the component based on its current state.\n * Uses `baseDirective` to fetch the appropriate CSS classes.\n *\n * @returns {string} - A string of CSS class names.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [this.baseDirective.getCssClasses('ecl-accordion')].join(' ').trim();\n }\n\n constructor() {\n afterNextRender(() => {\n this.setFirstAndLastClasses();\n this.items.changes\n .pipe(takeUntil(this.destroy$))\n .subscribe(() => this.setFirstAndLastClasses());\n });\n }\n\n ngOnDestroy(): void {\n this.destroy$.next(true);\n this.destroy$.unsubscribe();\n }\n\n private setFirstAndLastClasses(): void {\n const elements = this.items.toArray();\n\n if (elements.length === 0) return;\n\n elements.forEach((el) => {\n this.renderer.removeClass(el.nativeElement, 'is-first');\n this.renderer.removeClass(el.nativeElement, 'is-last');\n });\n\n this.renderer.addClass(elements[0].nativeElement, 'is-first');\n this.renderer.addClass(elements[elements.length - 1].nativeElement, 'is-last');\n }\n}\n","import { EclBaseEvent } from '@eui/ecl/core';\n\nexport class EclAccordionToggleEvent extends EclBaseEvent {\n\tconstructor(public isExpanded: boolean) {\n\t\tsuper();\n\t}\n}","\nimport { EclAccordionContentDirective, EclAccordionItemDirective } from './ecl-accordion-item-new.directive';\nimport { EclAccordionSummaryComponent } from './ecl-accordion-summary.component';\nimport { EclAccordionDirective } from './ecl-accordion.directive';\n\nexport * from './ecl-accordion-item-new.directive';\nexport * from './ecl-accordion-summary.component';\nexport * from './ecl-accordion.directive';\nexport * from './events/ecl-accordion-toggle.event';\n\nexport const EUI_ECL_ACCORDION = [\n EclAccordionContentDirective,\n EclAccordionItemDirective,\n EclAccordionSummaryComponent,\n EclAccordionDirective,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":";;;;;;;;MAQa,yBAAyB,CAAA;+GAAzB,yBAAyB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAzB,yBAAyB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,2BAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,qBAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAzB,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBANrC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,2BAA2B;AACrC,oBAAA,IAAI,EAAE;AACJ,wBAAA,KAAK,EAAE,qBAAqB;AAC7B,qBAAA;AACF,iBAAA;;MASY,4BAA4B,CAAA;+GAA5B,4BAA4B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAA5B,4BAA4B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,0BAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,wBAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAA5B,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBANxC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,0BAA0B;AACpC,oBAAA,IAAI,EAAE;AACJ,wBAAA,KAAK,EAAE,wBAAwB;AAChC,qBAAA;AACF,iBAAA;;;ACVD;;AAEG;MASU,4BAA4B,CAAA;+GAA5B,4BAA4B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA5B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,4BAA4B,0IChBzC,kPAIW,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,MAAA,EAAA,MAAA,EAAA,OAAA,EAAA,WAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,OAAA,EAAA,YAAA,EAAA,WAAA,EAAA,kBAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;4FDYE,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBARxC,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,6BAA6B,EAAA,OAAA,EAE9B,CAAC,GAAG,YAAY,CAAC,EAAA,IAAA,EACpB;AACF,wBAAA,KAAK,EAAE,uBAAuB;AACjC,qBAAA,EAAA,QAAA,EAAA,kPAAA,EAAA;;;AECL
|
|
1
|
+
{"version":3,"file":"eui-ecl-components-ecl-accordion.mjs","sources":["../../components/ecl-accordion/ecl-accordion-item-new.directive.ts","../../components/ecl-accordion/ecl-accordion-summary.component.ts","../../components/ecl-accordion/ecl-accordion-summary.component.html","../../components/ecl-accordion/ecl-accordion.directive.ts","../../components/ecl-accordion/events/ecl-accordion-toggle.event.ts","../../components/ecl-accordion/index.ts","../../components/ecl-accordion/eui-ecl-components-ecl-accordion.ts"],"sourcesContent":["import { Directive } from \"@angular/core\";\n\n@Directive({\n selector: 'details[eclAccordionItem]',\n host: {\n class: 'ecl-accordion__item',\n },\n})\nexport class EclAccordionItemDirective {}\n\n@Directive({\n selector: 'div[eclAccordionContent]',\n host: {\n class: 'ecl-accordion__content',\n },\n})\nexport class EclAccordionContentDirective {}","import {\n Component\n} from '@angular/core';\nimport { EUI_ECL_ICON } from '@eui/ecl/components/ecl-icon';\n\n/**\n * Represents an individual item within an ECL Accordion.\n */\n@Component({\n selector: 'summary[eclAccordionToggle]',\n templateUrl: './ecl-accordion-summary.component.html',\n imports: [...EUI_ECL_ICON],\n host: {\n class: 'ecl-accordion__toggle',\n },\n})\nexport class EclAccordionSummaryComponent {}\n","<ng-content></ng-content>\n<ecl-icon icon=\"plus\" size=\"s\" class=\"ecl-accordion__toggle-icon\" ariaHidden=\"true\">\n</ecl-icon>\n<ecl-icon icon=\"minus\" size=\"s\" class=\"ecl-accordion__toggle-icon\" ariaHidden=\"true\">\n</ecl-icon>","import {\n afterNextRender,\n ContentChildren,\n Directive,\n ElementRef,\n forwardRef,\n HostBinding,\n inject,\n QueryList,\n Renderer2\n} from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { Subject, takeUntil } from 'rxjs';\nimport { EclAccordionItemDirective } from './ecl-accordion-item-new.directive';\n\n/**\n * Accordion component that manages the expansion and collapsing state of accordion items.\n * Uses the `ECLBaseDirective` to apply appropriate CSS classes and manage the visual styling.\n *\n * @description\n * This is the main component for the accordion container, responsible for managing the expansion\n * of individual items within the accordion. It provides the functionality to group and organize content\n * in expandable sections.\n *\n * @property {string} cssClasses - Returns a string of CSS classes applied to the host element.\n * The main class is `ecl-accordion`, which can be extended with additional classes.\n *\n */\n@Directive({\n selector: 'div[eclAccordion]',\n hostDirectives: [\n {\n directive: ECLBaseDirective,\n },\n ],\n})\nexport class EclAccordionDirective {\n baseDirective = inject(ECLBaseDirective);\n private renderer = inject(Renderer2);\n\n @ContentChildren(forwardRef(() => EclAccordionItemDirective), { read: ElementRef })\n items!: QueryList<ElementRef>;\n private destroy$: Subject<boolean> = new Subject<boolean>();\n\n /**\n * @description\n * Retrieves and returns the CSS classes for the component based on its current state.\n * Uses `baseDirective` to fetch the appropriate CSS classes.\n *\n * @returns {string} - A string of CSS class names.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [this.baseDirective.getCssClasses('ecl-accordion')].join(' ').trim();\n }\n\n constructor() {\n afterNextRender(() => {\n this.setFirstAndLastClasses();\n this.items.changes\n .pipe(takeUntil(this.destroy$))\n .subscribe(() => this.setFirstAndLastClasses());\n });\n }\n\n ngOnDestroy(): void {\n this.destroy$.next(true);\n this.destroy$.unsubscribe();\n }\n\n private setFirstAndLastClasses(): void {\n const elements = this.items.toArray();\n\n if (elements.length === 0) return;\n\n elements.forEach((el) => {\n this.renderer.removeClass(el.nativeElement, 'is-first');\n this.renderer.removeClass(el.nativeElement, 'is-last');\n });\n\n this.renderer.addClass(elements[0].nativeElement, 'is-first');\n this.renderer.addClass(elements[elements.length - 1].nativeElement, 'is-last');\n }\n}\n","import { EclBaseEvent } from '@eui/ecl/core';\n\nexport class EclAccordionToggleEvent extends EclBaseEvent {\n\tconstructor(public isExpanded: boolean) {\n\t\tsuper();\n\t}\n}","\nimport { EclAccordionContentDirective, EclAccordionItemDirective } from './ecl-accordion-item-new.directive';\nimport { EclAccordionSummaryComponent } from './ecl-accordion-summary.component';\nimport { EclAccordionDirective } from './ecl-accordion.directive';\n\nexport * from './ecl-accordion-item-new.directive';\nexport * from './ecl-accordion-summary.component';\nexport * from './ecl-accordion.directive';\nexport * from './events/ecl-accordion-toggle.event';\n\nexport const EUI_ECL_ACCORDION = [\n EclAccordionContentDirective,\n EclAccordionItemDirective,\n EclAccordionSummaryComponent,\n EclAccordionDirective,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":"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"}
|
|
@@ -0,0 +1,359 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { input, booleanAttribute, ChangeDetectionStrategy, Component, Directive, computed, viewChild, inject, ElementRef, NgZone, afterNextRender, effect } from '@angular/core';
|
|
3
|
+
import { ECLBaseDirective } from '@eui/ecl/core';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Container component for the ECL Animated Numbers pattern.
|
|
7
|
+
* Wraps animated number items and an optional sources footer.
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* ```html
|
|
11
|
+
* <div eclAnimatedNumbers [sourcesLabel]="'Sources:'">
|
|
12
|
+
* <div eclAnimatedNumbersItems>
|
|
13
|
+
* <div eclAnimatedNumbersItem [eclValue]="'213'" [category]="'Revenue'">
|
|
14
|
+
* <ecl-icon eclAnimatedNumbersIcon icon="users" iconSet="phosphor"></ecl-icon>
|
|
15
|
+
* </div>
|
|
16
|
+
* </div>
|
|
17
|
+
* <ul eclAnimatedNumbersSourcesList>
|
|
18
|
+
* <li eclAnimatedNumbersSourcesItem>
|
|
19
|
+
* <a eclLink eclAnimatedNumbersSource href="/example">Eurostat</a>
|
|
20
|
+
* </li>
|
|
21
|
+
* </ul>
|
|
22
|
+
* </div>
|
|
23
|
+
* ```
|
|
24
|
+
*/
|
|
25
|
+
class EclAnimatedNumbersComponent extends ECLBaseDirective {
|
|
26
|
+
constructor() {
|
|
27
|
+
super(...arguments);
|
|
28
|
+
/** Applies a dark background to the component. */
|
|
29
|
+
this.hasDarkBackground = input(false, { ...(ngDevMode ? { debugName: "hasDarkBackground" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
30
|
+
/** Adds a left border to the animated number items. */
|
|
31
|
+
this.hasLeftBorder = input(false, { ...(ngDevMode ? { debugName: "hasLeftBorder" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
32
|
+
/** Applies a colour to the counter values. */
|
|
33
|
+
this.hasContentColor = input(false, { ...(ngDevMode ? { debugName: "hasContentColor" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
34
|
+
/** Label displayed before the sources list. */
|
|
35
|
+
this.sourcesLabel = input('Sources:', ...(ngDevMode ? [{ debugName: "sourcesLabel" }] : /* istanbul ignore next */ []));
|
|
36
|
+
}
|
|
37
|
+
get cssClasses() {
|
|
38
|
+
return [super.getCssClasses('ecl-animated-numbers'),
|
|
39
|
+
this.hasDarkBackground() ? 'ecl-animated-numbers--with-background' : '',
|
|
40
|
+
this.hasLeftBorder() ? 'ecl-animated-numbers--border' : '',
|
|
41
|
+
this.hasContentColor() && !this.hasDarkBackground() ? 'ecl-animated-numbers--counter-color' : '',
|
|
42
|
+
].filter(Boolean).join(' ');
|
|
43
|
+
}
|
|
44
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.17", ngImport: i0, type: EclAnimatedNumbersComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
45
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.17", type: EclAnimatedNumbersComponent, isStandalone: true, selector: "div[eclAnimatedNumbers]", inputs: { hasDarkBackground: { classPropertyName: "hasDarkBackground", publicName: "hasDarkBackground", isSignal: true, isRequired: false, transformFunction: null }, hasLeftBorder: { classPropertyName: "hasLeftBorder", publicName: "hasLeftBorder", isSignal: true, isRequired: false, transformFunction: null }, hasContentColor: { classPropertyName: "hasContentColor", publicName: "hasContentColor", isSignal: true, isRequired: false, transformFunction: null }, sourcesLabel: { classPropertyName: "sourcesLabel", publicName: "sourcesLabel", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "cssClasses" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"ecl-container\">\n <ng-content select=\"[eclAnimatedNumbersItems]\"></ng-content>\n <div class=\"ecl-animated-numbers__sources\">\n <span class=\"ecl-animated-numbers__sources-label\">{{ sourcesLabel() }}</span>\n <ng-content select=\"[eclAnimatedNumbersSourcesList]\"></ng-content>\n </div>\n</div>", changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
46
|
+
}
|
|
47
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.17", ngImport: i0, type: EclAnimatedNumbersComponent, decorators: [{
|
|
48
|
+
type: Component,
|
|
49
|
+
args: [{ selector: 'div[eclAnimatedNumbers]', host: {
|
|
50
|
+
'[class]': 'cssClasses',
|
|
51
|
+
}, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"ecl-container\">\n <ng-content select=\"[eclAnimatedNumbersItems]\"></ng-content>\n <div class=\"ecl-animated-numbers__sources\">\n <span class=\"ecl-animated-numbers__sources-label\">{{ sourcesLabel() }}</span>\n <ng-content select=\"[eclAnimatedNumbersSourcesList]\"></ng-content>\n </div>\n</div>" }]
|
|
52
|
+
}], propDecorators: { hasDarkBackground: [{ type: i0.Input, args: [{ isSignal: true, alias: "hasDarkBackground", required: false }] }], hasLeftBorder: [{ type: i0.Input, args: [{ isSignal: true, alias: "hasLeftBorder", required: false }] }], hasContentColor: [{ type: i0.Input, args: [{ isSignal: true, alias: "hasContentColor", required: false }] }], sourcesLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "sourcesLabel", required: false }] }] } });
|
|
53
|
+
|
|
54
|
+
/**
|
|
55
|
+
* Wraps the grid of animated number items.
|
|
56
|
+
* Applies the `ecl-animated-numbers__items` layout class.
|
|
57
|
+
*
|
|
58
|
+
* @example
|
|
59
|
+
* ```html
|
|
60
|
+
* <div eclAnimatedNumbersItems>
|
|
61
|
+
* <div eclAnimatedNumbersItem ...></div>
|
|
62
|
+
* </div>
|
|
63
|
+
* ```
|
|
64
|
+
*/
|
|
65
|
+
class EclAnimatedNumbersItemsDirective {
|
|
66
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.17", ngImport: i0, type: EclAnimatedNumbersItemsDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
67
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.17", type: EclAnimatedNumbersItemsDirective, isStandalone: true, selector: "[eclAnimatedNumbersItems]", host: { classAttribute: "ecl-animated-numbers__items" }, ngImport: i0 }); }
|
|
68
|
+
}
|
|
69
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.17", ngImport: i0, type: EclAnimatedNumbersItemsDirective, decorators: [{
|
|
70
|
+
type: Directive,
|
|
71
|
+
args: [{
|
|
72
|
+
selector: '[eclAnimatedNumbersItems]',
|
|
73
|
+
host: {
|
|
74
|
+
class: 'ecl-animated-numbers__items',
|
|
75
|
+
},
|
|
76
|
+
}]
|
|
77
|
+
}] });
|
|
78
|
+
/**
|
|
79
|
+
* Wraps the list of source links.
|
|
80
|
+
* Applies the `ecl-animated-numbers__sources-list` class.
|
|
81
|
+
*
|
|
82
|
+
* @example
|
|
83
|
+
* ```html
|
|
84
|
+
* <ul eclAnimatedNumbersSourcesList>
|
|
85
|
+
* <li eclAnimatedNumbersSourcesItem>...</li>
|
|
86
|
+
* </ul>
|
|
87
|
+
* ```
|
|
88
|
+
*/
|
|
89
|
+
class EclAnimatedNumbersSourcesListDirective {
|
|
90
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.17", ngImport: i0, type: EclAnimatedNumbersSourcesListDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
91
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.17", type: EclAnimatedNumbersSourcesListDirective, isStandalone: true, selector: "[eclAnimatedNumbersSourcesList]", host: { classAttribute: "ecl-animated-numbers__sources-list" }, ngImport: i0 }); }
|
|
92
|
+
}
|
|
93
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.17", ngImport: i0, type: EclAnimatedNumbersSourcesListDirective, decorators: [{
|
|
94
|
+
type: Directive,
|
|
95
|
+
args: [{
|
|
96
|
+
selector: '[eclAnimatedNumbersSourcesList]',
|
|
97
|
+
host: {
|
|
98
|
+
class: 'ecl-animated-numbers__sources-list',
|
|
99
|
+
},
|
|
100
|
+
}]
|
|
101
|
+
}] });
|
|
102
|
+
/**
|
|
103
|
+
* Marks a list item as a source entry.
|
|
104
|
+
* Applies the `ecl-animated-numbers__sources-item` class.
|
|
105
|
+
*
|
|
106
|
+
* @example
|
|
107
|
+
* ```html
|
|
108
|
+
* <li eclAnimatedNumbersSourcesItem>
|
|
109
|
+
* <a eclLink eclAnimatedNumbersSource href="/example">Eurostat</a>
|
|
110
|
+
* </li>
|
|
111
|
+
* ```
|
|
112
|
+
*/
|
|
113
|
+
class EclAnimatedNumbersSourcesItemDirective {
|
|
114
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.17", ngImport: i0, type: EclAnimatedNumbersSourcesItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
115
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.17", type: EclAnimatedNumbersSourcesItemDirective, isStandalone: true, selector: "[eclAnimatedNumbersSourcesItem]", host: { classAttribute: "ecl-animated-numbers__sources-item" }, ngImport: i0 }); }
|
|
116
|
+
}
|
|
117
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.17", ngImport: i0, type: EclAnimatedNumbersSourcesItemDirective, decorators: [{
|
|
118
|
+
type: Directive,
|
|
119
|
+
args: [{
|
|
120
|
+
selector: '[eclAnimatedNumbersSourcesItem]',
|
|
121
|
+
host: {
|
|
122
|
+
class: 'ecl-animated-numbers__sources-item',
|
|
123
|
+
},
|
|
124
|
+
}]
|
|
125
|
+
}] });
|
|
126
|
+
/**
|
|
127
|
+
* Marks a link as a source reference within the animated numbers component.
|
|
128
|
+
* Applies the `ecl-animated-numbers__source` styling class.
|
|
129
|
+
*
|
|
130
|
+
* @example
|
|
131
|
+
* ```html
|
|
132
|
+
* <a eclLink eclAnimatedNumbersSource href="/example">Eurostat</a>
|
|
133
|
+
* ```
|
|
134
|
+
*/
|
|
135
|
+
class EclAnimatedNumbersSourceDirective {
|
|
136
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.17", ngImport: i0, type: EclAnimatedNumbersSourceDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
137
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.17", type: EclAnimatedNumbersSourceDirective, isStandalone: true, selector: "[eclAnimatedNumbersSource]", host: { classAttribute: "ecl-animated-numbers__source" }, ngImport: i0 }); }
|
|
138
|
+
}
|
|
139
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.17", ngImport: i0, type: EclAnimatedNumbersSourceDirective, decorators: [{
|
|
140
|
+
type: Directive,
|
|
141
|
+
args: [{
|
|
142
|
+
selector: '[eclAnimatedNumbersSource]',
|
|
143
|
+
host: {
|
|
144
|
+
class: 'ecl-animated-numbers__source',
|
|
145
|
+
},
|
|
146
|
+
}]
|
|
147
|
+
}] });
|
|
148
|
+
|
|
149
|
+
/**
|
|
150
|
+
* Represents an individual animated number item.
|
|
151
|
+
* Displays a numeric value that animates from 0 to the target when scrolled into view.
|
|
152
|
+
* Uses an IntersectionObserver to trigger animation on viewport visibility and
|
|
153
|
+
* requestAnimationFrame for smooth count-up with cubic ease-out.
|
|
154
|
+
*
|
|
155
|
+
* @example
|
|
156
|
+
* ```html
|
|
157
|
+
* <div eclAnimatedNumbersItem
|
|
158
|
+
* [eclValue]="'1250'"
|
|
159
|
+
* [category]="'Revenue'"
|
|
160
|
+
* [prefix]="'€'"
|
|
161
|
+
* [suffix]="'billions'"
|
|
162
|
+
* [description]="'Annual revenue growth'">
|
|
163
|
+
* <ecl-icon eclAnimatedNumbersIcon icon="trend-up" iconSet="phosphor"></ecl-icon>
|
|
164
|
+
* </div>
|
|
165
|
+
* ```
|
|
166
|
+
*/
|
|
167
|
+
class EclAnimatedNumbersItemComponent extends ECLBaseDirective {
|
|
168
|
+
constructor() {
|
|
169
|
+
super();
|
|
170
|
+
/** Category label displayed in the item header. */
|
|
171
|
+
this.category = input(...(ngDevMode ? [undefined, { debugName: "category" }] : /* istanbul ignore next */ []));
|
|
172
|
+
/** Descriptive text displayed below the number. */
|
|
173
|
+
this.description = input(...(ngDevMode ? [undefined, { debugName: "description" }] : /* istanbul ignore next */ []));
|
|
174
|
+
/** The target numeric value to animate to. Accepts strings with non-numeric characters (they are stripped). */
|
|
175
|
+
this.eclValue = input(...(ngDevMode ? [undefined, { debugName: "eclValue" }] : /* istanbul ignore next */ []));
|
|
176
|
+
/** Text displayed after the animated number (e.g. '€', 'billions'). */
|
|
177
|
+
this.suffix = input(...(ngDevMode ? [undefined, { debugName: "suffix" }] : /* istanbul ignore next */ []));
|
|
178
|
+
/** Text displayed before the animated number (e.g. '€', 'billion'). */
|
|
179
|
+
this.prefix = input(...(ngDevMode ? [undefined, { debugName: "prefix" }] : /* istanbul ignore next */ []));
|
|
180
|
+
this.animationDuration = 1000;
|
|
181
|
+
this.animationStyle = 'linear';
|
|
182
|
+
this.animateOnVisible = true;
|
|
183
|
+
/** Parsed numeric target from the eclValue input. */
|
|
184
|
+
this.targetValue = computed(() => {
|
|
185
|
+
const raw = this.eclValue();
|
|
186
|
+
if (!raw)
|
|
187
|
+
return 0;
|
|
188
|
+
const cleaned = raw.replace(/[^\d.-]/g, '');
|
|
189
|
+
return cleaned ? parseFloat(cleaned) : 0;
|
|
190
|
+
}, ...(ngDevMode ? [{ debugName: "targetValue" }] : /* istanbul ignore next */ []));
|
|
191
|
+
this.valueEl = viewChild('valueEl', ...(ngDevMode ? [{ debugName: "valueEl" }] : /* istanbul ignore next */ []));
|
|
192
|
+
this.elementRef = inject(ElementRef);
|
|
193
|
+
this.ngZone = inject(NgZone);
|
|
194
|
+
this.animationId = null;
|
|
195
|
+
this.observer = null;
|
|
196
|
+
this.hasBeenVisible = false;
|
|
197
|
+
this.isRendered = false;
|
|
198
|
+
afterNextRender(() => {
|
|
199
|
+
this.isRendered = true;
|
|
200
|
+
// Set initial display to 0
|
|
201
|
+
const el = this.valueEl()?.nativeElement;
|
|
202
|
+
if (el) {
|
|
203
|
+
el.textContent = '0';
|
|
204
|
+
}
|
|
205
|
+
if (this.animateOnVisible) {
|
|
206
|
+
this.setupIntersectionObserver();
|
|
207
|
+
}
|
|
208
|
+
else {
|
|
209
|
+
this.startAnimation(this.targetValue());
|
|
210
|
+
}
|
|
211
|
+
});
|
|
212
|
+
// React to eclValue changes — only re-animate if already visible and rendered
|
|
213
|
+
effect(() => {
|
|
214
|
+
const target = this.targetValue();
|
|
215
|
+
if (this.hasBeenVisible && this.isRendered) {
|
|
216
|
+
queueMicrotask(() => this.startAnimation(target));
|
|
217
|
+
}
|
|
218
|
+
});
|
|
219
|
+
}
|
|
220
|
+
ngOnDestroy() {
|
|
221
|
+
this.cleanup();
|
|
222
|
+
}
|
|
223
|
+
setupIntersectionObserver() {
|
|
224
|
+
this.observer = new IntersectionObserver((entries) => {
|
|
225
|
+
const entry = entries[0];
|
|
226
|
+
if (entry.isIntersecting) {
|
|
227
|
+
this.hasBeenVisible = true;
|
|
228
|
+
this.startAnimation(this.targetValue());
|
|
229
|
+
}
|
|
230
|
+
else if (this.hasBeenVisible) {
|
|
231
|
+
// Reset to 0 when scrolled out of view
|
|
232
|
+
if (this.animationId !== null) {
|
|
233
|
+
cancelAnimationFrame(this.animationId);
|
|
234
|
+
this.animationId = null;
|
|
235
|
+
}
|
|
236
|
+
const el = this.valueEl()?.nativeElement;
|
|
237
|
+
if (el) {
|
|
238
|
+
el.textContent = '0';
|
|
239
|
+
el.style.width = '';
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
}, { threshold: 0.1 });
|
|
243
|
+
this.observer.observe(this.elementRef.nativeElement);
|
|
244
|
+
}
|
|
245
|
+
startAnimation(to) {
|
|
246
|
+
if (this.animationId !== null) {
|
|
247
|
+
cancelAnimationFrame(this.animationId);
|
|
248
|
+
this.animationId = null;
|
|
249
|
+
}
|
|
250
|
+
const valueElement = this.valueEl()?.nativeElement;
|
|
251
|
+
if (!valueElement)
|
|
252
|
+
return;
|
|
253
|
+
// Lock width to prevent layout shift during animation
|
|
254
|
+
valueElement.textContent = to.toString();
|
|
255
|
+
const finalWidth = valueElement.offsetWidth;
|
|
256
|
+
valueElement.textContent = '0';
|
|
257
|
+
valueElement.style.width = `${finalWidth}px`;
|
|
258
|
+
this.ngZone.runOutsideAngular(() => {
|
|
259
|
+
const duration = this.animationDuration;
|
|
260
|
+
let startTime = null;
|
|
261
|
+
let lastUpdateTime = 0;
|
|
262
|
+
let lastValue = null;
|
|
263
|
+
const tick = (now) => {
|
|
264
|
+
if (startTime === null) {
|
|
265
|
+
startTime = now;
|
|
266
|
+
}
|
|
267
|
+
const elapsed = now - startTime;
|
|
268
|
+
const progress = Math.min(elapsed / duration, 1);
|
|
269
|
+
// Throttle updates (~50ms)
|
|
270
|
+
if (now - lastUpdateTime < 50 && progress < 1) {
|
|
271
|
+
this.animationId = requestAnimationFrame(tick);
|
|
272
|
+
return;
|
|
273
|
+
}
|
|
274
|
+
lastUpdateTime = now;
|
|
275
|
+
let value;
|
|
276
|
+
if (this.animationStyle === 'random') {
|
|
277
|
+
value = Math.floor(Math.random() * (to + 1));
|
|
278
|
+
}
|
|
279
|
+
else {
|
|
280
|
+
// Cubic ease-out
|
|
281
|
+
const eased = 1 - Math.pow(1 - progress, 3);
|
|
282
|
+
value = eased * to;
|
|
283
|
+
}
|
|
284
|
+
const rounded = Math.floor(value);
|
|
285
|
+
if (rounded !== lastValue) {
|
|
286
|
+
valueElement.textContent = rounded.toString();
|
|
287
|
+
lastValue = rounded;
|
|
288
|
+
}
|
|
289
|
+
if (progress < 1) {
|
|
290
|
+
this.animationId = requestAnimationFrame(tick);
|
|
291
|
+
}
|
|
292
|
+
else {
|
|
293
|
+
valueElement.textContent = to.toString();
|
|
294
|
+
valueElement.style.width = '';
|
|
295
|
+
this.animationId = null;
|
|
296
|
+
}
|
|
297
|
+
};
|
|
298
|
+
this.animationId = requestAnimationFrame(tick);
|
|
299
|
+
});
|
|
300
|
+
}
|
|
301
|
+
cleanup() {
|
|
302
|
+
if (this.animationId !== null) {
|
|
303
|
+
cancelAnimationFrame(this.animationId);
|
|
304
|
+
this.animationId = null;
|
|
305
|
+
}
|
|
306
|
+
if (this.observer) {
|
|
307
|
+
this.observer.disconnect();
|
|
308
|
+
this.observer = null;
|
|
309
|
+
}
|
|
310
|
+
}
|
|
311
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.17", ngImport: i0, type: EclAnimatedNumbersItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
312
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.2.17", type: EclAnimatedNumbersItemComponent, isStandalone: true, selector: "[eclAnimatedNumbersItem]", inputs: { category: { classPropertyName: "category", publicName: "category", isSignal: true, isRequired: false, transformFunction: null }, description: { classPropertyName: "description", publicName: "description", isSignal: true, isRequired: false, transformFunction: null }, eclValue: { classPropertyName: "eclValue", publicName: "eclValue", isSignal: true, isRequired: false, transformFunction: null }, suffix: { classPropertyName: "suffix", publicName: "suffix", isSignal: true, isRequired: false, transformFunction: null }, prefix: { classPropertyName: "prefix", publicName: "prefix", isSignal: true, isRequired: false, transformFunction: null } }, host: { classAttribute: "ecl-animated-number" }, viewQueries: [{ propertyName: "valueEl", first: true, predicate: ["valueEl"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"ecl-animated-number__header\">\n <div class=\"ecl-animated-number__category\">{{ category() }}</div>\n <ng-content select=\"[eclAnimatedNumbersIcon]\"></ng-content>\n</div>\n<div class=\"ecl-animated-number__content\">\n <div class=\"ecl-animated-number__number\">\n <span class=\"ecl-animated-number__prefix\">{{ prefix() }}</span>\n <div class=\"ecl-animated-number__value\" #valueEl></div>\n <div class=\"ecl-animated-number__suffix\">{{ suffix() }}</div>\n </div>\n</div>\n<div class=\"ecl-animated-number__description\">{{ description() }}</div>" }); }
|
|
313
|
+
}
|
|
314
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.17", ngImport: i0, type: EclAnimatedNumbersItemComponent, decorators: [{
|
|
315
|
+
type: Component,
|
|
316
|
+
args: [{ selector: '[eclAnimatedNumbersItem]', host: {
|
|
317
|
+
'class': 'ecl-animated-number',
|
|
318
|
+
}, template: "<div class=\"ecl-animated-number__header\">\n <div class=\"ecl-animated-number__category\">{{ category() }}</div>\n <ng-content select=\"[eclAnimatedNumbersIcon]\"></ng-content>\n</div>\n<div class=\"ecl-animated-number__content\">\n <div class=\"ecl-animated-number__number\">\n <span class=\"ecl-animated-number__prefix\">{{ prefix() }}</span>\n <div class=\"ecl-animated-number__value\" #valueEl></div>\n <div class=\"ecl-animated-number__suffix\">{{ suffix() }}</div>\n </div>\n</div>\n<div class=\"ecl-animated-number__description\">{{ description() }}</div>" }]
|
|
319
|
+
}], ctorParameters: () => [], propDecorators: { category: [{ type: i0.Input, args: [{ isSignal: true, alias: "category", required: false }] }], description: [{ type: i0.Input, args: [{ isSignal: true, alias: "description", required: false }] }], eclValue: [{ type: i0.Input, args: [{ isSignal: true, alias: "eclValue", required: false }] }], suffix: [{ type: i0.Input, args: [{ isSignal: true, alias: "suffix", required: false }] }], prefix: [{ type: i0.Input, args: [{ isSignal: true, alias: "prefix", required: false }] }], valueEl: [{ type: i0.ViewChild, args: ['valueEl', { isSignal: true }] }] } });
|
|
320
|
+
|
|
321
|
+
/**
|
|
322
|
+
* Marks an icon element as the animated number item's icon.
|
|
323
|
+
* Applies the `ecl-animated-number__icon` positioning class.
|
|
324
|
+
*
|
|
325
|
+
* @example
|
|
326
|
+
* ```html
|
|
327
|
+
* <ecl-icon eclAnimatedNumbersIcon icon="users" iconSet="phosphor"></ecl-icon>
|
|
328
|
+
* ```
|
|
329
|
+
*/
|
|
330
|
+
class EclAnimatedNumbersIconDirective {
|
|
331
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.17", ngImport: i0, type: EclAnimatedNumbersIconDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
332
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.17", type: EclAnimatedNumbersIconDirective, isStandalone: true, selector: "[eclAnimatedNumbersIcon]", host: { classAttribute: "ecl-animated-number__icon" }, ngImport: i0 }); }
|
|
333
|
+
}
|
|
334
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.17", ngImport: i0, type: EclAnimatedNumbersIconDirective, decorators: [{
|
|
335
|
+
type: Directive,
|
|
336
|
+
args: [{
|
|
337
|
+
selector: '[eclAnimatedNumbersIcon]',
|
|
338
|
+
host: {
|
|
339
|
+
'class': 'ecl-animated-number__icon',
|
|
340
|
+
},
|
|
341
|
+
}]
|
|
342
|
+
}] });
|
|
343
|
+
|
|
344
|
+
const EUI_ECL_ANIMATED_NUMBERS = [
|
|
345
|
+
EclAnimatedNumbersComponent,
|
|
346
|
+
EclAnimatedNumbersItemsDirective,
|
|
347
|
+
EclAnimatedNumbersSourcesListDirective,
|
|
348
|
+
EclAnimatedNumbersSourcesItemDirective,
|
|
349
|
+
EclAnimatedNumbersSourceDirective,
|
|
350
|
+
EclAnimatedNumbersItemComponent,
|
|
351
|
+
EclAnimatedNumbersIconDirective,
|
|
352
|
+
];
|
|
353
|
+
|
|
354
|
+
/**
|
|
355
|
+
* Generated bundle index. Do not edit.
|
|
356
|
+
*/
|
|
357
|
+
|
|
358
|
+
export { EUI_ECL_ANIMATED_NUMBERS, EclAnimatedNumbersComponent, EclAnimatedNumbersIconDirective, EclAnimatedNumbersItemComponent, EclAnimatedNumbersItemsDirective, EclAnimatedNumbersSourceDirective, EclAnimatedNumbersSourcesItemDirective, EclAnimatedNumbersSourcesListDirective };
|
|
359
|
+
//# sourceMappingURL=eui-ecl-components-ecl-animated-numbers.mjs.map
|