getOperationName method

String? getOperationName(
  1. Map<String, dynamic> operation
)

Implementation

String? getOperationName(Map<String, dynamic> operation) {
  String operationId = operation['operationId']?.toString() ?? '';
  String summary = operation['summary']?.toString() ?? '';

  operationId = removeDiacritics(operationId);
  summary = removeDiacritics(summary);

  // Vérifie si operationId ressemble à un hash (32 caractères hexadécimaux)
  final isHash = RegExp(r'^[a-f0-9]{32}$').hasMatch(operationId);

  if ((operationId.isEmpty || isHash) && summary.isNotEmpty) {
    final words = summary.split(RegExp(r'[\s_-]+'));
    if (words.length >= 2) {
      final first = words.first.toLowerCase();
      final last = words.last.toLowerCase();
      return '$first${capitalize(last)}';
    }
  }

  return operationId;
}