(filePath: string)
| 28 | * Extract programming language from file path |
| 29 | */ |
| 30 | export function getLanguageFromFilePath(filePath: string): string { |
| 31 | const ext = path.extname(filePath).toLowerCase(); |
| 32 | |
| 33 | const languageMap: Record<string, string> = { |
| 34 | ".js": "JavaScript", |
| 35 | ".jsx": "JavaScript", |
| 36 | ".ts": "TypeScript", |
| 37 | ".tsx": "TypeScript", |
| 38 | ".py": "Python", |
| 39 | ".java": "Java", |
| 40 | ".cpp": "C++", |
| 41 | ".c": "C", |
| 42 | ".cs": "C#", |
| 43 | ".php": "PHP", |
| 44 | ".rb": "Ruby", |
| 45 | ".go": "Go", |
| 46 | ".rs": "Rust", |
| 47 | ".swift": "Swift", |
| 48 | ".kt": "Kotlin", |
| 49 | ".scala": "Scala", |
| 50 | ".clj": "Clojure", |
| 51 | ".hs": "Haskell", |
| 52 | ".ml": "OCaml", |
| 53 | ".elm": "Elm", |
| 54 | ".dart": "Dart", |
| 55 | ".lua": "Lua", |
| 56 | ".r": "R", |
| 57 | ".m": "Objective-C", |
| 58 | ".mm": "Objective-C++", |
| 59 | ".sh": "Shell", |
| 60 | ".bash": "Bash", |
| 61 | ".zsh": "Zsh", |
| 62 | ".fish": "Fish", |
| 63 | ".ps1": "PowerShell", |
| 64 | ".html": "HTML", |
| 65 | ".css": "CSS", |
| 66 | ".scss": "SCSS", |
| 67 | ".sass": "Sass", |
| 68 | ".less": "Less", |
| 69 | ".vue": "Vue", |
| 70 | ".svelte": "Svelte", |
| 71 | ".md": "Markdown", |
| 72 | ".json": "JSON", |
| 73 | ".xml": "XML", |
| 74 | ".yaml": "YAML", |
| 75 | ".yml": "YAML", |
| 76 | ".toml": "TOML", |
| 77 | ".ini": "INI", |
| 78 | ".cfg": "Config", |
| 79 | ".conf": "Config", |
| 80 | ".sql": "SQL", |
| 81 | ".dockerfile": "Dockerfile", |
| 82 | }; |
| 83 | |
| 84 | return languageMap[ext] || "unknown"; |
| 85 | } |
| 86 | |
| 87 | /** |
no outgoing calls
no test coverage detected