setGlobalColorOutput method

void setGlobalColorOutput(
  1. bool enableColorOutput
)

Update global color output setting for all existing loggers

Implementation

void setGlobalColorOutput(bool enableColorOutput) {
  _globalEnableColorOutput = enableColorOutput;

  // Update existing loggers
  for (final logger in _loggers.values) {
    // Remove existing console sinks
    final consoleSinks = logger.sinks.whereType<ConsoleSink>().toList();
    for (final sink in consoleSinks) {
      logger.removeSink(sink);
    }

    // Add new console sink with updated color setting
    if (_globalEnableConsoleLogging) {
      final shouldUseColors =
          enableColorOutput && PlatformUtils.supportsAnsiColors;
      final formatter = ColorizedFormatter(enableColors: shouldUseColors);
      logger.addSink(ConsoleSink(formatter: formatter));
    }
  }
}