"use client"; import type { Ref } from "react"; import { FileBrowserSearchHeader } from "./file-browser-search-header"; import { FileBrowserToolbar } from "./file-browser-parts"; import { useFileBrowserSearch } from "./file-browser-hooks"; export type FileBrowserHeaderProps = { treeLoaded: boolean; search: ReturnType; displayPath: string; fullPath: string; copied: boolean; expandedPathsSize: number; onCopyPath: (value: string) => void | Promise; onStartCreate?: () => void; onOpenFolder: () => void; onCollapseAll: () => void; showCreateButton: boolean; onUploadFiles?: (mode: "files" | "folder") => void; onAddSources?: (opener: HTMLButtonElement) => void; addSourcesButtonRef?: Ref; addSourcesDisabledReason?: string; }; export function FileBrowserHeader({ treeLoaded, search, displayPath, fullPath, copied, expandedPathsSize, onCopyPath, onStartCreate, onOpenFolder, onCollapseAll, showCreateButton, onUploadFiles, onAddSources, addSourcesButtonRef, addSourcesDisabledReason, }: FileBrowserHeaderProps) { if (!treeLoaded) return null; if (search.isSearchActive) { return ( ); } return ( search.setIsSearchActive(true)} onCollapseAll={onCollapseAll} showCreateButton={showCreateButton} onUploadFiles={onUploadFiles} onAddSources={onAddSources} addSourcesButtonRef={addSourcesButtonRef} addSourcesDisabledReason={addSourcesDisabledReason} /> ); }