mirror of https://github.com/jitsi/jitsi-meet
ref(TS) Convert some Abstract classes to TS (#13099)
parent
34b2577b97
commit
e95b964b78
@ -1,14 +1,11 @@ |
||||
// @flow
|
||||
import { IconHangup } from '../../icons/svg'; |
||||
|
||||
import { IconHangup } from '../../icons'; |
||||
|
||||
import AbstractButton from './AbstractButton'; |
||||
import type { Props } from './AbstractButton'; |
||||
import AbstractButton, { IProps } from './AbstractButton'; |
||||
|
||||
/** |
||||
* An abstract implementation of a button for disconnecting a conference. |
||||
*/ |
||||
export default class AbstractHangupButton<P : Props, S: *> |
||||
export default class AbstractHangupButton<P extends IProps, S> |
||||
extends AbstractButton<P, S> { |
||||
|
||||
icon = IconHangup; |
@ -1,33 +1,21 @@ |
||||
// @flow
|
||||
|
||||
import { openDialog } from '../../base/dialog'; |
||||
import { IconUserDeleted } from '../../base/icons'; |
||||
import { AbstractButton, type AbstractButtonProps } from '../../base/toolbox/components'; |
||||
import { openDialog } from '../../base/dialog/actions'; |
||||
import { IconUserDeleted } from '../../base/icons/svg'; |
||||
import AbstractButton, { IProps as AbstractButtonProps } from '../../base/toolbox/components/AbstractButton'; |
||||
|
||||
import { KickRemoteParticipantDialog } from './'; |
||||
|
||||
export type Props = AbstractButtonProps & { |
||||
|
||||
/** |
||||
* The redux {@code dispatch} function. |
||||
*/ |
||||
dispatch: Function, |
||||
export interface IProps extends AbstractButtonProps { |
||||
|
||||
/** |
||||
* The ID of the participant that this button is supposed to kick. |
||||
*/ |
||||
participantID: string, |
||||
|
||||
/** |
||||
* The function to be used to translate i18n labels. |
||||
*/ |
||||
t: Function |
||||
}; |
||||
participantID: string; |
||||
} |
||||
|
||||
/** |
||||
* An abstract remote video menu button which kicks the remote participant. |
||||
*/ |
||||
export default class AbstractKickButton extends AbstractButton<Props, *> { |
||||
export default class AbstractKickButton extends AbstractButton<IProps> { |
||||
accessibilityLabel = 'toolbar.accessibilityLabel.kick'; |
||||
icon = IconUserDeleted; |
||||
label = 'videothumbnail.kick'; |
@ -1,34 +1,23 @@ |
||||
// @flow
|
||||
|
||||
import { createToolbarEvent, sendAnalytics } from '../../analytics'; |
||||
import { openDialog } from '../../base/dialog'; |
||||
import { IconMicSlash } from '../../base/icons'; |
||||
import { AbstractButton, type AbstractButtonProps } from '../../base/toolbox/components'; |
||||
import { createToolbarEvent } from '../../analytics/AnalyticsEvents'; |
||||
import { sendAnalytics } from '../../analytics/functions'; |
||||
import { openDialog } from '../../base/dialog/actions'; |
||||
import { IconMicSlash } from '../../base/icons/svg'; |
||||
import AbstractButton, { IProps as AbstractButtonProps } from '../../base/toolbox/components/AbstractButton'; |
||||
|
||||
import { MuteEveryoneDialog } from './'; |
||||
|
||||
export type Props = AbstractButtonProps & { |
||||
|
||||
/** |
||||
* The redux {@code dispatch} function. |
||||
*/ |
||||
dispatch: Function, |
||||
export interface IProps extends AbstractButtonProps { |
||||
|
||||
/** |
||||
* The ID of the participant object that this button is supposed to keep unmuted. |
||||
*/ |
||||
participantID: string, |
||||
|
||||
/** |
||||
* The function to be used to translate i18n labels. |
||||
*/ |
||||
t: Function |
||||
}; |
||||
participantID: string; |
||||
} |
||||
|
||||
/** |
||||
* An abstract remote video menu button which mutes all the other participants. |
||||
*/ |
||||
export default class AbstractMuteEveryoneElseButton extends AbstractButton<Props, *> { |
||||
export default class AbstractMuteEveryoneElseButton extends AbstractButton<IProps> { |
||||
accessibilityLabel = 'toolbar.accessibilityLabel.muteEveryoneElse'; |
||||
icon = IconMicSlash; |
||||
label = 'videothumbnail.domuteOthers'; |
@ -1,34 +1,23 @@ |
||||
// @flow
|
||||
|
||||
import { createToolbarEvent, sendAnalytics } from '../../analytics'; |
||||
import { openDialog } from '../../base/dialog'; |
||||
import { IconVideoOff } from '../../base/icons'; |
||||
import { AbstractButton, type AbstractButtonProps } from '../../base/toolbox/components'; |
||||
import { createToolbarEvent } from '../../analytics/AnalyticsEvents'; |
||||
import { sendAnalytics } from '../../analytics/functions'; |
||||
import { openDialog } from '../../base/dialog/actions'; |
||||
import { IconVideoOff } from '../../base/icons/svg'; |
||||
import AbstractButton, { IProps as AbstractButtonProps } from '../../base/toolbox/components/AbstractButton'; |
||||
|
||||
import { MuteEveryonesVideoDialog } from './'; |
||||
|
||||
export type Props = AbstractButtonProps & { |
||||
|
||||
/** |
||||
* The redux {@code dispatch} function. |
||||
*/ |
||||
dispatch: Function, |
||||
export interface IProps extends AbstractButtonProps { |
||||
|
||||
/** |
||||
* The ID of the participant object that this button is supposed to keep unmuted. |
||||
*/ |
||||
participantID: string, |
||||
|
||||
/** |
||||
* The function to be used to translate i18n labels. |
||||
*/ |
||||
t: Function |
||||
}; |
||||
participantID: string; |
||||
} |
||||
|
||||
/** |
||||
* An abstract remote video menu button which disables the camera of all the other participants. |
||||
*/ |
||||
export default class AbstractMuteEveryoneElsesVideoButton extends AbstractButton<Props, *> { |
||||
export default class AbstractMuteEveryoneElsesVideoButton extends AbstractButton<IProps> { |
||||
accessibilityLabel = 'toolbar.accessibilityLabel.muteEveryoneElsesVideoStream'; |
||||
icon = IconVideoOff; |
||||
label = 'videothumbnail.domuteVideoOfOthers'; |
@ -1,3 +1 @@ |
||||
// @flow
|
||||
|
||||
export * from './native'; |
@ -1,3 +1 @@ |
||||
// @flow
|
||||
|
||||
export * from './web'; |
@ -1,11 +1,19 @@ |
||||
// @flow
|
||||
|
||||
/* eslint-disable lines-around-comment */ |
||||
// @ts-ignore
|
||||
export { default as GrantModeratorDialog } from './GrantModeratorDialog'; |
||||
// @ts-ignore
|
||||
export { default as KickRemoteParticipantDialog } from './KickRemoteParticipantDialog'; |
||||
// @ts-ignore
|
||||
export { default as MuteEveryoneDialog } from './MuteEveryoneDialog'; |
||||
// @ts-ignore
|
||||
export { default as MuteEveryonesVideoDialog } from './MuteEveryonesVideoDialog'; |
||||
// @ts-ignore
|
||||
export { default as MuteRemoteParticipantsVideoDialog } from './MuteRemoteParticipantsVideoDialog'; |
||||
// @ts-ignore
|
||||
export { default as LocalVideoMenu } from './LocalVideoMenu'; |
||||
// @ts-ignore
|
||||
export { default as RemoteVideoMenu } from './RemoteVideoMenu'; |
||||
// @ts-ignore
|
||||
export { default as SharedVideoMenu } from './SharedVideoMenu'; |
||||
// @ts-ignore
|
||||
export { default as VolumeSlider } from './VolumeSlider'; |
@ -1,20 +1,29 @@ |
||||
// @flow
|
||||
|
||||
/* eslint-disable lines-around-comment */ |
||||
export { default as AskToUnmuteButton } from './AskToUnmuteButton'; |
||||
// @ts-ignore
|
||||
export { default as ConnectionStatusButton } from './ConnectionStatusButton'; |
||||
// @ts-ignore
|
||||
export { default as GrantModeratorButton } from './GrantModeratorButton'; |
||||
export { default as GrantModeratorDialog } from './GrantModeratorDialog'; |
||||
// @ts-ignore
|
||||
export { default as KickButton } from './KickButton'; |
||||
export { default as KickRemoteParticipantDialog } from './KickRemoteParticipantDialog'; |
||||
// @ts-ignore
|
||||
export { default as MuteButton } from './MuteButton'; |
||||
// @ts-ignore
|
||||
export { default as MuteVideoButton } from './MuteVideoButton'; |
||||
export { default as MuteEveryoneDialog } from './MuteEveryoneDialog'; |
||||
export { default as MuteEveryonesVideoDialog } from './MuteEveryonesVideoDialog'; |
||||
// @ts-ignore
|
||||
export { default as MuteEveryoneElseButton } from './MuteEveryoneElseButton'; |
||||
// @ts-ignore
|
||||
export { default as MuteEveryoneElsesVideoButton } from './MuteEveryoneElsesVideoButton'; |
||||
export { default as MuteRemoteParticipantsVideoDialog } from './MuteRemoteParticipantsVideoDialog'; |
||||
// @ts-ignore
|
||||
export { default as TogglePinToStageButton } from './TogglePinToStageButton'; |
||||
// @ts-ignore
|
||||
export { default as PrivateMessageMenuButton } from './PrivateMessageMenuButton'; |
||||
// @ts-ignore
|
||||
export { REMOTE_CONTROL_MENU_STATES, default as RemoteControlButton } from './RemoteControlButton'; |
||||
export { default as RemoteVideoMenuTriggerButton } from './RemoteVideoMenuTriggerButton'; |
||||
export { default as LocalVideoMenuTriggerButton } from './LocalVideoMenuTriggerButton'; |
Loading…
Reference in new issue