This takes part of the work being done in #96 that was reverted but still useful.
Note Tailwind and Fresh weren't upgraded because there's no security vulnerability in either, and I have found the new versions to be worse in performance. Thos will likely stay at those fixed versions going forward.
* Public File Sharing
This implements public file sharing (read-only) with and without passwords (#57).
It also fixes a problem with filenames including special characters like `#` not working properly (#71).
You can share a directory or a single file, by using the new share icon on the right of the directories/files, and click on it to manage an existing file share (setting a new password, or deleting the file share).
There is some other minor cleanup and other copy updates in the README.
Closes#57Fixes#71
* Hide UI elements when sharing isn't allowed
* Implement a more robust Config
This moves the configuration variables from the `.env` file to a new `bewcloud.config.ts` file. Note that DB connection and secrets are still in the `.env` file.
This will allow for more reliable and easier personalized configurations, and was a requirement to start working on adding SSO (#13).
For now, `.env`-based config will still be allowed and respected (overriden by `bewcloud.config.ts`), but in the future I'll probably remove it (some major upgrade).
* Update deploy script to also copy the new config file
This refactors the data handlers into a more standard/understood model-like architecture, to prepare for a new, more robust config system.
It also fixes a problem with creating new Notes and uploading new Photos via the web interface (related to #58).
Finally, it speeds up docker builds by sending in less files, which aren't necessary or will be built anyway.
This is all in preparation to allow building #13 more robustly.