Use of Lufi API + new theme (WIP)
The goal of this merge request is to totally use Lufi API to handle client-side operations for Lufi.
It also removes the server-side password hashing in favor as a client-side one, handled by Lufi API (for server versions < 0.08.0).
Finally, it adds blob: CSP for script-src, allowing the use of fflate library.
Lufi API has the goal to provide a browser and node compatible API to interact with a Lufi server. It handles backward compatibility with older Lufi versions so you can use it with any Lufi server.
Lufi API uses WebCrypto, Web Workers and fflate, it improves a lot Lufi client side performances.
Also, I started to remove jquery uses in lufi-up.js, lufi-files.js and lufi-down.js. My goal is to totally remove jquery from the project.
Finally, this merge request fixes: #305, #300, #304, #307, #298
Edit: Since an user told me Lufi could not be used with screen readers, I started to create a new theme from scratch, without materialize/jquery. It's still WIP but I actually nearly reached feature parity with the main theme (some invitations files are still not ready yet). I will then need to improve its accessibility/responsiveness.
Edit2: Finally, following discussions, I went on a totally new design, inspired by Send.