From 195291a3d8c0e098931199bcc26277a45cee0eb9 Mon Sep 17 00:00:00 2001 From: Logan McAnsh Date: Fri, 20 Jan 2023 15:00:09 -0500 Subject: [PATCH 01/32] fix(remix-dev/flat-routes): use `index` without leading underscore for colocation (#5160) --- .changeset/fresh-needles-join.md | 24 +++++++++++++++++++ .../remix-dev/__tests__/flat-routes-test.ts | 16 +++++++------ packages/remix-dev/config/flat-routes.ts | 15 ++++++++---- 3 files changed, 44 insertions(+), 11 deletions(-) create mode 100644 .changeset/fresh-needles-join.md diff --git a/.changeset/fresh-needles-join.md b/.changeset/fresh-needles-join.md new file mode 100644 index 00000000000..fa8b3fce052 --- /dev/null +++ b/.changeset/fresh-needles-join.md @@ -0,0 +1,24 @@ +--- +"remix": patch +"@remix-run/dev": patch +--- + +use `index` without leading underscore for colocation + +when using flat routes with folder colocation, use `index` without leading underscore for route + +before: +``` + app_.projects.$id.roadmap/ + _index.tsx + chart.tsx + update-timeline.server.tsx +``` + +after: +``` + app_.projects.$id.roadmap/ + index.tsx + chart.tsx + update-timeline.server.tsx +``` diff --git a/packages/remix-dev/__tests__/flat-routes-test.ts b/packages/remix-dev/__tests__/flat-routes-test.ts index 8735e752556..5446afec45a 100644 --- a/packages/remix-dev/__tests__/flat-routes-test.ts +++ b/packages/remix-dev/__tests__/flat-routes-test.ts @@ -4,6 +4,7 @@ import { createRoutePath, flatRoutesUniversal, getRouteSegments, + isIndexRoute, } from "../config/flat-routes"; import type { ConfigRoute } from "../config/routes"; @@ -25,10 +26,10 @@ describe("flatRoutes", () => { ["nested/$slug", "/nested/:slug"], ["flat.$slug", "/flat/:slug"], ["flat.sub", "/flat/sub"], - ["nested/_index", "/nested"], + ["nested/index", "/nested"], ["flat._index", "/flat"], ["_index", undefined], - ["_layout/_index", undefined], + ["_layout/index", undefined], ["_layout/test", "/test"], ["_layout.test", "/test"], ["_layout/$slug", "/:slug"], @@ -88,7 +89,8 @@ describe("flatRoutes", () => { for (let [input, expected] of tests) { it(`"${input}" -> "${expected}"`, () => { let routeSegments = getRouteSegments(input); - expect(createRoutePath(routeSegments)).toBe(expected); + let isIndex = isIndexRoute(input); + expect(createRoutePath(routeSegments, isIndex)).toBe(expected); }); } @@ -332,9 +334,9 @@ describe("flatRoutes", () => { }, ], [ - "routes/app_.skipall_/_index.tsx", + "routes/app_.skipall_/index.tsx", { - id: "routes/app_.skipall_/_index", + id: "routes/app_.skipall_/index", index: true, parentId: "root", path: "app/skipall", @@ -580,9 +582,9 @@ describe("flatRoutes", () => { }, ], [ - "routes/brand/_index.tsx", + "routes/brand/index.tsx", { - id: "routes/brand/_index", + id: "routes/brand/index", parentId: "root", path: "brand", index: true, diff --git a/packages/remix-dev/config/flat-routes.ts b/packages/remix-dev/config/flat-routes.ts index 65d59e39406..16af3738278 100644 --- a/packages/remix-dev/config/flat-routes.ts +++ b/packages/remix-dev/config/flat-routes.ts @@ -103,8 +103,11 @@ export function flatRoutesUniversal( return routes; } -function isIndexRoute(routeId: string) { - return routeId.endsWith("_index"); +export function isIndexRoute(routeId: string) { + let isFlatFile = !routeId.includes(path.posix.sep); + return isFlatFile + ? routeId.endsWith("_index") + : /\/index$/.test(routeId); } type State = @@ -262,7 +265,7 @@ function getRouteInfo( let routeIdWithoutRoutes = routeId.slice(routeDirectory.length + 1); let index = isIndexRoute(routeIdWithoutRoutes); let routeSegments = getRouteSegments(routeIdWithoutRoutes); - let routePath = createRoutePath(routeSegments); + let routePath = createRoutePath(routeSegments, index); return { id: routeIdWithoutRoutes, @@ -274,9 +277,13 @@ function getRouteInfo( }; } -export function createRoutePath(routeSegments: string[]) { +export function createRoutePath(routeSegments: string[], isIndex: boolean) { let result = ""; + if (isIndex) { + routeSegments = routeSegments.slice(0, -1); + } + for (let segment of routeSegments) { // skip pathless layout segments if (segment.startsWith("_")) { From 0a7f1e832854acb8587a3e3daf2247444e6eb5a7 Mon Sep 17 00:00:00 2001 From: Chance Strickland Date: Fri, 20 Jan 2023 16:08:51 -0800 Subject: [PATCH 02/32] chore: edit changeset --- .changeset/fresh-needles-join.md | 20 +------------------- 1 file changed, 1 insertion(+), 19 deletions(-) diff --git a/.changeset/fresh-needles-join.md b/.changeset/fresh-needles-join.md index fa8b3fce052..789dd7c61e4 100644 --- a/.changeset/fresh-needles-join.md +++ b/.changeset/fresh-needles-join.md @@ -3,22 +3,4 @@ "@remix-run/dev": patch --- -use `index` without leading underscore for colocation - -when using flat routes with folder colocation, use `index` without leading underscore for route - -before: -``` - app_.projects.$id.roadmap/ - _index.tsx - chart.tsx - update-timeline.server.tsx -``` - -after: -``` - app_.projects.$id.roadmap/ - index.tsx - chart.tsx - update-timeline.server.tsx -``` +Fixed a bug with `v2_routeConvention` that prevented `index` modules from being recognized for route paths From 80c2042f20d9d0877eac73f47f57e2f85847b992 Mon Sep 17 00:00:00 2001 From: Logan McAnsh Date: Fri, 20 Jan 2023 19:26:31 -0500 Subject: [PATCH 03/32] chore: Update version for release (#5167) --- .changeset/fresh-needles-join.md | 6 ------ packages/create-remix/CHANGELOG.md | 7 +++++++ packages/create-remix/package.json | 4 ++-- packages/remix-architect/CHANGELOG.md | 7 +++++++ packages/remix-architect/package.json | 4 ++-- packages/remix-cloudflare-pages/CHANGELOG.md | 7 +++++++ packages/remix-cloudflare-pages/package.json | 4 ++-- packages/remix-cloudflare-workers/CHANGELOG.md | 7 +++++++ packages/remix-cloudflare-workers/package.json | 4 ++-- packages/remix-cloudflare/CHANGELOG.md | 7 +++++++ packages/remix-cloudflare/package.json | 4 ++-- packages/remix-css-bundle/CHANGELOG.md | 7 +++++++ packages/remix-css-bundle/package.json | 4 ++-- packages/remix-deno/CHANGELOG.md | 7 +++++++ packages/remix-deno/package.json | 4 ++-- packages/remix-dev/CHANGELOG.md | 8 ++++++++ packages/remix-dev/package.json | 8 ++++---- packages/remix-eslint-config/CHANGELOG.md | 2 ++ packages/remix-eslint-config/package.json | 2 +- packages/remix-express/CHANGELOG.md | 7 +++++++ packages/remix-express/package.json | 4 ++-- packages/remix-netlify/CHANGELOG.md | 7 +++++++ packages/remix-netlify/package.json | 4 ++-- packages/remix-node/CHANGELOG.md | 7 +++++++ packages/remix-node/package.json | 4 ++-- packages/remix-react/CHANGELOG.md | 2 ++ packages/remix-react/package.json | 4 ++-- packages/remix-serve/CHANGELOG.md | 7 +++++++ packages/remix-serve/package.json | 4 ++-- packages/remix-server-runtime/CHANGELOG.md | 2 ++ packages/remix-server-runtime/package.json | 2 +- packages/remix-testing/CHANGELOG.md | 8 ++++++++ packages/remix-testing/package.json | 6 +++--- packages/remix-vercel/CHANGELOG.md | 7 +++++++ packages/remix-vercel/package.json | 4 ++-- packages/remix/package.json | 2 +- 36 files changed, 142 insertions(+), 42 deletions(-) delete mode 100644 .changeset/fresh-needles-join.md diff --git a/.changeset/fresh-needles-join.md b/.changeset/fresh-needles-join.md deleted file mode 100644 index 789dd7c61e4..00000000000 --- a/.changeset/fresh-needles-join.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"remix": patch -"@remix-run/dev": patch ---- - -Fixed a bug with `v2_routeConvention` that prevented `index` modules from being recognized for route paths diff --git a/packages/create-remix/CHANGELOG.md b/packages/create-remix/CHANGELOG.md index fdebc04aa73..d831bd7cf25 100644 --- a/packages/create-remix/CHANGELOG.md +++ b/packages/create-remix/CHANGELOG.md @@ -1,5 +1,12 @@ # `create-remix` +## 1.11.1 + +### Patch Changes + +- Updated dependencies: + - `@remix-run/dev@1.11.1` + ## 1.11.0 ### Patch Changes diff --git a/packages/create-remix/package.json b/packages/create-remix/package.json index 1ec0b02f2e4..e4400a836e0 100644 --- a/packages/create-remix/package.json +++ b/packages/create-remix/package.json @@ -1,6 +1,6 @@ { "name": "create-remix", - "version": "1.11.0", + "version": "1.11.1", "description": "Create a new Remix app", "homepage": "https://remix.run", "bugs": { @@ -17,7 +17,7 @@ "create-remix": "dist/cli.js" }, "dependencies": { - "@remix-run/dev": "1.11.0" + "@remix-run/dev": "1.11.1" }, "engines": { "node": ">=14" diff --git a/packages/remix-architect/CHANGELOG.md b/packages/remix-architect/CHANGELOG.md index b663194b5f5..26d68939402 100644 --- a/packages/remix-architect/CHANGELOG.md +++ b/packages/remix-architect/CHANGELOG.md @@ -1,5 +1,12 @@ # `@remix-run/architect` +## 1.11.1 + +### Patch Changes + +- Updated dependencies: + - `@remix-run/node@1.11.1` + ## 1.11.0 ### Patch Changes diff --git a/packages/remix-architect/package.json b/packages/remix-architect/package.json index 689cf464c8b..6385aaa0300 100644 --- a/packages/remix-architect/package.json +++ b/packages/remix-architect/package.json @@ -1,6 +1,6 @@ { "name": "@remix-run/architect", - "version": "1.11.0", + "version": "1.11.1", "description": "Architect server request handler for Remix", "bugs": { "url": "https://github.com/remix-run/remix/issues" @@ -15,7 +15,7 @@ "typings": "dist/index.d.ts", "dependencies": { "@architect/functions": "^5.2.0", - "@remix-run/node": "1.11.0", + "@remix-run/node": "1.11.1", "@types/aws-lambda": "^8.10.82" }, "devDependencies": { diff --git a/packages/remix-cloudflare-pages/CHANGELOG.md b/packages/remix-cloudflare-pages/CHANGELOG.md index ef2fb7ac383..f82486303e5 100644 --- a/packages/remix-cloudflare-pages/CHANGELOG.md +++ b/packages/remix-cloudflare-pages/CHANGELOG.md @@ -1,5 +1,12 @@ # `@remix-run/cloudflare-pages` +## 1.11.1 + +### Patch Changes + +- Updated dependencies: + - `@remix-run/cloudflare@1.11.1` + ## 1.11.0 ### Patch Changes diff --git a/packages/remix-cloudflare-pages/package.json b/packages/remix-cloudflare-pages/package.json index d4b79bbbd62..32ca82ddc84 100644 --- a/packages/remix-cloudflare-pages/package.json +++ b/packages/remix-cloudflare-pages/package.json @@ -1,6 +1,6 @@ { "name": "@remix-run/cloudflare-pages", - "version": "1.11.0", + "version": "1.11.1", "description": "Cloudflare Pages request handler for Remix", "bugs": { "url": "https://github.com/remix-run/remix/issues" @@ -15,7 +15,7 @@ "typings": "dist/index.d.ts", "module": "dist/esm/index.js", "dependencies": { - "@remix-run/cloudflare": "1.11.0" + "@remix-run/cloudflare": "1.11.1" }, "devDependencies": { "@cloudflare/workers-types": "^3.4.0", diff --git a/packages/remix-cloudflare-workers/CHANGELOG.md b/packages/remix-cloudflare-workers/CHANGELOG.md index 6c2d95d72dc..c81ceba2dac 100644 --- a/packages/remix-cloudflare-workers/CHANGELOG.md +++ b/packages/remix-cloudflare-workers/CHANGELOG.md @@ -1,5 +1,12 @@ # `@remix-run/cloudflare-workers` +## 1.11.1 + +### Patch Changes + +- Updated dependencies: + - `@remix-run/cloudflare@1.11.1` + ## 1.11.0 ### Patch Changes diff --git a/packages/remix-cloudflare-workers/package.json b/packages/remix-cloudflare-workers/package.json index 11830fb0822..489b1e2f5d3 100644 --- a/packages/remix-cloudflare-workers/package.json +++ b/packages/remix-cloudflare-workers/package.json @@ -1,6 +1,6 @@ { "name": "@remix-run/cloudflare-workers", - "version": "1.11.0", + "version": "1.11.1", "description": "Cloudflare worker request handler for Remix", "bugs": { "url": "https://github.com/remix-run/remix/issues" @@ -16,7 +16,7 @@ "module": "dist/esm/index.js", "dependencies": { "@cloudflare/kv-asset-handler": "^0.1.3", - "@remix-run/cloudflare": "1.11.0" + "@remix-run/cloudflare": "1.11.1" }, "devDependencies": { "@cloudflare/workers-types": "^3.4.0" diff --git a/packages/remix-cloudflare/CHANGELOG.md b/packages/remix-cloudflare/CHANGELOG.md index 0660efadbc2..d77bf9b6920 100644 --- a/packages/remix-cloudflare/CHANGELOG.md +++ b/packages/remix-cloudflare/CHANGELOG.md @@ -1,5 +1,12 @@ # `@remix-run/cloudflare` +## 1.11.1 + +### Patch Changes + +- Updated dependencies: + - `@remix-run/server-runtime@1.11.1` + ## 1.11.0 ### Patch Changes diff --git a/packages/remix-cloudflare/package.json b/packages/remix-cloudflare/package.json index 03b8b2c3c6c..5d37d44ad99 100644 --- a/packages/remix-cloudflare/package.json +++ b/packages/remix-cloudflare/package.json @@ -1,6 +1,6 @@ { "name": "@remix-run/cloudflare", - "version": "1.11.0", + "version": "1.11.1", "description": "Cloudflare platform abstractions for Remix", "bugs": { "url": "https://github.com/remix-run/remix/issues" @@ -15,7 +15,7 @@ "typings": "dist/index.d.ts", "dependencies": { "@cloudflare/kv-asset-handler": "^0.1.3", - "@remix-run/server-runtime": "1.11.0" + "@remix-run/server-runtime": "1.11.1" }, "devDependencies": { "@cloudflare/workers-types": "^3.4.0" diff --git a/packages/remix-css-bundle/CHANGELOG.md b/packages/remix-css-bundle/CHANGELOG.md index d86f02c4cc7..031a4606390 100644 --- a/packages/remix-css-bundle/CHANGELOG.md +++ b/packages/remix-css-bundle/CHANGELOG.md @@ -1,5 +1,12 @@ # @remix-run/css-bundle +## 1.11.1 + +### Patch Changes + +- Updated dependencies: + - `@remix-run/dev@1.11.1` + ## 1.10.0 ### Minor Changes diff --git a/packages/remix-css-bundle/package.json b/packages/remix-css-bundle/package.json index 325672a3711..06575e69dbb 100644 --- a/packages/remix-css-bundle/package.json +++ b/packages/remix-css-bundle/package.json @@ -1,6 +1,6 @@ { "name": "@remix-run/css-bundle", - "version": "1.11.0", + "version": "1.11.1", "description": "CSS bundle href when using CSS bundling features in Remix", "homepage": "https://remix.run", "bugs": { @@ -20,6 +20,6 @@ "./dist/esm/server.js": "./dist/esm/browser.js" }, "dependencies": { - "@remix-run/dev": "1.11.0" + "@remix-run/dev": "1.11.1" } } diff --git a/packages/remix-deno/CHANGELOG.md b/packages/remix-deno/CHANGELOG.md index 23b1aab28b9..4fa51369cc1 100644 --- a/packages/remix-deno/CHANGELOG.md +++ b/packages/remix-deno/CHANGELOG.md @@ -1,5 +1,12 @@ # `@remix-run/deno` +## 1.11.1 + +### Patch Changes + +- Updated dependencies: + - `@remix-run/server-runtime@1.11.1` + ## 1.11.0 ### Patch Changes diff --git a/packages/remix-deno/package.json b/packages/remix-deno/package.json index eece60231a5..3d6c4350e89 100644 --- a/packages/remix-deno/package.json +++ b/packages/remix-deno/package.json @@ -1,6 +1,6 @@ { "name": "@remix-run/deno", - "version": "1.11.0", + "version": "1.11.1", "description": "Deno platform abstractions for Remix", "homepage": "https://remix.run", "main": "./index.ts", @@ -15,7 +15,7 @@ "license": "MIT", "sideEffects": false, "dependencies": { - "@remix-run/server-runtime": "1.11.0", + "@remix-run/server-runtime": "1.11.1", "mime": "^3.0.0" }, "engines": { diff --git a/packages/remix-dev/CHANGELOG.md b/packages/remix-dev/CHANGELOG.md index ce7edb87a98..6c80f58e280 100644 --- a/packages/remix-dev/CHANGELOG.md +++ b/packages/remix-dev/CHANGELOG.md @@ -1,5 +1,13 @@ # `@remix-run/dev` +## 1.11.1 + +### Patch Changes + +- Fixed a bug with `v2_routeConvention` that prevented `index` modules from being recognized for route paths ([`195291a3d`](https://github.com/remix-run/remix/commit/195291a3d8c0e098931199bcc26277a45cee0eb9)) +- Updated dependencies: + - `@remix-run/server-runtime@1.11.1` + ## 1.11.0 ### Minor Changes diff --git a/packages/remix-dev/package.json b/packages/remix-dev/package.json index e059f1e27ac..ca6e6a4ea12 100644 --- a/packages/remix-dev/package.json +++ b/packages/remix-dev/package.json @@ -1,6 +1,6 @@ { "name": "@remix-run/dev", - "version": "1.11.0", + "version": "1.11.1", "description": "Dev tools and CLI for Remix", "homepage": "https://remix.run", "bugs": { @@ -29,7 +29,7 @@ "@babel/types": "^7.20.2", "@esbuild-plugins/node-modules-polyfill": "^0.1.4", "@npmcli/package-json": "^2.0.0", - "@remix-run/server-runtime": "1.11.0", + "@remix-run/server-runtime": "1.11.1", "@vanilla-extract/integration": "^6.0.1", "arg": "^5.0.1", "cacache": "^15.0.5", @@ -71,7 +71,7 @@ "xdm": "^2.0.0" }, "devDependencies": { - "@remix-run/serve": "1.11.0", + "@remix-run/serve": "1.11.1", "@types/cacache": "^15.0.0", "@types/gunzip-maybe": "^1.4.0", "@types/inquirer": "^8.2.0", @@ -91,7 +91,7 @@ "type-fest": "^2.16.0" }, "peerDependencies": { - "@remix-run/serve": "^1.11.0" + "@remix-run/serve": "^1.11.1" }, "peerDependenciesMeta": { "@remix-run/serve": { diff --git a/packages/remix-eslint-config/CHANGELOG.md b/packages/remix-eslint-config/CHANGELOG.md index 23bbf837596..900aeca83e8 100644 --- a/packages/remix-eslint-config/CHANGELOG.md +++ b/packages/remix-eslint-config/CHANGELOG.md @@ -1,5 +1,7 @@ # `@remix-run/eslint-config` +## 1.11.1 + ## 1.11.0 ## 1.10.1 diff --git a/packages/remix-eslint-config/package.json b/packages/remix-eslint-config/package.json index ad51d8500b2..b17f224e2b8 100644 --- a/packages/remix-eslint-config/package.json +++ b/packages/remix-eslint-config/package.json @@ -1,6 +1,6 @@ { "name": "@remix-run/eslint-config", - "version": "1.11.0", + "version": "1.11.1", "description": "ESLint configuration for Remix projects", "bugs": { "url": "https://github.com/remix-run/remix/issues" diff --git a/packages/remix-express/CHANGELOG.md b/packages/remix-express/CHANGELOG.md index 4609361fa6e..166d80a2c53 100644 --- a/packages/remix-express/CHANGELOG.md +++ b/packages/remix-express/CHANGELOG.md @@ -1,5 +1,12 @@ # `@remix-run/express` +## 1.11.1 + +### Patch Changes + +- Updated dependencies: + - `@remix-run/node@1.11.1` + ## 1.11.0 ### Patch Changes diff --git a/packages/remix-express/package.json b/packages/remix-express/package.json index 83a9238a742..da8d03b537e 100644 --- a/packages/remix-express/package.json +++ b/packages/remix-express/package.json @@ -1,6 +1,6 @@ { "name": "@remix-run/express", - "version": "1.11.0", + "version": "1.11.1", "description": "Express server request handler for Remix", "bugs": { "url": "https://github.com/remix-run/remix/issues" @@ -14,7 +14,7 @@ "main": "dist/index.js", "typings": "dist/index.d.ts", "dependencies": { - "@remix-run/node": "1.11.0" + "@remix-run/node": "1.11.1" }, "devDependencies": { "@types/express": "^4.17.9", diff --git a/packages/remix-netlify/CHANGELOG.md b/packages/remix-netlify/CHANGELOG.md index 9fcb8fc1527..cf51475ebf0 100644 --- a/packages/remix-netlify/CHANGELOG.md +++ b/packages/remix-netlify/CHANGELOG.md @@ -1,5 +1,12 @@ # `@remix-run/netlify` +## 1.11.1 + +### Patch Changes + +- Updated dependencies: + - `@remix-run/node@1.11.1` + ## 1.11.0 ### Patch Changes diff --git a/packages/remix-netlify/package.json b/packages/remix-netlify/package.json index 08de4eb2a85..528c00c08c7 100644 --- a/packages/remix-netlify/package.json +++ b/packages/remix-netlify/package.json @@ -1,6 +1,6 @@ { "name": "@remix-run/netlify", - "version": "1.11.0", + "version": "1.11.1", "description": "Netlify server request handler for Remix", "bugs": { "url": "https://github.com/remix-run/remix/issues" @@ -14,7 +14,7 @@ "main": "dist/index.js", "typings": "dist/index.d.ts", "dependencies": { - "@remix-run/node": "1.11.0" + "@remix-run/node": "1.11.1" }, "devDependencies": { "@netlify/functions": "^1.0.0" diff --git a/packages/remix-node/CHANGELOG.md b/packages/remix-node/CHANGELOG.md index 15ef16ad0f2..c90eec73a02 100644 --- a/packages/remix-node/CHANGELOG.md +++ b/packages/remix-node/CHANGELOG.md @@ -1,5 +1,12 @@ # `@remix-run/node` +## 1.11.1 + +### Patch Changes + +- Updated dependencies: + - `@remix-run/server-runtime@1.11.1` + ## 1.11.0 ### Patch Changes diff --git a/packages/remix-node/package.json b/packages/remix-node/package.json index 59beb1d6b51..1801c93d55e 100644 --- a/packages/remix-node/package.json +++ b/packages/remix-node/package.json @@ -1,6 +1,6 @@ { "name": "@remix-run/node", - "version": "1.11.0", + "version": "1.11.1", "description": "Node.js platform abstractions for Remix", "bugs": { "url": "https://github.com/remix-run/remix/issues" @@ -15,7 +15,7 @@ "typings": "dist/index.d.ts", "sideEffects": false, "dependencies": { - "@remix-run/server-runtime": "1.11.0", + "@remix-run/server-runtime": "1.11.1", "@remix-run/web-fetch": "^4.3.2", "@remix-run/web-file": "^3.0.2", "@remix-run/web-stream": "^1.0.3", diff --git a/packages/remix-react/CHANGELOG.md b/packages/remix-react/CHANGELOG.md index c24190b7fbd..a6fc535ed5b 100644 --- a/packages/remix-react/CHANGELOG.md +++ b/packages/remix-react/CHANGELOG.md @@ -1,5 +1,7 @@ # `@remix-run/react` +## 1.11.1 + ## 1.11.0 ### Minor Changes diff --git a/packages/remix-react/package.json b/packages/remix-react/package.json index f415a5d5e20..285e8151744 100644 --- a/packages/remix-react/package.json +++ b/packages/remix-react/package.json @@ -1,6 +1,6 @@ { "name": "@remix-run/react", - "version": "1.11.0", + "version": "1.11.1", "description": "React DOM bindings for Remix", "bugs": { "url": "https://github.com/remix-run/remix/issues" @@ -21,7 +21,7 @@ "use-sync-external-store": "1.2.0" }, "devDependencies": { - "@remix-run/server-runtime": "1.11.0", + "@remix-run/server-runtime": "1.11.1", "@testing-library/jest-dom": "^5.16.2", "@testing-library/react": "^13.3.0", "abort-controller": "^3.0.0", diff --git a/packages/remix-serve/CHANGELOG.md b/packages/remix-serve/CHANGELOG.md index fb3849d270a..7241dd662a3 100644 --- a/packages/remix-serve/CHANGELOG.md +++ b/packages/remix-serve/CHANGELOG.md @@ -1,5 +1,12 @@ # `@remix-run/serve` +## 1.11.1 + +### Patch Changes + +- Updated dependencies: + - `@remix-run/express@1.11.1` + ## 1.11.0 ### Patch Changes diff --git a/packages/remix-serve/package.json b/packages/remix-serve/package.json index 35eea233e16..29a0cec6141 100644 --- a/packages/remix-serve/package.json +++ b/packages/remix-serve/package.json @@ -1,6 +1,6 @@ { "name": "@remix-run/serve", - "version": "1.11.0", + "version": "1.11.1", "description": "Production application server for Remix", "bugs": { "url": "https://github.com/remix-run/remix/issues" @@ -17,7 +17,7 @@ "remix-serve": "dist/cli.js" }, "dependencies": { - "@remix-run/express": "1.11.0", + "@remix-run/express": "1.11.1", "compression": "^1.7.4", "express": "^4.17.1", "morgan": "^1.10.0" diff --git a/packages/remix-server-runtime/CHANGELOG.md b/packages/remix-server-runtime/CHANGELOG.md index 1bd070a5d4b..c1cb57f0fb0 100644 --- a/packages/remix-server-runtime/CHANGELOG.md +++ b/packages/remix-server-runtime/CHANGELOG.md @@ -1,5 +1,7 @@ # `@remix-run/server-runtime` +## 1.11.1 + ## 1.11.0 ### Minor Changes diff --git a/packages/remix-server-runtime/package.json b/packages/remix-server-runtime/package.json index 9bbc071d930..881088ab370 100644 --- a/packages/remix-server-runtime/package.json +++ b/packages/remix-server-runtime/package.json @@ -1,6 +1,6 @@ { "name": "@remix-run/server-runtime", - "version": "1.11.0", + "version": "1.11.1", "description": "Server runtime for Remix", "bugs": { "url": "https://github.com/remix-run/remix/issues" diff --git a/packages/remix-testing/CHANGELOG.md b/packages/remix-testing/CHANGELOG.md index 786de2aa9a0..a724c22c310 100644 --- a/packages/remix-testing/CHANGELOG.md +++ b/packages/remix-testing/CHANGELOG.md @@ -1,5 +1,13 @@ # `@remix-run/testing` +## 1.11.1 + +### Patch Changes + +- Updated dependencies: + - `@remix-run/node@1.11.1` + - `@remix-run/react@1.11.1` + ## 1.11.0 ### Minor Changes diff --git a/packages/remix-testing/package.json b/packages/remix-testing/package.json index ca059a8ef47..da4509511b1 100644 --- a/packages/remix-testing/package.json +++ b/packages/remix-testing/package.json @@ -1,6 +1,6 @@ { "name": "@remix-run/testing", - "version": "1.11.0", + "version": "1.11.1", "description": "Testing utilities for Remix apps", "homepage": "https://remix.run", "bugs": { @@ -16,8 +16,8 @@ "typings": "./dist/index.d.ts", "module": "./dist/esm/index.js", "dependencies": { - "@remix-run/node": "1.11.0", - "@remix-run/react": "1.11.0", + "@remix-run/node": "1.11.1", + "@remix-run/react": "1.11.1", "@remix-run/router": "1.3.0", "react": "^18.2.0", "react-dom": "^18.2.0", diff --git a/packages/remix-vercel/CHANGELOG.md b/packages/remix-vercel/CHANGELOG.md index 9a653980cfe..80e33f1b07d 100644 --- a/packages/remix-vercel/CHANGELOG.md +++ b/packages/remix-vercel/CHANGELOG.md @@ -1,5 +1,12 @@ # `@remix-run/vercel` +## 1.11.1 + +### Patch Changes + +- Updated dependencies: + - `@remix-run/node@1.11.1` + ## 1.11.0 ### Patch Changes diff --git a/packages/remix-vercel/package.json b/packages/remix-vercel/package.json index b33a2dc44cf..37fb871d0c0 100644 --- a/packages/remix-vercel/package.json +++ b/packages/remix-vercel/package.json @@ -1,6 +1,6 @@ { "name": "@remix-run/vercel", - "version": "1.11.0", + "version": "1.11.1", "description": "Vercel server request handler for Remix", "bugs": { "url": "https://github.com/remix-run/remix/issues" @@ -14,7 +14,7 @@ "main": "dist/index.js", "typings": "dist/index.d.ts", "dependencies": { - "@remix-run/node": "1.11.0" + "@remix-run/node": "1.11.1" }, "devDependencies": { "@types/supertest": "^2.0.10", diff --git a/packages/remix/package.json b/packages/remix/package.json index 83d3b04b95b..34947f8118e 100644 --- a/packages/remix/package.json +++ b/packages/remix/package.json @@ -1,6 +1,6 @@ { "name": "remix", - "version": "1.11.0", + "version": "1.11.1", "description": "A framework for building better websites", "homepage": "https://remix.run", "bugs": { From f25068ef3580afd5cfd765304c50d1022bc27c9e Mon Sep 17 00:00:00 2001 From: Remix Run Bot Date: Sat, 21 Jan 2023 00:35:45 +0000 Subject: [PATCH 04/32] chore: format --- packages/remix-dev/config/flat-routes.ts | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/packages/remix-dev/config/flat-routes.ts b/packages/remix-dev/config/flat-routes.ts index 16af3738278..924c2751e51 100644 --- a/packages/remix-dev/config/flat-routes.ts +++ b/packages/remix-dev/config/flat-routes.ts @@ -105,9 +105,7 @@ export function flatRoutesUniversal( export function isIndexRoute(routeId: string) { let isFlatFile = !routeId.includes(path.posix.sep); - return isFlatFile - ? routeId.endsWith("_index") - : /\/index$/.test(routeId); + return isFlatFile ? routeId.endsWith("_index") : /\/index$/.test(routeId); } type State = From 986269be8d1e82e10a5f01c033f9f3729d6b2c89 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C3=ABl=20De=20Boey?= Date: Sat, 21 Jan 2023 17:26:04 +0100 Subject: [PATCH 05/32] docs: add pages for React Router components/hooks (#4924) * docs: add pages for React Router components/hooks * chore(docs): disable toc on re-export pages Signed-off-by: Logan McAnsh Signed-off-by: Logan McAnsh Co-authored-by: Logan McAnsh --- docs/components/form.md | 5 +++++ docs/components/outlet.md | 2 +- docs/hooks/use-async-error.md | 10 ++++++++++ docs/hooks/use-async-value.md | 10 ++++++++++ docs/hooks/use-before-unload.md | 7 +++++++ docs/hooks/use-fetcher.md | 1 + docs/hooks/use-form-action.md | 6 ++++++ docs/hooks/use-href.md | 10 ++++++++++ docs/hooks/use-location.md | 10 ++++++++++ docs/hooks/use-navigate.md | 10 ++++++++++ docs/hooks/use-navigation-type.md | 10 ++++++++++ docs/hooks/use-navigation.md | 6 +++--- docs/hooks/use-outlet-context.md | 10 ++++++++++ docs/hooks/use-outlet.md | 10 ++++++++++ docs/hooks/use-params.md | 10 ++++++++++ docs/hooks/use-resolved-path.md | 10 ++++++++++ docs/hooks/use-revalidator.md | 6 ++++-- docs/hooks/use-route-error.md | 10 ++++++++++ docs/hooks/use-route-loader-data.md | 8 +++++--- docs/hooks/use-search-params.md | 10 ++++++++++ docs/hooks/use-submit.md | 6 ++++++ 21 files changed, 158 insertions(+), 9 deletions(-) create mode 100644 docs/hooks/use-async-error.md create mode 100644 docs/hooks/use-async-value.md create mode 100644 docs/hooks/use-href.md create mode 100644 docs/hooks/use-location.md create mode 100644 docs/hooks/use-navigate.md create mode 100644 docs/hooks/use-navigation-type.md create mode 100644 docs/hooks/use-outlet-context.md create mode 100644 docs/hooks/use-outlet.md create mode 100644 docs/hooks/use-params.md create mode 100644 docs/hooks/use-resolved-path.md create mode 100644 docs/hooks/use-route-error.md create mode 100644 docs/hooks/use-search-params.md diff --git a/docs/components/form.md b/docs/components/form.md index fb5946d5f7b..01dbf31e5b4 100644 --- a/docs/components/form.md +++ b/docs/components/form.md @@ -6,6 +6,8 @@ title: Form Watch the 📼 Remix Singles: Data Mutations with Form + action, Multiple Forms and Single Button Mutations and Clearing Inputs After Form Submissions +This component is simply a re-export of [React Router's `Form`][rr-form]. + The `
` component is a declarative way to perform data mutations: creating, updating, and deleting data. While it might be a mind-shift to think about these tasks as "navigation", it's how the web has handled mutations since before JavaScript was created! ```tsx @@ -92,6 +94,8 @@ When the `action` prop is omitted, `` and `` will sometimes call dif - `` uses the current URL as the default which can lead to surprising results: forms inside parent routes will post to the child action if you're at the child's URL and the parents action when you're at the parent's URL. This means as the user navigates, the form's behavior changes. - `` will always post to the route's action, independent of the URL. A form in a parent route will always post to the parent, even if you're at the child's URL. +For more information and usage, please refer to the [React Router `Form` docs][rr-form]. + See also: - [`useTransition`][usetransition] @@ -103,3 +107,4 @@ See also: [useactiondata]: ../hooks/use-action-data [usesubmit]: ../hooks/use-submit [http-verb]: https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods +[rr-form]: https://reactrouter.com/components/form diff --git a/docs/components/outlet.md b/docs/components/outlet.md index 0105b081933..376dfbdb6f9 100644 --- a/docs/components/outlet.md +++ b/docs/components/outlet.md @@ -4,6 +4,6 @@ title: Outlet # `` -Re-export of [React Router Outlet][rr-outlet]. +This is simply a re-export of [React Router's `Outlet`][rr-outlet]. [rr-outlet]: https://reactrouter.com/components/outlet diff --git a/docs/hooks/use-async-error.md b/docs/hooks/use-async-error.md new file mode 100644 index 00000000000..8fac86db84c --- /dev/null +++ b/docs/hooks/use-async-error.md @@ -0,0 +1,10 @@ +--- +title: useAsyncError +toc: false +--- + +# `useAsyncError` + +This hook is simply a re-export of [React Router's `useAsyncError`][rr-useassyncerror]. + +[rr-useassyncerror]: https://reactrouter.com/hooks/use-async-error diff --git a/docs/hooks/use-async-value.md b/docs/hooks/use-async-value.md new file mode 100644 index 00000000000..b5fa6d8d2fa --- /dev/null +++ b/docs/hooks/use-async-value.md @@ -0,0 +1,10 @@ +--- +title: useAsyncValue +toc: false +--- + +# `useAsyncValue` + +This hook is simply a re-export of [React Router's `useAsyncValue`][rr-useassyncvalue]. + +[rr-useassyncvalue]: https://reactrouter.com/hooks/use-async-value diff --git a/docs/hooks/use-before-unload.md b/docs/hooks/use-before-unload.md index 853decf7f50..9bdb014a3a5 100644 --- a/docs/hooks/use-before-unload.md +++ b/docs/hooks/use-before-unload.md @@ -1,9 +1,12 @@ --- title: useBeforeUnload +toc: false --- # `useBeforeUnload` +This hook is simply a re-export of [React Router's `useBeforeUnload`][rr-usebeforeunload]. + This hook is just a helper around `window.onbeforeunload`. When users click links to pages they haven't visited yet, Remix loads the code-split modules for that page. If you deploy in the middle of a user's session, and you or your host removes the old files from the server (many do 😭), then Remix's requests for those modules will fail. Remix recovers by automatically reloading the browser at the new URL. This should start over from the server with the latest version of your application. Most of the time this works out great, and user doesn't even know anything happened. @@ -35,3 +38,7 @@ function SomeForm() { return <>{/*... */}; } ``` + +For more information and usage, please refer to the [React Router `useBeforeUnload` docs][rr-usebeforeunload]. + +[rr-usebeforeunload]: https://reactrouter.com/hooks/use-before-unload diff --git a/docs/hooks/use-fetcher.md b/docs/hooks/use-fetcher.md index 305289b8916..3d6fcf324a3 100644 --- a/docs/hooks/use-fetcher.md +++ b/docs/hooks/use-fetcher.md @@ -1,5 +1,6 @@ --- title: useFetcher +toc: false --- # `useFetcher` diff --git a/docs/hooks/use-form-action.md b/docs/hooks/use-form-action.md index 4f44bbdc6ff..05cec6f74af 100644 --- a/docs/hooks/use-form-action.md +++ b/docs/hooks/use-form-action.md @@ -4,6 +4,8 @@ title: useFormAction # `useFormAction` +This hook is simply a re-export of [React Router's `useFormAction`][rr-useformaction]. + Resolves the value of a `` attribute using React Router's relative paths. This can be useful when computing the correct action for a `