forked from open-webui/open-webui
		
	refac: frontend supported file extensions
This commit is contained in:
		
							parent
							
								
									2e4373c63e
								
							
						
					
					
						commit
						29dd973db9
					
				
					 3 changed files with 23 additions and 13 deletions
				
			
		|  | @ -8,7 +8,7 @@ | ||||||
| 	import Suggestions from './MessageInput/Suggestions.svelte'; | 	import Suggestions from './MessageInput/Suggestions.svelte'; | ||||||
| 	import { uploadDocToVectorDB } from '$lib/apis/rag'; | 	import { uploadDocToVectorDB } from '$lib/apis/rag'; | ||||||
| 	import AddFilesPlaceholder from '../AddFilesPlaceholder.svelte'; | 	import AddFilesPlaceholder from '../AddFilesPlaceholder.svelte'; | ||||||
| 	import { SUPPORTED_FILE_TYPE } from '$lib/constants'; | 	import { SUPPORTED_FILE_TYPE, SUPPORTED_FILE_EXTENSIONS } from '$lib/constants'; | ||||||
| 	import Documents from './MessageInput/Documents.svelte'; | 	import Documents from './MessageInput/Documents.svelte'; | ||||||
| 	import Models from './MessageInput/Models.svelte'; | 	import Models from './MessageInput/Models.svelte'; | ||||||
| 
 | 
 | ||||||
