[EuiPageHeaderContent] Improve responsiveness#8044
Merged
cee-chen merged 10 commits intoelastic:mainfrom Sep 26, 2024
Merged
Conversation
- Improve/update prop docs - Improve storybook controls to match actual defaults/options - add example `children` - (bonus) memoize styles
- just to make sure I don't regress anything in this PR
- but keep `children` in left side
+ DOM cleanup - remove unnecessary `EuiFlexItem` around `rightSideItems` since we're writing custom flex CSS in any case
- now possible since we've simplified our DOM - no idea why `alignItems === 'top'` needs to be its own condition, it's not doing anything special. remove it since this appears to be defunct code
- slight changes are due to font/typography IIRC, this should mostly show that nothing meaningfully broke for major use cases
918c340 to
3a96c32
Compare
mgadewoll
approved these changes
Sep 26, 2024
Contributor
mgadewoll
left a comment
There was a problem hiding this comment.
🚢 🐈⬛ Works as expected and the code looks good to me. 👍
Contributor
There was a problem hiding this comment.
I really like your approach to adding before/after commits for VRT 👏 🧠
Contributor
Author
There was a problem hiding this comment.
It's really helpful for me to confirm I'm actually fixing stuff! And also makes before/after screenshots in the PR description a breeze! 😎
packages/eui/src/components/page/page_header/page_header_content.stories.tsx
Outdated
Show resolved
Hide resolved
Collaborator
💚 Build Succeeded
History
|
cee-chen
added a commit
to elastic/kibana
that referenced
this pull request
Oct 4, 2024
`v95.12.0`⏩`v96.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)_ --- ## [`v96.0.0`](https://github.com/elastic/eui/releases/v96.0.0) - Improved `EuiPageHeader`/`EuiPageTemplate.Header`'s responsive UX: ([#8044](elastic/eui#8044)) - `rightSideItems` are no longer pushed to the side by wide `tabs` content - `rightSideItems` now wrap more responsively at smaller container widths - Updated `EuiDraggable` with a new `usePortal` prop. ([#8048](elastic/eui#8048)) - This prop portals the dragged element to the body, allowing it to escape stacking contexts which prevents buggy drag positioning in e.g. popovers, modals, and flyouts. **Bug fixes** - Fixed `EuiProvider`'s system color mode detection causing errors during server-side rendering ([#8040](elastic/eui#8040)) - Fixed an `EuiDataGrid` rendering bug that was causing bouncing scrollbar issues ([#8041](elastic/eui#8041)) - Fixed `EuiSearchBox` skips input when running with React 18 in Legacy Mode ([#8047](elastic/eui#8047)) **Deprecations** - Deprecated `EuiPopover`'s `hasDragDrop` prop. Use `EuiDraggable`'s new `usePortal` prop instead. ([#8048](elastic/eui#8048)) **Breaking changes** - Removed the following exported `.css` files: ([#8045](elastic/eui#8045)) - `@elastic/eui/dist/eui_theme_light.css` - `@elastic/eui/dist/eui_theme_light.min.css` - `@elastic/eui/dist/eui_theme_dark.css` - `@elastic/eui/dist/eui_theme_dark.min.css` - All EUI components are now on CSS-in-JS. A CSS file/import in consuming applications is no longer needed, and is safe to remove. ([#8045](elastic/eui#8045)) - Removed all `src/theme/legacy` Sass exports ([#8054](elastic/eui#8054)) **CSS-in-JS conversions** - Removed the following component-specific Sass variables: ([#8031](elastic/eui#8031)) - `$euiButtonColorDisabled` - `$euiButtonColorDisabledText` - `$euiButtonColorGhostDisabled` - `$euiButtonFontWeight` - `$euiFormControlIconSizes` - `$euiFormControlLayoutGroupInputHeight` - `$euiFormControlLayoutGroupInputCompressedHeight` - `$euiFormControlLayoutGroupInputCompressedBorderRadius` - `$euiPageSidebarMinWidth` - `$euiPageDefaultMaxWidth` - `$euiPanelPaddingModifiers` - `$euiPanelBorderRadiusModifiers` - `$euiPanelBackgroundColorModifiers` - `$euiRangeTrackColor` - `$euiRangeHighlightColor` - `$euiRangeThumbHeight` - `$euiRangeThumbWidth` - `$euiRangeThumbBorderColor` - `$euiRangeThumbBackgroundColor` - `$euiRangeTrackWidth` - `$euiRangeTrackHeight` - `$euiRangeTrackCompressedHeight` - `$euiRangeTrackBorderWidth` - `$euiRangeTrackBorderColor` - `$euiRangeTrackRadius` - `$euiRangeDisabledOpacity` - `$euiRangeHighlightHeight` - `$euiRangeHighlightCompressedHeight` - `$euiRangeHeight` - `$euiRangeCompressedHeight` - `$euiTooltipAnimations` - `$euiTooltipBackgroundColor` - `$euiTooltipBorderColor` - Removed the following Sass mixins due to low external usage: ([#8031](elastic/eui#8031)) - `euiHoverState` - `euiFocusState` - `euiDisabledState` - `euiInteractiveStates` - `euiFormControlStyle` - `euiFormControlStyleCompressed` - `euiFormControlFocusStyle` - `euiFormControlInvalidStyle` - `euiFormControlDisabledTextStyle` - `euiFormControlDisabledStyle` - `euiFormControlReadOnlyStyle` - `euiFormControlText` - `euiFormControlSize` - `euiFormControlGradient` - `euiFormControlLayoutPadding` - `euiFormControlWithIcon` - `euiFormControlIsLoading` - `euiFormControlSideBorderRadius` - `euiPlaceholderPerBrowser` - `euiHiddenSelectableInput` - `euiLink` - `euiLoadingSpinnerBorderColors` - `euiRangeTrackSize` - `euiRangeTrackPerBrowser` - `euiRangeThumbBorder` - `euiRangeThumbBoxShadow` - `euiRangeThumbFocusBoxShadow` - `euiRangeThumbStyle` - `euiRangeThumbPerBrowser` - `euiRangeThumbFocus` - `euiToolTipAnimation` ## [`v96.1.0`](https://github.com/elastic/eui/releases/v96.1.0) **CSS-in-JS conversions** - Removed the following component-specific Sass mixins: ([#8055](elastic/eui#8055)) - `euiButton` - `euiButtonBase` - `euiButtonFocus` - `euiButtonContent` - `euiButtonContentDisabled` - `euiButtonDefaultStyle` - `euiButtonFillStyle` - `euiPanel` - `euiFormControlDefaultShadow` - `euiToolTipTitle`
cee-chen
added a commit
to cee-chen/kibana
that referenced
this pull request
Oct 4, 2024
`v95.12.0`⏩`v96.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)_ --- ## [`v96.0.0`](https://github.com/elastic/eui/releases/v96.0.0) - Improved `EuiPageHeader`/`EuiPageTemplate.Header`'s responsive UX: ([elastic#8044](elastic/eui#8044)) - `rightSideItems` are no longer pushed to the side by wide `tabs` content - `rightSideItems` now wrap more responsively at smaller container widths - Updated `EuiDraggable` with a new `usePortal` prop. ([elastic#8048](elastic/eui#8048)) - This prop portals the dragged element to the body, allowing it to escape stacking contexts which prevents buggy drag positioning in e.g. popovers, modals, and flyouts. **Bug fixes** - Fixed `EuiProvider`'s system color mode detection causing errors during server-side rendering ([elastic#8040](elastic/eui#8040)) - Fixed an `EuiDataGrid` rendering bug that was causing bouncing scrollbar issues ([elastic#8041](elastic/eui#8041)) - Fixed `EuiSearchBox` skips input when running with React 18 in Legacy Mode ([elastic#8047](elastic/eui#8047)) **Deprecations** - Deprecated `EuiPopover`'s `hasDragDrop` prop. Use `EuiDraggable`'s new `usePortal` prop instead. ([elastic#8048](elastic/eui#8048)) **Breaking changes** - Removed the following exported `.css` files: ([elastic#8045](elastic/eui#8045)) - `@elastic/eui/dist/eui_theme_light.css` - `@elastic/eui/dist/eui_theme_light.min.css` - `@elastic/eui/dist/eui_theme_dark.css` - `@elastic/eui/dist/eui_theme_dark.min.css` - All EUI components are now on CSS-in-JS. A CSS file/import in consuming applications is no longer needed, and is safe to remove. ([elastic#8045](elastic/eui#8045)) - Removed all `src/theme/legacy` Sass exports ([elastic#8054](elastic/eui#8054)) **CSS-in-JS conversions** - Removed the following component-specific Sass variables: ([elastic#8031](elastic/eui#8031)) - `$euiButtonColorDisabled` - `$euiButtonColorDisabledText` - `$euiButtonColorGhostDisabled` - `$euiButtonFontWeight` - `$euiFormControlIconSizes` - `$euiFormControlLayoutGroupInputHeight` - `$euiFormControlLayoutGroupInputCompressedHeight` - `$euiFormControlLayoutGroupInputCompressedBorderRadius` - `$euiPageSidebarMinWidth` - `$euiPageDefaultMaxWidth` - `$euiPanelPaddingModifiers` - `$euiPanelBorderRadiusModifiers` - `$euiPanelBackgroundColorModifiers` - `$euiRangeTrackColor` - `$euiRangeHighlightColor` - `$euiRangeThumbHeight` - `$euiRangeThumbWidth` - `$euiRangeThumbBorderColor` - `$euiRangeThumbBackgroundColor` - `$euiRangeTrackWidth` - `$euiRangeTrackHeight` - `$euiRangeTrackCompressedHeight` - `$euiRangeTrackBorderWidth` - `$euiRangeTrackBorderColor` - `$euiRangeTrackRadius` - `$euiRangeDisabledOpacity` - `$euiRangeHighlightHeight` - `$euiRangeHighlightCompressedHeight` - `$euiRangeHeight` - `$euiRangeCompressedHeight` - `$euiTooltipAnimations` - `$euiTooltipBackgroundColor` - `$euiTooltipBorderColor` - Removed the following Sass mixins due to low external usage: ([elastic#8031](elastic/eui#8031)) - `euiHoverState` - `euiFocusState` - `euiDisabledState` - `euiInteractiveStates` - `euiFormControlStyle` - `euiFormControlStyleCompressed` - `euiFormControlFocusStyle` - `euiFormControlInvalidStyle` - `euiFormControlDisabledTextStyle` - `euiFormControlDisabledStyle` - `euiFormControlReadOnlyStyle` - `euiFormControlText` - `euiFormControlSize` - `euiFormControlGradient` - `euiFormControlLayoutPadding` - `euiFormControlWithIcon` - `euiFormControlIsLoading` - `euiFormControlSideBorderRadius` - `euiPlaceholderPerBrowser` - `euiHiddenSelectableInput` - `euiLink` - `euiLoadingSpinnerBorderColors` - `euiRangeTrackSize` - `euiRangeTrackPerBrowser` - `euiRangeThumbBorder` - `euiRangeThumbBoxShadow` - `euiRangeThumbFocusBoxShadow` - `euiRangeThumbStyle` - `euiRangeThumbPerBrowser` - `euiRangeThumbFocus` - `euiToolTipAnimation` ## [`v96.1.0`](https://github.com/elastic/eui/releases/v96.1.0) **CSS-in-JS conversions** - Removed the following component-specific Sass mixins: ([elastic#8055](elastic/eui#8055)) - `euiButton` - `euiButtonBase` - `euiButtonFocus` - `euiButtonContent` - `euiButtonContentDisabled` - `euiButtonDefaultStyle` - `euiButtonFillStyle` - `euiPanel` - `euiFormControlDefaultShadow` - `euiToolTipTitle` (cherry picked from commit 19e37bf) # Conflicts: # packages/kbn-securitysolution-exception-list-components/src/list_header/__snapshots__/list_header.test.tsx.snap
tiansivive
pushed a commit
to tiansivive/kibana
that referenced
this pull request
Oct 7, 2024
`v95.12.0`⏩`v96.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)_ --- ## [`v96.0.0`](https://github.com/elastic/eui/releases/v96.0.0) - Improved `EuiPageHeader`/`EuiPageTemplate.Header`'s responsive UX: ([elastic#8044](elastic/eui#8044)) - `rightSideItems` are no longer pushed to the side by wide `tabs` content - `rightSideItems` now wrap more responsively at smaller container widths - Updated `EuiDraggable` with a new `usePortal` prop. ([elastic#8048](elastic/eui#8048)) - This prop portals the dragged element to the body, allowing it to escape stacking contexts which prevents buggy drag positioning in e.g. popovers, modals, and flyouts. **Bug fixes** - Fixed `EuiProvider`'s system color mode detection causing errors during server-side rendering ([elastic#8040](elastic/eui#8040)) - Fixed an `EuiDataGrid` rendering bug that was causing bouncing scrollbar issues ([elastic#8041](elastic/eui#8041)) - Fixed `EuiSearchBox` skips input when running with React 18 in Legacy Mode ([elastic#8047](elastic/eui#8047)) **Deprecations** - Deprecated `EuiPopover`'s `hasDragDrop` prop. Use `EuiDraggable`'s new `usePortal` prop instead. ([elastic#8048](elastic/eui#8048)) **Breaking changes** - Removed the following exported `.css` files: ([elastic#8045](elastic/eui#8045)) - `@elastic/eui/dist/eui_theme_light.css` - `@elastic/eui/dist/eui_theme_light.min.css` - `@elastic/eui/dist/eui_theme_dark.css` - `@elastic/eui/dist/eui_theme_dark.min.css` - All EUI components are now on CSS-in-JS. A CSS file/import in consuming applications is no longer needed, and is safe to remove. ([elastic#8045](elastic/eui#8045)) - Removed all `src/theme/legacy` Sass exports ([elastic#8054](elastic/eui#8054)) **CSS-in-JS conversions** - Removed the following component-specific Sass variables: ([elastic#8031](elastic/eui#8031)) - `$euiButtonColorDisabled` - `$euiButtonColorDisabledText` - `$euiButtonColorGhostDisabled` - `$euiButtonFontWeight` - `$euiFormControlIconSizes` - `$euiFormControlLayoutGroupInputHeight` - `$euiFormControlLayoutGroupInputCompressedHeight` - `$euiFormControlLayoutGroupInputCompressedBorderRadius` - `$euiPageSidebarMinWidth` - `$euiPageDefaultMaxWidth` - `$euiPanelPaddingModifiers` - `$euiPanelBorderRadiusModifiers` - `$euiPanelBackgroundColorModifiers` - `$euiRangeTrackColor` - `$euiRangeHighlightColor` - `$euiRangeThumbHeight` - `$euiRangeThumbWidth` - `$euiRangeThumbBorderColor` - `$euiRangeThumbBackgroundColor` - `$euiRangeTrackWidth` - `$euiRangeTrackHeight` - `$euiRangeTrackCompressedHeight` - `$euiRangeTrackBorderWidth` - `$euiRangeTrackBorderColor` - `$euiRangeTrackRadius` - `$euiRangeDisabledOpacity` - `$euiRangeHighlightHeight` - `$euiRangeHighlightCompressedHeight` - `$euiRangeHeight` - `$euiRangeCompressedHeight` - `$euiTooltipAnimations` - `$euiTooltipBackgroundColor` - `$euiTooltipBorderColor` - Removed the following Sass mixins due to low external usage: ([elastic#8031](elastic/eui#8031)) - `euiHoverState` - `euiFocusState` - `euiDisabledState` - `euiInteractiveStates` - `euiFormControlStyle` - `euiFormControlStyleCompressed` - `euiFormControlFocusStyle` - `euiFormControlInvalidStyle` - `euiFormControlDisabledTextStyle` - `euiFormControlDisabledStyle` - `euiFormControlReadOnlyStyle` - `euiFormControlText` - `euiFormControlSize` - `euiFormControlGradient` - `euiFormControlLayoutPadding` - `euiFormControlWithIcon` - `euiFormControlIsLoading` - `euiFormControlSideBorderRadius` - `euiPlaceholderPerBrowser` - `euiHiddenSelectableInput` - `euiLink` - `euiLoadingSpinnerBorderColors` - `euiRangeTrackSize` - `euiRangeTrackPerBrowser` - `euiRangeThumbBorder` - `euiRangeThumbBoxShadow` - `euiRangeThumbFocusBoxShadow` - `euiRangeThumbStyle` - `euiRangeThumbPerBrowser` - `euiRangeThumbFocus` - `euiToolTipAnimation` ## [`v96.1.0`](https://github.com/elastic/eui/releases/v96.1.0) **CSS-in-JS conversions** - Removed the following component-specific Sass mixins: ([elastic#8055](elastic/eui#8055)) - `euiButton` - `euiButtonBase` - `euiButtonFocus` - `euiButtonContent` - `euiButtonContentDisabled` - `euiButtonDefaultStyle` - `euiButtonFillStyle` - `euiPanel` - `euiFormControlDefaultShadow` - `euiToolTipTitle`
4 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
closes #8034
closes #8039
Fixes involve mostly just re-ordering DOM and playing around flex CSS and container queries.
As always, I recommend following along by commit as some extra cleanup and Storybook/VRT updates happened here.
QA
General checklist
- [ ] Checked in both light and dark modes@defaultif default values are missing)- [ ] Added documentation- [ ] Checked Code Sandbox works for any docs examples- [ ] If applicable, added the breaking change issue label (and filled out the breaking change checklist)