@eui/components 21.0.0-alpha.33 → 21.0.0-alpha.35

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.
@@ -538,6 +538,9 @@
538
538
  <li>
539
539
  <a href="#showHide" title="packages/components/directives/eui-tooltip/animations/show-hide.ts" ><b>showHide</b>&nbsp;&nbsp;&nbsp;(packages/.../show-hide.ts)</a>
540
540
  </li>
541
+ <li>
542
+ <a href="#testBed" title="packages/components/test-setup.ts" ><b>testBed</b>&nbsp;&nbsp;&nbsp;(packages/.../test-setup.ts)</a>
543
+ </li>
541
544
  <li>
542
545
  <a href="#TOP" title="packages/components/eui-popover/models/eui-popover-position.model.ts" ><b>TOP</b>&nbsp;&nbsp;&nbsp;(packages/.../eui-popover-position.model.ts)</a>
543
546
  </li>
@@ -5320,6 +5323,29 @@ Centers the popover horizontally relative to the origin.</p>
5320
5323
  </tbody>
5321
5324
  </table>
5322
5325
  </section>
5326
+ <h3>packages/components/test-setup.ts</h3>
5327
+ <section data-compodoc="block-properties">
5328
+ <h3></h3> <table class="table table-sm table-bordered">
5329
+ <tbody>
5330
+ <tr>
5331
+ <td class="col-md-4">
5332
+ <a name="testBed"></a>
5333
+ <span class="name">
5334
+ <span ><b>testBed</b></span>
5335
+ <a href="#testBed"><span class="icon ion-ios-link"></span></a>
5336
+ </span>
5337
+ </td>
5338
+ </tr>
5339
+ <tr>
5340
+ <td class="col-md-4">
5341
+ <i>Default value : </i><code>getTestBed()</code>
5342
+ </td>
5343
+ </tr>
5344
+
5345
+
5346
+ </tbody>
5347
+ </table>
5348
+ </section>
5323
5349
  <h3>packages/components/testing/mocks/translate.module.mock.ts</h3>
5324
5350
  <section data-compodoc="block-properties">
5325
5351
  <h3></h3> <table class="table table-sm table-bordered">
@@ -121,7 +121,7 @@
121
121
  </ol>
122
122
  <ul class="properties-list">
123
123
  <li>
124
- <b>Version</b> : 21.0.0-alpha.33</li>
124
+ <b>Version</b> : 21.0.0-alpha.35</li>
125
125
  </ul>
126
126
 
127
127
 
@@ -133,7 +133,7 @@ class EuiButtonComponent {
133
133
  this.buttonClick.emit(this);
134
134
  }