|  | @ -169,11 +169,13 @@ | ||||||
| 						reader.readAsDataURL(file); | 						reader.readAsDataURL(file); | ||||||
| 					} else if ( | 					} else if ( | ||||||
| 						SUPPORTED_FILE_TYPE.includes(file['type']) || | 						SUPPORTED_FILE_TYPE.includes(file['type']) || | ||||||
| 						['md'].includes(file.name.split('.').at(-1)) | 						SUPPORTED_FILE_EXTENSIONS.includes(file.name.split('.').at(-1)) | ||||||
| 					) { | 					) { | ||||||
| 						uploadDoc(file); | 						uploadDoc(file); | ||||||
| 					} else { | 					} else { | ||||||
| 						toast.error(`Unknown File Type '${file['type']}', but accepting and treating as plain text`); | 						toast.error( | ||||||
|  | 							`Unknown File Type '${file['type']}', but accepting and treating as plain text` | ||||||
|  | 						); | ||||||
| 						uploadDoc(file); | 						uploadDoc(file); | ||||||
| 					} | 					} | ||||||
| 				} else { | 				} else { | ||||||
|  | @ -304,12 +306,14 @@ | ||||||
| 								reader.readAsDataURL(file); | 								reader.readAsDataURL(file); | ||||||
| 							} else if ( | 							} else if ( | ||||||
| 								SUPPORTED_FILE_TYPE.includes(file['type']) || | 								SUPPORTED_FILE_TYPE.includes(file['type']) || | ||||||
| 								['md'].includes(file.name.split('.').at(-1)) | 								SUPPORTED_FILE_EXTENSIONS.includes(file.name.split('.').at(-1)) | ||||||
| 							) { | 							) { | ||||||
| 								uploadDoc(file); | 								uploadDoc(file); | ||||||
| 								filesInputElement.value = ''; | 								filesInputElement.value = ''; | ||||||
| 							} else { | 							} else { | ||||||
| 								toast.error(`Unknown File Type '${file['type']}', but accepting and treating as plain text`); | 								toast.error( | ||||||
|  | 									`Unknown File Type '${file['type']}', but accepting and treating as plain text` | ||||||
|  | 								); | ||||||
| 								uploadDoc(file); | 								uploadDoc(file); | ||||||
| 								filesInputElement.value = ''; | 								filesInputElement.value = ''; | ||||||
| 							} | 							} | ||||||
|  | @ -466,8 +470,8 @@ | ||||||
| 							placeholder={chatInputPlaceholder !== '' | 							placeholder={chatInputPlaceholder !== '' | ||||||
| 								? chatInputPlaceholder | 								? chatInputPlaceholder | ||||||
| 								: speechRecognitionListening | 								: speechRecognitionListening | ||||||
| 									? 'Listening...' | 								? 'Listening...' | ||||||
| 									: 'Send a message'} | 								: 'Send a message'} | ||||||
| 							bind:value={prompt} | 							bind:value={prompt} | ||||||
| 							on:keypress={(e) => { | 							on:keypress={(e) => { | ||||||
| 								if (e.keyCode == 13 && !e.shiftKey) { | 								if (e.keyCode == 13 && !e.shiftKey) { | ||||||
|  |  | ||||||
|  | @ -21,9 +21,11 @@ export const SUPPORTED_FILE_TYPE = [ | ||||||
| 	'application/vnd.openxmlformats-officedocument.wordprocessingml.document', | 	'application/vnd.openxmlformats-officedocument.wordprocessingml.document', | ||||||
| 	'application/octet-stream', | 	'application/octet-stream', | ||||||
| 	'application/x-javascript', | 	'application/x-javascript', | ||||||
| 	'text/markdown', | 	'text/markdown' | ||||||
| ]; | ]; | ||||||
| 
 | 
 | ||||||
|  | export const SUPPORTED_FILE_EXTENSIONS = ['md', 'rst']; | ||||||
|  | 
 | ||||||
| // Source: https://kit.svelte.dev/docs/modules#$env-static-public
 | // Source: https://kit.svelte.dev/docs/modules#$env-static-public
 | ||||||
| // This feature, akin to $env/static/private, exclusively incorporates environment variables
 | // This feature, akin to $env/static/private, exclusively incorporates environment variables
 | ||||||
| // that are prefixed with config.kit.env.publicPrefix (usually set to PUBLIC_).
 | // that are prefixed with config.kit.env.publicPrefix (usually set to PUBLIC_).
 | ||||||
|  |  | ||||||
|  | @ -7,7 +7,7 @@ | ||||||
| 	import { documents } from '$lib/stores'; | 	import { documents } from '$lib/stores'; | ||||||
| 	import { createNewDoc, deleteDocByName, getDocs } from '$lib/apis/documents'; | 	import { createNewDoc, deleteDocByName, getDocs } from '$lib/apis/documents'; | ||||||
| 
 | 
 | ||||||
| 	import { SUPPORTED_FILE_TYPE } from '$lib/constants'; | 	import { SUPPORTED_FILE_TYPE, SUPPORTED_FILE_EXTENSIONS } from '$lib/constants'; | ||||||
| 	import { uploadDocToVectorDB } from '$lib/apis/rag'; | 	import { uploadDocToVectorDB } from '$lib/apis/rag'; | ||||||
| 	import { transformFileName } from '$lib/utils'; | 	import { transformFileName } from '$lib/utils'; | ||||||
| 
 | 
 | ||||||
|  | @ -69,11 +69,13 @@ | ||||||
| 				const file = inputFiles[0]; | 				const file = inputFiles[0]; | ||||||
| 				if ( | 				if ( | ||||||
| 					SUPPORTED_FILE_TYPE.includes(file['type']) || | 					SUPPORTED_FILE_TYPE.includes(file['type']) || | ||||||
| 					['md'].includes(file.name.split('.').at(-1)) | 					SUPPORTED_FILE_EXTENSIONS.includes(file.name.split('.').at(-1)) | ||||||
| 				) { | 				) { | ||||||
| 					uploadDoc(file); | 					uploadDoc(file); | ||||||
| 				} else { | 				} else { | ||||||
| 					toast.error(`Unknown File Type '${file['type']}', but accepting and treating as plain text`); | 					toast.error( | ||||||
|  | 						`Unknown File Type '${file['type']}', but accepting and treating as plain text` | ||||||
|  | 					); | ||||||
| 					uploadDoc(file); | 					uploadDoc(file); | ||||||
| 				} | 				} | ||||||
| 			} else { | 			} else { | ||||||
|  | @ -150,11 +152,13 @@ | ||||||
| 						const file = inputFiles[0]; | 						const file = inputFiles[0]; | ||||||
| 						if ( | 						if ( | ||||||
| 							SUPPORTED_FILE_TYPE.includes(file['type']) || | 							SUPPORTED_FILE_TYPE.includes(file['type']) || | ||||||
| 							['md'].includes(file.name.split('.').at(-1)) | 							SUPPORTED_FILE_EXTENSIONS.includes(file.name.split('.').at(-1)) | ||||||
| 						) { | 						) { | ||||||
| 							uploadDoc(file); | 							uploadDoc(file); | ||||||
| 						} else { | 						} else { | ||||||
| 							toast.error(`Unknown File Type '${file['type']}', but accepting and treating as plain text`); | 							toast.error( | ||||||
|  | 								`Unknown File Type '${file['type']}', but accepting and treating as plain text` | ||||||
|  | 							); | ||||||
| 							uploadDoc(file); | 							uploadDoc(file); | ||||||
| 						} | 						} | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Timothy J. Baek
						Timothy J. Baek