@eui/ecl 22.0.0-alpha.22 → 22.0.0-alpha.24

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/llms.txt CHANGED
@@ -1,6 +1,6 @@
1
1
  # eui documentation
2
2
 
3
- > Generated by compodoc 2.0.0 at 2026-09-25T12:13:20.628Z, llm-md export.
3
+ > Generated by compodoc 2.0.0 at 2026-09-25T17:02:12.228Z, llm-md export.
4
4
 
5
5
  ## Modules
6
6
 
@@ -5464,11 +5464,11 @@ Inputs:
5464
5464
  - `tabindex: number`
5465
5465
 
5466
5466
  Outputs:
5467
- - `click: EventEmitter = new EventEmitter()` — Event emitted when the toggle element is clicked with the left mouse button.
5467
+ - `click` — Event emitted when the toggle element is clicked with the left mouse button.
5468
5468
 
5469
5469
  Properties:
5470
5470
  - `hostElementRef: unknown = inject(ElementRef)`
5471
- - `isExpanded: unknown = false` — Sets the aria-expanded attribute to reflect the popover's open state. This should be updated by the parent popover component.
5471
+ - `isExpanded: unknown = signal(false)` — Sets the aria-expanded attribute to reflect the popover's open state. This should be updated by the parent popover component.
5472
5472
 
5473
5473
  Methods:
5474
5474
  - `getHostElement(): HTMLElement` — Returns the native HTML element of the directive. Used internally by the popover to query attributes.
@@ -128,7 +128,7 @@
128
128
  </ol>
129
129
  <ul class="properties-list">
130
130
  <li>
131
- <b>Version</b> : 22.0.0-alpha.22</li>
131
+ <b>Version</b> : 22.0.0-alpha.24</li>
132
132
  </ul>
133
133
 
134
134
 
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { inject, ElementRef, EventEmitter, HostListener, HostBinding, Output, Directive, viewChild, contentChild, output, Renderer2, DOCUMENT, PLATFORM_ID, Component } from '@angular/core';
2
+ import { inject, ElementRef, signal, output, Directive, viewChild, contentChild, Renderer2, Injector, DOCUMENT, PLATFORM_ID, runInInjectionContext, Component } from '@angular/core';
3
3
  import { Subject, fromEvent, auditTime, takeUntil } from 'rxjs';
4
4
  import * as i1 from '@eui/ecl/core';
5
5
  import { ECLBaseDirective, ECLClickOutsideDirective } from '@eui/ecl/core';
@@ -8,6 +8,7 @@ import { EUI_ECL_BUTTON } from '@eui/ecl/components/ecl-button';
8
8
  import * as i3 from '@eui/ecl/components/ecl-icon';
9
9
  import { EUI_ECL_ICON } from '@eui/ecl/components/ecl-icon';
10
10
  import { isPlatformBrowser } from '@angular/common';
11
+ import { outputToObservable } from '@angular/core/rxjs-interop';
11
12
 
12
13
  /**
13
14
  * Directive used to toggle the visibility of an `ecl-popover` component.
@@ -22,12 +23,13 @@ class EclPopoverToggleDirective extends ECLBaseDirective {
22
23
  * Sets the `aria-expanded` attribute to reflect the popover's open state.
23
24
  * This should be updated by the parent popover component.
24
25
  */
25
- this.isExpanded = false;
26
+ this.isExpanded = signal(false, /* @ts-ignore */
27
+ ...(ngDevMode ? [{ debugName: "isExpanded" }] : /* istanbul ignore next */ []));
26
28
  /**
27
29
  * Event emitted when the toggle element is clicked with the left mouse button.
28
30
  */
29
31
  // eslint-disable-next-line @angular-eslint/no-output-native
30
- this.click = new EventEmitter();
32
+ this.click = output();
31
33
  }
32
34
  /**
33
35
  * Host binding that applies the appropriate CSS class to the toggle element.
@@ -42,7 +44,7 @@ class EclPopoverToggleDirective extends ECLBaseDirective {
42
44
  onClick(evt) {
43
45
  const LEFT_BUTTON = 0;
44
46
  if (evt.button === LEFT_BUTTON) {
45
- this.click.next(null);
47
+ this.click.emit();
46
48
  }
47
49
  }
48
50
  /**
@@ -50,7 +52,7 @@ class EclPopoverToggleDirective extends ECLBaseDirective {
50
52
  */
51
53
  onKeyboardActivate(evt) {
52
54
  evt.preventDefault();
53
- this.click.next(null);
55
+ this.click.emit();
54
56
  }
55
57
  /**
56
58
  * Returns the native HTML element of the directive.
@@ -60,31 +62,21 @@ class EclPopoverToggleDirective extends ECLBaseDirective {
60
62
  return this.hostElementRef.nativeElement;
61
63
  }
62
64
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: EclPopoverToggleDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
63
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.2", type: EclPopoverToggleDirective, isStandalone: true, selector: "[eclPopoverToggle]", outputs: { click: "click" }, host: { listeners: { "mouseup": "onClick($event)", "keydown.enter": "onKeyboardActivate($event)", "keydown.space": "onKeyboardActivate($event)" }, properties: { "attr.aria-expanded": "this.isExpanded", "class": "this.cssClasses" } }, usesInheritance: true, ngImport: i0 }); }
65
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.2", type: EclPopoverToggleDirective, isStandalone: true, selector: "[eclPopoverToggle]", outputs: { click: "click" }, host: { listeners: { "mouseup": "onClick($event)", "keydown.enter": "onKeyboardActivate($event)", "keydown.space": "onKeyboardActivate($event)" }, properties: { "attr.aria-expanded": "isExpanded()", "class": "cssClasses" } }, usesInheritance: true, ngImport: i0 }); }
64
66
  }
65
67
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: EclPopoverToggleDirective, decorators: [{
66
68
  type: Directive,
67
69
  args: [{
68
70
  selector: '[eclPopoverToggle]',
71
+ host: {
72
+ '[attr.aria-expanded]': 'isExpanded()',
73
+ '[class]': 'cssClasses',
74
+ '(mouseup)': 'onClick($event)',
75
+ '(keydown.enter)': 'onKeyboardActivate($event)',
76
+ '(keydown.space)': 'onKeyboardActivate($event)',
77
+ },
69
78
  }]
70
- }], propDecorators: { isExpanded: [{
71
- type: HostBinding,
72
- args: ['attr.aria-expanded']
73
- }], click: [{
74
- type: Output
75
- }], cssClasses: [{
76
- type: HostBinding,
77
- args: ['class']
78
- }], onClick: [{
79
- type: HostListener,
80
- args: ['mouseup', ['$event']]
81
- }], onKeyboardActivate: [{
82
- type: HostListener,
83
- args: ['keydown.enter', ['$event']]
84
- }, {
85
- type: HostListener,
86
- args: ['keydown.space', ['$event']]
87
- }] } });
79
+ }], propDecorators: { click: [{ type: i0.Output, args: ["click"] }] } });
88
80
 
89
81
  /**
90
82
  * Component representing an ECL Popover.
@@ -128,6 +120,7 @@ class EclPopoverComponent extends ECLBaseDirective {
128
120
  this.scrollableParent = null;
129
121
  this.el = inject(ElementRef);
130
122
  this.renderer = inject(Renderer2);
123
+ this.injector = inject(Injector);
131
124
  this.document = inject(DOCUMENT);
132
125
  this.window = this.document.defaultView; // Window | null
133
126
  this.platformId = inject(PLATFORM_ID);
@@ -157,16 +150,20 @@ class EclPopoverComponent extends ECLBaseDirective {
157
150
  ngAfterContentInit() {
158
151
  if (!isPlatformBrowser(this.platformId))
159
152
  return;
160
- this.eclPopoverToggle()?.click.pipe(takeUntil(this.destroy$)).subscribe(() => {
161
- if (this.isHidden) {
162
- this.doOpen();
163
- }
164
- else {
165
- this.doClose();
166
- }
167
- this.checkPosition(); // TODO: wrap on a platformBrowser check as it calls window and document
168
- });
169
- this.scrollableParent = this.getClosestScrollableParent(this.eclPopoverToggle()?.hostElementRef.nativeElement);
153
+ const toggle = this.eclPopoverToggle();
154
+ if (toggle) {
155
+ runInInjectionContext(this.injector, () => outputToObservable(toggle.click))
156
+ .pipe(takeUntil(this.destroy$)).subscribe(() => {
157
+ if (this.isHidden) {
158
+ this.doOpen();
159
+ }
160
+ else {
161
+ this.doClose();
162
+ }
163
+ this.checkPosition(); // TODO: wrap on a platformBrowser check as it calls window and document
164
+ });
165
+ }
166
+ this.scrollableParent = this.getClosestScrollableParent(toggle?.hostElementRef.nativeElement);
170
167
  }
171
168
  /**
172
169
  * Lifecycle hook that cleans up subscriptions on destroy.
@@ -208,11 +205,13 @@ class EclPopoverComponent extends ECLBaseDirective {
208
205
  */
