|
4 | 4 | },
|
5 | 5 | "trailingSlash": false,
|
6 | 6 | "redirects": [
|
| 7 | + { |
| 8 | + "source": "/", |
| 9 | + "has": [ |
| 10 | + { |
| 11 | + "type": "host", |
| 12 | + "value": "reactjs.org" |
| 13 | + } |
| 14 | + ], |
| 15 | + "destination": "https://react.dev", |
| 16 | + "permanent": true |
| 17 | + }, |
| 18 | + { |
| 19 | + "source": "/docs/add-react-to-a-website.html", |
| 20 | + "has": [ |
| 21 | + { |
| 22 | + "type": "host", |
| 23 | + "value": "reactjs.org" |
| 24 | + } |
| 25 | + ], |
| 26 | + "destination": "https://react.dev/learn/add-react-to-an-existing-project", |
| 27 | + "permanent": true |
| 28 | + }, |
| 29 | + { |
| 30 | + "source": "/docs/create-a-new-react-app.html", |
| 31 | + "has": [ |
| 32 | + { |
| 33 | + "type": "host", |
| 34 | + "value": "reactjs.org" |
| 35 | + } |
| 36 | + ], |
| 37 | + "destination": "https://react.dev/learn/start-a-new-react-project", |
| 38 | + "permanent": true |
| 39 | + }, |
| 40 | + { |
| 41 | + "source": "/docs/release-channels.html", |
| 42 | + "has": [ |
| 43 | + { |
| 44 | + "type": "host", |
| 45 | + "value": "reactjs.org" |
| 46 | + } |
| 47 | + ], |
| 48 | + "destination": "https://react.dev/community/versioning-policy", |
| 49 | + "permanent": true |
| 50 | + }, |
| 51 | + { |
| 52 | + "source": "/docs/thinking-in-react.html", |
| 53 | + "has": [ |
| 54 | + { |
| 55 | + "type": "host", |
| 56 | + "value": "reactjs.org" |
| 57 | + } |
| 58 | + ], |
| 59 | + "destination": "https://react.dev/learn/thinking-in-react", |
| 60 | + "permanent": true |
| 61 | + }, |
| 62 | + { |
| 63 | + "source": "/tutorial/tutorial.html", |
| 64 | + "has": [ |
| 65 | + { |
| 66 | + "type": "host", |
| 67 | + "value": "reactjs.org" |
| 68 | + } |
| 69 | + ], |
| 70 | + "destination": "https://react.dev/learn/tutorial-tic-tac-toe", |
| 71 | + "permanent": true |
| 72 | + }, |
| 73 | + { |
| 74 | + "source": "/community/support.html", |
| 75 | + "has": [ |
| 76 | + { |
| 77 | + "type": "host", |
| 78 | + "value": "reactjs.org" |
| 79 | + } |
| 80 | + ], |
| 81 | + "destination": "https://react.dev/community", |
| 82 | + "permanent": true |
| 83 | + }, |
| 84 | + { |
| 85 | + "source": "/community/conferences.html", |
| 86 | + "has": [ |
| 87 | + { |
| 88 | + "type": "host", |
| 89 | + "value": "reactjs.org" |
| 90 | + } |
| 91 | + ], |
| 92 | + "destination": "https://react.dev/community/conferences", |
| 93 | + "permanent": true |
| 94 | + }, |
| 95 | + { |
| 96 | + "source": "/community/meetups.html", |
| 97 | + "has": [ |
| 98 | + { |
| 99 | + "type": "host", |
| 100 | + "value": "reactjs.org" |
| 101 | + } |
| 102 | + ], |
| 103 | + "destination": "https://react.dev/community/meetups", |
| 104 | + "permanent": true |
| 105 | + }, |
| 106 | + { |
| 107 | + "source": "/community/team.html", |
| 108 | + "has": [ |
| 109 | + { |
| 110 | + "type": "host", |
| 111 | + "value": "reactjs.org" |
| 112 | + } |
| 113 | + ], |
| 114 | + "destination": "https://react.dev/community/team", |
| 115 | + "permanent": true |
| 116 | + }, |
| 117 | + { |
| 118 | + "source": "/community/videos.html", |
| 119 | + "has": [ |
| 120 | + { |
| 121 | + "type": "host", |
| 122 | + "value": "reactjs.org" |
| 123 | + } |
| 124 | + ], |
| 125 | + "destination": "https://react.dev/community/videos", |
| 126 | + "permanent": true |
| 127 | + }, |
| 128 | + { |
| 129 | + "source": "/blog/2022/06/15/react-labs-what-we-have-been-working-on-june-2022.html", |
| 130 | + "has": [ |
| 131 | + { |
| 132 | + "type": "host", |
| 133 | + "value": "reactjs.org" |
| 134 | + } |
| 135 | + ], |
| 136 | + "destination": "https://react.dev/blog/2022/06/15/react-labs-what-we-have-been-working-on-june-2022", |
| 137 | + "permanent": true |
| 138 | + }, |
| 139 | + { |
| 140 | + "source": "/blog/2022/03/29/react-v18.html", |
| 141 | + "has": [ |
| 142 | + { |
| 143 | + "type": "host", |
| 144 | + "value": "reactjs.org" |
| 145 | + } |
| 146 | + ], |
| 147 | + "destination": "https://react.dev/blog/2022/03/29/react-v18", |
| 148 | + "permanent": true |
| 149 | + }, |
| 150 | + { |
| 151 | + "source": "/blog/2022/03/08/react-18-upgrade-guide.html", |
| 152 | + "has": [ |
| 153 | + { |
| 154 | + "type": "host", |
| 155 | + "value": "reactjs.org" |
| 156 | + } |
| 157 | + ], |
| 158 | + "destination": "https://react.dev/blog/2022/03/08/react-18-upgrade-guide", |
| 159 | + "permanent": true |
| 160 | + }, |
| 161 | + { |
| 162 | + "source": "/blog/2021/12/17/react-conf-2021-recap.html", |
| 163 | + "has": [ |
| 164 | + { |
| 165 | + "type": "host", |
| 166 | + "value": "reactjs.org" |
| 167 | + } |
| 168 | + ], |
| 169 | + "destination": "https://react.dev/blog/2021/12/17/react-conf-2021-recap", |
| 170 | + "permanent": true |
| 171 | + }, |
| 172 | + { |
| 173 | + "source": "/blog/2021/06/08/the-plan-for-react-18.html", |
| 174 | + "has": [ |
| 175 | + { |
| 176 | + "type": "host", |
| 177 | + "value": "reactjs.org" |
| 178 | + } |
| 179 | + ], |
| 180 | + "destination": "https://react.dev/blog/2021/06/08/the-plan-for-react-18", |
| 181 | + "permanent": true |
| 182 | + }, |
| 183 | + { |
| 184 | + "source": "/:path*", |
| 185 | + "has": [ |
| 186 | + { |
| 187 | + "type": "host", |
| 188 | + "value": "reactjs.org" |
| 189 | + } |
| 190 | + ], |
| 191 | + "destination": "https://legacy.reactjs.org/:path*", |
| 192 | + "permanent": true |
| 193 | + }, |
7 | 194 | {
|
8 | 195 | "source": "/tips/controlled-input-null-value.html",
|
9 |
| - "destination": "/docs/forms.html#controlled-input-null-value", |
| 196 | + "destination": "https://react.dev/reference/react-dom/components/input#im-getting-an-error-a-component-is-changing-an-uncontrolled-input-to-be-controlled", |
10 | 197 | "permanent": false
|
11 | 198 | },
|
12 | 199 | {
|
|
17 | 204 | {
|
18 | 205 | "source": "/server-components",
|
19 | 206 | "destination": "https://react.dev/blog/2020/12/21/data-fetching-with-react-server-components",
|
20 |
| - "permanent": false |
| 207 | + "permanent": true |
21 | 208 | },
|
22 | 209 | {
|
23 | 210 | "source": "/concurrent",
|
24 |
| - "destination": "https://react.dev/reference/react/Suspense", |
25 |
| - "permanent": false |
| 211 | + "destination": "https://react.dev/blog/2022/03/29/react-v18", |
| 212 | + "permanent": true |
26 | 213 | },
|
27 | 214 | {
|
28 | 215 | "source": "/hooks",
|
29 | 216 | "destination": "https://react.dev/reference/react",
|
30 |
| - "permanent": false |
| 217 | + "permanent": true |
31 | 218 | },
|
32 | 219 | {
|
33 | 220 | "source": "/tutorial",
|
34 | 221 | "destination": "https://react.dev/learn/tutorial-tic-tac-toe",
|
35 |
| - "permanent": false |
| 222 | + "permanent": true |
36 | 223 | },
|
37 | 224 | {
|
38 | 225 | "source": "/stories",
|
|
51 | 238 | },
|
52 | 239 | {
|
53 | 240 | "source": "/link/controlled-components",
|
54 |
| - "destination": "/docs/forms.html#controlled-components", |
| 241 | + "destination": "https://react.dev/reference/react-dom/components/input#controlling-an-input-with-a-state-variable", |
55 | 242 | "permanent": false
|
56 | 243 | },
|
57 | 244 | {
|
|
61 | 248 | },
|
62 | 249 | {
|
63 | 250 | "source": "/link/dangerously-set-inner-html",
|
64 |
| - "destination": "/docs/dom-elements.html#dangerouslysetinnerhtml", |
| 251 | + "destination": "https://react.dev/reference/react-dom/components/common#dangerously-setting-the-inner-html", |
65 | 252 | "permanent": false
|
66 | 253 | },
|
67 | 254 | {
|
|
71 | 258 | },
|
72 | 259 | {
|
73 | 260 | "source": "/link/error-boundaries",
|
74 |
| - "destination": "/docs/error-boundaries.html", |
| 261 | + "destination": "https://react.dev/reference/react/Component#catching-rendering-errors-with-an-error-boundary", |
75 | 262 | "permanent": false
|
76 | 263 | },
|
77 | 264 | {
|
78 | 265 | "source": "/link/event-pooling",
|
79 |
| - "destination": "/docs/legacy-event-pooling.html", |
| 266 | + "destination": "https://react.dev/reference/react/useEffect#fetching-data-with-effects", |
80 | 267 | "permanent": false
|
81 | 268 | },
|
82 | 269 | {
|
83 | 270 | "source": "/link/hooks-data-fetching",
|
84 |
| - "destination": "/docs/hooks-faq.html#how-can-i-do-data-fetching-with-hooks", |
| 271 | + "destination": "https://react.dev/reference/react/useEffect#fetching-data-with-effects", |
85 | 272 | "permanent": false
|
86 | 273 | },
|
87 | 274 | {
|
88 | 275 | "source": "/link/invalid-aria-props",
|
89 |
| - "destination": "/warnings/invalid-aria-prop.html", |
| 276 | + "destination": "https://react.dev/warnings/invalid-aria-prop", |
90 | 277 | "permanent": false
|
91 | 278 | },
|
92 | 279 | {
|
93 | 280 | "source": "/link/invalid-hook-call",
|
94 |
| - "destination": "/warnings/invalid-hook-call-warning.html", |
| 281 | + "destination": "https://react.dev/warnings/invalid-hook-call-warning", |
95 | 282 | "permanent": false
|
96 | 283 | },
|
97 | 284 | {
|
|
116 | 303 | },
|
117 | 304 | {
|
118 | 305 | "source": "/link/react-devtools",
|
119 |
| - "destination": "/blog/2015/09/02/new-react-developer-tools.html#installation", |
| 306 | + "destination": "https://react.dev/learn/react-developer-tools", |
120 | 307 | "permanent": false
|
121 | 308 | },
|
122 | 309 | {
|
|
131 | 318 | },
|
132 | 319 | {
|
133 | 320 | "source": "/link/rules-of-hooks",
|
134 |
| - "destination": "/docs/hooks-rules.html", |
| 321 | + "destination": "https://react.dev/warnings/invalid-hook-call-warning", |
135 | 322 | "permanent": false
|
136 | 323 | },
|
137 | 324 | {
|
138 | 325 | "source": "/link/special-props",
|
139 |
| - "destination": "/warnings/special-props.html", |
| 326 | + "destination": "https://react.dev/warnings/special-props", |
140 | 327 | "permanent": false
|
141 | 328 | },
|
142 | 329 | {
|
143 | 330 | "source": "/link/strict-mode-find-node",
|
144 |
| - "destination": "/docs/strict-mode.html#warning-about-deprecated-finddomnode-usage", |
| 331 | + "destination": "https://react.dev/reference/react-dom/findDOMNode#alternatives", |
145 | 332 | "permanent": false
|
146 | 333 | },
|
147 | 334 | {
|
|
156 | 343 | },
|
157 | 344 | {
|
158 | 345 | "source": "/link/warning-keys",
|
159 |
| - "destination": "/docs/lists-and-keys.html#keys", |
| 346 | + "destination": "https://react.dev/learn/rendering-lists#keeping-list-items-in-order-with-key", |
160 | 347 | "permanent": false
|
161 | 348 | },
|
162 | 349 | {
|
|
0 commit comments