diff --git a/app/spa/package-lock.json b/app/spa/package-lock.json index c73476ba6..ab67098cf 100644 --- a/app/spa/package-lock.json +++ b/app/spa/package-lock.json @@ -24,21 +24,19 @@ "@testing-library/react": "^11.2.7", "@testing-library/user-event": "^12.8.3", "@types/node": "^12.20.37", - "@types/react": "^17.0.37", "@types/react-csv": "^1.1.2", - "@types/react-dom": "^17.0.11", "@types/react-helmet": "^6.1.4", "currency.js": "^2.0.4", "date-fns": "^2.28.0", "graphql": "^16.0.1", "i18next-resources-to-backend": "^1.0.0", "material-ui-confirm": "^3.0.3", - "react": "^17.0.2", + "react": "^18.0.0", "react-component-export-image": "^1.0.6", "react-cookie": "^4.1.1", "react-csv": "^2.2.2", "react-date-picker": "^8.4.0", - "react-dom": "^17.0.2", + "react-dom": "^18.0.0", "react-helmet": "^6.1.0", "react-hook-form": "^7.53.2", "react-i18next": "^15.2.0", @@ -50,6 +48,8 @@ "devDependencies": { "@babel/plugin-transform-private-property-in-object": "^7.25.9", "@types/jest": "^27.4.0", + "@types/react": "^18.3.16", + "@types/react-dom": "^18.3.5", "lint-staged": "^12.1.2", "npm-watch": "^0.11.0", "prettier": "^2.5.1", @@ -3722,22 +3722,6 @@ "react": ">= 16.14.0 < 19.0.0" } }, - "node_modules/@nivo/annotations/node_modules/@react-spring/web": { - "version": "9.7.5", - "resolved": "https://registry.npmjs.org/@react-spring/web/-/web-9.7.5.tgz", - "integrity": "sha512-lmvqGwpe+CSttsWNZVr+Dg62adtKhauGwLyGE/RRyZ8AAMLgb9x3NDMA5RMElXo+IMyTkPp7nxTB8ZQlmhb6JQ==", - "license": "MIT", - "dependencies": { - "@react-spring/animated": "~9.7.5", - "@react-spring/core": "~9.7.5", - "@react-spring/shared": "~9.7.5", - "@react-spring/types": "~9.7.5" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0", - "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0" - } - }, "node_modules/@nivo/arcs": { "version": "0.88.0", "resolved": "https://registry.npmjs.org/@nivo/arcs/-/arcs-0.88.0.tgz", @@ -3754,22 +3738,6 @@ "react": ">= 16.14.0 < 19.0.0" } }, - "node_modules/@nivo/arcs/node_modules/@react-spring/web": { - "version": "9.7.5", - "resolved": "https://registry.npmjs.org/@react-spring/web/-/web-9.7.5.tgz", - "integrity": "sha512-lmvqGwpe+CSttsWNZVr+Dg62adtKhauGwLyGE/RRyZ8AAMLgb9x3NDMA5RMElXo+IMyTkPp7nxTB8ZQlmhb6JQ==", - "license": "MIT", - "dependencies": { - "@react-spring/animated": "~9.7.5", - "@react-spring/core": "~9.7.5", - "@react-spring/shared": "~9.7.5", - "@react-spring/types": "~9.7.5" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0", - "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0" - } - }, "node_modules/@nivo/axes": { "version": "0.88.0", "resolved": "https://registry.npmjs.org/@nivo/axes/-/axes-0.88.0.tgz", @@ -3788,22 +3756,6 @@ "react": ">= 16.14.0 < 19.0.0" } }, - "node_modules/@nivo/axes/node_modules/@react-spring/web": { - "version": "9.7.5", - "resolved": "https://registry.npmjs.org/@react-spring/web/-/web-9.7.5.tgz", - "integrity": "sha512-lmvqGwpe+CSttsWNZVr+Dg62adtKhauGwLyGE/RRyZ8AAMLgb9x3NDMA5RMElXo+IMyTkPp7nxTB8ZQlmhb6JQ==", - "license": "MIT", - "dependencies": { - "@react-spring/animated": "~9.7.5", - "@react-spring/core": "~9.7.5", - "@react-spring/shared": "~9.7.5", - "@react-spring/types": "~9.7.5" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0", - "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0" - } - }, "node_modules/@nivo/bar": { "version": "0.88.0", "resolved": "https://registry.npmjs.org/@nivo/bar/-/bar-0.88.0.tgz", @@ -3828,22 +3780,6 @@ "react": ">= 16.14.0 < 19.0.0" } }, - "node_modules/@nivo/bar/node_modules/@react-spring/web": { - "version": "9.7.5", - "resolved": "https://registry.npmjs.org/@react-spring/web/-/web-9.7.5.tgz", - "integrity": "sha512-lmvqGwpe+CSttsWNZVr+Dg62adtKhauGwLyGE/RRyZ8AAMLgb9x3NDMA5RMElXo+IMyTkPp7nxTB8ZQlmhb6JQ==", - "license": "MIT", - "dependencies": { - "@react-spring/animated": "~9.7.5", - "@react-spring/core": "~9.7.5", - "@react-spring/shared": "~9.7.5", - "@react-spring/types": "~9.7.5" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0", - "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0" - } - }, "node_modules/@nivo/colors": { "version": "0.88.0", "resolved": "https://registry.npmjs.org/@nivo/colors/-/colors-0.88.0.tgz", @@ -3901,22 +3837,6 @@ "react": ">= 16.14.0 < 19.0.0" } }, - "node_modules/@nivo/core/node_modules/@react-spring/web": { - "version": "9.7.5", - "resolved": "https://registry.npmjs.org/@react-spring/web/-/web-9.7.5.tgz", - "integrity": "sha512-lmvqGwpe+CSttsWNZVr+Dg62adtKhauGwLyGE/RRyZ8AAMLgb9x3NDMA5RMElXo+IMyTkPp7nxTB8ZQlmhb6JQ==", - "license": "MIT", - "dependencies": { - "@react-spring/animated": "~9.7.5", - "@react-spring/core": "~9.7.5", - "@react-spring/shared": "~9.7.5", - "@react-spring/types": "~9.7.5" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0", - "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0" - } - }, "node_modules/@nivo/core/node_modules/d3-color": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/d3-color/-/d3-color-3.1.0.tgz", @@ -3974,22 +3894,6 @@ "react": ">= 16.14.0 < 19.0.0" } }, - "node_modules/@nivo/line/node_modules/@react-spring/web": { - "version": "9.7.5", - "resolved": "https://registry.npmjs.org/@react-spring/web/-/web-9.7.5.tgz", - "integrity": "sha512-lmvqGwpe+CSttsWNZVr+Dg62adtKhauGwLyGE/RRyZ8AAMLgb9x3NDMA5RMElXo+IMyTkPp7nxTB8ZQlmhb6JQ==", - "license": "MIT", - "dependencies": { - "@react-spring/animated": "~9.7.5", - "@react-spring/core": "~9.7.5", - "@react-spring/shared": "~9.7.5", - "@react-spring/types": "~9.7.5" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0", - "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0" - } - }, "node_modules/@nivo/pie": { "version": "0.88.0", "resolved": "https://registry.npmjs.org/@nivo/pie/-/pie-0.88.0.tgz", @@ -4060,22 +3964,6 @@ "react": ">= 16.14.0 < 19.0.0" } }, - "node_modules/@nivo/scatterplot/node_modules/@react-spring/web": { - "version": "9.7.5", - "resolved": "https://registry.npmjs.org/@react-spring/web/-/web-9.7.5.tgz", - "integrity": "sha512-lmvqGwpe+CSttsWNZVr+Dg62adtKhauGwLyGE/RRyZ8AAMLgb9x3NDMA5RMElXo+IMyTkPp7nxTB8ZQlmhb6JQ==", - "license": "MIT", - "dependencies": { - "@react-spring/animated": "~9.7.5", - "@react-spring/core": "~9.7.5", - "@react-spring/shared": "~9.7.5", - "@react-spring/types": "~9.7.5" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0", - "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0" - } - }, "node_modules/@nivo/tooltip": { "version": "0.88.0", "resolved": "https://registry.npmjs.org/@nivo/tooltip/-/tooltip-0.88.0.tgz", @@ -4089,22 +3977,6 @@ "react": ">= 16.14.0 < 19.0.0" } }, - "node_modules/@nivo/tooltip/node_modules/@react-spring/web": { - "version": "9.7.5", - "resolved": "https://registry.npmjs.org/@react-spring/web/-/web-9.7.5.tgz", - "integrity": "sha512-lmvqGwpe+CSttsWNZVr+Dg62adtKhauGwLyGE/RRyZ8AAMLgb9x3NDMA5RMElXo+IMyTkPp7nxTB8ZQlmhb6JQ==", - "license": "MIT", - "dependencies": { - "@react-spring/animated": "~9.7.5", - "@react-spring/core": "~9.7.5", - "@react-spring/shared": "~9.7.5", - "@react-spring/types": "~9.7.5" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0", - "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0" - } - }, "node_modules/@nivo/voronoi": { "version": "0.88.0", "resolved": "https://registry.npmjs.org/@nivo/voronoi/-/voronoi-0.88.0.tgz", @@ -4290,6 +4162,22 @@ "integrity": "sha512-HVj7LrZ4ReHWBimBvu2SKND3cDVUPWKLqRTmWe/fNY6o1owGOX0cAHbdPDTMelgBlVbrTKrre6lFkhqGZErK/g==", "license": "MIT" }, + "node_modules/@react-spring/web": { + "version": "9.7.5", + "resolved": "https://registry.npmjs.org/@react-spring/web/-/web-9.7.5.tgz", + "integrity": "sha512-lmvqGwpe+CSttsWNZVr+Dg62adtKhauGwLyGE/RRyZ8AAMLgb9x3NDMA5RMElXo+IMyTkPp7nxTB8ZQlmhb6JQ==", + "license": "MIT", + "dependencies": { + "@react-spring/animated": "~9.7.5", + "@react-spring/core": "~9.7.5", + "@react-spring/shared": "~9.7.5", + "@react-spring/types": "~9.7.5" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0", + "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0" + } + }, "node_modules/@remix-run/router": { "version": "1.21.0", "resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.21.0.tgz", @@ -5202,13 +5090,12 @@ "license": "MIT" }, "node_modules/@types/react": { - "version": "17.0.83", - "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.83.tgz", - "integrity": "sha512-l0m4ArKJvmFtR4e8UmKrj1pB4tUgOhJITf+mADyF/p69Ts1YAR/E+G9XEM0mHXKVRa1dQNHseyyDNzeuAXfXQw==", + "version": "18.3.16", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.16.tgz", + "integrity": "sha512-oh8AMIC4Y2ciKufU8hnKgs+ufgbA/dhPTACaZPM86AbwX9QwnFtSoPWEeRUj8fge+v6kFt78BXcDhAU1SrrAsw==", "license": "MIT", "dependencies": { "@types/prop-types": "*", - "@types/scheduler": "^0.16", "csstype": "^3.0.2" } }, @@ -5231,12 +5118,13 @@ } }, "node_modules/@types/react-dom": { - "version": "17.0.25", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-17.0.25.tgz", - "integrity": "sha512-urx7A7UxkZQmThYA4So0NelOVjx3V4rNFVJwp0WZlbIK5eM4rNJDiN3R/E9ix0MBh6kAEojk/9YL+Te6D9zHNA==", + "version": "18.3.5", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.3.5.tgz", + "integrity": "sha512-P4t6saawp+b/dFrUr2cvkVsfvPguwsxtH6dNIYRllMsefqFzkZk5UIjzyDOv5g1dXIPdG4Sp1yCR4Z6RCUsG/Q==", + "devOptional": true, "license": "MIT", - "dependencies": { - "@types/react": "^17" + "peerDependencies": { + "@types/react": "^18.0.0" } }, "node_modules/@types/react-helmet": { @@ -5272,12 +5160,6 @@ "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==", "license": "MIT" }, - "node_modules/@types/scheduler": { - "version": "0.16.8", - "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.8.tgz", - "integrity": "sha512-WZLiwShhwLRmeV6zH+GkbOFT6Z6VklCItrDioxUnv+u4Ll+8vKeFySoFyK/0ctcRpOmwAicELfmys1sDc/Rw+A==", - "license": "MIT" - }, "node_modules/@types/semver": { "version": "7.5.8", "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz", @@ -16103,13 +15985,12 @@ } }, "node_modules/react": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react/-/react-17.0.2.tgz", - "integrity": "sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==", + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz", + "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==", "license": "MIT", "dependencies": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1" + "loose-envify": "^1.1.0" }, "engines": { "node": ">=0.10.0" @@ -16212,6 +16093,34 @@ "react-dom": "^16.3.0 || ^17.0.0 || ^18.0.0" } }, + "node_modules/react-date-picker/node_modules/react-fit": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/react-fit/-/react-fit-1.7.1.tgz", + "integrity": "sha512-y/TYovCCBzfIwRJsbLj0rH4Es40wPQhU5GPPq9GlbdF09b0OdzTdMSkBza0QixSlgFzTm6dkM7oTFzaVvaBx+w==", + "license": "MIT", + "dependencies": { + "detect-element-overflow": "^1.4.0", + "prop-types": "^15.6.0", + "tiny-warning": "^1.0.0" + }, + "funding": { + "url": "https://github.com/wojtekmaj/react-fit?sponsor=1" + }, + "peerDependencies": { + "@types/react": "^16.8.0 || ^17.0.0 || ^18.0.0", + "@types/react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0", + "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, "node_modules/react-dev-utils": { "version": "12.0.1", "resolved": "https://registry.npmjs.org/react-dev-utils/-/react-dev-utils-12.0.1.tgz", @@ -16318,17 +16227,16 @@ } }, "node_modules/react-dom": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-17.0.2.tgz", - "integrity": "sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==", + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz", + "integrity": "sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==", "license": "MIT", "dependencies": { "loose-envify": "^1.1.0", - "object-assign": "^4.1.1", - "scheduler": "^0.20.2" + "scheduler": "^0.23.2" }, "peerDependencies": { - "react": "17.0.2" + "react": "^18.3.1" } }, "node_modules/react-error-overlay": { @@ -16343,34 +16251,6 @@ "integrity": "sha512-nsO+KSNgo1SbJqJEYRE9ERzo7YtYbou/OqjSQKxV7jcKox7+usiUVZOAC+XnDOABXggQTno0Y1CpVnuWEc1boQ==", "license": "MIT" }, - "node_modules/react-fit": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/react-fit/-/react-fit-1.7.1.tgz", - "integrity": "sha512-y/TYovCCBzfIwRJsbLj0rH4Es40wPQhU5GPPq9GlbdF09b0OdzTdMSkBza0QixSlgFzTm6dkM7oTFzaVvaBx+w==", - "license": "MIT", - "dependencies": { - "detect-element-overflow": "^1.4.0", - "prop-types": "^15.6.0", - "tiny-warning": "^1.0.0" - }, - "funding": { - "url": "https://github.com/wojtekmaj/react-fit?sponsor=1" - }, - "peerDependencies": { - "@types/react": "^16.8.0 || ^17.0.0 || ^18.0.0", - "@types/react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0", - "react": "^16.8.0 || ^17.0.0 || ^18.0.0", - "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, "node_modules/react-helmet": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/react-helmet/-/react-helmet-6.1.0.tgz", @@ -17225,13 +17105,12 @@ } }, "node_modules/scheduler": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.20.2.tgz", - "integrity": "sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==", + "version": "0.23.2", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz", + "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==", "license": "MIT", "dependencies": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1" + "loose-envify": "^1.1.0" } }, "node_modules/schema-utils": { diff --git a/app/spa/package.json b/app/spa/package.json index b9e3878e6..6b68c8711 100644 --- a/app/spa/package.json +++ b/app/spa/package.json @@ -19,21 +19,19 @@ "@testing-library/react": "^11.2.7", "@testing-library/user-event": "^12.8.3", "@types/node": "^12.20.37", - "@types/react": "^17.0.37", "@types/react-csv": "^1.1.2", - "@types/react-dom": "^17.0.11", "@types/react-helmet": "^6.1.4", "currency.js": "^2.0.4", "date-fns": "^2.28.0", "graphql": "^16.0.1", "i18next-resources-to-backend": "^1.0.0", "material-ui-confirm": "^3.0.3", - "react": "^17.0.2", + "react": "^18.0.0", "react-component-export-image": "^1.0.6", "react-cookie": "^4.1.1", "react-csv": "^2.2.2", "react-date-picker": "^8.4.0", - "react-dom": "^17.0.2", + "react-dom": "^18.0.0", "react-helmet": "^6.1.0", "react-hook-form": "^7.53.2", "react-i18next": "^15.2.0", @@ -111,6 +109,8 @@ "devDependencies": { "@babel/plugin-transform-private-property-in-object": "^7.25.9", "@types/jest": "^27.4.0", + "@types/react": "^18.3.16", + "@types/react-dom": "^18.3.5", "lint-staged": "^12.1.2", "npm-watch": "^0.11.0", "prettier": "^2.5.1", diff --git a/app/spa/src/components/Projects/ProjectPage.tsx b/app/spa/src/components/Projects/ProjectPage.tsx index 756b78fba..79b236ba5 100644 --- a/app/spa/src/components/Projects/ProjectPage.tsx +++ b/app/spa/src/components/Projects/ProjectPage.tsx @@ -26,7 +26,6 @@ type ProjectPageProps = { pageName: string children: ReactElement | ReactElement[] loading?: boolean - dashboard?: boolean } const cardTypeByRisk = (risk: number) => { @@ -59,7 +58,6 @@ export const ProjectPage = ({ pageName, children, loading, - dashboard = false, }: ProjectPageProps) => { const { pathname } = useLocation() const { t } = useTranslation(["generalProjectPage"]) diff --git a/app/spa/src/components/charts/ScatterChart.tsx b/app/spa/src/components/charts/ScatterChart.tsx index 8b571e3f3..e64c23908 100644 --- a/app/spa/src/components/charts/ScatterChart.tsx +++ b/app/spa/src/components/charts/ScatterChart.tsx @@ -122,9 +122,11 @@ export const ScatterChart = ({ markers={chartMarkers} tooltip={({ node }) => ( - {node?.data.x} -
- Lead time: {node?.data.y} {t("days")} + <> + {node?.data.x} +
+ Lead time: {node?.data.y} {t("days")} +
)} enableGridX={false} diff --git a/app/spa/src/pages/Projects/Project.tsx b/app/spa/src/pages/Projects/Project.tsx index 616684044..3ea61586a 100644 --- a/app/spa/src/pages/Projects/Project.tsx +++ b/app/spa/src/pages/Projects/Project.tsx @@ -7,7 +7,7 @@ const Project = () => { const { t } = useTranslation(["projects"]) return ( - +