diff --git a/front/package-lock.json b/front/package-lock.json
index 0e34b12c392..a57cea88367 100644
--- a/front/package-lock.json
+++ b/front/package-lock.json
@@ -13,12 +13,12 @@
"@nivo/line": "^0.80.0",
"@openapi-contrib/openapi-schema-to-json-schema": "^5.1.0",
"@osrd-project/netzgrafik-frontend": "0.0.0-snapshot.37949a66933e8e1552c9b8e54f702ec491afd415",
- "@osrd-project/ui-core": "^0.0.56",
- "@osrd-project/ui-icons": "^0.0.56",
- "@osrd-project/ui-manchette": "^0.0.56",
- "@osrd-project/ui-manchette-with-spacetimechart": "^0.0.56",
- "@osrd-project/ui-spacetimechart": "^0.0.56",
- "@osrd-project/ui-speedspacechart": "^0.0.56",
+ "@osrd-project/ui-core": "^0.0.57",
+ "@osrd-project/ui-icons": "^0.0.57",
+ "@osrd-project/ui-manchette": "^0.0.57",
+ "@osrd-project/ui-manchette-with-spacetimechart": "^0.0.57",
+ "@osrd-project/ui-spacetimechart": "^0.0.57",
+ "@osrd-project/ui-speedspacechart": "^0.0.57",
"@react-pdf/renderer": "^3.4.2",
"@redux-devtools/extension": "^3.3.0",
"@reduxjs/toolkit": "^2.1.0",
@@ -1924,9 +1924,9 @@
"integrity": "sha512-lalH7CHnIQfaPLh+dYMLcpIYb7+MnCJWov7wnJ5DUTLTnt7WhrKR+Q+wXRpac4j1ehjEDdoeuy2KViAhVIMTKg=="
},
"node_modules/@osrd-project/ui-core": {
- "version": "0.0.56",
- "resolved": "https://registry.npmjs.org/@osrd-project/ui-core/-/ui-core-0.0.56.tgz",
- "integrity": "sha512-sdHViimD/FcNM3GtHuUFmqoLLnaNIMsr5F2TNFAZ4t4yVKKP/fy/TPJDnkXFMYsg20gMfGwRgEqsyVnIiSqXYg==",
+ "version": "0.0.57",
+ "resolved": "https://registry.npmjs.org/@osrd-project/ui-core/-/ui-core-0.0.57.tgz",
+ "integrity": "sha512-TPxr5fEezAh/8ronWK6L2yV6CBJIThrQkhZ4bGkRa1WMoSX71+dfVBa5zM0aMGSEhPYVW2pn3xKglI32PZz7Hw==",
"license": "LGPL-3.0-or-later",
"dependencies": {
"classnames": "^2.5.1",
@@ -1937,18 +1937,18 @@
}
},
"node_modules/@osrd-project/ui-icons": {
- "version": "0.0.56",
- "resolved": "https://registry.npmjs.org/@osrd-project/ui-icons/-/ui-icons-0.0.56.tgz",
- "integrity": "sha512-vxok7+1qGpNIq5g7FWSt9uCtaLrC0JqS5QItlCZPRSTP9ltJ0ruCMBH4ecloHZNRguTi8JzOXG8bCljD7wQWQQ==",
+ "version": "0.0.57",
+ "resolved": "https://registry.npmjs.org/@osrd-project/ui-icons/-/ui-icons-0.0.57.tgz",
+ "integrity": "sha512-BBVIldy6eBZ7euYsRK1QVbIvRAyMTlhnJcv3XQAo4M3TeH+zpKI0WRnenNUPbo5dFrHwtjwbQqcvDhroe2JaWQ==",
"license": "LGPL-3.0-or-later",
"peerDependencies": {
"react": ">=18.0"
}
},
"node_modules/@osrd-project/ui-manchette": {
- "version": "0.0.56",
- "resolved": "https://registry.npmjs.org/@osrd-project/ui-manchette/-/ui-manchette-0.0.56.tgz",
- "integrity": "sha512-JnGOLMLd8DAB+Y5f+1h+DhhmJ61tZUB8xrYUeX0a631i/EM5uNRizGyIQkncbVz1WnPdA9dDfwMLJTl+7NmPrg==",
+ "version": "0.0.57",
+ "resolved": "https://registry.npmjs.org/@osrd-project/ui-manchette/-/ui-manchette-0.0.57.tgz",
+ "integrity": "sha512-7U6ONFYxi+Gqtzut6RXmYcB0m9BSavn1aBq7oopHdY+4fsfgctyxWtrgrwq7e4Rd/sWsKfW5Ku1wlH+3W5Rk3A==",
"license": "LGPL-3.0-or-later",
"dependencies": {
"classnames": "^2.5.1",
@@ -1959,13 +1959,13 @@
}
},
"node_modules/@osrd-project/ui-manchette-with-spacetimechart": {
- "version": "0.0.56",
- "resolved": "https://registry.npmjs.org/@osrd-project/ui-manchette-with-spacetimechart/-/ui-manchette-with-spacetimechart-0.0.56.tgz",
- "integrity": "sha512-HiGxeSD3fGJBi0tkCThYkafdym9XoRN+2pgYBP7BndDlgyVwrKYuovO5+R2L3e1MU3Zxs6CVaip8Xf+MCpSWrg==",
+ "version": "0.0.57",
+ "resolved": "https://registry.npmjs.org/@osrd-project/ui-manchette-with-spacetimechart/-/ui-manchette-with-spacetimechart-0.0.57.tgz",
+ "integrity": "sha512-acYdovcMpypbjJ4YbMpt0Tk1fKsS4BxPSJZskiY7SAuQO+9qPXXQEszuq412pzzMwbZxDH15uWWFfQAYoKXU/w==",
"license": "LGPL-3.0-or-later",
"dependencies": {
- "@osrd-project/ui-manchette": "^0.0.56",
- "@osrd-project/ui-spacetimechart": "^0.0.56",
+ "@osrd-project/ui-manchette": "^0.0.57",
+ "@osrd-project/ui-spacetimechart": "^0.0.57",
"classnames": "^2.5.1",
"lodash.isequal": "^4.5.0",
"vitest": "^2.1.1"
@@ -1975,9 +1975,9 @@
}
},
"node_modules/@osrd-project/ui-spacetimechart": {
- "version": "0.0.56",
- "resolved": "https://registry.npmjs.org/@osrd-project/ui-spacetimechart/-/ui-spacetimechart-0.0.56.tgz",
- "integrity": "sha512-dLYlgl0coKdfqdlvE9evNTbdCl3kGv0lA2SNdPHR0+dlhoA1ehm5bpAu8fruVjJbv0Mq/8yzd6SoczaR7rbdiw==",
+ "version": "0.0.57",
+ "resolved": "https://registry.npmjs.org/@osrd-project/ui-spacetimechart/-/ui-spacetimechart-0.0.57.tgz",
+ "integrity": "sha512-rNLZoZeIl4wqwfeFCIPn2e5FI//hpsg38Y1sAhbB4CG4v4kxmSNslTa/mfSs4GNXO9fZgT+9klTAffKKp4FC4g==",
"license": "LGPL-3.0-or-later",
"dependencies": {
"@types/chroma-js": "^2.4.4",
@@ -1993,13 +1993,13 @@
}
},
"node_modules/@osrd-project/ui-speedspacechart": {
- "version": "0.0.56",
- "resolved": "https://registry.npmjs.org/@osrd-project/ui-speedspacechart/-/ui-speedspacechart-0.0.56.tgz",
- "integrity": "sha512-NHg1T+ZRVIphfY7iNaYbBclIK+FkhhFgUiXqMQ2RdNcIOZV07fxDe0H/kdWQravVIv00A6ribkJemlHuodN1wg==",
+ "version": "0.0.57",
+ "resolved": "https://registry.npmjs.org/@osrd-project/ui-speedspacechart/-/ui-speedspacechart-0.0.57.tgz",
+ "integrity": "sha512-4TzNi5JNEszDKM1/IWIpCAVyM099AjwYSCME0LosiVG2DJM07nBx6XpKEhbgI/gSCT6S2apo0l3ViVc2kjT34w==",
"license": "LGPL-3.0-or-later",
"dependencies": {
- "@osrd-project/ui-core": "^0.0.56",
- "@osrd-project/ui-icons": "^0.0.56",
+ "@osrd-project/ui-core": "^0.0.57",
+ "@osrd-project/ui-icons": "^0.0.57",
"@types/chroma-js": "^2.4.4",
"@types/d3-selection": "^3.0.0",
"@types/d3-zoom": "^3.0.0",
diff --git a/front/package.json b/front/package.json
index f07f22a3569..ef668d779fe 100644
--- a/front/package.json
+++ b/front/package.json
@@ -8,12 +8,12 @@
"@nivo/line": "^0.80.0",
"@openapi-contrib/openapi-schema-to-json-schema": "^5.1.0",
"@osrd-project/netzgrafik-frontend": "0.0.0-snapshot.37949a66933e8e1552c9b8e54f702ec491afd415",
- "@osrd-project/ui-core": "^0.0.56",
- "@osrd-project/ui-icons": "^0.0.56",
- "@osrd-project/ui-manchette": "^0.0.56",
- "@osrd-project/ui-manchette-with-spacetimechart": "^0.0.56",
- "@osrd-project/ui-spacetimechart": "^0.0.56",
- "@osrd-project/ui-speedspacechart": "^0.0.56",
+ "@osrd-project/ui-core": "^0.0.57",
+ "@osrd-project/ui-icons": "^0.0.57",
+ "@osrd-project/ui-manchette": "^0.0.57",
+ "@osrd-project/ui-manchette-with-spacetimechart": "^0.0.57",
+ "@osrd-project/ui-spacetimechart": "^0.0.57",
+ "@osrd-project/ui-speedspacechart": "^0.0.57",
"@react-pdf/renderer": "^3.4.2",
"@redux-devtools/extension": "^3.3.0",
"@reduxjs/toolkit": "^2.1.0",
diff --git a/front/public/locales/en/simulation.json b/front/public/locales/en/simulation.json
index 0dfb167eae6..4e974d9680f 100644
--- a/front/public/locales/en/simulation.json
+++ b/front/public/locales/en/simulation.json
@@ -88,6 +88,9 @@
},
"trainList": "Train list",
"waiting": "Loading...",
+ "waypointMenu": {
+ "hide": "Hide this OP"
+ },
"waypointsPanel": {
"name": "name",
"secondaryCode": "CH",
diff --git a/front/public/locales/fr/simulation.json b/front/public/locales/fr/simulation.json
index ce7146ae8c2..aef02c810c7 100644
--- a/front/public/locales/fr/simulation.json
+++ b/front/public/locales/fr/simulation.json
@@ -88,6 +88,9 @@
},
"trainList": "Liste des trains",
"waiting": "Chargement en cours…",
+ "waypointMenu": {
+ "hide": "Masquer ce PR"
+ },
"waypointsPanel": {
"name": "nom",
"secondaryCode": "CH",
diff --git a/front/src/common/OSRDMenu.tsx b/front/src/common/OSRDMenu.tsx
index ca0ae9f2fb9..ac1ef50e309 100644
--- a/front/src/common/OSRDMenu.tsx
+++ b/front/src/common/OSRDMenu.tsx
@@ -4,6 +4,8 @@ export type OSRDMenuItem = {
title: string;
icon: React.ReactNode;
onClick: () => void;
+ disabled?: boolean;
+ disabledMessage?: string;
};
type OSRDMenuProps = {
@@ -13,8 +15,15 @@ type OSRDMenuProps = {
const OSRDMenu = ({ menuRef, items }: OSRDMenuProps) => (
- {items.map(({ title, icon, onClick }) => (
-