'use strict'; const localeCC: { [id: string]: string; } = { enUS: 'en', enGB: 'en', esLA: 'es', esES: 'es', ptPT: 'pt', ptBR: 'pt', frFR: 'fr', deDE: 'de', itIT: 'it', ruRU: 'ru', }; export function localeToCC(locale: string): string { let ret = localeCC.enGB; if (locale in localeCC) { ret = localeCC[locale]; } return ret; } const dubignore_regexp: { [id: string]: RegExp; } = { en: /\(.*Dub(?:bed)?.*\)|(?:\(RU\))/i, fr: /\(.*Dub(?:bed)?.*\)|(?:\(RU\))|\(?Doublage.*\)?/, de: /\(.*isch\)|\(Dubbed\)|\(RU\)/ }; export function get_diregexp(config: IConfig): RegExp { let ret = dubignore_regexp.en; if (config.crlang in dubignore_regexp) { ret = dubignore_regexp[config.crlang]; } return ret; } const episodes_regexp: { [id: string]: RegExp; } = { en: /Episode\s+((OVA)|(PV )?[S0-9][\-P0-9.]*[a-fA-F]?)\s*$/i, fr: /Épisode\s+((OVA)|(PV )?[S0-9][\-P0-9.]*[a-fA-F]?)\s*$/i, de: /Folge\s+((OVA)|(PV )?[S0-9][\-P0-9.]*[a-fA-F]?)\s*$/i, es: /Episodio\s+((OVA)|(PV )?[S0-9][\-P0-9.]*[a-fA-F]?)\s*$/i, it: /Episodio\s+((OVA)|(PV )?[S0-9][\-P0-9.]*[a-fA-F]?)\s*$/i, pt: /Episódio\s+((OVA)|(PV )?[S0-9][\-P0-9.]*[a-fA-F]?)\s*$/i, ru: /Серия\s+((OVA)|(PV )?[S0-9][\-P0-9.]*[a-fA-F]?)\s*$/i, }; export function get_epregexp(config: IConfig): RegExp { let ret = episodes_regexp.en; if (config.crlang in episodes_regexp) { ret = episodes_regexp[config.crlang]; } return ret; }