135
135
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-rc.0", ngImport: i0, type: EuiButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
136
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "21.0.0-rc.0", type: EuiButtonComponent, isStandalone: true, selector: "button[euiButton], a[euiButton]", inputs: { e2eAttr: "e2eAttr", id: "id", euiBasicButton: ["euiBasicButton", "euiBasicButton", booleanAttribute], euiButtonCall: ["euiButtonCall", "euiButtonCall", booleanAttribute], euiCTAButton: ["euiCTAButton", "euiCTAButton", booleanAttribute], euiBlockButton: ["euiBlockButton", "euiBlockButton", booleanAttribute], euiIconButton: ["euiIconButton", "euiIconButton", booleanAttribute], euiAvatarButton: ["euiAvatarButton", "euiAvatarButton", booleanAttribute], euiLineWrap: ["euiLineWrap", "euiLineWrap", booleanAttribute], isCompact: ["isCompact", "isCompact", booleanAttribute], hasNoFocusRing: ["hasNoFocusRing", "hasNoFocusRing", booleanAttribute], isChecked: "isChecked", euiDisabled: "euiDisabled" }, outputs: { buttonClick: "buttonClick" }, host: { listeners: { "click": "onClick()" }, properties: { "class": "this.cssClasses", "attr.data-e2e": "this.e2eAttr", "attr.id": "this.id" } }, hostDirectives: [{ directive: i1.BaseStatesDirective, inputs: ["euiPrimary", "euiPrimary", "euiBranding", "euiBranding", "euiSecondary", "euiSecondary", "euiSuccess", "euiSuccess", "euiInfo", "euiInfo", "euiWarning", "euiWarning", "euiDanger", "euiDanger", "euiInverse", "euiInverse", "euiVariant", "euiVariant", "euiSizeS", "euiSizeS", "euiSizeM", "euiSizeM", "euiSizeL", "euiSizeL", "euiSizeVariant", "euiSizeVariant", "euiOutline", "euiOutline", "euiRounded", "euiRounded", "euiResponsive", "euiResponsive", "euiStart", "euiStart", "euiEnd", "euiEnd"] }], ngImport: i0, template: "<span class=\"eui-button__container\">\n <ng-content></ng-content>\n</span>\n", styles: [".eui-21 :host.eui-button{--_color: var(--eui-c-secondary);--_basic-color: var(--eui-c-secondary);--_bg-color: var(--eui-c-secondary-surface-light);--_on-bg-color: var(--eui-c-secondary-on-surface-light);--_border-color: var(--eui-c-secondary-border-light);--_outline-border-color: var(--eui-c-secondary-border-light);--_hover-color: var(--eui-c-secondary-surface-light-hover);--_on-hover-color: var(--eui-c-secondary);--_basic-bg-color: transparent;--_basic-hover-color: var(--eui-c-secondary-surface-light-hover);--_on-basic-hover-color: var(--eui-c-secondary);--_outline-color: var(--eui-c-secondary);--_outline-bg-color: var(--eui-c-white);--_outline-hover-color: var(--eui-c-secondary-surface-light-hover);--_on-outline-hover-color: var(--eui-c-secondary);--_font-s: var(--eui-f-s-medium);--_font-m: var(--eui-f-m-medium);--_font-l: var(--eui-f-m-medium)}.eui-21 :host.eui-button--branding{--_color: var(--eui-c-branding);--_bg-color: var(--eui-c-branding-surface-light);--_on-bg-color: var(--eui-c-branding);--_border-color: var(--eui-c-branding);--_outline-border-color: var(--eui-c-white);--_hover-color: var(--eui-c-white);--_on-hover-color: var(--eui-c-branding);--_basic-color: var(--eui-c-white);--_basic-bg-color: var(--eui-c-branding);--_basic-hover-color: var(--eui-c-branding-light);--_on-basic-hover-color: var(--eui-c-branding-on-light);--_outline-color: var(--eui-c-white);--_outline-bg-color: var(--eui-c-branding);--_outline-hover-color: var(--eui-c-branding-light);--_on-outline-hover-color: var(--eui-c-branding-on-light)}.eui-21 :host.eui-button--primary{--_color: var(--eui-c-primary);--_basic-color: var(--eui-c-primary);--_bg-color: var(--eui-c-primary-surface);--_on-bg-color: var(--eui-c-primary-on-surface);--_border-color: var(--eui-c-primary);--_outline-border-color: var(--eui-c-primary);--_hover-color: var(--eui-c-primary-surface-hover);--_on-hover-color: var(--eui-c-primary-on-surface-hover);--_basic-bg-color: transparent;--_basic-hover-color: var(--eui-c-primary-surface-light);--_on-basic-hover-color: var(--eui-c-primary);--_outline-color: var(--eui-c-primary);--_outline-bg-color: var(--eui-c-white);--_outline-hover-color: var(--eui-c-primary-surface-light);--_on-outline-hover-color: var(--eui-c-primary)}.eui-21 :host.eui-button--cta{--_color: var(--eui-c-cta);--_basic-color: var(--eui-c-cta);--_bg-color: var(--eui-c-cta-surface);--_on-bg-color: var(--eui-c-cta-on-surface);--_border-color: transparent;--_outline-border-color: var(--eui-c-cta);--_hover-color: var(--eui-c-cta-surface-hover);--_on-hover-color: var(--eui-c-cta-on-surface-hover);--_basic-bg-color: transparent;--_basic-hover-color: var(--eui-c-cta-surface-light);--_on-basic-hover-color: var(--eui-c-cta);--_outline-color: var(--eui-c-cta);--_outline-bg-color: var(--eui-c-white);--_outline-hover-color: var(--eui-c-cta-surface-light);--_on-outline-hover-color: var(--eui-c-cta)}.eui-21 :host.eui-button--info{--_color: var(--eui-c-info);--_basic-color: var(--eui-c-info);--_bg-color: var(--eui-c-info-surface);--_on-bg-color: var(--eui-c-info-on-surface);--_border-color: var(--eui-c-info);--_outline-border-color: var(--eui-c-info);--_hover-color: var(--eui-c-info-surface-hover);--_on-hover-color: var(--eui-c-info-on-surface-hover);--_basic-bg-color: transparent;--_basic-hover-color: var(--eui-c-info-surface-light);--_on-basic-hover-color: var(--eui-c-info);--_outline-color: var(--eui-c-info);--_outline-bg-color: var(--eui-c-white);--_outline-hover-color: var(--eui-c-info-surface-light);--_on-outline-hover-color: var(--eui-c-info)}.eui-21 :host.eui-button--success{--_color: var(--eui-c-success);--_basic-color: var(--eui-c-success);--_bg-color: var(--eui-c-success-surface);--_on-bg-color: var(--eui-c-success-on-surface);--_border-color: var(--eui-c-success);--_outline-border-color: var(--eui-c-success);--_hover-color: var(--eui-c-success-surface-hover);--_on-hover-color: var(--eui-c-success-on-surface-hover);--_basic-bg-color: transparent;--_basic-hover-color: var(--eui-c-success-surface-light);--_on-basic-hover-color: var(--eui-c-success);--_outline-color: var(--eui-c-success);--_outline-bg-color: var(--eui-c-white);--_outline-hover-color: var(--eui-c-success-surface-light);--_on-outline-hover-color: var(--eui-c-success)}.eui-21 :host.eui-button--warning{--_color: var(--eui-c-warning);--_basic-color: var(--eui-c-warning);--_bg-color: var(--eui-c-warning-surface);--_on-bg-color: var(--eui-c-warning-on-surface);--_border-color: var(--eui-c-warning);--_outline-border-color: var(--eui-c-warning);--_hover-color: var(--eui-c-warning-surface-hover);--_on-hover-color: var(--eui-c-warning-on-surface-hover);--_basic-bg-color: transparent;--_basic-hover-color: var(--eui-c-warning-surface-light);--_on-basic-hover-color: var(--eui-c-warning);--_outline-color: var(--eui-c-warning);--_outline-bg-color: var(--eui-c-white);--_outline-hover-color: var(--eui-c-warning-surface-light);--_on-outline-hover-color: var(--eui-c-warning)}.eui-21 :host.eui-button--danger{--_color: var(--eui-c-danger);--_basic-color: var(--eui-c-danger);--_bg-color: var(--eui-c-danger-surface);--_on-bg-color: var(--eui-c-danger-on-surface);--_border-color: var(--eui-c-danger);--_outline-border-color: var(--eui-c-danger);--_hover-color: var(--eui-c-danger-surface-hover);--_on-hover-color: var(--eui-c-danger-on-surface-hover);--_basic-bg-color: transparent;--_basic-hover-color: var(--eui-c-danger-surface-light);--_on-basic-hover-color: var(--eui-c-danger);--_outline-color: var(--eui-c-danger);--_outline-bg-color: var(--eui-c-white);--_outline-hover-color: var(--eui-c-danger-surface-light);--_on-outline-hover-color: var(--eui-c-danger)}.eui-21 :host.eui-button{align-items:center;background-image:none;border:var(--eui-bw-none);border-radius:var(--eui-br-m);box-sizing:border-box;cursor:pointer;display:inline-flex;flex-shrink:0;justify-content:center;outline:none;text-transform:none;transition:none;vertical-align:middle;white-space:nowrap;font:var(--_font-m);padding:calc(var(--eui-s-xs) - 1px) calc(var(--eui-s-m) - 1px)}.eui-21 :host.eui-button:focus-visible:not([readonly]){outline:var(--eui-bw-s) solid var(--eui-c-primary-border)!important;outline-offset:1px!important;border-radius:var(--eui-br-s)!important}.eui-21 :host.eui-button .eui-button__container{align-items:center;display:inline-flex;position:relative;gap:var(--eui-s-xs);justify-content:center;width:100%}.eui-21 :host.eui-button{background-color:var(--_bg-color);color:var(--_on-bg-color);border:var(--eui-bw-xs) solid var(--_border-color)}.eui-21 :host.eui-button ::ng-deep .eui-icon-svg svg{fill:var(--_on-bg-color);color:var(--_on-bg-color)}.eui-21 :host.eui-button:hover,.eui-21 :host.eui-button:focus{background-color:var(--_hover-color);color:var(--_on-hover-color)}.eui-21 :host.eui-button:hover ::ng-deep .eui-icon-svg svg,.eui-21 :host.eui-button:focus ::ng-deep .eui-icon-svg svg{fill:var(--_on-bg-color);color:var(--_on-bg-color)}.eui-21 :host.eui-button.eui-button--basic{border:var(--eui-bw-none);box-shadow:none;background-color:var(--_basic-bg-color);color:var(--_basic-color)}.eui-21 :host.eui-button.eui-button--basic ::ng-deep .eui-icon-svg svg{fill:var(--_basic-color);color:var(--_basic-color)}.eui-21 :host.eui-button.eui-button--outline{background-color:var(--_outline-bg-color);color:var(--_outline-color);border:var(--eui-bw-xs) solid var(--_outline-border-color)}.eui-21 :host.eui-button.eui-button--outline ::ng-deep .eui-icon-svg svg{fill:var(--_outline-color);color:var(--_outline-color)}.eui-21 :host.eui-button.eui-button--basic:hover,.eui-21 :host.eui-button.eui-button--basic:focus{background-color:var(--_basic-hover-color);color:var(--_on-basic-hover-color)}.eui-21 :host.eui-button.eui-button--basic:hover ::ng-deep .eui-icon-svg svg,.eui-21 :host.eui-button.eui-button--basic:focus ::ng-deep .eui-icon-svg svg{fill:var(--_on-basic-hover-color);color:var(--_on-basic-hover-color)}.eui-21 :host.eui-button.eui-button--outline:hover,.eui-21 :host.eui-button.eui-button--outline:focus{background-color:var(--_outline-hover-color);color:var(--_on-outline-hover-color)}.eui-21 :host.eui-button.eui-button--outline:hover ::ng-deep .eui-icon-svg svg,.eui-21 :host.eui-button.eui-button--outline:focus ::ng-deep .eui-icon-svg svg{fill:var(--_on-outline-hover-color);color:var(--_on-outline-hover-color)}.eui-21 :host.eui-button--icon-only{padding:inherit var(--eui-s-3xs);min-height:var(--eui-s-5xl);min-width:var(--eui-s-5xl)}.eui-21 :host.eui-button--size-s{font:var(--_font-s);min-height:calc(var(--eui-s-3xl) + var(--eui-s-3xs));min-width:calc(var(--eui-s-3xl) + var(--eui-s-3xs));padding:0 var(--eui-s-xs)}.eui-21 :host.eui-button--size-s ::ng-deep .eui-icon-svg svg{height:var(--eui-is-s);width:var(--eui-is-s)}.eui-21 :host.eui-button.eui-button--size-s.eui-button--icon-only{padding:calc(var(--eui-s-xs) - 2px) calc(var(--eui-s-xs) - 2px)}.eui-21 :host.eui-button--size-m{font:var(--_font-m)}.eui-21 :host.eui-button--size-l{font:var(--_font-l);min-height:calc(var(--eui-s-5xl) + var(--eui-s-3xs));min-width:calc(var(--eui-s-5xl) + var(--eui-s-3xs));padding:0 var(--eui-s-xs)}.eui-21 :host.eui-button--size-l ::ng-deep .eui-icon-svg svg{height:var(--eui-is-m);width:var(--eui-is-m)}.eui-21 :host.eui-button--rounded{border-radius:var(--eui-br-max)}.eui-21 :host.eui-button--rounded:focus-visible:not([readonly]){outline:var(--eui-bw-s) solid var(--eui-c-primary-border)!important;outline-offset:1px!important;border-radius:var(--eui-br-max)!important}.eui-21 :host.eui-button.eui-button--basic:focus-visible:not([readonly]){outline:var(--eui-bw-s) solid var(--eui-c-primary-border)!important;outline-offset:-2px!important;border-radius:var(--eui-br-s)!important}.eui-21 :host.eui-button.eui-button--basic.eui-button--rounded:focus-visible:not([readonly]){outline:var(--eui-bw-s) solid var(--eui-c-primary-border)!important;outline-offset:-2px!important;border-radius:var(--eui-br-max)!important}.eui-21 :host.eui-button.eui-button--basic.eui-button--rounded.eui-button--avatar:focus-visible:not([readonly]){outline:var(--eui-bw-s) solid var(--eui-c-primary-border)!important;outline-offset:1px!important;border-radius:var(--eui-br-max)!important}.eui-21 :host.eui-button--responsive{display:grid!important;position:relative;width:100%}.eui-21 :host.eui-button--responsive .eui-button__container{overflow:hidden}.eui-21 :host.eui-button--responsive .eui-button__container>label,.eui-21 :host.eui-button--responsive .eui-button__container>.eui-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.eui-21 :host.eui-button--block{width:100%}.eui-21 :host.eui-button--line-wrap{padding:var(--eui-s-s);white-space:normal}.eui-21 :host.eui-button--expand-toggle{background:var(--eui-c-surface-page);border-color:transparent;border-radius:0 0 var(--eui-s-xs) var(--eui-s-xs);min-height:var(--eui-s-m);padding:0 var(--eui-s-xl);box-shadow:var(--eui-sh-1)}.eui-21 :host.eui-button--expand-toggle:hover,.eui-21 :host.eui-button--expand-toggle:focus{box-shadow:var(--eui-sh-3)}.eui-21 :host.eui-button--start .eui-button__container{justify-content:start}.eui-21 :host.eui-button--end .eui-button__container{justify-content:end}.eui-21 :host.eui-button.disabled,.eui-21 :host.eui-button:disabled{pointer-events:none;background-image:none;box-shadow:none;cursor:not-allowed!important;opacity:var(--eui-o-50)}.eui-21 :host.eui-button--compact{font:var(--eui-f-s-compact);min-height:calc(var(--eui-s-xl) + var(--eui-s-4xs));min-width:calc(var(--eui-s-xl) + var(--eui-s-4xs));padding:0 var(--eui-s-4xs)}.eui-21 :host.eui-button--no-focus-ring:focus:not([readonly]){outline:0!important}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
136
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "21.0.0-rc.0", type: EuiButtonComponent, isStandalone: true, selector: "button[euiButton], a[euiButton]", inputs: { e2eAttr: "e2eAttr", id: "id", euiBasicButton: ["euiBasicButton", "euiBasicButton", booleanAttribute], euiButtonCall: ["euiButtonCall", "euiButtonCall", booleanAttribute], euiCTAButton: ["euiCTAButton", "euiCTAButton", booleanAttribute], euiBlockButton: ["euiBlockButton", "euiBlockButton", booleanAttribute], euiIconButton: ["euiIconButton", "euiIconButton", booleanAttribute], euiAvatarButton: ["euiAvatarButton", "euiAvatarButton", booleanAttribute], euiLineWrap: ["euiLineWrap", "euiLineWrap", booleanAttribute], isCompact: ["isCompact", "isCompact", booleanAttribute], hasNoFocusRing: ["hasNoFocusRing", "hasNoFocusRing", booleanAttribute], isChecked: "isChecked", euiDisabled: "euiDisabled" }, outputs: { buttonClick: "buttonClick" }, host: { listeners: { "click": "onClick()" }, properties: { "class": "this.cssClasses", "attr.data-e2e": "this.e2eAttr", "attr.id": "this.id" } }, hostDirectives: [{ directive: i1.BaseStatesDirective, inputs: ["euiPrimary", "euiPrimary", "euiBranding", "euiBranding", "euiSecondary", "euiSecondary", "euiSuccess", "euiSuccess", "euiInfo", "euiInfo", "euiWarning", "euiWarning", "euiDanger", "euiDanger", "euiInverse", "euiInverse", "euiVariant", "euiVariant", "euiSizeS", "euiSizeS", "euiSizeM", "euiSizeM", "euiSizeL", "euiSizeL", "euiSizeVariant", "euiSizeVariant", "euiOutline", "euiOutline", "euiRounded", "euiRounded", "euiResponsive", "euiResponsive", "euiStart", "euiStart", "euiEnd", "euiEnd"] }], ngImport: i0, template: "<span class=\"eui-button__container\">\n <ng-content></ng-content>\n</span>\n", styles: [".eui-21 :host.eui-button{--_color: var(--eui-c-secondary);--_basic-color: var(--eui-c-secondary);--_bg-color: var(--eui-c-secondary-surface-light);--_on-bg-color: var(--eui-c-secondary-on-surface-light);--_border-color: var(--eui-c-secondary-border-light);--_outline-border-color: var(--eui-c-secondary-border-light);--_hover-color: var(--eui-c-secondary-surface-light-hover);--_on-hover-color: var(--eui-c-secondary);--_basic-bg-color: transparent;--_basic-hover-color: var(--eui-c-secondary-surface-light-hover);--_on-basic-hover-color: var(--eui-c-secondary);--_outline-color: var(--eui-c-secondary);--_outline-bg-color: var(--eui-c-white);--_outline-hover-color: var(--eui-c-secondary-surface-light-hover);--_on-outline-hover-color: var(--eui-c-secondary);--_font-s: var(--eui-f-s-medium);--_font-m: var(--eui-f-m-medium);--_font-l: var(--eui-f-m-medium)}.eui-21 :host.eui-button--branding{--_color: var(--eui-c-branding);--_bg-color: var(--eui-c-branding-light);--_on-bg-color: var(--eui-c-branding-on-light);--_border-color: var(--eui-c-branding);--_outline-border-color: var(--eui-c-white);--_hover-color: var(--eui-c-white);--_on-hover-color: var(--eui-c-branding);--_basic-color: var(--eui-c-white);--_basic-bg-color: var(--eui-c-branding);--_basic-hover-color: var(--eui-c-branding-light);--_on-basic-hover-color: var(--eui-c-branding-on-light);--_outline-color: var(--eui-c-white);--_outline-bg-color: var(--eui-c-branding);--_outline-hover-color: var(--eui-c-branding-light);--_on-outline-hover-color: var(--eui-c-branding-on-light)}.eui-21 :host.eui-button--primary{--_color: var(--eui-c-primary);--_basic-color: var(--eui-c-primary);--_bg-color: var(--eui-c-primary-surface);--_on-bg-color: var(--eui-c-primary-on-surface);--_border-color: var(--eui-c-primary);--_outline-border-color: var(--eui-c-primary);--_hover-color: var(--eui-c-primary-surface-hover);--_on-hover-color: var(--eui-c-primary-on-surface-hover);--_basic-bg-color: transparent;--_basic-hover-color: var(--eui-c-primary-surface-light);--_on-basic-hover-color: var(--eui-c-primary);--_outline-color: var(--eui-c-primary);--_outline-bg-color: var(--eui-c-white);--_outline-hover-color: var(--eui-c-primary-surface-light);--_on-outline-hover-color: var(--eui-c-primary)}.eui-21 :host.eui-button--cta{--_color: var(--eui-c-cta);--_basic-color: var(--eui-c-cta);--_bg-color: var(--eui-c-cta-surface);--_on-bg-color: var(--eui-c-cta-on-surface);--_border-color: transparent;--_outline-border-color: var(--eui-c-cta);--_hover-color: var(--eui-c-cta-surface-hover);--_on-hover-color: var(--eui-c-cta-on-surface-hover);--_basic-bg-color: transparent;--_basic-hover-color: var(--eui-c-cta-surface-light);--_on-basic-hover-color: var(--eui-c-cta);--_outline-color: var(--eui-c-cta);--_outline-bg-color: var(--eui-c-white);--_outline-hover-color: var(--eui-c-cta-surface-light);--_on-outline-hover-color: var(--eui-c-cta)}.eui-21 :host.eui-button--info{--_color: var(--eui-c-info);--_basic-color: var(--eui-c-info);--_bg-color: var(--eui-c-info-surface);--_on-bg-color: var(--eui-c-info-on-surface);--_border-color: var(--eui-c-info);--_outline-border-color: var(--eui-c-info);--_hover-color: var(--eui-c-info-surface-hover);--_on-hover-color: var(--eui-c-info-on-surface-hover);--_basic-bg-color: transparent;--_basic-hover-color: var(--eui-c-info-surface-light);--_on-basic-hover-color: var(--eui-c-info);--_outline-color: var(--eui-c-info);--_outline-bg-color: var(--eui-c-white);--_outline-hover-color: var(--eui-c-info-surface-light);--_on-outline-hover-color: var(--eui-c-info)}.eui-21 :host.eui-button--success{--_color: var(--eui-c-success);--_basic-color: var(--eui-c-success);--_bg-color: var(--eui-c-success-surface);--_on-bg-color: var(--eui-c-success-on-surface);--_border-color: var(--eui-c-success);--_outline-border-color: var(--eui-c-success);--_hover-color: var(--eui-c-success-surface-hover);--_on-hover-color: var(--eui-c-success-on-surface-hover);--_basic-bg-color: transparent;--_basic-hover-color: var(--eui-c-success-surface-light);--_on-basic-hover-color: var(--eui-c-success);--_outline-color: var(--eui-c-success);--_outline-bg-color: var(--eui-c-white);--_outline-hover-color: var(--eui-c-success-surface-light);--_on-outline-hover-color: var(--eui-c-success)}.eui-21 :host.eui-button--warning{--_color: var(--eui-c-warning);--_basic-color: var(--eui-c-warning);--_bg-color: var(--eui-c-warning-surface);--_on-bg-color: var(--eui-c-warning-on-surface);--_border-color: var(--eui-c-warning);--_outline-border-color: var(--eui-c-warning);--_hover-color: var(--eui-c-warning-surface-hover);--_on-hover-color: var(--eui-c-warning-on-surface-hover);--_basic-bg-color: transparent;--_basic-hover-color: var(--eui-c-warning-surface-light);--_on-basic-hover-color: var(--eui-c-warning);--_outline-color: var(--eui-c-warning);--_outline-bg-color: var(--eui-c-white);--_outline-hover-color: var(--eui-c-warning-surface-light);--_on-outline-hover-color: var(--eui-c-warning)}.eui-21 :host.eui-button--danger{--_color: var(--eui-c-danger);--_basic-color: var(--eui-c-danger);--_bg-color: var(--eui-c-danger-surface);--_on-bg-color: var(--eui-c-danger-on-surface);--_border-color: var(--eui-c-danger);--_outline-border-color: var(--eui-c-danger);--_hover-color: var(--eui-c-danger-surface-hover);--_on-hover-color: var(--eui-c-danger-on-surface-hover);--_basic-bg-color: transparent;--_basic-hover-color: var(--eui-c-danger-surface-light);--_on-basic-hover-color: var(--eui-c-danger);--_outline-color: var(--eui-c-danger);--_outline-bg-color: var(--eui-c-white);--_outline-hover-color: var(--eui-c-danger-surface-light);--_on-outline-hover-color: var(--eui-c-danger)}.eui-21 :host.eui-button{align-items:center;background-image:none;border:var(--eui-bw-none);border-radius:var(--eui-br-m);box-sizing:border-box;cursor:pointer;display:inline-flex;flex-shrink:0;justify-content:center;outline:none;text-transform:none;transition:none;vertical-align:middle;white-space:nowrap;font:var(--_font-m);padding:calc(var(--eui-s-xs) - 1px) calc(var(--eui-s-m) - 1px)}.eui-21 :host.eui-button:focus-visible:not([readonly]){outline:var(--eui-bw-s) solid var(--eui-c-primary-border)!important;outline-offset:1px!important;border-radius:var(--eui-br-s)!important}.eui-21 :host.eui-button .eui-button__container{align-items:center;display:inline-flex;position:relative;gap:var(--eui-s-xs);justify-content:center;width:100%}.eui-21 :host.eui-button{background-color:var(--_bg-color);color:var(--_on-bg-color);border:var(--eui-bw-xs) solid var(--_border-color)}.eui-21 :host.eui-button ::ng-deep .eui-icon-svg svg{fill:var(--_on-bg-color);color:var(--_on-bg-color)}.eui-21 :host.eui-button:hover,.eui-21 :host.eui-button:focus{background-color:var(--_hover-color);color:var(--_on-hover-color)}.eui-21 :host.eui-button:hover ::ng-deep .eui-icon-svg svg,.eui-21 :host.eui-button:focus ::ng-deep .eui-icon-svg svg{fill:var(--_on-bg-color);color:var(--_on-bg-color)}.eui-21 :host.eui-button.eui-button--basic{border:var(--eui-bw-none);box-shadow:none;background-color:var(--_basic-bg-color);color:var(--_basic-color)}.eui-21 :host.eui-button.eui-button--basic ::ng-deep .eui-icon-svg svg{fill:var(--_basic-color);color:var(--_basic-color)}.eui-21 :host.eui-button.eui-button--outline{background-color:var(--_outline-bg-color);color:var(--_outline-color);border:var(--eui-bw-xs) solid var(--_outline-border-color)}.eui-21 :host.eui-button.eui-button--outline ::ng-deep .eui-icon-svg svg{fill:var(--_outline-color);color:var(--_outline-color)}.eui-21 :host.eui-button.eui-button--basic:hover,.eui-21 :host.eui-button.eui-button--basic:focus{background-color:var(--_basic-hover-color);color:var(--_on-basic-hover-color)}.eui-21 :host.eui-button.eui-button--basic:hover ::ng-deep .eui-icon-svg svg,.eui-21 :host.eui-button.eui-button--basic:focus ::ng-deep .eui-icon-svg svg{fill:var(--_on-basic-hover-color);color:var(--_on-basic-hover-color)}.eui-21 :host.eui-button.eui-button--outline:hover,.eui-21 :host.eui-button.eui-button--outline:focus{background-color:var(--_outline-hover-color);color:var(--_on-outline-hover-color)}.eui-21 :host.eui-button.eui-button--outline:hover ::ng-deep .eui-icon-svg svg,.eui-21 :host.eui-button.eui-button--outline:focus ::ng-deep .eui-icon-svg svg{fill:var(--_on-outline-hover-color);color:var(--_on-outline-hover-color)}.eui-21 :host.eui-button--icon-only{padding:inherit var(--eui-s-3xs);min-height:var(--eui-s-5xl);min-width:var(--eui-s-5xl)}.eui-21 :host.eui-button--size-s{font:var(--_font-s);min-height:calc(var(--eui-s-3xl) + var(--eui-s-3xs));min-width:calc(var(--eui-s-3xl) + var(--eui-s-3xs));padding:0 var(--eui-s-xs)}.eui-21 :host.eui-button--size-s ::ng-deep .eui-icon-svg svg{height:var(--eui-is-s);width:var(--eui-is-s)}.eui-21 :host.eui-button.eui-button--size-s.eui-button--icon-only{padding:calc(var(--eui-s-xs) - 2px) calc(var(--eui-s-xs) - 2px)}.eui-21 :host.eui-button--size-m{font:var(--_font-m)}.eui-21 :host.eui-button--size-l{font:var(--_font-l);min-height:calc(var(--eui-s-5xl) + var(--eui-s-3xs));min-width:calc(var(--eui-s-5xl) + var(--eui-s-3xs));padding:0 var(--eui-s-xs)}.eui-21 :host.eui-button--size-l ::ng-deep .eui-icon-svg svg{height:var(--eui-is-m);width:var(--eui-is-m)}.eui-21 :host.eui-button--rounded{border-radius:var(--eui-br-max)}.eui-21 :host.eui-button--rounded:focus-visible:not([readonly]){outline:var(--eui-bw-s) solid var(--eui-c-primary-border)!important;outline-offset:1px!important;border-radius:var(--eui-br-max)!important}.eui-21 :host.eui-button.eui-button--basic:focus-visible:not([readonly]){outline:var(--eui-bw-s) solid var(--eui-c-primary-border)!important;outline-offset:-2px!important;border-radius:var(--eui-br-s)!important}.eui-21 :host.eui-button.eui-button--basic.eui-button--rounded:focus-visible:not([readonly]){outline:var(--eui-bw-s) solid var(--eui-c-primary-border)!important;outline-offset:-2px!important;border-radius:var(--eui-br-max)!important}.eui-21 :host.eui-button.eui-button--basic.eui-button--rounded.eui-button--avatar:focus-visible:not([readonly]){outline:var(--eui-bw-s) solid var(--eui-c-primary-border)!important;outline-offset:1px!important;border-radius:var(--eui-br-max)!important}.eui-21 :host.eui-button--responsive{display:grid!important;position:relative;width:100%}.eui-21 :host.eui-button--responsive .eui-button__container{overflow:hidden}.eui-21 :host.eui-button--responsive .eui-button__container>label,.eui-21 :host.eui-button--responsive .eui-button__container>.eui-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.eui-21 :host.eui-button--block{width:100%}.eui-21 :host.eui-button--line-wrap{padding:var(--eui-s-s);white-space:normal}.eui-21 :host.eui-button--expand-toggle{background:var(--eui-c-surface-page);border-color:transparent;border-radius:0 0 var(--eui-s-xs) var(--eui-s-xs);min-height:var(--eui-s-m);padding:0 var(--eui-s-xl);box-shadow:var(--eui-sh-1)}.eui-21 :host.eui-button--expand-toggle:hover,.eui-21 :host.eui-button--expand-toggle:focus{box-shadow:var(--eui-sh-3)}.eui-21 :host.eui-button--start .eui-button__container{justify-content:start}.eui-21 :host.eui-button--end .eui-button__container{justify-content:end}.eui-21 :host.eui-button.disabled,.eui-21 :host.eui-button:disabled{pointer-events:none;background-image:none;box-shadow:none;cursor:not-allowed!important;opacity:var(--eui-o-50)}.eui-21 :host.eui-button--compact{font:var(--eui-f-s-compact);min-height:calc(var(--eui-s-xl) + var(--eui-s-4xs));min-width:calc(var(--eui-s-xl) + var(--eui-s-4xs));padding:0 var(--eui-s-4xs)}.eui-21 :host.eui-button--no-focus-ring:focus:not([readonly]){outline:0!important}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
137
137
  }
138
138
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-rc.0", ngImport: i0, type: EuiButtonComponent, decorators: [{
139
139
  type: Component,
@@ -161,7 +161,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-rc.0", ng
161
161
  'euiEnd',
162
162
  ],
