Skip to content

Conversation

@mgadewoll
Copy link
Contributor

@mgadewoll mgadewoll commented Mar 24, 2025

100.0.0101.0.1

Questions? Please see our Kibana upgrade FAQ.

Package updates

@elastic/eui v101.0.1

  • Updated EuiProvider and EuiThemeProvider with a new highContrastMode (#8444)
    • This prop allows toggling a higher contrast visual style that primarily affects borders and shadows
    • On EuiProvider, if the highContrastMode prop is not passed, this setting will inherit from the user's OS/system settings
    • If the user is using a forced colors mode (e.g. Windows' high contrast themes), this system setting will take precedence over any highContrastMode or colorMode props passed
  • Added highContrastModeStyles and preventForcedColors styling utils (#8444)
  • Updated EuiRangeTooltip to be easier to see in dark mode (#8444)
  • Updated some deprecated color token usages that have direct substitutes (#8444)
    • text -> textParagraph
    • title -> textHeading
    • subduedText -> textSubdued
    • disabledText -> textDisabled
    • accentText -> textAccent
    • dangerText -> textDanger
    • warningText -> textWarning
  • useEuiShadow() now accepts a second options argument (#8234)
  • useEuiShadowFlat() now accepts an options object instead of only a color (#8234)
  • Updated EuiPopover and EuiToolTip to be easier to see in dark mode. (#8174)

Bug fixes

  • Fixed a visual bug where a transparent border would create visible empty space (LIGHT mode only) for the components: (#8427)

    • EuiPanel
    • EuiPopover
    • EuiToolTip
    • EuiToast
    • EuiTour

@elastic/eui-theme-common v0.1.0

  • Removed type EuiShadowCustomColor (#8444)

  • Added types: (#8444)

    • EuiShadowOptions
    • EuiThemeHighContrastModeProp
    • EuiThemeHighContrastMode
  • Updated shadow utils to accepts a second options argument and return borders in high contrast mode: (#8444)

    • euiShadow
    • euiShadowXSmall
    • euiShadowSmall
    • euiShadowMedium
    • euiShadowLarge
    • euiSlightShadowHover
    • euiShadowFlat

@elastic/eui-theme-borealis v0.1.0

  • Added new component level tokens: (#8444)
    • buttonGroupBackgroundDisabledSelected
    • overlayMaskBackground
    • overlayMaskBackgroundHighContrast
    • skeletonBackgroundSkeletonMiddleHighContrast

Additional changes

The latest @elastic/eui package introduces high contrast mode support. This PR sets all usages of EuiProvider to use highContrastMode={false} to introduce it in disabled state (this reflects the current functionality in Kibana). This is because the UI for the high contrast mode functionality (and style adjustments) need to first be implemented on Kibana side (by shared-ux).

QA

Adding high contrast mode in disabled state should result in no visual changes in Kibana. Please ensure your product view remain unchanged.

@mgadewoll mgadewoll added release_note:skip Skip the PR/issue when compiling release notes EUI v9.0.0 backport:prev-minor ci:cloud-deploy Create or update a Cloud deployment ci:project-deploy-elasticsearch Create an Elasticsearch Serverless project ci:project-deploy-observability Create an Observability project ci:project-deploy-security Create a Security Serverless Project v9.1.0 labels Mar 24, 2025
@mgadewoll mgadewoll self-assigned this Mar 24, 2025
@github-actions
Copy link
Contributor

🤖 GitHub comments

Expand to view the GitHub comments

Just comment with:

  • /oblt-deploy : Deploy a Kibana instance using the Observability test environments.
  • run docs-build : Re-trigger the docs validation. (use unformatted text in the comment!)

@mgadewoll mgadewoll marked this pull request as ready for review March 24, 2025 15:46
@mgadewoll mgadewoll requested review from a team as code owners March 24, 2025 15:46
@elasticmachine
Copy link
Contributor

Pinging @elastic/eui-team (EUI)

@mgadewoll mgadewoll requested review from a team as code owners March 24, 2025 15:46
Copy link
Contributor

@rmyz rmyz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

Copy link
Contributor

@iblancof iblancof left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One quick question:
Why is the mono attribute being removed? I don’t have the full context, so if you could share a bit, that would be great.

As for setting highContrastMode to false by default, I saw the other comments explaining it, thank you!

@weronikaolejniczak
Copy link
Contributor

@iblancof the mono prop was removed because that's the only EuiLoadingChart variant we want to support (no more colored version). You can find the details here: elastic/eui#8275

cc @ek-so

@ThomThomson ThomThomson self-requested a review March 27, 2025 14:49
Copy link
Contributor

@ThomThomson ThomThomson left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Presentation team changes LGTM!

Copy link
Contributor

@yngrdyn yngrdyn left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@mgadewoll
Copy link
Contributor Author

@elasticmachine merge upstream

@mgadewoll mgadewoll enabled auto-merge (squash) March 28, 2025 16:41
@elasticmachine
Copy link
Contributor

elasticmachine commented Mar 28, 2025

💚 Build Succeeded

Metrics [docs]

Module Count

Fewer modules leads to a faster build time

id before after diff
controls 354 356 +2
dashboard 644 646 +2
maps 1254 1256 +2
ml 2408 2411 +3
visTypeVega 539 542 +3
total +12

Async chunks

Total size of all lazy-loaded chunks that will be downloaded as the user navigates the app

id before after diff
aiops 452.1KB 452.1KB -5.0B
apm 2.5MB 2.5MB -5.0B
controls 414.7KB 420.9KB +6.2KB
dashboard 544.0KB 549.6KB +5.6KB
datasetQuality 240.6KB 240.6KB -13.0B
infra 1.2MB 1.2MB -8.0B
maps 3.0MB 3.0MB +5.6KB
ml 5.4MB 5.4MB +7.6KB
profiling 404.2KB 404.1KB -22.0B
securitySolution 8.9MB 8.9MB -8.0B
slo 929.5KB 929.5KB -40.0B
synthetics 988.0KB 988.0KB -8.0B
ux 169.8KB 169.8KB -16.0B
visTypeTimeseries 484.5KB 484.5KB -16.0B
visTypeVega 2.0MB 2.0MB +7.7KB
visualizations 342.4KB 342.4KB -16.0B
total +32.5KB

Page load bundle

Size of the bundles that are downloaded on every page load. Target size is below 100kb

id before after diff
expressions 92.6KB 92.6KB -8.0B
kbnUiSharedDeps-npmDll 6.0MB 6.1MB +32.1KB
kbnUiSharedDeps-srcJs 3.6MB 3.6MB +20.0B
presentationPanel 11.1KB 11.1KB -8.0B
visDefaultEditor 29.4KB 29.4KB -8.0B
visualizations 35.2KB 35.2KB -8.0B
total +32.1KB

History

cc @mgadewoll

@mgadewoll mgadewoll merged commit 2cd777d into elastic:main Mar 28, 2025
9 checks passed
@kibanamachine
Copy link
Contributor

Starting backport for target branches: 9.0

https://github.com/elastic/kibana/actions/runs/14135538116

@kibanamachine
Copy link
Contributor

💔 All backports failed

Status Branch Result
9.0 Backport failed because of merge conflicts

Manual backport

To create the backport manually run:

node scripts/backport --pr 215698

Questions ?

Please refer to the Backport tool documentation

@mgadewoll
Copy link
Contributor Author

💚 All backports created successfully

Status Branch Result
9.0

Note: Successful backport PRs will be merged automatically after passing CI.

Questions ?

Please refer to the Backport tool documentation

mgadewoll added a commit to mgadewoll/kibana that referenced this pull request Mar 28, 2025
`100.0.0` ⏩ `101.0.1`

[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)

## Package updates

### `@elastic/eui`
[`v101.0.1`](https://github.com/elastic/eui/releases/v101.0.1)

- Updated `EuiProvider` and `EuiThemeProvider` with a new
`highContrastMode` ([elastic#8444](elastic/eui#8444))
- This prop allows toggling a higher contrast visual style that
primarily affects borders and shadows
- On `EuiProvider`, if the `highContrastMode` prop is not passed, this
setting will inherit from the user's OS/system settings
- If the user is using a forced colors mode (e.g. Windows' high contrast
themes), this system setting will take precedence over any
`highContrastMode` or `colorMode` props passed
- Added `highContrastModeStyles` and `preventForcedColors` styling utils
([elastic#8444](elastic/eui#8444))
- Updated `EuiRangeTooltip` to be easier to see in dark mode
([elastic#8444](elastic/eui#8444))
- Updated some deprecated color token usages that have direct
substitutes ([elastic#8444](elastic/eui#8444))
  - `text` -> `textParagraph`
  - `title` -> `textHeading`
  - `subduedText` -> `textSubdued`
  - `disabledText` -> `textDisabled`
  - `accentText` -> `textAccent`
  - `dangerText` -> `textDanger`
  - `warningText` -> `textWarning`
- `useEuiShadow()` now accepts a second `options` argument
([elastic#8234](elastic/eui#8234))
- `useEuiShadowFlat()` now accepts an `options` object instead of only a
color ([elastic#8234](elastic/eui#8234))
- Updated `EuiPopover` and `EuiToolTip` to be easier to see in dark
mode. ([elastic#8174](elastic/eui#8174))

**Bug fixes**

- Fixed a visual bug where a transparent border would create visible
empty space (`LIGHT` mode only) for the components:
([elastic#8427](elastic/eui#8427))
  - `EuiPanel`
  - `EuiPopover`
  - `EuiToolTip`
  - `EuiToast`
  - `EuiTour`

  ---

### `@elastic/eui-theme-common`
[`v0.1.0`](https://github.com/elastic/eui/releases/v0.1.0)

- Removed type `EuiShadowCustomColor`
([elastic#8444](elastic/eui#8444))
- Added types:  ([elastic#8444](elastic/eui#8444))
  - `EuiShadowOptions`
  - `EuiThemeHighContrastModeProp`
  - `EuiThemeHighContrastMode`
- Updated shadow utils to accepts a second `options` argument and return
borders in high contrast mode:
([elastic#8444](elastic/eui#8444))
  - `euiShadow`
  - `euiShadowXSmall`
  - `euiShadowSmall`
  - `euiShadowMedium`
  - `euiShadowLarge`
  - `euiSlightShadowHover`
  - `euiShadowFlat`

  ---

### `@elastic/eui-theme-borealis`
[`v0.1.0`](https://github.com/elastic/eui/releases/v0.1.0)

- Added new component level tokens:
([elastic#8444](elastic/eui#8444))
  - `buttonGroupBackgroundDisabledSelected`
  - `overlayMaskBackground`
  - `overlayMaskBackgroundHighContrast`
  - `skeletonBackgroundSkeletonMiddleHighContrast`

## Additional changes

The latest `@elastic/eui` package introduces high contrast mode support.
This PR sets all usages of `EuiProvider` to use
`highContrastMode={false}` to introduce it in disabled state (this
reflects the current functionality in Kibana). This is because the UI
for the high contrast mode functionality (and style adjustments) need to
first be implemented on Kibana side (by shared-ux).

## QA

Adding high contrast mode in disabled state should result in no visual
changes in Kibana. Please ensure your product view remain unchanged.

---------

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
(cherry picked from commit 2cd777d)

# Conflicts:
#	src/platform/plugins/shared/discover/public/application/main/components/layout/discover_layout.test.tsx
mgadewoll added a commit that referenced this pull request Mar 31, 2025
# Backport

This will backport the following commits from `main` to `9.0`:
- [Upgrade EUI to v101.0.1
(#215698)](#215698)

<!--- Backport version: 9.6.6 -->

### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sorenlouv/backport)

<!--BACKPORT [{"author":{"name":"Lene
Gadewoll","email":"lene.gadewoll@elastic.co"},"sourceCommit":{"committedDate":"2025-03-28T18:29:23Z","message":"Upgrade
EUI to v101.0.1 (#215698)\n\n`100.0.0` ⏩ `101.0.1`\n\n[Questions? Please
see our Kibana
upgrade\nFAQ.](https://github.com/elastic/eui/blob/main/wiki/eui-team-processes/upgrading-kibana.md#faq-for-kibana-teams)\n\n##
Package updates\n\n###
`@elastic/eui`\n[`v101.0.1`](https://github.com/elastic/eui/releases/v101.0.1)\n\n-
Updated `EuiProvider` and `EuiThemeProvider` with a
new\n`highContrastMode`
([#8444](https://github.com/elastic/eui/pull/8444))\n- This prop allows
toggling a higher contrast visual style that\nprimarily affects borders
and shadows\n- On `EuiProvider`, if the `highContrastMode` prop is not
passed, this\nsetting will inherit from the user's OS/system settings\n-
If the user is using a forced colors mode (e.g. Windows' high
contrast\nthemes), this system setting will take precedence over
any\n`highContrastMode` or `colorMode` props passed\n- Added
`highContrastModeStyles` and `preventForcedColors` styling
utils\n([#8444](https://github.com/elastic/eui/pull/8444))\n- Updated
`EuiRangeTooltip` to be easier to see in dark
mode\n([#8444](https://github.com/elastic/eui/pull/8444))\n- Updated
some deprecated color token usages that have direct\nsubstitutes
([#8444](https://github.com/elastic/eui/pull/8444))\n - `text` ->
`textParagraph`\n - `title` -> `textHeading`\n - `subduedText` ->
`textSubdued`\n - `disabledText` -> `textDisabled`\n - `accentText` ->
`textAccent`\n - `dangerText` -> `textDanger`\n - `warningText` ->
`textWarning`\n- `useEuiShadow()` now accepts a second `options`
argument\n([#8234](https://github.com/elastic/eui/pull/8234))\n-
`useEuiShadowFlat()` now accepts an `options` object instead of only
a\ncolor ([#8234](https://github.com/elastic/eui/pull/8234))\n- Updated
`EuiPopover` and `EuiToolTip` to be easier to see in dark\nmode.
([#8174](https://github.com/elastic/eui/pull/8174))\n\n**Bug
fixes**\n\n- Fixed a visual bug where a transparent border would create
visible\nempty space (`LIGHT` mode only) for the
components:\n([#8427](https://github.com/elastic/eui/pull/8427))\n -
`EuiPanel`\n - `EuiPopover`\n - `EuiToolTip`\n - `EuiToast`\n -
`EuiTour`\n \n --- \n \n###
`@elastic/eui-theme-common`\n[`v0.1.0`](https://github.com/elastic/eui/releases/v0.1.0)\n\n-
Removed type
`EuiShadowCustomColor`\n([#8444](https://github.com/elastic/eui/pull/8444))\n-
Added types: ([#8444](https://github.com/elastic/eui/pull/8444))\n -
`EuiShadowOptions`\n - `EuiThemeHighContrastModeProp`\n -
`EuiThemeHighContrastMode`\n- Updated shadow utils to accepts a second
`options` argument and return\nborders in high contrast
mode:\n([#8444](https://github.com/elastic/eui/pull/8444))\n -
`euiShadow`\n - `euiShadowXSmall`\n - `euiShadowSmall`\n -
`euiShadowMedium`\n - `euiShadowLarge`\n - `euiSlightShadowHover`\n -
`euiShadowFlat`\n \n ---\n \n###
`@elastic/eui-theme-borealis`\n[`v0.1.0`](https://github.com/elastic/eui/releases/v0.1.0)\n\n-
Added new component level
tokens:\n([#8444](https://github.com/elastic/eui/pull/8444))\n -
`buttonGroupBackgroundDisabledSelected`\n - `overlayMaskBackground`\n -
`overlayMaskBackgroundHighContrast`\n -
`skeletonBackgroundSkeletonMiddleHighContrast`\n \n\n## Additional
changes\n\nThe latest `@elastic/eui` package introduces high contrast
mode support.\nThis PR sets all usages of `EuiProvider` to
use\n`highContrastMode={false}` to introduce it in disabled state
(this\nreflects the current functionality in Kibana). This is because
the UI\nfor the high contrast mode functionality (and style adjustments)
need to\nfirst be implemented on Kibana side (by shared-ux).\n\n##
QA\n\nAdding high contrast mode in disabled state should result in no
visual\nchanges in Kibana. Please ensure your product view remain
unchanged.\n\n---------\n\nCo-authored-by: Elastic Machine
<elasticmachine@users.noreply.github.com>","sha":"2cd777d96909a73bab547cc3e3f509fc7ef916af","branchLabelMapping":{"^v9.1.0$":"main","^v8.19.0$":"8.x","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["release_note:skip","EUI","v9.0.0","backport:prev-minor","ci:cloud-deploy","ci:project-deploy-elasticsearch","ci:project-deploy-observability","ci:project-deploy-security","Team:obs-ux-infra_services","Team:obs-ux-management","v9.1.0"],"title":"Upgrade
EUI to
v101.0.1","number":215698,"url":"https://github.com/elastic/kibana/pull/215698","mergeCommit":{"message":"Upgrade
EUI to v101.0.1 (#215698)\n\n`100.0.0` ⏩ `101.0.1`\n\n[Questions? Please
see our Kibana
upgrade\nFAQ.](https://github.com/elastic/eui/blob/main/wiki/eui-team-processes/upgrading-kibana.md#faq-for-kibana-teams)\n\n##
Package updates\n\n###
`@elastic/eui`\n[`v101.0.1`](https://github.com/elastic/eui/releases/v101.0.1)\n\n-
Updated `EuiProvider` and `EuiThemeProvider` with a
new\n`highContrastMode`
([#8444](https://github.com/elastic/eui/pull/8444))\n- This prop allows
toggling a higher contrast visual style that\nprimarily affects borders
and shadows\n- On `EuiProvider`, if the `highContrastMode` prop is not
passed, this\nsetting will inherit from the user's OS/system settings\n-
If the user is using a forced colors mode (e.g. Windows' high
contrast\nthemes), this system setting will take precedence over
any\n`highContrastMode` or `colorMode` props passed\n- Added
`highContrastModeStyles` and `preventForcedColors` styling
utils\n([#8444](https://github.com/elastic/eui/pull/8444))\n- Updated
`EuiRangeTooltip` to be easier to see in dark
mode\n([#8444](https://github.com/elastic/eui/pull/8444))\n- Updated
some deprecated color token usages that have direct\nsubstitutes
([#8444](https://github.com/elastic/eui/pull/8444))\n - `text` ->
`textParagraph`\n - `title` -> `textHeading`\n - `subduedText` ->
`textSubdued`\n - `disabledText` -> `textDisabled`\n - `accentText` ->
`textAccent`\n - `dangerText` -> `textDanger`\n - `warningText` ->
`textWarning`\n- `useEuiShadow()` now accepts a second `options`
argument\n([#8234](https://github.com/elastic/eui/pull/8234))\n-
`useEuiShadowFlat()` now accepts an `options` object instead of only
a\ncolor ([#8234](https://github.com/elastic/eui/pull/8234))\n- Updated
`EuiPopover` and `EuiToolTip` to be easier to see in dark\nmode.
([#8174](https://github.com/elastic/eui/pull/8174))\n\n**Bug
fixes**\n\n- Fixed a visual bug where a transparent border would create
visible\nempty space (`LIGHT` mode only) for the
components:\n([#8427](https://github.com/elastic/eui/pull/8427))\n -
`EuiPanel`\n - `EuiPopover`\n - `EuiToolTip`\n - `EuiToast`\n -
`EuiTour`\n \n --- \n \n###
`@elastic/eui-theme-common`\n[`v0.1.0`](https://github.com/elastic/eui/releases/v0.1.0)\n\n-
Removed type
`EuiShadowCustomColor`\n([#8444](https://github.com/elastic/eui/pull/8444))\n-
Added types: ([#8444](https://github.com/elastic/eui/pull/8444))\n -
`EuiShadowOptions`\n - `EuiThemeHighContrastModeProp`\n -
`EuiThemeHighContrastMode`\n- Updated shadow utils to accepts a second
`options` argument and return\nborders in high contrast
mode:\n([#8444](https://github.com/elastic/eui/pull/8444))\n -
`euiShadow`\n - `euiShadowXSmall`\n - `euiShadowSmall`\n -
`euiShadowMedium`\n - `euiShadowLarge`\n - `euiSlightShadowHover`\n -
`euiShadowFlat`\n \n ---\n \n###
`@elastic/eui-theme-borealis`\n[`v0.1.0`](https://github.com/elastic/eui/releases/v0.1.0)\n\n-
Added new component level
tokens:\n([#8444](https://github.com/elastic/eui/pull/8444))\n -
`buttonGroupBackgroundDisabledSelected`\n - `overlayMaskBackground`\n -
`overlayMaskBackgroundHighContrast`\n -
`skeletonBackgroundSkeletonMiddleHighContrast`\n \n\n## Additional
changes\n\nThe latest `@elastic/eui` package introduces high contrast
mode support.\nThis PR sets all usages of `EuiProvider` to
use\n`highContrastMode={false}` to introduce it in disabled state
(this\nreflects the current functionality in Kibana). This is because
the UI\nfor the high contrast mode functionality (and style adjustments)
need to\nfirst be implemented on Kibana side (by shared-ux).\n\n##
QA\n\nAdding high contrast mode in disabled state should result in no
visual\nchanges in Kibana. Please ensure your product view remain
unchanged.\n\n---------\n\nCo-authored-by: Elastic Machine
<elasticmachine@users.noreply.github.com>","sha":"2cd777d96909a73bab547cc3e3f509fc7ef916af"}},"sourceBranch":"main","suggestedTargetBranches":["9.0"],"targetPullRequestStates":[{"branch":"9.0","label":"v9.0.0","branchLabelMappingKey":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"},{"branch":"main","label":"v9.1.0","branchLabelMappingKey":"^v9.1.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/215698","number":215698,"mergeCommit":{"message":"Upgrade
EUI to v101.0.1 (#215698)\n\n`100.0.0` ⏩ `101.0.1`\n\n[Questions? Please
see our Kibana
upgrade\nFAQ.](https://github.com/elastic/eui/blob/main/wiki/eui-team-processes/upgrading-kibana.md#faq-for-kibana-teams)\n\n##
Package updates\n\n###
`@elastic/eui`\n[`v101.0.1`](https://github.com/elastic/eui/releases/v101.0.1)\n\n-
Updated `EuiProvider` and `EuiThemeProvider` with a
new\n`highContrastMode`
([#8444](https://github.com/elastic/eui/pull/8444))\n- This prop allows
toggling a higher contrast visual style that\nprimarily affects borders
and shadows\n- On `EuiProvider`, if the `highContrastMode` prop is not
passed, this\nsetting will inherit from the user's OS/system settings\n-
If the user is using a forced colors mode (e.g. Windows' high
contrast\nthemes), this system setting will take precedence over
any\n`highContrastMode` or `colorMode` props passed\n- Added
`highContrastModeStyles` and `preventForcedColors` styling
utils\n([#8444](https://github.com/elastic/eui/pull/8444))\n- Updated
`EuiRangeTooltip` to be easier to see in dark
mode\n([#8444](https://github.com/elastic/eui/pull/8444))\n- Updated
some deprecated color token usages that have direct\nsubstitutes
([#8444](https://github.com/elastic/eui/pull/8444))\n - `text` ->
`textParagraph`\n - `title` -> `textHeading`\n - `subduedText` ->
`textSubdued`\n - `disabledText` -> `textDisabled`\n - `accentText` ->
`textAccent`\n - `dangerText` -> `textDanger`\n - `warningText` ->
`textWarning`\n- `useEuiShadow()` now accepts a second `options`
argument\n([#8234](https://github.com/elastic/eui/pull/8234))\n-
`useEuiShadowFlat()` now accepts an `options` object instead of only
a\ncolor ([#8234](https://github.com/elastic/eui/pull/8234))\n- Updated
`EuiPopover` and `EuiToolTip` to be easier to see in dark\nmode.
([#8174](https://github.com/elastic/eui/pull/8174))\n\n**Bug
fixes**\n\n- Fixed a visual bug where a transparent border would create
visible\nempty space (`LIGHT` mode only) for the
components:\n([#8427](https://github.com/elastic/eui/pull/8427))\n -
`EuiPanel`\n - `EuiPopover`\n - `EuiToolTip`\n - `EuiToast`\n -
`EuiTour`\n \n --- \n \n###
`@elastic/eui-theme-common`\n[`v0.1.0`](https://github.com/elastic/eui/releases/v0.1.0)\n\n-
Removed type
`EuiShadowCustomColor`\n([#8444](https://github.com/elastic/eui/pull/8444))\n-
Added types: ([#8444](https://github.com/elastic/eui/pull/8444))\n -
`EuiShadowOptions`\n - `EuiThemeHighContrastModeProp`\n -
`EuiThemeHighContrastMode`\n- Updated shadow utils to accepts a second
`options` argument and return\nborders in high contrast
mode:\n([#8444](https://github.com/elastic/eui/pull/8444))\n -
`euiShadow`\n - `euiShadowXSmall`\n - `euiShadowSmall`\n -
`euiShadowMedium`\n - `euiShadowLarge`\n - `euiSlightShadowHover`\n -
`euiShadowFlat`\n \n ---\n \n###
`@elastic/eui-theme-borealis`\n[`v0.1.0`](https://github.com/elastic/eui/releases/v0.1.0)\n\n-
Added new component level
tokens:\n([#8444](https://github.com/elastic/eui/pull/8444))\n -
`buttonGroupBackgroundDisabledSelected`\n - `overlayMaskBackground`\n -
`overlayMaskBackgroundHighContrast`\n -
`skeletonBackgroundSkeletonMiddleHighContrast`\n \n\n## Additional
changes\n\nThe latest `@elastic/eui` package introduces high contrast
mode support.\nThis PR sets all usages of `EuiProvider` to
use\n`highContrastMode={false}` to introduce it in disabled state
(this\nreflects the current functionality in Kibana). This is because
the UI\nfor the high contrast mode functionality (and style adjustments)
need to\nfirst be implemented on Kibana side (by shared-ux).\n\n##
QA\n\nAdding high contrast mode in disabled state should result in no
visual\nchanges in Kibana. Please ensure your product view remain
unchanged.\n\n---------\n\nCo-authored-by: Elastic Machine
<elasticmachine@users.noreply.github.com>","sha":"2cd777d96909a73bab547cc3e3f509fc7ef916af"}}]}]
BACKPORT-->

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
cqliu1 pushed a commit to cqliu1/kibana that referenced this pull request Mar 31, 2025
`100.0.0` ⏩ `101.0.1`

[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)

## Package updates

### `@elastic/eui`
[`v101.0.1`](https://github.com/elastic/eui/releases/v101.0.1)

- Updated `EuiProvider` and `EuiThemeProvider` with a new
`highContrastMode` ([elastic#8444](elastic/eui#8444))
- This prop allows toggling a higher contrast visual style that
primarily affects borders and shadows
- On `EuiProvider`, if the `highContrastMode` prop is not passed, this
setting will inherit from the user's OS/system settings
- If the user is using a forced colors mode (e.g. Windows' high contrast
themes), this system setting will take precedence over any
`highContrastMode` or `colorMode` props passed
- Added `highContrastModeStyles` and `preventForcedColors` styling utils
([elastic#8444](elastic/eui#8444))
- Updated `EuiRangeTooltip` to be easier to see in dark mode
([elastic#8444](elastic/eui#8444))
- Updated some deprecated color token usages that have direct
substitutes ([elastic#8444](elastic/eui#8444))
  - `text` -> `textParagraph`
  - `title` -> `textHeading`
  - `subduedText` -> `textSubdued`
  - `disabledText` -> `textDisabled`
  - `accentText` -> `textAccent`
  - `dangerText` -> `textDanger`
  - `warningText` -> `textWarning`
- `useEuiShadow()` now accepts a second `options` argument
([elastic#8234](elastic/eui#8234))
- `useEuiShadowFlat()` now accepts an `options` object instead of only a
color ([elastic#8234](elastic/eui#8234))
- Updated `EuiPopover` and `EuiToolTip` to be easier to see in dark
mode. ([elastic#8174](elastic/eui#8174))

**Bug fixes**

- Fixed a visual bug where a transparent border would create visible
empty space (`LIGHT` mode only) for the components:
([elastic#8427](elastic/eui#8427))
  - `EuiPanel`
  - `EuiPopover`
  - `EuiToolTip`
  - `EuiToast`
  - `EuiTour`
  
  --- 
  
### `@elastic/eui-theme-common`
[`v0.1.0`](https://github.com/elastic/eui/releases/v0.1.0)

- Removed type `EuiShadowCustomColor`
([elastic#8444](elastic/eui#8444))
- Added types:  ([elastic#8444](elastic/eui#8444))
  - `EuiShadowOptions`
  - `EuiThemeHighContrastModeProp`
  - `EuiThemeHighContrastMode`
- Updated shadow utils to accepts a second `options` argument and return
borders in high contrast mode:
([elastic#8444](elastic/eui#8444))
  - `euiShadow`
  - `euiShadowXSmall`
  - `euiShadowSmall`
  - `euiShadowMedium`
  - `euiShadowLarge`
  - `euiSlightShadowHover`
  - `euiShadowFlat`
  
  ---
  
### `@elastic/eui-theme-borealis`
[`v0.1.0`](https://github.com/elastic/eui/releases/v0.1.0)

- Added new component level tokens:
([elastic#8444](elastic/eui#8444))
  - `buttonGroupBackgroundDisabledSelected`
  - `overlayMaskBackground`
  - `overlayMaskBackgroundHighContrast`
  - `skeletonBackgroundSkeletonMiddleHighContrast`
  

## Additional changes

The latest `@elastic/eui` package introduces high contrast mode support.
This PR sets all usages of `EuiProvider` to use
`highContrastMode={false}` to introduce it in disabled state (this
reflects the current functionality in Kibana). This is because the UI
for the high contrast mode functionality (and style adjustments) need to
first be implemented on Kibana side (by shared-ux).

## QA

Adding high contrast mode in disabled state should result in no visual
changes in Kibana. Please ensure your product view remain unchanged.

---------

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
tsullivan added a commit that referenced this pull request Apr 2, 2025
)

## Summary

Closes #176219
Depends on #215698

EUI provides documentation about high contrast mode. This includes info
about when it is enabled automatically, and some developer utilities.
See: https://eui.elastic.co/#/theming/high-contrast-mode


![high-contrast-demo](https://github.com/user-attachments/assets/98c150e3-1d12-4388-8eb5-e71924afaf17)

## Release note
Added an option to User Settings that allows the Kibana interface to
display in a high contrast mode.
mgadewoll added a commit that referenced this pull request Apr 3, 2025
>[!IMPORtANT]
This PR is the direct, manual backport to `8.x` for [this
PR](#215698) that's being merged
to `main`.
The reason it's handled manually is that `8.x` receives a custom EUI
release that still has the "Amsterdam" theme as default theme enabled.

---

`100.0.0` ⏩ `101.1.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)

## Package updates

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

- Updates `EuiTableRow` styles to check support for `:has(+)` selector
([#8498](elastic/eui#8498))

### `@elastic/eui`
[`v101.0.1`](https://github.com/elastic/eui/releases/v101.0.1)

- Updated `EuiProvider` and `EuiThemeProvider` with a new
`highContrastMode` ([#8444](elastic/eui#8444))
- This prop allows toggling a higher contrast visual style that
primarily affects borders and shadows
- On `EuiProvider`, if the `highContrastMode` prop is not passed, this
setting will inherit from the user's OS/system settings
- If the user is using a forced colors mode (e.g. Windows' high contrast
themes), this system setting will take precedence over any
`highContrastMode` or `colorMode` props passed
- Added `highContrastModeStyles` and `preventForcedColors` styling utils
([#8444](elastic/eui#8444))
- Updated `EuiRangeTooltip` to be easier to see in dark mode
([#8444](elastic/eui#8444))
- Updated some deprecated color token usages that have direct
substitutes ([#8444](elastic/eui#8444))
  - `text` -> `textParagraph`
  - `title` -> `textHeading`
  - `subduedText` -> `textSubdued`
  - `disabledText` -> `textDisabled`
  - `accentText` -> `textAccent`
  - `dangerText` -> `textDanger`
  - `warningText` -> `textWarning`
- `useEuiShadow()` now accepts a second `options` argument
([#8234](elastic/eui#8234))
- `useEuiShadowFlat()` now accepts an `options` object instead of only a
color ([#8234](elastic/eui#8234))
- Updated `EuiPopover` and `EuiToolTip` to be easier to see in dark
mode. ([#8174](elastic/eui#8174))

**Bug fixes**

- Fixed a visual bug where a transparent border would create visible
empty space (`LIGHT` mode only) for the components:
([#8427](elastic/eui#8427))
  - `EuiPanel`
  - `EuiPopover`
  - `EuiToolTip`
  - `EuiToast`
  - `EuiTour`
  
  --- 
  
### `@elastic/eui-theme-common`
[`v0.1.0`](https://github.com/elastic/eui/releases/v0.1.0)

- Removed type `EuiShadowCustomColor`
([#8444](elastic/eui#8444))
- Added types:  ([#8444](elastic/eui#8444))
  - `EuiShadowOptions`
  - `EuiThemeHighContrastModeProp`
  - `EuiThemeHighContrastMode`
- Updated shadow utils to accepts a second `options` argument and return
borders in high contrast mode:
([#8444](elastic/eui#8444))
  - `euiShadow`
  - `euiShadowXSmall`
  - `euiShadowSmall`
  - `euiShadowMedium`
  - `euiShadowLarge`
  - `euiSlightShadowHover`
  - `euiShadowFlat`
  
  ---
  
### `@elastic/eui-theme-borealis`
[`v0.1.0`](https://github.com/elastic/eui/releases/v0.1.0)

- Added new component level tokens:
([#8444](elastic/eui#8444))
  - `buttonGroupBackgroundDisabledSelected`
  - `overlayMaskBackground`
  - `overlayMaskBackgroundHighContrast`
  - `skeletonBackgroundSkeletonMiddleHighContrast`
  

## Additional changes

The latest `@elastic/eui` package introduces high contrast mode support.
This PR sets the root `EuiProvider` to use `highContrastMode={false}` to
introduce it in disabled state (this reflects the current functionality
in Kibana).
Cloud-UI can enable this whenever it's tested and supported from their
end.

## QA

Adding high contrast mode in disabled state should result in no visual
changes to the UI.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci:cloud-deploy Create or update a Cloud deployment ci:project-deploy-elasticsearch Create an Elasticsearch Serverless project ci:project-deploy-observability Create an Observability project ci:project-deploy-security Create a Security Serverless Project EUI release_note:skip Skip the PR/issue when compiling release notes Team:obs-ux-infra_services Observability Infrastructure & Services User Experience Team Team:obs-ux-management Observability Management User Experience Team v9.0.0 v9.1.0

Projects

None yet

Development

Successfully merging this pull request may close these issues.