@eui/ecl 22.0.0-alpha.5 → 22.0.0-alpha.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/docs/changelog.html +45 -0
- package/docs/components/EclDescriptionListDefinitionComponent.html +6 -44
- package/docs/components/EclListIllustrationComponent.html +0 -171
- package/docs/components/EclListIllustrationItemComponent.html +77 -83
- package/docs/components/EclLoadingIndicatorComponent.html +4 -91
- package/docs/directives/EclDescriptionListDefinitionItemDirective.html +6 -47
- package/docs/directives/EclDescriptionListDefinitionListDirective.html +0 -116
- package/docs/directives/EclLabelDirective.html +0 -46
- package/docs/directives/EclLoadingIndicatorLabelDirective.html +0 -61
- package/docs/directives/EclLoadingIndicatorOverlayDirective.html +0 -45
- package/docs/directives/EclMediaContainerCaptionDirective.html +0 -39
- package/docs/directives/EclMediaContainerCreditDirective.html +0 -39
- package/docs/directives/EclMediaContainerIframeDirective.html +13 -19
- package/docs/directives/EclMediaContainerItemAudioDescriptionDirective.html +0 -39
- package/docs/directives/EclMediaContainerItemDirective.html +0 -39
- package/docs/directives/EclMediaContainerPictureDirective.html +0 -39
- package/docs/js/search/search_index.js +2 -2
- package/docs/json/EclMediaContainerIframeDirective.md +0 -1
- package/docs/json/documentation.json +182 -468
- package/docs/llms.txt +6 -9
- package/docs/properties.html +1 -1
- package/fesm2022/eui-ecl-components-ecl-label.mjs +6 -6
- package/fesm2022/eui-ecl-components-ecl-label.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-list-illustration.mjs +19 -30
- package/fesm2022/eui-ecl-components-ecl-list-illustration.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-list.mjs +44 -41
- package/fesm2022/eui-ecl-components-ecl-list.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-loading-indicator.mjs +17 -20
- package/fesm2022/eui-ecl-components-ecl-loading-indicator.mjs.map +1 -1
- package/fesm2022/eui-ecl-components-ecl-media-container.mjs +36 -33
- package/fesm2022/eui-ecl-components-ecl-media-container.mjs.map +1 -1
- package/package.json +1 -1
- package/types/eui-ecl-components-ecl-label.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-list-illustration.d.ts +3 -3
- package/types/eui-ecl-components-ecl-list-illustration.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-list.d.ts +9 -12
- package/types/eui-ecl-components-ecl-list.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-loading-indicator.d.ts.map +1 -1
- package/types/eui-ecl-components-ecl-media-container.d.ts +7 -2
- package/types/eui-ecl-components-ecl-media-container.d.ts.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eui-ecl-components-ecl-list.mjs","sources":["../../components/ecl-list/ecl-description-list-definition-item.directive.ts","../../components/ecl-list/ecl-description-list-definition/ecl-description-list-definition.component.ts","../../components/ecl-list/ecl-description-list-definition/ecl-description-list-definition.component.html","../../components/ecl-list/ecl-list.directive.ts","../../components/ecl-list/index.ts","../../components/ecl-list/eui-ecl-components-ecl-list.ts"],"sourcesContent":["import { Directive, HostBinding } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Directive representing a single item in an ECL description list definition.\n *\n * Applies the appropriate styling classes and allows visibility control for \"see all\" behavior.\n */\n@Directive({\n selector: '[eclDescriptionListDefinitionItem]',\n})\nexport class EclDescriptionListDefinitionItemDirective extends ECLBaseDirective {\n /**\n * Applies appropriate ECL classes based on visibility state.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [\n super.getCssClasses('ecl-description-list__definition-item'),\n this.isHidden ? 'ecl-description-list__definition-item--hidden' : '',\n this.isLastVisible ? 'ecl-description-list__definition-item--last-visible' : '',\n ].join(' ');\n }\n\n /**\n * Internal state used to hide the item when exceeding the visible limit.\n */\n isHidden = false;\n\n /**\n * Indicates whether this is the last item visible before the \"see all\" action is triggered.\n */\n isLastVisible = false;\n}\n\n/**\n * Directive representing a container for definition list items within an ECL description list.\n *\n * Applies the ECL-specific class for the list wrapper.\n */\n@Directive({\n selector: '[eclDescriptionListDefinitionList]',\n})\nexport class EclDescriptionListDefinitionListDirective extends ECLBaseDirective {\n /**\n * Applies the ECL list container class.\n */\n @HostBinding('class.ecl-description-list__definition-list') cmpClass = true;\n}\n","import {\n ApplicationRef,\n Component,\n DestroyRef,\n ElementRef,\n EmbeddedViewRef,\n HostBinding,\n TemplateRef,\n afterNextRender,\n computed,\n contentChildren,\n effect,\n inject,\n input,\n signal,\n viewChild,\n} from '@angular/core';\n\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclDescriptionListDefinitionItemDirective } from '../ecl-description-list-definition-item.directive';\nimport { EUI_ECL_LINK } from '@eui/ecl/components/ecl-link';\nimport { TranslatePipe } from '@ngx-translate/core';\n\n/**\n * Component for a definition item within an ECL description list.\n * Supports variants (link, inline, taxonomy, tag) and collapsible functionality\n * with maxVisibleItems control.\n */\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[eclDescriptionListDefinition]',\n standalone: true,\n templateUrl: './ecl-description-list-definition.component.html',\n imports: [...EUI_ECL_LINK, TranslatePipe],\n})\nexport class EclDescriptionListDefinitionComponent extends ECLBaseDirective {\n\n /**\n * Visual variant of the definition list item.\n * Options: 'link', 'inline', 'taxonomy', 'tag'.\n */\n variant = input<'link' | 'inline' | 'taxonomy' | 'tag' | null>(null);\n\n /**\n * Maximum number of items to display before showing \"See all\" link.\n * Controlled by parent EclDescriptionListDirective.\n */\n maxVisibleItems = signal<number | null>(null);\n\n private readonly eclListItems = contentChildren(EclDescriptionListDefinitionItemDirective, {\n descendants: true,\n });\n\n private readonly seeMoreTpl = viewChild.required<TemplateRef<unknown>>('seeMoreTpl');\n\n private readonly host = inject(ElementRef<HTMLElement>);\n private readonly appRef = inject(ApplicationRef);\n private readonly destroyRef = inject(DestroyRef);\n\n private seeMoreView?: EmbeddedViewRef<unknown>;\n private appended = false;\n\n @HostBinding('class')\n get cssClasses(): string {\n const v = this.variant();\n return [\n super.getCssClasses('ecl-description-list__definition'),\n v ? `ecl-description-list__definition--${v}` : '',\n ].join(' ');\n }\n // we use this to defer \"append into <ul>\" until the DOM exists\n /**\n * Signal indicating whether the DOM is ready for manipulation.\n * Set to true after first render to ensure projected content exists.\n */\n readonly domReady = signal(false);\n \n /**\n * Computed signal that returns the total number of list items.\n */\n private readonly currentItemsNumber = computed(() => this.eclListItems().length);\n\n /**\n * Computed signal that determines if \"See all\" link should be shown.\n * Returns true when maxVisibleItems is set and less than total items.\n */\n readonly hasSeeAll = computed(() => {\n const max = this.maxVisibleItems();\n const total = this.currentItemsNumber();\n return !!max && total > 0 && max < total;\n });\n\n constructor() {\n super();\n // Mark DOM ready AFTER first render (projected <ul> will exist)\n afterNextRender(() => this.domReady.set(true));\n // TODO: This needs to be refactored in the next version (v22/v23). I am adding this solution, for adding /removing the\n // 'See all' link now, to be dynamically handled via DOM manipulation, to avoid breaking changes. Can be done in an easier way,\n // but with minimal change in the way the component is used. To be refactored.\n effect(() => {\n const items = this.eclListItems();\n // If DOM not ready yet, only do state updates (no DOM querying/appending)\n const ready = this.domReady();\n\n if (!this.hasSeeAll()) {\n // show all items\n items.forEach((it) => {\n it.isHidden = false;\n it.isLastVisible = false;\n });\n\n if (ready) this.removeSeeMoreFromDom();\n return;\n }\n\n // \"See all\" needed → hide beyond max\n const max = this.maxVisibleItems()!;\n items.forEach((it, idx) => {\n it.isHidden = idx >= max;\n it.isLastVisible = false;\n });\n const last = items[max - 1];\n if (last) last.isLastVisible = true;\n\n if (ready) this.ensureSeeMoreInsideProjectedUl();\n });\n\n this.destroyRef.onDestroy(() => this.removeSeeMoreFromDom());\n }\n\n /**\n * Handles the \"Show all items\" link click event.\n * Expands all hidden items and removes the \"See all\" link from DOM.\n */\n onShowAllItems(evt: Event): void {\n evt.preventDefault();\n this.showAllInternal();\n this.removeSeeMoreFromDom();\n }\n\n /**\n * Shows all items by setting isHidden to false for all items.\n */\n private showAllInternal(): void {\n const items = this.eclListItems();\n items.forEach((item) => (item.isHidden = false));\n items.forEach((item) => (item.isLastVisible = false));\n }\n\n /**\n * Ensures the \"See all\" link is appended inside the projected <ul> element.\n * Creates and attaches the embedded view if needed.\n */\n private ensureSeeMoreInsideProjectedUl(): void {\n if (!this.hasSeeAll()) return;\n\n const ul = this.findProjectedUl();\n if (!ul) return;\n\n // If it's already in there (e.g. reruns), do nothing\n if (ul.querySelector(':scope > li.ecl-description-list__see_more')) return;\n\n // Create the embedded view once and append its root <li> into the projected <ul>\n if (!this.seeMoreView) {\n this.seeMoreView = this.seeMoreTpl().createEmbeddedView({});\n this.appRef.attachView(this.seeMoreView);\n this.seeMoreView.detectChanges();\n }\n\n const [liNode] = this.seeMoreView.rootNodes as HTMLElement[];\n if (liNode && !this.appended) {\n ul.appendChild(liNode);\n this.appended = true;\n } else if (liNode && liNode.parentElement !== ul) {\n // if it was moved/removed, re-append\n ul.appendChild(liNode);\n }\n }\n\n /**\n * Removes the \"See all\" link from the DOM and cleans up the embedded view.\n */\n private removeSeeMoreFromDom(): void {\n const ul = this.findProjectedUl();\n ul?.querySelector(':scope > li.ecl-description-list__see_more')?.remove();\n\n this.appended = false;\n\n if (this.seeMoreView) {\n this.appRef.detachView(this.seeMoreView);\n this.seeMoreView.destroy();\n this.seeMoreView = undefined;\n }\n }\n\n /**\n * Finds the projected <ul> element with eclDescriptionListDefinitionList directive.\n * Returns null if not found.\n */\n private findProjectedUl(): HTMLUListElement | null {\n // your projected UL uses this attribute directive\n return this.host.nativeElement.querySelector(\n 'ul[eclDescriptionListDefinitionList]'\n ) as HTMLUListElement | null;\n }\n}","<ng-content></ng-content>\n\n<ng-template #seeMoreTpl>\n <li class=\"ecl-description-list__see_more\">\n <a eclLink variant=\"standalone\" href (click)=\"onShowAllItems($event)\">\n {{ 'ecl.SHOW-MORE-ITEMS' | translate }}\n </a>\n </li>\n</ng-template>","import { AfterContentInit, ChangeDetectorRef, Directive, HostBinding, booleanAttribute, numberAttribute, inject, input, contentChildren } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclDescriptionListDefinitionComponent } from './ecl-description-list-definition/ecl-description-list-definition.component';\n\n/**\n * Directive representing an ordered list using ECL styles.\n */\n@Directive({\n selector: '[eclOrderedList]',\n})\nexport class EclOrderedListDirective extends ECLBaseDirective {\n /**\n * Applies the ECL class for ordered lists.\n */\n @HostBinding('class.ecl-ordered-list') cmpClass = true;\n}\n\n/**\n * Directive for a single item within an ECL ordered list.\n */\n@Directive({\n selector: '[eclOrderedListItem]',\n})\nexport class EclOrderedListItemDirective extends ECLBaseDirective {\n /**\n * Applies the ECL class for ordered list items.\n */\n @HostBinding('class.ecl-ordered-list__item') cmpClass = true;\n}\n\n/**\n * Directive representing an unordered list using ECL styles.\n *\n * Supports optional variants like divider and no-marker.\n */\n@Directive({\n selector: '[eclUnorderedList]',\n})\nexport class EclUnorderedListDirective extends ECLBaseDirective {\n /**\n * Applies the ECL class for unordered lists.\n */\n @HostBinding('class.ecl-unordered-list') cmpClass = true;\n\n /**\n * Adds a divider between list items.\n */\n isDivider = input(false, { transform: booleanAttribute });\n\n @HostBinding('class.ecl-unordered-list--divider')\n get dividerClass() {\n return this.isDivider();\n }\n\n /**\n * Removes markers from list items.\n */\n isNoMarker = input(false, { transform: booleanAttribute });\n\n @HostBinding('class.ecl-unordered-list--no-marker')\n get noMarkerClass() {\n return this.isNoMarker();\n }\n}\n\n/**\n * Directive for a single item within an ECL unordered list.\n */\n@Directive({\n selector: '[eclUnorderedListItem]',\n})\nexport class EclUnorderedListItemDirective extends ECLBaseDirective {\n /**\n * Applies the ECL class for unordered list items.\n */\n @HostBinding('class.ecl-unordered-list__item') cmpClass = true;\n}\n\n/**\n * Directive for a description list using ECL styles.\n *\n * Supports horizontal layout and maxVisibleItems functionality\n * passed down to nested definition components.\n */\n@Directive({\n selector: '[eclDescriptionList]',\n})\nexport class EclDescriptionListDirective extends ECLBaseDirective implements AfterContentInit {\n /**\n * Enables horizontal layout.\n */\n isHorizontal = input(false, { transform: booleanAttribute });\n\n @HostBinding('class.ecl-description-list--horizontal')\n get horizontalClass() {\n return this.isHorizontal();\n }\n\n /**\n * Maximum number of visible items before collapsing.\n * Applied to nested `eclDescriptionListDefinition` components.\n */\n maxVisibleItems = input(0, { transform: numberAttribute });\n\n readonly eclListItems = contentChildren(EclDescriptionListDefinitionComponent);\n\n /**\n * Applies the base ECL class for description lists.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-description-list')].join(' ');\n }\n private cd = inject(ChangeDetectorRef);\n\n /**\n * Assigns `maxVisibleItems` to child definition components if needed.\n */\n ngAfterContentInit(): void {\n if (!this.isHorizontal() && this.maxVisibleItems() > 0) {\n this.eclListItems().forEach((item) => (item.maxVisibleItems.set(this.maxVisibleItems())));\n }\n this.cd.detectChanges();\n }\n}\n\n/**\n * Directive representing a term within an ECL description list.\n */\n@Directive({\n selector: '[eclDescriptionListTerm]',\n})\nexport class EclDescriptionListTermDirective extends ECLBaseDirective {\n /**\n * Applies the ECL class for description list terms.\n */\n @HostBinding('class.ecl-description-list__term') cmpClass = true;\n}\n","import { EclDescriptionListDefinitionItemDirective, EclDescriptionListDefinitionListDirective } from './ecl-description-list-definition-item.directive';\nimport { EclDescriptionListDefinitionComponent } from './ecl-description-list-definition/ecl-description-list-definition.component';\nimport {\n EclDescriptionListDirective,\n EclDescriptionListTermDirective,\n EclOrderedListDirective,\n EclOrderedListItemDirective,\n EclUnorderedListDirective,\n EclUnorderedListItemDirective,\n} from './ecl-list.directive';\n\nexport * from './ecl-list.directive';\nexport * from './ecl-description-list-definition-item.directive';\nexport * from './ecl-description-list-definition/ecl-description-list-definition.component';\n\nexport const EUI_ECL_LIST = [\n EclOrderedListDirective,\n EclOrderedListItemDirective,\n EclUnorderedListDirective,\n EclUnorderedListItemDirective,\n EclDescriptionListDirective,\n EclDescriptionListTermDirective,\n EclDescriptionListDefinitionComponent,\n EclDescriptionListDefinitionItemDirective,\n EclDescriptionListDefinitionListDirective,\n] as const;","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"eui-ecl-components-ecl-list.mjs","sources":["../../components/ecl-list/ecl-description-list-definition-item.directive.ts","../../components/ecl-list/ecl-description-list-definition/ecl-description-list-definition.component.ts","../../components/ecl-list/ecl-description-list-definition/ecl-description-list-definition.component.html","../../components/ecl-list/ecl-list.directive.ts","../../components/ecl-list/index.ts","../../components/ecl-list/eui-ecl-components-ecl-list.ts"],"sourcesContent":["import { Directive, signal } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Directive representing a single item in an ECL description list definition.\n *\n * Applies the appropriate styling classes and allows visibility control for \"see all\" behavior.\n */\n@Directive({\n selector: '[eclDescriptionListDefinitionItem]',\n host: {\n '[class]': 'cssClasses',\n },\n})\nexport class EclDescriptionListDefinitionItemDirective extends ECLBaseDirective {\n /**\n * Internal state used to hide the item when exceeding the visible limit.\n */\n readonly isHidden = signal(false);\n\n /**\n * Indicates whether this is the last item visible before the \"see all\" action is triggered.\n */\n readonly isLastVisible = signal(false);\n\n /**\n * Applies appropriate ECL classes based on visibility state.\n */\n get cssClasses(): string {\n return [\n super.getCssClasses('ecl-description-list__definition-item'),\n this.isHidden() ? 'ecl-description-list__definition-item--hidden' : '',\n this.isLastVisible() ? 'ecl-description-list__definition-item--last-visible' : '',\n ].join(' ');\n }\n}\n\n/**\n * Directive representing a container for definition list items within an ECL description list.\n *\n * Applies the ECL-specific class for the list wrapper.\n */\n@Directive({\n selector: '[eclDescriptionListDefinitionList]',\n host: {\n class: 'ecl-description-list__definition-list',\n },\n})\nexport class EclDescriptionListDefinitionListDirective extends ECLBaseDirective {}\n","import {\n ApplicationRef,\n Component,\n DestroyRef,\n ElementRef,\n EmbeddedViewRef,\n TemplateRef,\n afterNextRender,\n computed,\n contentChildren,\n effect,\n inject,\n input,\n signal,\n viewChild,\n} from '@angular/core';\n\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclDescriptionListDefinitionItemDirective } from '../ecl-description-list-definition-item.directive';\nimport { EUI_ECL_LINK } from '@eui/ecl/components/ecl-link';\nimport { TranslatePipe } from '@ngx-translate/core';\n\n/**\n * Component for a definition item within an ECL description list.\n * Supports variants (link, inline, taxonomy, tag) and collapsible functionality\n * with maxVisibleItems control.\n */\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[eclDescriptionListDefinition]',\n templateUrl: './ecl-description-list-definition.component.html',\n imports: [...EUI_ECL_LINK, TranslatePipe],\n host: {\n '[class]': 'cssClasses',\n },\n})\nexport class EclDescriptionListDefinitionComponent extends ECLBaseDirective {\n\n /**\n * Visual variant of the definition list item.\n * Options: 'link', 'inline', 'taxonomy', 'tag'.\n */\n variant = input<'link' | 'inline' | 'taxonomy' | 'tag' | null>(null);\n\n /**\n * Maximum number of items to display before showing \"See all\" link.\n * Controlled by parent EclDescriptionListDirective.\n */\n maxVisibleItems = signal<number | null>(null);\n\n private readonly eclListItems = contentChildren(EclDescriptionListDefinitionItemDirective, {\n descendants: true,\n });\n\n private readonly seeMoreTpl = viewChild.required<TemplateRef<unknown>>('seeMoreTpl');\n\n private readonly host = inject(ElementRef<HTMLElement>);\n private readonly appRef = inject(ApplicationRef);\n private readonly destroyRef = inject(DestroyRef);\n\n private seeMoreView?: EmbeddedViewRef<unknown>;\n private appended = false;\n\n get cssClasses(): string {\n const v = this.variant();\n return [\n super.getCssClasses('ecl-description-list__definition'),\n v ? `ecl-description-list__definition--${v}` : '',\n ].join(' ');\n }\n /**\n * Signal indicating whether the DOM is ready for manipulation.\n * Set to true after first render to ensure the projected <ul> exists before\n * the see-more link is inserted into it. Defers DOM writes in the effect.\n */\n readonly domReady = signal(false);\n \n /**\n * Computed signal that returns the total number of list items.\n */\n private readonly currentItemsNumber = computed(() => this.eclListItems().length);\n\n /**\n * Computed signal that determines if \"See all\" link should be shown.\n * Returns true when maxVisibleItems is set and less than total items.\n */\n readonly hasSeeAll = computed(() => {\n const max = this.maxVisibleItems();\n const total = this.currentItemsNumber();\n return !!max && total > 0 && max < total;\n });\n\n constructor() {\n super();\n // Mark DOM ready AFTER first render (projected <ul> will exist)\n afterNextRender(() => this.domReady.set(true));\n\n // The \"See more\" link must render as a sibling <li> INSIDE the consumer-authored\n // <ul eclDescriptionListDefinitionList>, because ECL's CSS targets it as a direct\n // child of that list. Angular has no declarative way to project content into an\n // element the consumer owns (ng-content only projects into this component's own\n // template), so the link is inserted into the projected <ul> via controlled DOM\n // manipulation. This is intentional: keeping the natural <ul><li> markup in the\n // consumer template is preferred over an API that would force bare <li> authoring.\n //\n // This effect keeps two things in sync with reactive state:\n // 1. Per-item visibility (isHidden / isLastVisible signals) based on maxVisibleItems.\n // 2. Presence of the \"See more\" <li> in the projected <ul>, driven by hasSeeAll().\n // DOM writes are deferred until domReady() so the projected <ul> exists.\n effect(() => {\n const items = this.eclListItems();\n // If DOM not ready yet, only do state updates (no DOM querying/appending)\n const ready = this.domReady();\n\n if (!this.hasSeeAll()) {\n // show all items\n items.forEach((it) => {\n it.isHidden.set(false);\n it.isLastVisible.set(false);\n });\n\n if (ready) this.removeSeeMoreFromDom();\n return;\n }\n\n // \"See all\" needed → hide beyond max\n const max = this.maxVisibleItems()!;\n items.forEach((it, idx) => {\n it.isHidden.set(idx >= max);\n it.isLastVisible.set(false);\n });\n const last = items[max - 1];\n if (last) last.isLastVisible.set(true);\n\n if (ready) this.ensureSeeMoreInsideProjectedUl();\n });\n\n this.destroyRef.onDestroy(() => this.removeSeeMoreFromDom());\n }\n\n /**\n * Handles the \"Show all items\" link click event.\n * Expands all hidden items and removes the \"See all\" link from DOM.\n */\n onShowAllItems(evt: Event): void {\n evt.preventDefault();\n this.showAllInternal();\n this.removeSeeMoreFromDom();\n }\n\n /**\n * Shows all items by setting isHidden to false for all items.\n */\n private showAllInternal(): void {\n const items = this.eclListItems();\n items.forEach((item) => item.isHidden.set(false));\n items.forEach((item) => item.isLastVisible.set(false));\n }\n\n /**\n * Ensures the \"See all\" link is appended inside the projected <ul> element.\n * Creates and attaches the embedded view if needed.\n */\n private ensureSeeMoreInsideProjectedUl(): void {\n if (!this.hasSeeAll()) return;\n\n const ul = this.findProjectedUl();\n if (!ul) return;\n\n // If it's already in there (e.g. reruns), do nothing\n if (ul.querySelector(':scope > li.ecl-description-list__see_more')) return;\n\n // Create the embedded view once and append its root <li> into the projected <ul>\n if (!this.seeMoreView) {\n this.seeMoreView = this.seeMoreTpl().createEmbeddedView({});\n this.appRef.attachView(this.seeMoreView);\n this.seeMoreView.detectChanges();\n }\n\n const [liNode] = this.seeMoreView.rootNodes as HTMLElement[];\n if (liNode && !this.appended) {\n ul.appendChild(liNode);\n this.appended = true;\n } else if (liNode && liNode.parentElement !== ul) {\n // if it was moved/removed, re-append\n ul.appendChild(liNode);\n }\n }\n\n /**\n * Removes the \"See all\" link from the DOM and cleans up the embedded view.\n */\n private removeSeeMoreFromDom(): void {\n const ul = this.findProjectedUl();\n ul?.querySelector(':scope > li.ecl-description-list__see_more')?.remove();\n\n this.appended = false;\n\n if (this.seeMoreView) {\n this.appRef.detachView(this.seeMoreView);\n this.seeMoreView.destroy();\n this.seeMoreView = undefined;\n }\n }\n\n /**\n * Finds the projected <ul> element with eclDescriptionListDefinitionList directive.\n * Returns null if not found.\n */\n private findProjectedUl(): HTMLUListElement | null {\n // The consumer-authored list carries the eclDescriptionListDefinitionList directive.\n return this.host.nativeElement.querySelector(\n 'ul[eclDescriptionListDefinitionList]'\n ) as HTMLUListElement | null;\n }\n}","<ng-content></ng-content>\n\n<ng-template #seeMoreTpl>\n <li class=\"ecl-description-list__see_more\">\n <a eclLink variant=\"standalone\" href (click)=\"onShowAllItems($event)\">\n {{ 'ecl.SHOW-MORE-ITEMS' | translate }}\n </a>\n </li>\n</ng-template>","import { AfterContentInit, ChangeDetectorRef, Directive, HostBinding, booleanAttribute, numberAttribute, inject, input, contentChildren } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclDescriptionListDefinitionComponent } from './ecl-description-list-definition/ecl-description-list-definition.component';\n\n/**\n * Directive representing an ordered list using ECL styles.\n */\n@Directive({\n selector: '[eclOrderedList]',\n})\nexport class EclOrderedListDirective extends ECLBaseDirective {\n /**\n * Applies the ECL class for ordered lists.\n */\n @HostBinding('class.ecl-ordered-list') cmpClass = true;\n}\n\n/**\n * Directive for a single item within an ECL ordered list.\n */\n@Directive({\n selector: '[eclOrderedListItem]',\n})\nexport class EclOrderedListItemDirective extends ECLBaseDirective {\n /**\n * Applies the ECL class for ordered list items.\n */\n @HostBinding('class.ecl-ordered-list__item') cmpClass = true;\n}\n\n/**\n * Directive representing an unordered list using ECL styles.\n *\n * Supports optional variants like divider and no-marker.\n */\n@Directive({\n selector: '[eclUnorderedList]',\n})\nexport class EclUnorderedListDirective extends ECLBaseDirective {\n /**\n * Applies the ECL class for unordered lists.\n */\n @HostBinding('class.ecl-unordered-list') cmpClass = true;\n\n /**\n * Adds a divider between list items.\n */\n isDivider = input(false, { transform: booleanAttribute });\n\n @HostBinding('class.ecl-unordered-list--divider')\n get dividerClass() {\n return this.isDivider();\n }\n\n /**\n * Removes markers from list items.\n */\n isNoMarker = input(false, { transform: booleanAttribute });\n\n @HostBinding('class.ecl-unordered-list--no-marker')\n get noMarkerClass() {\n return this.isNoMarker();\n }\n}\n\n/**\n * Directive for a single item within an ECL unordered list.\n */\n@Directive({\n selector: '[eclUnorderedListItem]',\n})\nexport class EclUnorderedListItemDirective extends ECLBaseDirective {\n /**\n * Applies the ECL class for unordered list items.\n */\n @HostBinding('class.ecl-unordered-list__item') cmpClass = true;\n}\n\n/**\n * Directive for a description list using ECL styles.\n *\n * Supports horizontal layout and maxVisibleItems functionality\n * passed down to nested definition components.\n */\n@Directive({\n selector: '[eclDescriptionList]',\n})\nexport class EclDescriptionListDirective extends ECLBaseDirective implements AfterContentInit {\n /**\n * Enables horizontal layout.\n */\n isHorizontal = input(false, { transform: booleanAttribute });\n\n @HostBinding('class.ecl-description-list--horizontal')\n get horizontalClass() {\n return this.isHorizontal();\n }\n\n /**\n * Maximum number of visible items before collapsing.\n * Applied to nested `eclDescriptionListDefinition` components.\n */\n maxVisibleItems = input(0, { transform: numberAttribute });\n\n readonly eclListItems = contentChildren(EclDescriptionListDefinitionComponent);\n\n /**\n * Applies the base ECL class for description lists.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-description-list')].join(' ');\n }\n private cd = inject(ChangeDetectorRef);\n\n /**\n * Assigns `maxVisibleItems` to child definition components if needed.\n */\n ngAfterContentInit(): void {\n if (!this.isHorizontal() && this.maxVisibleItems() > 0) {\n this.eclListItems().forEach((item) => (item.maxVisibleItems.set(this.maxVisibleItems())));\n }\n this.cd.detectChanges();\n }\n}\n\n/**\n * Directive representing a term within an ECL description list.\n */\n@Directive({\n selector: '[eclDescriptionListTerm]',\n})\nexport class EclDescriptionListTermDirective extends ECLBaseDirective {\n /**\n * Applies the ECL class for description list terms.\n */\n @HostBinding('class.ecl-description-list__term') cmpClass = true;\n}\n","import { EclDescriptionListDefinitionItemDirective, EclDescriptionListDefinitionListDirective } from './ecl-description-list-definition-item.directive';\nimport { EclDescriptionListDefinitionComponent } from './ecl-description-list-definition/ecl-description-list-definition.component';\nimport {\n EclDescriptionListDirective,\n EclDescriptionListTermDirective,\n EclOrderedListDirective,\n EclOrderedListItemDirective,\n EclUnorderedListDirective,\n EclUnorderedListItemDirective,\n} from './ecl-list.directive';\n\nexport * from './ecl-list.directive';\nexport * from './ecl-description-list-definition-item.directive';\nexport * from './ecl-description-list-definition/ecl-description-list-definition.component';\n\nexport const EUI_ECL_LIST = [\n EclOrderedListDirective,\n EclOrderedListItemDirective,\n EclUnorderedListDirective,\n EclUnorderedListItemDirective,\n EclDescriptionListDirective,\n EclDescriptionListTermDirective,\n EclDescriptionListDefinitionComponent,\n EclDescriptionListDefinitionItemDirective,\n EclDescriptionListDefinitionListDirective,\n] as const;","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { input, booleanAttribute,
|
|
2
|
+
import { input, booleanAttribute, Component, Directive } from '@angular/core';
|
|
3
3
|
import { ECLBaseDirective } from '@eui/ecl/core';
|
|
4
4
|
|
|
5
5
|
/**
|
|
@@ -63,18 +63,15 @@ class EclLoadingIndicatorComponent extends ECLBaseDirective {
|
|
|
63
63
|
.trim();
|
|
64
64
|
}
|
|
65
65
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: EclLoadingIndicatorComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
66
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.1.2", type: EclLoadingIndicatorComponent, isStandalone: true, selector: "ecl-loading-indicator", inputs: { size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, isCentered: { classPropertyName: "isCentered", publicName: "isCentered", isSignal: true, isRequired: false, transformFunction: null }, isVisible: { classPropertyName: "isVisible", publicName: "isVisible", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "attr.role": "
|
|
66
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.1.2", type: EclLoadingIndicatorComponent, isStandalone: true, selector: "ecl-loading-indicator", inputs: { size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, isCentered: { classPropertyName: "isCentered", publicName: "isCentered", isSignal: true, isRequired: false, transformFunction: null }, isVisible: { classPropertyName: "isVisible", publicName: "isVisible", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "attr.role": "role", "class": "cssClasses" } }, usesInheritance: true, ngImport: i0, template: "<svg class=\"ecl-spinner__loader\" viewBox=\"25 25 50 50\">\n <circle\n class=\"ecl-spinner__circle\"\n cx=\"50\"\n cy=\"50\"\n r=\"20\"\n fill=\"none\"\n stroke-width=\"4px\"\n stroke-miterlimit=\"10\"\n vector-effect=\"non-scaling-stroke\"></circle>\n</svg>\n<ng-content></ng-content>\n" }); }
|
|
67
67
|
}
|
|
68
68
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: EclLoadingIndicatorComponent, decorators: [{
|
|
69
69
|
type: Component,
|
|
70
|
-
args: [{ selector: 'ecl-loading-indicator',
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
type: HostBinding,
|
|
76
|
-
args: ['class']
|
|
77
|
-
}] } });
|
|
70
|
+
args: [{ selector: 'ecl-loading-indicator', host: {
|
|
71
|
+
'[attr.role]': 'role',
|
|
72
|
+
'[class]': 'cssClasses',
|
|
73
|
+
}, template: "<svg class=\"ecl-spinner__loader\" viewBox=\"25 25 50 50\">\n <circle\n class=\"ecl-spinner__circle\"\n cx=\"50\"\n cy=\"50\"\n r=\"20\"\n fill=\"none\"\n stroke-width=\"4px\"\n stroke-miterlimit=\"10\"\n vector-effect=\"non-scaling-stroke\"></circle>\n</svg>\n<ng-content></ng-content>\n" }]
|
|
74
|
+
}], propDecorators: { size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], variant: [{ type: i0.Input, args: [{ isSignal: true, alias: "variant", required: false }] }], isCentered: [{ type: i0.Input, args: [{ isSignal: true, alias: "isCentered", required: false }] }], isVisible: [{ type: i0.Input, args: [{ isSignal: true, alias: "isVisible", required: false }] }] } });
|
|
78
75
|
|
|
79
76
|
/**
|
|
80
77
|
* Directive for styling the label text of an ECL loading indicator.
|
|
@@ -89,17 +86,17 @@ class EclLoadingIndicatorLabelDirective {
|
|
|
89
86
|
this.className = true;
|
|
90
87
|
}
|
|
91
88
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: EclLoadingIndicatorLabelDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
92
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.2", type: EclLoadingIndicatorLabelDirective, isStandalone: true, selector: "[eclLoadingIndicatorLabel]", host: { properties: { "class.ecl-spinner__text": "
|
|
89
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.2", type: EclLoadingIndicatorLabelDirective, isStandalone: true, selector: "[eclLoadingIndicatorLabel]", host: { properties: { "class.ecl-spinner__text": "className" } }, ngImport: i0 }); }
|
|
93
90
|
}
|
|
94
91
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: EclLoadingIndicatorLabelDirective, decorators: [{
|
|
95
92
|
type: Directive,
|
|
96
93
|
args: [{
|
|
97
94
|
selector: '[eclLoadingIndicatorLabel]',
|
|
95
|
+
host: {
|
|
96
|
+
'[class.ecl-spinner__text]': 'className',
|
|
97
|
+
},
|
|
98
98
|
}]
|
|
99
|
-
}]
|
|
100
|
-
type: HostBinding,
|
|
101
|
-
args: ['class.ecl-spinner__text']
|
|
102
|
-
}] } });
|
|
99
|
+
}] });
|
|
103
100
|
|
|
104
101
|
/**
|
|
105
102
|
* Directive that adds an overlay layer to an ECL loading indicator.
|
|
@@ -114,17 +111,17 @@ class EclLoadingIndicatorOverlayDirective extends ECLBaseDirective {
|
|
|
114
111
|
return [super.getCssClasses('ecl-spinner__overlay ecl-spinner__overlay--visible')].join(' ').trim();
|
|
115
112
|
}
|
|
116
113
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: EclLoadingIndicatorOverlayDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
|
|
117
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.2", type: EclLoadingIndicatorOverlayDirective, isStandalone: true, selector: "[eclLoadingIndicatorOverlay]", host: { properties: { "class": "
|
|
114
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.2", type: EclLoadingIndicatorOverlayDirective, isStandalone: true, selector: "[eclLoadingIndicatorOverlay]", host: { properties: { "class": "cssClasses" } }, usesInheritance: true, ngImport: i0 }); }
|
|
118
115
|
}
|
|
119
116
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: EclLoadingIndicatorOverlayDirective, decorators: [{
|
|
120
117
|
type: Directive,
|
|
121
118
|
args: [{
|
|
122
119
|
selector: '[eclLoadingIndicatorOverlay]',
|
|
120
|
+
host: {
|
|
121
|
+
'[class]': 'cssClasses',
|
|
122
|
+
},
|
|
123
123
|
}]
|
|
124
|
-
}]
|
|
125
|
-
type: HostBinding,
|
|
126
|
-
args: ['class']
|
|
127
|
-
}] } });
|
|
124
|
+
}] });
|
|
128
125
|
|
|
129
126
|
const EUI_ECL_LOADING_INDICATOR = [
|
|
130
127
|
EclLoadingIndicatorComponent,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eui-ecl-components-ecl-loading-indicator.mjs","sources":["../../components/ecl-loading-indicator/ecl-loading-indicator.component.ts","../../components/ecl-loading-indicator/ecl-loading-indicator.component.html","../../components/ecl-loading-indicator/ecl-loading-indicator-label.directive.ts","../../components/ecl-loading-indicator/ecl-loading-indicator-overlay.directive.ts","../../components/ecl-loading-indicator/index.ts","../../components/ecl-loading-indicator/eui-ecl-components-ecl-loading-indicator.ts"],"sourcesContent":["import { Component,
|
|
1
|
+
{"version":3,"file":"eui-ecl-components-ecl-loading-indicator.mjs","sources":["../../components/ecl-loading-indicator/ecl-loading-indicator.component.ts","../../components/ecl-loading-indicator/ecl-loading-indicator.component.html","../../components/ecl-loading-indicator/ecl-loading-indicator-label.directive.ts","../../components/ecl-loading-indicator/ecl-loading-indicator-overlay.directive.ts","../../components/ecl-loading-indicator/index.ts","../../components/ecl-loading-indicator/eui-ecl-components-ecl-loading-indicator.ts"],"sourcesContent":["import { Component, booleanAttribute, input } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Component representing a loading indicator (spinner) using ECL styles.\n *\n * Supports different sizes, color variants, centering and visibility options.\n */\n@Component({\n selector: 'ecl-loading-indicator',\n templateUrl: './ecl-loading-indicator.component.html',\n host: {\n '[attr.role]': 'role',\n '[class]': 'cssClasses',\n },\n})\nexport class EclLoadingIndicatorComponent extends ECLBaseDirective {\n /**\n * Size of the spinner.\n *\n * Possible values:\n * - `'s'` – small\n * - `'m'` – medium (default)\n * - `'l'` – large\n */\n readonly size = input<'s' | 'm' | 'l'>('m');\n\n /**\n * Variant of the spinner color.\n *\n * Possible values:\n * - `'primary'` – default appearance\n * - `'inverted'` – used on dark backgrounds\n */\n readonly variant = input<'primary' | 'inverted'>('primary');\n\n /**\n * Controls whether the spinner should be centered.\n *\n * Defaults to `true`.\n */\n readonly isCentered = input(true, { transform: booleanAttribute });\n\n /**\n * Controls visibility of the spinner.\n *\n * When set to `false`, the spinner will be hidden via CSS.\n *\n * Defaults to `true`.\n */\n readonly isVisible = input(true, { transform: booleanAttribute });\n\n /**\n * Applies ARIA role for accessibility.\n */\n role = 'alert';\n\n /**\n * Applies CSS classes based on size, variant and visibility settings.\n */\n get cssClasses(): string {\n return [\n super.getCssClasses('ecl-spinner'),\n `ecl-spinner--${this.size()}`,\n `ecl-spinner--${this.variant()}`,\n this.isCentered() ? 'ecl-spinner--centered' : '',\n this.isVisible() ? 'ecl-spinner--visible' : '',\n ]\n .join(' ')\n .trim();\n }\n}\n","<svg class=\"ecl-spinner__loader\" viewBox=\"25 25 50 50\">\n <circle\n class=\"ecl-spinner__circle\"\n cx=\"50\"\n cy=\"50\"\n r=\"20\"\n fill=\"none\"\n stroke-width=\"4px\"\n stroke-miterlimit=\"10\"\n vector-effect=\"non-scaling-stroke\"></circle>\n</svg>\n<ng-content></ng-content>\n","import { Directive } from '@angular/core';\n\n/**\n * Directive for styling the label text of an ECL loading indicator.\n *\n * Adds the `ecl-spinner__text` class to the host element.\n */\n@Directive({\n selector: '[eclLoadingIndicatorLabel]',\n host: {\n '[class.ecl-spinner__text]': 'className',\n },\n})\nexport class EclLoadingIndicatorLabelDirective {\n /**\n * Applies the ECL class for spinner label text.\n */\n className = true;\n}\n","import { Directive } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Directive that adds an overlay layer to an ECL loading indicator.\n *\n * Automatically applies the ECL spinner overlay classes.\n */\n@Directive({\n selector: '[eclLoadingIndicatorOverlay]',\n host: {\n '[class]': 'cssClasses',\n },\n})\nexport class EclLoadingIndicatorOverlayDirective extends ECLBaseDirective {\n /**\n * Applies the CSS classes for the spinner overlay.\n */\n get cssClasses(): string {\n return [super.getCssClasses('ecl-spinner__overlay ecl-spinner__overlay--visible')].join(' ').trim();\n }\n}\n","import { EclLoadingIndicatorComponent } from './ecl-loading-indicator.component';\nimport { EclLoadingIndicatorLabelDirective } from './ecl-loading-indicator-label.directive';\nimport { EclLoadingIndicatorOverlayDirective } from './ecl-loading-indicator-overlay.directive';\n\nexport * from './ecl-loading-indicator.component';\nexport * from './ecl-loading-indicator-label.directive';\nexport * from './ecl-loading-indicator-overlay.directive';\n\nexport const EUI_ECL_LOADING_INDICATOR = [\n EclLoadingIndicatorComponent,\n EclLoadingIndicatorLabelDirective,\n EclLoadingIndicatorOverlayDirective,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { input, inject, ElementRef,
|
|
2
|
+
import { input, inject, ElementRef, Directive, contentChild, PLATFORM_ID, afterNextRender, booleanAttribute, signal, viewChildren, viewChild, DOCUMENT, computed, Renderer2, Component } from '@angular/core';
|
|
3
3
|
import { ECLBaseDirective } from '@eui/ecl/core';
|
|
4
4
|
import { isPlatformBrowser } from '@angular/common';
|
|
5
5
|
import * as i1 from '@eui/ecl/components/ecl-button';
|
|
@@ -22,6 +22,11 @@ class EclMediaContainerIframeDirective extends ECLBaseDirective {
|
|
|
22
22
|
this.hasCustomRatio = false;
|
|
23
23
|
this.elem = inject(ElementRef);
|
|
24
24
|
}
|
|
25
|
+
/**
|
|
26
|
+
* Aspect ratio applied as a host style binding. Derived from the
|
|
27
|
+
* `width`/`height` inputs (falling back to the element's measured size),
|
|
28
|
+
* and only produced when a custom ratio is requested.
|
|
29
|
+
*/
|
|
25
30
|
get ratio() {
|
|
26
31
|
return this.hasCustomRatio ? this.calculateCustomRatio() : null;
|
|
27
32
|
}
|
|
@@ -35,19 +40,17 @@ class EclMediaContainerIframeDirective extends ECLBaseDirective {
|
|
|
35
40
|
return `${iframeWidth}/${iframeHeight}`;
|
|
36
41
|
}
|
|
37
42
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: EclMediaContainerIframeDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
|
|
38
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.1.2", type: EclMediaContainerIframeDirective, isStandalone: true, selector: "iframe[eclMediaContainerIframe]", inputs: { width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null }
|
|
43
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.1.2", type: EclMediaContainerIframeDirective, isStandalone: true, selector: "iframe[eclMediaContainerIframe]", inputs: { width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "style.aspect-ratio": "ratio" } }, usesInheritance: true, ngImport: i0 }); }
|
|
39
44
|
}
|
|
40
45
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: EclMediaContainerIframeDirective, decorators: [{
|
|
41
46
|
type: Directive,
|
|
42
47
|
args: [{
|
|
43
48
|
selector: 'iframe[eclMediaContainerIframe]',
|
|
49
|
+
host: {
|
|
50
|
+
'[style.aspect-ratio]': 'ratio',
|
|
51
|
+
},
|
|
44
52
|
}]
|
|
45
|
-
}], propDecorators: { width: [{ type: i0.Input, args: [{ isSignal: true, alias: "width", required: false }] }], height: [{ type: i0.Input, args: [{ isSignal: true, alias: "height", required: false }] }]
|
|
46
|
-
type: Input
|
|
47
|
-
}, {
|
|
48
|
-
type: HostBinding,
|
|
49
|
-
args: ['style.aspect-ratio']
|
|
50
|
-
}] } });
|
|
53
|
+
}], propDecorators: { width: [{ type: i0.Input, args: [{ isSignal: true, alias: "width", required: false }] }], height: [{ type: i0.Input, args: [{ isSignal: true, alias: "height", required: false }] }] } });
|
|
51
54
|
|
|
52
55
|
/**
|
|
53
56
|
* Adds styling to the media container description.
|
|
@@ -57,17 +60,17 @@ class EclMediaContainerItemAudioDescriptionDirective extends ECLBaseDirective {
|
|
|
57
60
|
return [super.getCssClasses('ecl-media-container__media-audio')].join(' ').trim();
|
|
58
61
|
}
|
|
59
62
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: EclMediaContainerItemAudioDescriptionDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
|
|
60
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.2", type: EclMediaContainerItemAudioDescriptionDirective, isStandalone: true, selector: "[eclMediaContainerItemAudioDescription]", host: { properties: { "class": "
|
|
63
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.2", type: EclMediaContainerItemAudioDescriptionDirective, isStandalone: true, selector: "[eclMediaContainerItemAudioDescription]", host: { properties: { "class": "cssClasses" } }, usesInheritance: true, ngImport: i0 }); }
|
|
61
64
|
}
|
|
62
65
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: EclMediaContainerItemAudioDescriptionDirective, decorators: [{
|
|
63
66
|
type: Directive,
|
|
64
67
|
args: [{
|
|
65
68
|
selector: '[eclMediaContainerItemAudioDescription]',
|
|
69
|
+
host: {
|
|
70
|
+
'[class]': 'cssClasses',
|
|
71
|
+
},
|
|
66
72
|
}]
|
|
67
|
-
}]
|
|
68
|
-
type: HostBinding,
|
|
69
|
-
args: ['class']
|
|
70
|
-
}] } });
|
|
73
|
+
}] });
|
|
71
74
|
|
|
72
75
|
/**
|
|
73
76
|
* Adds styling and functionality to the media container item /image.
|
|
@@ -117,17 +120,17 @@ class EclMediaContainerItemDirective extends ECLBaseDirective {
|
|
|
117
120
|
}
|
|
118
121
|
}
|
|
119
122
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: EclMediaContainerItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
120
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "22.1.2", type: EclMediaContainerItemDirective, isStandalone: true, selector: "[eclMediaContainerItem], img[eclMediaContainerImage]", inputs: { ratio: { classPropertyName: "ratio", publicName: "ratio", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "
|
|
123
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "22.1.2", type: EclMediaContainerItemDirective, isStandalone: true, selector: "[eclMediaContainerItem], img[eclMediaContainerImage]", inputs: { ratio: { classPropertyName: "ratio", publicName: "ratio", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "cssClasses" } }, queries: [{ propertyName: "contentIframe", first: true, predicate: EclMediaContainerIframeDirective, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0 }); }
|
|
121
124
|
}
|
|
122
125
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: EclMediaContainerItemDirective, decorators: [{
|
|
123
126
|
type: Directive,
|
|
124
127
|
args: [{
|
|
125
128
|
selector: '[eclMediaContainerItem], img[eclMediaContainerImage]',
|
|
129
|
+
host: {
|
|
130
|
+
'[class]': 'cssClasses',
|
|
131
|
+
},
|
|
126
132
|
}]
|
|
127
|
-
}], ctorParameters: () => [], propDecorators: { ratio: [{ type: i0.Input, args: [{ isSignal: true, alias: "ratio", required: false }] }], contentIframe: [{ type: i0.ContentChild, args: [i0.forwardRef(() => EclMediaContainerIframeDirective), { isSignal: true }] }]
|
|
128
|
-
type: HostBinding,
|
|
129
|
-
args: ['class']
|
|
130
|
-
}] } });
|
|
133
|
+
}], ctorParameters: () => [], propDecorators: { ratio: [{ type: i0.Input, args: [{ isSignal: true, alias: "ratio", required: false }] }], contentIframe: [{ type: i0.ContentChild, args: [i0.forwardRef(() => EclMediaContainerIframeDirective), { isSignal: true }] }] } });
|
|
131
134
|
|
|
132
135
|
/**
|
|
133
136
|
* Applies styles for the picture element.
|
|
@@ -137,17 +140,17 @@ class EclMediaContainerPictureDirective extends ECLBaseDirective {
|
|
|
137
140
|
return [super.getCssClasses('ecl-picture ecl-media-container__picture')].join(' ').trim();
|
|
138
141
|
}
|
|
139
142
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: EclMediaContainerPictureDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
|
|
140
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.2", type: EclMediaContainerPictureDirective, isStandalone: true, selector: "picture[eclMediaContainerPicture]", host: { properties: { "class": "
|
|
143
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.2", type: EclMediaContainerPictureDirective, isStandalone: true, selector: "picture[eclMediaContainerPicture]", host: { properties: { "class": "cssClasses" } }, usesInheritance: true, ngImport: i0 }); }
|
|
141
144
|
}
|
|
142
145
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: EclMediaContainerPictureDirective, decorators: [{
|
|
143
146
|
type: Directive,
|
|
144
147
|
args: [{
|
|
145
148
|
selector: 'picture[eclMediaContainerPicture]',
|
|
149
|
+
host: {
|
|
150
|
+
'[class]': 'cssClasses',
|
|
151
|
+
},
|
|
146
152
|
}]
|
|
147
|
-
}]
|
|
148
|
-
type: HostBinding,
|
|
149
|
-
args: ['class']
|
|
150
|
-
}] } });
|
|
153
|
+
}] });
|
|
151
154
|
|
|
152
155
|
/**
|
|
153
156
|
* Adds styling and attributes to the media container caption element.
|
|
@@ -157,17 +160,17 @@ class EclMediaContainerCaptionDirective extends ECLBaseDirective {
|
|
|
157
160
|
return [super.getCssClasses('ecl-media-container__caption')].join(' ').trim();
|
|
158
161
|
}
|
|
159
162
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: EclMediaContainerCaptionDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
|
|
160
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.2", type: EclMediaContainerCaptionDirective, isStandalone: true, selector: "figcaption[eclMediaContainerCaption]", host: { properties: { "class": "
|
|
163
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.2", type: EclMediaContainerCaptionDirective, isStandalone: true, selector: "figcaption[eclMediaContainerCaption]", host: { properties: { "class": "cssClasses" } }, usesInheritance: true, ngImport: i0 }); }
|
|
161
164
|
}
|
|
162
165
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: EclMediaContainerCaptionDirective, decorators: [{
|
|
163
166
|
type: Directive,
|
|
164
167
|
args: [{
|
|
165
168
|
selector: 'figcaption[eclMediaContainerCaption]',
|
|
169
|
+
host: {
|
|
170
|
+
'[class]': 'cssClasses',
|
|
171
|
+
},
|
|
166
172
|
}]
|
|
167
|
-
}]
|
|
168
|
-
type: HostBinding,
|
|
169
|
-
args: ['class']
|
|
170
|
-
}] } });
|
|
173
|
+
}] });
|
|
171
174
|
|
|
172
175
|
/**
|
|
173
176
|
* Adds styling and attributes to the media container credit element.
|
|
@@ -177,17 +180,17 @@ class EclMediaContainerCreditDirective extends ECLBaseDirective {
|
|
|
177
180
|
return [super.getCssClasses('ecl-media-container__credit')].join(' ').trim();
|
|
178
181
|
}
|
|
179
182
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: EclMediaContainerCreditDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
|
|
180
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.2", type: EclMediaContainerCreditDirective, isStandalone: true, selector: "footer[eclMediaContainerCredit]", host: { properties: { "class": "
|
|
183
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.2", type: EclMediaContainerCreditDirective, isStandalone: true, selector: "footer[eclMediaContainerCredit]", host: { properties: { "class": "cssClasses" } }, usesInheritance: true, ngImport: i0 }); }
|
|
181
184
|
}
|
|
182
185
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: EclMediaContainerCreditDirective, decorators: [{
|
|
183
186
|
type: Directive,
|
|
184
187
|
args: [{
|
|
185
188
|
selector: 'footer[eclMediaContainerCredit]',
|
|
189
|
+
host: {
|
|
190
|
+
'[class]': 'cssClasses',
|
|
191
|
+
},
|
|
186
192
|
}]
|
|
187
|
-
}]
|
|
188
|
-
type: HostBinding,
|
|
189
|
-
args: ['class']
|
|
190
|
-
}] } });
|
|
193
|
+
}] });
|
|
191
194
|
|
|
192
195
|
/**
|
|
193
196
|
* A media container is used to display media items (video, audio, image or other data) with a caption.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eui-ecl-components-ecl-media-container.mjs","sources":["../../components/ecl-media-container/ecl-media-container-iframe.directive.ts","../../components/ecl-media-container/ecl-media-container-item-audio-description.directive.ts","../../components/ecl-media-container/ecl-media-container-item.directive.ts","../../components/ecl-media-container/ecl-media-container-picture.directive.ts","../../components/ecl-media-container/ecl-media-container-caption.directive.ts","../../components/ecl-media-container/ecl-media-container-credit.directive.ts","../../components/ecl-media-container/ecl-media-container.component.ts","../../components/ecl-media-container/ecl-media-container.component.html","../../components/ecl-media-container/index.ts","../../components/ecl-media-container/eui-ecl-components-ecl-media-container.ts"],"sourcesContent":["import { Directive, ElementRef, HostBinding, Input, inject, input } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Adds styling and attributes to the iframe element.\n */\n@Directive({\n selector: 'iframe[eclMediaContainerIframe]',\n})\nexport class EclMediaContainerIframeDirective extends ECLBaseDirective {\n readonly width = input(undefined);\n readonly height = input(undefined);\n @Input()\n @HostBinding('style.aspect-ratio')\n get ratio(): string {\n return this.hasCustomRatio ? this.calculateCustomRatio() : null;\n }\n\n hasCustomRatio = false;\n private elem = inject(ElementRef);\n\n calculateCustomRatio(): string {\n let iframeHeight = this.height();\n let iframeWidth = this.width();\n if (!iframeWidth || !iframeHeight) {\n iframeWidth = this.elem.nativeElement.offsetWidth;\n iframeHeight = this.elem.nativeElement.offsetHeight;\n }\n return `${iframeWidth}/${iframeHeight}`;\n }\n}\n","import { Directive, HostBinding } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Adds styling to the media container description.\n */\n@Directive({\n selector: '[eclMediaContainerItemAudioDescription]',\n})\nexport class EclMediaContainerItemAudioDescriptionDirective extends ECLBaseDirective {\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-media-container__media-audio')].join(' ').trim();\n }\n}\n","import { AfterContentInit, Directive, ElementRef, HostBinding, PLATFORM_ID, afterNextRender, inject, input, contentChild } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclMediaContainerIframeDirective } from './ecl-media-container-iframe.directive';\nimport { isPlatformBrowser } from '@angular/common';\n\n/**\n * Adds styling and functionality to the media container item /image.\n */\n@Directive({\n selector: '[eclMediaContainerItem], img[eclMediaContainerImage]',\n})\nexport class EclMediaContainerItemDirective extends ECLBaseDirective implements AfterContentInit {\n el = inject(ElementRef);\n\n readonly ratio = input<string>(undefined);\n readonly contentIframe = contentChild(EclMediaContainerIframeDirective);\n\n @HostBinding('class')\n get cssClasses(): string {\n const ratio = this.ratio();\n return [\n super.getCssClasses('ecl-media-container__media'),\n ratio ? `ecl-media-container__media--ratio-${ratio}` : '',\n this.isVideo ? 'ecl-video' : '',\n ]\n .join(' ')\n .trim();\n }\n\n public isVideo = false;\n private platformId = inject(PLATFORM_ID);\n\n constructor() {\n super();\n afterNextRender(() => {\n this.setIframeUrl();\n });\n }\n\n ngAfterContentInit(): void {\n const contentIframe = this.contentIframe();\n if (contentIframe) {\n contentIframe.hasCustomRatio = this.ratio() ? false : true;\n }\n if (isPlatformBrowser(this.platformId)) {\n const selector = this.el.nativeElement.tagName;\n this.isVideo = selector === 'VIDEO';\n }\n }\n\n // TODO: is this really needed?\n setIframeUrl(): void {\n if (this.el.nativeElement.lastChild && this.el.nativeElement.lastChild.nodeName === 'IFRAME') {\n const iframe = this.el.nativeElement.lastChild;\n const iframeUrl = new URL(iframe.src);\n if (iframeUrl.host.includes('youtube')) {\n iframe.src = iframeUrl;\n }\n }\n }\n}\n","import { Directive, HostBinding } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Applies styles for the picture element.\n */\n@Directive({\n selector: 'picture[eclMediaContainerPicture]',\n})\nexport class EclMediaContainerPictureDirective extends ECLBaseDirective {\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-picture ecl-media-container__picture')].join(' ').trim();\n }\n}\n","import { Directive, HostBinding } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Adds styling and attributes to the media container caption element.\n */\n@Directive({\n selector: 'figcaption[eclMediaContainerCaption]',\n})\nexport class EclMediaContainerCaptionDirective extends ECLBaseDirective {\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-media-container__caption')].join(' ').trim();\n }\n}\n","import { Directive, HostBinding } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Adds styling and attributes to the media container credit element.\n */\n@Directive({\n selector: 'footer[eclMediaContainerCredit]',\n})\nexport class EclMediaContainerCreditDirective extends ECLBaseDirective {\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-media-container__credit')].join(' ').trim();\n }\n}\n","import { isPlatformBrowser } from '@angular/common';\nimport { AfterContentInit, booleanAttribute, Component, computed, contentChild, DOCUMENT, ElementRef, inject, input, OnDestroy, PLATFORM_ID, Renderer2, signal, viewChildren, viewChild } from '@angular/core';\nimport { EclButtonComponent, EUI_ECL_BUTTON } from '@eui/ecl/components/ecl-button';\nimport { EclExpandableComponent } from '@eui/ecl/components/ecl-expandable';\nimport { EUI_ECL_ICON } from '@eui/ecl/components/ecl-icon';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { auditTime, fromEvent, Subject, take, takeUntil, timer } from 'rxjs';\nimport { EclMediaContainerCreditDirective } from './ecl-media-container-credit.directive';\nimport { EclMediaContainerItemDirective } from './ecl-media-container-item.directive';\n\n/**\n * A media container is used to display media items (video, audio, image or other data) with a caption.\n */\n@Component({\n selector: 'ecl-media-container',\n templateUrl: './ecl-media-container.component.html',\n imports: [...EUI_ECL_BUTTON, ...EUI_ECL_ICON],\n host: {\n '[class]': 'cssClasses()',\n },\n styles: [\n `\n :host {\n display: block;\n }\n `,\n ],\n})\n\nexport class EclMediaContainerComponent extends ECLBaseDirective implements AfterContentInit, OnDestroy {\n readonly isFullWidth = input(false, { transform: booleanAttribute });\n /**\n * Used for a video only - if the video should play immediately.\n */\n readonly eclAutoplay = input(false, { transform: booleanAttribute });\n\n captionPosition = input<'over' | 'bottom' | 'hidden'>('bottom');\n\n /**\n * Allows a parent component to override the caption position programmatically.\n */\n captionPositionOverride = signal<'over' | 'bottom' | 'hidden' | null>(null);\n\n readonly expandable = contentChild(EclExpandableComponent);\n readonly eclMediaContainerItem = contentChild(EclMediaContainerItemDirective);\n readonly eclButtons = viewChildren(EclButtonComponent);\n readonly pauseButton = viewChild<EclButtonComponent>('pauseButton');\n readonly playButton = viewChild<EclButtonComponent>('playButton');\n private creditEl = contentChild(EclMediaContainerCreditDirective, { read: ElementRef });\n private readonly document = inject<Document>(DOCUMENT);\n private readonly window = this.document.defaultView;\n\n captionBottomOffset = signal<string | null>(null);\n\n /**\n * Resolved caption position considering the override.\n */\n resolvedCaptionPosition = computed(() => this.captionPositionOverride() ?? this.captionPosition());\n\n /**\n * Applies specific classes for the component.\n */\n cssClasses = computed(() => {\n const position = this.resolvedCaptionPosition();\n return [super.getCssClasses('ecl-media-container'),\n position !== 'bottom' ? `ecl-media-container--caption-${position}` : '',\n ].join(' ').trim();\n });\n\n hasVideo = signal(false);\n\n public isPlaying = false;\n private readonly DELAY = 0;\n private renderer = inject(Renderer2);\n private removeVideoListeners: (() => void)[] = [];\n private platformId = inject(PLATFORM_ID);\n private destroy$: Subject<boolean> = new Subject<boolean>();\n\n ngAfterContentInit(): void {\n if (isPlatformBrowser(this.platformId)) {\n const eclMediaContainerItem = this.eclMediaContainerItem();\n this.hasVideo.set(eclMediaContainerItem?.isVideo ?? false);\n\n if (this.hasVideo() && this.eclAutoplay()) {\n const videoEl = eclMediaContainerItem?.el?.nativeElement as HTMLVideoElement | undefined;\n if (videoEl) {\n this.removeVideoListeners.push(\n this.renderer.listen(videoEl, 'play', () => (this.isPlaying = true)),\n this.renderer.listen(videoEl, 'pause', () => (this.isPlaying = false)),\n );\n\n this.renderer.setAttribute(videoEl, 'loop', '');\n this.renderer.setAttribute(videoEl, 'muted', '');\n this.renderer.setProperty(videoEl, 'muted', true);\n this.renderer.removeAttribute(videoEl, 'controls');\n }\n }\n this.setCaptionBottom();\n fromEvent(this.window, 'resize').pipe(\n auditTime(50),\n takeUntil(this.destroy$)).subscribe(() => {\n this.setCaptionBottom();\n });\n }\n\n const expandable = this.expandable();\n if (expandable) {\n expandable.class = [expandable.class, 'ecl-media-container__expandable'].join(' ');\n }\n }\n\n ngOnDestroy(): void {\n for (const unlisten of this.removeVideoListeners) unlisten();\n this.removeVideoListeners = [];\n this.destroy$.next(true);\n this.destroy$.unsubscribe();\n }\n\n /**\n * When user clicks on 'play' button -> start the video and move the focus to the 'pause' button.\n */\n onVideoPlay(): void {\n const videoEl = this.eclMediaContainerItem().el.nativeElement;\n videoEl.play();\n\n timer(this.DELAY).pipe(take(1)).subscribe(() => {\n const pauseButton = this.eclButtons().find(\n button => button === this.pauseButton());\n this.focusOnButton(pauseButton);\n });\n }\n\n /**\n * When user clicks on 'pause' button -> pause the video and move the focus to the 'play' button.\n */\n onVideoPause(): void {\n const videoEl = this.eclMediaContainerItem().el.nativeElement;\n videoEl.pause();\n\n timer(this.DELAY).pipe(take(1)).subscribe(() => {\n const playButton = this.eclButtons().find(\n button => button === this.playButton());\n this.focusOnButton(playButton);\n });\n }\n\n private focusOnButton(button: EclButtonComponent): void {\n if (!button) {\n return;\n }\n button.onFocus();\n }\n\n private setCaptionBottom(): void {\n if (!this.creditEl() || this.resolvedCaptionPosition() !== 'over') {\n this.captionBottomOffset.set(null);\n return;\n }\n this.captionBottomOffset.set(`${this.creditEl().nativeElement.offsetHeight}px`);\n }\n}\n","<figure class=\"ecl-media-container__figure\" [class.ecl-media-container--full-width]=\"isFullWidth()\" [style.--ecl-caption-bottom]=\"captionBottomOffset()\">\n @if (hasVideo()) {\n <div class=\"ecl-media-container__video-wrapper\">\n <ng-content select=\"video[eclMediaContainerItem]\"></ng-content>\n @if (eclAutoplay()) {\n <button #playButton eclButton variant=\"tertiary\" isIconOnly class=\"ecl-media-container__play\" (click)=\"onVideoPlay()\"\n [style.display]=\"isPlaying ? 'none' : 'flex'\" type=\"button\">\n <span eclButtonLabel>Play</span>\n <ecl-icon icon=\"play-outline\" size=\"m\"></ecl-icon>\n </button>\n <button #pauseButton eclButton variant=\"tertiary\" isIconOnly class=\"ecl-media-container__pause\" (click)=\"onVideoPause()\"\n [style.display]=\"isPlaying ? 'flex' : 'none'\" type=\"button\">\n <span eclButtonLabel>Pause</span>\n <ecl-icon icon=\"pause-outline\" size=\"m\"></ecl-icon>\n </button>\n }\n </div>\n }\n <ng-content select=\"div[eclMediaContainerItem]\"></ng-content>\n <ng-content select=\"picture[eclMediaContainerPicture]\"></ng-content>\n\n <ng-content select=\"figcaption[eclMediaContainerCaption]\"></ng-content>\n <ng-content select=\"footer[eclMediaContainerCredit]\"></ng-content>\n <ng-content select=\"ecl-expandable\"></ng-content>\n</figure>\n","import { EclMediaContainerIframeDirective } from './ecl-media-container-iframe.directive';\nimport { EclMediaContainerItemAudioDescriptionDirective } from './ecl-media-container-item-audio-description.directive';\nimport { EclMediaContainerItemDirective } from './ecl-media-container-item.directive';\nimport { EclMediaContainerPictureDirective } from './ecl-media-container-picture.directive';\nimport { EclMediaContainerCaptionDirective } from './ecl-media-container-caption.directive';\nimport { EclMediaContainerCreditDirective } from './ecl-media-container-credit.directive';\nimport { EclMediaContainerComponent } from './ecl-media-container.component';\n\nexport * from './ecl-media-container.component';\nexport * from './ecl-media-container-item.directive';\nexport * from './ecl-media-container-iframe.directive';\nexport * from './ecl-media-container-picture.directive';\nexport * from './ecl-media-container-item-audio-description.directive';\nexport * from './ecl-media-container-caption.directive';\nexport * from './ecl-media-container-credit.directive';\n\nexport const EUI_ECL_MEDIA_CONTAINER = [\n EclMediaContainerComponent,\n EclMediaContainerItemDirective,\n EclMediaContainerIframeDirective,\n EclMediaContainerPictureDirective,\n EclMediaContainerItemAudioDescriptionDirective,\n EclMediaContainerCaptionDirective,\n EclMediaContainerCreditDirective,\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-media-container.mjs","sources":["../../components/ecl-media-container/ecl-media-container-iframe.directive.ts","../../components/ecl-media-container/ecl-media-container-item-audio-description.directive.ts","../../components/ecl-media-container/ecl-media-container-item.directive.ts","../../components/ecl-media-container/ecl-media-container-picture.directive.ts","../../components/ecl-media-container/ecl-media-container-caption.directive.ts","../../components/ecl-media-container/ecl-media-container-credit.directive.ts","../../components/ecl-media-container/ecl-media-container.component.ts","../../components/ecl-media-container/ecl-media-container.component.html","../../components/ecl-media-container/index.ts","../../components/ecl-media-container/eui-ecl-components-ecl-media-container.ts"],"sourcesContent":["import { Directive, ElementRef, inject, input } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Adds styling and attributes to the iframe element.\n */\n@Directive({\n selector: 'iframe[eclMediaContainerIframe]',\n host: {\n '[style.aspect-ratio]': 'ratio',\n },\n})\nexport class EclMediaContainerIframeDirective extends ECLBaseDirective {\n readonly width = input(undefined);\n readonly height = input(undefined);\n\n hasCustomRatio = false;\n private elem = inject(ElementRef);\n\n /**\n * Aspect ratio applied as a host style binding. Derived from the\n * `width`/`height` inputs (falling back to the element's measured size),\n * and only produced when a custom ratio is requested.\n */\n get ratio(): string | null {\n return this.hasCustomRatio ? this.calculateCustomRatio() : null;\n }\n\n calculateCustomRatio(): string {\n let iframeHeight = this.height();\n let iframeWidth = this.width();\n if (!iframeWidth || !iframeHeight) {\n iframeWidth = this.elem.nativeElement.offsetWidth;\n iframeHeight = this.elem.nativeElement.offsetHeight;\n }\n return `${iframeWidth}/${iframeHeight}`;\n }\n}\n","import { Directive } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Adds styling to the media container description.\n */\n@Directive({\n selector: '[eclMediaContainerItemAudioDescription]',\n host: {\n '[class]': 'cssClasses',\n },\n})\nexport class EclMediaContainerItemAudioDescriptionDirective extends ECLBaseDirective {\n get cssClasses(): string {\n return [super.getCssClasses('ecl-media-container__media-audio')].join(' ').trim();\n }\n}\n","import { AfterContentInit, Directive, ElementRef, PLATFORM_ID, afterNextRender, inject, input, contentChild } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclMediaContainerIframeDirective } from './ecl-media-container-iframe.directive';\nimport { isPlatformBrowser } from '@angular/common';\n\n/**\n * Adds styling and functionality to the media container item /image.\n */\n@Directive({\n selector: '[eclMediaContainerItem], img[eclMediaContainerImage]',\n host: {\n '[class]': 'cssClasses',\n },\n})\nexport class EclMediaContainerItemDirective extends ECLBaseDirective implements AfterContentInit {\n el = inject(ElementRef);\n\n readonly ratio = input<string>(undefined);\n readonly contentIframe = contentChild(EclMediaContainerIframeDirective);\n\n get cssClasses(): string {\n const ratio = this.ratio();\n return [\n super.getCssClasses('ecl-media-container__media'),\n ratio ? `ecl-media-container__media--ratio-${ratio}` : '',\n this.isVideo ? 'ecl-video' : '',\n ]\n .join(' ')\n .trim();\n }\n\n public isVideo = false;\n private platformId = inject(PLATFORM_ID);\n\n constructor() {\n super();\n afterNextRender(() => {\n this.setIframeUrl();\n });\n }\n\n ngAfterContentInit(): void {\n const contentIframe = this.contentIframe();\n if (contentIframe) {\n contentIframe.hasCustomRatio = this.ratio() ? false : true;\n }\n if (isPlatformBrowser(this.platformId)) {\n const selector = this.el.nativeElement.tagName;\n this.isVideo = selector === 'VIDEO';\n }\n }\n\n // TODO: is this really needed?\n setIframeUrl(): void {\n if (this.el.nativeElement.lastChild && this.el.nativeElement.lastChild.nodeName === 'IFRAME') {\n const iframe = this.el.nativeElement.lastChild;\n const iframeUrl = new URL(iframe.src);\n if (iframeUrl.host.includes('youtube')) {\n iframe.src = iframeUrl;\n }\n }\n }\n}\n","import { Directive } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Applies styles for the picture element.\n */\n@Directive({\n selector: 'picture[eclMediaContainerPicture]',\n host: {\n '[class]': 'cssClasses',\n },\n})\nexport class EclMediaContainerPictureDirective extends ECLBaseDirective {\n get cssClasses(): string {\n return [super.getCssClasses('ecl-picture ecl-media-container__picture')].join(' ').trim();\n }\n}\n","import { Directive } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Adds styling and attributes to the media container caption element.\n */\n@Directive({\n selector: 'figcaption[eclMediaContainerCaption]',\n host: {\n '[class]': 'cssClasses',\n },\n})\nexport class EclMediaContainerCaptionDirective extends ECLBaseDirective {\n get cssClasses(): string {\n return [super.getCssClasses('ecl-media-container__caption')].join(' ').trim();\n }\n}\n","import { Directive } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Adds styling and attributes to the media container credit element.\n */\n@Directive({\n selector: 'footer[eclMediaContainerCredit]',\n host: {\n '[class]': 'cssClasses',\n },\n})\nexport class EclMediaContainerCreditDirective extends ECLBaseDirective {\n get cssClasses(): string {\n return [super.getCssClasses('ecl-media-container__credit')].join(' ').trim();\n }\n}\n","import { isPlatformBrowser } from '@angular/common';\nimport { AfterContentInit, booleanAttribute, Component, computed, contentChild, DOCUMENT, ElementRef, inject, input, OnDestroy, PLATFORM_ID, Renderer2, signal, viewChildren, viewChild } from '@angular/core';\nimport { EclButtonComponent, EUI_ECL_BUTTON } from '@eui/ecl/components/ecl-button';\nimport { EclExpandableComponent } from '@eui/ecl/components/ecl-expandable';\nimport { EUI_ECL_ICON } from '@eui/ecl/components/ecl-icon';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { auditTime, fromEvent, Subject, take, takeUntil, timer } from 'rxjs';\nimport { EclMediaContainerCreditDirective } from './ecl-media-container-credit.directive';\nimport { EclMediaContainerItemDirective } from './ecl-media-container-item.directive';\n\n/**\n * A media container is used to display media items (video, audio, image or other data) with a caption.\n */\n@Component({\n selector: 'ecl-media-container',\n templateUrl: './ecl-media-container.component.html',\n imports: [...EUI_ECL_BUTTON, ...EUI_ECL_ICON],\n host: {\n '[class]': 'cssClasses()',\n },\n styles: [\n `\n :host {\n display: block;\n }\n `,\n ],\n})\n\nexport class EclMediaContainerComponent extends ECLBaseDirective implements AfterContentInit, OnDestroy {\n readonly isFullWidth = input(false, { transform: booleanAttribute });\n /**\n * Used for a video only - if the video should play immediately.\n */\n readonly eclAutoplay = input(false, { transform: booleanAttribute });\n\n captionPosition = input<'over' | 'bottom' | 'hidden'>('bottom');\n\n /**\n * Allows a parent component to override the caption position programmatically.\n */\n captionPositionOverride = signal<'over' | 'bottom' | 'hidden' | null>(null);\n\n readonly expandable = contentChild(EclExpandableComponent);\n readonly eclMediaContainerItem = contentChild(EclMediaContainerItemDirective);\n readonly eclButtons = viewChildren(EclButtonComponent);\n readonly pauseButton = viewChild<EclButtonComponent>('pauseButton');\n readonly playButton = viewChild<EclButtonComponent>('playButton');\n private creditEl = contentChild(EclMediaContainerCreditDirective, { read: ElementRef });\n private readonly document = inject<Document>(DOCUMENT);\n private readonly window = this.document.defaultView;\n\n captionBottomOffset = signal<string | null>(null);\n\n /**\n * Resolved caption position considering the override.\n */\n resolvedCaptionPosition = computed(() => this.captionPositionOverride() ?? this.captionPosition());\n\n /**\n * Applies specific classes for the component.\n */\n cssClasses = computed(() => {\n const position = this.resolvedCaptionPosition();\n return [super.getCssClasses('ecl-media-container'),\n position !== 'bottom' ? `ecl-media-container--caption-${position}` : '',\n ].join(' ').trim();\n });\n\n hasVideo = signal(false);\n\n public isPlaying = false;\n private readonly DELAY = 0;\n private renderer = inject(Renderer2);\n private removeVideoListeners: (() => void)[] = [];\n private platformId = inject(PLATFORM_ID);\n private destroy$: Subject<boolean> = new Subject<boolean>();\n\n ngAfterContentInit(): void {\n if (isPlatformBrowser(this.platformId)) {\n const eclMediaContainerItem = this.eclMediaContainerItem();\n this.hasVideo.set(eclMediaContainerItem?.isVideo ?? false);\n\n if (this.hasVideo() && this.eclAutoplay()) {\n const videoEl = eclMediaContainerItem?.el?.nativeElement as HTMLVideoElement | undefined;\n if (videoEl) {\n this.removeVideoListeners.push(\n this.renderer.listen(videoEl, 'play', () => (this.isPlaying = true)),\n this.renderer.listen(videoEl, 'pause', () => (this.isPlaying = false)),\n );\n\n this.renderer.setAttribute(videoEl, 'loop', '');\n this.renderer.setAttribute(videoEl, 'muted', '');\n this.renderer.setProperty(videoEl, 'muted', true);\n this.renderer.removeAttribute(videoEl, 'controls');\n }\n }\n this.setCaptionBottom();\n fromEvent(this.window, 'resize').pipe(\n auditTime(50),\n takeUntil(this.destroy$)).subscribe(() => {\n this.setCaptionBottom();\n });\n }\n\n const expandable = this.expandable();\n if (expandable) {\n expandable.class = [expandable.class, 'ecl-media-container__expandable'].join(' ');\n }\n }\n\n ngOnDestroy(): void {\n for (const unlisten of this.removeVideoListeners) unlisten();\n this.removeVideoListeners = [];\n this.destroy$.next(true);\n this.destroy$.unsubscribe();\n }\n\n /**\n * When user clicks on 'play' button -> start the video and move the focus to the 'pause' button.\n */\n onVideoPlay(): void {\n const videoEl = this.eclMediaContainerItem().el.nativeElement;\n videoEl.play();\n\n timer(this.DELAY).pipe(take(1)).subscribe(() => {\n const pauseButton = this.eclButtons().find(\n button => button === this.pauseButton());\n this.focusOnButton(pauseButton);\n });\n }\n\n /**\n * When user clicks on 'pause' button -> pause the video and move the focus to the 'play' button.\n */\n onVideoPause(): void {\n const videoEl = this.eclMediaContainerItem().el.nativeElement;\n videoEl.pause();\n\n timer(this.DELAY).pipe(take(1)).subscribe(() => {\n const playButton = this.eclButtons().find(\n button => button === this.playButton());\n this.focusOnButton(playButton);\n });\n }\n\n private focusOnButton(button: EclButtonComponent): void {\n if (!button) {\n return;\n }\n button.onFocus();\n }\n\n private setCaptionBottom(): void {\n if (!this.creditEl() || this.resolvedCaptionPosition() !== 'over') {\n this.captionBottomOffset.set(null);\n return;\n }\n this.captionBottomOffset.set(`${this.creditEl().nativeElement.offsetHeight}px`);\n }\n}\n","<figure class=\"ecl-media-container__figure\" [class.ecl-media-container--full-width]=\"isFullWidth()\" [style.--ecl-caption-bottom]=\"captionBottomOffset()\">\n @if (hasVideo()) {\n <div class=\"ecl-media-container__video-wrapper\">\n <ng-content select=\"video[eclMediaContainerItem]\"></ng-content>\n @if (eclAutoplay()) {\n <button #playButton eclButton variant=\"tertiary\" isIconOnly class=\"ecl-media-container__play\" (click)=\"onVideoPlay()\"\n [style.display]=\"isPlaying ? 'none' : 'flex'\" type=\"button\">\n <span eclButtonLabel>Play</span>\n <ecl-icon icon=\"play-outline\" size=\"m\"></ecl-icon>\n </button>\n <button #pauseButton eclButton variant=\"tertiary\" isIconOnly class=\"ecl-media-container__pause\" (click)=\"onVideoPause()\"\n [style.display]=\"isPlaying ? 'flex' : 'none'\" type=\"button\">\n <span eclButtonLabel>Pause</span>\n <ecl-icon icon=\"pause-outline\" size=\"m\"></ecl-icon>\n </button>\n }\n </div>\n }\n <ng-content select=\"div[eclMediaContainerItem]\"></ng-content>\n <ng-content select=\"picture[eclMediaContainerPicture]\"></ng-content>\n\n <ng-content select=\"figcaption[eclMediaContainerCaption]\"></ng-content>\n <ng-content select=\"footer[eclMediaContainerCredit]\"></ng-content>\n <ng-content select=\"ecl-expandable\"></ng-content>\n</figure>\n","import { EclMediaContainerIframeDirective } from './ecl-media-container-iframe.directive';\nimport { EclMediaContainerItemAudioDescriptionDirective } from './ecl-media-container-item-audio-description.directive';\nimport { EclMediaContainerItemDirective } from './ecl-media-container-item.directive';\nimport { EclMediaContainerPictureDirective } from './ecl-media-container-picture.directive';\nimport { EclMediaContainerCaptionDirective } from './ecl-media-container-caption.directive';\nimport { EclMediaContainerCreditDirective } from './ecl-media-container-credit.directive';\nimport { EclMediaContainerComponent } from './ecl-media-container.component';\n\nexport * from './ecl-media-container.component';\nexport * from './ecl-media-container-item.directive';\nexport * from './ecl-media-container-iframe.directive';\nexport * from './ecl-media-container-picture.directive';\nexport * from './ecl-media-container-item-audio-description.directive';\nexport * from './ecl-media-container-caption.directive';\nexport * from './ecl-media-container-credit.directive';\n\nexport const EUI_ECL_MEDIA_CONTAINER = [\n EclMediaContainerComponent,\n EclMediaContainerItemDirective,\n EclMediaContainerIframeDirective,\n EclMediaContainerPictureDirective,\n EclMediaContainerItemAudioDescriptionDirective,\n EclMediaContainerCaptionDirective,\n EclMediaContainerCreditDirective,\n] as const;","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eui-ecl-components-ecl-label.d.ts","sources":["../../components/ecl-label/ecl-label.directive.ts","../../components/ecl-label/index.ts"],"mappings":";;;AAGA;;;;;AAKG;AACH,
|
|
1
|
+
{"version":3,"file":"eui-ecl-components-ecl-label.d.ts","sources":["../../components/ecl-label/ecl-label.directive.ts","../../components/ecl-label/index.ts"],"mappings":";;;AAGA;;;;;AAKG;AACH,cAMa,iBAAkB,SAAQ,gBAAgB;AACnD;;;;;;;;;AASG;sBACaA,EAAA,CAAA,WAAA;AAEhB;;;AAGG;;yCAhBM,iBAAiB;2CAAjB,iBAAiB;AAoB7B;;AC/BD,cAAa,aAAa,mBAAA,iBAAA;;;;","names":["_angular_core"]}
|