chore(deps): update dependency lightningcss to v1.30.1 #908
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.
This PR contains the following updates:
1.20.0->1.30.1Release Notes
parcel-bundler/lightningcss (lightningcss)
v1.30.1Compare Source
Fixed crash on process exit when lightningcss was loaded inside a Node.js worker thread on Linux
v1.30.0Compare Source
Features
@supportsrules when already nested in a@supportsrule – #878,d398c1bFixes
33ea2c1e5c413917bdc80v1.29.3Compare Source
::details-contentand::target-textselectors – @philipp-spiess in https://github.com/parcel-bundler/lightningcss/pull/930:placeholder-shownselector name across browsers – @Marukome0743 in https://github.com/parcel-bundler/lightningcss/pull/929/* cssmodules-pure-no-check */comments – @jantimon in https://github.com/parcel-bundler/lightningcss/pull/898c03a7e7v1.29.2Compare Source
Browsers::load_browserslistby @CPunisher in https://github.com/parcel-bundler/lightningcss/pull/8952284653v1.29.1Compare Source
v1.29.0Compare Source
Added
@view-transitionrule,view-transition-classandview-transition-groupproperties, and class selector features of the view transition pseudo elements. This enables CSS module scoping and better minification when using these features. – #885@font-feature-valuesrule – #840light-dark()function – parcel-bundler/lightningcss@3043896Fixed
list-styleshorthand property – parcel-bundler/lightningcss@97891d8:nth-child(an + b of X)selectors in CSS modules – parcel-bundler/lightningcss@ed9e659\0characters in filenames – parcel-bundler/lightningcss@43707c3composeVisitors– #875v1.28.2Compare Source
Fixes
transition-property– #850 (thanks @RobinMalfait and @LeoniePhiline!)78f2fc44159bc5allproperty is set –d4eec35v1.28.1Compare Source
v1.28.0Compare Source
Added
@containernames in CSS Modules by @kdy1 in https://github.com/parcel-bundler/lightningcss/pull/835input:placeholderby @kdy1 in https://github.com/parcel-bundler/lightningcss/pull/813@valueat-rule of CSS Modules by @kdy1 in https://github.com/parcel-bundler/lightningcss/pull/842Fixed
22a8b6fcalcexpression –e3c8e12calcexpression –378955eclampfunction reduction when the comparison between preferred and max value is unknown –ddc9ce8f6b033fv1.27.0Compare Source
Added
[content-hash]css module pattern by @rubberpants in https://github.com/parcel-bundler/lightningcss/pull/802. This includes a hash of the file contents rather than the file path (as[hash]works), which can be used to support multiple versions of the same library simultaneously without conflicts.Fixed
box-shadowcombination ofoklchandcurrentColorby @hi-ogawa in https://github.com/parcel-bundler/lightningcss/pull/801v1.26.0Compare Source
Added
@keyframesby @grimsteel in https://github.com/parcel-bundler/lightningcss/pull/787Fixed
:is(input:checked)by @kdy1 in https://github.com/parcel-bundler/lightningcss/pull/783v1.25.1Compare Source
Fixes a property ordering bug when using the
allshorthand.v1.25.0Compare Source
This release adds more granular options for CSS modules, implements some new CSS properties, and fixes bugs.
Added
grid,animation, andcustom_idents. This may be useful when migrating from other tools. See docs. Thanks @timneutkens!83839a9allshorthand property to reset other properties exceptdirectionandunicode-bidi.d7aeff3animation-timelineproperty and add support for it in theanimationshorthandf4408c7Fixed
translate: noneandscale: nonewhich are distinct fromtranslate: 0andscale: 1. Thanks @RobinMalfait!a4cc024currentColorkeyword. Thanks @magic-akari!06ba62fcolor()function to follow spec change445def9animationshorthandfb4b334ec9da43v1.24.1Compare Source
transformoptimizations usingmatrix(), which could break transitions and animations. – https://github.com/parcel-bundler/lightningcss/pull/694@supportsdeclarations with the same property (minus vendor prefix) and value –6bd2761v1.24.0Compare Source
This release adds support the the
light-dark()color function, parses CSS system colors, deduplicates custom properties during minification, merges duplicates@keyframesrules, and fixes some bugs.light-dark()
The
light-dark()function allows you to specify a light mode and dark mode color in a single declaration, without needing to write a separate media query rule. In addition, it uses thecolor-schemeproperty to control which theme to use, which allows you to set it programmatically. Thecolor-schemeproperty also inherits so themes can be nested and the nearest ancestor color scheme applies.Lightning CSS converts the
light-dark()function to use CSS variable fallback when your browser targets don't support it natively. For this to work, you must set thecolor-schemeproperty on an ancestor element. The following example shows how you can support both operating system and programmatic overrides for the color scheme.compiles to:
Check it out in the playground.
CSS system colors
CSS system colors are now supported during parsing, meaning they can be safely deduplicated when merging rules.
compiles to:
Custom property deduplication
CSS custom properties are now deduplicated when merging rules. The last property value always wins.
minifies to:
@keyframesdeduplication@keyframesrules are also now deduplicated during minification. The last rule of the same name wins.compiles to:
Other bug fixes
@propertyrulesv1.23.0Compare Source
This release improves minification for
@layerand@propertyrules, enables relative colors to be compiled in more situations, adds new functionality for custom visitor plugins, and fixes some bugs.Downlevel relative colors with unknown alpha
Lightning CSS can now down level relative colors where the alpha value is unknown (e.g. a variable). For example:
becomes:
Optimized
@layerrules@layerrules with the same name are now merged together and ordered following their original declared order. For example:becomes:
Deduped
@propertyrules@propertyrules are now deduplicated when they define the same property name. The last rule wins.compiles to:
StyleSheet visitor function
The JS visitor API now supports
StyleSheetandStyleSheetExitvisitors, allowing you to visit the entire stylesheet at once. This enables things like rule sorting or appending/prepending rules.Keep in mind that visiting the entire stylesheet can be expensive, due to needing to serialize and deserialize the entire AST to send between Rust and JavaScript. Keep visitors as granular as you can to avoid this.
Other bug fixes
grid-auto-flowin custom visitors-webkit-fill-availableand-moz-availablesize valuesinitial-valueof@propertyrulesv1.22.1Compare Source
e255210b4bbe47v1.22.0Compare Source
Added
&selector. Since it is shipping in all major browsers, nesting support is now enabled by default (no need to add to thedraftsconfig). 🥳Fixed
:isand:-webkit-any:notselector list down leveling. Instead of:not(.a, .b)compiling to:not(.a):not(.b), it now compiles to:not(:is(.a, .b))(down leveled to:-webkit-anyif needed). This preserves the specificity rather than raising it for each:not.v1.21.8Compare Source
v1.21.7Compare Source
v1.21.6Compare Source
Fixes
v1.21.5Compare Source
Fixed node segmentation fault when throwing an error in a custom visitor using the
bundleAsyncAPI - parcel-bundler/lightningcss@50dad7fv1.21.4Compare Source
v1.21.3Compare Source
v1.21.2Compare Source
Fixes
91ec8d3analyzeDependenciesoption from bundler APIs in TypeScript definitions –ae97aa1a8d909av1.21.1Compare Source
Fixes
e66d99c::markerpseudo element –cff779d::partpseudo element –fbf0d24:is()when we can safely unwrap it –8d94ea1d6e1295acde78b5cec8becurrentColorincolor-mix()or relative color syntax –20c9612lightningcss-derivein Rust crate –1203368v1.21.0Compare Source
This release includes new features to improve compatibility of output CSS with your browser targets, and safely remove old fallbacks that aren't needed anymore. It also gives you more control over exactly how CSS is compiled, and fixes some bugs.
Preserve manual fallbacks
Lightning CSS will now preserve manually provided fallback values when some of your browser targets do not support the last one. For example, in the following rule, if some targets didn't support the
maxfunction, both declarations would be preserved. Otherwise, if we are sure that all targets support it, Lightning CSS will drop the fallback declaration.This is supported for many types of values such as lengths, colors, gradients, images, font styles, etc. It uses compatibility data from caniuse and MDN to determine if each value is supported.
Include and exclude options
You can now control exactly how Lightning CSS compiles using the "include" and "exclude" options, in addition to the existing "targets". This allows you to explicitly turn on or off certain features, which overrides the defaults based on the provided browser targets. For example, you might want to only compile colors, and handle auto prefixing or other features with another tool. Or you may want to handle everything except vendor prefixing with Lightning CSS. These options make that possible.
An enum of available feature flags is provided, and you can use the bitwise OR operator to combine flags together, e.g.
Features.Nesting | Features.Colors. There are also some flags which turn on multiple other flags at once, e.g.Selectors,Colors, andMediaQueries. The playground has been updated to show these flags and includes checkboxes to turn them on or off.The Rust API has been updated to accept a new
Targetsstruct instead ofBrowsers. This includes browser targets as a sub-field, along with the include and exclude options. See docs.rs for more details.Split selector lists when unsupported
Lightning CSS will now automatically split selector lists when your browser targets don't support some selectors. This avoids a case where browsers ignore the whole rule if only some selectors are unsupported. It takes advantage of :is() forgiving selector lists where possible, otherwise generates multiple rules. For example:
will be compiled to the following if
:focus-visibleis not supported by one of your targets:If
:is()is unsupported, or if the selectors have different specificities, Lightning CSS will output the following instead:Non-standard selector compatibility
Some frameworks like Angular and View support some non-standard selectors, such as the
::v-deeppseudo element,>>>and/deep/combinators, and:deep(<selector-list>)syntax. These are now able to be parsed and preserved as is by Lightning CSS. Unknown pseudo elements now allow arbitrary selectors after them unlike normal standard pseudo elements. Unknown functional pseudo selectors will preserve their arguments unmodified. Non-standard combinators can be enabled by adding the following option when compiling:More
Configuration
📅 Schedule: Branch creation - "before 5pm on the first day of the month" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.