Hiyve Components - v1.0.0
    Preparing search index...

    Shared props interface for FileTableView and FileCardView. Both views receive the same data and handlers from FileManager.

    interface FileListViewProps {
        areAllFilesSelected: (files: FileEntry[]) => boolean;
        areSomeFilesSelected: (files: FileEntry[]) => boolean;
        colors: FileManagerColors;
        displayColumns: FileListColumn[];
        dragHoverFolderPath: string | null;
        enableDragDrop: boolean;
        enableMultiSelect: boolean;
        files: FileEntry[];
        folders: FolderEntry[];
        formatField?: (
            file: FileEntry,
            column: FileListColumn,
        ) => string | undefined;
        getCommentCount?: (file: FileEntry) => number;
        getDisplayName: (file: FileEntry) => string;
        handleContextMenu: (
            event: MouseEvent,
            item: FileEntry | FolderEntry,
        ) => void;
        handleDragEnterFolder: (path: string) => (event: DragEvent) => void;
        handleDragLeaveFolder: (event: DragEvent) => void;
        handleDragOver: (event: DragEvent) => void;
        handleDragStart: (file: FileEntry) => (event: DragEvent) => void;
        handleDropOnFolder: (path: string) => (event: DragEvent) => void;
        handleFileDoubleClick: (file: FileEntry) => void;
        handleFolderDoubleClick: (folder: FolderEntry) => void;
        handleMoreClick: (
            event: MouseEvent<HTMLButtonElement>,
            item: FileEntry | FolderEntry,
        ) => void;
        handleSelectAll: (files: FileEntry[], checked: boolean) => void;
        handleSelectItem: (item: FileEntry | FolderEntry) => void;
        handleSortClick: (column: FileListColumn) => void;
        handleToggleSelect: (file: FileEntry, checked: boolean) => void;
        icons: FileManagerIcons;
        isFileSelected: (file: FileEntry) => boolean;
        isFlatView: boolean;
        labels: FileManagerLabels;
        onCommentClick?: (file: FileEntry) => void;
        onShareFile?: (file: FileEntry) => void;
        renderCellContent: (file: FileEntry, column: FileListColumn) => ReactNode;
        renderColumnHeader: (column: FileListColumn) => ReactNode;
        selectedFiles: FileEntry[];
        selectedItem: FileEntry | FolderEntry | null;
        sortColumn: FileListColumn | null;
        sortDirection: SortDirection;
        styles: FileManagerStyles;
        userId: string;
    }
    Index

    Properties

    areAllFilesSelected: (files: FileEntry[]) => boolean

    Check if all files are selected

    areSomeFilesSelected: (files: FileEntry[]) => boolean

    Check if some (but not all) files are selected

    Merged colors

    displayColumns: FileListColumn[]

    Columns to display (table view)

    dragHoverFolderPath: string | null

    Folder currently hovered during drag

    enableDragDrop: boolean

    Whether drag-and-drop is enabled

    enableMultiSelect: boolean

    Whether multi-select is enabled

    files: FileEntry[]

    Files to display

    folders: FolderEntry[]

    Folders to display

    formatField?: (file: FileEntry, column: FileListColumn) => string | undefined

    Format a field value for display (from fieldFormatters prop)

    getCommentCount?: (file: FileEntry) => number

    Check if a file has comments (returns the count)

    getDisplayName: (file: FileEntry) => string

    Get display name for a file

    handleContextMenu: (event: MouseEvent, item: FileEntry | FolderEntry) => void

    Handle right-click context menu

    handleDragEnterFolder: (path: string) => (event: DragEvent) => void

    Handle drag enter on a folder

    handleDragLeaveFolder: (event: DragEvent) => void

    Handle drag leave from a folder

    handleDragOver: (event: DragEvent) => void

    Handle drag over

    handleDragStart: (file: FileEntry) => (event: DragEvent) => void

    Start dragging a file

    handleDropOnFolder: (path: string) => (event: DragEvent) => void

    Handle drop on a folder

    handleFileDoubleClick: (file: FileEntry) => void

    Handle file double-click (open)

    handleFolderDoubleClick: (folder: FolderEntry) => void

    Handle folder double-click (navigate)

    handleMoreClick: (
        event: MouseEvent<HTMLButtonElement>,
        item: FileEntry | FolderEntry,
    ) => void

    Handle more (⋮) button click

    handleSelectAll: (files: FileEntry[], checked: boolean) => void

    Handle select-all checkbox

    handleSelectItem: (item: FileEntry | FolderEntry) => void

    Handle item click selection

    handleSortClick: (column: FileListColumn) => void

    Handle sort column click

    handleToggleSelect: (file: FileEntry, checked: boolean) => void

    Handle checkbox toggle

    Merged icons

    isFileSelected: (file: FileEntry) => boolean

    Check if a file is selected

    isFlatView: boolean

    Whether flat view is active (hides folders)

    Merged labels

    onCommentClick?: (file: FileEntry) => void

    Open comments panel for a file (undefined if comments are not available)

    onShareFile?: (file: FileEntry) => void

    Open share dialog for a file (undefined if sharing is not available)

    renderCellContent: (file: FileEntry, column: FileListColumn) => ReactNode

    Render cell content for a column (table view)

    renderColumnHeader: (column: FileListColumn) => ReactNode

    Render column header (table view)

    selectedFiles: FileEntry[]

    Array of selected files

    selectedItem: FileEntry | FolderEntry | null

    Currently selected item

    sortColumn: FileListColumn | null

    Current sort column

    sortDirection: SortDirection

    Current sort direction

    Merged styles

    userId: string

    Current user's ID (for ownership checks)