Add unstable_flushSync option to useNavigate/useSumbit/fetcher.load/fetcher.submit to opt-out of React.startTransition and into ReactDOM.flushSync for state updates (#11005)
Allow unstable_usePrompt to accept a BlockerFunction in addition to a boolean (#10991)
Patch Changes
Fix issue where a changing fetcher key in a useFetcher that remains mounted wasn't getting picked up (#11009)
Fix useFormAction which was incorrectly inheriting the ?index query param from child route action submissions (#11025)
Fix NavLinkactive logic when to location has a trailing slash (#10734)
Updated dependencies:
react-router@6.19.0
@remix-run/router@1.12.0
6.18.0
Minor Changes
Add support for manual fetcher key specification via useFetcher({ key: string }) so you can access the same fetcher instance from different components in your application without prop-drilling (RFC) (#10960)
Fetcher keys are now also exposed on the fetchers returned from useFetchers so that they can be looked up by key
Add navigate/fetcherKey params/props to useSumbit/Form to support kicking off a fetcher submission under the hood with an optionally user-specified key (#10960)
Invoking a fetcher in this way is ephemeral and stateless
If you need to access the state of one of these fetchers, you will need to leverage useFetcher({ key }) to look it up elsewhere
Patch Changes
Adds a fetcher context to RouterProvider that holds completed fetcher data, in preparation for the upcoming future flag that will change the fetcher persistence/cleanup behavior (#10961)
Fix the future prop on BrowserRouter, HashRouter and MemoryRouter so that it accepts a Partial<FutureConfig> instead of requiring all flags to be included. (#10962)
Updated dependencies:
@remix-run/router@1.11.0
react-router@6.18.0
6.17.0
Minor Changes
Add experimental support for the View Transitions API via document.startViewTransition to enable CSS animated transitions on SPA navigations in your application. (#10916)
The simplest approach to enabling a View Transition in your React Router app is via the new <Link unstable_viewTransition> prop. This will cause the navigation DOM update to be wrapped in document.startViewTransition which will enable transitions for the DOM update. Without any additional CSS styles, you'll get a basic cross-fade animation for your page.
If you need to apply more fine-grained styles for your animations, you can leverage the unstable_useViewTransitionState hook which will tell you when a transition is in progress and you can use that to apply classes or styles:
function ImageLink(to, src, alt) {
let isTransitioning = unstable_useViewTransitionState(to);
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps react-router-dom from 6.15.0 to 6.19.0.
Release notes
Sourced from react-router-dom's releases.
... (truncated)
Changelog
Sourced from react-router-dom's changelog.
... (truncated)
Commits
dcf0c2a
chore: Update version for release (#11035)7b1bd10
chore: Update version for release (pre) (#11026)d5b9128
fix lint issues5563672
Fix useFormAction inheriting ?index param from child route action submission ...39854ce
Fix useAcrtionData so it only returns the contextual route action data (#11023)811e9aa
Fix bug with changing fetcher key in a mounted component (#11009)1193ae5
Add unstable_flushSync option (#11005)fe066bd
Fix issues with useFormAction/useResolvedPath for dot paths in param/splat ro...4f6c454
Stabilize and document useBlocker (#10991)e6ac5f0
Fixed NavLink Issue (#10734)Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show