Auth: user can now login with any oauth2 provider the config list
account will be created on demands if not already created.
any oauth2 account is unique (can't link an account to any other
auth method)
Icons: Fixed docker-compose to force JWT_SECRET for now
Auth: Fixed Guest Login to actually work
Auth: Added `Login as Guest` in the login_demo page
Shared: Fixed db/user + uuid modules
- Split userinfo APIs to their own service (`user`)
- Added user service to nginx and docker-compose
- Cleaned up package.json across the project to remove useless
depedencies
- Added word list for Guest username generation (source in file itself)
- Reworked internal of `user` DB to not have a difference between "raw"
id and normal ID (UUID)
- JWT now uses the correct information to determine the user
(id instead of name)
- A SIGTERM handler has been made, such that docker doesn't use SIGKILL
- CodeWise: Changed everything to use undefined when not present
- CodeWise: checks for nonpresent value using `isNullish`
- enableOtp: enable Otp, return topt url. Does nothing when
already enabled
- disableOtp: disable 2FA Totp for the user
- statusOtp: get the 2FA status for the user. return the Totp Url if
enabled
- loginDemo: split into two files
- loginDemo: supports for 2FA
- loginDemo: better response box
- Add fastify to protect routes plugins (requireAuth: true)
- Simple Demo to show regular password auth (no 2FA/OTP nor remote auth)
- Currently supports: login, logout, signin
- OTP workflow should work, not tested
- Fixed convention for docker volumes (now all placed in /volumes/<name>)