import 'log_service.dart'; LogService? _globalLogService; void setLogService(LogService service) { _globalLogService = service; } LogService _ensureService() { return _globalLogService ?? (throw StateError('LogService not initialized')); } class Logger { final String module; final LogService _service; Logger(this.module, this._service); factory Logger.get(String module) { return Logger(module, _ensureService()); } void debug({ required String message, Map? extra, StackTrace? stackTrace, }) => _service.debug( message: message, module: module, extra: extra ?? {}, stackTrace: stackTrace, ); void info({ required String message, required Map extra, StackTrace? stackTrace, }) => _service.info( message: message, module: module, extra: extra, stackTrace: stackTrace, ); void warning({ required String message, required Map extra, StackTrace? stackTrace, }) => _service.warning( message: message, module: module, extra: extra, stackTrace: stackTrace, ); void error({ required String message, required Object error, required StackTrace stackTrace, Map? extra, }) => _service.error( message: message, error: error, stackTrace: stackTrace, module: module, extra: extra, ); } Logger getLogger(String module) => Logger.get(module);