resolveWithDefaults method

Future<Map<String, dynamic>> resolveWithDefaults(
  1. ModuleDefinition module, {
  2. required bool defaultsOnly,
})

Resolves module option values, optionally using defaults without prompts.

Implementation

Future<Map<String, dynamic>> resolveWithDefaults(
  ModuleDefinition module, {
  required bool defaultsOnly,
}) async {
  if (!module.hasOptions) return const {};

  final values = <String, dynamic>{};

  if (!defaultsOnly) {
    LoggerService.blank();
    LoggerService.section('${module.displayName} Configuration');
  }

  for (final option in module.options.values) {
    values[option.name] =
        defaultsOnly ? _resolveDefault(option) : _resolveOption(option);
  }

  return values;
}