Skip to content

Commit ac55812

Browse files
Merge pull request #77 from rvdkooy/react_18_strict_mode
react 18 strict mode
2 parents 4a846ad + ea1e44d commit ac55812

File tree

5 files changed

+57
-114
lines changed

5 files changed

+57
-114
lines changed

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
"react": "^18.2.0",
1515
"react-azure-maps": "^0.4.3",
1616
"react-dom": "^18.2.0",
17-
"react-router-dom": "^5.1.2",
17+
"react-router-dom": "^6.3.0",
1818
"react-scripts": "^5.0.0-next.37",
1919
"sanitize.css": "^12.0.1",
2020
"typescript": "3.6.4"

src/App.tsx

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,16 @@ import './App.css';
33

44
import Layout from './Layout/Layout';
55

6-
import { BrowserRouter as Router } from 'react-router-dom';
6+
import { BrowserRouter } from 'react-router-dom';
77
const App: React.FC = () => {
88
return (
9-
<div>
10-
<Router>
11-
<Layout />
12-
</Router>
13-
</div>
9+
<React.StrictMode>
10+
<div>
11+
<BrowserRouter>
12+
<Layout />
13+
</BrowserRouter>
14+
</div>
15+
</React.StrictMode>
1416
);
1517
};
1618

src/Layout/PageContent.tsx

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,24 @@
11
import React from 'react';
2-
import { Switch, Route } from 'react-router-dom';
2+
import { Routes, Route } from 'react-router-dom';
33
import { examplesList } from '../examples/examplesList';
44

55
const PageContent = () => {
66
return (
77
<div className="content-page">
8-
<Switch>
8+
<Routes>
99
{examplesList.map((item) => (
10-
<Route key={item.name} exact={item.exact} path={item.path}>
11-
<React.Fragment>
12-
<h1>{item.name}</h1>
13-
{<item.component />}
14-
</React.Fragment>
15-
</Route>
10+
<Route
11+
key={item.name}
12+
path={item.path}
13+
element={
14+
<>
15+
<h1>{item.name}</h1>
16+
{<item.component />}
17+
</>
18+
}
19+
></Route>
1620
))}
17-
</Switch>
21+
</Routes>
1822
</div>
1923
);
2024
};

