UNPKG

highlight-ts

Version:

Highlight.JS in TypeScript (and ES6).

47 lines 1.37 kB
import { compileLanguage } from './compile'; // Global internal variables used within the highlight.js library. var languages = {}; var aliases = {}; function compiledLanguage(language) { return 'lexemesRe' in language; } export function registerLanguage(language) { languages[language.name] = language; if (language.aliases) { for (var _i = 0, _a = language.aliases; _i < _a.length; _i++) { var alias = _a[_i]; aliases[alias] = language.name; } } } export function registerLanguages() { var languages = []; for (var _i = 0; _i < arguments.length; _i++) { languages[_i] = arguments[_i]; } for (var _a = 0, languages_1 = languages; _a < languages_1.length; _a++) { var language = languages_1[_a]; registerLanguage(language); } } export function listLanguages() { return Object.keys(languages); } export function getLanguage(name) { name = (name || '').toLowerCase(); name = aliases[name] || name; var language = languages[name]; if (!language) { return undefined; } if (compiledLanguage(language)) { return language; } return languages[name] = compileLanguage(language); } export function compileLanguages() { for (var name_1 in languages) { getLanguage(name_1); } } //# sourceMappingURL=languages.js.map