Files
Stirling-PDF/frontend/src/core/hooks/useFileHandler.ts
T

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

20 lines
740 B
TypeScript
Raw Normal View History

2025-08-04 15:01:36 +01:00
import { useCallback } from 'react';
import { useFileActions } from '@app/contexts/FileContext';
2025-11-12 14:54:01 +00:00
import type { StirlingFile } from '@app/types/fileContext';
2025-08-04 15:01:36 +01:00
export const useFileHandler = () => {
const { actions } = useFileActions();
2025-08-04 15:01:36 +01:00
2025-11-12 14:54:01 +00:00
const addFiles = useCallback(async (files: File[], options: { insertAfterPageId?: string; selectFiles?: boolean } = {}): Promise<StirlingFile[]> => {
2025-09-16 15:08:11 +01:00
// Merge default options with passed options - passed options take precedence
const mergedOptions = { selectFiles: true, ...options };
// Let FileContext handle deduplication with quickKey logic
2025-11-12 14:54:01 +00:00
const result = await actions.addFiles(files, mergedOptions);
return result;
}, [actions.addFiles]);
2025-08-04 15:01:36 +01:00
return {
2025-09-16 15:08:11 +01:00
addFiles,
2025-08-04 15:01:36 +01:00
};
};