209
206
  doClose() {
210
207
  this.isHidden = true;
208
+ this.eclPopoverToggle()?.isExpanded.set(false);
211
209
  this.resetStyles();
212
210
  this.closeEvent.emit();
213
211
  }
214
212
  doOpen() {
215
213
  this.isHidden = false;
214
+ this.eclPopoverToggle()?.isExpanded.set(true);
216
215
  this.openEvent.emit();
217
216
  }
218
217
  getClosestScrollableParent(element) {
@@ -417,11 +416,16 @@ class EclPopoverComponent extends ECLBaseDirective {
417
416
  }
418
417
  }
419
418
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: EclPopoverComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
420
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "22.1.2", type: EclPopoverComponent, isStandalone: true, selector: "ecl-popover", outputs: { openEvent: "openEvent", closeEvent: "closeEvent" }, host: { listeners: { "eclClickOutside": "onClickOutsidePopover()", "document:keydown.escape": "onEscapeKeydownHandler()", "document:scroll": "onDocumentScroll()" }, properties: { "class": "this.cssClasses" } }, queries: [{ propertyName: "eclPopoverToggle", first: true, predicate: EclPopoverToggleDirective, descendants: true, isSignal: true }], viewQueries: [{ propertyName: "eclPopoverContainerElement", first: true, predicate: ["container"], descendants: true, isSignal: true }, { propertyName: "eclPopoverScrollableElement", first: true, predicate: ["scrollable"], descendants: true, isSignal: true }], usesInheritance: true, hostDirectives: [{ directive: i1.ECLClickOutsideDirective, outputs: ["eclClickOutside", "eclClickOutside"] }], ngImport: i0, template: "<ng-content select=\"[eclPopoverToggle]\"></ng-content>\n\n<div #container class=\"ecl-popover__container\" [hidden]=\"isHidden\"\n [attr.id]=\"popoverToggleAriaControls\">\n <div #scrollable class=\"ecl-popover__scrollable\">\n <button eclButton variant=\"tertiary\" (click)=\"doClose()\" class=\"ecl-popover__close\" isIconOnly type=\"button\">\n <span eclButtonLabel>Close</span>\n <ecl-icon icon=\"close\" size=\"m\"></ecl-icon>\n </button>\n <ng-content select=\"[eclPopoverContent]\"></ng-content>\n </div>\n</div>\n", dependencies: [{ kind: "component", type: i2.EclButtonComponent, selector: "button[eclButton], button[ecl-button], a[eclButton]", inputs: ["isIconOnly", "variant", "eclStyle", "size", "containerStyleClass"] }, { kind: "directive", type: i2.EclButtonLabelDirective, selector: "[eclButtonLabel]" }, { kind: "component", type: i3.EclIconComponent, selector: "ecl-icon", inputs: ["iconSet", "icon", "size", "color", "transform", "ariaLabelledby", "role", "title", "ariaHidden", "focusable", "isFlipHorizontal"] }] }); }
419
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "22.1.2", type: EclPopoverComponent, isStandalone: true, selector: "ecl-popover", outputs: { openEvent: "openEvent", closeEvent: "closeEvent" }, host: { listeners: { "eclClickOutside": "onClickOutsidePopover()", "document:keydown.escape": "onEscapeKeydownHandler()", "document:scroll": "onDocumentScroll()" }, properties: { "class": "cssClasses" } }, queries: [{ propertyName: "eclPopoverToggle", first: true, predicate: EclPopoverToggleDirective, descendants: true, isSignal: true }], viewQueries: [{ propertyName: "eclPopoverContainerElement", first: true, predicate: ["container"], descendants: true, isSignal: true }, { propertyName: "eclPopoverScrollableElement", first: true, predicate: ["scrollable"], descendants: true, isSignal: true }], usesInheritance: true, hostDirectives: [{ directive: i1.ECLClickOutsideDirective, outputs: ["eclClickOutside", "eclClickOutside"] }], ngImport: i0, template: "<ng-content select=\"[eclPopoverToggle]\"></ng-content>\n\n<div #container class=\"ecl-popover__container\" [hidden]=\"isHidden\"\n [attr.id]=\"popoverToggleAriaControls\">\n <div #scrollable class=\"ecl-popover__scrollable\">\n <button eclButton variant=\"tertiary\" (click)=\"doClose()\" class=\"ecl-popover__close\" isIconOnly type=\"button\">\n <span eclButtonLabel>Close</span>\n <ecl-icon icon=\"close\" size=\"m\"></ecl-icon>\n </button>\n <ng-content select=\"[eclPopoverContent]\"></ng-content>\n </div>\n</div>\n", dependencies: [{ kind: "component", type: i2.EclButtonComponent, selector: "button[eclButton], button[ecl-button], a[eclButton]", inputs: ["isIconOnly", "variant", "eclStyle", "size", "containerStyleClass"] }, { kind: "directive", type: i2.EclButtonLabelDirective, selector: "[eclButtonLabel]" }, { kind: "component", type: i3.EclIconComponent, selector: "ecl-icon", inputs: ["iconSet", "icon", "size", "color", "transform", "ariaLabelledby", "role", "title", "ariaHidden", "focusable", "isFlipHorizontal"] }] }); }
421
420
  }
422
421
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: EclPopoverComponent, decorators: [{
423
422
  type: Component,
424
- args: [{ selector: 'ecl-popover', hostDirectives: [
423
+ args: [{ selector: 'ecl-popover', host: {
424
+ '[class]': 'cssClasses',
425
+ '(eclClickOutside)': 'onClickOutsidePopover()',
426
+ '(document:keydown.escape)': 'onEscapeKeydownHandler()',
427
+ '(document:scroll)': 'onDocumentScroll()',
428
+ }, hostDirectives: [
425
429
  {
426
430
  directive: ECLClickOutsideDirective,
427
431
  outputs: ['eclClickOutside'],
@@ -430,19 +434,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImpor
430
434
  ...EUI_ECL_BUTTON,
431
435
  ...EUI_ECL_ICON,
432
436
  ], template: "<ng-content select=\"[eclPopoverToggle]\"></ng-content>\n\n<div #container class=\"ecl-popover__container\" [hidden]=\"isHidden\"\n [attr.id]=\"popoverToggleAriaControls\">\n <div #scrollable class=\"ecl-popover__scrollable\">\n <button eclButton variant=\"tertiary\" (click)=\"doClose()\" class=\"ecl-popover__close\" isIconOnly type=\"button\">\n <span eclButtonLabel>Close</span>\n <ecl-icon icon=\"close\" size=\"m\"></ecl-icon>\n </button>\n <ng-content select=\"[eclPopoverContent]\"></ng-content>\n </div>\n</div>\n" }]
433
- }], propDecorators: { eclPopoverContainerElement: [{ type: i0.ViewChild, args: ['container', { isSignal: true }] }], eclPopoverScrollableElement: [{ type: i0.ViewChild, args: ['scrollable', { isSignal: true }] }], eclPopoverToggle: [{ type: i0.ContentChild, args: [i0.forwardRef(() => EclPopoverToggleDirective), { isSignal: true }] }], openEvent: [{ type: i0.Output, args: ["openEvent"] }], closeEvent: [{ type: i0.Output, args: ["closeEvent"] }], cssClasses: [{
434
- type: HostBinding,
435
- args: ['class']
436
- }], onClickOutsidePopover: [{
437
- type: HostListener,
438
- args: ['eclClickOutside']
439
- }], onEscapeKeydownHandler: [{
440
- type: HostListener,
441
- args: ['document:keydown.escape']
442
- }], onDocumentScroll: [{
443
- type: HostListener,
444
- args: ['document:scroll']
445
- }] } });
437
+ }], propDecorators: { eclPopoverContainerElement: [{ type: i0.ViewChild, args: ['container', { isSignal: true }] }], eclPopoverScrollableElement: [{ type: i0.ViewChild, args: ['scrollable', { isSignal: true }] }], eclPopoverToggle: [{ type: i0.ContentChild, args: [i0.forwardRef(() => EclPopoverToggleDirective), { isSignal: true }] }], openEvent: [{ type: i0.Output, args: ["openEvent"] }], closeEvent: [{ type: i0.Output, args: ["closeEvent"] }] } });
446
438
 
