-
Notifications
You must be signed in to change notification settings - Fork 4.6k
DataViews: Type the BulkActions component #61666
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
Conversation
|
The following accounts have interacted with this PR and/or linked issues. I will continue to update these lists as activity occurs. You can also manually ask me to refresh this list by adding the If you're merging code through a pull request on GitHub, copy and paste the following into the bottom of the merge commit message. To understand the WordPress project's expectations around crediting contributors, please review the Contributor Attribution page in the Core Handbook. |
| return action.supportsBulk && action.isEligible( item ); | ||
| return ( | ||
| action.supportsBulk && | ||
| ( ! action.isEligible || action.isEligible( item ) ) |
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.
isEligible is not mandatory in actions (you can check that in other components). So typing this component actually highlights that this case was not being considered. So this should be a fix.
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.
Good catch 👍
| hideModalHeader: true, | ||
| supportsBulk: true, | ||
| RenderModal: ( { items, closeModal, onPerform } ) => { | ||
| RenderModal: ( { items, closeModal, onActionPerformed } ) => { |
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.
If I'm not wrong, this was a bug too. I see that all actions everywhere in dataviews use onActionPerformed prop and not onPerform. This is also something that I found thanks to the types.
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.
Yes, it seems it was a bug.
|
Size Change: -2 B (0%) Total Size: 1.75 MB
ℹ️ View Unchanged
|
|
Flaky tests detected in 65c14fd. 🔍 Workflow run URL: https://github.com/WordPress/gutenberg/actions/runs/9085038406
|
jorgefilipecosta
left a comment
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.
It looks good and the addition of types caught two issues 👍
| return action.supportsBulk && action.isEligible( item ); | ||
| return ( | ||
| action.supportsBulk && | ||
| ( ! action.isEligible || action.isEligible( item ) ) |
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.
Good catch 👍
| hideModalHeader: true, | ||
| supportsBulk: true, | ||
| RenderModal: ( { items, closeModal, onPerform } ) => { | ||
| RenderModal: ( { items, closeModal, onActionPerformed } ) => { |
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.
Yes, it seems it was a bug.
jorgefilipecosta
left a comment
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.
It looks good and the addition of types caught two issues 👍
Related #55083
Follow-up to #61185
What?
The DataViews package is a types heavy package. There's a lot of structures that need to be documented properly. So this continues the effort to add explicit types to the package. This PR focuses on typing the BulkActions component.
Testing instructions
There's no functional change, it's essentially a code quality + documentation change.