import { useState } from "react"; import reactLogo from "./assets/react.svg"; import { appendToFilename } from './utils/file-utils'; import { openFiles, downloadFile } from './utils/tauri-wrapper' import { rotatePages } from './utils/pdf-operations'; import "./App.css"; function App() { const [greetMsg, setGreetMsg] = useState(""); const [name, setName] = useState(""); async function greet() { // Learn more about Tauri commands at https://tauri.app/v1/guides/features/command setGreetMsg(`Hello, ${name}! You've been greeted from Tauri!`); } async function rotatePdf() { var selected = await openFiles({ multiple: false, filters: [{ name: 'PDF', extensions: ['pdf'] }] }) if (!selected) return; selected const rotated = await rotatePages(selected[0].data, 90); console.log(rotated); const appendedPath = appendToFilename(selected[0].getPath(), "_rotated"); console.log(appendedPath) await downloadFile(rotated, { defaultPath: appendedPath, filters: [{ name: "PDF", extensions: ['pdf'] }] }); console.log("done!") } return (

Welcome to Tauri!

Vite logo Tauri logo React logo

Click on the Tauri, Vite, and React logos to learn more.

{ e.preventDefault(); greet(); }} > setName(e.currentTarget.value)} placeholder="Enter a name..." />

{greetMsg}

); } export default App;