[Snyk] Upgrade styled-components from 5.0.1 to 5.1.0 #19
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.
Snyk has created this PR to upgrade styled-components from 5.0.1 to 5.1.0.
ℹ️ Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.Release notes
Package name: styled-components
New Functionality
Add
shouldForwardProp
API (almost the same as emotion's, just a slightly different usage pattern); #3006Sometimes when composing multiple higher-order components together, it's possible to get into scenarios when multiple layers consume props by the same name. In the past we've introduced various workarounds for popular props like
"as"
but this power-user API allows for more granular customization of what props are passed down to descendant component children when using thestyled()
HOC wrapper.When combined with other APIs like
.attrs()
this becomes a very powerful constellation of abilities.Here's how you use it:
The second argument
defaultValidatorFn
is what we use internally to validate props based on known HTML attributes. It's provided so you can filter exactly what props you don't wish to pass and then fall-back to the default filtering mechanism if desired.Other methods on the
styled
HOC like.attrs
can be chained afterwithConfig()
, and before opening your template literal:Thanks @stevesims and all that contributed!
Add "transient props" API; #3052
Think of transient props as a lightweight, but complementary API to
shouldForwardProp
. Because styled-components allows any kind of prop to be used for styling (a trait shared by most CSS-in-JS libraries, but not the third party library ecosystem in general), adding a filter for every possible prop you might use can get cumbersome.Transient props are a new pattern to pass props that are explicitly consumed only by styled components and are not meant to be passed down to deeper component layers. Here's how you use them:
Note the dollar sign (
$
) prefix on the prop; this marks it as transient and styled-components knows not to add it to the rendered DOM element or pass it further down the component hierarchy.Bugfixes
Fix slow SSR Rehydration for malformed CSS and increase fault-tolerance (see #3018)
Change isPlainObject (internal method) to support objects created in a different context (see #3068) thanks @keeganstreet!
Add support for the
<video disablePictureInPicture>
(see #3058) thanks @egdbear!Added useTheme hook to named exports for react native (#2982)
Performance enhancements
Added some helpful new dev-time warnings for antipatterns
@import
insidecreateGlobalStyle
and what to do instead (#2997)Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.
For more information:
🧐 View latest project report
🛠 Adjust upgrade PR settings
🔕 Ignore this dependency or unsubscribe from future upgrade PRs