import { ArrowLeftIcon } from '@heroicons/react/outline' import React, { useEffect, useState } from 'react' import { useToggle, useWindowSize } from 'react-use' import Button from './components/Button' import FileSelect from './components/FileSelect' import useInputImage from './hooks/useInputImage' import ShortcutsModal from './components/ShortcutsModal' import Editor from './Editor' // Keeping GUI Window Open async function getRequest(url = '') { const response = await fetch(url, { method: 'GET', cache: 'no-cache', }) return response.json() } if (!process.env.NODE_ENV || process.env.NODE_ENV === 'production') { document.addEventListener('DOMContentLoaded', function () { const url = document.location const route = '/flaskwebgui-keep-server-alive' const intervalRequest = 3 * 1000 function keepAliveServer() { getRequest(url + route).then(data => console.log(data)) } setInterval(keepAliveServer, intervalRequest) }) } function App() { const [file, setFile] = useState() const [showShortcuts, toggleShowShortcuts] = useToggle(false) const windowSize = useWindowSize() const userInputImage = useInputImage() useEffect(() => { setFile(userInputImage) }, [userInputImage]) return (
{file ? ( ) : ( <> )} {file ? (
{showShortcuts && }
{file ? ( ) : ( <>

Image inpainting powered by 🦙 LaMa

{ setFile(f) }} />
)}
) } export default App