diff --git a/src/views/wired/common/GetWiredActionLayout.tsx b/src/views/wired/common/GetWiredActionLayout.tsx index 7f850f9c..fe1ca34f 100644 --- a/src/views/wired/common/GetWiredActionLayout.tsx +++ b/src/views/wired/common/GetWiredActionLayout.tsx @@ -17,6 +17,7 @@ import { WiredActionLeaveTeamView } from '../views/actions/leave-team/WiredActio import { WiredActionMoveAndRotateFurniView } from '../views/actions/move-and-rotate-furni/WiredActionMoveAndRotateFurniView'; import { WiredActionMoveFurniToView } from '../views/actions/move-furni-to/WiredActionMoveFurniToView'; import { WiredActionMoveFurniView } from '../views/actions/move-furni/WiredActionMoveFurniView'; +import { WiredActionMuteUserView } from '../views/actions/mute-user/WiredActionMuteUserView'; import { WiredActionResetView } from '../views/actions/reset/WiredActionResetView'; import { WiredActionSetFurniStateToView } from '../views/actions/set-furni-state-to/WiredActionSetFurniStateToView'; import { WiredActionTeleportView } from '../views/actions/teleport/WiredActionTeleportView'; @@ -65,6 +66,8 @@ export function GetWiredActionLayout(code: number): JSX.Element return ; case WiredActionLayout.MOVE_FURNI_TO: return ; + case WiredActionLayout.MUTE_USER: + return ; case WiredActionLayout.RESET: return ; case WiredActionLayout.SET_FURNI_STATE: diff --git a/src/views/wired/views/actions/kick-from-room/WiredActionKickFromRoomView.tsx b/src/views/wired/views/actions/kick-from-room/WiredActionKickFromRoomView.tsx index 65933838..5d28ff52 100644 --- a/src/views/wired/views/actions/kick-from-room/WiredActionKickFromRoomView.tsx +++ b/src/views/wired/views/actions/kick-from-room/WiredActionKickFromRoomView.tsx @@ -22,7 +22,7 @@ export const WiredActionKickFromRoomView: FC<{}> = props => return (
- + setMessage(event.target.value) } />
diff --git a/src/views/wired/views/actions/mute-user/WiredActionMuteUserView.tsx b/src/views/wired/views/actions/mute-user/WiredActionMuteUserView.tsx new file mode 100644 index 00000000..c17cf3c9 --- /dev/null +++ b/src/views/wired/views/actions/mute-user/WiredActionMuteUserView.tsx @@ -0,0 +1,45 @@ +import Slider from 'rc-slider/lib/Slider'; +import { FC, useCallback, useEffect, useState } from 'react'; +import { LocalizeText } from '../../../../../utils/LocalizeText'; +import { useWiredContext } from '../../../context/WiredContext'; +import { WiredFurniType } from '../../../WiredView.types'; +import { WiredActionBaseView } from '../base/WiredActionBaseView'; + +export const WiredActionMuteUserView: FC<{}> = props => +{ + const [ time, setTime ] = useState(-1); + const [ message, setMessage ] = useState(''); + const { trigger = null, setIntParams = null, setStringParam = null } = useWiredContext(); + + useEffect(() => + { + setTime((trigger.intData.length > 0) ? trigger.intData[0] : 0); + setMessage(trigger.stringData); + }, [ trigger ]); + + const save = useCallback(() => + { + setIntParams([time]); + setStringParam(message); + }, [ time, message, setIntParams, setStringParam ]); + + return ( + + +
{ LocalizeText('wiredfurni.params.length.minutes', ['minutes'], [time.toString()]) }
+ setTime(event) } + /> +
+
+ + setMessage(event.target.value) } /> +
+
+ ); +}