163
163
  },
164
- ], template: "<span class=\"eui-button__container\">\n <ng-content></ng-content>\n</span>\n", styles: [".eui-21 :host.eui-button{--_color: var(--eui-c-secondary);--_basic-color: var(--eui-c-secondary);--_bg-color: var(--eui-c-secondary-surface-light);--_on-bg-color: var(--eui-c-secondary-on-surface-light);--_border-color: var(--eui-c-secondary-border-light);--_outline-border-color: var(--eui-c-secondary-border-light);--_hover-color: var(--eui-c-secondary-surface-light-hover);--_on-hover-color: var(--eui-c-secondary);--_basic-bg-color: transparent;--_basic-hover-color: var(--eui-c-secondary-surface-light-hover);--_on-basic-hover-color: var(--eui-c-secondary);--_outline-color: var(--eui-c-secondary);--_outline-bg-color: var(--eui-c-white);--_outline-hover-color: var(--eui-c-secondary-surface-light-hover);--_on-outline-hover-color: var(--eui-c-secondary);--_font-s: var(--eui-f-s-medium);--_font-m: var(--eui-f-m-medium);--_font-l: var(--eui-f-m-medium)}.eui-21 :host.eui-button--branding{--_color: var(--eui-c-branding);--_bg-color: var(--eui-c-branding-surface-light);--_on-bg-color: var(--eui-c-branding);--_border-color: var(--eui-c-branding);--_outline-border-color: var(--eui-c-white);--_hover-color: var(--eui-c-white);--_on-hover-color: var(--eui-c-branding);--_basic-color: var(--eui-c-white);--_basic-bg-color: var(--eui-c-branding);--_basic-hover-color: var(--eui-c-branding-light);--_on-basic-hover-color: var(--eui-c-branding-on-light);--_outline-color: var(--eui-c-white);--_outline-bg-color: var(--eui-c-branding);--_outline-hover-color: var(--eui-c-branding-light);--_on-outline-hover-color: var(--eui-c-branding-on-light)}.eui-21 :host.eui-button--primary{--_color: var(--eui-c-primary);--_basic-color: var(--eui-c-primary);--_bg-color: var(--eui-c-primary-surface);--_on-bg-color: var(--eui-c-primary-on-surface);--_border-color: var(--eui-c-primary);--_outline-border-color: var(--eui-c-primary);--_hover-color: var(--eui-c-primary-surface-hover);--_on-hover-color: var(--eui-c-primary-on-surface-hover);--_basic-bg-color: transparent;--_basic-hover-color: var(--eui-c-primary-surface-light);--_on-basic-hover-color: var(--eui-c-primary);--_outline-color: var(--eui-c-primary);--_outline-bg-color: var(--eui-c-white);--_outline-hover-color: var(--eui-c-primary-surface-light);--_on-outline-hover-color: var(--eui-c-primary)}.eui-21 :host.eui-button--cta{--_color: var(--eui-c-cta);--_basic-color: var(--eui-c-cta);--_bg-color: var(--eui-c-cta-surface);--_on-bg-color: var(--eui-c-cta-on-surface);--_border-color: transparent;--_outline-border-color: var(--eui-c-cta);--_hover-color: var(--eui-c-cta-surface-hover);--_on-hover-color: var(--eui-c-cta-on-surface-hover);--_basic-bg-color: transparent;--_basic-hover-color: var(--eui-c-cta-surface-light);--_on-basic-hover-color: var(--eui-c-cta);--_outline-color: var(--eui-c-cta);--_outline-bg-color: var(--eui-c-white);--_outline-hover-color: var(--eui-c-cta-surface-light);--_on-outline-hover-color: var(--eui-c-cta)}.eui-21 :host.eui-button--info{--_color: var(--eui-c-info);--_basic-color: var(--eui-c-info);--_bg-color: var(--eui-c-info-surface);--_on-bg-color: var(--eui-c-info-on-surface);--_border-color: var(--eui-c-info);--_outline-border-color: var(--eui-c-info);--_hover-color: var(--eui-c-info-surface-hover);--_on-hover-color: var(--eui-c-info-on-surface-hover);--_basic-bg-color: transparent;--_basic-hover-color: var(--eui-c-info-surface-light);--_on-basic-hover-color: var(--eui-c-info);--_outline-color: var(--eui-c-info);--_outline-bg-color: var(--eui-c-white);--_outline-hover-color: var(--eui-c-info-surface-light);--_on-outline-hover-color: var(--eui-c-info)}.eui-21 :host.eui-button--success{--_color: var(--eui-c-success);--_basic-color: var(--eui-c-success);--_bg-color: var(--eui-c-success-surface);--_on-bg-color: var(--eui-c-success-on-surface);--_border-color: var(--eui-c-success);--_outline-border-color: var(--eui-c-success);--_hover-color: var(--eui-c-success-surface-hover);--_on-hover-color: var(--eui-c-success-on-surface-hover);--_basic-bg-color: transparent;--_basic-hover-color: var(--eui-c-success-surface-light);--_on-basic-hover-color: var(--eui-c-success);--_outline-color: var(--eui-c-success);--_outline-bg-color: var(--eui-c-white);--_outline-hover-color: var(--eui-c-success-surface-light);--_on-outline-hover-color: var(--eui-c-success)}.eui-21 :host.eui-button--warning{--_color: var(--eui-c-warning);--_basic-color: var(--eui-c-warning);--_bg-color: var(--eui-c-warning-surface);--_on-bg-color: var(--eui-c-warning-on-surface);--_border-color: var(--eui-c-warning);--_outline-border-color: var(--eui-c-warning);--_hover-color: var(--eui-c-warning-surface-hover);--_on-hover-color: var(--eui-c-warning-on-surface-hover);--_basic-bg-color: transparent;--_basic-hover-color: var(--eui-c-warning-surface-light);--_on-basic-hover-color: var(--eui-c-warning);--_outline-color: var(--eui-c-warning);--_outline-bg-color: var(--eui-c-white);--_outline-hover-color: var(--eui-c-warning-surface-light);--_on-outline-hover-color: var(--eui-c-warning)}.eui-21 :host.eui-button--danger{--_color: var(--eui-c-danger);--_basic-color: var(--eui-c-danger);--_bg-color: var(--eui-c-danger-surface);--_on-bg-color: var(--eui-c-danger-on-surface);--_border-color: var(--eui-c-danger);--_outline-border-color: var(--eui-c-danger);--_hover-color: var(--eui-c-danger-surface-hover);--_on-hover-color: var(--eui-c-danger-on-surface-hover);--_basic-bg-color: transparent;--_basic-hover-color: var(--eui-c-danger-surface-light);--_on-basic-hover-color: var(--eui-c-danger);--_outline-color: var(--eui-c-danger);--_outline-bg-color: var(--eui-c-white);--_outline-hover-color: var(--eui-c-danger-surface-light);--_on-outline-hover-color: var(--eui-c-danger)}.eui-21 :host.eui-button{align-items:center;background-image:none;border:var(--eui-bw-none);border-radius:var(--eui-br-m);box-sizing:border-box;cursor:pointer;display:inline-flex;flex-shrink:0;justify-content:center;outline:none;text-transform:none;transition:none;vertical-align:middle;white-space:nowrap;font:var(--_font-m);padding:calc(var(--eui-s-xs) - 1px) calc(var(--eui-s-m) - 1px)}.eui-21 :host.eui-button:focus-visible:not([readonly]){outline:var(--eui-bw-s) solid var(--eui-c-primary-border)!important;outline-offset:1px!important;border-radius:var(--eui-br-s)!important}.eui-21 :host.eui-button .eui-button__container{align-items:center;display:inline-flex;position:relative;gap:var(--eui-s-xs);justify-content:center;width:100%}.eui-21 :host.eui-button{background-color:var(--_bg-color);color:var(--_on-bg-color);border:var(--eui-bw-xs) solid var(--_border-color)}.eui-21 :host.eui-button ::ng-deep .eui-icon-svg svg{fill:var(--_on-bg-color);color:var(--_on-bg-color)}.eui-21 :host.eui-button:hover,.eui-21 :host.eui-button:focus{background-color:var(--_hover-color);color:var(--_on-hover-color)}.eui-21 :host.eui-button:hover ::ng-deep .eui-icon-svg svg,.eui-21 :host.eui-button:focus ::ng-deep .eui-icon-svg svg{fill:var(--_on-bg-color);color:var(--_on-bg-color)}.eui-21 :host.eui-button.eui-button--basic{border:var(--eui-bw-none);box-shadow:none;background-color:var(--_basic-bg-color);color:var(--_basic-color)}.eui-21 :host.eui-button.eui-button--basic ::ng-deep .eui-icon-svg svg{fill:var(--_basic-color);color:var(--_basic-color)}.eui-21 :host.eui-button.eui-button--outline{background-color:var(--_outline-bg-color);color:var(--_outline-color);border:var(--eui-bw-xs) solid var(--_outline-border-color)}.eui-21 :host.eui-button.eui-button--outline ::ng-deep .eui-icon-svg svg{fill:var(--_outline-color);color:var(--_outline-color)}.eui-21 :host.eui-button.eui-button--basic:hover,.eui-21 :host.eui-button.eui-button--basic:focus{background-color:var(--_basic-hover-color);color:var(--_on-basic-hover-color)}.eui-21 :host.eui-button.eui-button--basic:hover ::ng-deep .eui-icon-svg svg,.eui-21 :host.eui-button.eui-button--basic:focus ::ng-deep .eui-icon-svg svg{fill:var(--_on-basic-hover-color);color:var(--_on-basic-hover-color)}.eui-21 :host.eui-button.eui-button--outline:hover,.eui-21 :host.eui-button.eui-button--outline:focus{background-color:var(--_outline-hover-color);color:var(--_on-outline-hover-color)}.eui-21 :host.eui-button.eui-button--outline:hover ::ng-deep .eui-icon-svg svg,.eui-21 :host.eui-button.eui-button--outline:focus ::ng-deep .eui-icon-svg svg{fill:var(--_on-outline-hover-color);color:var(--_on-outline-hover-color)}.eui-21 :host.eui-button--icon-only{padding:inherit var(--eui-s-3xs);min-height:var(--eui-s-5xl);min-width:var(--eui-s-5xl)}.eui-21 :host.eui-button--size-s{font:var(--_font-s);min-height:calc(var(--eui-s-3xl) + var(--eui-s-3xs));min-width:calc(var(--eui-s-3xl) + var(--eui-s-3xs));padding:0 var(--eui-s-xs)}.eui-21 :host.eui-button--size-s ::ng-deep .eui-icon-svg svg{height:var(--eui-is-s);width:var(--eui-is-s)}.eui-21 :host.eui-button.eui-button--size-s.eui-button--icon-only{padding:calc(var(--eui-s-xs) - 2px) calc(var(--eui-s-xs) - 2px)}.eui-21 :host.eui-button--size-m{font:var(--_font-m)}.eui-21 :host.eui-button--size-l{font:var(--_font-l);min-height:calc(var(--eui-s-5xl) + var(--eui-s-3xs));min-width:calc(var(--eui-s-5xl) + var(--eui-s-3xs));padding:0 var(--eui-s-xs)}.eui-21 :host.eui-button--size-l ::ng-deep .eui-icon-svg svg{height:var(--eui-is-m);width:var(--eui-is-m)}.eui-21 :host.eui-button--rounded{border-radius:var(--eui-br-max)}.eui-21 :host.eui-button--rounded:focus-visible:not([readonly]){outline:var(--eui-bw-s) solid var(--eui-c-primary-border)!important;outline-offset:1px!important;border-radius:var(--eui-br-max)!important}.eui-21 :host.eui-button.eui-button--basic:focus-visible:not([readonly]){outline:var(--eui-bw-s) solid var(--eui-c-primary-border)!important;outline-offset:-2px!important;border-radius:var(--eui-br-s)!important}.eui-21 :host.eui-button.eui-button--basic.eui-button--rounded:focus-visible:not([readonly]){outline:var(--eui-bw-s) solid var(--eui-c-primary-border)!important;outline-offset:-2px!important;border-radius:var(--eui-br-max)!important}.eui-21 :host.eui-button.eui-button--basic.eui-button--rounded.eui-button--avatar:focus-visible:not([readonly]){outline:var(--eui-bw-s) solid var(--eui-c-primary-border)!important;outline-offset:1px!important;border-radius:var(--eui-br-max)!important}.eui-21 :host.eui-button--responsive{display:grid!important;position:relative;width:100%}.eui-21 :host.eui-button--responsive .eui-button__container{overflow:hidden}.eui-21 :host.eui-button--responsive .eui-button__container>label,.eui-21 :host.eui-button--responsive .eui-button__container>.eui-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.eui-21 :host.eui-button--block{width:100%}.eui-21 :host.eui-button--line-wrap{padding:var(--eui-s-s);white-space:normal}.eui-21 :host.eui-button--expand-toggle{background:var(--eui-c-surface-page);border-color:transparent;border-radius:0 0 var(--eui-s-xs) var(--eui-s-xs);min-height:var(--eui-s-m);padding:0 var(--eui-s-xl);box-shadow:var(--eui-sh-1)}.eui-21 :host.eui-button--expand-toggle:hover,.eui-21 :host.eui-button--expand-toggle:focus{box-shadow:var(--eui-sh-3)}.eui-21 :host.eui-button--start .eui-button__container{justify-content:start}.eui-21 :host.eui-button--end .eui-button__container{justify-content:end}.eui-21 :host.eui-button.disabled,.eui-21 :host.eui-button:disabled{pointer-events:none;background-image:none;box-shadow:none;cursor:not-allowed!important;opacity:var(--eui-o-50)}.eui-21 :host.eui-button--compact{font:var(--eui-f-s-compact);min-height:calc(var(--eui-s-xl) + var(--eui-s-4xs));min-width:calc(var(--eui-s-xl) + var(--eui-s-4xs));padding:0 var(--eui-s-4xs)}.eui-21 :host.eui-button--no-focus-ring:focus:not([readonly]){outline:0!important}\n"] }]
164
+ ], template: "<span class=\"eui-button__container\">\n <ng-content></ng-content>\n</span>\n", styles: [".eui-21 :host.eui-button{--_color: var(--eui-c-secondary);--_basic-color: var(--eui-c-secondary);--_bg-color: var(--eui-c-secondary-surface-light);--_on-bg-color: var(--eui-c-secondary-on-surface-light);--_border-color: var(--eui-c-secondary-border-light);--_outline-border-color: var(--eui-c-secondary-border-light);--_hover-color: var(--eui-c-secondary-surface-light-hover);--_on-hover-color: var(--eui-c-secondary);--_basic-bg-color: transparent;--_basic-hover-color: var(--eui-c-secondary-surface-light-hover);--_on-basic-hover-color: var(--eui-c-secondary);--_outline-color: var(--eui-c-secondary);--_outline-bg-color: var(--eui-c-white);--_outline-hover-color: var(--eui-c-secondary-surface-light-hover);--_on-outline-hover-color: var(--eui-c-secondary);--_font-s: var(--eui-f-s-medium);--_font-m: var(--eui-f-m-medium);--_font-l: var(--eui-f-m-medium)}.eui-21 :host.eui-button--branding{--_color: var(--eui-c-branding);--_bg-color: var(--eui-c-branding-light);--_on-bg-color: var(--eui-c-branding-on-light);--_border-color: var(--eui-c-branding);--_outline-border-color: var(--eui-c-white);--_hover-color: var(--eui-c-white);--_on-hover-color: var(--eui-c-branding);--_basic-color: var(--eui-c-white);--_basic-bg-color: var(--eui-c-branding);--_basic-hover-color: var(--eui-c-branding-light);--_on-basic-hover-color: var(--eui-c-branding-on-light);--_outline-color: var(--eui-c-white);--_outline-bg-color: var(--eui-c-branding);--_outline-hover-color: var(--eui-c-branding-light);--_on-outline-hover-color: var(--eui-c-branding-on-light)}.eui-21 :host.eui-button--primary{--_color: var(--eui-c-primary);--_basic-color: var(--eui-c-primary);--_bg-color: var(--eui-c-primary-surface);--_on-bg-color: var(--eui-c-primary-on-surface);--_border-color: var(--eui-c-primary);--_outline-border-color: var(--eui-c-primary);--_hover-color: var(--eui-c-primary-surface-hover);--_on-hover-color: var(--eui-c-primary-on-surface-hover);--_basic-bg-color: transparent;--_basic-hover-color: var(--eui-c-primary-surface-light);--_on-basic-hover-color: var(--eui-c-primary);--_outline-color: var(--eui-c-primary);--_outline-bg-color: var(--eui-c-white);--_outline-hover-color: var(--eui-c-primary-surface-light);--_on-outline-hover-color: var(--eui-c-primary)}.eui-21 :host.eui-button--cta{--_color: var(--eui-c-cta);--_basic-color: var(--eui-c-cta);--_bg-color: var(--eui-c-cta-surface);--_on-bg-color: var(--eui-c-cta-on-surface);--_border-color: transparent;--_outline-border-color: var(--eui-c-cta);--_hover-color: var(--eui-c-cta-surface-hover);--_on-hover-color: var(--eui-c-cta-on-surface-hover);--_basic-bg-color: transparent;--_basic-hover-color: var(--eui-c-cta-surface-light);--_on-basic-hover-color: var(--eui-c-cta);--_outline-color: var(--eui-c-cta);--_outline-bg-color: var(--eui-c-white);--_outline-hover-color: var(--eui-c-cta-surface-light);--_on-outline-hover-color: var(--eui-c-cta)}.eui-21 :host.eui-button--info{--_color: var(--eui-c-info);--_basic-color: var(--eui-c-info);--_bg-color: var(--eui-c-info-surface);--_on-bg-color: var(--eui-c-info-on-surface);--_border-color: var(--eui-c-info);--_outline-border-color: var(--eui-c-info);--_hover-color: var(--eui-c-info-surface-hover);--_on-hover-color: var(--eui-c-info-on-surface-hover);--_basic-bg-color: transparent;--_basic-hover-color: var(--eui-c-info-surface-light);--_on-basic-hover-color: var(--eui-c-info);--_outline-color: var(--eui-c-info);--_outline-bg-color: var(--eui-c-white);--_outline-hover-color: var(--eui-c-info-surface-light);--_on-outline-hover-color: var(--eui-c-info)}.eui-21 :host.eui-button--success{--_color: var(--eui-c-success);--_basic-color: var(--eui-c-success);--_bg-color: var(--eui-c-success-surface);--_on-bg-color: var(--eui-c-success-on-surface);--_border-color: var(--eui-c-success);--_outline-border-color: var(--eui-c-success);--_hover-color: var(--eui-c-success-surface-hover);--_on-hover-color: var(--eui-c-success-on-surface-hover);--_basic-bg-color: transparent;--_basic-hover-color: var(--eui-c-success-surface-light);--_on-basic-hover-color: var(--eui-c-success);--_outline-color: var(--eui-c-success);--_outline-bg-color: var(--eui-c-white);--_outline-hover-color: var(--eui-c-success-surface-light);--_on-outline-hover-color: var(--eui-c-success)}.eui-21 :host.eui-button--warning{--_color: var(--eui-c-warning);--_basic-color: var(--eui-c-warning);--_bg-color: var(--eui-c-warning-surface);--_on-bg-color: var(--eui-c-warning-on-surface);--_border-color: var(--eui-c-warning);--_outline-border-color: var(--eui-c-warning);--_hover-color: var(--eui-c-warning-surface-hover);--_on-hover-color: var(--eui-c-warning-on-surface-hover);--_basic-bg-color: transparent;--_basic-hover-color: var(--eui-c-warning-surface-light);--_on-basic-hover-color: var(--eui-c-warning);--_outline-color: var(--eui-c-warning);--_outline-bg-color: var(--eui-c-white);--_outline-hover-color: var(--eui-c-warning-surface-light);--_on-outline-hover-color: var(--eui-c-warning)}.eui-21 :host.eui-button--danger{--_color: var(--eui-c-danger);--_basic-color: var(--eui-c-danger);--_bg-color: var(--eui-c-danger-surface);--_on-bg-color: var(--eui-c-danger-on-surface);--_border-color: var(--eui-c-danger);--_outline-border-color: var(--eui-c-danger);--_hover-color: var(--eui-c-danger-surface-hover);--_on-hover-color: var(--eui-c-danger-on-surface-hover);--_basic-bg-color: transparent;--_basic-hover-color: var(--eui-c-danger-surface-light);--_on-basic-hover-color: var(--eui-c-danger);--_outline-color: var(--eui-c-danger);--_outline-bg-color: var(--eui-c-white);--_outline-hover-color: var(--eui-c-danger-surface-light);--_on-outline-hover-color: var(--eui-c-danger)}.eui-21 :host.eui-button{align-items:center;background-image:none;border:var(--eui-bw-none);border-radius:var(--eui-br-m);box-sizing:border-box;cursor:pointer;display:inline-flex;flex-shrink:0;justify-content:center;outline:none;text-transform:none;transition:none;vertical-align:middle;white-space:nowrap;font:var(--_font-m);padding:calc(var(--eui-s-xs) - 1px) calc(var(--eui-s-m) - 1px)}.eui-21 :host.eui-button:focus-visible:not([readonly]){outline:var(--eui-bw-s) solid var(--eui-c-primary-border)!important;outline-offset:1px!important;border-radius:var(--eui-br-s)!important}.eui-21 :host.eui-button .eui-button__container{align-items:center;display:inline-flex;position:relative;gap:var(--eui-s-xs);justify-content:center;width:100%}.eui-21 :host.eui-button{background-color:var(--_bg-color);color:var(--_on-bg-color);border:var(--eui-bw-xs) solid var(--_border-color)}.eui-21 :host.eui-button ::ng-deep .eui-icon-svg svg{fill:var(--_on-bg-color);color:var(--_on-bg-color)}.eui-21 :host.eui-button:hover,.eui-21 :host.eui-button:focus{background-color:var(--_hover-color);color:var(--_on-hover-color)}.eui-21 :host.eui-button:hover ::ng-deep .eui-icon-svg svg,.eui-21 :host.eui-button:focus ::ng-deep .eui-icon-svg svg{fill:var(--_on-bg-color);color:var(--_on-bg-color)}.eui-21 :host.eui-button.eui-button--basic{border:var(--eui-bw-none);box-shadow:none;background-color:var(--_basic-bg-color);color:var(--_basic-color)}.eui-21 :host.eui-button.eui-button--basic ::ng-deep .eui-icon-svg svg{fill:var(--_basic-color);color:var(--_basic-color)}.eui-21 :host.eui-button.eui-button--outline{background-color:var(--_outline-bg-color);color:var(--_outline-color);border:var(--eui-bw-xs) solid var(--_outline-border-color)}.eui-21 :host.eui-button.eui-button--outline ::ng-deep .eui-icon-svg svg{fill:var(--_outline-color);color:var(--_outline-color)}.eui-21 :host.eui-button.eui-button--basic:hover,.eui-21 :host.eui-button.eui-button--basic:focus{background-color:var(--_basic-hover-color);color:var(--_on-basic-hover-color)}.eui-21 :host.eui-button.eui-button--basic:hover ::ng-deep .eui-icon-svg svg,.eui-21 :host.eui-button.eui-button--basic:focus ::ng-deep .eui-icon-svg svg{fill:var(--_on-basic-hover-color);color:var(--_on-basic-hover-color)}.eui-21 :host.eui-button.eui-button--outline:hover,.eui-21 :host.eui-button.eui-button--outline:focus{background-color:var(--_outline-hover-color);color:var(--_on-outline-hover-color)}.eui-21 :host.eui-button.eui-button--outline:hover ::ng-deep .eui-icon-svg svg,.eui-21 :host.eui-button.eui-button--outline:focus ::ng-deep .eui-icon-svg svg{fill:var(--_on-outline-hover-color);color:var(--_on-outline-hover-color)}.eui-21 :host.eui-button--icon-only{padding:inherit var(--eui-s-3xs);min-height:var(--eui-s-5xl);min-width:var(--eui-s-5xl)}.eui-21 :host.eui-button--size-s{font:var(--_font-s);min-height:calc(var(--eui-s-3xl) + var(--eui-s-3xs));min-width:calc(var(--eui-s-3xl) + var(--eui-s-3xs));padding:0 var(--eui-s-xs)}.eui-21 :host.eui-button--size-s ::ng-deep .eui-icon-svg svg{height:var(--eui-is-s);width:var(--eui-is-s)}.eui-21 :host.eui-button.eui-button--size-s.eui-button--icon-only{padding:calc(var(--eui-s-xs) - 2px) calc(var(--eui-s-xs) - 2px)}.eui-21 :host.eui-button--size-m{font:var(--_font-m)}.eui-21 :host.eui-button--size-l{font:var(--_font-l);min-height:calc(var(--eui-s-5xl) + var(--eui-s-3xs));min-width:calc(var(--eui-s-5xl) + var(--eui-s-3xs));padding:0 var(--eui-s-xs)}.eui-21 :host.eui-button--size-l ::ng-deep .eui-icon-svg svg{height:var(--eui-is-m);width:var(--eui-is-m)}.eui-21 :host.eui-button--rounded{border-radius:var(--eui-br-max)}.eui-21 :host.eui-button--rounded:focus-visible:not([readonly]){outline:var(--eui-bw-s) solid var(--eui-c-primary-border)!important;outline-offset:1px!important;border-radius:var(--eui-br-max)!important}.eui-21 :host.eui-button.eui-button--basic:focus-visible:not([readonly]){outline:var(--eui-bw-s) solid var(--eui-c-primary-border)!important;outline-offset:-2px!important;border-radius:var(--eui-br-s)!important}.eui-21 :host.eui-button.eui-button--basic.eui-button--rounded:focus-visible:not([readonly]){outline:var(--eui-bw-s) solid var(--eui-c-primary-border)!important;outline-offset:-2px!important;border-radius:var(--eui-br-max)!important}.eui-21 :host.eui-button.eui-button--basic.eui-button--rounded.eui-button--avatar:focus-visible:not([readonly]){outline:var(--eui-bw-s) solid var(--eui-c-primary-border)!important;outline-offset:1px!important;border-radius:var(--eui-br-max)!important}.eui-21 :host.eui-button--responsive{display:grid!important;position:relative;width:100%}.eui-21 :host.eui-button--responsive .eui-button__container{overflow:hidden}.eui-21 :host.eui-button--responsive .eui-button__container>label,.eui-21 :host.eui-button--responsive .eui-button__container>.eui-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.eui-21 :host.eui-button--block{width:100%}.eui-21 :host.eui-button--line-wrap{padding:var(--eui-s-s);white-space:normal}.eui-21 :host.eui-button--expand-toggle{background:var(--eui-c-surface-page);border-color:transparent;border-radius:0 0 var(--eui-s-xs) var(--eui-s-xs);min-height:var(--eui-s-m);padding:0 var(--eui-s-xl);box-shadow:var(--eui-sh-1)}.eui-21 :host.eui-button--expand-toggle:hover,.eui-21 :host.eui-button--expand-toggle:focus{box-shadow:var(--eui-sh-3)}.eui-21 :host.eui-button--start .eui-button__container{justify-content:start}.eui-21 :host.eui-button--end .eui-button__container{justify-content:end}.eui-21 :host.eui-button.disabled,.eui-21 :host.eui-button:disabled{pointer-events:none;background-image:none;box-shadow:none;cursor:not-allowed!important;opacity:var(--eui-o-50)}.eui-21 :host.eui-button--compact{font:var(--eui-f-s-compact);min-height:calc(var(--eui-s-xl) + var(--eui-s-4xs));min-width:calc(var(--eui-s-xl) + var(--eui-s-4xs));padding:0 var(--eui-s-4xs)}.eui-21 :host.eui-button--no-focus-ring:focus:not([readonly]){outline:0!important}\n"] }]
165
165
  }], propDecorators: { cssClasses: [{
166
166
  type: HostBinding,
167
167
  args: ['class']
@@ -1 +1 @@
1
- {"version":3,"file":"eui-components-eui-button.mjs","sources":["../../eui-button/eui-button.component.ts","../../eui-button/eui-button.component.html","../../eui-button/index.ts","../../eui-button/eui-components-eui-button.ts"],"sourcesContent":["import {\n Component,\n HostBinding,\n HostListener,\n Input,\n Output,\n EventEmitter,\n ChangeDetectionStrategy,\n Renderer2,\n ElementRef,\n booleanAttribute,\n inject,\n} from '@angular/core';\n\nimport { BaseStatesDirective } from '@eui/components/shared';\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\n\n/**\n * @description\n * A versatile button component that supports various states, sizes, and visual styles.\n * Can be used as either a button or anchor element with consistent styling.\n */\n@Component({\n templateUrl: './eui-button.component.html',\n // eslint-disable-next-line\n selector: 'button[euiButton], a[euiButton]',\n styleUrl: './eui-button.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [\n {\n directive: BaseStatesDirective,\n inputs: [\n 'euiPrimary',\n 'euiBranding',\n 'euiSecondary',\n 'euiSuccess',\n 'euiInfo',\n 'euiWarning',\n 'euiDanger',\n 'euiInverse',\n 'euiVariant',\n 'euiSizeS',\n 'euiSizeM',\n 'euiSizeL',\n 'euiSizeVariant',\n 'euiOutline',\n 'euiRounded',\n 'euiResponsive',\n 'euiStart',\n 'euiEnd',\n ],\n },\n ],\n})\nexport class EuiButtonComponent {\n /**\n * @description\n * Computes and returns the CSS classes for the button based on its current state\n *\n * @returns {string} Space-separated string of CSS class names\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [\n this.baseStatesDirective.getCssClasses('eui-button'),\n this.euiBasicButton ? 'eui-button--basic eui--basic' : '',\n this.euiBlockButton ? 'eui-button--block' : '',\n this.euiIconButton ? 'eui-button--icon-only' : '',\n this.euiLineWrap ? 'eui-button--line-wrap' : '',\n this.hasNoFocusRing ? 'eui-button--no-focus-ring': '',\n this.isCompact ? 'eui-button--compact': '',\n this.euiCTAButton ? 'eui-button--cta': '',\n this.euiAvatarButton ? 'eui-button--avatar': '',\n ]\n .join(' ')\n .trim();\n }\n\n /**\n * @description Data attribute for e2e testing\n * @default eui-button\n */\n @HostBinding('attr.data-e2e') @Input() e2eAttr = 'eui-button';\n\n /** @description ID attribute for the button element */\n @HostBinding('attr.id')\n @Input() id: string;\n\n /**\n * @description When true, applies basic styling without background\n * @default false\n */\n @Input({ transform: booleanAttribute }) euiBasicButton = false;\n\n /**\n * @description When true, styles the button as a call-to-action\n * @deprecated will be removed in future eUI version and replaced by euiCTAButton\n * @default false\n */\n @Input({ transform: booleanAttribute }) euiButtonCall = false;\n\n /**\n * @description When true, styles the button as a call-to-action\n * @default false\n */\n @Input({ transform: booleanAttribute }) euiCTAButton = false;\n\n /**\n * @description When true, makes the button full-width\n * @default false\n */\n @Input({ transform: booleanAttribute }) euiBlockButton = false;\n\n /**\n * @description When true, styles the button for icon-only content\n * @default false\n */\n @Input({ transform: booleanAttribute }) euiIconButton = false;\n\n /**\n * @description When true, style the button when used in avatar trigger (for dropdown trigger f.e. see actionable avatar)\n * @default false\n */\n @Input({ transform: booleanAttribute }) euiAvatarButton = false;\n\n /**\n * @description When true, allows text content to wrap\n * @default false\n */\n @Input({ transform: booleanAttribute }) euiLineWrap = false;\n\n /**\n * @description When true, applies styling with lower padding / reduced height and width\n * @default false\n */\n @Input({ transform: booleanAttribute }) isCompact = false; \n \n /**\n * @description When true, applies styling without focus ring\n * @default false\n */\n @Input({ transform: booleanAttribute }) hasNoFocusRing = false; \n\n /**\n * @description\n * Controls the checked state of the button\n * When true, applies accent styling\n */\n @Input()\n public get isChecked(): boolean {\n return this._isChecked;\n }\n public set isChecked(value: BooleanInput) {\n this.baseStatesDirective.euiPrimary = coerceBooleanProperty(value);\n this._isChecked = coerceBooleanProperty(value);\n }\n\n /**\n * @description\n * Controls the disabled state of the button\n * When true, adds the disabled attribute and prevents interaction\n */\n @Input()\n public get euiDisabled(): boolean {\n return this._euiDisabled;\n }\n public set euiDisabled(value: BooleanInput) {\n this._euiDisabled = coerceBooleanProperty(value);\n if (this._euiDisabled) {\n this._renderer.setAttribute(this._elementRef.nativeElement, 'disabled', 'true');\n } else {\n this._renderer.removeAttribute(this._elementRef.nativeElement, 'disabled');\n }\n }\n\n /**\n * @description\n * Event emitted when the button is clicked\n * Emits the button component instance\n */\n @Output() buttonClick: EventEmitter<EuiButtonComponent> = new EventEmitter<EuiButtonComponent>();\n\n public baseStatesDirective: BaseStatesDirective = inject(BaseStatesDirective);\n protected _renderer: Renderer2 = inject(Renderer2);\n protected _elementRef: ElementRef<HTMLButtonElement> = inject(ElementRef);\n private _isChecked = false;\n private _euiDisabled = false;\n\n /**\n * @description\n * Click event handler that emits the buttonClick event\n * @private\n */\n @HostListener('click')\n protected onClick(): void {\n this.buttonClick.emit(this);\n }\n}\n","<span class=\"eui-button__container\">\n <ng-content></ng-content>\n</span>\n","import { EuiButtonComponent } from './eui-button.component';\n\nexport * from './eui-button.component';\n\nexport const EUI_BUTTON = [\n EuiButtonComponent,\n] as const;\n\n// export { EuiButtonComponent as EuiButton } from './eui-button.component';\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-components-eui-button.mjs","sources":["../../eui-button/eui-button.component.ts","../../eui-button/eui-button.component.html","../../eui-button/index.ts","../../eui-button/eui-components-eui-button.ts"],"sourcesContent":["import {\n Component,\n HostBinding,\n HostListener,\n Input,\n Output,\n EventEmitter,\n ChangeDetectionStrategy,\n Renderer2,\n ElementRef,\n booleanAttribute,\n inject,\n} from '@angular/core';\n\nimport { BaseStatesDirective } from '@eui/components/shared';\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\n\n/**\n * @description\n * A versatile button component that supports various states, sizes, and visual styles.\n * Can be used as either a button or anchor element with consistent styling.\n */\n@Component({\n templateUrl: './eui-button.component.html',\n // eslint-disable-next-line\n selector: 'button[euiButton], a[euiButton]',\n styleUrl: './eui-button.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [\n {\n directive: BaseStatesDirective,\n inputs: [\n 'euiPrimary',\n 'euiBranding',\n 'euiSecondary',\n 'euiSuccess',\n 'euiInfo',\n 'euiWarning',\n 'euiDanger',\n 'euiInverse',\n 'euiVariant',\n 'euiSizeS',\n 'euiSizeM',\n 'euiSizeL',\n 'euiSizeVariant',\n 'euiOutline',\n 'euiRounded',\n 'euiResponsive',\n 'euiStart',\n 'euiEnd',\n ],\n },\n ],\n})\nexport class EuiButtonComponent {\n /**\n * @description\n * Computes and returns the CSS classes for the button based on its current state\n *\n * @returns {string} Space-separated string of CSS class names\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [\n this.baseStatesDirective.getCssClasses('eui-button'),\n this.euiBasicButton ? 'eui-button--basic eui--basic' : '',\n this.euiBlockButton ? 'eui-button--block' : '',\n this.euiIconButton ? 'eui-button--icon-only' : '',\n this.euiLineWrap ? 'eui-button--line-wrap' : '',\n this.hasNoFocusRing ? 'eui-button--no-focus-ring': '',\n this.isCompact ? 'eui-button--compact': '',\n this.euiCTAButton ? 'eui-button--cta': '',\n this.euiAvatarButton ? 'eui-button--avatar': '',\n ]\n .join(' ')\n .trim();\n }\n\n /**\n * @description Data attribute for e2e testing\n * @default eui-button\n */\n @HostBinding('attr.data-e2e') @Input() e2eAttr = 'eui-button';\n\n /** @description ID attribute for the button element */\n @HostBinding('attr.id')\n @Input() id: string;\n\n /**\n * @description When true, applies basic styling without background\n * @default false\n */\n @Input({ transform: booleanAttribute }) euiBasicButton = false;\n\n /**\n * @description When true, styles the button as a call-to-action\n * @deprecated will be removed in future eUI version and replaced by euiCTAButton\n * @default false\n */\n @Input({ transform: booleanAttribute }) euiButtonCall = false;\n\n /**\n * @description When true, styles the button as a call-to-action\n * @default false\n */\n @Input({ transform: booleanAttribute }) euiCTAButton = false;\n\n /**\n * @description When true, makes the button full-width\n * @default false\n */\n @Input({ transform: booleanAttribute }) euiBlockButton = false;\n\n /**\n * @description When true, styles the button for icon-only content\n * @default false\n */\n @Input({ transform: booleanAttribute }) euiIconButton = false;\n\n /**\n * @description When true, style the button when used in avatar trigger (for dropdown trigger f.e. see actionable avatar)\n * @default false\n */\n @Input({ transform: booleanAttribute }) euiAvatarButton = false;\n\n /**\n * @description When true, allows text content to wrap\n * @default false\n */\n @Input({ transform: booleanAttribute }) euiLineWrap = false;\n\n /**\n * @description When true, applies styling with lower padding / reduced height and width\n * @default false\n */\n @Input({ transform: booleanAttribute }) isCompact = false; \n \n /**\n * @description When true, applies styling without focus ring\n * @default false\n */\n @Input({ transform: booleanAttribute }) hasNoFocusRing = false; \n\n /**\n * @description\n * Controls the checked state of the button\n * When true, applies accent styling\n */\n @Input()\n public get isChecked(): boolean {\n return this._isChecked;\n }\n public set isChecked(value: BooleanInput) {\n this.baseStatesDirective.euiPrimary = coerceBooleanProperty(value);\n this._isChecked = coerceBooleanProperty(value);\n }\n\n /**\n * @description\n * Controls the disabled state of the button\n * When true, adds the disabled attribute and prevents interaction\n */\n @Input()\n public get euiDisabled(): boolean {\n return this._euiDisabled;\n }\n public set euiDisabled(value: BooleanInput) {\n this._euiDisabled = coerceBooleanProperty(value);\n if (this._euiDisabled) {\n this._renderer.setAttribute(this._elementRef.nativeElement, 'disabled', 'true');\n } else {\n this._renderer.removeAttribute(this._elementRef.nativeElement, 'disabled');\n }\n }\n\n /**\n * @description\n * Event emitted when the button is clicked\n * Emits the button component instance\n */\n @Output() buttonClick: EventEmitter<EuiButtonComponent> = new EventEmitter<EuiButtonComponent>();\n\n public baseStatesDirective: BaseStatesDirective = inject(BaseStatesDirective);\n protected _renderer: Renderer2 = inject(Renderer2);\n protected _elementRef: ElementRef<HTMLButtonElement> = inject(ElementRef);\n private _isChecked = false;\n private _euiDisabled = false;\n\n /**\n * @description\n * Click event handler that emits the buttonClick event\n * @private\n */\n @HostListener('click')\n protected onClick(): void {\n this.buttonClick.emit(this);\n }\n}\n","<span class=\"eui-button__container\">\n <ng-content></ng-content>\n</span>\n","import { EuiButtonComponent } from './eui-button.component';\n\nexport * from './eui-button.component';\n\nexport const EUI_BUTTON = [\n EuiButtonComponent,\n] as const;\n\n// export { EuiButtonComponent as EuiButton } from './eui-button.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -41,7 +41,7 @@ class EuiIconButtonComponent {
41
41
  }
42
42
  }
43
43
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-rc.0", ngImport: i0, type: EuiIconButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
44
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "21.0.0-rc.0", type: EuiIconButtonComponent, isStandalone: true, selector: "eui-icon-button", inputs: { icon: "icon", iconUrl: "iconUrl", fillColor: "fillColor", size: "size", ariaLabel: "ariaLabel", tabindex: "tabindex", hasNoPadding: ["hasNoPadding", "hasNoPadding", booleanAttribute], hasOverflowHover: ["hasOverflowHover", "hasOverflowHover", booleanAttribute], hasFocusHoverColor: ["hasFocusHoverColor", "hasFocusHoverColor", booleanAttribute], hasFocusHoverBg: ["hasFocusHoverBg", "hasFocusHoverBg", booleanAttribute], euiRounded: ["euiRounded", "euiRounded", booleanAttribute], euiDisabled: ["euiDisabled", "euiDisabled", booleanAttribute] }, outputs: { buttonClick: "buttonClick" }, host: { properties: { "class": "this.cssClasses" } }, hostDirectives: [{ directive: i1.BaseStatesDirective, inputs: ["euiPrimary", "euiPrimary", "euiSecondary", "euiSecondary", "euiSuccess", "euiSuccess", "euiInfo", "euiInfo", "euiWarning", "euiWarning", "euiDanger", "euiDanger", "euiVariant", "euiVariant"] }], ngImport: i0, template: "<button class=\"eui-icon-button__button\"\n type=\"button\"\n (click)=\"onClick($event)\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.tabindex]=\"tabindex\">\n <eui-icon-svg [icon]=\"icon\" [aria-label]=\"ariaLabel\" [iconUrl]=\"iconUrl\" [fillColor]=\"fillColor\" [size]=\"size\" class=\"eui-icon-button__button-icon\">\n <ng-content select=\"eui-badge\"></ng-content>\n </eui-icon-svg>\n</button>\n", styles: [".eui-21 :host.eui-icon-button{--_hover-color: var(--eui-c-secondary-surface-light-hover);--_color: var(--eui-c-secondary)}.eui-21 :host.eui-icon-button--primary{--_hover-color: var(--eui-c-primary-surface-light-hover);--_color: var(--eui-c-primary)}.eui-21 :host.eui-icon-button--secondary{--_hover-color: var(--eui-c-secondary-surface-light-hover);--_color: var(--eui-c-secondary)}.eui-21 :host.eui-icon-button--info{--_hover-color: var(--eui-c-info-surface-light-hover);--_color: var(--eui-c-info)}.eui-21 :host.eui-icon-button--success{--_hover-color: var(--eui-c-success-surface-light-hover);--_color: var(--eui-c-success)}.eui-21 :host.eui-icon-button--warning{--_hover-color: var(--eui-c-warning-surface-light-hover);--_color: var(--eui-c-warning)}.eui-21 :host.eui-icon-button--danger{--_hover-color: var(--eui-c-danger-surface-light-hover);--_color: var(--eui-c-danger)}.eui-21 :host.eui-icon-button{display:inline-flex}.eui-21 :host.eui-icon-button .eui-icon-button__button{background-color:transparent;border:var(--eui-bw-none);cursor:pointer;align-items:center;display:flex;justify-content:center;position:relative;padding:var(--eui-s-xs)}.eui-21 :host.eui-icon-button .eui-icon-button__button:focus-visible:not([readonly]){outline:2px solid var(--eui-c-focus-visible)!important;outline-offset:-2px!important;transition:none}.eui-21 :host.eui-icon-button .eui-icon-button__button ::ng-deep .eui-icon-svg svg{fill:var(--_color);color:var(--_color)}.eui-21 :host.eui-icon-button--has-focus-hover-bg .eui-icon-button__button:hover{background-color:var(--_hover-color)}.eui-21 :host.eui-icon-button--has-no-padding .eui-icon-button__button{padding:0}.eui-21 :host.eui-icon-button--has-focus-hover-color .eui-icon-button__button{opacity:var(--eui-o-75)}.eui-21 :host.eui-icon-button--has-focus-hover-color .eui-icon-button__button:hover{opacity:var(--eui-o-100)}.eui-21 :host.eui-icon-button--rounded .eui-icon-button__button{border-radius:var(--eui-br-max)}.eui-21 :host.eui-icon-button--disabled{cursor:not-allowed}.eui-21 :host.eui-icon-button--disabled .eui-icon-button__button{pointer-events:none;background-image:none;box-shadow:none;cursor:not-allowed!important;opacity:var(--eui-o-50)}.eui-21 :host.eui-icon-button--has-overflow-hover{position:relative}.eui-21 :host.eui-icon-button--has-overflow-hover .eui-icon-button__button{padding:0}.eui-21 :host.eui-icon-button--has-overflow-hover:hover:before{background-color:var(--_hover-color);content:\"\";display:block;height:var(--eui-s-5xl);left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:var(--eui-s-5xl)}.eui-21 :host.eui-icon-button--rounded.eui-icon-button--has-overflow-hover:hover:before{border-radius:var(--eui-br-max)}\n"], dependencies: [{ kind: "component", type: i2.EuiIconSvgComponent, selector: "eui-icon-svg, span[euiIconSvg], i[euiIconSvg]", inputs: ["icon", "fillColor", "set", "size", "style", "iconUrl", "transform", "euiVariant", "aria-label", "ariaHidden", "focusable", "isLoading", "isInputIcon", "euiStart", "euiEnd"] }] }); }
44
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "21.0.0-rc.0", type: EuiIconButtonComponent, isStandalone: true, selector: "eui-icon-button", inputs: { icon: "icon", iconUrl: "iconUrl", fillColor: "fillColor", size: "size", ariaLabel: "ariaLabel", tabindex: "tabindex", hasNoPadding: ["hasNoPadding", "hasNoPadding", booleanAttribute], hasOverflowHover: ["hasOverflowHover", "hasOverflowHover", booleanAttribute], hasFocusHoverColor: ["hasFocusHoverColor", "hasFocusHoverColor", booleanAttribute], hasFocusHoverBg: ["hasFocusHoverBg", "hasFocusHoverBg", booleanAttribute], euiRounded: ["euiRounded", "euiRounded", booleanAttribute], euiDisabled: ["euiDisabled", "euiDisabled", booleanAttribute] }, outputs: { buttonClick: "buttonClick" }, host: { properties: { "class": "this.cssClasses" } }, hostDirectives: [{ directive: i1.BaseStatesDirective, inputs: ["euiPrimary", "euiPrimary", "euiSecondary", "euiSecondary", "euiSuccess", "euiSuccess", "euiInfo", "euiInfo", "euiWarning", "euiWarning", "euiDanger", "euiDanger", "euiVariant", "euiVariant", "euiSizeS", "euiSizeS"] }], ngImport: i0, template: "<button class=\"eui-icon-button__button\"\n type=\"button\"\n (click)=\"onClick($event)\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.tabindex]=\"tabindex\">\n <eui-icon-svg [icon]=\"icon\" [aria-label]=\"ariaLabel\" [iconUrl]=\"iconUrl\" [fillColor]=\"fillColor\" [size]=\"size\" class=\"eui-icon-button__button-icon\">\n <ng-content select=\"eui-badge\"></ng-content>\n </eui-icon-svg>\n</button>\n", styles: [".eui-21 :host.eui-icon-button{--_hover-color: var(--eui-c-secondary-surface-light-hover);--_color: var(--eui-c-secondary)}.eui-21 :host.eui-icon-button--primary{--_hover-color: var(--eui-c-primary-surface-light-hover);--_color: var(--eui-c-primary)}.eui-21 :host.eui-icon-button--secondary{--_hover-color: var(--eui-c-secondary-surface-light-hover);--_color: var(--eui-c-secondary)}.eui-21 :host.eui-icon-button--info{--_hover-color: var(--eui-c-info-surface-light-hover);--_color: var(--eui-c-info)}.eui-21 :host.eui-icon-button--success{--_hover-color: var(--eui-c-success-surface-light-hover);--_color: var(--eui-c-success)}.eui-21 :host.eui-icon-button--warning{--_hover-color: var(--eui-c-warning-surface-light-hover);--_color: var(--eui-c-warning)}.eui-21 :host.eui-icon-button--danger{--_hover-color: var(--eui-c-danger-surface-light-hover);--_color: var(--eui-c-danger)}.eui-21 :host.eui-icon-button{display:inline-flex}.eui-21 :host.eui-icon-button .eui-icon-button__button{background-color:transparent;border:var(--eui-bw-none);cursor:pointer;align-items:center;display:flex;justify-content:center;position:relative;padding:var(--eui-s-xs)}.eui-21 :host.eui-icon-button .eui-icon-button__button:focus-visible:not([readonly]){outline:2px solid var(--eui-c-focus-visible)!important;outline-offset:-2px!important;transition:none}.eui-21 :host.eui-icon-button .eui-icon-button__button ::ng-deep .eui-icon-svg svg{fill:var(--_color);color:var(--_color)}.eui-21 :host.eui-icon-button--size-s .eui-icon-button__button{padding:var(--eui-s-3xs)}.eui-21 :host.eui-icon-button--has-focus-hover-bg .eui-icon-button__button:hover{background-color:var(--_hover-color)}.eui-21 :host.eui-icon-button--has-no-padding .eui-icon-button__button{padding:0}.eui-21 :host.eui-icon-button--has-focus-hover-color .eui-icon-button__button{opacity:var(--eui-o-75)}.eui-21 :host.eui-icon-button--has-focus-hover-color .eui-icon-button__button:hover{opacity:var(--eui-o-100)}.eui-21 :host.eui-icon-button--rounded .eui-icon-button__button{border-radius:var(--eui-br-max)}.eui-21 :host.eui-icon-button--disabled{cursor:not-allowed}.eui-21 :host.eui-icon-button--disabled .eui-icon-button__button{pointer-events:none;background-image:none;box-shadow:none;cursor:not-allowed!important;opacity:var(--eui-o-50)}.eui-21 :host.eui-icon-button--has-overflow-hover{position:relative}.eui-21 :host.eui-icon-button--has-overflow-hover .eui-icon-button__button{padding:0}.eui-21 :host.eui-icon-button--has-overflow-hover:hover:before{background-color:var(--_hover-color);content:\"\";display:block;height:var(--eui-s-5xl);left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:var(--eui-s-5xl)}.eui-21 :host.eui-icon-button--rounded.eui-icon-button--has-overflow-hover:hover:before{border-radius:var(--eui-br-max)}\n"], dependencies: [{ kind: "component", type: i2.EuiIconSvgComponent, selector: "eui-icon-svg, span[euiIconSvg], i[euiIconSvg]", inputs: ["icon", "fillColor", "set", "size", "style", "iconUrl", "transform", "euiVariant", "aria-label", "ariaHidden", "focusable", "isLoading", "isInputIcon", "euiStart", "euiEnd"] }] }); }
45
45
  }
