2019-06-17 14:00:09 +00:00
|
|
|
// @flow
|
|
|
|
|
|
|
|
import type { Dispatch } from 'redux';
|
|
|
|
|
2020-05-20 10:57:03 +00:00
|
|
|
import { getParticipantDisplayName } from '../base/participants';
|
2019-06-17 14:00:09 +00:00
|
|
|
import {
|
2021-11-24 11:05:27 +00:00
|
|
|
NOTIFICATION_TIMEOUT_TYPE,
|
2019-06-17 14:00:09 +00:00
|
|
|
NOTIFICATION_TYPE,
|
|
|
|
showNotification
|
|
|
|
} from '../notifications';
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Notify that we've been kicked out of the conference.
|
|
|
|
*
|
|
|
|
* @param {JitsiParticipant} participant - The {@link JitsiParticipant}
|
|
|
|
* instance which initiated the kick event.
|
|
|
|
* @param {?Function} _ - Used only in native code.
|
|
|
|
* @returns {Function}
|
|
|
|
*/
|
|
|
|
export function notifyKickedOut(participant: Object, _: ?Function) { // eslint-disable-line no-unused-vars
|
|
|
|
return (dispatch: Dispatch<any>, getState: Function) => {
|
2021-06-11 08:58:45 +00:00
|
|
|
if (!participant || (participant.isReplaced && participant.isReplaced())) {
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
|
2019-06-17 14:00:09 +00:00
|
|
|
const args = {
|
|
|
|
participantDisplayName:
|
2019-11-20 13:23:58 +00:00
|
|
|
getParticipantDisplayName(getState, participant.getId())
|
2019-06-17 14:00:09 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
dispatch(showNotification({
|
|
|
|
appearance: NOTIFICATION_TYPE.ERROR,
|
|
|
|
hideErrorSupportLink: true,
|
|
|
|
descriptionKey: 'dialog.kickMessage',
|
|
|
|
descriptionArguments: args,
|
|
|
|
titleKey: 'dialog.kickTitle',
|
|
|
|
titleArguments: args
|
2021-11-24 11:05:27 +00:00
|
|
|
}, NOTIFICATION_TIMEOUT_TYPE.STICKY));
|
2019-06-17 14:00:09 +00:00
|
|
|
};
|
|
|
|
}
|