run static method

Future<HookResult> run({
  1. HooksConfig config = const HooksConfig(),
  2. bool registerDefaultTasks = true,
  3. RegisterTasksCallback? registerCustomTasks,
  4. LogLevel logLevel = LogLevel.info,
  5. bool? useAnsiLogger,
})

Runs all predefined hooks using the given config.

By default, all built in tasks are enabled. By setting registerDefaultTasks to false, you can disable all of them. You can also use the registerCustomTasks callback to register your own tasks.

The logLevel, which defaults to LogLevel.info, can be used to configure the logging sensitivity. The useAnsiLogger controls how logging is done. If not specified, the logging mode is auto detected. See ConsoleLogger and SimpleLogger for more details.

Implementation

static Future<HookResult> run({
  HooksConfig config = const HooksConfig(),
  bool registerDefaultTasks = true,
  RegisterTasksCallback? registerCustomTasks,
  LogLevel logLevel = LogLevel.info,
  bool? useAnsiLogger,
}) async {
  final di = _createProviderContainer(logLevel, useAnsiLogger);
  try {
    await _registerTasks(di, registerDefaultTasks, registerCustomTasks);
    final result = await di.read(hooksProvider(config)).call();
    return result;
  } finally {
    di.dispose();
  }
}