applyTheme method
Apply colors from a GeneratedPalette to this component's state.
This method is called when the theme changes or when a new palette is generated. It should update all color properties based on the palette's values.
Implementation should use ThemeColorMapper.forComponent() for component-specific color resolution.
Implementation
@override
void applyTheme(GeneratedPalette palette) {
// Call base implementation to set common colors and palette
super.applyTheme(palette);
final colors = ThemeColorMapper.forComponent(palette, componentName);
// Rest state
restTitleColorLight = colors.restTextColorLight;
restSubtitleColorLight = colors.restIconColorLight;
restIconColorCardLight = colors.accentColorLight;
restTitleColorDark = colors.restTextColorDark;
restSubtitleColorDark = colors.restIconColorDark;
restIconColorCardDark = colors.accentColorDark;
// Hover state
hoverTitleColorLight = colors.hoverTextColorLight;
hoverSubtitleColorLight = colors.hoverIconColorLight;
hoverIconColorCardLight = colors.accentColorLight;
hoverTitleColorDark = colors.hoverTextColorDark;
hoverSubtitleColorDark = colors.hoverIconColorDark;
hoverIconColorCardDark = colors.accentColorDark;
// Pressed state
pressedTitleColorLight = colors.pressedTextColorLight;
pressedSubtitleColorLight = colors.pressedIconColorLight;
pressedIconColorCardLight = colors.accentColorLight;
pressedTitleColorDark = colors.pressedTextColorDark;
pressedSubtitleColorDark = colors.pressedIconColorDark;
pressedIconColorCardDark = colors.accentColorDark;
// Disabled state
disabledTitleColorLight = colors.disabledTextColorLight;
disabledSubtitleColorLight = colors.disabledIconColorLight;
disabledIconColorCardLight = colors.disabledIconColorLight;
disabledTitleColorDark = colors.disabledTextColorDark;
disabledSubtitleColorDark = colors.disabledIconColorDark;
disabledIconColorCardDark = colors.disabledIconColorDark;
}