fix(web): hide folder tab in agent JSON import uploader (#16754)

This commit is contained in:
euvre
2026-07-08 20:11:55 +08:00
committed by GitHub
parent 2c59d07bdb
commit a41fef49d0
2 changed files with 32 additions and 18 deletions

View File

@@ -158,6 +158,14 @@ interface FileUploaderProps extends Omit<
hideDropzoneOnMaxFileCount?: boolean;
/**
* Whether the folder tab should be shown in the uploader.
* @type boolean
* @default true
* @example showFolderTab={false}
*/
showFolderTab?: boolean;
/**
* Whether the uploader should accept multiple files.
* @type boolean
@@ -192,6 +200,7 @@ export function FileUploader(props: FileUploaderProps) {
multiple = false,
disabled = false,
hideDropzoneOnMaxFileCount = false,
showFolderTab = true,
className,
title,
description,
@@ -387,28 +396,32 @@ export function FileUploader(props: FileUploaderProps) {
<FileText className="size-4" />
{t('fileManager.files', 'Files')}
</TabsTrigger>
<TabsTrigger value="folder" className="gap-2">
<FolderUp className="size-4" />
{t('fileManager.folder', 'Folder')}
</TabsTrigger>
{showFolderTab && (
<TabsTrigger value="folder" className="gap-2">
<FolderUp className="size-4" />
{t('fileManager.folder', 'Folder')}
</TabsTrigger>
)}
</TabsList>
<TabsContent value="file" className="mt-1">
{renderDropzone(false)}
</TabsContent>
<TabsContent value="folder" className="mt-1">
{renderDropzone(true)}
<input
ref={folderInputRef}
type="file"
className="hidden"
multiple
onChange={handleFolderSelect}
{...{
webkitdirectory: '',
directory: '',
}}
/>
</TabsContent>
{showFolderTab && (
<TabsContent value="folder" className="mt-1">
{renderDropzone(true)}
<input
ref={folderInputRef}
type="file"
className="hidden"
multiple
onChange={handleFolderSelect}
{...{
webkitdirectory: '',
directory: '',
}}
/>
</TabsContent>
)}
</Tabs>
)}

View File

@@ -58,6 +58,7 @@ export function UploadAgentForm({ hideModal, onOk }: IModalProps<any>) {
value={field.value}
onValueChange={field.onChange}
maxFileCount={1}
showFolderTab={false}
accept={{ '*.json': [FileMimeType.Json] }}
/>
</FormControl>