HooksConfigModel.fromYaml constructor

HooksConfigModel.fromYaml(
  1. Map yamlMap
)

Implementation

factory HooksConfigModel.fromYaml(Map<dynamic, dynamic> yamlMap) {
  final result = <String, HookModel>{};
  for (final entry in yamlMap.entries) {
    final hookName = entry.key.toString().trim().toLowerCase();

    // Warn about unknown hook names but still parse (user may know better)
    if (!_kValidHookNames.contains(hookName)) {
      print(
          '⚠️  [hooks] Unknown hook name: "$hookName". Valid names include: ${_kValidHookNames.take(6).join(', ')}, ...');
    }

    if (entry.value == null) continue;
    try {
      final hookMap = Map<String, dynamic>.from(entry.value as Map);
      result[hookName] = HookModel.fromYaml(hookName, hookMap);
    } catch (e) {
      print('⚠️  [hooks] Failed to parse hook "$hookName": $e');
    }
  }
  return HooksConfigModel(hooks: result);
}