Add PDF upload with text extraction
This commit is contained in:
+7
-2
@@ -13,6 +13,7 @@ import { InfoModal } from "./components/modals/InfoModal";
|
||||
import { SettingsModal } from "./components/modals/SettingsModal";
|
||||
import { ShortcutsModal } from "./components/modals/ShortcutsModal";
|
||||
import { parseEpub, fetchMetadataFromOpenLibrary } from "./lib/epub";
|
||||
import { parsePdf } from "./lib/pdf";
|
||||
import { formatReadingTime, getORPIndex, getWordDelay } from "./lib/reading";
|
||||
import {
|
||||
IOS_BANNER_DISMISSED_KEY,
|
||||
@@ -148,12 +149,16 @@ export default function App() {
|
||||
}
|
||||
}
|
||||
setBookMetadata(metadata);
|
||||
} else if (file.name.endsWith(".pdf")) {
|
||||
const extractedText = await parsePdf(file);
|
||||
setText(extractedText);
|
||||
setBookMetadata({ title: file.name, author: null, cover: null });
|
||||
} else if (file.name.endsWith(".txt")) {
|
||||
const textContent = await file.text();
|
||||
setText(textContent);
|
||||
setBookMetadata(null);
|
||||
} else {
|
||||
alert("Please upload an EPUB or TXT file");
|
||||
alert("Please upload an EPUB, PDF, or TXT file");
|
||||
}
|
||||
} catch (err) {
|
||||
console.error("Error loading file:", err);
|
||||
@@ -387,7 +392,7 @@ export default function App() {
|
||||
onToggleTextInput={() => setShowTextInput((prev) => !prev)}
|
||||
fileInputRef={fileInputRef}
|
||||
onFileUpload={handleFileUpload}
|
||||
fileAccept=".epub,.txt"
|
||||
fileAccept=".epub,.pdf,.txt"
|
||||
isLoadingFile={isLoadingFile}
|
||||
fullscreenSupported={isFullscreenSupported()}
|
||||
isFullscreen={isFullscreen}
|
||||
|
||||
Reference in New Issue
Block a user