Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
ff40b8d
Added backticks to filename; removed extra 'then'.
gchang12 Nov 3, 2025
9d1bd83
Minor wording change for grammatical correctness.
gchang12 Nov 3, 2025
b57fac1
Update contributors.yml
gchang12 Nov 3, 2025
86d3041
Merge branch 'remix-run:main' into main
gchang12 Nov 5, 2025
88e2e2f
Changed 'they're' to 'it's; changed 'on on' to 'on'.
gchang12 Nov 15, 2025
20685ee
Erased '// existing exports' line in codeblock of 'Loading Data'.
gchang12 Nov 15, 2025
66aea22
Told user to transform the h1-text into a Link instead of adding a li…
gchang12 Nov 15, 2025
ed62a94
Added an apostrophe.
gchang12 Nov 15, 2025
754af46
Removed 'app/' prefix from instances of 'react-router.config.ts'
gchang12 Nov 15, 2025
893b972
Told user explicitly to erase the existing 'contacts' const declaration.
gchang12 Nov 15, 2025
a25719c
Explicitly made it clear to override existing imports
gchang12 Nov 15, 2025
ee47a90
Changed order of import-lines
gchang12 Nov 15, 2025
3a7c1cf
TODO: Inspect this weird line containing the function, .
gchang12 Nov 15, 2025
5e3c2c9
Re-added secretly erased imports: Form, Link
gchang12 Nov 15, 2025
4bd3370
Explicitly erased old import-line
gchang12 Nov 15, 2025
6caca47
More pedantic rewording.
gchang12 Nov 15, 2025
c1a53fe
Reduced ambiguity of where to place new route
gchang12 Nov 15, 2025
ea5f76c
More pedantic rewording.
gchang12 Nov 15, 2025
e4c26e9
Explicitly commented out previous import that would conflict with the…
gchang12 Nov 15, 2025
3cce7df
Explicitly commented out previous definition of
gchang12 Nov 15, 2025
4e37587
Added more verbosity
gchang12 Nov 15, 2025
a49b5f4
More rewordings
gchang12 Nov 15, 2025
e505b1e
Updated another code block
gchang12 Nov 15, 2025
8dc1945
Reworded a sentence for the chance to use 'implement' in a sentence.
gchang12 Nov 15, 2025
d96b7bf
In my opinion, the extra whitespace should be highlighted too.
gchang12 Nov 15, 2025
938d88e
Reworded some things
gchang12 Nov 15, 2025
ca52c1d
Explicitly commented out old Forms that needed replacement; added som…
gchang12 Nov 15, 2025
f0b7cdb
Added more verbosity for clarity's sake.
gchang12 Nov 15, 2025
0051554
Removed line to import 'getContact and 'updateContact' from '../data'
gchang12 Nov 15, 2025
d40b67f
Revert "Removed line to import 'getContact and 'updateContact' from '…
gchang12 Nov 15, 2025
882070d
Explicitly commented out import-line for getContact; it would conflic…
gchang12 Nov 15, 2025
dde8dc5
Put in more rephrasings.
gchang12 Nov 15, 2025
5cbba94
Merge branch 'remix-run:main' into address-book-corrections
gchang12 Nov 16, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion docs/start/framework/route-module.md
Original file line number Diff line number Diff line change
Expand Up @@ -137,7 +137,7 @@ See also:

## `clientMiddleware`

This is the client-side equivalent of `middleware` and runs in the browser during client navigations. The only difference from server middleware is that client middleware doesn't return Responses because they're not wrapping an HTTP request on the server.
This is the client-side equivalent of `middleware` and runs in the browser during client navigations. The only difference from server middleware is that client middleware doesn't return Responses because it's not wrapping an HTTP request on the server.

Here's an example middleware to log requests on the client:

Expand Down
2 changes: 1 addition & 1 deletion docs/start/framework/testing.md
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ test("LoginForm renders error messages", async () => {

## Using with Framework Mode Types

It's important to note that `createRoutesStub` is designed for _unit_ testing of reusable components in your application that rely on on contextual router information (i.e., `loaderData`, `actionData`, `matches`). These components usually obtain this information via the hooks (`useLoaderData`, `useActionData`, `useMatches`) or via props passed down from the ancestor route component. We **strongly** recommend limiting your usage of `createRoutesStub` to unit testing of these types of reusable components.
It's important to note that `createRoutesStub` is designed for _unit_ testing of reusable components in your application that rely on contextual router information (i.e., `loaderData`, `actionData`, `matches`). These components usually obtain this information via the hooks (`useLoaderData`, `useActionData`, `useMatches`) or via props passed down from the ancestor route component. We **strongly** recommend limiting your usage of `createRoutesStub` to unit testing of these types of reusable components.

`createRoutesStub` is _not designed_ for (and is arguably incompatible with) direct testing of Route components using the [`Route.\*`](../../explanation/type-safety) types available in Framework Mode. This is because the `Route.*` types are derived from your actual application - including the real `loader`/`action` functions as well as the structure of your route tree structure (which defines the `matches` type). When you use `createRoutesStub`, you are providing stubbed values for `loaderData`, `actionData`, and even your `matches` based on the route tree you pass to `createRoutesStub`. Therefore, the types won't align with the `Route.*` types and you'll get type issues trying to use a route component in a route stub.

Expand Down
Loading