eccgecko
d26c23313c
fix: show "No expiry" badge for Go zero-time expiry
...
uiTagsForNode() only checked node.expiry === null, missing Go
zero-time that headscale returns for tagged nodes after a
restart (juanfont/headscale#3170 ).
The !node.expired guard is technically redundant with isNoExpiry but
documents intent: "No expiry" is only shown for nodes that never
had an expiry set
2026-04-11 00:07:32 +01:00
Aarnav Tale
0f19fdf0da
feat: rebuild browser ssh from the ground up
2026-04-09 21:56:42 -04:00
Aarnav Tale
d255098128
fix: make the ssh button look nicer
2026-04-07 00:36:04 -04:00
Siemen Van den Neste
44f45c396c
fix: update user filtering to use user name instead of user ID
2026-03-29 20:37:18 +02:00
Siemen Van den Neste
4e94e82a01
feat: implement custom hook for machine filter parameters management
2026-03-21 01:46:27 +01:00
Siemen Van den Neste
3ec00e17d8
feat: add machine filtering functionality with dropdowns for user, tag, status, and route
2026-03-21 01:43:54 +01:00
Aarnav Tale
7403ebea06
feat: switch form fields to base-ui
2026-03-19 12:35:25 -04:00
Aarnav Tale
941971b8c7
feat: replace button and toast provider with base-ui
2026-03-19 12:35:24 -04:00
Aarnav Tale
27f8fa0b42
feat: swap button and decompose dialog components
2026-03-16 23:32:05 -04:00
Aarnav Tale
6470f5a821
feat: refactor several components and clean up ui
2026-03-09 22:09:58 -04:00
Aarnav Tale
a53fd31d27
chore: combine link usage
2026-03-09 13:56:03 -04:00
Aarnav Tale
37d0080cba
feat: cleanup button + add correct focus rings
2026-03-09 00:17:39 -04:00
Aarnav Tale
0ce411e92b
feat: switch to mist color from tailwind
2026-03-08 23:48:03 -04:00
Aarnav Tale
f4a2811afb
chore: general cleanup/pr improvements
2026-03-07 15:12:50 -05:00
drifterza
badefc7f85
fix: handle null user for tag-only nodes in Headscale 0.28+
...
In Headscale 0.28+, nodes can be registered with tag-only preauth keys
which have no associated user. This change updates the Machine type to
make user optional and adds null checks throughout the codebase where
node.user is accessed.
Fixes tag node operations (rename, add tags) that previously failed
with 'Unexpected Server Error' when accessing node.user.providerId
on nodes without a user association.
Refs: #432
2026-02-24 13:32:41 +02:00
Paul Kronenwetter
0d0b5f88a1
chore(machines): conditionally show owner change menu item based on version
...
Adds conditional rendering for the "Change owner" menu item in machine management, hiding it for versions 0.28.0-beta.1 and above. This prevents users from attempting to change node ownership on newer versions where this functionality is not supported. The change involves passing a new `supportsNodeOwnerChange` prop through the component hierarchy and updating the menu rendering logic accordingly.
2026-02-06 13:47:36 -05:00
Aarnav Tale
696e08dbcc
feat: normalize node tags before leaving the api
2026-01-24 20:30:57 -05:00
Paul Kronenwetter
5777a5f509
Support previous API interface as well
2026-01-24 20:30:57 -05:00
Paul Kronenwetter
c61a9119a7
Address tags incompatiblity introduced in 0.28.0-beta.2
...
From change (#2993 )[https://github.com/juanfont/headscale/pull/2993 ]
2026-01-24 20:30:57 -05:00
The-Greg-O
87485a81f3
refactor: move formatTimeDelta to shared utils
...
Moves the formatTimeDelta helper function to app/utils/time.ts
for reusability across the codebase, as requested in PR review.
2025-12-04 12:43:52 -08:00
The-Greg-O
b938642da7
feat: add search and sortable columns to machines list
...
- Add search input to filter machines by name or IP address
- Add sortable column headers for Name, IP, Version, and Last Seen
- Sort IP addresses numerically by octets (not alphabetically)
- Sort versions numerically by segments (1.10.0 > 1.9.0)
- Sort Last Seen with online machines treated as most recent
- Add time delta display for offline machines (e.g., "2 days ago")
- Add machine count display showing filtered/total counts
- Add clear button (X) to search input
Closes #351
2025-12-03 02:07:29 -08:00
Meow
5090733013
fix: change nodeList to existingTags
2025-11-09 01:19:59 -05:00
Meow
c3e07e4e10
feat: change node tag dialog to use Select
2025-11-06 19:49:55 -05:00
Aarnav Tale
d68737e410
feat: switch machine apis to new runtime api client
2025-11-04 22:44:58 -05:00
Aarnav Tale
ff3bdc1898
feat: remove octicons icon pack
2025-08-21 11:41:16 -04:00
Aarnav Tale
82f6294499
Merge branch 'main' into next
2025-08-20 15:14:17 -04:00
Domingo Dirutigliano
27b2831f00
displayName correctly integrated
2025-07-14 07:54:18 -04:00
Domingo Dirutigliano
ad469129bc
fix display name
2025-07-14 07:54:18 -04:00
Aarnav Tale
84c820efb1
chore: merge remote-tracking branch 'origin' into next
2025-06-23 00:35:04 -04:00
Gabe Cook
779af42601
fix: username never falling back to email
2025-06-23 00:33:29 -04:00
Aarnav Tale
dd287c0444
fix: menu should work even with ssh target
2025-06-20 19:55:02 -04:00
Aarnav Tale
1e86b0e95b
feat: add ssh buttons in the ui using hostinfo checks
2025-06-18 11:56:27 -04:00
Gabe Cook
a298686d6b
fix: fallback to user email when username is unset ( #237 )
2025-06-05 23:06:38 -04:00
Aarnav Tale
b7009e387b
feat: upgrade to tailwindcss v4
2025-05-29 11:16:47 -04:00
Aarnav Tale
69d97ea585
fix: allow tags to wrap
2025-05-25 11:02:19 -04:00
Aarnav Tale
8299aac94f
fix: show user under machine name
2025-05-25 11:02:19 -04:00
Aarnav Tale
08ee0eff42
feat: redo machine tagging system
2025-05-25 11:02:19 -04:00
Aarnav Tale
f2747ada94
fix: suppress date and button hydration warnings
2025-04-03 16:54:12 -04:00
Aarnav Tale
58cc7b742c
feat: make machine actions permission locked
2025-04-03 12:57:06 -04:00
Aarnav Tale
2e383ddabe
feat: reimplement user actions
2025-04-01 12:27:44 -04:00
Aarnav Tale
9a1051b9af
feat: reimplement websocket to use hono
2025-03-24 16:15:38 -04:00
Aarnav Tale
5b9dc7cfc6
feat: ingest data from new agent system
2025-03-11 22:34:30 -04:00
Aarnav Tale
5dd4c41291
feat: use a new ws implementation thats encapsulated
2025-03-11 15:29:45 -04:00
Aarnav Tale
44d08169a9
fix: use ring instead of outline on components
2025-02-14 00:03:46 -05:00
Aarnav Tale
287ac2dff0
feat: unify all colors
2025-02-04 17:21:03 -05:00
Aarnav Tale
c9d8052e39
chore: remove cn non-default exports
2025-01-28 17:46:16 -05:00
Aarnav Tale
843cfc4d4f
chore: fix build issues
2025-01-28 16:18:51 -05:00
Aarnav Tale
28e40eecbf
fix: switch to new aria components
2025-01-28 16:02:47 -05:00
Aarnav Tale
741f9aa6b5
feat: switch to new dialog across all code
2025-01-26 15:04:13 -05:00
Aarnav Tale
665509e710
chore: extract tags to shared chip component
2025-01-23 11:28:42 -05:00