diff --git a/package-lock.json b/package-lock.json index 6861736..e5a9491 100644 --- a/package-lock.json +++ b/package-lock.json @@ -798,18 +798,6 @@ "tslib": "^2.4.0" } }, - "node_modules/@types/node": { - "version": "25.8.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-25.8.0.tgz", - "integrity": "sha512-TCFSk8IZh+iLX1xtksoBVtdmgL+1IX0fC9BeU4QqFSuNdN/K+HUlhqOzEmSYYpZUVsLYcPqc9KX+60iDuninSQ==", - "dev": true, - "license": "MIT", - "optional": true, - "peer": true, - "dependencies": { - "undici-types": ">=7.24.0 <7.24.7" - } - }, "node_modules/@types/react": { "version": "19.2.14", "resolved": "https://registry.npmjs.org/@types/react/-/react-19.2.14.tgz", @@ -4647,9 +4635,9 @@ } }, "node_modules/tmp": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.5.tgz", - "integrity": "sha512-voyz6MApa1rQGUxT3E+BK7/ROe8itEx7vD8/HEvt4xwXucvQ5G5oeEiHkmHZJuBO21RpOf+YYm9MOivj709jow==", + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.7.tgz", + "integrity": "sha512-e0votIpp4Uo2AJYSzVHV6xCcawuiez3DzqDAbrTc3YxBkplN6e+dM13ZeIcZnDg/QpSuU2zfZ3rzwY8ukEnaXw==", "license": "MIT", "engines": { "node": ">=14.14" @@ -4719,15 +4707,6 @@ "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==", "license": "MIT" }, - "node_modules/undici-types": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.24.6.tgz", - "integrity": "sha512-WRNW+sJgj5OBN4/0JpHFqtqzhpbnV0GuB+OozA9gCL7a993SmU+1JBZCzLNxYsbMfIeDL+lTsphD5jN5N+n0zg==", - "dev": true, - "license": "MIT", - "optional": true, - "peer": true - }, "node_modules/unicode-properties": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/unicode-properties/-/unicode-properties-1.4.1.tgz", diff --git a/src/components/FederatedRoomCard.jsx b/src/components/FederatedRoomCard.jsx index 61ab7b1..d63bcec 100644 --- a/src/components/FederatedRoomCard.jsx +++ b/src/components/FederatedRoomCard.jsx @@ -30,8 +30,21 @@ export default function FederatedRoomCard({ room, onRemove }) { const recordingOn = room.allow_recording === 1 || room.allow_recording === true; + const openRoom = () => navigate(`/federation/rooms/${room.id}`); + return ( -
navigate(`/federation/rooms/${room.id}`)}> +
{ + if (e.target !== e.currentTarget) return; + if (e.key === 'Enter' || e.key === ' ') { e.preventDefault(); openRoom(); } + }} + className={`card-hover group p-5 cursor-pointer focus:outline-hidden focus:ring-2 focus:ring-th-ring focus:ring-offset-2 ${isDeleted ? 'opacity-60' : ''}`} + style={{ '--tw-ring-offset-color': 'var(--bg-primary)' }} + >
@@ -107,6 +120,7 @@ export default function FederatedRoomCard({ room, onRemove }) {