mirror of
https://github.com/hanskokx/arcane_framework.git
synced 2026-05-14 10:29:06 +02:00
Added the ability to switch back to normal mode in the environment provider. Adjusted logic to prevent switching to a mode we're already in.
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com>
This commit is contained in:
@@ -11,22 +11,18 @@ class ArcaneEnvironment extends Cubit<Environment> {
|
||||
ArcaneEnvironment() : super(Environment.normal);
|
||||
|
||||
/// Enables debug mode by setting the environment to `Environment.debug`.
|
||||
///
|
||||
/// If provided, [onDebugModeSet] is a callback that will be awaited before switching
|
||||
/// to debug mode. This is useful for performing any setup required when enabling
|
||||
/// demo mode.
|
||||
///
|
||||
/// Example:
|
||||
/// ```dart
|
||||
/// await environmentCubit.enableDebugMode(() async {
|
||||
/// // Perform some setup when enabling demo mode.
|
||||
/// });
|
||||
/// ```
|
||||
Future<void> enableDebugMode(Future<void> Function()? onDebugModeSet) async {
|
||||
if (onDebugModeSet != null) await onDebugModeSet();
|
||||
void enableDebugMode() {
|
||||
if (state == Environment.debug) return;
|
||||
|
||||
emit(Environment.debug);
|
||||
}
|
||||
|
||||
/// Disables debug mode by setting the environment to `Environment.normal`.
|
||||
void disableDebugMode() {
|
||||
if (state == Environment.normal) return;
|
||||
|
||||
emit(Environment.normal);
|
||||
}
|
||||
}
|
||||
|
||||
/// A widget that provides `ArcaneEnvironment` to the widget tree using `BlocProvider`.
|
||||
|
||||
Reference in New Issue
Block a user