Fix file attachment API format and duplicate attachments

- Add required 'url' field to file parts in API request
- Use url, mime, filename instead of path field
- Prevent duplicate attachments by checking if path already exists
- Show all files when picker opens with empty query (use space as query)
- Filter git files only when search query provided
- Enter key now works correctly when file list has items
This commit is contained in:
Shantur Rathore
2025-10-24 00:47:02 +01:00
parent 2629276229
commit 26ab3e066f
3 changed files with 17 additions and 14 deletions

View File

@@ -78,16 +78,10 @@ const FilePicker: Component<FilePickerProps> = (props) => {
const gitFiles = cachedGitFiles()
console.log(`[FilePicker] Using ${gitFiles.length} cached git files`)
if (!searchQuery) {
console.log(`[FilePicker] No search query, showing ${gitFiles.length} git files`)
setFiles(gitFiles)
setSelectedIndex(0)
setLoading(false)
return
}
console.log(`[FilePicker] Searching files with query: "${searchQuery}"`)
const searchResponse = await props.instanceClient.find.files({ query: { query: searchQuery } })
console.log(`[FilePicker] Searching files with query: "${searchQuery || "(empty)"}"`)
const searchResponse = await props.instanceClient.find.files({
query: { query: searchQuery || " " },
})
const elapsed = Date.now() - startTime
console.log(`[FilePicker] Search response received in ${elapsed}ms:`, searchResponse)
@@ -99,7 +93,9 @@ const FilePicker: Component<FilePickerProps> = (props) => {
isGitFile: false,
}))
const filteredGitFiles = gitFiles.filter((f) => f.path.toLowerCase().includes(searchQuery.toLowerCase()))
const filteredGitFiles = searchQuery
? gitFiles.filter((f) => f.path.toLowerCase().includes(searchQuery.toLowerCase()))
: gitFiles
const allFiles = [...filteredGitFiles, ...searchFiles]
console.log(