You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

BreakoutRoomNamePrompt.tsx 1.1KB

1234567891011121314151617181920212223242526272829303132333435
  1. import React, { useCallback } from 'react';
  2. import { useDispatch } from 'react-redux';
  3. import InputDialog from '../../../base/dialog/components/native/InputDialog';
  4. import { IBreakoutRoomNamePromptProps as IProps } from '../../../participants-pane/types';
  5. import { renameBreakoutRoom } from '../../actions';
  6. /**
  7. * Implements a component to render a breakout room name prompt.
  8. *
  9. * @param {IProps} props - The props of the component.
  10. * @returns {JSX.Element}
  11. */
  12. export default function BreakoutRoomNamePrompt({ breakoutRoomJid, initialRoomName }: IProps) {
  13. const dispatch = useDispatch();
  14. const onSubmit = useCallback((roomName: string) => {
  15. const formattedRoomName = roomName?.trim();
  16. if (formattedRoomName) {
  17. dispatch(renameBreakoutRoom(breakoutRoomJid, formattedRoomName));
  18. return true;
  19. }
  20. return false;
  21. }, [ breakoutRoomJid, dispatch ]);
  22. return (
  23. <InputDialog
  24. descriptionKey = 'dialog.renameBreakoutRoomTitle'
  25. initialValue = { initialRoomName?.trim() }
  26. onSubmit = { onSubmit } />
  27. );
  28. }