misc_pterodactyl-panel/resources/scripts/modes.ts

117 lines
4.4 KiB
TypeScript

export interface Mode {
name: string;
mime: string;
mimes?: string[];
mode: string;
ext?: string[];
alias?: string[];
file?: RegExp;
}
const modes: Mode[] = [
{ name: 'C', mime: 'text/x-csrc', mode: 'clike', ext: ['c', 'h', 'ino'] },
{
name: 'C++',
mime: 'text/x-c++src',
mode: 'clike',
ext: ['cpp', 'c++', 'cc', 'cxx', 'hpp', 'h++', 'hh', 'hxx'],
alias: ['cpp'],
},
{ name: 'C#', mime: 'text/x-csharp', mode: 'clike', ext: ['cs'], alias: ['csharp', 'cs'] },
{ name: 'CSS', mime: 'text/css', mode: 'css', ext: ['css'] },
{ name: 'CQL', mime: 'text/x-cassandra', mode: 'sql', ext: ['cql'] },
{ name: 'Diff', mime: 'text/x-diff', mode: 'diff', ext: ['diff', 'patch'] },
{ name: 'Dockerfile', mime: 'text/x-dockerfile', mode: 'dockerfile', file: /^Dockerfile$/ },
{ name: 'Git Markdown', mime: 'text/x-gfm', mode: 'gfm', file: /^(readme|contributing|history|license).md$/i },
{ name: 'Golang', mime: 'text/x-go', mode: 'go', ext: ['go'] },
{ name: 'HTML', mime: 'text/html', mode: 'htmlmixed', ext: ['html', 'htm', 'handlebars', 'hbs'], alias: ['xhtml'] },
{ name: 'HTTP', mime: 'message/http', mode: 'http' },
{
name: 'JavaScript',
mime: 'text/javascript',
mimes: [
'text/javascript',
'text/ecmascript',
'application/javascript',
'application/x-javascript',
'application/ecmascript',
],
mode: 'javascript',
ext: ['js'],
alias: ['ecmascript', 'js', 'node'],
},
{
name: 'JSON',
mime: 'application/json',
mimes: ['application/json', 'application/x-json'],
mode: 'javascript',
ext: ['json', 'map'],
alias: ['json5'],
},
{ name: 'Lua', mime: 'text/x-lua', mode: 'lua', ext: ['lua'] },
{ name: 'Markdown', mime: 'text/x-markdown', mode: 'markdown', ext: ['markdown', 'md', 'mkd'] },
{ name: 'MariaDB', mime: 'text/x-mariadb', mode: 'sql' },
{ name: 'MS SQL', mime: 'text/x-mssql', mode: 'sql' },
{ name: 'MySQL', mime: 'text/x-mysql', mode: 'sql' },
{ name: 'Nginx', mime: 'text/x-nginx-conf', mode: 'nginx', file: /nginx.*\.conf$/i },
{
name: 'PHP',
mime: 'text/x-php',
mimes: ['text/x-php', 'application/x-httpd-php', 'application/x-httpd-php-open'],
mode: 'php',
ext: ['php', 'php3', 'php4', 'php5', 'php7', 'phtml'],
},
{ name: 'Plain Text', mime: 'text/plain', mode: 'null', ext: ['txt', 'text', 'conf', 'def', 'list', 'log'] },
{ name: 'PostgreSQL', mime: 'text/x-pgsql', mode: 'sql' },
{
name: 'Properties',
mime: 'text/x-properties',
mode: 'properties',
ext: ['properties', 'ini', 'in'],
alias: ['ini', 'properties'],
},
{ name: 'Pug', mime: 'text/x-pug', mimes: ['text/x-pug', 'text/x-jade'], mode: 'null', ext: ['pug'] },
{
name: 'Python',
mime: 'text/x-python',
mode: 'python',
ext: ['BUILD', 'bzl', 'py', 'pyw'],
file: /^(BUCK|BUILD)$/,
},
{ name: 'Ruby', mime: 'text/x-ruby', mode: 'ruby', ext: ['rb'], alias: ['jruby', 'macruby', 'rake', 'rb', 'rbx'] },
{ name: 'Rust', mime: 'text/x-rustsrc', mode: 'rust', ext: ['rs'] },
{ name: 'Sass', mime: 'text/x-sass', mode: 'sass', ext: ['sass'] },
{ name: 'SCSS', mime: 'text/x-scss', mode: 'css', ext: ['scss'] },
{
name: 'Shell',
mime: 'text/x-sh',
mimes: ['text/x-sh', 'application/x-sh'],
mode: 'shell',
ext: ['sh', 'ksh', 'bash'],
alias: ['bash', 'sh', 'zsh'],
file: /^PKGBUILD$/,
},
{ name: 'SQL', mime: 'text/x-sql', mode: 'sql', ext: ['sql'] },
{ name: 'SQLite', mime: 'text/x-sqlite', mode: 'sql' },
{ name: 'TOML', mime: 'text/x-toml', mode: 'toml', ext: ['toml'] },
{ name: 'TypeScript', mime: 'application/typescript', mode: 'javascript', ext: ['ts'], alias: ['ts'] },
{ name: 'Vue', mime: 'script/x-vue', mimes: ['script/x-vue', 'text/x-vue'], mode: 'vue', ext: ['vue'] },
{
name: 'XML',
mime: 'application/xml',
mimes: ['application/xml', 'text/xml'],
mode: 'xml',
ext: ['xml', 'xsl', 'xsd', 'svg'],
alias: ['rss', 'wsdl', 'xsd'],
},
{
name: 'YAML',
mime: 'text/x-yaml',
mimes: ['text/x-yaml', 'text/yaml'],
mode: 'yaml',
ext: ['yaml', 'yml'],
alias: ['yml'],
},
];
export default modes;