Dave Jarvis' Repositories

git clone https://repo.autonoma.ca/repo/treetrek.git

Adds more media types

Author Dave Jarvis <email>
Date 2026-02-08 22:33:53 GMT-0800
Commit f1e6416cfa8c1598840255d304d45fc0d7233125
Parent f9d2c66
MediaTypeSniffer.php
private const EXTENSION_MAP = [
- 'txt' => [self::CAT_TEXT, 'text/plain'],
- 'url' => [self::CAT_TEXT, 'text/plain'],
+ // Web & Markup
'html' => [self::CAT_TEXT, 'text/html'],
'htm' => [self::CAT_TEXT, 'text/html'],
+ 'xhtml' => [self::CAT_TEXT, 'application/xhtml+xml'],
'css' => [self::CAT_TEXT, 'text/css'],
+ 'scss' => [self::CAT_TEXT, 'text/x-scss'],
+ 'less' => [self::CAT_TEXT, 'text/x-less'],
'js' => [self::CAT_TEXT, 'application/javascript'],
+ 'jsx' => [self::CAT_TEXT, 'text/javascript'],
+ 'ts' => [self::CAT_TEXT, 'text/x-typescript'],
+ 'tsx' => [self::CAT_TEXT, 'text/x-typescript'],
+ 'vue' => [self::CAT_TEXT, 'text/x-vue'],
'json' => [self::CAT_TEXT, 'application/json'],
'xml' => [self::CAT_TEXT, 'application/xml'],
+ 'md' => [self::CAT_TEXT, 'text/markdown'],
+ 'wasm' => [self::CAT_APP, 'application/wasm'],
+
+ // Documents
+ 'txt' => [self::CAT_TEXT, 'text/plain'],
'pdf' => [self::CAT_TEXT, 'application/pdf'],
+ 'csv' => [self::CAT_TEXT, 'text/csv'],
+ 'tsv' => [self::CAT_TEXT, 'text/tab-separated-values'],
+ 'tex' => [self::CAT_TEXT, 'text/x-tex'],
+ 'rst' => [self::CAT_TEXT, 'text/x-rst'],
+
+ // Archives
'zip' => [self::CAT_ARCHIVE, 'application/zip'],
'jar' => [self::CAT_ARCHIVE, 'application/java-archive'],
'war' => [self::CAT_ARCHIVE, 'application/java-archive'],
'ear' => [self::CAT_ARCHIVE, 'application/java-archive'],
- 'class' => [self::CAT_APP, 'application/java-vm'],
'gz' => [self::CAT_ARCHIVE, 'application/gzip'],
'bz2' => [self::CAT_ARCHIVE, 'application/x-bzip2'],
'xz' => [self::CAT_ARCHIVE, 'application/x-xz'],
'tar' => [self::CAT_ARCHIVE, 'application/x-tar'],
'rar' => [self::CAT_ARCHIVE, 'application/vnd.rar'],
'7z' => [self::CAT_ARCHIVE, 'application/x-7z-compressed'],
+
+ // Images
'jpg' => [self::CAT_IMAGE, 'image/jpeg'],
'jpeg' => [self::CAT_IMAGE, 'image/jpeg'],
'tif' => [self::CAT_IMAGE, 'image/tiff'],
'ico' => [self::CAT_IMAGE, 'image/x-icon'],
+
+ // Video & Audio
'mp4' => [self::CAT_VIDEO, 'video/mp4'],
'avi' => [self::CAT_VIDEO, 'video/x-msvideo'],
'flac' => [self::CAT_AUDIO, 'audio/flac'],
'aac' => [self::CAT_AUDIO, 'audio/aac'],
+
+ // Programming Languages
'php' => [self::CAT_TEXT, 'application/x-php'],
'py' => [self::CAT_TEXT, 'text/x-python'],
+ 'rb' => [self::CAT_TEXT, 'text/x-ruby'],
'java' => [self::CAT_TEXT, 'text/x-java'],
'c' => [self::CAT_TEXT, 'text/x-c'],
'cpp' => [self::CAT_TEXT, 'text/x-c++'],
'h' => [self::CAT_TEXT, 'text/x-c'],
'hpp' => [self::CAT_TEXT, 'text/x-c++'],
'cs' => [self::CAT_TEXT, 'text/x-csharp'],
'go' => [self::CAT_TEXT, 'text/x-go'],
'rs' => [self::CAT_TEXT, 'text/x-rust'],
- 'rb' => [self::CAT_TEXT, 'text/x-ruby'],
'pl' => [self::CAT_TEXT, 'text/x-perl'],
- 'sh' => [self::CAT_APP, 'application/x-sh'],
- 'bat' => [self::CAT_APP, 'application/x-bat'],
+ 'lua' => [self::CAT_TEXT, 'text/x-lua'],
+ 'swift' => [self::CAT_TEXT, 'text/x-swift'],
+ 'kt' => [self::CAT_TEXT, 'text/x-kotlin'],
+ 'kts' => [self::CAT_TEXT, 'text/x-kotlin'],
+ 'dart' => [self::CAT_TEXT, 'text/x-dart'],
+ 'r' => [self::CAT_TEXT, 'text/x-r'],
+ 'sql' => [self::CAT_TEXT, 'application/sql'],
+ 'sh' => [self::CAT_TEXT, 'application/x-sh'],
+ 'bat' => [self::CAT_TEXT, 'application/x-bat'],
'ps1' => [self::CAT_APP, 'application/x-powershell'],
- 'md' => [self::CAT_TEXT, 'text/markdown'],
+ 'el' => [self::CAT_TEXT, 'text/x-script.elisp'],
+ 'clj' => [self::CAT_TEXT, 'text/x-clojure'],
+ 'ex' => [self::CAT_TEXT, 'text/x-elixir'],
+ 'hs' => [self::CAT_TEXT, 'text/x-haskell'],
+ 'erl' => [self::CAT_TEXT, 'text/x-erlang'],
+ 'm' => [self::CAT_TEXT, 'text/x-objectivec'],
+ 'class' => [self::CAT_APP, 'application/java-vm'],
+ 'groovy' => [self::CAT_TEXT, 'text/x-groovy'],
+
+ // Config & System
'yaml' => [self::CAT_TEXT, 'text/yaml'],
'yml' => [self::CAT_TEXT, 'text/yaml'],
'toml' => [self::CAT_TEXT, 'application/toml'],
'ini' => [self::CAT_TEXT, 'text/plain'],
'cfg' => [self::CAT_TEXT, 'text/plain'],
'conf' => [self::CAT_TEXT, 'text/plain'],
+ 'env' => [self::CAT_TEXT, 'text/plain'],
+ 'gitignore' => [self::CAT_TEXT, 'text/plain'],
+ 'dockerfile' => [self::CAT_TEXT, 'text/plain'],
+ 'version' => [self::CAT_TEXT, 'text/plain'],
+ 'gradle' => [self::CAT_TEXT, 'text/plain'],
+ 'properties' => [self::CAT_TEXT, 'text/plain'],
];
}
?>
-
Delta 51 lines added, 8 lines removed, 43-line increase