This implements a huge change, where Fresh is removed as a framework and serving files, allowing more control over importing, bundling, and serving files and components.
The biggest challenge was to continue making sure that there weren't too many places to look into for import versions, and `PasswordlessPasskeyLogin.tsx` became a prototype in migrating a component to fully SSR, no need for frontend parsing (via Babel) or bundling (via a custom-script, downloading frontend dependencies from esm.sh). Still, there are too many components to migrate like that, and it's all working, so I likely won't even attempt it unless there's some bug, new feature, or security vulnerability to address that warrants a rewrite of those.
This also updates all dependencies (except `@libs/xml` because that still causes some breaking in DAV endpoints), including Deno!
All other advantages can be seen in the related issues, and the breaking change this (v4.0.0) introduces is related simply to `config.email.tlsMode` (which had a deprecation warning throughout v3), and because, while I tested many things exhaustively, it's not impossible something broke that I didn't see.
Closes#141Closes#132
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.
* Add TOTP MFA Support
* Add Passkey MFA Support
It's not impossible I missed some minor cleanup, but most things make sense and there isn't a lot of obvious duplication anymore.
---------
Co-authored-by: Bruno Bernardino <me@brunobernardino.com>
This implements the option to choose directories when uploading files via the Web UI (The most important part of #52).
When you choose a directory, its file and sub-directory structure will be maintained.
Tested with the latest Safari, Firefox, and Chrome.
Additionally, the Deno version was updated, which required some accessibility improvements as well.
If you're using a reverse proxy like Cloudflare Tunnels, you can now set `CONFIG_SKIP_COOKIE_DOMAIN_SECURITY="true"` to avoid login issues.
Also makes some UX tweaks to Expenses, and fixes a style issue for Chrome in Windows (#44).
Fixes#43Fixes#44
Additionally:
- Make expense and budget modal "reset" once closed, saved, or deleted.
- Make manifest icons dark
- Budgets in small screens should be full-screen
- Minor code cleanup
Fixes#48
A UI based on [Budget Zen](https://github.com/BrunoBernardino/budgetzen-web) but slightly updated and adjusted for bewCloud. It also features a chart with available money and spent by budgets.
This is useful for envelope-based budgeting.