@atlaskit/editor-plugin-code-block-advanced
Version:
CodeBlockAdvanced plugin for @atlaskit/editor-core
146 lines (145 loc) • 6.03 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.mapLanguageToCodeMirror = void 0;
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
var _language = require("@codemirror/language");
var _languageData = require("@codemirror/language-data");
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != (0, _typeof2.default)(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
// getLanguageIdentifier defines `language.alias[0]`
var mapLanguageToCodeMirror = exports.mapLanguageToCodeMirror = function mapLanguageToCodeMirror(language) {
if (!language || language === 'none') {
return undefined;
}
switch (language) {
case 'markdown':
return _language.LanguageDescription.of({
name: 'Markdown',
extensions: ['md', 'markdown', 'mkd'],
load: function load() {
return Promise.resolve().then(function () {
return _interopRequireWildcard(require( /* webpackChunkName: "@atlaskit-internal_@atlaskit/editor-plugin-code-block-advanced-lang-markdown" */
'@codemirror/lang-markdown'));
}).then(function (m) {
return m.markdown({
codeLanguages: _languageData.languages
});
});
}
});
case 'coldfusion':
return _languageData.languages.find(function (l) {
return l.name.toLowerCase() === 'xml';
});
case 'matlab':
return _languageData.languages.find(function (l) {
return l.name.toLowerCase() === 'octave';
});
case 'javafx':
return _languageData.languages.find(function (l) {
return l.name.toLowerCase() === 'java';
});
case 'vbnet':
return _languageData.languages.find(function (l) {
return l.name === 'VB.NET';
});
case 'pas':
return _languageData.languages.find(function (l) {
return l.name.toLowerCase() === 'pascal';
});
case 'cuda':
return _languageData.languages.find(function (l) {
return l.name.toLowerCase() === 'c++';
});
case 'racket':
return _languageData.languages.find(function (l) {
return l.name === 'Common Lisp';
});
case 'abap':
return _languageData.languages.find(function (l) {
return l.name === 'SQL';
});
case 'standardmL':
return _languageData.languages.find(function (l) {
return l.name === 'SML';
});
case 'objective-j':
return _languageData.languages.find(function (l) {
return l.name === 'Objective-C';
});
case 'docker':
return _languageData.languages.find(function (l) {
return l.name === 'Dockerfile';
});
case 'arduino':
return _languageData.languages.find(function (l) {
return l.name === 'C++';
});
case 'visualbasic':
return _languageData.languages.find(function (l) {
return l.name === 'VB.NET';
});
case 'gherkin':
return _languageData.languages.find(function (l) {
return l.name === 'Gherkin';
});
case 'toml':
return _languageData.languages.find(function (l) {
return l.name === 'TOML';
});
case 'handlebars':
return _language.LanguageDescription.of({
name: 'Handlebars',
load: function load() {
return Promise.resolve().then(function () {
return _interopRequireWildcard(require( /* webpackChunkName: "@atlaskit-internal_@atlaskit/editor-plugin-code-block-advanced-lang-handlebars" */
'@xiechao/codemirror-lang-handlebars'));
}).then(function (m) {
return new _language.LanguageSupport(m.handlebarsLanguage);
});
}
});
case 'elixir':
return _language.LanguageDescription.of({
name: 'Elixir',
load: function load() {
return Promise.resolve().then(function () {
return _interopRequireWildcard(require( /* webpackChunkName: "@atlaskit-internal_@atlaskit/editor-plugin-code-block-advanced-lang-elixir" */
'codemirror-lang-elixir'));
}).then(function (m) {
return m.elixir();
});
}
});
case 'graphql':
return _language.LanguageDescription.of({
name: 'GraphQL',
load: function load() {
return Promise.resolve().then(function () {
return _interopRequireWildcard(require( /* webpackChunkName: "@atlaskit-internal_@atlaskit/editor-plugin-code-block-advanced-lang-graphql" */
'cm6-graphql'));
}).then(function (m) {
return m.graphqlLanguageSupport();
});
}
});
case 'actionscript':
return _language.LanguageDescription.of({
name: 'ActionScript',
load: function load() {
return Promise.resolve().then(function () {
return _interopRequireWildcard(require( /* webpackChunkName: "@atlaskit-internal_@atlaskit/editor-plugin-code-block-advanced-lang-actionscript" */
'./actionscript/languageSupport'));
}).then(function (m) {
return m.actionscriptLanguageSupport();
});
}
});
default:
return _languageData.languages.find(function (l) {
return l.alias.includes(language) || l.name.toLowerCase() === (language === null || language === void 0 ? void 0 : language.toLowerCase());
});
}
};