parseName function

Map<String, String?> parseName(
  1. String name
)

Parses a given name

Returns a Map witht he extracted values

Implementation

Map<String, String?> parseName(String name) {
  final results = <String, String?>{};

  _regex.forEach((key, re) {
    var result = createRegExp(re).firstMatch(name)?.namedGroup(key);
    if (result != null) {
      if (key == 'language' || key == 'codec' || key == 'source') {
        result = result.toLowerCase();
      }
      if (key == 'seasonV2') {
        results['season'] = result;
      }
      if (key == 'episodeV2') {
        results['episode'] = result;
      }
      // Avoid cleaning the . from 5.1
      if (key == 'audio' || key == 'codec') {
        results[key] = result;
      } else {
        results[key] = clean(result);
      }
    }
  });
  return results;
}