src/Layout/Sidebar.tsx

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,14 @@
1-
import React from 'react';
1+
import React, { FC } from 'react';
22
import List from '@mui/material/List';
33
import ListItem from '@mui/material/ListItem';
44
import ListItemText from '@mui/material/ListItemText';
55
import { Link } from 'react-router-dom';
66
import { examplesList } from '../examples/examplesList';
7-
import { withRouter, RouteProps } from 'react-router';
7+
import { useLocation } from 'react-router';
8+
9+
const Sidebar: FC = () => {
10+
const location = useLocation();
811

9-
const Sidebar = ({ location }: RouteProps) => {
1012
return (
1113
<div className="sidebar">
1214
<List disablePadding dense>
@@ -26,4 +28,4 @@ const Sidebar = ({ location }: RouteProps) => {
2628
);
2729
};
2830

29-
export default withRouter(Sidebar);
31+
export default Sidebar;

yarn.lock

Lines changed: 29 additions & 94 deletions
Original file line numberDiff line numberDiff line change
@@ -1231,27 +1231,27 @@
12311231
dependencies:
12321232
regenerator-runtime "^0.13.4"
12331233

1234-
"@babel/runtime@^7.1.2", "@babel/runtime@^7.4.0", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7":
1235-
version "7.9.2"
1236-
resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.9.2.tgz#d90df0583a3a252f09aaa619665367bae518db06"
1237-
integrity sha512-NE2DtOdufG7R5vnfQUTehdTfNycfUANEtCa9PssN9O/xmTzP4E08UI797ixaei6hBEVL9BI/PsdJS5x7mWoB9Q==
1238-
dependencies:
1239-
regenerator-runtime "^0.13.4"
1240-
12411234
"@babel/runtime@^7.10.2", "@babel/runtime@^7.11.2", "@babel/runtime@^7.12.5", "@babel/runtime@^7.13.10", "@babel/runtime@^7.14.5", "@babel/runtime@^7.7.2":
12421235
version "7.15.4"
12431236
resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.15.4.tgz#fd17d16bfdf878e6dd02d19753a39fa8a8d9c84a"
12441237
integrity sha512-99catp6bHCaxr4sJ/DbTGgHS4+Rs2RVd2g7iOap6SLGPDknRK9ztKNsE/Fg6QhSeh1FGE5f6gHGQmvvn3I3xhw==
12451238
dependencies:
12461239
regenerator-runtime "^0.13.4"
12471240

1248-
"@babel/runtime@^7.17.2", "@babel/runtime@^7.5.5":
1241+
"@babel/runtime@^7.17.2", "@babel/runtime@^7.5.5", "@babel/runtime@^7.7.6":
12491242
version "7.18.9"
12501243
resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.18.9.tgz#b4fcfce55db3d2e5e080d2490f608a3b9f407f4a"
12511244
integrity sha512-lkqXDcvlFT5rvEjiu6+QYO+1GXrEHRo2LOtS7E4GtX5ESIZOgepqsZBVIj6Pv+a6zqsya9VCgiK1KAK4BvJDAw==
12521245
dependencies:
12531246
regenerator-runtime "^0.13.4"
12541247

1248+
"@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7":
1249+
version "7.9.2"
1250+
resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.9.2.tgz#d90df0583a3a252f09aaa619665367bae518db06"
1251+
integrity sha512-NE2DtOdufG7R5vnfQUTehdTfNycfUANEtCa9PssN9O/xmTzP4E08UI797ixaei6hBEVL9BI/PsdJS5x7mWoB9Q==
1252+
dependencies:
1253+
regenerator-runtime "^0.13.4"
1254+
12551255
"@babel/template@^7.12.13", "@babel/template@^7.15.4", "@babel/template@^7.3.3":
12561256
version "7.15.4"
12571257
resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.15.4.tgz#51898d35dcf3faa670c4ee6afcfd517ee139f194"
@@ -5401,11 +5401,6 @@ growly@^1.3.0:
54015401
resolved "https://registry.yarnpkg.com/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081"
54025402
integrity sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE=
54035403

5404-
gud@^1.0.0:
5405-
version "1.0.0"
5406-
resolved "https://registry.yarnpkg.com/gud/-/gud-1.0.0.tgz#a489581b17e6a70beca9abe3ae57de7a499852c0"
5407-
integrity sha512-zGEOVKFM5sVPPrYs7J5/hYEw2Pof8KCyOwyhG8sAF26mCAeUFAcYPu1mwB7hhpIP29zOIBaDqwuHdLp0jvZXjw==
5408-
54095404
guid-typescript@^1.0.9:
54105405
version "1.0.9"
54115406
resolved "https://registry.yarnpkg.com/guid-typescript/-/guid-typescript-1.0.9.tgz#e35f77003535b0297ea08548f5ace6adb1480ddc"
@@ -5504,19 +5499,14 @@ he@^1.2.0:
55045499
resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f"
55055500
integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==
55065501

5507-
history@^4.9.0:
5508-
version "4.10.1"
5509-
resolved "https://registry.yarnpkg.com/history/-/history-4.10.1.tgz#33371a65e3a83b267434e2b3f3b1b4c58aad4cf3"
5510-
integrity sha512-36nwAD620w12kuzPAsyINPWJqlNbij+hpK1k9XRloDtym8mxzGYl2c17LnV6IAGB2Dmg4tEa7G7DlawS0+qjew==
5502+
history@^5.2.0:
5503+
version "5.3.0"
5504+
resolved "https://registry.yarnpkg.com/history/-/history-5.3.0.tgz#1548abaa245ba47992f063a0783db91ef201c73b"
5505+
integrity sha512-ZqaKwjjrAYUYfLG+htGaIIZ4nioX2L70ZUMIFysS3xvBsSG4x/n1V6TXV3N8ZYNuFGlDirFg32T7B6WOUPDYcQ==
55115506
dependencies:
5512-
"@babel/runtime" "^7.1.2"
5513-
loose-envify "^1.2.0"
5514-
resolve-pathname "^3.0.0"
5515-
tiny-invariant "^1.0.2"
5516-
tiny-warning "^1.0.0"
5517-
value-equal "^1.0.1"
5507+
"@babel/runtime" "^7.7.6"
55185508

5519-
hoist-non-react-statics@^3.1.0, hoist-non-react-statics@^3.3.1:
5509+
hoist-non-react-statics@^3.3.1:
55205510
version "3.3.2"
55215511
resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz#ece0acaf71d62c2969c2ec59feff42a4b1a85b45"
55225512
integrity sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==
@@ -6162,11 +6152,6 @@ is-wsl@^2.2.0:
61626152
dependencies:
61636153
is-docker "^2.0.0"
61646154

6165-
isarray@0.0.1:
6166-
version "0.0.1"
6167-
resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf"
6168-
integrity sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=
6169-
61706155
isarray@1.0.0, isarray@~1.0.0:
61716156
version "1.0.0"
61726157
resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
@@ -6996,7 +6981,7 @@ lodash@^4.17.13, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.20, lodash@^4.17
69966981
resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c"
69976982
integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==
69986983

6999-
loose-envify@^1.1.0, loose-envify@^1.2.0, loose-envify@^1.3.1, loose-envify@^1.4.0:
6984+
loose-envify@^1.1.0, loose-envify@^1.4.0:
70006985
version "1.4.0"
70016986
resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf"
70026987
integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==
@@ -7194,15 +7179,6 @@ mimic-fn@^2.1.0:
71947179
resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b"
71957180
integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==
71967181

7197-
mini-create-react-context@^0.3.0:
7198-
version "0.3.2"
7199-
resolved "https://registry.yarnpkg.com/mini-create-react-context/-/mini-create-react-context-0.3.2.tgz#79fc598f283dd623da8e088b05db8cddab250189"
7200-
integrity sha512-2v+OeetEyliMt5VHMXsBhABoJ0/M4RCe7fatd/fBy6SMiKazUSEt3gxxypfnk2SHMkdBYvorHRoQxuGoiwbzAw==
7201-
dependencies:
7202-
"@babel/runtime" "^7.4.0"
7203-
gud "^1.0.0"
7204-
tiny-warning "^1.0.2"
7205-
72067182
mini-css-extract-plugin@2.1.0:
72077183
version "2.1.0"
72087184
resolved "https://registry.yarnpkg.com/mini-css-extract-plugin/-/mini-css-extract-plugin-2.1.0.tgz#4aa6558b527ad4c168fee4a20b6092ebe9f98309"
@@ -7820,13 +7796,6 @@ path-to-regexp@0.1.7:
78207796
resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c"
78217797
integrity sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=
78227798

7823-
path-to-regexp@^1.7.0:
7824-
version "1.8.0"
7825-
resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-1.8.0.tgz#887b3ba9d84393e87a0a0b9f4cb756198b53548a"
7826-
integrity sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==
7827-
dependencies:
7828-
isarray "0.0.1"
7829-
78307799
path-type@^3.0.0:
78317800
version "3.0.0"
78327801
resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f"
@@ -8744,7 +8713,7 @@ react-app-polyfill@3.0.0-next.81+25f516f8:
87448713
regenerator-runtime "^0.13.7"
87458714
whatwg-fetch "^3.4.1"
87468715

8747-
react-azure-maps@0.4.3:
8716+
react-azure-maps@^0.4.3:
87488717
version "0.4.3"
87498718
resolved "https://registry.yarnpkg.com/react-azure-maps/-/react-azure-maps-0.4.3.tgz#01b2edc371f378e227aa917fc986551c56ca9d36"
87508719
integrity sha512-gIMlErdFc4IlwLRY7qWFi8SW7hhqJ1ipakJZKmJCovOUhYu+hz7z+a+ohixNliCkPCYwRNFrba3LqS4KMi63sA==
@@ -8796,7 +8765,7 @@ react-error-overlay@7.0.0-next.44+25f516f8:
87968765
resolved "https://registry.yarnpkg.com/react-error-overlay/-/react-error-overlay-7.0.0-next.44.tgz#62703607a56a36d4ce1aae1cd2610f447d064de9"
87978766
integrity sha512-kVaEV9v7/VLemXzjH+I9EvNssuSTvrHxCadsnC3dmvwndxzOI16xvrjgZXDgnm5XTOkzP7Kq+9P4C4+6cwkfcg==
87988767

8799-
react-is@^16.12.0, react-is@^16.13.1, react-is@^16.6.0, react-is@^16.7.0, react-is@^16.8.1:
8768+
react-is@^16.12.0, react-is@^16.13.1, react-is@^16.7.0, react-is@^16.8.1:
88008769
version "16.13.1"
88018770
resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4"
88028771
integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==
@@ -8816,34 +8785,20 @@ react-refresh@^0.10.0:
88168785
resolved "https://registry.yarnpkg.com/react-refresh/-/react-refresh-0.10.0.tgz#2f536c9660c0b9b1d500684d9e52a65e7404f7e3"
88178786
integrity sha512-PgidR3wST3dDYKr6b4pJoqQFpPGNKDSCDx4cZoshjXipw3LzO7mG1My2pwEzz2JVkF+inx3xRpDeQLFQGH/hsQ==
88188787

8819-
react-router-dom@^5.1.2:
8820-
version "5.1.2"
8821-
resolved "https://registry.yarnpkg.com/react-router-dom/-/react-router-dom-5.1.2.tgz#06701b834352f44d37fbb6311f870f84c76b9c18"
8822-
integrity sha512-7BPHAaIwWpZS074UKaw1FjVdZBSVWEk8IuDXdB+OkLb8vd/WRQIpA4ag9WQk61aEfQs47wHyjWUoUGGZxpQXew==
8788+
react-router-dom@^6.3.0:
8789+
version "6.3.0"
8790+
resolved "https://registry.yarnpkg.com/react-router-dom/-/react-router-dom-6.3.0.tgz#a0216da813454e521905b5fa55e0e5176123f43d"
8791+
integrity sha512-uaJj7LKytRxZNQV8+RbzJWnJ8K2nPsOOEuX7aQstlMZKQT0164C+X2w6bnkqU3sjtLvpd5ojrezAyfZ1+0sStw==
88238792
dependencies:
8824-
"@babel/runtime" "^7.1.2"
8825-
history "^4.9.0"
8826-
loose-envify "^1.3.1"
8827-
prop-types "^15.6.2"
8828-
react-router "5.1.2"
8829-
tiny-invariant "^1.0.2"
8830-
tiny-warning "^1.0.0"
8793+
history "^5.2.0"
8794+
react-router "6.3.0"
88318795

8832-
react-router@5.1.2:
8833-
version "5.1.2"
8834-
resolved "https://registry.yarnpkg.com/react-router/-/react-router-5.1.2.tgz#6ea51d789cb36a6be1ba5f7c0d48dd9e817d3418"
8835-
integrity sha512-yjEuMFy1ONK246B+rsa0cUam5OeAQ8pyclRDgpxuSCrAlJ1qN9uZ5IgyKC7gQg0w8OM50NXHEegPh/ks9YuR2A==
8836-
dependencies:
8837-
"@babel/runtime" "^7.1.2"
8838-
history "^4.9.0"
8839-
hoist-non-react-statics "^3.1.0"
8840-
loose-envify "^1.3.1"
8841-
mini-create-react-context "^0.3.0"
8842-
path-to-regexp "^1.7.0"
8843-
prop-types "^15.6.2"
8844-
react-is "^16.6.0"
8845-
tiny-invariant "^1.0.2"
8846-
tiny-warning "^1.0.0"
8796+
react-router@6.3.0:
8797+
version "6.3.0"
8798+
resolved "https://registry.yarnpkg.com/react-router/-/react-router-6.3.0.tgz#3970cc64b4cb4eae0c1ea5203a80334fdd175557"
8799+
integrity sha512-7Wh1DzVQ+tlFjkeo+ujvjSqSJmkt1+8JO+T5xklPlgrh70y7ogx75ODRW0ThWhY7S+6yEDks8TYrtQe/aoboBQ==
8800+
dependencies:
8801+
history "^5.2.0"
88478802

88488803
react-scripts@^5.0.0-next.37:
88498804
version "5.0.0-next.37"
@@ -9185,11 +9140,6 @@ resolve-from@^5.0.0:
91859140
resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69"
91869141
integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==
91879142

9188-
resolve-pathname@^3.0.0:
9189-
version "3.0.0"
9190-
resolved "https://registry.yarnpkg.com/resolve-pathname/-/resolve-pathname-3.0.0.tgz#99d02224d3cf263689becbb393bc560313025dcd"
9191-
integrity sha512-C7rARubxI8bXFNB/hqcp/4iUeIXJhJZvFPFPiSPRnhU5UPxzMFIl+2E6yY6c4k9giDJAhtV+enfA+G89N6Csng==
9192-
91939143
resolve-protobuf-schema@^2.1.0:
91949144
version "2.1.0"
91959145
resolved "https://registry.yarnpkg.com/resolve-protobuf-schema/-/resolve-protobuf-schema-2.1.0.tgz#9ca9a9e69cf192bbdaf1006ec1973948aa4a3758"
@@ -10153,16 +10103,6 @@ timsort@^0.3.0:
1015310103
resolved "https://registry.yarnpkg.com/timsort/-/timsort-0.3.0.tgz#405411a8e7e6339fe64db9a234de11dc31e02bd4"
1015410104
integrity sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q=
1015510105

10156-
tiny-invariant@^1.0.2:
10157-
version "1.1.0"
10158-
resolved "https://registry.yarnpkg.com/tiny-invariant/-/tiny-invariant-1.1.0.tgz#634c5f8efdc27714b7f386c35e6760991d230875"
10159-
integrity sha512-ytxQvrb1cPc9WBEI/HSeYYoGD0kWnGEOR8RY6KomWLBVhqz0RgTwVO9dLrGz7dC+nN9llyI7OKAgRq8Vq4ZBSw==
10160-
10161-
tiny-warning@^1.0.0, tiny-warning@^1.0.2:
10162-
version "1.0.3"
10163-
resolved "https://registry.yarnpkg.com/tiny-warning/-/tiny-warning-1.0.3.tgz#94a30db453df4c643d0fd566060d60a875d84754"
10164-
integrity sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==
10165-
1016610106
tinyqueue@^2.0.3:
1016710107
version "2.0.3"
1016810108
resolved "https://registry.yarnpkg.com/tinyqueue/-/tinyqueue-2.0.3.tgz#64d8492ebf39e7801d7bd34062e29b45b2035f08"
@@ -10544,11 +10484,6 @@ validate-npm-package-license@^3.0.1:
1054410484
spdx-correct "^3.0.0"
1054510485
spdx-expression-parse "^3.0.0"
1054610486

10547-
value-equal@^1.0.1:
10548-
version "1.0.1"
10549-
resolved "https://registry.yarnpkg.com/value-equal/-/value-equal-1.0.1.tgz#1e0b794c734c5c0cade179c437d356d931a34d6c"
10550-
integrity sha512-NOJ6JZCAWr0zlxZt+xqCHNTEKOsrks2HQd4MqhP1qy4z1SkbEP467eNx6TgDKXMvUOb+OENfJCZwM+16n7fRfw==
10551-
1055210487
vary@~1.1.2:
1055310488
version "1.1.2"
1055410489
resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc"

0 commit comments

Comments
 (0)