Commit Graph
238 Commits
Author SHA1 Message Date
Leo Vasanko cdcaa5a199 Remove layout max width. 2025-12-10 20:53:59 +00:00
Leo Vasanko 541a019c13 Fix dialog patterns in admin app: dialog must close before doing API calls to avoid conflict with authentication dialogs. 2025-12-10 20:42:12 +00:00
Leo Vasanko 841ebf70c5 Cleanup on Admin app, better delete confirmations. 2025-12-10 20:16:57 +00:00
Leo Vasanko 1143032eca Adopt <dialog> for our modals to tap into browser built-in functionality. 2025-12-10 19:41:55 +00:00
Leo Vasanko 683a912899 Revised light color scheme for a more professional look. 2025-12-10 19:40:59 +00:00
Leo Vasanko 727db38bc7 UX: Close the QR code/link dialog automatically when the code is click-to-copied. 2025-12-10 19:07:56 +00:00
Leo Vasanko b2eb5e5e36 Fix regression from adding color-scheme: light dark improperly at :root (html) rather than at body. 2025-12-10 18:47:56 +00:00
Leo Vasanko c89fc71ebb Use absolute paths for resources so that the links work when Vite is serving these at root instead of /auth/ 2025-12-10 18:30:45 +00:00
Leo Vasanko ccbe0f2f6f Improved breadcrumbs on auth host. 2025-12-10 18:20:37 +00:00
Leo Vasanko 2468fbd7fc Vite devserver configuration that behaves correctly for auth-host, serving the profile view at site root and /admin/ instead of under /auth/. 2025-12-10 18:18:14 +00:00
Leo Vasanko f8b927c012 Fix button row layout problem from the responsive layout cleanup before, that was causing them display stretched to full window width. Now they only shrink. 2025-12-10 17:43:10 +00:00
Leo Vasanko 472fedc3ae Fix devserver script misprocessing in some situations where auth-host was being used. Deduplicate origins on server end. 2025-12-10 17:39:09 +00:00
Leo Vasanko 8310d9f0b5 Fix link copy toast messages, remove custom toast in favor of authStore, remove a component that was no longer used. 2025-12-10 17:18:48 +00:00
Leo Vasanko b9b6c9356f Change input placeholder that was improperly triggering Bitwarden to complete username in it. BW does not respect autocomplete at all. 2025-12-10 16:56:19 +00:00
Leo Vasanko 272964f086 Fix mobile browser code word autocomplete (on space that wasn't detected correctly). 2025-12-10 16:40:58 +00:00
Leo Vasanko 1b7b3c028f Automatic light/dark mode. Fixes a cursor color issue on Huawei Browser, and is generally a good idea. 2025-12-10 16:40:54 +00:00
Leo Vasanko 58f659ee85 Simplify responsive layouts. Remove button vertical stacking and always fit them on the same row. 2025-12-10 16:11:43 +00:00
LeoVasanko 2487759628 Implement keyboard navigation using arrow keys in the whole application. (#2)
Reviewed-on: #2
2025-12-10 15:43:40 +00:00
Leo Vasanko 033e735248 Fix scrolling behaviour when backdrop dialogs appear. 2025-12-10 12:07:43 +00:00
Leo Vasanko 4e5014be69 Improved session group (per site) styling and UX. 2025-12-10 01:11:43 +00:00
Leo Vasanko 89268adfe2 Consistent use of red X only for deletion, and using only it for deletion rather than trashbin, while using non-red X for window close button. 2025-12-10 00:06:34 +00:00
Leo Vasanko 4a5d61cab1 Cleaner up registration link creation. Don't show the dialog until when there is a valid link. Implement a global blur backdrop with nicer effect and proper scrollbar handling (avoiding layout shifting a bit). Use the global backdrop to ensure consistent visuals between authentication and the modal being shown, along with in/out transitions. 2025-12-09 23:58:04 +00:00
Leo Vasanko ff8acaa5f5 Code word input overhaul, more accurate cursor and selection processing. New styling for the widget that conforms with browser default style (focus outline). 2025-12-09 23:07:15 +00:00
Leo Vasanko 07fb9f79a6 Fix regressions with the remote-auth preventing it from working. Minor usability and style improvements. Changed /auth/api/ws/pair name to permit, to go with other parts of the software. 2025-12-09 21:57:33 +00:00
Leo Vasanko 48a8f575ec Profile view UX improvements. More consistent styling across the application. 2025-12-09 21:20:29 +00:00
Leo Vasanko bf8c734bf7 Remove different responsive styling applied to logout buttons making them appear too wide. Now all buttons behave the same. 2025-12-09 17:04:20 +00:00
Leo Vasanko 9835c13e25 Remove trash bin icons from tab order. Instead, implement Delete key support (Backspace accepted on Apple devices). 2025-12-09 16:54:46 +00:00
Leo Vasanko 2776a8d83a Process IPv6 display into short format including only the network prefix, and sharing the same code also for comparisons where needed. 2025-12-09 16:33:16 +00:00
Leo Vasanko 83245bc1c8 Rename base64 functions such that imports don't need renaming. 2025-12-09 15:55:03 +00:00
Leo Vasanko e1e4a211ec Fix missing credential_uuid in admin user detail API that was causing linkage between sessions and their passkeys not show up. 2025-12-09 15:34:05 +00:00
LeoVasanko c605926c30 Implement code word based remote authentication (#1)
Add comprehensive remote authentication system allowing users to log in from one device by authenticating from another trusted device. Features include:

- Proof of Work (PoW) protection using PBKDF2-SHA512 to prevent abuse
- Simple pairing codes (3 words) protected by dynamic PoW difficulty
- Autocomplete pairing code input with error checking
- Real-time WebSocket communication between devices

Unlike device addition links and reset links with QR codes that only allow adding an authentication method, and that work offline over the duration of several days, this mechanism is strictly online, with 5 minute time limit.
2025-12-08 23:56:48 +00:00
Leo Vasanko 2bac94a548 API tests added with near-complete coverage over user and admin APIs. 60% overall backend. (not including E2E test in coverage) 2025-12-06 04:45:26 +00:00
Leo Vasanko bfa3281aca Added E2E restricted API flow tests and fixed earlier failing tests. All passing. Coverage 51% backend, 74% frontend. 2025-12-06 03:43:28 +00:00
Leo Vasanko 0203bce05e Cleanup of origins handling. Added site_url and site_path such that these can be determined reliably, and we print it in the startbox. 2025-12-06 03:39:05 +00:00
Leo Vasanko 8d723155ba Fixed and updated E2E test suite. Added user credential registration tests. Coverage for backend and frontend. 2025-12-06 00:52:35 +00:00
Leo Vasanko 0b17681907 Changed origin config to take multiple origins and if any are configured, restrict access to these. Removed bootstrap name options of created org and user (both can be easily renamed from web ui). Cleanup. 2025-12-06 00:51:18 +00:00
Leo Vasanko da503a3081 More robust server startup, startup logo and info screen, renewed devmode script. 2025-12-05 19:06:42 +00:00
Leo Vasanko 8b98cb6325 Updated documentation. 2025-12-05 16:15:50 +00:00
Leo Vasanko 4b16037426 Project renamed to Paskia. 2025-12-05 13:24:34 +00:00
Leo Vasanko 9d7ace8fb5 Refactor dev mode into a source repo script (remove dev subcommand from package). 2025-12-05 13:08:44 +00:00
Leo Vasanko 39c06620c4 Updated E2E tests. 2025-12-04 04:44:58 +00:00
Leo Vasanko 8011a0d910 Make dev mode run without static files, only serving assets in production. 2025-12-03 22:15:26 -06:00
Leo Vasanko 4c34217846 Cleanup old hostapp files (finished, working). 2025-12-03 22:06:54 -06:00
Leo Vasanko 5c72777c2f Missing new component. 2025-12-03 22:03:33 -06:00
Leo Vasanko 18eed4654f Integrate host app to main app (WIP). 2025-12-03 22:00:47 -06:00
Leo Vasanko b373a84065 Admin app simplification by using API auth properly. Implemented promise to keep request blocked by permission check while the user authenticates, fixing concurrent requests. 2025-12-03 21:19:40 -06:00
Leo Vasanko 7983d9b170 Brought examples directly to front page. 2025-12-03 21:10:08 -06:00
Leo Vasanko bc4254ad18 Fix view switching of restricted app. 2025-12-03 19:46:36 -06:00
Leo Vasanko d541377798 Make restricted app use simple fetch that doesn't do API authentication (recursively). 2025-12-03 18:20:14 -06:00
Leo Vasanko 7c82727d28 Fixed and simplified examples. 2025-12-03 18:08:52 -06:00