chore(deps): update dependency @compiled/react to v2 - #799
Open
renovate[bot] wants to merge 1 commit into
Open
renovate[bot] wants to merge 1 commit into
renovate[bot] wants to merge 1 commit into
Conversation
|
Important Review skippedBot user detected. To trigger a single review, invoke the ⚙️ Run configuration
You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
This branch has not been deployed
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.
This PR contains the following updates:
^1.0.1→^2.0.0Release Notes
atlassian-labs/compiled (@compiled/react)
v2.0.0Compare Source
Major Changes
3a0d317: Atomic rules are now injected withsheet.insertRule()in every environment. Previously only production used the CSSOM; development and test builds appended a text node per rule, which forces the engine to reparse the whole sheet on every insertion.Two consequences of dev and test now behaving like production:
<style>elements no longer contain text.insertRuleis a CSSOM-only mutation, sostyleElement.textContentanddocument.head.innerHTMLcome back empty and the rules must be read offsheet.cssRules. Tests asserting on injected CSS via the DOM's text need updating;toHaveCompiledCssfrom@compiled/jesthandles both sources as of the accompanying patch. In devtools, dev-mode<style>tags now render as empty, the same as production — inspect the element's CSSOM to see the rules.Patch Changes
efddb7e: Fix production runtime style wipe whencssMapScoped(.cc-…) rules are injected after atomic rules.In production, atomic rules were injected via
sheet.insertRule()(CSSOM-only —textContentstays empty) while non-atomic
cssMapScopedrules were appended viaText.appendData()on theSAME catch-all
<style>element. When a large.cc-sheet was later injected (e.g. lazilymounting the editor), the browser reparsed the sheet from its now-populated text node and
DISCARDED every previously
insertRule-inserted rule — an observable global style wipe (unstyledUI on affected surfaces).
Non-atomic
.cc-rules now live in a dedicated'cc'bucket with its own<style>element thatinsertRulenever targets. The two insertion strategies can no longer share a DOM node, so thereparse-wipe is impossible by construction. Source-order cascade for
cssMapScopedvariants ispreserved (append order within the
ccbucket), and.cc-rules still cascade after everyatomic bucket (the
ccbucket is placed last instyleBucketOrdering).Regression tests in
runtime/__tests__/style.test.tsxassert:insertRuleremain reachable viasheet.cssRulesafter alarge
.cc-non-atomic sheet is later injected.Text.appendDatanever mutates a<style>element whose sheet already hasinsertRule-inserted rules.v1.0.2Compare Source
Patch Changes
959dcbe: Fix a compatibility regression in runtime style bucketing for compound pseudo-selectors.1.0.1located the pseudo vialastIndexOf(':')so collision-resistant (11-char) hashesbucketed correctly, but that also moved compound selectors like
:visited:hover/:hover:focusout of the catch-all bucket intoh/f/ etc. Bucketing now detects theatomic class width from the boundary character (index 10 for the legacy 9-char hash, index
12 for the 11-char collision-resistant hash) and reads the pseudo relative to it, keeping
the existing colon+4 →
pseudosMapmangling. Simple:hover/:visited/ … still map forboth hash lengths, while compounds stay in the catch-all bucket — matching
1.0.0forlegacy hashes.
Configuration
📅 Schedule: (UTC)
* 0-3 * * 1)🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, 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.