Create useRoomName hook (#11346)

* Create useRoomName hook

Mark RoomName component as deprecated

* Pass out-of-band data to relevant RoomHeader component

* Mark LegacyRoomHeader as deprecated

* Fix incorrect search&replace in _RoomHeader.pcss

* lintfix

* Fix i18n

* Discard use of useCallback

* Change export of useRoomName

* fix ts issue

* lints
This commit is contained in:
Germain 2023-08-01 14:47:09 +01:00 committed by GitHub
parent 9026996d9e
commit 5d9f5ccf0b
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
9 changed files with 95 additions and 36 deletions

View file

@ -20,10 +20,13 @@ import { Room, RoomEvent } from "matrix-js-sdk/src/models/room";
import { useTypedEventEmitter } from "../../../hooks/useEventEmitter";
interface IProps {
room: Room;
room?: Room;
children?(name: string): JSX.Element;
}
/**
* @deprecated use `useRoomName.ts` instead
*/
const RoomName = ({ room, children }: IProps): JSX.Element => {
const [name, setName] = useState(room?.name);
useTypedEventEmitter(room, RoomEvent.Name, () => {
@ -33,7 +36,7 @@ const RoomName = ({ room, children }: IProps): JSX.Element => {
setName(room?.name);
}, [room]);
if (children) return children(name);
if (children) return children(name ?? "");
return <>{name || ""}</>;
};