Repository navigation
NXT-20955: [POC][Limestone] React 19.3 Fragments - #3469
dan-ichim-lgp wants to merge 4 commits into
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## feature/functionalComponents #3469 +/- ##
===============================================================
Coverage ? 87.13%
===============================================================
Files ? 159
Lines ? 7898
Branches ? 2090
===============================================================
Hits ? 6882
Misses ? 812
Partials ? 204 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
|
About Spottable, TransitionGroup and VoiceControlDecorator: they depend on React’s private _fragmentFiber. If a future React changes it, focus and animations break silently in every app. Add the fallback like the one I described in |
|
Spottable, TransitionGroup, and VoiceControlDecorator render the hidden marker again. When |
66a46c9 to
f9760a3
Compare
…dden marker. Spotlight, voice, and view transitions warn in dev and use the old lookup when the fragment fiber is missing. Placeholder bounds use the layout border box after the first client-rect estimate. CI clones the CLI feature branch so tests run on React 19.3.
cb5609a to
da16dd0
Compare
…or transitions and voice.
Checklist
Issue Resolved / Feature Added
NXT-20955: Read the wrapped host from a React 19.3 Fragment ref, and fall back to the hidden WithRef marker when
_fragmentFiberis missing.Resolution
getFragmentHostNodewalks_fragmentFiberand skipsdata-withref-target. If the fragment exists but that field does not, dev mode warns and the helper uses the old marker lookup.Spottable,VoiceControlDecorator, andTransitionGrouprender that hidden marker and stampdata-withref-idon the host, so the fallback has a node on the first commit. Spotlight still loads the host once. Voice still listens for a bubblingwebOSVoiceevent on the first intent node. View transitions still animate the container.PlaceholderControllerDecoratordoes not render a marker. The first bounds estimate is the rounded client rect, thenfragment.observeUsingreplaces it withborderBoxSize.react,react-dom, andreact-isare^19.3.1on spotlight, ui, and webos.WithRefis unchanged. CI clones the CLI fromfeature/NXT-20955so the suite runs on React 19.3. That pin has to return todevelopbefore merge.Additional Considerations
Links
NXT-20955
Comments
Enact-DCO-1.0-Signed-off-by: Dan Ichim dan.ichim@lgepartner.com