When we first implemented the ShareButton, we wanted to limit how customizable it is, but we found a case where we would like to customize the color of a specific instance, so maybe it would be worth allowing to customize the button color in the same way as the MUI Button and Typography component do
// will be white
<Typography variant="h1" color="white">Title</Typography>
// not a valid prop
<ShareButton {...props} color="white" />
an alternative would be to wrap the "above the fold" section with a theme that modifies the buttons using the theme system, which is cleaner and more flexible, but also more work for the user trying to customize a particular section.
Another example of where theme wrapping might be a good idea is the footer, since we would need to change buttons, links and typography colors (if using a dark background).
When we first implemented the
ShareButton
, we wanted to limit how customizable it is, but we found a case where we would like to customize the color of a specific instance, so maybe it would be worth allowing to customize the button color in the same way as the MUIButton
andTypography
component dohttps://demo-world-happiness-report-git-pablo-341709-act-now-coalition.vercel.app/country/canada
an alternative would be to wrap the "above the fold" section with a theme that modifies the buttons using the theme system, which is cleaner and more flexible, but also more work for the user trying to customize a particular section.
Another example of where theme wrapping might be a good idea is the footer, since we would need to change buttons, links and typography colors (if using a dark background).