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) {
super.applyTheme(palette);
final colors = ThemeColorMapper.forComponent(palette, componentName);
// Rest state (track/background)
restBackgroundColorLight =
colors.restIconColorLight; // Slightly darker for sunken track
restTrackColorLight = colors.restBaseColorLight;
restBackgroundColorDark = colors.restIconColorDark;
restTrackColorDark = colors.restBaseColorDark;
// Filled state (progress fill uses accent)
filledColorLight = colors.accentColorLight;
filledTextColorLight =
colors.restBaseColorLight; // Text on accent needs contrast
filledColorDark = colors.accentColorDark;
filledTextColorDark = colors.restBaseColorDark;
// Border color
borderColor = colors.accentColorLight;
}