447
439
  /**
448
440
  * Directive applied to the content section of an `ecl-popover` component.
@@ -457,17 +449,17 @@ class EclPopoverContentDirective extends ECLBaseDirective {
457
449
  return [super.getCssClasses('ecl-popover__content')].join(' ').trim();
458
450
  }
459
451
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: EclPopoverContentDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
460
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.2", type: EclPopoverContentDirective, isStandalone: true, selector: "[eclPopoverContent]", host: { properties: { "class": "this.cssClasses" } }, usesInheritance: true, ngImport: i0 }); }
452
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.2", type: EclPopoverContentDirective, isStandalone: true, selector: "[eclPopoverContent]", host: { properties: { "class": "cssClasses" } }, usesInheritance: true, ngImport: i0 }); }
461
453
  }
462
454
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: EclPopoverContentDirective, decorators: [{
463
455
  type: Directive,
464
456
  args: [{
465
457
  selector: '[eclPopoverContent]',
458
+ host: {
459
+ '[class]': 'cssClasses',
460
+ },
466
461
  }]
467
- }], propDecorators: { cssClasses: [{
468
- type: HostBinding,
469
- args: ['class']
470
- }] } });
462
+ }] });
471
463
 
472
464
  const EUI_ECL_POPOVER = [
473
465
  EclPopoverComponent,
@@ -1 +1 @@
1
- {"version":3,"file":"eui-ecl-components-ecl-popover.mjs","sources":["../../components/ecl-popover/ecl-popover-toggle.directive.ts","../../components/ecl-popover/ecl-popover.component.ts","../../components/ecl-popover/ecl-popover.component.html","../../components/ecl-popover/ecl-popover-content.directive.ts","../../components/ecl-popover/index.ts","../../components/ecl-popover/eui-ecl-components-ecl-popover.ts"],"sourcesContent":["import { Directive, ElementRef, EventEmitter, HostBinding, HostListener, Output, inject } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Directive used to toggle the visibility of an `ecl-popover` component.\n *\n * This directive emits a custom click event and manages accessibility attributes.\n */\n@Directive({\n selector: '[eclPopoverToggle]',\n})\nexport class EclPopoverToggleDirective extends ECLBaseDirective {\n hostElementRef = inject(ElementRef);\n\n /**\n * Sets the `aria-expanded` attribute to reflect the popover's open state.\n * This should be updated by the parent popover component.\n */\n @HostBinding('attr.aria-expanded') isExpanded = false;\n\n /**\n * Event emitted when the toggle element is clicked with the left mouse button.\n */\n // eslint-disable-next-line @angular-eslint/no-output-native\n @Output() click = new EventEmitter();\n\n /**\n * Host binding that applies the appropriate CSS class to the toggle element.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-popover__toggle')].join(' ').trim();\n }\n\n /**\n * Emits the `click` event only for left mouse button clicks.\n * Used by the popover component to toggle visibility.\n */\n @HostListener('mouseup', ['$event'])\n onClick(evt: MouseEvent): void {\n const LEFT_BUTTON = 0;\n\n if (evt.button === LEFT_BUTTON) {\n this.click.next(null);\n }\n }\n\n /**\n * Triggers the click event on Enter or Space keydown and prevents default behavior.\n */\n @HostListener('keydown.enter', ['$event'])\n @HostListener('keydown.space', ['$event'])\n onKeyboardActivate(evt: Event): void {\n evt.preventDefault();\n this.click.next(null);\n }\n\n /**\n * Returns the native HTML element of the directive.\n * Used internally by the popover to query attributes.\n */\n public getHostElement(): HTMLElement {\n return this.hostElementRef.nativeElement;\n }\n}\n","import { AfterContentInit, AfterViewInit, Component, DOCUMENT, ElementRef, HostBinding, HostListener, OnDestroy, PLATFORM_ID, Renderer2, inject, output, viewChild, contentChild } from '@angular/core';\nimport { auditTime, fromEvent, Subject, takeUntil } from 'rxjs';\nimport { ECLClickOutsideDirective } from '@eui/ecl/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclPopoverToggleDirective } from './ecl-popover-toggle.directive';\nimport { EUI_ECL_BUTTON } from '@eui/ecl/components/ecl-button';\nimport { EUI_ECL_ICON } from '@eui/ecl/components/ecl-icon';\nimport { isPlatformBrowser } from '@angular/common';\n\n/**\n * Component representing an ECL Popover.\n *\n * It handles toggling visibility, positioning, and closing behavior of the popover.\n */\n@Component({\n selector: 'ecl-popover',\n templateUrl: './ecl-popover.component.html',\n hostDirectives: [\n {\n directive: ECLClickOutsideDirective,\n\n outputs: ['eclClickOutside'],\n },\n ],\n imports: [\n ...EUI_ECL_BUTTON,\n ...EUI_ECL_ICON,\n ],\n})\nexport class EclPopoverComponent extends ECLBaseDirective implements AfterViewInit, AfterContentInit, OnDestroy {\n /**\n * Reference to the popover container element.\n */\n readonly eclPopoverContainerElement = viewChild<ElementRef>('container');\n\n /**\n * Reference to the scrollable content element inside the popover.\n */\n readonly eclPopoverScrollableElement = viewChild<ElementRef>('scrollable');\n\n /**\n * Reference to the toggle element used to open/close the popover.\n */\n readonly eclPopoverToggle = contentChild(EclPopoverToggleDirective);\n\n openEvent = output();\n closeEvent = output();\n\n /**\n * Controls visibility of the popover. `true` means hidden.\n */\n protected isHidden = true;\n\n private destroy$: Subject<boolean> = new Subject<boolean>();\n\n private readonly topClass = 'ecl-popover--top';\n private readonly bottomClass = 'ecl-popover--bottom';\n private readonly leftClass = 'ecl-popover--left';\n private readonly rightClass = 'ecl-popover--right';\n private readonly pushTopClass = 'ecl-popover--push-top';\n private readonly pushBottomClass = 'ecl-popover--push-bottom';\n private readonly pushLeftClass = 'ecl-popover--push-left';\n private readonly pushRightClass = 'ecl-popover--push-right';\n private toggleRect = null;\n private scrollableParent = null;\n private el = inject(ElementRef);\n private renderer = inject(Renderer2);\n private readonly document = inject<Document>(DOCUMENT);\n private readonly window = this.document.defaultView; // Window | null\n private platformId = inject(PLATFORM_ID);\n\n @HostBinding('class')\n get cssClasses(): string {\n return [\n super.getCssClasses('ecl-popover'),\n ]\n .join(' ')\n .trim();\n }\n\n /**\n * Recalculates popover position when the window is resized.\n */\n ngAfterViewInit(): void {\n if (!isPlatformBrowser(this.platformId)) return;\n\n if (this.window) {\n fromEvent(this.window, 'resize').pipe(\n auditTime(50),\n takeUntil(this.destroy$)).subscribe(() => {\n this.checkPosition();\n });\n }\n }\n\n /**\n * Initializes event subscriptions for toggle button.\n */\n ngAfterContentInit(): void {\n if (!isPlatformBrowser(this.platformId)) return;\n this.eclPopoverToggle()?.click.pipe(takeUntil(this.destroy$)).subscribe(() => {\n if (this.isHidden) {\n this.doOpen();\n } else {\n this.doClose();\n }\n this.checkPosition(); // TODO: wrap on a platformBrowser check as it calls window and document\n });\n\n this.scrollableParent = this.getClosestScrollableParent(this.eclPopoverToggle()?.hostElementRef.nativeElement);\n }\n\n /**\n * Lifecycle hook that cleans up subscriptions on destroy.\n */\n ngOnDestroy(): void {\n this.destroy$.next(true);\n this.destroy$.unsubscribe();\n }\n\n /**\n * Returns the value of the `aria-controls` attribute from the toggle element,\n * if available. Used for accessibility linking.\n */\n get popoverToggleAriaControls(): string | null {\n return this.eclPopoverToggle()?.hostElementRef.nativeElement.getAttribute('aria-controls');\n }\n\n /**\n * Handler triggered when a click outside the popover is detected.\n * Closes the popover if it is open.\n */\n @HostListener('eclClickOutside')\n onClickOutsidePopover(): void {\n if (!this.isHidden) {\n this.doClose();\n }\n }\n\n /**\n * Closes the popover when the Escape key is pressed.\n */\n @HostListener('document:keydown.escape')\n onEscapeKeydownHandler(): void {\n this.doClose();\n }\n\n /**\n * Recalculates popover position when the document is scrolled.\n */\n @HostListener('document:scroll')\n onDocumentScroll(): void {\n this.checkPosition();\n }\n\n /**\n * Protected method used to close the popover and reset related styles.\n */\n protected doClose(): void {\n this.isHidden = true;\n this.resetStyles();\n this.closeEvent.emit();\n }\n\n private doOpen(): void {\n this.isHidden = false;\n this.openEvent.emit();\n }\n\n private getClosestScrollableParent(element: HTMLElement): HTMLElement {\n let parent = element.parentElement;\n\n while (parent) {\n const { overflowY, overflowX } = getComputedStyle(parent);\n const isScrollableY =\n (overflowY === 'auto' || overflowY === 'scroll') &&\n parent.scrollHeight > parent.clientHeight;\n const isScrollableX =\n (overflowX === 'auto' || overflowX === 'scroll') &&\n parent.scrollWidth > parent.clientWidth;\n\n if (isScrollableY || isScrollableX) {\n return parent; // Found the closest scrollable parent\n }\n\n parent = parent.parentElement;\n }\n\n return this.document.body;\n }\n\n private calculateAvailableSpace(toggleElement, scrollableParent = null) {\n // Get the bounding rect for the toggle element\n this.toggleRect = toggleElement.getBoundingClientRect();\n\n // If no scrollable parent is provided, use the viewport\n const containerRect = scrollableParent\n ? scrollableParent.getBoundingClientRect()\n : {\n top: 0,\n left: 0,\n right: this.window.innerWidth,\n bottom: this.window.innerHeight,\n };\n const containerWidth = containerRect.right - containerRect.left;\n const containerHeight = containerRect.bottom - containerRect.top;\n // Calculate the space available in the four directions\n const containerBottom = Math.max(\n 0,\n this.window.innerHeight - containerRect.bottom,\n );\n const toggleBottom = Math.max(\n 0,\n this.window.innerHeight - this.toggleRect.bottom,\n );\n const spaceBottom = Math.max(0, toggleBottom - containerBottom);\n\n // Top Space (from toggle's top to container's top)\n const containerTop = Math.max(0, containerRect.top);\n const toggleTop = Math.max(0, this.toggleRect.top);\n const spaceTop = Math.max(0, toggleTop - containerTop);\n\n // Right Space (from toggle's right to container's right)\n const containerRight = Math.max(0, this.window.innerWidth - containerRect.right);\n const toggleRight = Math.max(0, this.window.innerWidth - this.toggleRect.right);\n const spaceRight = Math.max(0, toggleRight - containerRight);\n\n // Left Space (from toggle's left to container's left)\n const containerLeft = Math.max(0, containerRect.left);\n const toggleLeft = Math.max(0, this.toggleRect.left);\n const spaceLeft = Math.max(0, toggleLeft - containerLeft);\n\n return {\n containerWidth,\n containerHeight,\n spaceTop,\n spaceBottom,\n spaceLeft,\n spaceRight,\n };\n }\n\n private checkPosition(): void {\n setTimeout(() => {\n if (!this.isHidden) {\n this.positionPopover();\n }\n });\n }\n\n private positionPopover(): void {\n if (!isPlatformBrowser(this.platformId)) return;\n this.resetStyles();\n\n const { containerWidth, spaceTop, spaceBottom, spaceLeft, spaceRight } =\n this.calculateAvailableSpace(this.eclPopoverToggle().getHostElement(), this.scrollableParent);\n\n // Find the direction with the most available space\n const positioningClass = 'ecl-popover--';\n let direction = '';\n\n if (\n spaceTop > spaceBottom &&\n spaceTop > spaceLeft &&\n spaceTop > spaceRight\n ) {\n direction = 'top';\n } else if (spaceBottom > spaceLeft && spaceBottom > spaceRight) {\n direction = 'bottom';\n } else if (spaceLeft > spaceRight) {\n direction = 'left';\n } else {\n direction = 'right';\n }\n\n this.renderer.addClass(this.el.nativeElement, `${positioningClass}${direction}`);\n\n // Try to use as much of the available width, respecting the max-width set.\n const styles = this.window.getComputedStyle(this.eclPopoverScrollableElement().nativeElement);\n const maxWidth = parseInt(styles.getPropertyValue('max-width'), 10);\n const minWidth = parseInt(styles.getPropertyValue('min-width'), 10);\n const padding = parseInt(styles.getPropertyValue('padding-left'), 10) * 2;\n\n // We consider 90% of the biggest space available\n const horizontalSpace = Math.max(spaceLeft, spaceRight) * 0.9;\n let targetWidth;\n\n // If the available space is larger than maxWidth (plus padding), set to maxWidth\n if (\n maxWidth + padding < horizontalSpace ||\n (direction !== 'left' &&\n direction !== 'right' &&\n containerWidth > maxWidth)\n ) {\n targetWidth = maxWidth;\n }\n // If the available space is smaller than minWidth (plus padding), set to minWidth\n else if (horizontalSpace < minWidth + padding) {\n targetWidth = minWidth;\n }\n // Otherwise, set the width to the available space minus the padding\n else if (direction === 'left' || direction === 'right') {\n targetWidth = horizontalSpace - padding;\n } else {\n targetWidth = (horizontalSpace - padding) * 2;\n }\n\n // Ensure the width does not exceed available space\n this.renderer.setStyle(this.eclPopoverScrollableElement().nativeElement, 'width', `${targetWidth}px`);\n\n this.handlePushClass(direction);\n }\n\n private resetStyles(): void {\n const popoverContainer = this.eclPopoverContainerElement().nativeElement;\n this.renderer.removeClass(this.el.nativeElement, this.topClass);\n this.renderer.removeClass(this.el.nativeElement, this.bottomClass);\n this.renderer.removeClass(this.el.nativeElement, this.leftClass);\n this.renderer.removeClass(this.el.nativeElement, this.rightClass);\n this.renderer.removeClass(this.el.nativeElement, this.pushTopClass);\n this.renderer.removeClass(this.el.nativeElement, this.pushBottomClass);\n this.renderer.removeClass(this.el.nativeElement, this.pushLeftClass);\n this.renderer.removeClass(this.el.nativeElement, this.pushRightClass);\n this.renderer.removeStyle(popoverContainer, '--ecl-popover-position');\n this.renderer.removeStyle(popoverContainer, 'top');\n this.renderer.removeStyle(popoverContainer, 'right');\n this.renderer.removeStyle(popoverContainer, 'left');\n this.renderer.removeStyle(popoverContainer, 'bottom');\n this.renderer.removeStyle(popoverContainer, 'transform');\n this.renderer.removeStyle(this.eclPopoverScrollableElement().nativeElement, 'width');\n }\n\n /**\n * Check whether the popover is going out of its scrollable container and apply the needed repositioning.\n *\n * @param {string} direction\n */\n handlePushClass(direction: string): void {\n requestAnimationFrame(() => {\n const popoverRect = this.eclPopoverContainerElement().nativeElement.getBoundingClientRect();\n const scrollableRect = this.scrollableParent.getBoundingClientRect();\n const containerBottom =\n scrollableRect.bottom > this.window.innerHeight ? 0 : this.window.innerHeight - scrollableRect.bottom;\n const containerTop =\n scrollableRect.top > this.window.innerHeight ? 0 : scrollableRect.top;\n const leftOverflow = scrollableRect.left > popoverRect.left;\n const rightOverflow = scrollableRect.right < popoverRect.right;\n const topOverflow = popoverRect.top < containerTop;\n const bottomOverflow =\n containerBottom > this.window.innerHeight - popoverRect.bottom;\n\n if (direction === 'left' || direction === 'right') {\n const eclPopoverContainerElement = this.eclPopoverContainerElement();\n if (topOverflow) {\n this.renderer.addClass(this.el.nativeElement, this.pushTopClass);\n // Push the popover to the top edge of the container\n this.renderer.setStyle(eclPopoverContainerElement.nativeElement, 'top', `-${Math.round(this.toggleRect.top)}px`);\n this.renderer.setStyle(eclPopoverContainerElement.nativeElement, 'bottom', '');\n this.renderer.setStyle(eclPopoverContainerElement.nativeElement, 'transform', '');\n }\n if (bottomOverflow) {\n this.renderer.addClass(this.el.nativeElement, this.pushBottomClass);\n // Push the popover to the bottom edge of the container\n this.renderer.setStyle(eclPopoverContainerElement.nativeElement, 'bottom', `-${this.window.innerHeight - this.toggleRect.bottom - containerBottom}px`);\n this.renderer.setStyle(eclPopoverContainerElement.nativeElement, 'top', '');\n this.renderer.setStyle(eclPopoverContainerElement.nativeElement, 'transform', '');\n }\n } else {\n const eclPopoverContainerElement = this.eclPopoverContainerElement();\n if (leftOverflow) {\n this.renderer.addClass(this.el.nativeElement, this.pushLeftClass);\n // Push the popover 8px to the left edge of the container\n this.renderer.setStyle(eclPopoverContainerElement.nativeElement, 'left', `-${this.toggleRect.left - scrollableRect.left - 8}px`);\n this.renderer.setStyle(eclPopoverContainerElement.nativeElement, 'right', 'auto');\n }\n if (rightOverflow) {\n this.renderer.addClass(this.el.nativeElement, this.pushRightClass);\n // Push the popover 8px to the right edge of the container\n this.renderer.setStyle(eclPopoverContainerElement.nativeElement, 'right', `-${scrollableRect.right - this.toggleRect.right - 8}px`);\n this.renderer.setStyle(eclPopoverContainerElement.nativeElement, 'left', 'auto');\n }\n }\n\n this.handleArrowPosition(direction);\n });\n }\n\n private handleArrowPosition(direction: string): void {\n const popoverRect = this.eclPopoverContainerElement().nativeElement.getBoundingClientRect();\n\n if (direction === 'left' || direction === 'right') {\n if (this.el.nativeElement.classList.contains(this.pushBottomClass)) {\n this.renderer.setStyle(this.eclPopoverContainerElement().nativeElement, '--ecl-popover-position',\n `${Math.round(this.toggleRect.top - popoverRect.top + this.toggleRect.height / 2)}px`);\n } else if (this.el.nativeElement.classList.contains(this.pushTopClass)) {\n this.renderer.setStyle(this.eclPopoverContainerElement().nativeElement, '--ecl-popover-position',\n `${Math.round(popoverRect.top + this.toggleRect.top + this.toggleRect.height / 2)}px`);\n }\n } else {\n\n if (this.el.nativeElement.classList.contains(this.pushRightClass)) {\n this.renderer.setStyle(this.eclPopoverContainerElement().nativeElement, '--ecl-popover-position',\n `${Math.round(popoverRect.right - (this.toggleRect.right - this.toggleRect.width / 2))}px`);\n } else if (this.el.nativeElement.classList.contains(this.pushLeftClass)) {\n this.renderer.setStyle(this.eclPopoverContainerElement().nativeElement, '--ecl-popover-position',\n `${Math.round(this.toggleRect.left - popoverRect.left + this.toggleRect.width / 2)}px`);\n }\n }\n }\n}\n","<ng-content select=\"[eclPopoverToggle]\"></ng-content>\n\n<div #container class=\"ecl-popover__container\" [hidden]=\"isHidden\"\n [attr.id]=\"popoverToggleAriaControls\">\n <div #scrollable class=\"ecl-popover__scrollable\">\n <button eclButton variant=\"tertiary\" (click)=\"doClose()\" class=\"ecl-popover__close\" isIconOnly type=\"button\">\n <span eclButtonLabel>Close</span>\n <ecl-icon icon=\"close\" size=\"m\"></ecl-icon>\n </button>\n <ng-content select=\"[eclPopoverContent]\"></ng-content>\n </div>\n</div>\n","import { Directive, HostBinding } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Directive applied to the content section of an `ecl-popover` component.\n *\n * Responsible for applying the appropriate CSS class to the popover content container.\n */\n@Directive({\n selector: '[eclPopoverContent]',\n})\nexport class EclPopoverContentDirective extends ECLBaseDirective {\n /**\n * Host binding that applies the CSS class to style the popover content.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-popover__content')].join(' ').trim();\n }\n}\n","import { EclPopoverComponent } from './ecl-popover.component';\nimport { EclPopoverContentDirective } from './ecl-popover-content.directive';\nimport { EclPopoverToggleDirective } from './ecl-popover-toggle.directive';\n\nexport * from './ecl-popover.component';\nexport * from './ecl-popover-content.directive';\nexport * from './ecl-popover-toggle.directive';\n\nexport const EUI_ECL_POPOVER = [\n EclPopoverComponent,\n EclPopoverContentDirective,\n EclPopoverToggleDirective,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"eui-ecl-components-ecl-popover.mjs","sources":["../../components/ecl-popover/ecl-popover-toggle.directive.ts","../../components/ecl-popover/ecl-popover.component.ts","../../components/ecl-popover/ecl-popover.component.html","../../components/ecl-popover/ecl-popover-content.directive.ts","../../components/ecl-popover/index.ts","../../components/ecl-popover/eui-ecl-components-ecl-popover.ts"],"sourcesContent":["import { Directive, ElementRef, inject, output, signal } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Directive used to toggle the visibility of an `ecl-popover` component.\n *\n * This directive emits a custom click event and manages accessibility attributes.\n */\n@Directive({\n selector: '[eclPopoverToggle]',\n host: {\n '[attr.aria-expanded]': 'isExpanded()',\n '[class]': 'cssClasses',\n '(mouseup)': 'onClick($event)',\n '(keydown.enter)': 'onKeyboardActivate($event)',\n '(keydown.space)': 'onKeyboardActivate($event)',\n },\n})\nexport class EclPopoverToggleDirective extends ECLBaseDirective {\n hostElementRef = inject(ElementRef);\n\n /**\n * Sets the `aria-expanded` attribute to reflect the popover's open state.\n * This should be updated by the parent popover component.\n */\n readonly isExpanded = signal(false);\n\n /**\n * Event emitted when the toggle element is clicked with the left mouse button.\n */\n // eslint-disable-next-line @angular-eslint/no-output-native\n readonly click = output();\n\n /**\n * Host binding that applies the appropriate CSS class to the toggle element.\n */\n get cssClasses(): string {\n return [super.getCssClasses('ecl-popover__toggle')].join(' ').trim();\n }\n\n /**\n * Emits the `click` event only for left mouse button clicks.\n * Used by the popover component to toggle visibility.\n */\n onClick(evt: MouseEvent): void {\n const LEFT_BUTTON = 0;\n\n if (evt.button === LEFT_BUTTON) {\n this.click.emit();\n }\n }\n\n /**\n * Triggers the click event on Enter or Space keydown and prevents default behavior.\n */\n onKeyboardActivate(evt: Event): void {\n evt.preventDefault();\n this.click.emit();\n }\n\n /**\n * Returns the native HTML element of the directive.\n * Used internally by the popover to query attributes.\n */\n public getHostElement(): HTMLElement {\n return this.hostElementRef.nativeElement;\n }\n}\n","import { AfterContentInit, AfterViewInit, Component, DOCUMENT, ElementRef, Injector, OnDestroy, PLATFORM_ID, Renderer2, inject, output, runInInjectionContext, viewChild, contentChild } from '@angular/core';\nimport { auditTime, fromEvent, Subject, takeUntil } from 'rxjs';\nimport { ECLClickOutsideDirective } from '@eui/ecl/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclPopoverToggleDirective } from './ecl-popover-toggle.directive';\nimport { EUI_ECL_BUTTON } from '@eui/ecl/components/ecl-button';\nimport { EUI_ECL_ICON } from '@eui/ecl/components/ecl-icon';\nimport { isPlatformBrowser } from '@angular/common';\nimport { outputToObservable } from '@angular/core/rxjs-interop';\n\n/**\n * Component representing an ECL Popover.\n *\n * It handles toggling visibility, positioning, and closing behavior of the popover.\n */\n@Component({\n selector: 'ecl-popover',\n templateUrl: './ecl-popover.component.html',\n host: {\n '[class]': 'cssClasses',\n '(eclClickOutside)': 'onClickOutsidePopover()',\n '(document:keydown.escape)': 'onEscapeKeydownHandler()',\n '(document:scroll)': 'onDocumentScroll()',\n },\n hostDirectives: [\n {\n directive: ECLClickOutsideDirective,\n\n outputs: ['eclClickOutside'],\n },\n ],\n imports: [\n ...EUI_ECL_BUTTON,\n ...EUI_ECL_ICON,\n ],\n})\nexport class EclPopoverComponent extends ECLBaseDirective implements AfterViewInit, AfterContentInit, OnDestroy {\n /**\n * Reference to the popover container element.\n */\n readonly eclPopoverContainerElement = viewChild<ElementRef>('container');\n\n /**\n * Reference to the scrollable content element inside the popover.\n */\n readonly eclPopoverScrollableElement = viewChild<ElementRef>('scrollable');\n\n /**\n * Reference to the toggle element used to open/close the popover.\n */\n readonly eclPopoverToggle = contentChild(EclPopoverToggleDirective);\n\n openEvent = output();\n closeEvent = output();\n\n /**\n * Controls visibility of the popover. `true` means hidden.\n */\n protected isHidden = true;\n\n private destroy$: Subject<boolean> = new Subject<boolean>();\n\n private readonly topClass = 'ecl-popover--top';\n private readonly bottomClass = 'ecl-popover--bottom';\n private readonly leftClass = 'ecl-popover--left';\n private readonly rightClass = 'ecl-popover--right';\n private readonly pushTopClass = 'ecl-popover--push-top';\n private readonly pushBottomClass = 'ecl-popover--push-bottom';\n private readonly pushLeftClass = 'ecl-popover--push-left';\n private readonly pushRightClass = 'ecl-popover--push-right';\n private toggleRect = null;\n private scrollableParent = null;\n private el = inject(ElementRef);\n private renderer = inject(Renderer2);\n private readonly injector = inject(Injector);\n private readonly document = inject<Document>(DOCUMENT);\n private readonly window = this.document.defaultView; // Window | null\n private platformId = inject(PLATFORM_ID);\n\n get cssClasses(): string {\n return [\n super.getCssClasses('ecl-popover'),\n ]\n .join(' ')\n .trim();\n }\n\n /**\n * Recalculates popover position when the window is resized.\n */\n ngAfterViewInit(): void {\n if (!isPlatformBrowser(this.platformId)) return;\n\n if (this.window) {\n fromEvent(this.window, 'resize').pipe(\n auditTime(50),\n takeUntil(this.destroy$)).subscribe(() => {\n this.checkPosition();\n });\n }\n }\n\n /**\n * Initializes event subscriptions for toggle button.\n */\n ngAfterContentInit(): void {\n if (!isPlatformBrowser(this.platformId)) return;\n const toggle = this.eclPopoverToggle();\n if (toggle) {\n runInInjectionContext(this.injector, () => outputToObservable(toggle.click))\n .pipe(takeUntil(this.destroy$)).subscribe(() => {\n if (this.isHidden) {\n this.doOpen();\n } else {\n this.doClose();\n }\n this.checkPosition(); // TODO: wrap on a platformBrowser check as it calls window and document\n });\n }\n\n this.scrollableParent = this.getClosestScrollableParent(toggle?.hostElementRef.nativeElement);\n }\n\n /**\n * Lifecycle hook that cleans up subscriptions on destroy.\n */\n ngOnDestroy(): void {\n this.destroy$.next(true);\n this.destroy$.unsubscribe();\n }\n\n /**\n * Returns the value of the `aria-controls` attribute from the toggle element,\n * if available. Used for accessibility linking.\n */\n get popoverToggleAriaControls(): string | null {\n return this.eclPopoverToggle()?.hostElementRef.nativeElement.getAttribute('aria-controls');\n }\n\n /**\n * Handler triggered when a click outside the popover is detected.\n * Closes the popover if it is open.\n */\n onClickOutsidePopover(): void {\n if (!this.isHidden) {\n this.doClose();\n }\n }\n\n /**\n * Closes the popover when the Escape key is pressed.\n */\n onEscapeKeydownHandler(): void {\n this.doClose();\n }\n\n /**\n * Recalculates popover position when the document is scrolled.\n */\n onDocumentScroll(): void {\n this.checkPosition();\n }\n\n /**\n * Protected method used to close the popover and reset related styles.\n */\n protected doClose(): void {\n this.isHidden = true;\n this.eclPopoverToggle()?.isExpanded.set(false);\n this.resetStyles();\n this.closeEvent.emit();\n }\n\n private doOpen(): void {\n this.isHidden = false;\n this.eclPopoverToggle()?.isExpanded.set(true);\n this.openEvent.emit();\n }\n\n private getClosestScrollableParent(element: HTMLElement): HTMLElement {\n let parent = element.parentElement;\n\n while (parent) {\n const { overflowY, overflowX } = getComputedStyle(parent);\n const isScrollableY =\n (overflowY === 'auto' || overflowY === 'scroll') &&\n parent.scrollHeight > parent.clientHeight;\n const isScrollableX =\n (overflowX === 'auto' || overflowX === 'scroll') &&\n parent.scrollWidth > parent.clientWidth;\n\n if (isScrollableY || isScrollableX) {\n return parent; // Found the closest scrollable parent\n }\n\n parent = parent.parentElement;\n }\n\n return this.document.body;\n }\n\n private calculateAvailableSpace(toggleElement, scrollableParent = null) {\n // Get the bounding rect for the toggle element\n this.toggleRect = toggleElement.getBoundingClientRect();\n\n // If no scrollable parent is provided, use the viewport\n const containerRect = scrollableParent\n ? scrollableParent.getBoundingClientRect()\n : {\n top: 0,\n left: 0,\n right: this.window.innerWidth,\n bottom: this.window.innerHeight,\n };\n const containerWidth = containerRect.right - containerRect.left;\n const containerHeight = containerRect.bottom - containerRect.top;\n // Calculate the space available in the four directions\n const containerBottom = Math.max(\n 0,\n this.window.innerHeight - containerRect.bottom,\n );\n const toggleBottom = Math.max(\n 0,\n this.window.innerHeight - this.toggleRect.bottom,\n );\n const spaceBottom = Math.max(0, toggleBottom - containerBottom);\n\n // Top Space (from toggle's top to container's top)\n const containerTop = Math.max(0, containerRect.top);\n const toggleTop = Math.max(0, this.toggleRect.top);\n const spaceTop = Math.max(0, toggleTop - containerTop);\n\n // Right Space (from toggle's right to container's right)\n const containerRight = Math.max(0, this.window.innerWidth - containerRect.right);\n const toggleRight = Math.max(0, this.window.innerWidth - this.toggleRect.right);\n const spaceRight = Math.max(0, toggleRight - containerRight);\n\n // Left Space (from toggle's left to container's left)\n const containerLeft = Math.max(0, containerRect.left);\n const toggleLeft = Math.max(0, this.toggleRect.left);\n const spaceLeft = Math.max(0, toggleLeft - containerLeft);\n\n return {\n containerWidth,\n containerHeight,\n spaceTop,\n spaceBottom,\n spaceLeft,\n spaceRight,\n };\n }\n\n private checkPosition(): void {\n setTimeout(() => {\n if (!this.isHidden) {\n this.positionPopover();\n }\n });\n }\n\n private positionPopover(): void {\n if (!isPlatformBrowser(this.platformId)) return;\n this.resetStyles();\n\n const { containerWidth, spaceTop, spaceBottom, spaceLeft, spaceRight } =\n this.calculateAvailableSpace(this.eclPopoverToggle().getHostElement(), this.scrollableParent);\n\n // Find the direction with the most available space\n const positioningClass = 'ecl-popover--';\n let direction = '';\n\n if (\n spaceTop > spaceBottom &&\n spaceTop > spaceLeft &&\n spaceTop > spaceRight\n ) {\n direction = 'top';\n } else if (spaceBottom > spaceLeft && spaceBottom > spaceRight) {\n direction = 'bottom';\n } else if (spaceLeft > spaceRight) {\n direction = 'left';\n } else {\n direction = 'right';\n }\n\n this.renderer.addClass(this.el.nativeElement, `${positioningClass}${direction}`);\n\n // Try to use as much of the available width, respecting the max-width set.\n const styles = this.window.getComputedStyle(this.eclPopoverScrollableElement().nativeElement);\n const maxWidth = parseInt(styles.getPropertyValue('max-width'), 10);\n const minWidth = parseInt(styles.getPropertyValue('min-width'), 10);\n const padding = parseInt(styles.getPropertyValue('padding-left'), 10) * 2;\n\n // We consider 90% of the biggest space available\n const horizontalSpace = Math.max(spaceLeft, spaceRight) * 0.9;\n let targetWidth;\n\n // If the available space is larger than maxWidth (plus padding), set to maxWidth\n if (\n maxWidth + padding < horizontalSpace ||\n (direction !== 'left' &&\n direction !== 'right' &&\n containerWidth > maxWidth)\n ) {\n targetWidth = maxWidth;\n }\n // If the available space is smaller than minWidth (plus padding), set to minWidth\n else if (horizontalSpace < minWidth + padding) {\n targetWidth = minWidth;\n }\n // Otherwise, set the width to the available space minus the padding\n else if (direction === 'left' || direction === 'right') {\n targetWidth = horizontalSpace - padding;\n } else {\n targetWidth = (horizontalSpace - padding) * 2;\n }\n\n // Ensure the width does not exceed available space\n this.renderer.setStyle(this.eclPopoverScrollableElement().nativeElement, 'width', `${targetWidth}px`);\n\n this.handlePushClass(direction);\n }\n\n private resetStyles(): void {\n const popoverContainer = this.eclPopoverContainerElement().nativeElement;\n this.renderer.removeClass(this.el.nativeElement, this.topClass);\n this.renderer.removeClass(this.el.nativeElement, this.bottomClass);\n this.renderer.removeClass(this.el.nativeElement, this.leftClass);\n this.renderer.removeClass(this.el.nativeElement, this.rightClass);\n this.renderer.removeClass(this.el.nativeElement, this.pushTopClass);\n this.renderer.removeClass(this.el.nativeElement, this.pushBottomClass);\n this.renderer.removeClass(this.el.nativeElement, this.pushLeftClass);\n this.renderer.removeClass(this.el.nativeElement, this.pushRightClass);\n this.renderer.removeStyle(popoverContainer, '--ecl-popover-position');\n this.renderer.removeStyle(popoverContainer, 'top');\n this.renderer.removeStyle(popoverContainer, 'right');\n this.renderer.removeStyle(popoverContainer, 'left');\n this.renderer.removeStyle(popoverContainer, 'bottom');\n this.renderer.removeStyle(popoverContainer, 'transform');\n this.renderer.removeStyle(this.eclPopoverScrollableElement().nativeElement, 'width');\n }\n\n /**\n * Check whether the popover is going out of its scrollable container and apply the needed repositioning.\n *\n * @param {string} direction\n */\n handlePushClass(direction: string): void {\n requestAnimationFrame(() => {\n const popoverRect = this.eclPopoverContainerElement().nativeElement.getBoundingClientRect();\n const scrollableRect = this.scrollableParent.getBoundingClientRect();\n const containerBottom =\n scrollableRect.bottom > this.window.innerHeight ? 0 : this.window.innerHeight - scrollableRect.bottom;\n const containerTop =\n scrollableRect.top > this.window.innerHeight ? 0 : scrollableRect.top;\n const leftOverflow = scrollableRect.left > popoverRect.left;\n const rightOverflow = scrollableRect.right < popoverRect.right;\n const topOverflow = popoverRect.top < containerTop;\n const bottomOverflow =\n containerBottom > this.window.innerHeight - popoverRect.bottom;\n\n if (direction === 'left' || direction === 'right') {\n const eclPopoverContainerElement = this.eclPopoverContainerElement();\n if (topOverflow) {\n this.renderer.addClass(this.el.nativeElement, this.pushTopClass);\n // Push the popover to the top edge of the container\n this.renderer.setStyle(eclPopoverContainerElement.nativeElement, 'top', `-${Math.round(this.toggleRect.top)}px`);\n this.renderer.setStyle(eclPopoverContainerElement.nativeElement, 'bottom', '');\n this.renderer.setStyle(eclPopoverContainerElement.nativeElement, 'transform', '');\n }\n if (bottomOverflow) {\n this.renderer.addClass(this.el.nativeElement, this.pushBottomClass);\n // Push the popover to the bottom edge of the container\n this.renderer.setStyle(eclPopoverContainerElement.nativeElement, 'bottom', `-${this.window.innerHeight - this.toggleRect.bottom - containerBottom}px`);\n this.renderer.setStyle(eclPopoverContainerElement.nativeElement, 'top', '');\n this.renderer.setStyle(eclPopoverContainerElement.nativeElement, 'transform', '');\n }\n } else {\n const eclPopoverContainerElement = this.eclPopoverContainerElement();\n if (leftOverflow) {\n this.renderer.addClass(this.el.nativeElement, this.pushLeftClass);\n // Push the popover 8px to the left edge of the container\n this.renderer.setStyle(eclPopoverContainerElement.nativeElement, 'left', `-${this.toggleRect.left - scrollableRect.left - 8}px`);\n this.renderer.setStyle(eclPopoverContainerElement.nativeElement, 'right', 'auto');\n }\n if (rightOverflow) {\n this.renderer.addClass(this.el.nativeElement, this.pushRightClass);\n // Push the popover 8px to the right edge of the container\n this.renderer.setStyle(eclPopoverContainerElement.nativeElement, 'right', `-${scrollableRect.right - this.toggleRect.right - 8}px`);\n this.renderer.setStyle(eclPopoverContainerElement.nativeElement, 'left', 'auto');\n }\n }\n\n this.handleArrowPosition(direction);\n });\n }\n\n private handleArrowPosition(direction: string): void {\n const popoverRect = this.eclPopoverContainerElement().nativeElement.getBoundingClientRect();\n\n if (direction === 'left' || direction === 'right') {\n if (this.el.nativeElement.classList.contains(this.pushBottomClass)) {\n this.renderer.setStyle(this.eclPopoverContainerElement().nativeElement, '--ecl-popover-position',\n `${Math.round(this.toggleRect.top - popoverRect.top + this.toggleRect.height / 2)}px`);\n } else if (this.el.nativeElement.classList.contains(this.pushTopClass)) {\n this.renderer.setStyle(this.eclPopoverContainerElement().nativeElement, '--ecl-popover-position',\n `${Math.round(popoverRect.top + this.toggleRect.top + this.toggleRect.height / 2)}px`);\n }\n } else {\n\n if (this.el.nativeElement.classList.contains(this.pushRightClass)) {\n this.renderer.setStyle(this.eclPopoverContainerElement().nativeElement, '--ecl-popover-position',\n `${Math.round(popoverRect.right - (this.toggleRect.right - this.toggleRect.width / 2))}px`);\n } else if (this.el.nativeElement.classList.contains(this.pushLeftClass)) {\n this.renderer.setStyle(this.eclPopoverContainerElement().nativeElement, '--ecl-popover-position',\n `${Math.round(this.toggleRect.left - popoverRect.left + this.toggleRect.width / 2)}px`);\n }\n }\n }\n}\n","<ng-content select=\"[eclPopoverToggle]\"></ng-content>\n\n<div #container class=\"ecl-popover__container\" [hidden]=\"isHidden\"\n [attr.id]=\"popoverToggleAriaControls\">\n <div #scrollable class=\"ecl-popover__scrollable\">\n <button eclButton variant=\"tertiary\" (click)=\"doClose()\" class=\"ecl-popover__close\" isIconOnly type=\"button\">\n <span eclButtonLabel>Close</span>\n <ecl-icon icon=\"close\" size=\"m\"></ecl-icon>\n </button>\n <ng-content select=\"[eclPopoverContent]\"></ng-content>\n </div>\n</div>\n","import { Directive } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Directive applied to the content section of an `ecl-popover` component.\n *\n * Responsible for applying the appropriate CSS class to the popover content container.\n */\n@Directive({\n selector: '[eclPopoverContent]',\n host: {\n '[class]': 'cssClasses',\n },\n})\nexport class EclPopoverContentDirective extends ECLBaseDirective {\n /**\n * Host binding that applies the CSS class to style the popover content.\n */\n get cssClasses(): string {\n return [super.getCssClasses('ecl-popover__content')].join(' ').trim();\n }\n}\n","import { EclPopoverComponent } from './ecl-popover.component';\nimport { EclPopoverContentDirective } from './ecl-popover-content.directive';\nimport { EclPopoverToggleDirective } from './ecl-popover-toggle.directive';\n\nexport * from './ecl-popover.component';\nexport * from './ecl-popover-content.directive';\nexport * from './ecl-popover-toggle.directive';\n\nexport const EUI_ECL_POPOVER = [\n EclPopoverComponent,\n EclPopoverContentDirective,\n EclPopoverToggleDirective,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eui/ecl",
3
- "version": "22.0.0-alpha.22",
3
+ "version": "22.0.0-alpha.24",
4
4
  "tag": "next",
5
5
  "description": "eUI ECL components package",
6
6
  "homepage": "https://eui.ecdevops.eu",
@@ -1,5 +1,5 @@
1
- import * as i0 from '@angular/core';
2
- import { ElementRef, EventEmitter, AfterViewInit, AfterContentInit, OnDestroy } from '@angular/core';
1
+ import * as _angular_core from '@angular/core';
2
+ import { ElementRef, AfterViewInit, AfterContentInit, OnDestroy } from '@angular/core';
3
3
  import * as i1 from '@eui/ecl/core';
4
4
  import { ECLBaseDirective } from '@eui/ecl/core';
5
5
 
@@ -14,11 +14,11 @@ declare class EclPopoverToggleDirective extends ECLBaseDirective {
14
14
  * Sets the `aria-expanded` attribute to reflect the popover's open state.
15
15
  * This should be updated by the parent popover component.
16
16
  */
17
- isExpanded: boolean;
17
+ readonly isExpanded: _angular_core.WritableSignal<boolean>;
18
18
  /**
19
19
  * Event emitted when the toggle element is clicked with the left mouse button.
20
20
  */
21
- click: EventEmitter<any>;
21
+ readonly click: _angular_core.OutputEmitterRef<void>;
22
22
  /**
23
23
  * Host binding that applies the appropriate CSS class to the toggle element.
24
24
  */
@@ -37,8 +37,8 @@ declare class EclPopoverToggleDirective extends ECLBaseDirective {
37
37
  * Used internally by the popover to query attributes.
38
38
  */
39
39
  getHostElement(): HTMLElement;
40
- static ɵfac: i0.ɵɵFactoryDeclaration<EclPopoverToggleDirective, never>;
41
- static ɵdir: i0.ɵɵDirectiveDeclaration<EclPopoverToggleDirective, "[eclPopoverToggle]", never, {}, { "click": "click"; }, never, never, true, never>;
40
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<EclPopoverToggleDirective, never>;
41
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<EclPopoverToggleDirective, "[eclPopoverToggle]", never, {}, { "click": "click"; }, never, never, true, never>;
42
42
  }
43
43
 
44
44
  /**
@@ -50,17 +50,17 @@ declare class EclPopoverComponent extends ECLBaseDirective implements AfterViewI
50
50
  /**
51
51
  * Reference to the popover container element.
52
52
  */
53
- readonly eclPopoverContainerElement: i0.Signal<ElementRef<any>>;
53
+ readonly eclPopoverContainerElement: _angular_core.Signal<ElementRef<any>>;
54
54
  /**
55
55
  * Reference to the scrollable content element inside the popover.
56
56
  */
57
- readonly eclPopoverScrollableElement: i0.Signal<ElementRef<any>>;
57
+ readonly eclPopoverScrollableElement: _angular_core.Signal<ElementRef<any>>;
58
58
  /**
59
59
  * Reference to the toggle element used to open/close the popover.
60
60
  */
61
- readonly eclPopoverToggle: i0.Signal<EclPopoverToggleDirective>;
62
- openEvent: i0.OutputEmitterRef<void>;
63
- closeEvent: i0.OutputEmitterRef<void>;
61
+ readonly eclPopoverToggle: _angular_core.Signal<EclPopoverToggleDirective>;
62
+ openEvent: _angular_core.OutputEmitterRef<void>;
63
+ closeEvent: _angular_core.OutputEmitterRef<void>;
64
64
  /**
65
65
  * Controls visibility of the popover. `true` means hidden.
66
66
  */
@@ -78,6 +78,7 @@ declare class EclPopoverComponent extends ECLBaseDirective implements AfterViewI
78
78
  private scrollableParent;
79
79
  private el;
80
80
  private renderer;
81
+ private readonly injector;
81
82
  private readonly document;
82
83
  private readonly window;
83
84
  private platformId;
@@ -129,8 +130,8 @@ declare class EclPopoverComponent extends ECLBaseDirective implements AfterViewI
129
130
  */
130
131
  handlePushClass(direction: string): void;
131
132
  private handleArrowPosition;
132
- static ɵfac: i0.ɵɵFactoryDeclaration<EclPopoverComponent, never>;
133
- static ɵcmp: i0.ɵɵComponentDeclaration<EclPopoverComponent, "ecl-popover", never, {}, { "openEvent": "openEvent"; "closeEvent": "closeEvent"; }, ["eclPopoverToggle"], ["[eclPopoverToggle]", "[eclPopoverContent]"], true, [{ directive: typeof i1.ECLClickOutsideDirective; inputs: {}; outputs: { "eclClickOutside": "eclClickOutside"; }; }]>;
133
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<EclPopoverComponent, never>;
134
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<EclPopoverComponent, "ecl-popover", never, {}, { "openEvent": "openEvent"; "closeEvent": "closeEvent"; }, ["eclPopoverToggle"], ["[eclPopoverToggle]", "[eclPopoverContent]"], true, [{ directive: typeof i1.ECLClickOutsideDirective; inputs: {}; outputs: { "eclClickOutside": "eclClickOutside"; }; }]>;
134
135
  }
135
136
 
136
137
  /**
@@ -143,8 +144,8 @@ declare class EclPopoverContentDirective extends ECLBaseDirective {
143
144
  * Host binding that applies the CSS class to style the popover content.
144
145
  */
145
146
  get cssClasses(): string;
146
- static ɵfac: i0.ɵɵFactoryDeclaration<EclPopoverContentDirective, never>;
147
- static ɵdir: i0.ɵɵDirectiveDeclaration<EclPopoverContentDirective, "[eclPopoverContent]", never, {}, {}, never, never, true, never>;
147
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<EclPopoverContentDirective, never>;
148
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<EclPopoverContentDirective, "[eclPopoverContent]", never, {}, {}, never, never, true, never>;
148
149
  }
