[8.x] Upgrade EUI to v100.0.0 (#213495)

# Backport

This is a manual backport of #212974 and #213292

---

`99.3.0-classic.0`  `100.0.0-classic.0`

[Questions? Please see our Kibana upgrade
FAQ.](https://github.com/elastic/eui/blob/main/wiki/eui-team-processes/upgrading-kibana.md#faq-for-kibana-teams)

---


## [`v100.0.0`](https://github.com/elastic/eui/releases/v100.0.0)

**Bug fixes**

- Fixed `EuiComboBox` by cleaning duplicated values when having a
delimiter prop. ([#8335](https://github.com/elastic/eui/pull/8335))

## [`v99.4.0`](https://github.com/elastic/eui/releases/v99.4.0)

- Minor design updates to `EuiCollapsibleNavBeta`
([#8332](https://github.com/elastic/eui/pull/8332))
  - Allow section without a title
- Second-level icons should be horizontally aligned with the top-level
icon
  - Turn off text truncation for nav items
- Added `quickSelectButtonProps` to `EuiSuperDatePicker`
([#8380](https://github.com/elastic/eui/pull/8380))

**Bug fixes**

- Fixed a bug in `EuiHeader` where the navigation of
`EuiCollapsibleNavBeta` would render below the `EuiFlyout`'s overlay
([#8325](https://github.com/elastic/eui/pull/8325))

**Accessibility**

- Improved the accessibility of `EuiComboBox` by adding `aria-setsize`
and `aria-posinset` to ensure correct information is provided for its
virtualized listbox ([#8333](https://github.com/elastic/eui/pull/8333))
- Improved the `EuiAccordionTrigger`'s screen reader UX by passed
`aria-hidden` to the `EuiAccordionArrow` to avoid duplicated
announcements by screen readers.
([#8342](https://github.com/elastic/eui/pull/8342))

---------

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
This commit is contained in:
Tomasz Kajtoch 2025-03-07 15:45:59 +01:00 committed by GitHub
parent 822f2fbbfc
commit 3892ad8c0e
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
8 changed files with 32 additions and 15 deletions

View file

@ -121,7 +121,7 @@
"@elastic/ecs": "^8.11.5",
"@elastic/elasticsearch": "^8.17.1",
"@elastic/ems-client": "8.6.3",
"@elastic/eui": "99.3.0-classic.0",
"@elastic/eui": "100.0.0-classic.0",
"@elastic/filesaver": "1.1.2",
"@elastic/node-crypto": "^1.2.3",
"@elastic/numeral": "^2.5.1",

View file

@ -140,6 +140,7 @@ Array [
<button
aria-controls="generated-id"
aria-expanded="true"
aria-hidden="true"
aria-labelledby="generated-id"
class="euiButtonIcon euiAccordion__arrow emotion-euiButtonIcon-xs-empty-text-euiAccordion__arrow-right-isOpen"
tabindex="-1"
@ -263,6 +264,7 @@ Array [
<button
aria-controls="generated-id"
aria-expanded="true"
aria-hidden="true"
aria-labelledby="generated-id"
class="euiButtonIcon euiAccordion__arrow emotion-euiButtonIcon-xs-empty-text-euiAccordion__arrow-right-isOpen"
tabindex="-1"
@ -393,6 +395,7 @@ Array [
<button
aria-controls="generated-id"
aria-expanded="true"
aria-hidden="true"
aria-labelledby="generated-id"
class="euiButtonIcon euiAccordion__arrow emotion-euiButtonIcon-xs-empty-text-euiAccordion__arrow-right-isOpen"
tabindex="-1"
@ -506,6 +509,7 @@ Array [
<button
aria-controls="generated-id"
aria-expanded="true"
aria-hidden="true"
aria-labelledby="generated-id"
class="euiButtonIcon euiAccordion__arrow emotion-euiButtonIcon-xs-empty-text-euiAccordion__arrow-right-isOpen"
tabindex="-1"
@ -602,6 +606,7 @@ Array [
<button
aria-controls="generated-id"
aria-expanded="true"
aria-hidden="true"
aria-labelledby="generated-id"
class="euiButtonIcon euiAccordion__arrow emotion-euiButtonIcon-xs-empty-text-euiAccordion__arrow-right-isOpen"
tabindex="-1"

View file

@ -87,7 +87,7 @@ export const LICENSE_OVERRIDES = {
'jsts@1.6.2': ['Eclipse Distribution License - v 1.0'], // cf. https://github.com/bjornharrtell/jsts
'@mapbox/jsonlint-lines-primitives@2.0.2': ['MIT'], // license in readme https://github.com/tmcw/jsonlint
'@elastic/ems-client@8.6.3': ['Elastic License 2.0'],
'@elastic/eui@99.3.0-classic.0': ['Elastic License 2.0 OR AGPL-3.0-only OR SSPL-1.0'],
'@elastic/eui@100.0.0-classic.0': ['Elastic License 2.0 OR AGPL-3.0-only OR SSPL-1.0'],
'language-subtag-registry@0.3.21': ['CC-BY-4.0'], // retired ODCBy license https://github.com/mattcg/language-subtag-registry
'buffers@0.1.1': ['MIT'], // license in importing module https://www.npmjs.com/package/binary
'@bufbuild/protobuf@1.2.1': ['Apache-2.0'], // license (Apache-2.0 AND BSD-3-Clause)

View file

@ -93,6 +93,7 @@ exports[`ScreenCapturePanelContent properly renders a view with "canvas" layout
<button
aria-controls="advanced-options"
aria-expanded="false"
aria-hidden="true"
aria-labelledby="generated-id"
class="euiButtonIcon euiAccordion__arrow emotion-euiButtonIcon-xs-empty-text-euiAccordion__arrow-left-isClosed"
tabindex="-1"
@ -275,6 +276,7 @@ exports[`ScreenCapturePanelContent properly renders a view with "print" layout o
<button
aria-controls="advanced-options"
aria-expanded="false"
aria-hidden="true"
aria-labelledby="generated-id"
class="euiButtonIcon euiAccordion__arrow emotion-euiButtonIcon-xs-empty-text-euiAccordion__arrow-left-isClosed"
tabindex="-1"
@ -404,6 +406,7 @@ exports[`ScreenCapturePanelContent renders the default view properly 1`] = `
<button
aria-controls="advanced-options"
aria-expanded="false"
aria-hidden="true"
aria-labelledby="generated-id"
class="euiButtonIcon euiAccordion__arrow emotion-euiButtonIcon-xs-empty-text-euiAccordion__arrow-left-isClosed"
tabindex="-1"

View file

@ -532,7 +532,9 @@ export const NavigationSectionUI: FC<Props> = React.memo(({ navNode: _navNode })
}, [topLevelItems, serializeAccordionItems]);
if (!isEuiCollapsibleNavItemProps(props)) {
throw new Error(`Invalid EuiCollapsibleNavItem props for node ${props.id}`);
throw new Error(
`Invalid EuiCollapsibleNavItem props for node ${(props as EuiCollapsibleNavSubItemProps).id}`
);
}
if (!isVisible) {

View file

@ -28,6 +28,7 @@ Object {
aria-autocomplete="list"
aria-controls=""
aria-expanded="false"
aria-haspopup="listbox"
aria-invalid="false"
autocomplete="off"
class="euiComboBox__input emotion-euiComboBoxInput"
@ -96,6 +97,7 @@ Object {
aria-autocomplete="list"
aria-controls=""
aria-expanded="false"
aria-haspopup="listbox"
aria-invalid="false"
autocomplete="off"
class="euiComboBox__input emotion-euiComboBoxInput"
@ -220,6 +222,7 @@ Object {
aria-autocomplete="list"
aria-controls=""
aria-expanded="false"
aria-haspopup="listbox"
aria-invalid="false"
autocomplete="off"
class="euiComboBox__input emotion-euiComboBoxInput"
@ -260,6 +263,7 @@ Object {
aria-autocomplete="list"
aria-controls=""
aria-expanded="false"
aria-haspopup="listbox"
aria-invalid="false"
autocomplete="off"
class="euiComboBox__input emotion-euiComboBoxInput"
@ -358,6 +362,7 @@ Object {
aria-autocomplete="list"
aria-controls=""
aria-expanded="false"
aria-haspopup="listbox"
aria-invalid="false"
autocomplete="off"
class="euiComboBox__input emotion-euiComboBoxInput"
@ -415,6 +420,7 @@ Object {
aria-autocomplete="list"
aria-controls=""
aria-expanded="false"
aria-haspopup="listbox"
aria-invalid="false"
autocomplete="off"
class="euiComboBox__input emotion-euiComboBoxInput"
@ -529,6 +535,7 @@ Object {
aria-autocomplete="list"
aria-controls=""
aria-expanded="false"
aria-haspopup="listbox"
aria-invalid="false"
autocomplete="off"
class="euiComboBox__input emotion-euiComboBoxInput"
@ -579,6 +586,7 @@ Object {
aria-autocomplete="list"
aria-controls=""
aria-expanded="false"
aria-haspopup="listbox"
aria-invalid="false"
autocomplete="off"
class="euiComboBox__input emotion-euiComboBoxInput"

View file

@ -667,12 +667,11 @@ describe('<ControlGeneralViewSelector />', () => {
const selector = getByTestId('cloud-defend-selector');
// should start as closed.
// there are two mock selectors, and the last one will auto open
expect(
await within(selector).findAllByRole('button', {
expanded: false,
})
).toHaveLength(2);
).toHaveLength(1);
expect(
within(selector).queryByRole('button', {
expanded: true,
@ -696,7 +695,7 @@ describe('<ControlGeneralViewSelector />', () => {
await within(selector).findAllByRole('button', {
expanded: true,
})
).toHaveLength(2);
).toHaveLength(1);
expect(queryByTestId('cloud-defend-conditions-count')).not.toBeInTheDocument();
});

View file

@ -2278,21 +2278,21 @@
resolved "https://registry.yarnpkg.com/@elastic/eslint-plugin-eui/-/eslint-plugin-eui-0.0.2.tgz#56b9ef03984a05cc213772ae3713ea8ef47b0314"
integrity sha512-IoxURM5zraoQ7C8f+mJb9HYSENiZGgRVcG4tLQxE61yHNNRDXtGDWTZh8N1KIHcsqN1CEPETjuzBXkJYF/fDiQ==
"@elastic/eui-theme-common@0.0.10":
version "0.0.10"
resolved "https://registry.yarnpkg.com/@elastic/eui-theme-common/-/eui-theme-common-0.0.10.tgz#253da1337abae656ab93917bb3ed7e6f48e5f9a1"
integrity sha512-MruijLreN1VpyQgUK2pXcdFIbpYpjc3ZaZ+f0r1Aa0KON935wIf7VAb861tYPmAJxaf+4X4kyoqS0F+8rO9tbg==
"@elastic/eui-theme-common@0.0.11":
version "0.0.11"
resolved "https://registry.yarnpkg.com/@elastic/eui-theme-common/-/eui-theme-common-0.0.11.tgz#950d06a652a25b09c46cec8f16a449223ada45a3"
integrity sha512-DV8qX45R/01SWdCoINWbFwJgMdWHYuq7ZmdY/J3pE1QNKIGv52SdOpiW+XwhT8S3dOv+XFidoywVT9pAjcMmyA==
dependencies:
"@types/lodash" "^4.14.202"
chroma-js "^2.4.2"
lodash "^4.17.21"
"@elastic/eui@99.3.0-classic.0":
version "99.3.0-classic.0"
resolved "https://registry.yarnpkg.com/@elastic/eui/-/eui-99.3.0-classic.0.tgz#063b5d237338fca947d26c885bb831f0081f8de8"
integrity sha512-XamKr4CO2Umb8e828Krl7TQN2MHa4i5jB/OZgpPt/bOMFE7jWO6Fw5S1Q0M5cNmUsVoefd3hi7C7juLKPuILZw==
"@elastic/eui@100.0.0-classic.0":
version "100.0.0-classic.0"
resolved "https://registry.yarnpkg.com/@elastic/eui/-/eui-100.0.0-classic.0.tgz#3849fb9a1d4797a93f51cace9c1ba3e97568320a"
integrity sha512-aK7cuQo4UWF/03X2Wvu88/JZN3p58LM8asRxGVpMMQFbjCLAL/vR0JpVGvy8Qpc9k3pYFuZWcINWTawvAqqiPA==
dependencies:
"@elastic/eui-theme-common" "0.0.10"
"@elastic/eui-theme-common" "0.0.11"
"@elastic/prismjs-esql" "^1.0.0"
"@hello-pangea/dnd" "^16.6.0"
"@types/lodash" "^4.14.202"