Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
7204c9d
refactor(eui): migrate EuiToolTip to functional component
weronikaolejniczak Apr 7, 2026
7e4fec1
refactor(eui): memoize EuiToolTip styles
weronikaolejniczak Apr 7, 2026
45cc756
refactor(eui): update EuiToolTip usages
weronikaolejniczak Apr 7, 2026
451f7a5
chore(eui): update VRT reference images
weronikaolejniczak Apr 7, 2026
221f34e
chore(eui): update EuiToolTip test suite
weronikaolejniczak Apr 7, 2026
fcc3c7e
chore(eui): update EuiIconTip test suite
weronikaolejniczak Apr 7, 2026
203e9c6
[Flyout System / Flyout Overlay] Pass containerRect to Flyout Overlay…
tsullivan Mar 19, 2026
a56f7b8
[Flyout System] Scoped history (#9413)
tsullivan Mar 19, 2026
c3fe82a
[EuiDataGrid] Fix scrolling on focus return (#9453)
tkajtoch Mar 20, 2026
93e3d37
(chore) Updated contributing guidelines (#9518)
JasonStoltz Mar 20, 2026
101a548
[EuiColorPicker] Ensure `EuiFormRow` label is applied to `EuiColorPic…
mgadewoll Mar 23, 2026
3912e14
[EuiMarkdownFormat] Fix intraword underscore emphasis rendering (#9408)
acstll Mar 23, 2026
f640cd4
Release: @elastic/eui v114.0.0, @elastic/eui-theme-common v9.0.0, @el…
acstll Mar 23, 2026
650c5ef
Feat/9243 dogfood eslint plugin eui (#9368)
ragini-pandey Mar 24, 2026
f7766d4
refactor: convert FieldValueToggleFilter to function component (#9522)
CollegeRideOut Mar 25, 2026
fbcd8a0
Adding bottom In/out panel transition icons (#9528)
l-suarez Mar 25, 2026
7611824
[EuiSearchBarFilters] Refactor class component to functional componen…
barlima Mar 25, 2026
a8422e9
migrate: EuiWrappingPopover to functional component
parbhat-cpp Mar 26, 2026
7128ef3
fix popover shift
parbhat-cpp Mar 26, 2026
01cc0c4
[EuiTable/EuiBasicTable/EuiInMemoryTable] Warn when not recommended c…
tkajtoch Mar 30, 2026
1be386b
add changelog
parbhat-cpp Mar 31, 2026
0494e0b
[EuiFlyout] Reduce slide-out animations (#9514)
tsullivan Mar 31, 2026
71653d6
Fix typo in 3rd-party logos note (#9547)
weronikaolejniczak Apr 1, 2026
d0c394c
(chore) Updated wiki with Staging Changes section (#9545)
JasonStoltz Apr 1, 2026
e734ae9
[EuiTable] Fix rendering of EuiTableHeaderMobile when `responsiveBrea…
tkajtoch Apr 1, 2026
d611832
use destructured button instead of props.button
parbhat-cpp Apr 2, 2026
bb4bd67
remove changelog for wrapping_popover PR
parbhat-cpp Apr 2, 2026
e2c3e5b
[MarkdownEditorHelpButton] Add optional tooltipPosition (#9546)
Zacqary Apr 7, 2026
f3c5c53
[Chore] Fix the flaky inline edit form test (#9553)
weronikaolejniczak Apr 7, 2026
4b0b026
[Website] Fix EuiFlyout JSDoc docs link (#9563)
weronikaolejniczak Apr 7, 2026
ae418d1
feat(eui): remove delay from EuiToolTip
weronikaolejniczak Apr 7, 2026
429da95
feat(eui): remove delay from EuiIconTip
weronikaolejniczak Apr 7, 2026
a137d5c
chore(website): remove delay from EuiToolTip docs
weronikaolejniczak Apr 7, 2026
33690ee
feat(eui): remove delay from EuiToolTip usages
weronikaolejniczak Apr 7, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 4 additions & 2 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<!--
NOTE:
- If this is your first PR in the EUI repo, please ensure you've fully read through our [contributing to EUI](https://github.com/elastic/eui/blob/main/wiki/contributing-to-eui#how-to-ensure-the-timely-review-of-pull-requests) wiki guide.
- If this is your first PR in the EUI repo, please ensure you've fully read through our [contributing to EUI](https://github.com/elastic/eui/blob/main/wiki/contributing-to-eui/README.md) wiki guide.
- Ask @eui-team if you need help.
-->

Expand Down Expand Up @@ -47,10 +47,12 @@ Example:

<!-- Help reviewers understand the consumer impact of merging this PR. -->

Note: Most PRs should be [tested in Kibana](https://github.com/elastic/eui/blob/main/wiki/contributing-to-eui/testing/testing-in-kibana.md) to help gauge their **Impact** before merging.

- [ ] πŸ”΄ **Breaking changes** β€” What will break? How many usages in Kibana/Cloud UI are impacted?
- [ ] πŸ’… **Visual changes** β€” May impact style overrides; could require visual testing. Explain and estimate impact.
- [ ] πŸ§ͺ **Test impact** β€” May break functional or snapshot tests (e.g., HTML structure, class names, default values).
- [ ] πŸ”§ **Hard to integrate** β€” If integration is complex, stage commits in Kibana/Cloud UI branches for cherry-picking and link to them below.
- [ ] πŸ”§ **Hard to integrate** β€” If changes require substantial updates to Kibana, please [stage the changes](https://github.com/elastic/eui/blob/main/wiki/contributing-to-eui/testing/testing-in-kibana.md#staging-integrations) and link them here.

**Impact level:** 🟒 None / 🟒 Low / 🟑 Moderate / πŸ”΄ High

Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ Yes! We welcome community-contributed PRs, especially around feature requests th

### What about reporting bugs and feature requests?

Bug reports and feature requests are most welcome, but our roadmap and prioritization are driven primarily by [internal Elastic usage](wiki/contributing-to-eui#how-we-assign-work-and-define-our-roadmap).
Bug reports and feature requests are most welcome, but our roadmap and prioritization are driven primarily by internal Elastic usage.

Please note that in order to keep our backlog manageable and focused on tasks we intend to complete, feature requests & tech debt issues that are inactive for a year will be auto-closed (bugs will remain open if determined to be reproducible and valid).

Expand Down
4 changes: 4 additions & 0 deletions packages/eslint-plugin/changelogs/CHANGELOG_2026.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
## [`v2.11.0`](https://github.com/elastic/eui/releases/v2.11.0)

- Updated `no-unnamed-interactive-element` to include checking `EuiColorPicker` ([#9436](https://github.com/elastic/eui/pull/9436))

## [`v2.10.0`](https://github.com/elastic/eui/releases/v2.10.0)

- Added `EuiPopover` and `EuiWrappingPopover` checks to `require-aria-label-for-modals`, requiring either `aria-label` or `aria-labelledby` for these popover components. ([#9427](https://github.com/elastic/eui/pull/9427))
Expand Down
3 changes: 3 additions & 0 deletions packages/eslint-plugin/changelogs/upcoming/9368.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
**Bug fixes**

- Fixed `no-css-color` ESLint rule crash when analyzing functions that return `undefined` or non-object values
2 changes: 1 addition & 1 deletion packages/eslint-plugin/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@elastic/eslint-plugin-eui",
"version": "2.10.0",
"version": "2.11.0",
"license": "Apache-2.0",
"repository": {
"type": "git",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,10 @@ ruleTester.run('NoUnnamedInteractiveElement', NoUnnamedInteractiveElement, {
code: '<EuiBreadcrumbs aria-label="Breadcrumbs label" />',
languageOptions,
},
{
code: '<EuiColorPicker aria-label="ColorPicker label" />',
languageOptions,
},
// Wrapped in EuiFormRow with label
{
code: '<EuiFormRow label="Row label"><EuiComboBox /></EuiFormRow>',
Expand All @@ -53,6 +57,10 @@ ruleTester.run('NoUnnamedInteractiveElement', NoUnnamedInteractiveElement, {
code: '<EuiFormRow label="Row label"><EuiSelect /></EuiFormRow>',
languageOptions,
},
{
code: '<EuiFormRow label="Row label"><EuiColorPicker /></EuiFormRow>',
languageOptions,
},
],
invalid: [
// Missing a11y prop for interactive components
Expand Down Expand Up @@ -101,6 +109,11 @@ ruleTester.run('NoUnnamedInteractiveElement', NoUnnamedInteractiveElement, {
languageOptions,
errors: [{ messageId: 'missingA11y' }],
},
{
code: '<EuiColorPicker />',
languageOptions,
errors: [{ messageId: 'missingA11y' }],
},
// Wrapped but missing label
{
code: '<EuiFormRow><EuiComboBox /></EuiFormRow>',
Expand All @@ -112,5 +125,10 @@ ruleTester.run('NoUnnamedInteractiveElement', NoUnnamedInteractiveElement, {
languageOptions,
errors: [{ messageId: 'missingA11y' }],
},
{
code: '<EuiFormRow><EuiColorPicker /></EuiFormRow>',
languageOptions,
errors: [{ messageId: 'missingA11y' }],
},
],
});
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ const interactiveComponents = [
'EuiPagination',
'EuiTreeView',
'EuiBreadcrumbs',
'EuiColorPicker',
] as const;

const wrappingComponents = ['EuiFormRow'] as const;
Expand Down Expand Up @@ -54,7 +55,10 @@ export const NoUnnamedInteractiveElement = ESLintUtils.RuleCreator.withoutDocs({
function report(opening: TSESTree.JSXOpeningElement) {
if (opening.name.type !== 'JSXIdentifier') return;
const component = opening.name.name;
const allowed = getAllowedA11yPropNamesForComponent(component, a11yConfig).join(', ');
const allowed = getAllowedA11yPropNamesForComponent(
component,
a11yConfig
).join(', ');
context.report({
node: opening,
messageId: 'missingA11y',
Expand Down
16 changes: 13 additions & 3 deletions packages/eslint-plugin/src/rules/no_css_color.ts
Original file line number Diff line number Diff line change
Expand Up @@ -478,10 +478,20 @@ export const NoCssColor = ESLintUtils.RuleCreator.withoutDocs({
return;
}

const returnArgument = (
functionReturnStatementNode as TSESTree.ReturnStatement
).argument;

if (
!returnArgument ||
returnArgument.type !== 'ObjectExpression'
) {
return;
}

declarationPropertiesNode = (
(functionReturnStatementNode as TSESTree.ReturnStatement)
.argument as TSESTree.ObjectExpression
)?.properties.filter(
returnArgument as TSESTree.ObjectExpression
).properties.filter(
(property): property is TSESTree.Property =>
property.type === 'Property'
);
Expand Down
14 changes: 14 additions & 0 deletions packages/eui-theme-borealis/changelogs/CHANGELOG_2026.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,17 @@
## [`v7.0.0`](https://github.com/elastic/eui/releases/v7.0.0)

**Breaking changes**

- Removed `severity.assistance` color token ([#9507](https://github.com/elastic/eui/pull/9507))
- Removed assistance datavis color tokens: ([#9507](https://github.com/elastic/eui/pull/9507))
- `vis.euiColorVisAssistance`
- `vis.euiColorVis10`
- `vis.euiColorVis11`
- `vis.euiColorVisText10`
- `vis.euiColorVisText11`
- `vis.euiColorVisBehindText10`
- `vis.euiColorVisBehindText11`

## [`v6.2.0`](https://github.com/elastic/eui/releases/v6.2.0)

- Adjusted lightest color tokens to get a more balanced palette and contrast with content over light backgrounds: ([#9432](https://github.com/elastic/eui/pull/9432))
Expand Down
11 changes: 0 additions & 11 deletions packages/eui-theme-borealis/changelogs/upcoming/9507.md

This file was deleted.

2 changes: 1 addition & 1 deletion packages/eui-theme-borealis/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@elastic/eui-theme-borealis",
"version": "6.2.0",
"version": "7.0.0",
"description": "A visual theme for EUI",
"license": "SEE LICENSE IN LICENSE.txt",
"scripts": {
Expand Down
14 changes: 14 additions & 0 deletions packages/eui-theme-common/changelogs/CHANGELOG_2026.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,17 @@
## [`v9.0.0`](https://github.com/elastic/eui/releases/v9.0.0)

**Breaking changes**

- Removed type for `severity.assistance` color token ([#9507](https://github.com/elastic/eui/pull/9507))
- Removed types for assistance datavis color tokens: ([#9507](https://github.com/elastic/eui/pull/9507))
- `vis.euiColorVisAssistance`
- `vis.euiColorVis10`
- `vis.euiColorVis11`
- `vis.euiColorVisText10`
- `vis.euiColorVisText11`
- `vis.euiColorVisBehindText10`
- `vis.euiColorVisBehindText11`

## [`v8.1.0`](https://github.com/elastic/eui/releases/v8.1.0)

- Added new assistance tokens: ([#9383](https://github.com/elastic/eui/pull/9383))
Expand Down
11 changes: 0 additions & 11 deletions packages/eui-theme-common/changelogs/upcoming/9507.md

This file was deleted.

2 changes: 1 addition & 1 deletion packages/eui-theme-common/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@elastic/eui-theme-common",
"version": "8.1.0",
"version": "9.0.0",
"description": "EUI theme common",
"license": "SEE LICENSE IN LICENSE.txt",
"scripts": {
Expand Down
4 changes: 3 additions & 1 deletion packages/eui/.eslintrc.js
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@ module.exports = {
'plugin:@typescript-eslint/recommended',
'plugin:deprecation/recommended',
'plugin:storybook/recommended',
'plugin:@elastic/eui/recommended',
// Prettier options need to come last, in order to override other style rules
'plugin:prettier/recommended',
],
Expand All @@ -48,7 +49,8 @@ module.exports = {
'react',
'react-hooks',
'@emotion',
'deprecation'
'deprecation',
'@elastic/eui'
],
rules: {
'deprecation/deprecation': 'warn',
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
37 changes: 37 additions & 0 deletions packages/eui/changelogs/CHANGELOG_2026.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,40 @@
## [`v114.0.0`](https://github.com/elastic/eui/releases/v114.0.0)

- Fixed the clipping of `EuiFlyout` overlay mask to the container bounds when the `container` prop is provided, so the mask no longer covers the full viewport for app-scoped flyouts. ([#9512](https://github.com/elastic/eui/pull/9512))
- Updated `EuiFlyout` to support `pushAnimation` prop for `type="overlay"` ([#9428](https://github.com/elastic/eui/pull/9428))
- Added `hasAnimation` prop on `EuiFlyout` (replaces `pushAnimation`) ([#9428](https://github.com/elastic/eui/pull/9428))
- Added `hasAnimation` prop on `EuiOverlayMask` to conditionally add animation styles ([#9428](https://github.com/elastic/eui/pull/9428))
- Added `historyKey` prop (type `symbol`) to `EuiFlyout` and the flyout manager API to support scoped flyout history. ([#9413](https://github.com/elastic/eui/pull/9413))
- Only flyouts sharing the same `Symbol` reference share Back button navigation and history entries; omitting `historyKey` gives each session its own isolated history group.
- `ACTION_CLOSE_ALL` now closes only the current history group rather than all open flyouts.

**Bug fixes**

- Fixed `EuiTreeView` expanded nodes clipping content and causing sibling overlap when children exceed viewport height ([#9510](https://github.com/elastic/eui/pull/9510))
- Fixed `EuiDataGrid` scroll bouncing back to the focused element in certain cases ([#9453](https://github.com/elastic/eui/pull/9453))
- Fixed support for intraword underscores in `EuiMarkdownFormat` ([#9408](https://github.com/elastic/eui/pull/9408))

**Deprecations**

- Deprecated `pushAnimation` prop on `EuiFlyout`. Use `hasAnimation` instead. ([#9428](https://github.com/elastic/eui/pull/9428))

**Breaking changes**

- Removed `severity.assistance` color token ([#9507](https://github.com/elastic/eui/pull/9507))
- Removed assistance datavis color tokens: ([#9507](https://github.com/elastic/eui/pull/9507))
- `vis.euiColorVisAssistance`
- `vis.euiColorVis10`
- `vis.euiColorVis11`
- `vis.euiColorVisText10`
- `vis.euiColorVisText11`
- `vis.euiColorVisBehindText10`
- `vis.euiColorVisBehindText11`
- The positional signature of `FlyoutManagerApi.addFlyout` and the flyout store's `addFlyout` now includes `historyKey` before the `iconType`/`minWidth` arguments. Call sites that pass arguments positionally must be updated (or switched to named parameters) to account for this new parameter ordering. ([#9413](https://github.com/elastic/eui/pull/9413))

**Accessibility**

- Fixed `aria-label` not being applied to `EuiColorPicker`'s input element ([#9436](https://github.com/elastic/eui/pull/9436))

## [`v113.3.0`](https://github.com/elastic/eui/releases/v113.3.0)

- Added `color` prop to `EuiContextMenuItem`, accepting all standard button color values ([#9448](https://github.com/elastic/eui/pull/9448))
Expand Down
7 changes: 0 additions & 7 deletions packages/eui/changelogs/upcoming/9428.md

This file was deleted.

11 changes: 0 additions & 11 deletions packages/eui/changelogs/upcoming/9507.md

This file was deleted.

3 changes: 0 additions & 3 deletions packages/eui/changelogs/upcoming/9510.md

This file was deleted.

3 changes: 3 additions & 0 deletions packages/eui/changelogs/upcoming/9514.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
**Bug fixes**

- Fixed `EuiFlyoutManager` animation flickering when switching between flyout sessions by removing intermediate transition stages (backgrounding, returning, closing) and limiting opening animations to the initial flyout and first child only
1 change: 1 addition & 0 deletions packages/eui/changelogs/upcoming/9528.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
- Added `transitionBottomIn` and `transitionBottomOut` icons to `EuiIcon`
3 changes: 3 additions & 0 deletions packages/eui/changelogs/upcoming/9531.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
**Bug fixes**

- Fixed rendering of `EuiTableHeaderMobile` when `responsiveBreakpoint=false` prop is set
1 change: 1 addition & 0 deletions packages/eui/changelogs/upcoming/9540.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
- Added a warning when non-recommended units are used in `width`, `minWidth` or `maxWidth` props on `<EuiTableFooterCell>`, `<EuiTableHeaderCell>`, `<EuiTableHeaderCellCheckbox>` as well as the `columns` configuration on `<EuiBasicTable>` and `<EuiInMemoryTable>`
1 change: 1 addition & 0 deletions packages/eui/changelogs/upcoming/9546.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
- Added an optional `tooltipProps` prop to `EuiMarkdownEditorHelpButton`
Loading