import { useState } from 'react' import './Import.css' import Request from '../Request.jsx' function Login() { const error = useState(new URL(window.location).searchParams.get("message") || ""); const status = useState(""); const uid = useState((window.localStorage && window.localStorage.getItem("ew_uid")) || ""); let file=[], file1=[], file2=[], file3=[], password; let has_imported = false; const handleSubmit = async (event) => { event.preventDefault(); if (!file[0] || !file1[0] || has_imported || !password) return; try { has_imported = true; let data = { userdata: JSON.parse(await file[0].text()), home: JSON.parse(await file1[0].text()), missions: file2[0] ? JSON.parse(await file2[0].text()) : undefined, sif_cards: file3[0] ? JSON.parse(await file3[0].text()) : undefined, password: password, jp: true }; if (!data.userdata || !data.userdata.user || !data.userdata.user.id) { error[1]("Incorrect user data file format"); return; } if (!data.home || !data.home.home || !data.home.home.information_list) { error[1]("Incorrect home data file format"); return; } if (!Array.isArray(data.missions) && data.missions) { error[1]("Incorrect mission data file format"); return; } if (!Array.isArray(data.sif_cards) && data.sif_cards) { error[1]("Incorrect sif card data file format"); return; } let resp = await Request( "/api/webui/import", data ); if (resp.result == "OK") { status[1](

Account imported!

User id: {resp.uid}

Migration token: {resp.migration_token}

); } else { error[1](resp.message); } } catch(e) { error[1](e.message); } }; return (

Transfer

{

{ status[0] }

} {file = event.target.files}} accept="application/json"/> {file1 = event.target.files}} accept="application/json"/> {file2 = event.target.files}} accept="application/json"/> {file3 = event.target.files}} accept="application/json"/> {password = event.target.value}} />
{ error[0] ?

Error: { error[0] }. Please reload the page and try again.

:

}
); } export default Login;