Update getProgrammingLanguageName.ts

pull/26459/head^2
Paul Wackerow 2 years ago
parent 020da18f6b
commit 887d30200d
No known key found for this signature in database
GPG Key ID: BB63E296FE9CAB8D
  1. 9
      src/utils/getProgrammingLanguageName.ts

@ -9,15 +9,22 @@ const SOL = ['solidity', 'sol'];
const LANGS = [JS, SH, PY, SOL]; const LANGS = [JS, SH, PY, SOL];
export const getProgrammingLanguageName = (code: string) => { export const getProgrammingLanguageName = (code: string) => {
// If `code` argument matches any of the above, return the first value for the language
for (const lang of LANGS) { for (const lang of LANGS) {
if (lang.includes(code.toLowerCase())) return lang[0]; if (lang.includes(code.toLowerCase())) return lang[0];
} }
// Check if `code` argument starts with the CLASSNAME_PREFIX
const hasLanguageNameProperty = code.startsWith(CLASSNAME_PREFIX); const hasLanguageNameProperty = code.startsWith(CLASSNAME_PREFIX);
// If no matched so far, return default code formatting type
if (!hasLanguageNameProperty) return DEFAULT; if (!hasLanguageNameProperty) return DEFAULT;
// `code` starts with the CLASSNAME_PREFIX, so we need to extract the language name
const newCode = code.replace(CLASSNAME_PREFIX, '').toLowerCase(); const newCode = code.replace(CLASSNAME_PREFIX, '').toLowerCase();
// If declared to be `terminal`, return the DEFAULT
if (newCode === TERMINAL) return DEFAULT; if (newCode === TERMINAL) return DEFAULT;
// If `newCode` argument matches any of the above, return the first value for the language
for (const lang of LANGS) { for (const lang of LANGS) {
if (lang.includes(code.toLowerCase())) return lang[0]; if (lang.includes(newCode.toLowerCase())) return lang[0];
} }
// If no match from above, simply return the extracted language name
return newCode; return newCode;
}; };

Loading…
Cancel
Save