36 lines
1009 B
Dart
36 lines
1009 B
Dart
// Flutter imports:
|
|
import 'package:flutter/material.dart';
|
|
|
|
// Package imports:
|
|
import 'package:provider/provider.dart';
|
|
import 'package:remever/components/notifiers/app_settings.dart';
|
|
|
|
/// Функция для построения содержимого [AppDebug]
|
|
typedef AppDebugBuilder = Widget Function(BuildContext context, bool isDebug);
|
|
|
|
class AppDebug extends StatelessWidget {
|
|
///
|
|
/// Вспомогательный виджет для условной отрисовки
|
|
/// если включен дебаг режим в песочнице
|
|
///
|
|
const AppDebug({required this.builder, super.key});
|
|
|
|
/// Построитель
|
|
final AppDebugBuilder builder;
|
|
|
|
@override
|
|
Widget build(BuildContext context) {
|
|
return Consumer<AppSettingsNotifier>(
|
|
builder: (
|
|
BuildContext context,
|
|
AppSettingsNotifier value,
|
|
Widget? child,
|
|
) {
|
|
if (child != null) return child;
|
|
|
|
return builder(context, value.debugMode);
|
|
},
|
|
);
|
|
}
|
|
}
|