46
46
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-rc.0", ngImport: i0, type: EuiIconButtonComponent, decorators: [{
47
47
  type: Component,
@@ -56,9 +56,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-rc.0", ng
56
56
  'euiWarning',
57
57
  'euiDanger',
58
58
  'euiVariant',
59
+ 'euiSizeS',
59
60
  ],
60
61
  },
61
- ], imports: [...EUI_ICON], template: "<button class=\"eui-icon-button__button\"\n type=\"button\"\n (click)=\"onClick($event)\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.tabindex]=\"tabindex\">\n <eui-icon-svg [icon]=\"icon\" [aria-label]=\"ariaLabel\" [iconUrl]=\"iconUrl\" [fillColor]=\"fillColor\" [size]=\"size\" class=\"eui-icon-button__button-icon\">\n <ng-content select=\"eui-badge\"></ng-content>\n </eui-icon-svg>\n</button>\n", styles: [".eui-21 :host.eui-icon-button{--_hover-color: var(--eui-c-secondary-surface-light-hover);--_color: var(--eui-c-secondary)}.eui-21 :host.eui-icon-button--primary{--_hover-color: var(--eui-c-primary-surface-light-hover);--_color: var(--eui-c-primary)}.eui-21 :host.eui-icon-button--secondary{--_hover-color: var(--eui-c-secondary-surface-light-hover);--_color: var(--eui-c-secondary)}.eui-21 :host.eui-icon-button--info{--_hover-color: var(--eui-c-info-surface-light-hover);--_color: var(--eui-c-info)}.eui-21 :host.eui-icon-button--success{--_hover-color: var(--eui-c-success-surface-light-hover);--_color: var(--eui-c-success)}.eui-21 :host.eui-icon-button--warning{--_hover-color: var(--eui-c-warning-surface-light-hover);--_color: var(--eui-c-warning)}.eui-21 :host.eui-icon-button--danger{--_hover-color: var(--eui-c-danger-surface-light-hover);--_color: var(--eui-c-danger)}.eui-21 :host.eui-icon-button{display:inline-flex}.eui-21 :host.eui-icon-button .eui-icon-button__button{background-color:transparent;border:var(--eui-bw-none);cursor:pointer;align-items:center;display:flex;justify-content:center;position:relative;padding:var(--eui-s-xs)}.eui-21 :host.eui-icon-button .eui-icon-button__button:focus-visible:not([readonly]){outline:2px solid var(--eui-c-focus-visible)!important;outline-offset:-2px!important;transition:none}.eui-21 :host.eui-icon-button .eui-icon-button__button ::ng-deep .eui-icon-svg svg{fill:var(--_color);color:var(--_color)}.eui-21 :host.eui-icon-button--has-focus-hover-bg .eui-icon-button__button:hover{background-color:var(--_hover-color)}.eui-21 :host.eui-icon-button--has-no-padding .eui-icon-button__button{padding:0}.eui-21 :host.eui-icon-button--has-focus-hover-color .eui-icon-button__button{opacity:var(--eui-o-75)}.eui-21 :host.eui-icon-button--has-focus-hover-color .eui-icon-button__button:hover{opacity:var(--eui-o-100)}.eui-21 :host.eui-icon-button--rounded .eui-icon-button__button{border-radius:var(--eui-br-max)}.eui-21 :host.eui-icon-button--disabled{cursor:not-allowed}.eui-21 :host.eui-icon-button--disabled .eui-icon-button__button{pointer-events:none;background-image:none;box-shadow:none;cursor:not-allowed!important;opacity:var(--eui-o-50)}.eui-21 :host.eui-icon-button--has-overflow-hover{position:relative}.eui-21 :host.eui-icon-button--has-overflow-hover .eui-icon-button__button{padding:0}.eui-21 :host.eui-icon-button--has-overflow-hover:hover:before{background-color:var(--_hover-color);content:\"\";display:block;height:var(--eui-s-5xl);left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:var(--eui-s-5xl)}.eui-21 :host.eui-icon-button--rounded.eui-icon-button--has-overflow-hover:hover:before{border-radius:var(--eui-br-max)}\n"] }]
62
+ ], imports: [...EUI_ICON], template: "<button class=\"eui-icon-button__button\"\n type=\"button\"\n (click)=\"onClick($event)\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.tabindex]=\"tabindex\">\n <eui-icon-svg [icon]=\"icon\" [aria-label]=\"ariaLabel\" [iconUrl]=\"iconUrl\" [fillColor]=\"fillColor\" [size]=\"size\" class=\"eui-icon-button__button-icon\">\n <ng-content select=\"eui-badge\"></ng-content>\n </eui-icon-svg>\n</button>\n", styles: [".eui-21 :host.eui-icon-button{--_hover-color: var(--eui-c-secondary-surface-light-hover);--_color: var(--eui-c-secondary)}.eui-21 :host.eui-icon-button--primary{--_hover-color: var(--eui-c-primary-surface-light-hover);--_color: var(--eui-c-primary)}.eui-21 :host.eui-icon-button--secondary{--_hover-color: var(--eui-c-secondary-surface-light-hover);--_color: var(--eui-c-secondary)}.eui-21 :host.eui-icon-button--info{--_hover-color: var(--eui-c-info-surface-light-hover);--_color: var(--eui-c-info)}.eui-21 :host.eui-icon-button--success{--_hover-color: var(--eui-c-success-surface-light-hover);--_color: var(--eui-c-success)}.eui-21 :host.eui-icon-button--warning{--_hover-color: var(--eui-c-warning-surface-light-hover);--_color: var(--eui-c-warning)}.eui-21 :host.eui-icon-button--danger{--_hover-color: var(--eui-c-danger-surface-light-hover);--_color: var(--eui-c-danger)}.eui-21 :host.eui-icon-button{display:inline-flex}.eui-21 :host.eui-icon-button .eui-icon-button__button{background-color:transparent;border:var(--eui-bw-none);cursor:pointer;align-items:center;display:flex;justify-content:center;position:relative;padding:var(--eui-s-xs)}.eui-21 :host.eui-icon-button .eui-icon-button__button:focus-visible:not([readonly]){outline:2px solid var(--eui-c-focus-visible)!important;outline-offset:-2px!important;transition:none}.eui-21 :host.eui-icon-button .eui-icon-button__button ::ng-deep .eui-icon-svg svg{fill:var(--_color);color:var(--_color)}.eui-21 :host.eui-icon-button--size-s .eui-icon-button__button{padding:var(--eui-s-3xs)}.eui-21 :host.eui-icon-button--has-focus-hover-bg .eui-icon-button__button:hover{background-color:var(--_hover-color)}.eui-21 :host.eui-icon-button--has-no-padding .eui-icon-button__button{padding:0}.eui-21 :host.eui-icon-button--has-focus-hover-color .eui-icon-button__button{opacity:var(--eui-o-75)}.eui-21 :host.eui-icon-button--has-focus-hover-color .eui-icon-button__button:hover{opacity:var(--eui-o-100)}.eui-21 :host.eui-icon-button--rounded .eui-icon-button__button{border-radius:var(--eui-br-max)}.eui-21 :host.eui-icon-button--disabled{cursor:not-allowed}.eui-21 :host.eui-icon-button--disabled .eui-icon-button__button{pointer-events:none;background-image:none;box-shadow:none;cursor:not-allowed!important;opacity:var(--eui-o-50)}.eui-21 :host.eui-icon-button--has-overflow-hover{position:relative}.eui-21 :host.eui-icon-button--has-overflow-hover .eui-icon-button__button{padding:0}.eui-21 :host.eui-icon-button--has-overflow-hover:hover:before{background-color:var(--_hover-color);content:\"\";display:block;height:var(--eui-s-5xl);left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:var(--eui-s-5xl)}.eui-21 :host.eui-icon-button--rounded.eui-icon-button--has-overflow-hover:hover:before{border-radius:var(--eui-br-max)}\n"] }]
62
63
  }], propDecorators: { cssClasses: [{
63
64
  type: HostBinding,
64
65
  args: ['class']
@@ -1 +1 @@
1
- {"version":3,"file":"eui-components-eui-icon-button.mjs","sources":["../../eui-icon-button/eui-icon-button.component.ts","../../eui-icon-button/eui-icon-button.component.html","../../eui-icon-button/index.ts","../../eui-icon-button/eui-components-eui-icon-button.ts"],"sourcesContent":["import { Component, HostBinding, Input, Output, EventEmitter, booleanAttribute, OnInit, inject } from '@angular/core';\nimport { EUI_ICON } from '@eui/components/eui-icon';\nimport { BaseStatesDirective } from '@eui/components/shared';\n\n@Component({\n selector: 'eui-icon-button',\n templateUrl: './eui-icon-button.component.html',\n styleUrls: [ './eui-icon-button.component.scss' ],\n hostDirectives: [\n {\n directive: BaseStatesDirective,\n inputs: [\n 'euiPrimary',\n 'euiSecondary',\n 'euiSuccess',\n 'euiInfo',\n 'euiWarning',\n 'euiDanger',\n 'euiVariant',\n ],\n },\n ],\n imports: [ ...EUI_ICON ],\n})\nexport class EuiIconButtonComponent implements OnInit {\n @HostBinding('class')\n get cssClasses(): string {\n return [\n this.baseStatesDirective.getCssClasses('eui-icon-button'),\n this.hasNoPadding ? 'eui-icon-button--has-no-padding': '',\n this.hasOverflowHover ? 'eui-icon-button--has-overflow-hover': '',\n this.hasFocusHoverColor ? 'eui-icon-button--has-focus-hover-color': '',\n this.hasFocusHoverBg ? 'eui-icon-button--has-focus-hover-bg': '',\n this.euiRounded ? 'eui-icon-button--rounded': '',\n this.euiDisabled ? 'eui-icon-button--disabled': '',\n ]\n .join(' ')\n .trim();\n }\n\n @Input() icon: string;\n @Input() iconUrl: string;\n @Input() fillColor: string;\n @Input() size: '2xs' | 'xs' | 's' | 'm' | 'l' | 'xl' | '2xl' | '3xl' | '4xl' = 'm';\n @Input() ariaLabel = 'eUI Icon button';\n @Input() tabindex = 0;\n\n @Input({ transform: booleanAttribute }) hasNoPadding = false;\n @Input({ transform: booleanAttribute }) hasOverflowHover = false;\n @Input({ transform: booleanAttribute }) hasFocusHoverColor = false;\n @Input({ transform: booleanAttribute }) hasFocusHoverBg = true;\n @Input({ transform: booleanAttribute }) euiRounded = false;\n @Input({ transform: booleanAttribute }) euiDisabled = false;\n\n @Output() buttonClick = new EventEmitter<Event>();\n protected baseStatesDirective = inject(BaseStatesDirective);\n\n onClick(event: Event): void {\n this.buttonClick.emit(event);\n }\n\n ngOnInit(): void {\n if (this.hasFocusHoverColor) {\n this.hasFocusHoverBg = false;\n }\n }\n}\n","<button class=\"eui-icon-button__button\"\n type=\"button\"\n (click)=\"onClick($event)\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.tabindex]=\"tabindex\">\n <eui-icon-svg [icon]=\"icon\" [aria-label]=\"ariaLabel\" [iconUrl]=\"iconUrl\" [fillColor]=\"fillColor\" [size]=\"size\" class=\"eui-icon-button__button-icon\">\n <ng-content select=\"eui-badge\"></ng-content>\n </eui-icon-svg>\n</button>\n","import { EuiIconButtonComponent } from './eui-icon-button.component';\n\nexport * from './eui-icon-button.component';\n\nexport const EUI_ICON_BUTTON = [\n EuiIconButtonComponent,\n] as const;\n\n// export { EuiIconButtonComponent as EuiIconButton } from './eui-icon-button.component';\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-components-eui-icon-button.mjs","sources":["../../eui-icon-button/eui-icon-button.component.ts","../../eui-icon-button/eui-icon-button.component.html","../../eui-icon-button/index.ts","../../eui-icon-button/eui-components-eui-icon-button.ts"],"sourcesContent":["import { Component, HostBinding, Input, Output, EventEmitter, booleanAttribute, OnInit, inject } from '@angular/core';\nimport { EUI_ICON } from '@eui/components/eui-icon';\nimport { BaseStatesDirective } from '@eui/components/shared';\n\n@Component({\n selector: 'eui-icon-button',\n templateUrl: './eui-icon-button.component.html',\n styleUrls: [ './eui-icon-button.component.scss' ],\n hostDirectives: [\n {\n directive: BaseStatesDirective,\n inputs: [\n 'euiPrimary',\n 'euiSecondary',\n 'euiSuccess',\n 'euiInfo',\n 'euiWarning',\n 'euiDanger',\n 'euiVariant',\n 'euiSizeS',\n ],\n },\n ],\n imports: [ ...EUI_ICON ],\n})\nexport class EuiIconButtonComponent implements OnInit {\n @HostBinding('class')\n get cssClasses(): string {\n return [\n this.baseStatesDirective.getCssClasses('eui-icon-button'),\n this.hasNoPadding ? 'eui-icon-button--has-no-padding': '',\n this.hasOverflowHover ? 'eui-icon-button--has-overflow-hover': '',\n this.hasFocusHoverColor ? 'eui-icon-button--has-focus-hover-color': '',\n this.hasFocusHoverBg ? 'eui-icon-button--has-focus-hover-bg': '',\n this.euiRounded ? 'eui-icon-button--rounded': '',\n this.euiDisabled ? 'eui-icon-button--disabled': '',\n ]\n .join(' ')\n .trim();\n }\n\n @Input() icon: string;\n @Input() iconUrl: string;\n @Input() fillColor: string;\n @Input() size: '2xs' | 'xs' | 's' | 'm' | 'l' | 'xl' | '2xl' | '3xl' | '4xl' = 'm';\n @Input() ariaLabel = 'eUI Icon button';\n @Input() tabindex = 0;\n\n @Input({ transform: booleanAttribute }) hasNoPadding = false;\n @Input({ transform: booleanAttribute }) hasOverflowHover = false;\n @Input({ transform: booleanAttribute }) hasFocusHoverColor = false;\n @Input({ transform: booleanAttribute }) hasFocusHoverBg = true;\n @Input({ transform: booleanAttribute }) euiRounded = false;\n @Input({ transform: booleanAttribute }) euiDisabled = false;\n\n @Output() buttonClick = new EventEmitter<Event>();\n protected baseStatesDirective = inject(BaseStatesDirective);\n\n onClick(event: Event): void {\n this.buttonClick.emit(event);\n }\n\n ngOnInit(): void {\n if (this.hasFocusHoverColor) {\n this.hasFocusHoverBg = false;\n }\n }\n}\n","<button class=\"eui-icon-button__button\"\n type=\"button\"\n (click)=\"onClick($event)\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.tabindex]=\"tabindex\">\n <eui-icon-svg [icon]=\"icon\" [aria-label]=\"ariaLabel\" [iconUrl]=\"iconUrl\" [fillColor]=\"fillColor\" [size]=\"size\" class=\"eui-icon-button__button-icon\">\n <ng-content select=\"eui-badge\"></ng-content>\n </eui-icon-svg>\n</button>\n","import { EuiIconButtonComponent } from './eui-icon-button.component';\n\nexport * from './eui-icon-button.component';\n\nexport const EUI_ICON_BUTTON = [\n EuiIconButtonComponent,\n] as const;\n\n// export { EuiIconButtonComponent as EuiIconButton } from './eui-icon-button.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -184,7 +184,7 @@ class EuiLanguageSelectorComponent {
184
184
  // 2. Apply the eui-language-selector--toolbar-selector class directly
185
185
  let hasToolbarParent = false;
186
186
  try {
187
- hasToolbarParent = this.elRef.nativeElement.closest('eui-toolbar');
187
+ hasToolbarParent = this.elRef.nativeElement.closest('eui-toolbar') || this.elRef.nativeElement.closest('eui-app-toolbar');
188
188
  }
189
189
  catch (e) {
190
190
  // do nothing
@@ -192,7 +192,8 @@ class EuiLanguageSelectorComponent {
192
192
  if (hasToolbarParent) {
193
193
  setTimeout(() => {
194
194
  this.isToolbarSelector = true;
195
- }, 1);
195
+ this.cd.detectChanges();
196
+ }, 50);
196
197
  }
197
198
  }
198
199
  ngOnDestroy() {
@@ -1 +1 @@
1
- {"version":3,"file":"eui-components-eui-language-selector.mjs","sources":["../../eui-language-selector/modal-selector/modal-selector.component.ts","../../eui-language-selector/modal-selector/modal-selector.component.html","../../eui-language-selector/language-selector.component.ts","../../eui-language-selector/language-selector.component.html","../../eui-language-selector/index.ts","../../eui-language-selector/eui-components-eui-language-selector.ts"],"sourcesContent":["import { Component, ViewEncapsulation, ChangeDetectionStrategy, OnInit, inject } from '@angular/core';\nimport { EuiEuLanguages, EuiLanguage } from '@eui/core';\n\nimport { DIALOG_COMPONENT_CONFIG } from '@eui/components/eui-dialog';\nimport { EuiDialogService } from '@eui/components/eui-dialog';\nimport { EUI_BUTTON } from '@eui/components/eui-button';\n\nexport interface ModelConfig {\n /**\n * Available languages to select from\n */\n languages: EuiLanguage[];\n /**\n * Currently selected language\n */\n selectedLanguage: EuiLanguage;\n /**\n * Callback when language selection changes\n * @param language\n */\n languageChanged: (language: EuiLanguage) => void;\n}\n\n/**\n * Modal component for language selection.\n * Displays EU and non-EU languages in a grid layout with 4 languages per row.\n */\n@Component({\n selector: 'eui-modal-selector',\n templateUrl: './modal-selector.component.html',\n changeDetection: ChangeDetectionStrategy.Default,\n encapsulation: ViewEncapsulation.None,\n imports: [\n ...EUI_BUTTON,\n ],\n})\nexport class EuiModalSelectorComponent implements OnInit {\n /**\n * Configuration injected from the dialog service\n */\n config = inject<ModelConfig>(DIALOG_COMPONENT_CONFIG, { optional: true });\n\n /** EU languages organized in rows of up to 4 languages */\n public languageRows: EuiLanguage[][] = [];\n /**\n * Non-EU languages organized in rows of up to 4 languages\n * @deprecated use {@link additionalLanguageRows}\n */\n public additionaLanguageRows: EuiLanguage[][] = [];\n /** Non-EU languages organized in rows of up to 4 languages */\n public additionalLanguageRows: EuiLanguage[][] = [];\n /** Currently selected language */\n private selectedLanguage: EuiLanguage;\n /** Dialog service for handling modal operations */\n private euiDialogService = inject<EuiDialogService>(EuiDialogService);\n\n /**\n * Initializes language rows by separating EU and non-EU languages\n */\n ngOnInit(): void {\n this.languageRows = this.prepareLanguageRows(EuiEuLanguages.filterEULanguages(this.config?.languages));\n this.additionalLanguageRows = this.prepareLanguageRows(EuiEuLanguages.filterNonEULanguages(this.config?.languages));\n this.additionaLanguageRows = this.additionalLanguageRows;\n }\n\n /**\n * Handles language selection\n * @param {EuiLanguage} languageCode - The language being selected\n */\n selectLanguage(languageCode: EuiLanguage): void {\n if (this.selectedLanguage?.code !== languageCode.code) {\n for (const language of this.config?.languages || []) {\n if (language.code === languageCode.code) {\n this.selectedLanguage = language;\n break;\n }\n }\n }\n\n this.config?.languageChanged(languageCode);\n this.euiDialogService.closeDialog();\n }\n\n /**\n * Organizes languages into rows of up to 4 languages each\n * @param {EuiLanguage[]} languages - Array of languages to organize\n * @returns {EuiLanguage[][]} 2D array of languages organized in rows\n */\n private prepareLanguageRows(languages: EuiLanguage[]): EuiLanguage[][] {\n // If no languages, return an empty array\n if (!languages.length) return [];\n\n return languages.reduce<EuiLanguage[][]>((rows, language, index) => {\n // Calculate current row index\n const rowIndex = Math.floor(index / 4);\n\n // If we need to create a new row\n if (!rows[rowIndex]) {\n rows[rowIndex] = [];\n }\n\n // Add language to the current row\n rows[rowIndex].push(language);\n return rows;\n }, []);\n }\n}\n","@if (additionalLanguageRows?.length > 0) {\n <h4>EU official languages</h4>\n}\n@for (row of languageRows; track row) {\n <div id=\"eu_languages\" class=\"row\">\n @for (language of row; track language) {\n <div class=\"col-md-6 mb-2\">\n <div class=\"eui-u-flex eui-u-mb-xs\">\n <span class=\"eui-u-text-uppercase eui-u-width-2\">{{language.code}}</span>\n <button\n type=\"button\"\n e2eAttr=\"eui-language-selector-item_{{ language.code }}\"\n euiButton\n euiPrimary\n [euiBasicButton]=\"language.code !== config?.selectedLanguage.code\"\n (click)=\"selectLanguage(language)\">\n {{ language.label }}\n </button>\n </div>\n </div>\n }\n </div>\n}\n@if (additionalLanguageRows?.length > 0) {\n <br />\n <h4>Non-EU Languages</h4>\n @for (row of additionalLanguageRows; track row) {\n <div id=\"extra_languages\" class=\"row\">\n @for (language of row; track language) {\n <div class=\"col-md-6 mb-2\">\n <div class=\"eui-u-flex eui-u-mb-xs\">\n <span class=\"eui-u-text-uppercase eui-u-width-2\">{{language.code}}</span>\n <button\n type=\"button\"\n e2eAttr=\"eui-language-selector-item_{{ language.code }}\"\n euiButton\n euiPrimary\n [euiBasicButton]=\"language.code !== config?.selectedLanguage.code\"\n (click)=\"selectLanguage(language)\">\n {{ language.label }}\n </button>\n </div>\n </div>\n }\n </div>\n }\n}\n","import {\n Component,\n ViewEncapsulation,\n HostBinding,\n OnDestroy,\n OnInit,\n ChangeDetectorRef,\n Input,\n Output,\n EventEmitter,\n booleanAttribute,\n ElementRef,\n AfterViewInit,\n SimpleChanges,\n OnChanges,\n inject,\n} from '@angular/core';\nimport { distinctUntilKeyChanged, map, takeUntil } from 'rxjs/operators';\nimport { Subject } from 'rxjs';\nimport { TranslateService } from '@ngx-translate/core';\n\nimport { EuiEuLanguages, EuiLanguage } from '@eui/core';\nimport { EuiAppShellService } from '@eui/core';\nimport { EuiDialogConfig, EuiDialogService } from '@eui/components/eui-dialog';\n\nimport { EuiModalSelectorComponent } from './modal-selector/modal-selector.component';\nimport { EUI_ICON } from '@eui/components/eui-icon';\nimport { EUI_BUTTON } from '@eui/components/eui-button';\nimport { EUI_DROPDOWN } from '@eui/components/eui-dropdown';\nimport { AsyncPipe, NgTemplateOutlet } from '@angular/common';\n\n/**\n * @description A component that provides language selection functionality for applications.\n *\n * This component displays available languages and allows users to select their preferred language.\n * It adapts its display based on the number of available languages:\n * - For 1 language: No selector is shown\n * - For 2-3 languages: Displays a dropdown menu\n * - For 4+ languages: Opens a modal dialog with the full list\n *\n * The component integrates with EuiAppShellService to manage language state\n * and uses TranslateService for localization.\n */\n@Component({\n selector: 'eui-language-selector',\n templateUrl: './language-selector.component.html',\n styleUrl: './language-selector.scss',\n encapsulation: ViewEncapsulation.None,\n imports: [\n AsyncPipe,\n NgTemplateOutlet,\n ...EUI_DROPDOWN,\n ...EUI_ICON,\n ...EUI_BUTTON,\n ],\n providers: [\n EuiDialogService,\n ],\n})\nexport class EuiLanguageSelectorComponent implements OnInit, AfterViewInit, OnDestroy, OnChanges {\n @HostBinding('class')\n get cssClasses(): string {\n return [\n 'eui-language-selector',\n this.languages?.length <= 1 ? 'eui-language-selector--empty' : '',\n this.isToolbarSelector ? 'eui-language-selector--toolbar-selector' : '',\n ]\n .join(' ')\n .trim();\n }\n\n languages: EuiLanguage[];\n selectedLanguage: EuiLanguage;\n /**\n * @property hasLanguageSelection - Enables/disables language selection functionality.\n * @default true\n */\n @Input({ transform: booleanAttribute }) hasLanguageSelection = true;\n /**\n * @property isToolbarSelector - When true, applies styling for toolbar integration.\n * @default false\n */\n @Input({ transform: booleanAttribute }) isToolbarSelector = false;\n /**\n * @property euiPrimary - When true, applies primary styling.\n * @default false\n */\n @Input({ transform: booleanAttribute }) euiPrimary = false;\n /**\n * @property ariaLabel - Accessibility label for the language selector.\n * If not provided, defaults to \"Change Language - Current Language: [selected language]\"\n */\n @Input('aria-label') ariaLabel: string;\n /**\n * @event languageSelectorClick - Emitted when the language selector is clicked.\n */\n @Output() languageSelectorClick = new EventEmitter<null>();\n\n appShellService = inject(EuiAppShellService);\n private destroy$: Subject<boolean> = new Subject<boolean>();\n private isAriaLabelChanged = false;\n private cd = inject(ChangeDetectorRef);\n private euiDialogService = inject(EuiDialogService);\n private translateService = inject(TranslateService);\n private elRef = inject(ElementRef);\n\n /**\n * returns true if there are at least one and max four languages.\n */\n get isShowDropDown(): boolean {\n return this.languages?.length > 1 && this.languages?.length < 4;\n }\n\n /**\n * returns true if there are at least five languages.\n */\n get isShowModal(): boolean {\n return this.languages?.length >= 4;\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes && changes['ariaLabel']) {\n this.isAriaLabelChanged = true;\n this.ariaLabel = changes['ariaLabel'].currentValue;\n }\n }\n\n ngOnInit(): void {\n // update languages array based on AppShell State 'language' changes\n this.appShellService.state$\n .pipe(\n takeUntil(this.destroy$),\n distinctUntilKeyChanged('languages'),\n map((state) => state.languages),\n )\n .subscribe((languages) => {\n this.languages = languages ? EuiEuLanguages.getOrderedLanguages(languages) : EuiEuLanguages.getLanguages();\n this.cd.detectChanges();\n });\n\n // update activeLanguage array based on AppShell State 'language' changes\n this.appShellService.state$\n .pipe(\n takeUntil(this.destroy$),\n distinctUntilKeyChanged('activeLanguage'),\n map((state) => state?.activeLanguage),\n )\n .subscribe((activeLanguage) => {\n this.selectedLanguage = this.getLanguage(activeLanguage);\n if (!this.isAriaLabelChanged) {\n this.ariaLabel = `Change Language - Current Language: ${this.selectedLanguage.label}`;\n }\n this.cd.detectChanges();\n });\n }\n\n ngAfterViewInit(): void {\n // TODO: Using DI like \"inject(EuiToolbarComponent, {optional: true, skipSelf: true})\" would create\n // circular dependencies. Better approaches would be:\n // 1. Parent component provides the isToolbarSelector input\n // 2. Apply the eui-language-selector--toolbar-selector class directly\n let hasToolbarParent = false;\n try {\n hasToolbarParent = this.elRef.nativeElement.closest('eui-toolbar');\n } catch (e) {\n // do nothing\n }\n\n if (hasToolbarParent) {\n setTimeout(() => {\n this.isToolbarSelector = true;\n }, 1);\n }\n }\n\n ngOnDestroy(): void {\n this.destroy$.next(true);\n this.destroy$.unsubscribe();\n }\n\n /**\n * Updates the active language in the application.\n * @param language - The language object to set as active.\n */\n onLanguageChanged(language: EuiLanguage): void {\n // Update the AppShellService state\n this.appShellService.setState({\n ...this.appShellService.state,\n activeLanguage: language.code,\n });\n }\n\n /**\n * Opens a modal dialog with the full list of available languages.\n * @param [titleLabel] - Optional custom title for the modal.\n */\n onOpen(titleLabel: string = this.translateService.instant('eui.languageSelector.modalTitle')): void {\n this.euiDialogService.openDialog(\n new EuiDialogConfig({\n title: titleLabel,\n hasFooter: false,\n hasClosedOnClickOutside: true,\n bodyComponent: {\n component: EuiModalSelectorComponent,\n config: {\n languages: this.languages,\n selectedLanguage: this.selectedLanguage,\n languageChanged: (language: EuiLanguage): void => this.onLanguageChanged(language),\n },\n },\n }),\n );\n }\n\n onClick(): void {\n this.languageSelectorClick.emit();\n }\n\n /**\n * Retrieves a language object by its code.\n *\n * @param languageCode - Two-character language code.\n */\n protected getLanguage(languageCode: string): EuiLanguage {\n return this.languages.find((lang) => lang.code === languageCode);\n }\n}\n","@if (!hasLanguageSelection) {\n <button class=\"eui-language-selector__button\"\n euiButton\n euiBasicButton\n [euiBranding]=\"isToolbarSelector\"\n (click)=\"onClick()\"\n [attr.aria-label]=\"ariaLabel\">\n <ng-template *ngTemplateOutlet=\"languageSelectorIcon\"></ng-template>\n <span class=\"eui-language-selector__code\">{{ (appShellService.state$ | async).activeLanguage }}</span>\n </button>\n\n} @else if (hasLanguageSelection && isShowDropDown) {\n <eui-dropdown>\n <button class=\"eui-language-selector__button\"\n [attr.aria-label]=\"ariaLabel\"\n euiButton\n euiBasicButton\n [euiBranding]=\"isToolbarSelector\">\n <ng-template *ngTemplateOutlet=\"languageSelectorIcon\"></ng-template>\n <span class=\"eui-language-selector__code\">{{ (appShellService.state$ | async).activeLanguage }}</span>\n </button>\n\n <eui-dropdown-content>\n <div class=\"eui-language-selector-menu\">\n @for (language of languages; track language) {\n <button\n euiDropdownItem\n attr.data-e2e=\"eui-language-selector-item_{{ language.code }}\"\n class=\"eui-language-selector-menu-language-item\"\n (click)=\"onLanguageChanged(language)\">\n {{ language.label }} ({{ language.code }})\n </button>\n }\n </div>\n </eui-dropdown-content>\n </eui-dropdown>\n\n} @else if (hasLanguageSelection && isShowModal) {\n <button class=\"eui-language-selector__button\"\n euiButton euiBasicButton\n (click)=\"onOpen()\"\n [attr.aria-label]=\"ariaLabel\"\n [euiBranding]=\"isToolbarSelector\">\n <ng-template *ngTemplateOutlet=\"languageSelectorIcon\"></ng-template>\n <span class=\"eui-language-selector__code\">{{ (appShellService.state$ | async)?.activeLanguage }}</span>\n </button>\n}\n\n<ng-template #languageSelectorIcon>\n <eui-icon-svg icon=\"eui-language-selector\" />\n</ng-template>\n","import { EuiLanguageSelectorComponent } from './language-selector.component';\nimport { EuiModalSelectorComponent } from './modal-selector/modal-selector.component';\n\nexport * from './language-selector.component';\nexport * from './modal-selector/modal-selector.component';\n\nexport const EUI_LANGUAGE_SELECTOR = [\n EuiLanguageSelectorComponent, \n EuiModalSelectorComponent,\n] as const;","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i3"],"mappings":"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"}
1
+ {"version":3,"file":"eui-components-eui-language-selector.mjs","sources":["../../eui-language-selector/modal-selector/modal-selector.component.ts","../../eui-language-selector/modal-selector/modal-selector.component.html","../../eui-language-selector/language-selector.component.ts","../../eui-language-selector/language-selector.component.html","../../eui-language-selector/index.ts","../../eui-language-selector/eui-components-eui-language-selector.ts"],"sourcesContent":["import { Component, ViewEncapsulation, ChangeDetectionStrategy, OnInit, inject } from '@angular/core';\nimport { EuiEuLanguages, EuiLanguage } from '@eui/core';\n\nimport { DIALOG_COMPONENT_CONFIG } from '@eui/components/eui-dialog';\nimport { EuiDialogService } from '@eui/components/eui-dialog';\nimport { EUI_BUTTON } from '@eui/components/eui-button';\n\nexport interface ModelConfig {\n /**\n * Available languages to select from\n */\n languages: EuiLanguage[];\n /**\n * Currently selected language\n */\n selectedLanguage: EuiLanguage;\n /**\n * Callback when language selection changes\n * @param language\n */\n languageChanged: (language: EuiLanguage) => void;\n}\n\n/**\n * Modal component for language selection.\n * Displays EU and non-EU languages in a grid layout with 4 languages per row.\n */\n@Component({\n selector: 'eui-modal-selector',\n templateUrl: './modal-selector.component.html',\n changeDetection: ChangeDetectionStrategy.Default,\n encapsulation: ViewEncapsulation.None,\n imports: [\n ...EUI_BUTTON,\n ],\n})\nexport class EuiModalSelectorComponent implements OnInit {\n /**\n * Configuration injected from the dialog service\n */\n config = inject<ModelConfig>(DIALOG_COMPONENT_CONFIG, { optional: true });\n\n /** EU languages organized in rows of up to 4 languages */\n public languageRows: EuiLanguage[][] = [];\n /**\n * Non-EU languages organized in rows of up to 4 languages\n * @deprecated use {@link additionalLanguageRows}\n */\n public additionaLanguageRows: EuiLanguage[][] = [];\n /** Non-EU languages organized in rows of up to 4 languages */\n public additionalLanguageRows: EuiLanguage[][] = [];\n /** Currently selected language */\n private selectedLanguage: EuiLanguage;\n /** Dialog service for handling modal operations */\n private euiDialogService = inject<EuiDialogService>(EuiDialogService);\n\n /**\n * Initializes language rows by separating EU and non-EU languages\n */\n ngOnInit(): void {\n this.languageRows = this.prepareLanguageRows(EuiEuLanguages.filterEULanguages(this.config?.languages));\n this.additionalLanguageRows = this.prepareLanguageRows(EuiEuLanguages.filterNonEULanguages(this.config?.languages));\n this.additionaLanguageRows = this.additionalLanguageRows;\n }\n\n /**\n * Handles language selection\n * @param {EuiLanguage} languageCode - The language being selected\n */\n selectLanguage(languageCode: EuiLanguage): void {\n if (this.selectedLanguage?.code !== languageCode.code) {\n for (const language of this.config?.languages || []) {\n if (language.code === languageCode.code) {\n this.selectedLanguage = language;\n break;\n }\n }\n }\n\n this.config?.languageChanged(languageCode);\n this.euiDialogService.closeDialog();\n }\n\n /**\n * Organizes languages into rows of up to 4 languages each\n * @param {EuiLanguage[]} languages - Array of languages to organize\n * @returns {EuiLanguage[][]} 2D array of languages organized in rows\n */\n private prepareLanguageRows(languages: EuiLanguage[]): EuiLanguage[][] {\n // If no languages, return an empty array\n if (!languages.length) return [];\n\n return languages.reduce<EuiLanguage[][]>((rows, language, index) => {\n // Calculate current row index\n const rowIndex = Math.floor(index / 4);\n\n // If we need to create a new row\n if (!rows[rowIndex]) {\n rows[rowIndex] = [];\n }\n\n // Add language to the current row\n rows[rowIndex].push(language);\n return rows;\n }, []);\n }\n}\n","@if (additionalLanguageRows?.length > 0) {\n <h4>EU official languages</h4>\n}\n@for (row of languageRows; track row) {\n <div id=\"eu_languages\" class=\"row\">\n @for (language of row; track language) {\n <div class=\"col-md-6 mb-2\">\n <div class=\"eui-u-flex eui-u-mb-xs\">\n <span class=\"eui-u-text-uppercase eui-u-width-2\">{{language.code}}</span>\n <button\n type=\"button\"\n e2eAttr=\"eui-language-selector-item_{{ language.code }}\"\n euiButton\n euiPrimary\n [euiBasicButton]=\"language.code !== config?.selectedLanguage.code\"\n (click)=\"selectLanguage(language)\">\n {{ language.label }}\n </button>\n </div>\n </div>\n }\n </div>\n}\n@if (additionalLanguageRows?.length > 0) {\n <br />\n <h4>Non-EU Languages</h4>\n @for (row of additionalLanguageRows; track row) {\n <div id=\"extra_languages\" class=\"row\">\n @for (language of row; track language) {\n <div class=\"col-md-6 mb-2\">\n <div class=\"eui-u-flex eui-u-mb-xs\">\n <span class=\"eui-u-text-uppercase eui-u-width-2\">{{language.code}}</span>\n <button\n type=\"button\"\n e2eAttr=\"eui-language-selector-item_{{ language.code }}\"\n euiButton\n euiPrimary\n [euiBasicButton]=\"language.code !== config?.selectedLanguage.code\"\n (click)=\"selectLanguage(language)\">\n {{ language.label }}\n </button>\n </div>\n </div>\n }\n </div>\n }\n}\n","import {\n Component,\n ViewEncapsulation,\n HostBinding,\n OnDestroy,\n OnInit,\n ChangeDetectorRef,\n Input,\n Output,\n EventEmitter,\n booleanAttribute,\n ElementRef,\n AfterViewInit,\n SimpleChanges,\n OnChanges,\n inject,\n} from '@angular/core';\nimport { distinctUntilKeyChanged, map, takeUntil } from 'rxjs/operators';\nimport { Subject } from 'rxjs';\nimport { TranslateService } from '@ngx-translate/core';\n\nimport { EuiEuLanguages, EuiLanguage } from '@eui/core';\nimport { EuiAppShellService } from '@eui/core';\nimport { EuiDialogConfig, EuiDialogService } from '@eui/components/eui-dialog';\n\nimport { EuiModalSelectorComponent } from './modal-selector/modal-selector.component';\nimport { EUI_ICON } from '@eui/components/eui-icon';\nimport { EUI_BUTTON } from '@eui/components/eui-button';\nimport { EUI_DROPDOWN } from '@eui/components/eui-dropdown';\nimport { AsyncPipe, NgTemplateOutlet } from '@angular/common';\n\n/**\n * @description A component that provides language selection functionality for applications.\n *\n * This component displays available languages and allows users to select their preferred language.\n * It adapts its display based on the number of available languages:\n * - For 1 language: No selector is shown\n * - For 2-3 languages: Displays a dropdown menu\n * - For 4+ languages: Opens a modal dialog with the full list\n *\n * The component integrates with EuiAppShellService to manage language state\n * and uses TranslateService for localization.\n */\n@Component({\n selector: 'eui-language-selector',\n templateUrl: './language-selector.component.html',\n styleUrl: './language-selector.scss',\n encapsulation: ViewEncapsulation.None,\n imports: [\n AsyncPipe,\n NgTemplateOutlet,\n ...EUI_DROPDOWN,\n ...EUI_ICON,\n ...EUI_BUTTON,\n ],\n providers: [\n EuiDialogService,\n ],\n})\nexport class EuiLanguageSelectorComponent implements OnInit, AfterViewInit, OnDestroy, OnChanges {\n @HostBinding('class')\n get cssClasses(): string {\n return [\n 'eui-language-selector',\n this.languages?.length <= 1 ? 'eui-language-selector--empty' : '',\n this.isToolbarSelector ? 'eui-language-selector--toolbar-selector' : '',\n ]\n .join(' ')\n .trim();\n }\n\n languages: EuiLanguage[];\n selectedLanguage: EuiLanguage;\n /**\n * @property hasLanguageSelection - Enables/disables language selection functionality.\n * @default true\n */\n @Input({ transform: booleanAttribute }) hasLanguageSelection = true;\n /**\n * @property isToolbarSelector - When true, applies styling for toolbar integration.\n * @default false\n */\n @Input({ transform: booleanAttribute }) isToolbarSelector = false;\n /**\n * @property euiPrimary - When true, applies primary styling.\n * @default false\n */\n @Input({ transform: booleanAttribute }) euiPrimary = false;\n /**\n * @property ariaLabel - Accessibility label for the language selector.\n * If not provided, defaults to \"Change Language - Current Language: [selected language]\"\n */\n @Input('aria-label') ariaLabel: string;\n /**\n * @event languageSelectorClick - Emitted when the language selector is clicked.\n */\n @Output() languageSelectorClick = new EventEmitter<null>();\n\n appShellService = inject(EuiAppShellService);\n private destroy$: Subject<boolean> = new Subject<boolean>();\n private isAriaLabelChanged = false;\n private cd = inject(ChangeDetectorRef);\n private euiDialogService = inject(EuiDialogService);\n private translateService = inject(TranslateService);\n private elRef = inject(ElementRef);\n\n /**\n * returns true if there are at least one and max four languages.\n */\n get isShowDropDown(): boolean {\n return this.languages?.length > 1 && this.languages?.length < 4;\n }\n\n /**\n * returns true if there are at least five languages.\n */\n get isShowModal(): boolean {\n return this.languages?.length >= 4;\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes && changes['ariaLabel']) {\n this.isAriaLabelChanged = true;\n this.ariaLabel = changes['ariaLabel'].currentValue;\n }\n }\n\n ngOnInit(): void {\n // update languages array based on AppShell State 'language' changes\n this.appShellService.state$\n .pipe(\n takeUntil(this.destroy$),\n distinctUntilKeyChanged('languages'),\n map((state) => state.languages),\n )\n .subscribe((languages) => {\n this.languages = languages ? EuiEuLanguages.getOrderedLanguages(languages) : EuiEuLanguages.getLanguages();\n this.cd.detectChanges();\n });\n\n // update activeLanguage array based on AppShell State 'language' changes\n this.appShellService.state$\n .pipe(\n takeUntil(this.destroy$),\n distinctUntilKeyChanged('activeLanguage'),\n map((state) => state?.activeLanguage),\n )\n .subscribe((activeLanguage) => {\n this.selectedLanguage = this.getLanguage(activeLanguage);\n if (!this.isAriaLabelChanged) {\n this.ariaLabel = `Change Language - Current Language: ${this.selectedLanguage.label}`;\n }\n this.cd.detectChanges();\n });\n }\n\n ngAfterViewInit(): void {\n // TODO: Using DI like \"inject(EuiToolbarComponent, {optional: true, skipSelf: true})\" would create\n // circular dependencies. Better approaches would be:\n // 1. Parent component provides the isToolbarSelector input\n // 2. Apply the eui-language-selector--toolbar-selector class directly\n \n let hasToolbarParent = false;\n try {\n hasToolbarParent = this.elRef.nativeElement.closest('eui-toolbar') || this.elRef.nativeElement.closest('eui-app-toolbar');\n } catch (e) {\n // do nothing\n }\n\n if (hasToolbarParent) {\n setTimeout(() => {\n this.isToolbarSelector = true;\n this.cd.detectChanges();\n }, 50);\n }\n }\n\n ngOnDestroy(): void {\n this.destroy$.next(true);\n this.destroy$.unsubscribe();\n }\n\n /**\n * Updates the active language in the application.\n * @param language - The language object to set as active.\n */\n onLanguageChanged(language: EuiLanguage): void {\n // Update the AppShellService state\n this.appShellService.setState({\n ...this.appShellService.state,\n activeLanguage: language.code,\n });\n }\n\n /**\n * Opens a modal dialog with the full list of available languages.\n * @param [titleLabel] - Optional custom title for the modal.\n */\n onOpen(titleLabel: string = this.translateService.instant('eui.languageSelector.modalTitle')): void {\n this.euiDialogService.openDialog(\n new EuiDialogConfig({\n title: titleLabel,\n hasFooter: false,\n hasClosedOnClickOutside: true,\n bodyComponent: {\n component: EuiModalSelectorComponent,\n config: {\n languages: this.languages,\n selectedLanguage: this.selectedLanguage,\n languageChanged: (language: EuiLanguage): void => this.onLanguageChanged(language),\n },\n },\n }),\n );\n }\n\n onClick(): void {\n this.languageSelectorClick.emit();\n }\n\n /**\n * Retrieves a language object by its code.\n *\n * @param languageCode - Two-character language code.\n */\n protected getLanguage(languageCode: string): EuiLanguage {\n return this.languages.find((lang) => lang.code === languageCode);\n }\n}\n","@if (!hasLanguageSelection) {\n <button class=\"eui-language-selector__button\"\n euiButton\n euiBasicButton\n [euiBranding]=\"isToolbarSelector\"\n (click)=\"onClick()\"\n [attr.aria-label]=\"ariaLabel\">\n <ng-template *ngTemplateOutlet=\"languageSelectorIcon\"></ng-template>\n <span class=\"eui-language-selector__code\">{{ (appShellService.state$ | async).activeLanguage }}</span>\n </button>\n\n} @else if (hasLanguageSelection && isShowDropDown) {\n <eui-dropdown>\n <button class=\"eui-language-selector__button\"\n [attr.aria-label]=\"ariaLabel\"\n euiButton\n euiBasicButton\n [euiBranding]=\"isToolbarSelector\">\n <ng-template *ngTemplateOutlet=\"languageSelectorIcon\"></ng-template>\n <span class=\"eui-language-selector__code\">{{ (appShellService.state$ | async).activeLanguage }}</span>\n </button>\n\n <eui-dropdown-content>\n <div class=\"eui-language-selector-menu\">\n @for (language of languages; track language) {\n <button\n euiDropdownItem\n attr.data-e2e=\"eui-language-selector-item_{{ language.code }}\"\n class=\"eui-language-selector-menu-language-item\"\n (click)=\"onLanguageChanged(language)\">\n {{ language.label }} ({{ language.code }})\n </button>\n }\n </div>\n </eui-dropdown-content>\n </eui-dropdown>\n\n} @else if (hasLanguageSelection && isShowModal) {\n <button class=\"eui-language-selector__button\"\n euiButton euiBasicButton\n (click)=\"onOpen()\"\n [attr.aria-label]=\"ariaLabel\"\n [euiBranding]=\"isToolbarSelector\">\n <ng-template *ngTemplateOutlet=\"languageSelectorIcon\"></ng-template>\n <span class=\"eui-language-selector__code\">{{ (appShellService.state$ | async)?.activeLanguage }}</span>\n </button>\n}\n\n<ng-template #languageSelectorIcon>\n <eui-icon-svg icon=\"eui-language-selector\" />\n</ng-template>\n","import { EuiLanguageSelectorComponent } from './language-selector.component';\nimport { EuiModalSelectorComponent } from './modal-selector/modal-selector.component';\n\nexport * from './language-selector.component';\nexport * from './modal-selector/modal-selector.component';\n\nexport const EUI_LANGUAGE_SELECTOR = [\n EuiLanguageSelectorComponent, \n EuiModalSelectorComponent,\n] as const;","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i3"],"mappings":"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"}