Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 | 16x 16x 17x 2x 2x | import React from 'react';
import {Menu} from 'antd';
import {
AvatarImageEnum,
avatarImageMDs,
} from '../utils/pixiUtils/metaData/ImageMetaData';
import '../pages/spacePage/space.css';
export interface UserInfo {
nickname: string;
avatar: AvatarImageEnum;
volume: number;
setVolume: (volumnMultiplyValue: number) => void;
}
export interface UsersListProps {
getUsers: () => UserInfo[];
onClickPrevious: () => void;
onChangeVolume: (volume: number) => void;
}
export function UserList(props: UsersListProps): JSX.Element {
const users = props.getUsers();
return (
<Menu className="user_drop_down">
<Menu.Item key="10">
<div className="users_title">
<div>사용자</div>
</div>
</Menu.Item>
<Menu.Divider></Menu.Divider>
{users &&
users.map((user, idx) => {
return (
<Menu.Item key={idx.toString()}>
<div
className="user_list"
key={idx + 1}
style={{color: '#606060'}}
>
<div>
<img
className="user_list_avatar"
src={avatarImageMDs[user.avatar].avatarProfileSrc}
></img>{' '}
{user.nickname}
</div>
{idx !== 0 ? (
<div className="panel_volume">
<input
role="button"
className="panel_volume_bar"
type="range"
min="0"
max="100"
value={user.volume * 100}
onChange={e => {
user.setVolume(Number(e.target.value) * 0.01);
props.onChangeVolume(user.volume);
}}
/>
<output className="panel_volume_value">
{Math.round(user.volume * 100)}
</output>
</div>
) : (
<></>
)}
</div>
</Menu.Item>
);
})}
</Menu>
);
}
|