diff --git a/client/pages/accounts/account.jsx b/client/pages/accounts/account.jsx index fb36b56..abc7248 100644 --- a/client/pages/accounts/account.jsx +++ b/client/pages/accounts/account.jsx @@ -1,5 +1,5 @@ import React, { useEffect, useContext, useRef } from 'react'; -import { Link, Navigate } from 'react-router-dom'; +import { Link, Navigate } from 'react-router'; import ApplyToBody from '../utilities/apply-to-body'; diff --git a/client/pages/accounts/login.jsx b/client/pages/accounts/login.jsx index c8a8af2..dd4608e 100644 --- a/client/pages/accounts/login.jsx +++ b/client/pages/accounts/login.jsx @@ -1,5 +1,5 @@ import React, { useContext, useRef } from 'react'; -import { Link, Navigate } from 'react-router-dom'; +import { Link, Navigate } from 'react-router'; import ApplyToBody from '../utilities/apply-to-body'; diff --git a/client/pages/accounts/panels/logout.jsx b/client/pages/accounts/panels/logout.jsx index d1623bd..7ffba3c 100644 --- a/client/pages/accounts/panels/logout.jsx +++ b/client/pages/accounts/panels/logout.jsx @@ -1,5 +1,5 @@ import React, { useContext, useRef } from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { TokenContext } from '../../utilities/token-provider'; diff --git a/client/pages/accounts/recover.jsx b/client/pages/accounts/recover.jsx index 434698f..4ebf24a 100644 --- a/client/pages/accounts/recover.jsx +++ b/client/pages/accounts/recover.jsx @@ -1,5 +1,5 @@ import React, { useContext, useRef } from 'react'; -import { Link, useNavigate } from 'react-router-dom'; +import { Link, useNavigate } from 'react-router'; import ApplyToBody from '../utilities/apply-to-body'; diff --git a/client/pages/accounts/reset.jsx b/client/pages/accounts/reset.jsx index 93b591f..3b16e43 100644 --- a/client/pages/accounts/reset.jsx +++ b/client/pages/accounts/reset.jsx @@ -1,5 +1,5 @@ import React, { useContext, useRef } from 'react'; -import { Link, useNavigate, useSearchParams } from 'react-router-dom'; +import { Link, useNavigate, useSearchParams } from 'react-router'; import ApplyToBody from '../utilities/apply-to-body'; diff --git a/client/pages/accounts/signup.jsx b/client/pages/accounts/signup.jsx index a2f4727..07555b0 100644 --- a/client/pages/accounts/signup.jsx +++ b/client/pages/accounts/signup.jsx @@ -1,5 +1,5 @@ import React, { useContext, useRef } from 'react'; -import { Link, useNavigate } from 'react-router-dom'; +import { Link, useNavigate } from 'react-router'; import ApplyToBody from '../utilities/apply-to-body'; diff --git a/client/pages/administration/admin.jsx b/client/pages/administration/admin.jsx index cba4c0d..7661080 100644 --- a/client/pages/administration/admin.jsx +++ b/client/pages/administration/admin.jsx @@ -1,5 +1,5 @@ import React, { useContext } from 'react'; -import { Link, Navigate } from 'react-router-dom'; +import { Link, Navigate } from 'react-router'; import ApplyToBody from '../utilities/apply-to-body'; diff --git a/client/pages/administration/mod.jsx b/client/pages/administration/mod.jsx index 419393f..3963ce6 100644 --- a/client/pages/administration/mod.jsx +++ b/client/pages/administration/mod.jsx @@ -1,5 +1,5 @@ import React, { useContext } from 'react'; -import { Link, Navigate } from 'react-router-dom'; +import { Link, Navigate } from 'react-router'; import ApplyToBody from '../utilities/apply-to-body'; diff --git a/client/pages/app.jsx b/client/pages/app.jsx index 78a35b8..eba17bb 100644 --- a/client/pages/app.jsx +++ b/client/pages/app.jsx @@ -1,6 +1,6 @@ //react import React, { useContext, Suspense, lazy } from 'react'; -import { BrowserRouter, Routes, Route } from 'react-router-dom'; +import { BrowserRouter, Routes, Route } from 'react-router'; import { TokenContext } from './utilities/token-provider'; //styling diff --git a/client/pages/dashboard.jsx b/client/pages/dashboard.jsx index d67dd20..e0b226e 100644 --- a/client/pages/dashboard.jsx +++ b/client/pages/dashboard.jsx @@ -1,5 +1,5 @@ import React, { useContext } from 'react'; -import { Link, Navigate } from 'react-router-dom'; +import { Link, Navigate } from 'react-router'; import ApplyToBody from './utilities/apply-to-body'; diff --git a/client/pages/homepage.jsx b/client/pages/homepage.jsx index fcb74b2..50dde7b 100644 --- a/client/pages/homepage.jsx +++ b/client/pages/homepage.jsx @@ -1,5 +1,5 @@ import React, { useContext } from 'react'; -import { Link, Navigate } from 'react-router-dom'; +import { Link, Navigate } from 'react-router'; import ApplyToBody from './utilities/apply-to-body'; diff --git a/client/pages/not-found.jsx b/client/pages/not-found.jsx index 5621bb4..bfe73d7 100644 --- a/client/pages/not-found.jsx +++ b/client/pages/not-found.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import ApplyToBody from './utilities/apply-to-body'; diff --git a/client/pages/panels/footer.jsx b/client/pages/panels/footer.jsx index 3588c97..52b3d63 100644 --- a/client/pages/panels/footer.jsx +++ b/client/pages/panels/footer.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; const Break = () => { return ( diff --git a/client/pages/static/credits.jsx b/client/pages/static/credits.jsx index 588feb5..6526cf2 100644 --- a/client/pages/static/credits.jsx +++ b/client/pages/static/credits.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; const Static = props => { return ( diff --git a/client/pages/static/privacy-policy.jsx b/client/pages/static/privacy-policy.jsx index f585d2f..d5f516a 100644 --- a/client/pages/static/privacy-policy.jsx +++ b/client/pages/static/privacy-policy.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; const Static = props => { return ( diff --git a/package-lock.json b/package-lock.json index df1ac98..7f22b8d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "mern-template", - "version": "1.5.1", + "version": "1.5.4", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "mern-template", - "version": "1.5.1", + "version": "1.5.4", "license": "Zlib", "dependencies": { "@babel/core": "^7.28.4", @@ -26,7 +26,6 @@ "react": "^19.1.1", "react-dom": "^19.1.1", "react-router": "^7.7.1", - "react-router-dom": "^7.9.1", "react-select": "^5.10.2", "sequelize": "^6.37.7", "socket.io-client": "^4.8.1", @@ -1783,9 +1782,9 @@ "license": "MIT" }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.30", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.30.tgz", - "integrity": "sha512-GQ7Nw5G2lTu/BtHTKfXhKHok2WGetd4XYcVKGx00SjAk8GMwgJM3zr6zORiPGuOE+/vkc90KtTosSSvaCjKb2Q==", + "version": "0.3.31", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz", + "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==", "license": "MIT", "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", @@ -1844,9 +1843,9 @@ } }, "node_modules/@jsonjoy.com/json-pack": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@jsonjoy.com/json-pack/-/json-pack-1.11.0.tgz", - "integrity": "sha512-nLqSTAYwpk+5ZQIoVp7pfd/oSKNWlEdvTq2LzVA4r2wtWZg6v+5u0VgBOaDJuUfNOuw/4Ysq6glN5QKSrOCgrA==", + "version": "1.14.0", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/json-pack/-/json-pack-1.14.0.tgz", + "integrity": "sha512-LpWbYgVnKzphN5S6uss4M25jJ/9+m6q6UJoeN6zTkK4xAGhKsiBRPVeF7OYMWonn5repMQbE5vieRXcMUrKDKw==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -2098,12 +2097,12 @@ "license": "MIT" }, "node_modules/@types/node": { - "version": "24.3.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-24.3.1.tgz", - "integrity": "sha512-3vXmQDXy+woz+gnrTvuvNrPzekOi+Ds0ReMxw0LzBiK3a+1k0kQn9f2NWk+lgD4rJehFUmYy2gMhJ2ZI+7YP9g==", + "version": "24.5.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.5.2.tgz", + "integrity": "sha512-FYxk1I7wPv3K2XBaoyH2cTnocQEu8AOZ60hPbsyukMPLv5/5qr7V1i8PLHdl6Zf87I+xZXFvPCXYjiTFq+YSDQ==", "license": "MIT", "dependencies": { - "undici-types": "~7.10.0" + "undici-types": "~7.12.0" } }, "node_modules/@types/node-forge": { @@ -2137,9 +2136,9 @@ "license": "MIT" }, "node_modules/@types/react": { - "version": "19.1.12", - "resolved": "https://registry.npmjs.org/@types/react/-/react-19.1.12.tgz", - "integrity": "sha512-cMoR+FoAf/Jyq6+Df2/Z41jISvGZZ2eTlnsaJRptmZ76Caldwy1odD4xTr/gNV9VLj0AWgg/nmkevIyUfIIq5w==", + "version": "19.1.13", + "resolved": "https://registry.npmjs.org/@types/react/-/react-19.1.13.tgz", + "integrity": "sha512-hHkbU/eoO3EG5/MZkuFSKmYqPbSVk5byPFa3e7y/8TybHiLMACgI8seVYlicwk7H5K/rI2px9xrQp/C+AUDTiQ==", "license": "MIT", "peer": true, "dependencies": { @@ -2672,6 +2671,15 @@ "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "license": "MIT" }, + "node_modules/baseline-browser-mapping": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.8.5.tgz", + "integrity": "sha512-TiU4qUT9jdCuh4aVOG7H1QozyeI2sZRqoRPdqBIaslfNt4WUSanRBueAwl2x5jt4rXBMim3lIN2x6yT8PDi24Q==", + "license": "Apache-2.0", + "bin": { + "baseline-browser-mapping": "dist/cli.js" + } + }, "node_modules/batch": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", @@ -2753,9 +2761,9 @@ } }, "node_modules/browserslist": { - "version": "4.25.4", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.25.4.tgz", - "integrity": "sha512-4jYpcjabC606xJ3kw2QwGEZKX0Aw7sgQdZCvIK9dhVSPh76BKo+C+btT1RRofH7B+8iNpEbgGNVWiLki5q93yg==", + "version": "4.26.2", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.26.2.tgz", + "integrity": "sha512-ECFzp6uFOSB+dcZ5BK/IBaGWssbSYBHvuMeMt3MMFyhI0Z8SqGgEkBLARgpRH3hutIgPVsALcMwbDrJqPxQ65A==", "funding": [ { "type": "opencollective", @@ -2772,9 +2780,10 @@ ], "license": "MIT", "dependencies": { - "caniuse-lite": "^1.0.30001737", - "electron-to-chromium": "^1.5.211", - "node-releases": "^2.0.19", + "baseline-browser-mapping": "^2.8.3", + "caniuse-lite": "^1.0.30001741", + "electron-to-chromium": "^1.5.218", + "node-releases": "^2.0.21", "update-browserslist-db": "^1.1.3" }, "bin": { @@ -2864,9 +2873,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001741", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001741.tgz", - "integrity": "sha512-QGUGitqsc8ARjLdgAfxETDhRbJ0REsP6O3I96TAth/mVjh2cYzN2u+3AzPP3aVSm2FehEItaJw1xd+IGBXWeSw==", + "version": "1.0.30001743", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001743.tgz", + "integrity": "sha512-e6Ojr7RV14Un7dz6ASD0aZDmQPT/A+eZU+nuTNfjqmRrmkmQlnTNWH0SKmqagx9PeW87UVqapSurtAXifmtdmw==", "funding": [ { "type": "opencollective", @@ -3356,9 +3365,9 @@ "license": "MIT" }, "node_modules/debug": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.1.tgz", - "integrity": "sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==", + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", "license": "MIT", "dependencies": { "ms": "^2.1.3" @@ -3611,9 +3620,9 @@ "license": "MIT" }, "node_modules/electron-to-chromium": { - "version": "1.5.215", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.215.tgz", - "integrity": "sha512-TIvGp57UpeNetj/wV/xpFNpWGb0b/ROw372lHPx5Aafx02gjTBtWnEEcaSX3W2dLM3OSdGGyHX/cHl01JQsLaQ==", + "version": "1.5.221", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.221.tgz", + "integrity": "sha512-/1hFJ39wkW01ogqSyYoA4goOXOtMRy6B+yvA1u42nnsEGtHzIzmk93aPISumVQeblj47JUHLC9coCjUxb1EvtQ==", "license": "ISC" }, "node_modules/emoji-regex": { @@ -3705,9 +3714,9 @@ } }, "node_modules/error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.4.tgz", + "integrity": "sha512-sqQamAnR14VgCr1A618A3sGrygcpK+HEbenA/HiEAkkUwcZIIB/tgWqHFxWgOyDh4nB4JCRimh79dR5Ywc9MDQ==", "license": "MIT", "dependencies": { "is-arrayish": "^0.2.1" @@ -4722,9 +4731,9 @@ } }, "node_modules/is-network-error": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-network-error/-/is-network-error-1.1.0.tgz", - "integrity": "sha512-tUdRRAnhT+OtCZR/LxZelH/C7QtjtFrTu5tXCA8pl55eTUElUHT+GPYV8MBMBvea/j+NxQqVt3LbWMRir7Gx9g==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/is-network-error/-/is-network-error-1.2.0.tgz", + "integrity": "sha512-32jdpRpJo8SeL7zOuBJbMLz/VTw9mDpTvcKzzR8DkXWsJbbE60gdiX8YOd0UAV6b8Skt+CMytzfgVVIRFidn0Q==", "dev": true, "license": "MIT", "engines": { @@ -5044,9 +5053,9 @@ } }, "node_modules/memfs": { - "version": "4.38.3", - "resolved": "https://registry.npmjs.org/memfs/-/memfs-4.38.3.tgz", - "integrity": "sha512-2s0E1tj016MQL6Eo6en0rNJnEWppbTAytbK7P0VPLtB9zA0xU7B522A1A0Tyz9usEkkWrSEDxIa/N7SdJWWAYg==", + "version": "4.42.0", + "resolved": "https://registry.npmjs.org/memfs/-/memfs-4.42.0.tgz", + "integrity": "sha512-RG+4HMGyIVp6UWDWbFmZ38yKrSzblPnfJu0PyPt0hw52KW4PPlPp+HdV4qZBG0hLDuYVnf8wfQT4NymKXnlQjA==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -5270,9 +5279,9 @@ } }, "node_modules/node-releases": { - "version": "2.0.20", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.20.tgz", - "integrity": "sha512-7gK6zSXEH6neM212JgfYFXe+GmZQM+fia5SsusuBIUgnPheLFBmIPhtFoAQRj8/7wASYQnbDlHPVwY0BefoFgA==", + "version": "2.0.21", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.21.tgz", + "integrity": "sha512-5b0pgg78U3hwXkCM8Z9b2FJdPZlr9Psr9V2gQPESdGHqbntyFJKFW4r5TeWGFzafGY3hzs1JC62VEQMbl1JFkw==", "license": "MIT" }, "node_modules/nodemon": { @@ -6018,22 +6027,6 @@ } } }, - "node_modules/react-router-dom": { - "version": "7.9.1", - "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-7.9.1.tgz", - "integrity": "sha512-U9WBQssBE9B1vmRjo9qTM7YRzfZ3lUxESIZnsf4VjR/lXYz9MHjvOxHzr/aUm4efpktbVOrF09rL/y4VHa8RMw==", - "license": "MIT", - "dependencies": { - "react-router": "7.9.1" - }, - "engines": { - "node": ">=20.0.0" - }, - "peerDependencies": { - "react": ">=18", - "react-dom": ">=18" - } - }, "node_modules/react-router/node_modules/cookie": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/cookie/-/cookie-1.0.2.tgz", @@ -6139,17 +6132,17 @@ } }, "node_modules/regexpu-core": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-6.2.0.tgz", - "integrity": "sha512-H66BPQMrv+V16t8xtmq+UC0CBpiTBA60V8ibS1QVReIp8T1z8hwFxqcGzm9K6lgsN7sB5edVH8a+ze6Fqm4weA==", + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-6.3.1.tgz", + "integrity": "sha512-DzcswPr252wEr7Qz8AyAVbfyBDKLoYp6eRA1We2Fa9qirRFSdtkP5sHr3yglDKy2BbA0fd2T+j/CUSKes3FeVQ==", "license": "MIT", "dependencies": { "regenerate": "^1.4.2", - "regenerate-unicode-properties": "^10.2.0", + "regenerate-unicode-properties": "^10.2.2", "regjsgen": "^0.8.0", "regjsparser": "^0.12.0", "unicode-match-property-ecmascript": "^2.0.0", - "unicode-match-property-value-ecmascript": "^2.1.0" + "unicode-match-property-value-ecmascript": "^2.2.1" }, "engines": { "node": ">=4" @@ -7285,9 +7278,9 @@ "license": "MIT" }, "node_modules/undici-types": { - "version": "7.10.0", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.10.0.tgz", - "integrity": "sha512-t5Fy/nfn+14LuOc2KNYg75vZqClpAiqscVvMygNnlsHBFpSXdJaYtXMcdNLpl/Qvc3P2cB3s6lOV51nqsFq4ag==", + "version": "7.12.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.12.0.tgz", + "integrity": "sha512-goOacqME2GYyOZZfb5Lgtu+1IDmAlAEu5xnD3+xTzS10hT0vzpf0SPjkXwAw9Jm+4n/mQGDP3LO8CPbYROeBfQ==", "license": "MIT" }, "node_modules/unicode-canonical-property-names-ecmascript": { @@ -7322,9 +7315,9 @@ } }, "node_modules/unicode-property-aliases-ecmascript": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", - "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.2.0.tgz", + "integrity": "sha512-hpbDzxUY9BFwX+UeBnxv3Sh1q7HFxj48DTmXchNgRa46lO8uj3/1iEn3MiNUYTg1g9ctIqXCCERn8gYZhHC5lQ==", "license": "MIT", "engines": { "node": ">=4" diff --git a/package.json b/package.json index 6bddd8b..00fa506 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "mern-template", - "version": "1.5.1", + "version": "1.5.4", "description": "A website template using the MERN stack.", "main": "server/server.js", "scripts": { @@ -41,7 +41,6 @@ "react": "^19.1.1", "react-dom": "^19.1.1", "react-router": "^7.7.1", - "react-router-dom": "^7.9.1", "react-select": "^5.10.2", "sequelize": "^6.37.7", "socket.io-client": "^4.8.1",