-
Notifications
You must be signed in to change notification settings - Fork 8.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Upgrade EUI to v54.0.0 #129653
Upgrade EUI to v54.0.0 #129653
Conversation
@@ -212,6 +212,7 @@ const StatefulEventsViewerComponent: React.FC<Props> = ({ | |||
dataProviders, | |||
dataViewId, | |||
defaultCellActions, | |||
visibleCellActions: 3, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@MikePaquette (pinging you because you posted in elastic/eui#5675 (comment))
I'm not overly familiar with Security's usage of EuiDataGrid - can you confirm that this component (Events Viewer?) is the correct/only component that needs 3 visible cell actions instead of the default 2?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
From a slack thread:
imo would be safer to just pass a hard coded 3 here https://github.com/elastic/kibana/blob/main/x-pack/plugins/timelines/public/components/t_grid/body/index.tsx#L819-#L839 instead of as a prop from the different places it’s used
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@MikePaquette (pinging you because you posted in elastic/eui#5675 (comment))
I'm not overly familiar with Security's usage of EuiDataGrid - can you confirm that this component (Events Viewer?) is the correct/only component that needs 3 visible cell actions instead of the default 2?
@constancecchen yes, this is the only component that needs 3 visible cell actions instead of the default 2
- for closeCellPopover ref API
- for closeCellPopover ref API
- for closeCellPopover ref API
…ellActions` prop + update Security to show 3 visible cell actions
- which, due to mount() causes .first() to no longer work as expected - targeting .last() instead gets the actual div element which works
- EUI added 2 `.euiPopoverFooter`s for overflowing cell actions, and Security's CSS to hide the first 2 cell actions (replaced by their own custom cell actions) was unintentionally affecting other actions
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@elastic/platform-deployment-management changes lgtm
Pinging @elastic/apm-ui (Team:apm) |
@@ -720,6 +728,7 @@ export const BodyComponent = React.memo<StatefulBodyProps>( | |||
columnHeaders, | |||
data, | |||
defaultCellActions, | |||
visibleCellActions, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
instead of passing this down as a prop from all the places it's used, wouldn't it be safer to just hard code the 3 in this component?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah that would be fine! I wasn't sure what all plugins used this TGrid component and if future usages might want to customize visibleCellActions
, so was trying to play it safe. If you're confident all future usages will want a constant max of 3 visible cell actions I'm good with hard-coding it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
fc93474 @kqualters-elastic @andrew-goldstein. Here's the relevant line where 3
is hard-coded:
visibleCellActions: 3, |
<Insertion | ||
cache={ | ||
Object { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
😬 these Spaces snapshot test changes aren't great --
The tests themselves are ancient and I found that I could make a few small changes to avoid these gigantic snapshots.
If you're OK with it, I can push these changes to your branch. Let me know!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We spoke offline and I pushed the changes here: 3ddd8bd
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code review - primarily just adding new classes to Storybook components, plus some other minor restructuring of Color Manager Storybook. Presentation changes LGTM 👍
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks @constancecchen for upgrading the Security Solution to use EuiDataGrid
's new visibleCellActions
option, such that there's no change in the behavior of the app 🙏
- ✅ Desk tested locally
- ++ to @kqualters-elastic's suggestion that configurability of the
2
->3
override via props isn't required - While desk testing, I found what appears to be an unreleated issue with
EuiDataGrid
popovers owning focus in Safari: [EuiContextMenu] tab key doesn't cycle through context menu items in Safari eui#5778
LGTM
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Honestly I'm not sure 🙈 I'm not seeing anything in the diffs that would significantly account for that, so my best guess is maybe Emotion dependency upgrades? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I see that @andrew-goldstein and @kqualters-elastic have also reviewed with checked out code in Security solution. Onboarding-Lifecycle just owns a snapshot update used for testing, which LGTM! (tests would fail otherwise).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM 👌🏼
You're right, styles.js is no longer in the bundle twice! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
app services changes LGTM
💚 Build SucceededMetrics [docs]Module Count
Async chunks
Page load bundle
History
To update your PR or re-run it, just comment with: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🎉
…disable-server-side * 'main' of github.com:elastic/kibana: (35 commits) [Uptime] remove latency limit warnings when using monitor management (elastic#129597) [Security Solution] [ReponseOps] Executes Cases Cypress test when there is a change on cases plugin (elastic#129992) Paramaterized Discover tests (elastic#129684) [Security Solution][Investigations] - Minor bug fixes (elastic#130054) [DOCS} Adds technical preview to Lens annotations (elastic#130058) [Security solution] [Endpoint] Revisit blocklist wrong labels (elastic#128773) [Security Solutions] Adds API docs for value lists (elastic#129962) [CI] Move jest tests to spot instances, and fix spot retries in PRs (elastic#130045) chore(NA): upgrades rules_node_js to v5.4.0 (elastic#130051) [SecuritySolution] Remove the cell hovers actions for agent status (elastic#130042) Upgrade RxJS to 7 (elastic#129087) [SecuritySolution] Clean up CaseContext (elastic#130036) Revert "chore(NA): upgrades rules_node_js to v5.4.0 (elastic#130021)" Use RuleDataReader to query for threshold signal history (elastic#129763) Remove securityRulesCancelEnabled setting and set shorter default timeouts (elastic#129769) Upgrade EUI to v54.0.0 (elastic#129653) [Security Solution] More Ransomware exceptionable fields (elastic#130039) Add e2e for the apm integration policy form (elastic#129860) chore(NA): upgrades rules_node_js to v5.4.0 (elastic#130021) [ML] Fix Single Metric Viewer chart failing to load if no points during calendar event (elastic#130000) ... # Conflicts: # x-pack/plugins/screenshotting/server/screenshots/index.test.ts
…rint-media-attempt-2 * 'main' of github.com:elastic/kibana: (75 commits) [Lens] Hide disabled toolbar entries (elastic#129994) Fix explore tables don't display data when a global filter is applied (elastic#130024) [Console] Add option to disable keyboard shortcuts (elastic#128887) [Discover] Update refreshOnClick flaky test (elastic#130001) [Uptime] remove latency limit warnings when using monitor management (elastic#129597) [Security Solution] [ReponseOps] Executes Cases Cypress test when there is a change on cases plugin (elastic#129992) Paramaterized Discover tests (elastic#129684) [Security Solution][Investigations] - Minor bug fixes (elastic#130054) [DOCS} Adds technical preview to Lens annotations (elastic#130058) [Security solution] [Endpoint] Revisit blocklist wrong labels (elastic#128773) [Security Solutions] Adds API docs for value lists (elastic#129962) [CI] Move jest tests to spot instances, and fix spot retries in PRs (elastic#130045) chore(NA): upgrades rules_node_js to v5.4.0 (elastic#130051) [SecuritySolution] Remove the cell hovers actions for agent status (elastic#130042) Upgrade RxJS to 7 (elastic#129087) [SecuritySolution] Clean up CaseContext (elastic#130036) Revert "chore(NA): upgrades rules_node_js to v5.4.0 (elastic#130021)" Use RuleDataReader to query for threshold signal history (elastic#129763) Remove securityRulesCancelEnabled setting and set shorter default timeouts (elastic#129769) Upgrade EUI to v54.0.0 (elastic#129653) ... # Conflicts: # x-pack/plugins/screenshotting/server/formats/pdf/index.ts
Summary
eui@53.0.1
⏩eui@54.0.0
54.0.0
EuiDataGrid
now allows limiting the number of visible cell actions with a newcolumns.visibleCellActions
prop (defaults to 2). All additional actions will be shown in the cell expansion popover. (#5675)gridStyle.rowClasses
API toEuiDataGrid
, which allows adding custom classes/styling to specific row indices, primarily for the purpose of highlighting rows (#5732)alert
icon indicator andaria-invalid
when the following form controls areisInvalid
:EuiFieldNumber
,EuiFieldPassword
,EuiFieldText
,EuiSelect
,EuiSuperSelect
,EuiFieldSearch
,EuiColorPicker
(#5738)isInvalid
prop toEuiFormControlLayout
to render thealert
icon (#5738)isDropdown
prop toEuiFormControlLayout
to create and control anarrowDown
icon (#5738)color
as toEuiFormControlLayout
'sicon
object (#5738)Bug fixes
EuiSuperSelect
border-radius withappend
orprepend
(#5738)EuiSuperSelect
not respectingreadOnly
(#5738)EuiDataGrid
cell focus sometimes not being restored for keyboard users when cell expansion popovers were closed (#5761)Breaking changes
closePopover()
callback passed toEuiDataGrid
'scellActions
render functions. UsecloseCellPopover()
passed byEuiDataGrid
'sref
prop instead. (#5734)CSS-in-JS conversions
EuiAvatar
to CSS-in-JS styling (#5670)