setColor method

Future<void> setColor(
  1. String tokenKey,
  2. Color color, {
  3. ThemeModeType? mode,
})

Updates a color token.

If mode is omitted:

  • Dark mode updates the dark palette.
  • Light/system mode updates the light palette.

Implementation

Future<void> setColor(
  String tokenKey,
  Color color, {
  ThemeModeType? mode,
}) async {
  final targetMode = mode ?? _config.mode;

  final palette = targetMode == ThemeModeType.dark
      ? _config.dark
      : _config.light;

  palette[tokenKey] = color.toARGB32();

  await _storage.save(_config);

  notifyListeners();
}