UNPKG

@animech-public/chonky

Version:

A File Browser component for React

55 lines (54 loc) 1.34 kB
import { Nullable } from 'tsdef'; import { FileData } from './file.types'; export interface MouseClickFilePayload { file: FileData; fileDisplayIndex: number; altKey: boolean; ctrlKey: boolean; shiftKey: boolean; clickType: 'single' | 'double'; targetElement: EventTarget; } export interface KeyboardClickFilePayload { file: FileData; fileDisplayIndex: number; enterKey: boolean; altKey: boolean; ctrlKey: boolean; shiftKey: boolean; } export interface StartDragNDropPayload { sourceInstanceId: string; source: Nullable<FileData>; draggedFile: FileData; selectedFiles: FileData[]; } export type EndDragNDropPayload = StartDragNDropPayload & { destination: FileData; copy: boolean; }; export type MoveFilesPayload = EndDragNDropPayload & { files: FileData[]; }; export type RenameFilePayload = { file: FileData; targetName: string; }; export type StartRenamingFilePayload = { fileId: string; }; export type EndRenamingFilePayload = { targetName?: string; }; export type ChangeSelectionPayload = { selection: Set<string>; }; export interface OpenFilesPayload { targetFile?: FileData; files: FileData[]; } export interface OpenFileContextMenuPayload { clientX: number; clientY: number; triggerFileId: Nullable<string>; }