chore(deps): upgrade MUI to v9.0.1
Browse files- @mui /material: ^7.3.5 -> ^9.0.1
- @mui /icons-material: ^7.3.5 -> ^9.0.1
- Ran `npx @mui /codemod@latest v9.0.0/system-props src/`
(codemod output: 2 files transformed,
src/components/EmotionsView.tsx and
src/components/emotions/NowPlayingStrip.tsx).
Note: the umbrella `v9.0.0` transform does not exist in
@mui /codemod@9.0.1 - only the `v9.0.0/system-props` sub-rule
is shipped.
- Lockfile regenerated from scratch (no --legacy-peer-deps needed;
the SDK's transitive @mui /material@7.3.11 dedupe is harmless).
- Manual fix in src/theme.ts: MUI v9 removed the variant-color
combination slots (`outlinedPrimary`, `containedPrimary`, etc.)
from `MuiButton`'s `styleOverrides`. Migrated `outlinedPrimary`
to the new `variants` API
(`{ props: { variant: 'outlined', color: 'primary' }, style: ... }`).
Build verified locally with `npm run build`. Push goes to the
`chore/upgrade-mui-9` branch so the user can validate the deployed
Space before merging to `main`.
Co-authored-by: Cursor <cursoragent@cursor.com>
- package-lock.json +286 -34
- package.json +2 -2
- src/components/EmotionsView.tsx +14 -14
- src/components/emotions/NowPlayingStrip.tsx +9 -9
- src/theme.ts +18 -9
|
@@ -10,8 +10,8 @@
|
|
| 10 |
"dependencies": {
|
| 11 |
"@emotion/react": "^11.14.0",
|
| 12 |
"@emotion/styled": "^11.14.1",
|
| 13 |
-
"@mui/icons-material": "^
|
| 14 |
-
"@mui/material": "^
|
| 15 |
"@pollen-robotics/reachy-mini-sdk": "1.8.0-rc1-main.fd4354c",
|
| 16 |
"react": "^19.2.5",
|
| 17 |
"react-dom": "^19.2.5"
|
|
@@ -808,6 +808,265 @@
|
|
| 808 |
}
|
| 809 |
},
|
| 810 |
"node_modules/@mui/core-downloads-tracker": {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 811 |
"version": "7.3.11",
|
| 812 |
"resolved": "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-7.3.11.tgz",
|
| 813 |
"integrity": "sha512-a7I/b/nBTdXYz2cOSlEmkQ9WWE1x8FHpqMhFPp+Y1VPFxcOw91G5ELOHARQAGSPy5V+UCgJua6K/1x70bAtQPw==",
|
|
@@ -817,7 +1076,7 @@
|
|
| 817 |
"url": "https://opencollective.com/mui-org"
|
| 818 |
}
|
| 819 |
},
|
| 820 |
-
"node_modules/@mui/icons-material": {
|
| 821 |
"version": "7.3.11",
|
| 822 |
"resolved": "https://registry.npmjs.org/@mui/icons-material/-/icons-material-7.3.11.tgz",
|
| 823 |
"integrity": "sha512-+hz5ilwHZ3djd5es3sCErLioqe/NhZcYTsV/TNXZAMdJdb23F4xzJjqnnZdnurc3S1+ietcssRNqieOhPQLZ7Q==",
|
|
@@ -843,7 +1102,7 @@
|
|
| 843 |
}
|
| 844 |
}
|
| 845 |
},
|
| 846 |
-
"node_modules/@mui/material": {
|
| 847 |
"version": "7.3.11",
|
| 848 |
"resolved": "https://registry.npmjs.org/@mui/material/-/material-7.3.11.tgz",
|
| 849 |
"integrity": "sha512-yq8bPc3LxOwKRWpcjRgDkYFmpM6aKlARfESTmOQcvLYFeJwtHte2tw6hJDrb8sk8wcvpDprHEHVaoUU0MslIkw==",
|
|
@@ -893,7 +1152,7 @@
|
|
| 893 |
}
|
| 894 |
}
|
| 895 |
},
|
| 896 |
-
"node_modules/@mui/private-theming": {
|
| 897 |
"version": "7.3.11",
|
| 898 |
"resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-7.3.11.tgz",
|
| 899 |
"integrity": "sha512-9B+YKms0fRHbNrqp9tOT/DNbNnU5gyvJ1o3qAGXfq8GmZcbJnE3At9x07Zr/o0pkhzg4aDdwXVqe4+AcgtOCPA==",
|
|
@@ -920,7 +1179,7 @@
|
|
| 920 |
}
|
| 921 |
}
|
| 922 |
},
|
| 923 |
-
"node_modules/@mui/styled-engine": {
|
| 924 |
"version": "7.3.10",
|
| 925 |
"resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-7.3.10.tgz",
|
| 926 |
"integrity": "sha512-WxE9SiF8xskAQqGjsp0poXCkCqsoXFEsSr0HBXfApmGHR+DBnXRp+z46Vsltg4gpPM4Z96DeAQRpeAOnhNg7Ng==",
|
|
@@ -954,7 +1213,7 @@
|
|
| 954 |
}
|
| 955 |
}
|
| 956 |
},
|
| 957 |
-
"node_modules/@mui/system": {
|
| 958 |
"version": "7.3.11",
|
| 959 |
"resolved": "https://registry.npmjs.org/@mui/system/-/system-7.3.11.tgz",
|
| 960 |
"integrity": "sha512-7izwGWdNawAKpBKcRlx7f2gFnAAjmASBWvMcyX4YYEeLOFsbfGRbUYGInvnAcUeql3rPxI7F9Ft4oY2OLRz44g==",
|
|
@@ -994,7 +1253,7 @@
|
|
| 994 |
}
|
| 995 |
}
|
| 996 |
},
|
| 997 |
-
"node_modules/@mui/types": {
|
| 998 |
"version": "7.4.12",
|
| 999 |
"resolved": "https://registry.npmjs.org/@mui/types/-/types-7.4.12.tgz",
|
| 1000 |
"integrity": "sha512-iKNAF2u9PzSIj40CjvKJWxFXJo122jXVdrmdh0hMYd+FR+NuJMkr/L88XwWLCRiJ5P1j+uyac25+Kp6YC4hu6w==",
|
|
@@ -1011,7 +1270,7 @@
|
|
| 1011 |
}
|
| 1012 |
}
|
| 1013 |
},
|
| 1014 |
-
"node_modules/@mui/utils": {
|
| 1015 |
"version": "7.3.11",
|
| 1016 |
"resolved": "https://registry.npmjs.org/@mui/utils/-/utils-7.3.11.tgz",
|
| 1017 |
"integrity": "sha512-XTjGnifwteg71/ij+0e7Y7d+hwyntMYP5wPoA/g2drdGH+Flkvjwy0OfrVpKBbaOvofq4zU/LIyUZyKgmWu18g==",
|
|
@@ -1041,31 +1300,6 @@
|
|
| 1041 |
}
|
| 1042 |
}
|
| 1043 |
},
|
| 1044 |
-
"node_modules/@pollen-robotics/reachy-mini-sdk": {
|
| 1045 |
-
"version": "1.8.0-rc1-main.fd4354c",
|
| 1046 |
-
"resolved": "https://registry.npmjs.org/@pollen-robotics/reachy-mini-sdk/-/reachy-mini-sdk-1.8.0-rc1-main.fd4354c.tgz",
|
| 1047 |
-
"integrity": "sha512-I/3cVtLbggPyhYEfp1v/jPZh6PgcVrY0eoaMF5qSXsoKNoX7qJVmcCzmsrZVM7Uf5o9FwQh8uFMORtZ0nWV8Ig==",
|
| 1048 |
-
"license": "Apache-2.0",
|
| 1049 |
-
"dependencies": {
|
| 1050 |
-
"@emotion/react": "^11.14.0",
|
| 1051 |
-
"@emotion/styled": "^11.14.1",
|
| 1052 |
-
"@huggingface/hub": "^0.15.2",
|
| 1053 |
-
"@mui/icons-material": "^7.3.5",
|
| 1054 |
-
"@mui/material": "^7.3.5"
|
| 1055 |
-
},
|
| 1056 |
-
"peerDependencies": {
|
| 1057 |
-
"react": "^18.0.0 || ^19.0.0",
|
| 1058 |
-
"react-dom": "^18.0.0 || ^19.0.0"
|
| 1059 |
-
},
|
| 1060 |
-
"peerDependenciesMeta": {
|
| 1061 |
-
"react": {
|
| 1062 |
-
"optional": true
|
| 1063 |
-
},
|
| 1064 |
-
"react-dom": {
|
| 1065 |
-
"optional": true
|
| 1066 |
-
}
|
| 1067 |
-
}
|
| 1068 |
-
},
|
| 1069 |
"node_modules/@popperjs/core": {
|
| 1070 |
"version": "2.11.8",
|
| 1071 |
"resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz",
|
|
@@ -2515,6 +2749,24 @@
|
|
| 2515 |
"optional": true
|
| 2516 |
}
|
| 2517 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2518 |
}
|
| 2519 |
}
|
| 2520 |
}
|
|
|
|
| 10 |
"dependencies": {
|
| 11 |
"@emotion/react": "^11.14.0",
|
| 12 |
"@emotion/styled": "^11.14.1",
|
| 13 |
+
"@mui/icons-material": "^9.0.1",
|
| 14 |
+
"@mui/material": "^9.0.1",
|
| 15 |
"@pollen-robotics/reachy-mini-sdk": "1.8.0-rc1-main.fd4354c",
|
| 16 |
"react": "^19.2.5",
|
| 17 |
"react-dom": "^19.2.5"
|
|
|
|
| 808 |
}
|
| 809 |
},
|
| 810 |
"node_modules/@mui/core-downloads-tracker": {
|
| 811 |
+
"version": "9.0.1",
|
| 812 |
+
"resolved": "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-9.0.1.tgz",
|
| 813 |
+
"integrity": "sha512-GzamIIhZ1bH77dq7eKaeyRgJdkypsxin4jBFq2EMs4lBWRR0LFO1CSVMsoebn/VvjcNrnrOrjy48MkrkQUK2iw==",
|
| 814 |
+
"license": "MIT",
|
| 815 |
+
"funding": {
|
| 816 |
+
"type": "opencollective",
|
| 817 |
+
"url": "https://opencollective.com/mui-org"
|
| 818 |
+
}
|
| 819 |
+
},
|
| 820 |
+
"node_modules/@mui/icons-material": {
|
| 821 |
+
"version": "9.0.1",
|
| 822 |
+
"resolved": "https://registry.npmjs.org/@mui/icons-material/-/icons-material-9.0.1.tgz",
|
| 823 |
+
"integrity": "sha512-5PRpQjVLTNLyV/2J9J53Yz4R0tVbodG0BQDN2zQI1QBG1OPYM25ar+4N20eyFOfJT6zKglLzsnU70+zdVLaTkw==",
|
| 824 |
+
"license": "MIT",
|
| 825 |
+
"dependencies": {
|
| 826 |
+
"@babel/runtime": "^7.29.2"
|
| 827 |
+
},
|
| 828 |
+
"engines": {
|
| 829 |
+
"node": ">=14.0.0"
|
| 830 |
+
},
|
| 831 |
+
"funding": {
|
| 832 |
+
"type": "opencollective",
|
| 833 |
+
"url": "https://opencollective.com/mui-org"
|
| 834 |
+
},
|
| 835 |
+
"peerDependencies": {
|
| 836 |
+
"@mui/material": "^9.0.1",
|
| 837 |
+
"@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0",
|
| 838 |
+
"react": "^17.0.0 || ^18.0.0 || ^19.0.0"
|
| 839 |
+
},
|
| 840 |
+
"peerDependenciesMeta": {
|
| 841 |
+
"@types/react": {
|
| 842 |
+
"optional": true
|
| 843 |
+
}
|
| 844 |
+
}
|
| 845 |
+
},
|
| 846 |
+
"node_modules/@mui/material": {
|
| 847 |
+
"version": "9.0.1",
|
| 848 |
+
"resolved": "https://registry.npmjs.org/@mui/material/-/material-9.0.1.tgz",
|
| 849 |
+
"integrity": "sha512-voyCpeUxcSWLN7KPZuq0pGCIt726T9K6kiVM3XUcywZDAlZSarLHaUxJVQpospbjjOzN53hwyjo8s6KoWl6utw==",
|
| 850 |
+
"license": "MIT",
|
| 851 |
+
"peer": true,
|
| 852 |
+
"dependencies": {
|
| 853 |
+
"@babel/runtime": "^7.29.2",
|
| 854 |
+
"@mui/core-downloads-tracker": "^9.0.1",
|
| 855 |
+
"@mui/system": "^9.0.1",
|
| 856 |
+
"@mui/types": "^9.0.0",
|
| 857 |
+
"@mui/utils": "^9.0.1",
|
| 858 |
+
"@popperjs/core": "^2.11.8",
|
| 859 |
+
"@types/react-transition-group": "^4.4.12",
|
| 860 |
+
"clsx": "^2.1.1",
|
| 861 |
+
"csstype": "^3.2.3",
|
| 862 |
+
"prop-types": "^15.8.1",
|
| 863 |
+
"react-is": "^19.2.4",
|
| 864 |
+
"react-transition-group": "^4.4.5"
|
| 865 |
+
},
|
| 866 |
+
"engines": {
|
| 867 |
+
"node": ">=14.0.0"
|
| 868 |
+
},
|
| 869 |
+
"funding": {
|
| 870 |
+
"type": "opencollective",
|
| 871 |
+
"url": "https://opencollective.com/mui-org"
|
| 872 |
+
},
|
| 873 |
+
"peerDependencies": {
|
| 874 |
+
"@emotion/react": "^11.5.0",
|
| 875 |
+
"@emotion/styled": "^11.3.0",
|
| 876 |
+
"@mui/material-pigment-css": "^9.0.1",
|
| 877 |
+
"@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0",
|
| 878 |
+
"react": "^17.0.0 || ^18.0.0 || ^19.0.0",
|
| 879 |
+
"react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0"
|
| 880 |
+
},
|
| 881 |
+
"peerDependenciesMeta": {
|
| 882 |
+
"@emotion/react": {
|
| 883 |
+
"optional": true
|
| 884 |
+
},
|
| 885 |
+
"@emotion/styled": {
|
| 886 |
+
"optional": true
|
| 887 |
+
},
|
| 888 |
+
"@mui/material-pigment-css": {
|
| 889 |
+
"optional": true
|
| 890 |
+
},
|
| 891 |
+
"@types/react": {
|
| 892 |
+
"optional": true
|
| 893 |
+
}
|
| 894 |
+
}
|
| 895 |
+
},
|
| 896 |
+
"node_modules/@mui/private-theming": {
|
| 897 |
+
"version": "9.0.1",
|
| 898 |
+
"resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-9.0.1.tgz",
|
| 899 |
+
"integrity": "sha512-pSIGq4Yw749KHEwlkYZWVERgHgwJELP6ODtBNUfV8V4oIb5H+h7IQDFXuk/b2oQccODK1enJAtiEzlgLZmq+8g==",
|
| 900 |
+
"license": "MIT",
|
| 901 |
+
"dependencies": {
|
| 902 |
+
"@babel/runtime": "^7.29.2",
|
| 903 |
+
"@mui/utils": "^9.0.1",
|
| 904 |
+
"prop-types": "^15.8.1"
|
| 905 |
+
},
|
| 906 |
+
"engines": {
|
| 907 |
+
"node": ">=14.0.0"
|
| 908 |
+
},
|
| 909 |
+
"funding": {
|
| 910 |
+
"type": "opencollective",
|
| 911 |
+
"url": "https://opencollective.com/mui-org"
|
| 912 |
+
},
|
| 913 |
+
"peerDependencies": {
|
| 914 |
+
"@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0",
|
| 915 |
+
"react": "^17.0.0 || ^18.0.0 || ^19.0.0"
|
| 916 |
+
},
|
| 917 |
+
"peerDependenciesMeta": {
|
| 918 |
+
"@types/react": {
|
| 919 |
+
"optional": true
|
| 920 |
+
}
|
| 921 |
+
}
|
| 922 |
+
},
|
| 923 |
+
"node_modules/@mui/styled-engine": {
|
| 924 |
+
"version": "9.0.0",
|
| 925 |
+
"resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-9.0.0.tgz",
|
| 926 |
+
"integrity": "sha512-9RLGdX4Jg0aQPRuvqh/OLzYSPlgd5zyEw5/1HIRfdavSiOd03WtUaGZH9/w1RoTYuRKwpgy0hpIFaMHIqPVIWg==",
|
| 927 |
+
"license": "MIT",
|
| 928 |
+
"dependencies": {
|
| 929 |
+
"@babel/runtime": "^7.29.2",
|
| 930 |
+
"@emotion/cache": "^11.14.0",
|
| 931 |
+
"@emotion/serialize": "^1.3.3",
|
| 932 |
+
"@emotion/sheet": "^1.4.0",
|
| 933 |
+
"csstype": "^3.2.3",
|
| 934 |
+
"prop-types": "^15.8.1"
|
| 935 |
+
},
|
| 936 |
+
"engines": {
|
| 937 |
+
"node": ">=14.0.0"
|
| 938 |
+
},
|
| 939 |
+
"funding": {
|
| 940 |
+
"type": "opencollective",
|
| 941 |
+
"url": "https://opencollective.com/mui-org"
|
| 942 |
+
},
|
| 943 |
+
"peerDependencies": {
|
| 944 |
+
"@emotion/react": "^11.4.1",
|
| 945 |
+
"@emotion/styled": "^11.3.0",
|
| 946 |
+
"react": "^17.0.0 || ^18.0.0 || ^19.0.0"
|
| 947 |
+
},
|
| 948 |
+
"peerDependenciesMeta": {
|
| 949 |
+
"@emotion/react": {
|
| 950 |
+
"optional": true
|
| 951 |
+
},
|
| 952 |
+
"@emotion/styled": {
|
| 953 |
+
"optional": true
|
| 954 |
+
}
|
| 955 |
+
}
|
| 956 |
+
},
|
| 957 |
+
"node_modules/@mui/system": {
|
| 958 |
+
"version": "9.0.1",
|
| 959 |
+
"resolved": "https://registry.npmjs.org/@mui/system/-/system-9.0.1.tgz",
|
| 960 |
+
"integrity": "sha512-WvlioaLxk6ewUIOfh0StxUvOPDS1mCfzaulcudsL1brZNXuh0N9FMk7RpH7ImJKjEz412SEy/V/yvqmtxbqxCQ==",
|
| 961 |
+
"license": "MIT",
|
| 962 |
+
"dependencies": {
|
| 963 |
+
"@babel/runtime": "^7.29.2",
|
| 964 |
+
"@mui/private-theming": "^9.0.1",
|
| 965 |
+
"@mui/styled-engine": "^9.0.0",
|
| 966 |
+
"@mui/types": "^9.0.0",
|
| 967 |
+
"@mui/utils": "^9.0.1",
|
| 968 |
+
"clsx": "^2.1.1",
|
| 969 |
+
"csstype": "^3.2.3",
|
| 970 |
+
"prop-types": "^15.8.1"
|
| 971 |
+
},
|
| 972 |
+
"engines": {
|
| 973 |
+
"node": ">=14.0.0"
|
| 974 |
+
},
|
| 975 |
+
"funding": {
|
| 976 |
+
"type": "opencollective",
|
| 977 |
+
"url": "https://opencollective.com/mui-org"
|
| 978 |
+
},
|
| 979 |
+
"peerDependencies": {
|
| 980 |
+
"@emotion/react": "^11.5.0",
|
| 981 |
+
"@emotion/styled": "^11.3.0",
|
| 982 |
+
"@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0",
|
| 983 |
+
"react": "^17.0.0 || ^18.0.0 || ^19.0.0"
|
| 984 |
+
},
|
| 985 |
+
"peerDependenciesMeta": {
|
| 986 |
+
"@emotion/react": {
|
| 987 |
+
"optional": true
|
| 988 |
+
},
|
| 989 |
+
"@emotion/styled": {
|
| 990 |
+
"optional": true
|
| 991 |
+
},
|
| 992 |
+
"@types/react": {
|
| 993 |
+
"optional": true
|
| 994 |
+
}
|
| 995 |
+
}
|
| 996 |
+
},
|
| 997 |
+
"node_modules/@mui/types": {
|
| 998 |
+
"version": "9.0.0",
|
| 999 |
+
"resolved": "https://registry.npmjs.org/@mui/types/-/types-9.0.0.tgz",
|
| 1000 |
+
"integrity": "sha512-i1cuFCAWN44b3AJWO7mh7tuh1sqbQSeVr/94oG0TX5uXivac8XalgE4/6fQZcmGZigzbQ35IXxj/4jLpRIBYZg==",
|
| 1001 |
+
"license": "MIT",
|
| 1002 |
+
"dependencies": {
|
| 1003 |
+
"@babel/runtime": "^7.29.2"
|
| 1004 |
+
},
|
| 1005 |
+
"peerDependencies": {
|
| 1006 |
+
"@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0"
|
| 1007 |
+
},
|
| 1008 |
+
"peerDependenciesMeta": {
|
| 1009 |
+
"@types/react": {
|
| 1010 |
+
"optional": true
|
| 1011 |
+
}
|
| 1012 |
+
}
|
| 1013 |
+
},
|
| 1014 |
+
"node_modules/@mui/utils": {
|
| 1015 |
+
"version": "9.0.1",
|
| 1016 |
+
"resolved": "https://registry.npmjs.org/@mui/utils/-/utils-9.0.1.tgz",
|
| 1017 |
+
"integrity": "sha512-f3UO3jNN1pYg5zxqXC81Bvv8hx5ACcYc0387382ZI7M5ono1heIwHYLrKsz85myguWdeVKPRZGmDdynWUBjK2g==",
|
| 1018 |
+
"license": "MIT",
|
| 1019 |
+
"dependencies": {
|
| 1020 |
+
"@babel/runtime": "^7.29.2",
|
| 1021 |
+
"@mui/types": "^9.0.0",
|
| 1022 |
+
"@types/prop-types": "^15.7.15",
|
| 1023 |
+
"clsx": "^2.1.1",
|
| 1024 |
+
"prop-types": "^15.8.1",
|
| 1025 |
+
"react-is": "^19.2.4"
|
| 1026 |
+
},
|
| 1027 |
+
"engines": {
|
| 1028 |
+
"node": ">=14.0.0"
|
| 1029 |
+
},
|
| 1030 |
+
"funding": {
|
| 1031 |
+
"type": "opencollective",
|
| 1032 |
+
"url": "https://opencollective.com/mui-org"
|
| 1033 |
+
},
|
| 1034 |
+
"peerDependencies": {
|
| 1035 |
+
"@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0",
|
| 1036 |
+
"react": "^17.0.0 || ^18.0.0 || ^19.0.0"
|
| 1037 |
+
},
|
| 1038 |
+
"peerDependenciesMeta": {
|
| 1039 |
+
"@types/react": {
|
| 1040 |
+
"optional": true
|
| 1041 |
+
}
|
| 1042 |
+
}
|
| 1043 |
+
},
|
| 1044 |
+
"node_modules/@pollen-robotics/reachy-mini-sdk": {
|
| 1045 |
+
"version": "1.8.0-rc1-main.fd4354c",
|
| 1046 |
+
"resolved": "https://registry.npmjs.org/@pollen-robotics/reachy-mini-sdk/-/reachy-mini-sdk-1.8.0-rc1-main.fd4354c.tgz",
|
| 1047 |
+
"integrity": "sha512-I/3cVtLbggPyhYEfp1v/jPZh6PgcVrY0eoaMF5qSXsoKNoX7qJVmcCzmsrZVM7Uf5o9FwQh8uFMORtZ0nWV8Ig==",
|
| 1048 |
+
"license": "Apache-2.0",
|
| 1049 |
+
"dependencies": {
|
| 1050 |
+
"@emotion/react": "^11.14.0",
|
| 1051 |
+
"@emotion/styled": "^11.14.1",
|
| 1052 |
+
"@huggingface/hub": "^0.15.2",
|
| 1053 |
+
"@mui/icons-material": "^7.3.5",
|
| 1054 |
+
"@mui/material": "^7.3.5"
|
| 1055 |
+
},
|
| 1056 |
+
"peerDependencies": {
|
| 1057 |
+
"react": "^18.0.0 || ^19.0.0",
|
| 1058 |
+
"react-dom": "^18.0.0 || ^19.0.0"
|
| 1059 |
+
},
|
| 1060 |
+
"peerDependenciesMeta": {
|
| 1061 |
+
"react": {
|
| 1062 |
+
"optional": true
|
| 1063 |
+
},
|
| 1064 |
+
"react-dom": {
|
| 1065 |
+
"optional": true
|
| 1066 |
+
}
|
| 1067 |
+
}
|
| 1068 |
+
},
|
| 1069 |
+
"node_modules/@pollen-robotics/reachy-mini-sdk/node_modules/@mui/core-downloads-tracker": {
|
| 1070 |
"version": "7.3.11",
|
| 1071 |
"resolved": "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-7.3.11.tgz",
|
| 1072 |
"integrity": "sha512-a7I/b/nBTdXYz2cOSlEmkQ9WWE1x8FHpqMhFPp+Y1VPFxcOw91G5ELOHARQAGSPy5V+UCgJua6K/1x70bAtQPw==",
|
|
|
|
| 1076 |
"url": "https://opencollective.com/mui-org"
|
| 1077 |
}
|
| 1078 |
},
|
| 1079 |
+
"node_modules/@pollen-robotics/reachy-mini-sdk/node_modules/@mui/icons-material": {
|
| 1080 |
"version": "7.3.11",
|
| 1081 |
"resolved": "https://registry.npmjs.org/@mui/icons-material/-/icons-material-7.3.11.tgz",
|
| 1082 |
"integrity": "sha512-+hz5ilwHZ3djd5es3sCErLioqe/NhZcYTsV/TNXZAMdJdb23F4xzJjqnnZdnurc3S1+ietcssRNqieOhPQLZ7Q==",
|
|
|
|
| 1102 |
}
|
| 1103 |
}
|
| 1104 |
},
|
| 1105 |
+
"node_modules/@pollen-robotics/reachy-mini-sdk/node_modules/@mui/material": {
|
| 1106 |
"version": "7.3.11",
|
| 1107 |
"resolved": "https://registry.npmjs.org/@mui/material/-/material-7.3.11.tgz",
|
| 1108 |
"integrity": "sha512-yq8bPc3LxOwKRWpcjRgDkYFmpM6aKlARfESTmOQcvLYFeJwtHte2tw6hJDrb8sk8wcvpDprHEHVaoUU0MslIkw==",
|
|
|
|
| 1152 |
}
|
| 1153 |
}
|
| 1154 |
},
|
| 1155 |
+
"node_modules/@pollen-robotics/reachy-mini-sdk/node_modules/@mui/private-theming": {
|
| 1156 |
"version": "7.3.11",
|
| 1157 |
"resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-7.3.11.tgz",
|
| 1158 |
"integrity": "sha512-9B+YKms0fRHbNrqp9tOT/DNbNnU5gyvJ1o3qAGXfq8GmZcbJnE3At9x07Zr/o0pkhzg4aDdwXVqe4+AcgtOCPA==",
|
|
|
|
| 1179 |
}
|
| 1180 |
}
|
| 1181 |
},
|
| 1182 |
+
"node_modules/@pollen-robotics/reachy-mini-sdk/node_modules/@mui/styled-engine": {
|
| 1183 |
"version": "7.3.10",
|
| 1184 |
"resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-7.3.10.tgz",
|
| 1185 |
"integrity": "sha512-WxE9SiF8xskAQqGjsp0poXCkCqsoXFEsSr0HBXfApmGHR+DBnXRp+z46Vsltg4gpPM4Z96DeAQRpeAOnhNg7Ng==",
|
|
|
|
| 1213 |
}
|
| 1214 |
}
|
| 1215 |
},
|
| 1216 |
+
"node_modules/@pollen-robotics/reachy-mini-sdk/node_modules/@mui/system": {
|
| 1217 |
"version": "7.3.11",
|
| 1218 |
"resolved": "https://registry.npmjs.org/@mui/system/-/system-7.3.11.tgz",
|
| 1219 |
"integrity": "sha512-7izwGWdNawAKpBKcRlx7f2gFnAAjmASBWvMcyX4YYEeLOFsbfGRbUYGInvnAcUeql3rPxI7F9Ft4oY2OLRz44g==",
|
|
|
|
| 1253 |
}
|
| 1254 |
}
|
| 1255 |
},
|
| 1256 |
+
"node_modules/@pollen-robotics/reachy-mini-sdk/node_modules/@mui/types": {
|
| 1257 |
"version": "7.4.12",
|
| 1258 |
"resolved": "https://registry.npmjs.org/@mui/types/-/types-7.4.12.tgz",
|
| 1259 |
"integrity": "sha512-iKNAF2u9PzSIj40CjvKJWxFXJo122jXVdrmdh0hMYd+FR+NuJMkr/L88XwWLCRiJ5P1j+uyac25+Kp6YC4hu6w==",
|
|
|
|
| 1270 |
}
|
| 1271 |
}
|
| 1272 |
},
|
| 1273 |
+
"node_modules/@pollen-robotics/reachy-mini-sdk/node_modules/@mui/utils": {
|
| 1274 |
"version": "7.3.11",
|
| 1275 |
"resolved": "https://registry.npmjs.org/@mui/utils/-/utils-7.3.11.tgz",
|
| 1276 |
"integrity": "sha512-XTjGnifwteg71/ij+0e7Y7d+hwyntMYP5wPoA/g2drdGH+Flkvjwy0OfrVpKBbaOvofq4zU/LIyUZyKgmWu18g==",
|
|
|
|
| 1300 |
}
|
| 1301 |
}
|
| 1302 |
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1303 |
"node_modules/@popperjs/core": {
|
| 1304 |
"version": "2.11.8",
|
| 1305 |
"resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz",
|
|
|
|
| 2749 |
"optional": true
|
| 2750 |
}
|
| 2751 |
}
|
| 2752 |
+
},
|
| 2753 |
+
"node_modules/yaml": {
|
| 2754 |
+
"version": "2.9.0",
|
| 2755 |
+
"resolved": "https://registry.npmjs.org/yaml/-/yaml-2.9.0.tgz",
|
| 2756 |
+
"integrity": "sha512-2AvhNX3mb8zd6Zy7INTtSpl1F15HW6Wnqj0srWlkKLcpYl/gMIMJiyuGq2KeI2YFxUPjdlB+3Lc10seMLtL4cA==",
|
| 2757 |
+
"dev": true,
|
| 2758 |
+
"license": "ISC",
|
| 2759 |
+
"optional": true,
|
| 2760 |
+
"peer": true,
|
| 2761 |
+
"bin": {
|
| 2762 |
+
"yaml": "bin.mjs"
|
| 2763 |
+
},
|
| 2764 |
+
"engines": {
|
| 2765 |
+
"node": ">= 14.6"
|
| 2766 |
+
},
|
| 2767 |
+
"funding": {
|
| 2768 |
+
"url": "https://github.com/sponsors/eemeli"
|
| 2769 |
+
}
|
| 2770 |
}
|
| 2771 |
}
|
| 2772 |
}
|
|
@@ -13,8 +13,8 @@
|
|
| 13 |
"dependencies": {
|
| 14 |
"@emotion/react": "^11.14.0",
|
| 15 |
"@emotion/styled": "^11.14.1",
|
| 16 |
-
"@mui/icons-material": "^
|
| 17 |
-
"@mui/material": "^
|
| 18 |
"@pollen-robotics/reachy-mini-sdk": "1.8.0-rc1-main.fd4354c",
|
| 19 |
"react": "^19.2.5",
|
| 20 |
"react-dom": "^19.2.5"
|
|
|
|
| 13 |
"dependencies": {
|
| 14 |
"@emotion/react": "^11.14.0",
|
| 15 |
"@emotion/styled": "^11.14.1",
|
| 16 |
+
"@mui/icons-material": "^9.0.1",
|
| 17 |
+
"@mui/material": "^9.0.1",
|
| 18 |
"@pollen-robotics/reachy-mini-sdk": "1.8.0-rc1-main.fd4354c",
|
| 19 |
"react": "^19.2.5",
|
| 20 |
"react-dom": "^19.2.5"
|
|
@@ -369,10 +369,11 @@ export default function EmotionsView({ robot }: EmotionsViewProps) {
|
|
| 369 |
would snap because `auto` isn't an animatable value. */}
|
| 370 |
<Stack
|
| 371 |
direction="column"
|
| 372 |
-
alignItems="center"
|
| 373 |
-
justifyContent="center"
|
| 374 |
spacing={2}
|
| 375 |
sx={{
|
|
|
|
|
|
|
|
|
|
| 376 |
minHeight:
|
| 377 |
scrollH != null
|
| 378 |
? drillOpen
|
|
@@ -384,7 +385,9 @@ export default function EmotionsView({ robot }: EmotionsViewProps) {
|
|
| 384 |
: drillOpen
|
| 385 |
? 'auto'
|
| 386 |
: '100%',
|
|
|
|
| 387 |
px: 2,
|
|
|
|
| 388 |
// When the panel opens, the section collapses to its
|
| 389 |
// natural height which would otherwise glue the wheel
|
| 390 |
// to the very top of the column. We add a chunk of
|
|
@@ -392,21 +395,22 @@ export default function EmotionsView({ robot }: EmotionsViewProps) {
|
|
| 392 |
// up, just not all the way - keeps it visually anchored
|
| 393 |
// and leaves room for the strip overlay above.
|
| 394 |
pt: drillOpen ? '80px' : 2,
|
|
|
|
| 395 |
// Just enough room for visual breathing + iOS safe area.
|
| 396 |
// The "now playing" UI lives at the top of the view now,
|
| 397 |
// so no bottom toaster to reserve room for.
|
| 398 |
pb: drillOpen
|
| 399 |
? '12px'
|
| 400 |
: 'calc(24px + env(safe-area-inset-bottom))',
|
|
|
|
| 401 |
transition: transitionsReady
|
| 402 |
? // Clean ease-in-out (Material standard) - no overshoot,
|
| 403 |
// no snap, no spring punch at the end. Same curve in
|
| 404 |
// both directions so opening and closing the family
|
| 405 |
// panel feel symmetrical.
|
| 406 |
'min-height 400ms cubic-bezier(0.4, 0, 0.2, 1), padding-top 400ms cubic-bezier(0.4, 0, 0.2, 1), padding-bottom 400ms cubic-bezier(0.4, 0, 0.2, 1)'
|
| 407 |
-
: 'none'
|
| 408 |
-
}}
|
| 409 |
-
>
|
| 410 |
<ResponsiveWheel
|
| 411 |
onSelect={handleSelect}
|
| 412 |
onSpin={handleSpinSettled}
|
|
@@ -441,20 +445,17 @@ export default function EmotionsView({ robot }: EmotionsViewProps) {
|
|
| 441 |
return (
|
| 442 |
<Typography
|
| 443 |
variant="body2"
|
| 444 |
-
color="text.secondary"
|
| 445 |
align="center"
|
| 446 |
aria-hidden={hideHint}
|
| 447 |
sx={{
|
|
|
|
| 448 |
maxWidth: 320,
|
| 449 |
opacity: hideHint ? 0 : 0.55,
|
| 450 |
visibility: hideHint ? 'hidden' : 'visible',
|
| 451 |
-
transition: 'opacity 200ms ease'
|
| 452 |
-
}}
|
| 453 |
-
|
| 454 |
-
|
| 455 |
-
<br />
|
| 456 |
-
or hit the dice for a random spin.
|
| 457 |
-
</Typography>
|
| 458 |
);
|
| 459 |
})()}
|
| 460 |
</Stack>
|
|
@@ -491,7 +492,6 @@ export default function EmotionsView({ robot }: EmotionsViewProps) {
|
|
| 491 |
</Box>
|
| 492 |
)}
|
| 493 |
</Box>
|
| 494 |
-
|
| 495 |
<NowPlayingStrip
|
| 496 |
status={status}
|
| 497 |
currentId={nowPlayingId}
|
|
|
|
| 369 |
would snap because `auto` isn't an animatable value. */}
|
| 370 |
<Stack
|
| 371 |
direction="column"
|
|
|
|
|
|
|
| 372 |
spacing={2}
|
| 373 |
sx={{
|
| 374 |
+
alignItems: "center",
|
| 375 |
+
justifyContent: "center",
|
| 376 |
+
|
| 377 |
minHeight:
|
| 378 |
scrollH != null
|
| 379 |
? drillOpen
|
|
|
|
| 385 |
: drillOpen
|
| 386 |
? 'auto'
|
| 387 |
: '100%',
|
| 388 |
+
|
| 389 |
px: 2,
|
| 390 |
+
|
| 391 |
// When the panel opens, the section collapses to its
|
| 392 |
// natural height which would otherwise glue the wheel
|
| 393 |
// to the very top of the column. We add a chunk of
|
|
|
|
| 395 |
// up, just not all the way - keeps it visually anchored
|
| 396 |
// and leaves room for the strip overlay above.
|
| 397 |
pt: drillOpen ? '80px' : 2,
|
| 398 |
+
|
| 399 |
// Just enough room for visual breathing + iOS safe area.
|
| 400 |
// The "now playing" UI lives at the top of the view now,
|
| 401 |
// so no bottom toaster to reserve room for.
|
| 402 |
pb: drillOpen
|
| 403 |
? '12px'
|
| 404 |
: 'calc(24px + env(safe-area-inset-bottom))',
|
| 405 |
+
|
| 406 |
transition: transitionsReady
|
| 407 |
? // Clean ease-in-out (Material standard) - no overshoot,
|
| 408 |
// no snap, no spring punch at the end. Same curve in
|
| 409 |
// both directions so opening and closing the family
|
| 410 |
// panel feel symmetrical.
|
| 411 |
'min-height 400ms cubic-bezier(0.4, 0, 0.2, 1), padding-top 400ms cubic-bezier(0.4, 0, 0.2, 1), padding-bottom 400ms cubic-bezier(0.4, 0, 0.2, 1)'
|
| 412 |
+
: 'none'
|
| 413 |
+
}}>
|
|
|
|
| 414 |
<ResponsiveWheel
|
| 415 |
onSelect={handleSelect}
|
| 416 |
onSpin={handleSpinSettled}
|
|
|
|
| 445 |
return (
|
| 446 |
<Typography
|
| 447 |
variant="body2"
|
|
|
|
| 448 |
align="center"
|
| 449 |
aria-hidden={hideHint}
|
| 450 |
sx={{
|
| 451 |
+
color: "text.secondary",
|
| 452 |
maxWidth: 320,
|
| 453 |
opacity: hideHint ? 0 : 0.55,
|
| 454 |
visibility: hideHint ? 'hidden' : 'visible',
|
| 455 |
+
transition: 'opacity 200ms ease'
|
| 456 |
+
}}>Tap a wedge to browse,
|
| 457 |
+
<br />or hit the dice for a random spin.
|
| 458 |
+
</Typography>
|
|
|
|
|
|
|
|
|
|
| 459 |
);
|
| 460 |
})()}
|
| 461 |
</Stack>
|
|
|
|
| 492 |
</Box>
|
| 493 |
)}
|
| 494 |
</Box>
|
|
|
|
| 495 |
<NowPlayingStrip
|
| 496 |
status={status}
|
| 497 |
currentId={nowPlayingId}
|
|
@@ -203,7 +203,6 @@ export default function NowPlayingStrip({
|
|
| 203 |
}}
|
| 204 |
/>
|
| 205 |
</Box>
|
| 206 |
-
|
| 207 |
{/* Title block floating in the top-left. Two lines:
|
| 208 |
* - emotion name (primary, prominent)
|
| 209 |
* - duration · family (secondary, small caption)
|
|
@@ -213,19 +212,20 @@ export default function NowPlayingStrip({
|
|
| 213 |
*/}
|
| 214 |
<Stack
|
| 215 |
direction="row"
|
| 216 |
-
alignItems="center"
|
| 217 |
spacing={1.5}
|
| 218 |
sx={{
|
|
|
|
| 219 |
position: 'absolute',
|
| 220 |
top: '12px',
|
| 221 |
left: '16px',
|
|
|
|
| 222 |
// No more Stop pill on the right: the title can breathe
|
| 223 |
// all the way to the edge (minus a comfortable gutter so
|
| 224 |
// long emotion names don't kiss the viewport border).
|
| 225 |
right: '16px',
|
| 226 |
-
|
| 227 |
-
|
| 228 |
-
|
| 229 |
<Box
|
| 230 |
aria-hidden
|
| 231 |
sx={{
|
|
@@ -277,10 +277,11 @@ export default function NowPlayingStrip({
|
|
| 277 |
|
| 278 |
<Stack
|
| 279 |
direction="row"
|
| 280 |
-
alignItems="center"
|
| 281 |
spacing={0.75}
|
| 282 |
-
sx={{
|
| 283 |
-
|
|
|
|
|
|
|
| 284 |
<Typography
|
| 285 |
sx={{
|
| 286 |
fontSize: 13,
|
|
@@ -322,7 +323,6 @@ export default function NowPlayingStrip({
|
|
| 322 |
</Stack>
|
| 323 |
</Stack>
|
| 324 |
</Stack>
|
| 325 |
-
|
| 326 |
</Box>
|
| 327 |
);
|
| 328 |
}
|
|
|
|
| 203 |
}}
|
| 204 |
/>
|
| 205 |
</Box>
|
|
|
|
| 206 |
{/* Title block floating in the top-left. Two lines:
|
| 207 |
* - emotion name (primary, prominent)
|
| 208 |
* - duration · family (secondary, small caption)
|
|
|
|
| 212 |
*/}
|
| 213 |
<Stack
|
| 214 |
direction="row"
|
|
|
|
| 215 |
spacing={1.5}
|
| 216 |
sx={{
|
| 217 |
+
alignItems: "center",
|
| 218 |
position: 'absolute',
|
| 219 |
top: '12px',
|
| 220 |
left: '16px',
|
| 221 |
+
|
| 222 |
// No more Stop pill on the right: the title can breathe
|
| 223 |
// all the way to the edge (minus a comfortable gutter so
|
| 224 |
// long emotion names don't kiss the viewport border).
|
| 225 |
right: '16px',
|
| 226 |
+
|
| 227 |
+
pointerEvents: 'none'
|
| 228 |
+
}}>
|
| 229 |
<Box
|
| 230 |
aria-hidden
|
| 231 |
sx={{
|
|
|
|
| 277 |
|
| 278 |
<Stack
|
| 279 |
direction="row"
|
|
|
|
| 280 |
spacing={0.75}
|
| 281 |
+
sx={{
|
| 282 |
+
alignItems: "center",
|
| 283 |
+
minWidth: 0
|
| 284 |
+
}}>
|
| 285 |
<Typography
|
| 286 |
sx={{
|
| 287 |
fontSize: 13,
|
|
|
|
| 323 |
</Stack>
|
| 324 |
</Stack>
|
| 325 |
</Stack>
|
|
|
|
| 326 |
</Box>
|
| 327 |
);
|
| 328 |
}
|
|
@@ -92,16 +92,25 @@ function buildTheme(mode: 'light' | 'dark'): Theme {
|
|
| 92 |
// a touch and inherit the text colour so the outline
|
| 93 |
// matches the label hue (primary CTA reads as primary).
|
| 94 |
outlined: { borderWidth: 1.5 },
|
| 95 |
-
outlinedPrimary: ({ theme }) => ({
|
| 96 |
-
borderColor: theme.palette.primary.main,
|
| 97 |
-
'&:hover': {
|
| 98 |
-
borderWidth: 1.5,
|
| 99 |
-
backgroundColor: `rgba(255, 149, 0, ${
|
| 100 |
-
theme.palette.mode === 'dark' ? 0.1 : 0.08
|
| 101 |
-
})`,
|
| 102 |
-
},
|
| 103 |
-
}),
|
| 104 |
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 105 |
},
|
| 106 |
MuiPaper: {
|
| 107 |
styleOverrides: {
|
|
|
|
| 92 |
// a touch and inherit the text colour so the outline
|
| 93 |
// matches the label hue (primary CTA reads as primary).
|
| 94 |
outlined: { borderWidth: 1.5 },
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 95 |
},
|
| 96 |
+
// MUI v9 removed variant-color combination slots like
|
| 97 |
+
// `outlinedPrimary` from `styleOverrides`. The migration
|
| 98 |
+
// path is the new `variants` API which matches on prop
|
| 99 |
+
// combinations and works the same way at runtime.
|
| 100 |
+
variants: [
|
| 101 |
+
{
|
| 102 |
+
props: { variant: 'outlined', color: 'primary' },
|
| 103 |
+
style: ({ theme }) => ({
|
| 104 |
+
borderColor: theme.palette.primary.main,
|
| 105 |
+
'&:hover': {
|
| 106 |
+
borderWidth: 1.5,
|
| 107 |
+
backgroundColor: `rgba(255, 149, 0, ${
|
| 108 |
+
theme.palette.mode === 'dark' ? 0.1 : 0.08
|
| 109 |
+
})`,
|
| 110 |
+
},
|
| 111 |
+
}),
|
| 112 |
+
},
|
| 113 |
+
],
|
| 114 |
},
|
| 115 |
MuiPaper: {
|
| 116 |
styleOverrides: {
|