1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
import type { Language } from '@/types'
const extensionMap: Record<string, Language> = {
ts: 'typescript',
tsx: 'typescript',
js: 'javascript',
jsx: 'javascript',
mjs: 'javascript',
cjs: 'javascript',
rs: 'rust',
json: 'json',
md: 'markdown',
mdx: 'markdown',
html: 'html',
htm: 'html',
css: 'css',
py: 'python',
}
export function detectLanguage(filename: string): Language {
const ext = filename.split('.').pop()?.toLowerCase() ?? ''
return extensionMap[ext] ?? 'plaintext'
}
|