From 5ee751a2d96865e727935c8c1a8dab746bbc67e3 Mon Sep 17 00:00:00 2001 From: Olivier Terral Date: Wed, 6 May 2026 09:27:22 +0200 Subject: [PATCH 1/3] fix: use mui9 --- package.json | 6 +- pnpm-lock.yaml | 228 +++++++++++++++++- src/components/StopsFinder/StopsFinder.js | 27 ++- .../StopsFinder/StopsFinderOption.js | 40 ++- .../__snapshots__/StopsFinder.test.js.snap | 2 +- 5 files changed, 260 insertions(+), 43 deletions(-) diff --git a/package.json b/package.json index d2b83d42..04b74839 100644 --- a/package.json +++ b/package.json @@ -6,9 +6,9 @@ "dependencies": { "@emotion/react": "^11.14.0", "@emotion/styled": "^11.14.1", - "@geops/geops-ui": "1.1.0", - "@mui/icons-material": "^7.3.9", - "@mui/material": "^7.3.9", + "@geops/geops-ui": "beta", + "@mui/icons-material": "^9.0.0", + "@mui/material": "^9.0.0", "re-resizable": "6.11.2", "react-icons": "5.6.0", "resize-observer-polyfill": "1.5.1" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 4d80def3..62eb46f3 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -15,14 +15,14 @@ importers: specifier: ^11.14.1 version: 11.14.1(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react@19.2.5) '@geops/geops-ui': - specifier: 1.1.0 - version: 1.1.0(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react@19.2.5))(@mui/icons-material@7.3.9(@mui/material@7.3.9(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))(@types/react@18.3.28)(react@19.2.5))(@mui/material@7.3.9(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))(react-dom@19.2.5(react@19.2.5))(react@19.2.5)(typeface-lato@1.1.13) + specifier: beta + version: 2.0.0-beta.1(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react@19.2.5))(@mui/icons-material@9.0.0(@mui/material@9.0.0(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))(@types/react@18.3.28)(react@19.2.5))(@mui/material@9.0.0(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))(react-dom@19.2.5(react@19.2.5))(react@19.2.5)(typeface-lato@1.1.13) '@mui/icons-material': - specifier: ^7.3.9 - version: 7.3.9(@mui/material@7.3.9(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))(@types/react@18.3.28)(react@19.2.5) + specifier: ^9.0.0 + version: 9.0.0(@mui/material@9.0.0(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))(@types/react@18.3.28)(react@19.2.5) '@mui/material': - specifier: ^7.3.9 - version: 7.3.9(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react-dom@19.2.5(react@19.2.5))(react@19.2.5) + specifier: ^9.0.0 + version: 9.0.0(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react-dom@19.2.5(react@19.2.5))(react@19.2.5) re-resizable: specifier: 6.11.2 version: 6.11.2(react-dom@19.2.5(react@19.2.5))(react@19.2.5) @@ -1034,6 +1034,10 @@ packages: resolution: {integrity: sha512-05WQkdpL9COIMz4LjTxGpPNCdlpyimKppYNoJ5Di5EUObifl8t4tuLuUBBZEpoLYOmfvIWrsp9fCl0HoPRVTdA==} engines: {node: '>=6.9.0'} + '@babel/runtime@7.29.2': + resolution: {integrity: sha512-JiDShH45zKHWyGe4ZNVRrCjBz8Nh9TMmZG1kh4QTK8hCBTWBi8Da+i7s1fJw7/lYpM4ccepSNfqzZ/QvABBi5g==} + engines: {node: '>=6.9.0'} + '@babel/template@7.28.6': resolution: {integrity: sha512-YA6Ma2KsCdGb+WC6UpBVFJGXL58MDA6oyONbjyF/+5sBgxY/dwkhLogbMT2GXXyU84/IhRw/2D1Os1B/giz+BQ==} engines: {node: '>=6.9.0'} @@ -1644,6 +1648,17 @@ packages: react-dom: ^19.2.4 typeface-lato: ^1.1.13 + '@geops/geops-ui@2.0.0-beta.1': + resolution: {integrity: sha512-lqWnLARn7ZC3D75G5DkCXSUZnPTcCkZoj3ocfpbF2JwnfoSivGmHN1IsAWpW43oD02az6hCbj34ldDQ59dWMJw==} + peerDependencies: + '@emotion/react': ^11.14.0 + '@emotion/styled': ^11.14.1 + '@mui/icons-material': ^9.0.0 + '@mui/material': ^9.0.0 + react: ^19.2.4 + react-dom: ^19.2.4 + typeface-lato: ^1.1.13 + '@humanfs/core@0.19.1': resolution: {integrity: sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==} engines: {node: '>=18.18.0'} @@ -1838,6 +1853,9 @@ packages: '@mui/core-downloads-tracker@7.3.9': resolution: {integrity: sha512-MOkOCTfbMJwLshlBCKJ59V2F/uaLYfmKnN76kksj6jlGUVdI25A9Hzs08m+zjBRdLv+sK7Rqdsefe8X7h/6PCw==} + '@mui/core-downloads-tracker@9.0.0': + resolution: {integrity: sha512-uwQNGkhv0lf7ufxw6QXev77BW6pWbW+7uxYjU5+rfp4lBkFtMEgJCsarTM3Tn+i0lGx6+Ol2u88JdGXr0GDskA==} + '@mui/icons-material@7.3.9': resolution: {integrity: sha512-BT+zPJXss8Hg/oEMRmHl17Q97bPACG4ufFSfGEdhiE96jOyR5Dz1ty7ZWt1fVGR0y1p+sSgEwQT/MNZQmoWDCw==} engines: {node: '>=14.0.0'} @@ -1849,6 +1867,17 @@ packages: '@types/react': optional: true + '@mui/icons-material@9.0.0': + resolution: {integrity: sha512-oDwyvI6LgjWRC9MBcSGvLkPud9S9ELgSBQFYxa1rYcZn6Br55dn22SyvsPDMsn0G8OndFk53iMT45W5mNqrogw==} + engines: {node: '>=14.0.0'} + peerDependencies: + '@mui/material': ^9.0.0 + '@types/react': ^17.0.0 || ^18.0.0 || ^19.0.0 + react: ^17.0.0 || ^18.0.0 || ^19.0.0 + peerDependenciesMeta: + '@types/react': + optional: true + '@mui/material@7.3.9': resolution: {integrity: sha512-I8yO3t4T0y7bvDiR1qhIN6iBWZOTBfVOnmLlM7K6h3dx5YX2a7rnkuXzc2UkZaqhxY9NgTnEbdPlokR1RxCNRQ==} engines: {node: '>=14.0.0'} @@ -1869,6 +1898,26 @@ packages: '@types/react': optional: true + '@mui/material@9.0.0': + resolution: {integrity: sha512-+VP/oQCDhDR87NQQgXnNBG8dwy6GNuQLnenS1pZvkbn2dKFSxRSRMybTpH9xUxXP+316mlYDy5CSbYtusnCWtw==} + engines: {node: '>=14.0.0'} + peerDependencies: + '@emotion/react': ^11.5.0 + '@emotion/styled': ^11.3.0 + '@mui/material-pigment-css': ^9.0.0 + '@types/react': ^17.0.0 || ^18.0.0 || ^19.0.0 + react: ^17.0.0 || ^18.0.0 || ^19.0.0 + react-dom: ^17.0.0 || ^18.0.0 || ^19.0.0 + peerDependenciesMeta: + '@emotion/react': + optional: true + '@emotion/styled': + optional: true + '@mui/material-pigment-css': + optional: true + '@types/react': + optional: true + '@mui/private-theming@7.3.9': resolution: {integrity: sha512-ErIyRQvsiQEq7Yvcvfw9UDHngaqjMy9P3JDPnRAaKG5qhpl2C4tX/W1S4zJvpu+feihmZJStjIyvnv6KDbIrlw==} engines: {node: '>=14.0.0'} @@ -1879,6 +1928,16 @@ packages: '@types/react': optional: true + '@mui/private-theming@9.0.0': + resolution: {integrity: sha512-JtuZoaiCqwD6vjgYu6Xp3T7DZkrxJlgtDz5yESzhI34fEX5hHMh2VJUbuL9UOg8xrfIFMrq6dcYoH/7Zi4G0RA==} + engines: {node: '>=14.0.0'} + peerDependencies: + '@types/react': ^17.0.0 || ^18.0.0 || ^19.0.0 + react: ^17.0.0 || ^18.0.0 || ^19.0.0 + peerDependenciesMeta: + '@types/react': + optional: true + '@mui/styled-engine@7.3.9': resolution: {integrity: sha512-JqujWt5bX4okjUPGpVof/7pvgClqh7HvIbsIBIOOlCh2u3wG/Bwp4+E1bc1dXSwkrkp9WUAoNdI5HEC+5HKvMw==} engines: {node: '>=14.0.0'} @@ -1892,6 +1951,19 @@ packages: '@emotion/styled': optional: true + '@mui/styled-engine@9.0.0': + resolution: {integrity: sha512-9RLGdX4Jg0aQPRuvqh/OLzYSPlgd5zyEw5/1HIRfdavSiOd03WtUaGZH9/w1RoTYuRKwpgy0hpIFaMHIqPVIWg==} + engines: {node: '>=14.0.0'} + peerDependencies: + '@emotion/react': ^11.4.1 + '@emotion/styled': ^11.3.0 + react: ^17.0.0 || ^18.0.0 || ^19.0.0 + peerDependenciesMeta: + '@emotion/react': + optional: true + '@emotion/styled': + optional: true + '@mui/system@7.3.9': resolution: {integrity: sha512-aL1q9am8XpRrSabv9qWf5RHhJICJql34wnrc1nz0MuOglPRYF/liN+c8VqZdTvUn9qg+ZjRVbKf4sJVFfIDtmg==} engines: {node: '>=14.0.0'} @@ -1908,6 +1980,22 @@ packages: '@types/react': optional: true + '@mui/system@9.0.0': + resolution: {integrity: sha512-YnC5Zg6j04IxiLc/boAKs0464jfZlLFVa7mf5E8lF0XOtZVUvG6R6gJK50lgUYdaaLdyLfxF6xR7LaPuEpeT/g==} + engines: {node: '>=14.0.0'} + peerDependencies: + '@emotion/react': ^11.5.0 + '@emotion/styled': ^11.3.0 + '@types/react': ^17.0.0 || ^18.0.0 || ^19.0.0 + react: ^17.0.0 || ^18.0.0 || ^19.0.0 + peerDependenciesMeta: + '@emotion/react': + optional: true + '@emotion/styled': + optional: true + '@types/react': + optional: true + '@mui/types@7.4.12': resolution: {integrity: sha512-iKNAF2u9PzSIj40CjvKJWxFXJo122jXVdrmdh0hMYd+FR+NuJMkr/L88XwWLCRiJ5P1j+uyac25+Kp6YC4hu6w==} peerDependencies: @@ -1916,6 +2004,14 @@ packages: '@types/react': optional: true + '@mui/types@9.0.0': + resolution: {integrity: sha512-i1cuFCAWN44b3AJWO7mh7tuh1sqbQSeVr/94oG0TX5uXivac8XalgE4/6fQZcmGZigzbQ35IXxj/4jLpRIBYZg==} + peerDependencies: + '@types/react': ^17.0.0 || ^18.0.0 || ^19.0.0 + peerDependenciesMeta: + '@types/react': + optional: true + '@mui/utils@7.3.9': resolution: {integrity: sha512-U6SdZaGbfb65fqTsH3V5oJdFj9uYwyLE2WVuNvmbggTSDBb8QHrFsqY8BN3taK9t3yJ8/BPHD/kNvLNyjwM7Yw==} engines: {node: '>=14.0.0'} @@ -1926,6 +2022,16 @@ packages: '@types/react': optional: true + '@mui/utils@9.0.0': + resolution: {integrity: sha512-bQcqyg/gjULUqTuyUjSAFr6LQGLvtkNtDbJerAtoUn9kGZ0hg5QJiN1PLHMLbeFpe3te1831uq7GFl2ITokGdg==} + engines: {node: '>=14.0.0'} + peerDependencies: + '@types/react': ^17.0.0 || ^18.0.0 || ^19.0.0 + react: ^17.0.0 || ^18.0.0 || ^19.0.0 + peerDependenciesMeta: + '@types/react': + optional: true + '@napi-rs/wasm-runtime@0.2.12': resolution: {integrity: sha512-ZVWUcfwY4E/yPitQJl481FjFo3K22D6qF0DuFH6Y/nbnE11GY5uguDxZMGXPQ8WQ0128MXQD7TnfHyK4oWoIJQ==} @@ -6193,6 +6299,9 @@ packages: react-is@19.2.4: resolution: {integrity: sha512-W+EWGn2v0ApPKgKKCy/7s7WHXkboGcsrXE+2joLyVxkbyVQfO3MUEaUQDHoSmb8TFFrSKYa9mw64WZHNHSDzYA==} + react-is@19.2.5: + resolution: {integrity: sha512-Dn0t8IQhCmeIT3wu+Apm1/YVsJXsGWi6k4sPdnBIdqMVtHtv0IGi6dcpNpNkNac0zB2uUAqNX3MHzN8c+z2rwQ==} + react-simple-code-editor@0.13.1: resolution: {integrity: sha512-XYeVwRZwgyKtjNIYcAEgg2FaQcCZwhbarnkJIV20U2wkCU9q/CPFBo8nRXrK4GXUz3AvbqZFsZRrpUTkqqEYyQ==} peerDependencies: @@ -8346,6 +8455,8 @@ snapshots: '@babel/runtime@7.28.6': {} + '@babel/runtime@7.29.2': {} + '@babel/template@7.28.6': dependencies: '@babel/code-frame': 7.29.0 @@ -8454,7 +8565,7 @@ snapshots: '@commitlint/resolve-extends': 20.5.3 '@commitlint/types': 20.5.0 cosmiconfig: 9.0.1(typescript@5.9.3) - cosmiconfig-typescript-loader: 6.3.0(@types/node@25.4.0)(cosmiconfig@9.0.1(typescript@5.9.3))(typescript@5.9.3) + cosmiconfig-typescript-loader: 6.3.0(@types/node@25.4.0)(cosmiconfig@9.0.1(typescript@6.0.3))(typescript@5.9.3) es-toolkit: 1.46.1 is-plain-obj: 4.1.0 picocolors: 1.1.1 @@ -8935,6 +9046,16 @@ snapshots: react-is: 18.3.1 typeface-lato: 1.1.13 + '@geops/geops-ui@2.0.0-beta.1(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react@19.2.5))(@mui/icons-material@9.0.0(@mui/material@9.0.0(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))(@types/react@18.3.28)(react@19.2.5))(@mui/material@9.0.0(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))(react-dom@19.2.5(react@19.2.5))(react@19.2.5)(typeface-lato@1.1.13)': + dependencies: + '@emotion/react': 11.14.0(@types/react@18.3.28)(react@19.2.5) + '@emotion/styled': 11.14.1(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react@19.2.5) + '@mui/icons-material': 9.0.0(@mui/material@9.0.0(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))(@types/react@18.3.28)(react@19.2.5) + '@mui/material': 9.0.0(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react-dom@19.2.5(react@19.2.5))(react@19.2.5) + react: 19.2.5 + react-dom: 19.2.5(react@19.2.5) + typeface-lato: 1.1.13 + '@humanfs/core@0.19.1': {} '@humanfs/node@0.16.7': @@ -9238,6 +9359,8 @@ snapshots: '@mui/core-downloads-tracker@7.3.9': {} + '@mui/core-downloads-tracker@9.0.0': {} + '@mui/icons-material@7.3.9(@mui/material@7.3.9(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))(@types/react@18.3.28)(react@19.2.5)': dependencies: '@babel/runtime': 7.28.6 @@ -9246,6 +9369,14 @@ snapshots: optionalDependencies: '@types/react': 18.3.28 + '@mui/icons-material@9.0.0(@mui/material@9.0.0(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))(@types/react@18.3.28)(react@19.2.5)': + dependencies: + '@babel/runtime': 7.29.2 + '@mui/material': 9.0.0(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react-dom@19.2.5(react@19.2.5))(react@19.2.5) + react: 19.2.5 + optionalDependencies: + '@types/react': 18.3.28 + '@mui/material@7.3.9(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)': dependencies: '@babel/runtime': 7.28.6 @@ -9267,6 +9398,27 @@ snapshots: '@emotion/styled': 11.14.1(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react@19.2.5) '@types/react': 18.3.28 + '@mui/material@9.0.0(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)': + dependencies: + '@babel/runtime': 7.29.2 + '@mui/core-downloads-tracker': 9.0.0 + '@mui/system': 9.0.0(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react@19.2.5) + '@mui/types': 9.0.0(@types/react@18.3.28) + '@mui/utils': 9.0.0(@types/react@18.3.28)(react@19.2.5) + '@popperjs/core': 2.11.8 + '@types/react-transition-group': 4.4.12(@types/react@18.3.28) + clsx: 2.1.1 + csstype: 3.2.3 + prop-types: 15.8.1 + react: 19.2.5 + react-dom: 19.2.5(react@19.2.5) + react-is: 19.2.5 + react-transition-group: 4.4.5(react-dom@19.2.5(react@19.2.5))(react@19.2.5) + optionalDependencies: + '@emotion/react': 11.14.0(@types/react@18.3.28)(react@19.2.5) + '@emotion/styled': 11.14.1(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react@19.2.5) + '@types/react': 18.3.28 + '@mui/private-theming@7.3.9(@types/react@18.3.28)(react@19.2.5)': dependencies: '@babel/runtime': 7.28.6 @@ -9276,6 +9428,15 @@ snapshots: optionalDependencies: '@types/react': 18.3.28 + '@mui/private-theming@9.0.0(@types/react@18.3.28)(react@19.2.5)': + dependencies: + '@babel/runtime': 7.29.2 + '@mui/utils': 9.0.0(@types/react@18.3.28)(react@19.2.5) + prop-types: 15.8.1 + react: 19.2.5 + optionalDependencies: + '@types/react': 18.3.28 + '@mui/styled-engine@7.3.9(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react@19.2.5))(react@19.2.5)': dependencies: '@babel/runtime': 7.28.6 @@ -9289,6 +9450,19 @@ snapshots: '@emotion/react': 11.14.0(@types/react@18.3.28)(react@19.2.5) '@emotion/styled': 11.14.1(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react@19.2.5) + '@mui/styled-engine@9.0.0(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react@19.2.5))(react@19.2.5)': + dependencies: + '@babel/runtime': 7.29.2 + '@emotion/cache': 11.14.0 + '@emotion/serialize': 1.3.3 + '@emotion/sheet': 1.4.0 + csstype: 3.2.3 + prop-types: 15.8.1 + react: 19.2.5 + optionalDependencies: + '@emotion/react': 11.14.0(@types/react@18.3.28)(react@19.2.5) + '@emotion/styled': 11.14.1(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react@19.2.5) + '@mui/system@7.3.9(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react@19.2.5)': dependencies: '@babel/runtime': 7.28.6 @@ -9305,12 +9479,34 @@ snapshots: '@emotion/styled': 11.14.1(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react@19.2.5) '@types/react': 18.3.28 + '@mui/system@9.0.0(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react@19.2.5)': + dependencies: + '@babel/runtime': 7.29.2 + '@mui/private-theming': 9.0.0(@types/react@18.3.28)(react@19.2.5) + '@mui/styled-engine': 9.0.0(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react@19.2.5))(react@19.2.5) + '@mui/types': 9.0.0(@types/react@18.3.28) + '@mui/utils': 9.0.0(@types/react@18.3.28)(react@19.2.5) + clsx: 2.1.1 + csstype: 3.2.3 + prop-types: 15.8.1 + react: 19.2.5 + optionalDependencies: + '@emotion/react': 11.14.0(@types/react@18.3.28)(react@19.2.5) + '@emotion/styled': 11.14.1(@emotion/react@11.14.0(@types/react@18.3.28)(react@19.2.5))(@types/react@18.3.28)(react@19.2.5) + '@types/react': 18.3.28 + '@mui/types@7.4.12(@types/react@18.3.28)': dependencies: '@babel/runtime': 7.28.6 optionalDependencies: '@types/react': 18.3.28 + '@mui/types@9.0.0(@types/react@18.3.28)': + dependencies: + '@babel/runtime': 7.29.2 + optionalDependencies: + '@types/react': 18.3.28 + '@mui/utils@7.3.9(@types/react@18.3.28)(react@19.2.5)': dependencies: '@babel/runtime': 7.28.6 @@ -9323,6 +9519,18 @@ snapshots: optionalDependencies: '@types/react': 18.3.28 + '@mui/utils@9.0.0(@types/react@18.3.28)(react@19.2.5)': + dependencies: + '@babel/runtime': 7.29.2 + '@mui/types': 9.0.0(@types/react@18.3.28) + '@types/prop-types': 15.7.15 + clsx: 2.1.1 + prop-types: 15.8.1 + react: 19.2.5 + react-is: 19.2.5 + optionalDependencies: + '@types/react': 18.3.28 + '@napi-rs/wasm-runtime@0.2.12': dependencies: '@emnapi/core': 1.8.1 @@ -11037,10 +11245,10 @@ snapshots: core-util-is@1.0.3: {} - cosmiconfig-typescript-loader@6.3.0(@types/node@25.4.0)(cosmiconfig@9.0.1(typescript@5.9.3))(typescript@5.9.3): + cosmiconfig-typescript-loader@6.3.0(@types/node@25.4.0)(cosmiconfig@9.0.1(typescript@6.0.3))(typescript@5.9.3): dependencies: '@types/node': 25.4.0 - cosmiconfig: 9.0.1(typescript@5.9.3) + cosmiconfig: 9.0.1(typescript@6.0.3) jiti: 2.6.1 typescript: 5.9.3 @@ -14423,6 +14631,8 @@ snapshots: react-is@19.2.4: {} + react-is@19.2.5: {} + react-simple-code-editor@0.13.1(react-dom@19.2.5(react@19.2.5))(react@19.2.5): dependencies: react: 19.2.5 diff --git a/src/components/StopsFinder/StopsFinder.js b/src/components/StopsFinder/StopsFinder.js index 0cb6186d..f95c2408 100644 --- a/src/components/StopsFinder/StopsFinder.js +++ b/src/components/StopsFinder/StopsFinder.js @@ -22,6 +22,7 @@ const StyledAutocomplete = styled(Autocomplete)(() => { }); const defaultProps = { + loadingComp: , textFieldProps: {}, }; @@ -31,6 +32,7 @@ function StopsFinder({ bbox, field, limit, + loadingComp = defaultProps.loadingComp, map, mots, onSelect, @@ -131,14 +133,17 @@ function StopsFinder({ label="Search stops" {...params} {...textFieldProps} - InputProps={{ - ...params.InputProps, - endAdornment: ( - <> - {isLoading && } - {params.InputProps.endAdornment} - - ), + slotProps={{ + ...params.slotProps, + input: { + ...params.slotProps.input, + endAdornment: ( + <> + {isLoading && loadingComp} + {params.slotProps.input.endAdornment} + + ), + }, }} /> ); @@ -147,6 +152,7 @@ function StopsFinder({ return ( @@ -209,6 +215,11 @@ StopsFinder.propTypes = { */ limit: PropTypes.number, + /** + * Component used for loading state in the options list. By default, a MUI CircularProgress is used. + */ + loadingComp: PropTypes.element, + /** * A map. */ diff --git a/src/components/StopsFinder/StopsFinderOption.js b/src/components/StopsFinder/StopsFinderOption.js index 0eade703..951fddc8 100644 --- a/src/components/StopsFinder/StopsFinderOption.js +++ b/src/components/StopsFinder/StopsFinderOption.js @@ -1,4 +1,3 @@ -import { CircularProgress, styled } from "@mui/material"; import PropTypes from "prop-types"; import React, { lazy, Suspense } from "react"; @@ -19,36 +18,33 @@ const iconForMot = {}; }); }); -const StyledFlex = styled("div")(() => { - return { - alignItems: "center", - display: "flex", - gap: 5, - }; -}); - function StopsFinderOption({ option, ...props }) { return ( - }> - - {Object.entries(option.properties?.mot).map(([key, value]) => { - if (value) { + +
+ {Object.entries(option.properties?.mot) + .filter(([, value]) => { + return !!value; + }) + .map(([key]) => { const MotIcon = iconForMot[key]; - return ( - - - - ); - } - return null; - })} + return ; + })} {option.properties.name} - +
); } StopsFinderOption.propTypes = { + loadingComp: PropTypes.element, option: PropTypes.object.isRequired, }; diff --git a/src/components/StopsFinder/__snapshots__/StopsFinder.test.js.snap b/src/components/StopsFinder/__snapshots__/StopsFinder.test.js.snap index 9dc40552..0c7c6dd9 100644 --- a/src/components/StopsFinder/__snapshots__/StopsFinder.test.js.snap +++ b/src/components/StopsFinder/__snapshots__/StopsFinder.test.js.snap @@ -14,7 +14,7 @@ exports[`StopsFinder matches snapshots. 1`] = ` Date: Wed, 6 May 2026 09:38:33 +0200 Subject: [PATCH 2/3] fix: use mui9 --- src/components/StopsFinder/README.md | 1 - src/components/StopsFinder/StopsFinder.js | 9 +-------- .../StopsFinder/__snapshots__/StopsFinder.test.js.snap | 4 +++- 3 files changed, 4 insertions(+), 10 deletions(-) diff --git a/src/components/StopsFinder/README.md b/src/components/StopsFinder/README.md index b5df697c..9b47f95b 100644 --- a/src/components/StopsFinder/README.md +++ b/src/components/StopsFinder/README.md @@ -34,7 +34,6 @@ const { apiKey } = window; /> { map.getView().setCenter(fromLonLat(geometry.coordinates)); diff --git a/src/components/StopsFinder/StopsFinder.js b/src/components/StopsFinder/StopsFinder.js index f95c2408..c0b0b6d8 100644 --- a/src/components/StopsFinder/StopsFinder.js +++ b/src/components/StopsFinder/StopsFinder.js @@ -33,7 +33,6 @@ function StopsFinder({ field, limit, loadingComp = defaultProps.loadingComp, - map, mots, onSelect, radius, @@ -161,7 +160,6 @@ function StopsFinder({ selectOnFocus {...props} inputValue={inputValue} - loading={isLoading} onClose={() => { setOpen(false); }} @@ -221,12 +219,7 @@ StopsFinder.propTypes = { loadingComp: PropTypes.element, /** - * A map. - */ - map: PropTypes.instanceOf(Map).isRequired, - - /** - * Array or a comma separated list of mode of transpaorts which should be available. + * Array or a comma separated list of mode of transports which should be available. * Available values : bus, ferry, gondola, tram, rail, funicular, cable_car, subway */ mots: PropTypes.oneOfType([ diff --git a/src/components/StopsFinder/__snapshots__/StopsFinder.test.js.snap b/src/components/StopsFinder/__snapshots__/StopsFinder.test.js.snap index 0c7c6dd9..a6cf6e17 100644 --- a/src/components/StopsFinder/__snapshots__/StopsFinder.test.js.snap +++ b/src/components/StopsFinder/__snapshots__/StopsFinder.test.js.snap @@ -1,7 +1,9 @@ // Jest Snapshot v1, https://jestjs.io/docs/snapshot-testing exports[`StopsFinder matches snapshots. 1`] = ` -
+