149
150
 
150
151
  declare const EUI_ECL_POPOVER: readonly [typeof EclPopoverComponent, typeof EclPopoverContentDirective, typeof EclPopoverToggleDirective];
@@ -1 +1 @@
1
- {"version":3,"file":"eui-ecl-components-ecl-popover.d.ts","sources":["../../components/ecl-popover/ecl-popover-toggle.directive.ts","../../components/ecl-popover/ecl-popover.component.ts","../../components/ecl-popover/ecl-popover-content.directive.ts","../../components/ecl-popover/index.ts"],"mappings":";;;;;AAGA;;;;AAIG;AACH,cAGa,yBAA0B,SAAQ,gBAAgB;AAC3D,oBAAc,UAAA;AAEd;;;AAGG;AACgC;AAEnC;;AAEG;AAEO,WAAK,YAAA;AAEf;;AAEG;;AAMH;;;AAGG;AAEH,iBAAa,UAAU;AAQvB;;AAEG;AAGH,4BAAwB,KAAK;AAK7B;;;AAGG;AACI,sBAAkB,WAAW;yCAlD3B,yBAAyB;2CAAzB,yBAAyB;AAqDrC;;ACvDD;;;;AAIG;AACH,cAea,mBAAoB,SAAQ,gBAAiB,YAAW,aAAa,EAAE,gBAAgB,EAAE,SAAS;AAC3G;;AAEG;yCACgCA,EAAA,CAAA,MAAA,CAAA,UAAA;AAEnC;;AAEG;0CACiCA,EAAA,CAAA,MAAA,CAAA,UAAA;AAEpC;;AAEG;+BACsBA,EAAA,CAAA,MAAA,CAAA,yBAAA;AAEzB,eAASA,EAAA,CAAA,gBAAA;AACT,gBAAUA,EAAA,CAAA,gBAAA;AAEV;;AAEG;;;AAKH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;AAKA;AACA;;;AAYA;;AAEG;AACH;AAYA;;AAEG;AACH;AAcA;;AAEG;AACH;AAKA;;;AAGG;AACH;AAIA;;;AAGG;AAEH;AAMA;;AAEG;AAEH;AAIA;;AAEG;AAEH;AAIA;;AAEG;;AAOH;AAKA;AAsBA;AAmDA;AAQA;AA+DA;AAmBA;;;;AAIC;AACD;AAkDA;yCAtWS,mBAAmB;2CAAnB,mBAAmB,uLAAA,EAAA,CAAA,wBAAA;AA4X/B;;ACtZD;;;;AAIG;AACH,cAGa,0BAA2B,SAAQ,gBAAgB;AAC5D;;AAEG;;yCAHM,0BAA0B;2CAA1B,0BAA0B;AAQtC;;ACXD,cAAa,eAAe,mBAAA,mBAAA,SAAA,0BAAA,SAAA,yBAAA;;;;","names":["_angular_core"]}
1
+ {"version":3,"file":"eui-ecl-components-ecl-popover.d.ts","sources":["../../components/ecl-popover/ecl-popover-toggle.directive.ts","../../components/ecl-popover/ecl-popover.component.ts","../../components/ecl-popover/ecl-popover-content.directive.ts","../../components/ecl-popover/index.ts"],"mappings":";;;;;AAGA;;;;AAIG;AACH,cAUa,yBAA0B,SAAQ,gBAAgB;AAC3D,oBAAc,UAAA;AAEd;;;AAGG;yBACgB,aAAA,CAAA,cAAA;AAEnB;;AAEG;oBAEW,aAAA,CAAA,gBAAA;AAEd;;AAEG;;AAKH;;;AAGG;AACH,iBAAa,UAAU;AAQvB;;AAEG;AACH,4BAAwB,KAAK;AAK7B;;;AAGG;AACI,sBAAkB,WAAW;oDA9C3B,yBAAyB;sDAAzB,yBAAyB;AAiDrC;;ACzDD;;;;AAIG;AACH,cAqBa,mBAAoB,SAAQ,gBAAiB,YAAW,aAAa,EAAE,gBAAgB,EAAE,SAAS;AAC3G;;AAEG;yCACgC,aAAA,CAAA,MAAA,CAAA,UAAA;AAEnC;;AAEG;0CACiC,aAAA,CAAA,MAAA,CAAA,UAAA;AAEpC;;AAEG;+BACsB,aAAA,CAAA,MAAA,CAAA,yBAAA;AAEzB,eAAS,aAAA,CAAA,gBAAA;AACT,gBAAU,aAAA,CAAA,gBAAA;AAEV;;AAEG;;;AAKH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;AAKA;AACA;AACA;;;AAWA;;AAEG;AACH;AAYA;;AAEG;AACH;AAkBA;;AAEG;AACH;AAKA;;;AAGG;AACH;AAIA;;;AAGG;AACH;AAMA;;AAEG;AACH;AAIA;;AAEG;AACH;AAIA;;AAEG;;AAQH;AAMA;AAsBA;AAmDA;AAQA;AA+DA;AAmBA;;;;AAIC;AACD;AAkDA;oDAzWS,mBAAmB;sDAAnB,mBAAmB,uLAAA,EAAA,CAAA,wBAAA;AA+X/B;;AChaD;;;;AAIG;AACH,cAMa,0BAA2B,SAAQ,gBAAgB;AAC5D;;AAEG;;oDAHM,0BAA0B;sDAA1B,0BAA0B;AAOtC;;ACbD,cAAa,eAAe,mBAAA,mBAAA,SAAA,0BAAA,SAAA,yBAAA;;;;","names":[]}