💄 Passe la navigation de vue à React

This commit is contained in:
2022-03-04 16:35:09 +01:00
parent 844f625298
commit 44e9b5d694
11 changed files with 3622 additions and 81 deletions

View File

@@ -42,8 +42,8 @@ function App() {
const [listPages, setListPages] = React.useState(pages);
const [passphrase, setPassphrase] = React.useState(sessionPassphrase);
const history = useHistory();
const [user, setUser] = React.useState(false);
const [error, isError] = React.useState(false);
const [user, setUser] = React.useState(checkPassphrase());
const [error, isError] = React.useState(!checkPassphrase());
const signin = cb => {
const isAuthenticated = checkPassphrase();
@@ -57,6 +57,7 @@ function App() {
};
const signout = cb => {
sessionStorage.removeItem("key");
setUser(false);
cb();
};
@@ -98,7 +99,7 @@ function App() {
<p>
Bienvenue !{" "}
<Button variant="outlined" size="small" sx={{align: "right"}} onClick={() => {
signout(() => history.push("/"));
signout(() => history.push("/diary/public"));
}}>
Fermer mon carnet à clef
</Button>

View File

@@ -2,8 +2,18 @@ import * as React from 'react';
import ReactDOM from 'react-dom';
import { BrowserRouter as Router} from "react-router-dom";
import App from "./App";
import BasicMenu from "../user/BasicMenu";
import MobileMenu from "../user/MobileMenu";
const app = document.getElementById('app');
const menu = document.getElementById("menu");
const mobileMenu = document.getElementById("mobile-menu");
if (menu) {
ReactDOM.render(<BasicMenu nickname={menu.getAttribute("data-user")} />, menu);
}
if (mobileMenu) {
ReactDOM.render(<MobileMenu nickname={mobileMenu.getAttribute("data-user")} />, mobileMenu);
}
if (app) {
ReactDOM.render(<AppWrapper/>, app);
}

View File

@@ -42,13 +42,14 @@ export default function PageForm({setListPages, csrf, url, passphrase}) {
if (json.success) {
HTMLForm.reset();
setListPages(previousList => [
...previousList,
{
id: uuid,
date: json.date,
title: decryptedFormData.get("title"),
content: decryptedFormData.get("text"),
}]);
},
...previousList
]);
}
}