char-fork/llama.cpp

git clone https://git.t4t.associates/char-fork/llama.cpp

Aleksander Grygierui: enforce alphabetical enum member ordering (#27272)01818e495

char/aliceai-t5-moe
4.8 KiB268 linesraw
1/**
2 * Comprehensive dictionary of all supported file types in llama-ui
3 * Organized by category with TypeScript enums for better type safety
4 */
5
6// File type category enum
7export enum FileTypeCategory {
8	AUDIO = 'audio',
9	IMAGE = 'image',
10	PDF = 'pdf',
11	TEXT = 'text',
12	VIDEO = 'video'
13}
14
15/**
16 * Special file types for internal use (not MIME types)
17 */
18export enum SpecialFileType {
19	MCP_PROMPT = 'mcp-prompt'
20}
21
22// Specific file type enums for each category
23export enum FileTypeImage {
24	GIF = 'gif',
25	HEIC = 'heic',
26	HEIF = 'heif',
27	JPEG = 'jpeg',
28	PNG = 'png',
29	SVG = 'svg',
30	WEBP = 'webp'
31}
32
33export enum FileTypeAudio {
34	MP3 = 'mp3',
35	WAV = 'wav',
36	WEBM = 'webm'
37}
38
39export enum FileTypeVideo {
40	MP4 = 'mp4',
41	OGG = 'ogg'
42}
43
44export enum FileTypePdf {
45	PDF = 'pdf'
46}
47
48export enum FileTypeText {
49	ASCIIDOC = 'asciidoc',
50	BIBTEX = 'bibtex',
51	CPP = 'cpp',
52	CSHARP = 'csharp',
53	CSS = 'css',
54	CSV = 'csv',
55	CUDA = 'cuda',
56	DART = 'dart',
57	GO = 'go',
58	HASKELL = 'haskell',
59	HTML = 'html',
60	JAVA = 'java',
61	JAVASCRIPT = 'js',
62	JSON = 'json',
63	JSX = 'jsx',
64	KOTLIN = 'kotlin',
65	LATEX = 'latex',
66	LOG = 'log',
67	MARKDOWN = 'md',
68	PHP = 'php',
69	PLAIN_TEXT = 'plainText',
70	PROPERTIES = 'properties',
71	PYTHON = 'python',
72	R = 'r',
73	RUBY = 'ruby',
74	RUST = 'rust',
75	SCALA = 'scala',
76	SHELL = 'shell',
77	SQL = 'sql',
78	SVELTE = 'svelte',
79	SWIFT = 'swift',
80	TSX = 'tsx',
81	TYPESCRIPT = 'ts',
82	VUE = 'vue',
83	VULKAN = 'vulkan',
84	XML = 'xml',
85	YAML = 'yaml'
86}
87
88// File extension enums
89export enum FileExtensionImage {
90	GIF = '.gif',
91	HEIC = '.heic',
92	HEIF = '.heif',
93	JPEG = '.jpeg',
94	JPG = '.jpg',
95	PNG = '.png',
96	SVG = '.svg',
97	WEBP = '.webp'
98}
99
100export enum FileExtensionAudio {
101	MP3 = '.mp3',
102	WAV = '.wav'
103}
104
105export enum FileExtensionVideo {
106	MP4 = '.mp4',
107	OGG = '.ogg'
108}
109
110export enum FileExtensionPdf {
111	PDF = '.pdf'
112}
113
114export enum FileExtensionText {
115	ADOC = '.adoc',
116	BAT = '.bat',
117	BIB = '.bib',
118	C = '.c',
119	COMP = '.comp',
120	CPP = '.cpp',
121	CS = '.cs',
122	CSS = '.css',
123	CSV = '.csv',
124	CU = '.cu',
125	CUH = '.cuh',
126	DART = '.dart',
127	GO = '.go',
128	H = '.h',
129	HPP = '.hpp',
130	HS = '.hs',
131	HTM = '.htm',
132	HTML = '.html',
133	JAVA = '.java',
134	JS = '.js',
135	JSON = '.json',
136	JSONL = '.jsonl',
137	JSX = '.jsx',
138	KT = '.kt',
139	LOG = '.log',
140	MD = '.md',
141	PHP = '.php',
142	PROPERTIES = '.properties',
143	PY = '.py',
144	R = '.r',
145	RB = '.rb',
146	RS = '.rs',
147	SCALA = '.scala',
148	SH = '.sh',
149	SQL = '.sql',
150	SVELTE = '.svelte',
151	SWIFT = '.swift',
152	TEX = '.tex',
153	TS = '.ts',
154	TSX = '.tsx',
155	TXT = '.txt',
156	VUE = '.vue',
157	XML = '.xml',
158	YAML = '.yaml',
159	YML = '.yml',
160	ZIP = '.zip'
161}
162
163// MIME type prefixes and includes for content detection
164export enum MimeTypePrefix {
165	AUDIO = 'audio/',
166	IMAGE = 'image/',
167	TEXT = 'text'
168}
169
170export enum MimeTypeIncludes {
171	JAVASCRIPT = 'javascript',
172	JSON = 'json',
173	TYPESCRIPT = 'typescript'
174}
175
176// URI patterns for content detection
177export enum UriPattern {
178	DATABASE_KEYWORD = 'database',
179	DATABASE_SCHEME = 'db://'
180}
181
182// MIME type enums
183export enum MimeTypeApplication {
184	JSON = 'application/json',
185	OCTET_STREAM = 'application/octet-stream',
186	PDF = 'application/pdf',
187	ZIP = 'application/zip'
188}
189
190export enum MimeTypeAudio {
191	MP3 = 'audio/mp3',
192	MP3_MPEG = 'audio/mpeg',
193	MP4 = 'audio/mp4',
194	VND_WAVE = 'audio/vnd.wave',
195	WAV = 'audio/wav',
196	WAVE = 'audio/wave',
197	WEBM = 'audio/webm',
198	WEBM_OPUS = 'audio/webm;codecs=opus',
199	X_PN_WAV = 'audio/x-pn-wav',
200	X_WAV = 'audio/x-wav',
201	X_WAVE = 'audio/x-wave'
202}
203
204export enum MimeTypeVideo {
205	MP4 = 'video/mp4',
206	OGG = 'video/ogg'
207}
208
209export enum MimeTypeImage {
210	GIF = 'image/gif',
211	HEIC = 'image/heic',
212	HEIF = 'image/heif',
213	ICO = 'image/x-icon',
214	ICO_MICROSOFT = 'image/vnd.microsoft.icon',
215	JPEG = 'image/jpeg',
216	JPG = 'image/jpg',
217	PNG = 'image/png',
218	SVG = 'image/svg+xml',
219	WEBP = 'image/webp'
220}
221
222export enum MimeTypeText {
223	ASCIIDOC = 'text/asciidoc',
224	BAT = 'application/x-bat',
225	BIBTEX = 'text/x-bibtex',
226	C_HDR = 'text/x-chdr',
227	C_SRC = 'text/x-csrc',
228	CPP_HDR = 'text/x-c++hdr',
229	CPP_SRC = 'text/x-c++src',
230	CSHARP = 'text/x-csharp',
231	CSS = 'text/css',
232	CSV = 'text/csv',
233	CUDA = 'text/x-cuda',
234	DART = 'text/x-dart',
235	GO = 'text/x-go',
236	HASKELL = 'text/x-haskell',
237	HTML = 'text/html',
238	JAVA = 'text/x-java-source',
239	JAVASCRIPT = 'text/javascript',
240	JAVASCRIPT_APP = 'application/javascript',
241	JSON = 'application/json',
242	JSONL = 'application/jsonl',
243	JSX = 'text/jsx',
244	KOTLIN = 'text/x-kotlin',
245	LATEX = 'application/x-latex',
246	MARKDOWN = 'text/markdown',
247	PHP = 'text/x-php',
248	PLAIN = 'text/plain',
249	PROPERTIES = 'text/properties',
250	PYTHON = 'text/x-python',
251	R = 'text/x-r',
252	RUBY = 'text/x-ruby',
253	RUST = 'text/x-rust',
254	SCALA = 'text/x-scala',
255	SHELL = 'text/x-shellscript',
256	SQL = 'text/x-sql',
257	SVELTE = 'text/x-svelte',
258	SWIFT = 'text/x-swift',
259	TEX = 'text/x-tex',
260	TEX_APP = 'application/x-tex',
261	TSX = 'text/tsx',
262	TYPESCRIPT = 'text/typescript',
263	VUE = 'text/x-vue',
264	XML_APP = 'application/xml',
265	XML_TEXT = 'text/xml',
266	YAML_APP = 'application/yaml',
267	YAML_TEXT = 'text/yaml'
268}