mirror of
https://github.com/owncast/owncast.git
synced 2024-10-24 13:35:57 +03:00
Show moderation menu for moderators. Closes #1864
This commit is contained in:
parent
1def26f1ba
commit
c2bd9436ba
7 changed files with 8 additions and 12 deletions
|
@ -17,15 +17,13 @@ import ChatJoinMessage from '../ChatJoinMessage/ChatJoinMessage';
|
||||||
|
|
||||||
interface Props {
|
interface Props {
|
||||||
messages: ChatMessage[];
|
messages: ChatMessage[];
|
||||||
// loading: boolean;
|
|
||||||
usernameToHighlight: string;
|
usernameToHighlight: string;
|
||||||
chatUserId: string;
|
chatUserId: string;
|
||||||
isModerator: boolean;
|
isModerator: boolean;
|
||||||
isMobile: boolean | undefined;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
export default function ChatContainer(props: Props) {
|
export default function ChatContainer(props: Props) {
|
||||||
const { messages, usernameToHighlight, chatUserId, isModerator, isMobile } = props;
|
const { messages, usernameToHighlight, chatUserId, isModerator } = props;
|
||||||
|
|
||||||
const [atBottom, setAtBottom] = useState(false);
|
const [atBottom, setAtBottom] = useState(false);
|
||||||
// const [showButton, setShowButton] = useState(false);
|
// const [showButton, setShowButton] = useState(false);
|
||||||
|
@ -146,7 +144,7 @@ export default function ChatContainer(props: Props) {
|
||||||
)}
|
)}
|
||||||
</>
|
</>
|
||||||
),
|
),
|
||||||
[messages, usernameToHighlight, chatUserId, isModerator, atBottom, isMobile],
|
[messages, usernameToHighlight, chatUserId, isModerator, atBottom],
|
||||||
);
|
);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
|
|
|
@ -12,7 +12,6 @@ import ChatModeration from '../../../services/moderation-service';
|
||||||
|
|
||||||
const { confirm } = Modal;
|
const { confirm } = Modal;
|
||||||
|
|
||||||
/* eslint-disable @typescript-eslint/no-unused-vars */
|
|
||||||
interface Props {
|
interface Props {
|
||||||
accessToken: string;
|
accessToken: string;
|
||||||
messageID: string;
|
messageID: string;
|
||||||
|
|
|
@ -339,8 +339,8 @@ export function ClientConfigStore() {
|
||||||
|
|
||||||
const metadata = mergeMeta(state.meta) as AppStateOptions;
|
const metadata = mergeMeta(state.meta) as AppStateOptions;
|
||||||
|
|
||||||
console.debug('--- APP STATE: ', state.value);
|
// console.debug('--- APP STATE: ', state.value);
|
||||||
console.debug('--- APP META: ', metadata);
|
// console.debug('--- APP META: ', metadata);
|
||||||
|
|
||||||
setAppState(metadata);
|
setAppState(metadata);
|
||||||
});
|
});
|
||||||
|
|
|
@ -13,6 +13,6 @@ export default function handleConnectedClientInfoMessage(
|
||||||
setChatDisplayName(displayName);
|
setChatDisplayName(displayName);
|
||||||
setChatDisplayColor(displayColor);
|
setChatDisplayColor(displayColor);
|
||||||
setChatUserId(id);
|
setChatUserId(id);
|
||||||
setIsChatModerator(scopes?.includes('moderator'));
|
setIsChatModerator(scopes?.includes('MODERATOR'));
|
||||||
setChatAuthenticated(authenticated);
|
setChatAuthenticated(authenticated);
|
||||||
}
|
}
|
||||||
|
|
|
@ -172,7 +172,6 @@ export default function ContentComponent() {
|
||||||
usernameToHighlight={chatDisplayName}
|
usernameToHighlight={chatDisplayName}
|
||||||
chatUserId={chatUserId}
|
chatUserId={chatUserId}
|
||||||
isModerator={false}
|
isModerator={false}
|
||||||
isMobile={isMobile}
|
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -8,12 +8,14 @@ import {
|
||||||
chatMessagesAtom,
|
chatMessagesAtom,
|
||||||
chatDisplayNameAtom,
|
chatDisplayNameAtom,
|
||||||
chatUserIdAtom,
|
chatUserIdAtom,
|
||||||
|
isChatModeratorAtom,
|
||||||
} from '../../stores/ClientConfigStore';
|
} from '../../stores/ClientConfigStore';
|
||||||
|
|
||||||
export default function Sidebar() {
|
export default function Sidebar() {
|
||||||
const messages = useRecoilValue<ChatMessage[]>(chatMessagesAtom);
|
const messages = useRecoilValue<ChatMessage[]>(chatMessagesAtom);
|
||||||
const chatDisplayName = useRecoilValue<string>(chatDisplayNameAtom);
|
const chatDisplayName = useRecoilValue<string>(chatDisplayNameAtom);
|
||||||
const chatUserId = useRecoilValue<string>(chatUserIdAtom);
|
const chatUserId = useRecoilValue<string>(chatUserIdAtom);
|
||||||
|
const isChatModerator = useRecoilValue<boolean>(isChatModeratorAtom);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Sider className={s.root} collapsedWidth={0} width={320}>
|
<Sider className={s.root} collapsedWidth={0} width={320}>
|
||||||
|
@ -21,8 +23,7 @@ export default function Sidebar() {
|
||||||
messages={messages}
|
messages={messages}
|
||||||
usernameToHighlight={chatDisplayName}
|
usernameToHighlight={chatDisplayName}
|
||||||
chatUserId={chatUserId}
|
chatUserId={chatUserId}
|
||||||
isModerator={false}
|
isModerator={isChatModerator}
|
||||||
isMobile={false}
|
|
||||||
/>
|
/>
|
||||||
</Sider>
|
</Sider>
|
||||||
);
|
);
|
||||||
|
|
|
@ -38,7 +38,6 @@ const AddMessagesChatExample = args => {
|
||||||
usernameToHighlight="testuser"
|
usernameToHighlight="testuser"
|
||||||
chatUserId="testuser"
|
chatUserId="testuser"
|
||||||
isModerator={false}
|
isModerator={false}
|
||||||
isMobile={false}
|
|
||||||
/>
|
/>
|
||||||
</RecoilRoot>
|
</RecoilRoot>
|
||||||
);
|
);
|
||||||
|
|
Loading…
Reference in a new issue