Leo Vasanko
ce783cbf57
Implement keynav on admin views, bugfixes and better breadcrumb handling.
2025-12-10 15:13:31 +00:00
Leo Vasanko
048b4c6ff1
Refactor to remove keydown handlers needed for each button.
2025-12-10 14:07:44 +00:00
Leo Vasanko
1fe14d5f5f
Refactored keyboard navigation to its own keynav.js. Implemented keyboard navigation on modal dialogs.
2025-12-10 13:57:25 +00:00
Leo Vasanko
fbce5b97db
Merge branch 'main' into keyboard-nav
2025-12-10 12:07:58 +00:00
Leo Vasanko
033e735248
Fix scrolling behaviour when backdrop dialogs appear.
2025-12-10 12:07:43 +00:00
Leo Vasanko
afc3c9a8f7
Keyboard navigation with arrow keys on the whole ProfileView (WIP).
2025-12-10 02:23:47 +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
Leo Vasanko
afbd9606db
Revert earlier change to iframe srcdoc, using src instead, because srcdoc was not compatible with all passkey implementations (BitWarden).
2025-12-03 18:01:47 -06:00
Leo Vasanko
9b73684082
Log authentication options on the client.
2025-12-03 17:07:44 -06:00
Leo Vasanko
9786c2a5a8
Improved dialog layout with separate mobile portrait mode.
2025-12-03 16:06:32 -06:00
Leo Vasanko
3e10e082e2
Fix infinitely nested login iframes when the restricted app notices it needs login.
2025-12-03 15:56:17 -06:00
Leo Vasanko
7a70c933c9
Various fixes and cleanup, regressions from prior commits.
2025-12-03 15:40:59 -06:00
Leo Vasanko
6a7b1a876e
Fix syntax error in reset app created by earlier commit.
2025-12-03 14:31:13 -06:00
Leo Vasanko
ad63d3fb3a
Better static files handling on backend, when in dev mode: fetch from vite.
2025-12-03 14:30:02 -06:00
Leo Vasanko
9488f69e53
Update forward API to return in JSON iframe srcdoc with options injected. (currently broken in dev mode).
2025-12-03 13:58:18 -06:00
Leo Vasanko
1610869fae
Fix fetch timeout rolling while in authentication flow. Now each fetch gets a fresh timeout.
2025-12-03 13:35:44 -06:00
Leo Vasanko
219dd70665
Viewing linked passkeys/sessions (by clicking either one of them).
2025-12-03 13:21:52 -06:00
Leo Vasanko
4306323c44
Consistently use apiJson for fetches, with timeout and proper error handling (less code duplication).
2025-12-03 13:00:24 -06:00
Leo Vasanko
ceb99de738
Improved auth profile UX, consistent transparent-blur dialog background everywhere.
2025-12-03 12:30:23 -06:00
Leo Vasanko
ad374f5dda
Formatting, tidy up, transparent auth dialog background.
2025-12-03 11:33:24 -06:00