From fe10a1c37453b6815b567cce11ada36c46a376a5 Mon Sep 17 00:00:00 2001 From: Tristan Yang Date: Tue, 29 Aug 2023 11:33:23 +0800 Subject: [PATCH] refactor: useSelector --- package.json | 2 +- src/components/AddEntriesMenu.tsx | 5 +- src/components/AutoDeleteMessages.tsx | 23 ++++--- src/components/BlankPlaceholder.tsx | 12 ++-- src/components/Channel.tsx | 9 +-- src/components/ChannelModal/index.tsx | 6 +- src/components/FileBox/index.tsx | 3 +- src/components/FileMessage/index.tsx | 3 +- src/components/GuestOnly.tsx | 3 +- src/components/InviteModal/AddMembers.tsx | 9 +-- src/components/InviteModal/index.tsx | 14 ++--- src/components/ManageMembers/MemberList.tsx | 11 ++-- src/components/ManageMembers/index.tsx | 9 +-- src/components/Message/EditMessage.tsx | 3 +- src/components/Message/Mention.tsx | 3 +- src/components/Message/PreviewMessage.tsx | 6 +- src/components/Message/Reaction.tsx | 9 +-- src/components/Message/ReactionPicker.tsx | 9 +-- src/components/Message/Reply.tsx | 6 +- src/components/Message/URLPreview.tsx | 4 +- src/components/Message/index.tsx | 18 +++--- .../Message/useMessageOperation.tsx | 14 ++--- src/components/Meta.tsx | 3 +- src/components/MixedInput/index.tsx | 3 +- src/components/PinnedMessage.tsx | 6 +- src/components/Profile/index.tsx | 7 +-- src/components/QRCode.tsx | 3 +- src/components/RequireAuth.tsx | 18 +++--- src/components/RequireNoAuth.tsx | 3 +- src/components/SearchUser.tsx | 3 +- src/components/Send/Replying.tsx | 6 +- src/components/Send/index.tsx | 26 ++++---- src/components/Server.tsx | 10 +-- src/components/ServerVersionChecker.tsx | 3 +- src/components/StreamStatus.tsx | 3 +- src/components/UnreadTabTip.tsx | 42 +++++-------- src/components/User/index.tsx | 11 ++-- src/components/Version.tsx | 3 +- src/components/Voice/DMCalling.tsx | 19 +++--- src/components/Voice/Operations.tsx | 6 +- src/components/Voice/index.tsx | 16 ++--- src/components/Voice/useVoice.ts | 61 +++++++++++-------- src/hooks/useDeleteMessage.ts | 11 ++-- src/hooks/useDraft.ts | 9 +-- src/hooks/useFavMessage.ts | 5 +- src/hooks/useFilteredChannels.ts | 3 +- src/hooks/useFilteredUsers.ts | 14 ++--- src/hooks/useInviteLink.ts | 3 +- src/hooks/useLeaveChannel.ts | 6 +- src/hooks/useLicense.ts | 11 ++-- src/hooks/useNormalizeMessage.ts | 3 +- src/hooks/usePinMessage.ts | 9 +-- src/hooks/usePreload.ts | 36 +++++------ src/hooks/useSendMessage.ts | 6 +- src/hooks/useStreaming/index.ts | 11 ++-- src/hooks/useUploadFile.ts | 15 +++-- src/hooks/useUserOperation.ts | 18 +++--- src/routes/chat/ChannelChat/index.tsx | 15 ++--- src/routes/chat/DMChat/index.tsx | 7 +-- src/routes/chat/GuestBlankPlaceholder.tsx | 4 +- src/routes/chat/GuestChannelChat/index.tsx | 7 +-- src/routes/chat/GuestSessionList/Session.tsx | 11 ++-- src/routes/chat/GuestSessionList/index.tsx | 18 +++--- src/routes/chat/Layout/AddContactTip.tsx | 12 ++-- src/routes/chat/Layout/DMVoicing.tsx | 21 +++---- .../chat/Layout/NewMessageBottomTip.tsx | 23 +++---- src/routes/chat/Layout/Operations.tsx | 3 +- .../VirtualMessageFeed/CustomHeader.tsx | 11 ++-- .../chat/Layout/VirtualMessageFeed/index.tsx | 46 +++++++------- src/routes/chat/Layout/index.tsx | 17 +++--- src/routes/chat/RTCWidget.tsx | 15 ++--- src/routes/chat/SessionList/ContextMenu.tsx | 11 ++-- src/routes/chat/SessionList/Session.tsx | 45 ++++++-------- src/routes/chat/SessionList/index.tsx | 22 +++---- src/routes/chat/VoiceChat/VoiceManagement.tsx | 12 ++-- src/routes/chat/VoiceChat/index.tsx | 23 +++---- src/routes/chat/VoiceFullscreen.tsx | 15 +++-- src/routes/chat/index.tsx | 24 +++----- src/routes/chat/utils.tsx | 7 ++- src/routes/favs/index.tsx | 11 ++-- src/routes/files/Filter/index.tsx | 6 +- src/routes/files/index.tsx | 7 +-- src/routes/guest.tsx | 4 +- src/routes/home/MobileNavs.tsx | 16 ++--- src/routes/home/User.tsx | 3 +- src/routes/home/index.tsx | 24 +++----- src/routes/index.tsx | 15 ++--- src/routes/invitePrivate/index.tsx | 3 +- src/routes/login/index.tsx | 3 +- src/routes/onboarding/steps/admin-account.tsx | 4 +- src/routes/reg/Register.tsx | 4 +- src/routes/resources/Filter/index.tsx | 5 +- src/routes/resources/index.tsx | 13 ++-- src/routes/setting/APIDocument.tsx | 3 +- src/routes/setting/BotConfig/index.tsx | 6 +- .../DataManagement/AutoDeleteFiles.tsx | 6 +- src/routes/setting/MyAccount.tsx | 8 ++- src/routes/setting/Overview/ChatLayout.tsx | 6 +- .../setting/Overview/ContactVerification.tsx | 6 +- src/routes/setting/Overview/OnlineStatus.tsx | 6 +- src/routes/setting/Overview/Server.tsx | 9 ++- src/routes/setting/Overview/index.tsx | 6 +- src/routes/setting/Overview/server.tsx | 9 ++- src/routes/setting/Widget.tsx | 3 +- src/routes/setting/navs.tsx | 6 +- src/routes/settingChannel/Overview.tsx | 9 +-- src/routes/settingChannel/index.tsx | 12 ++-- src/routes/settingDM/index.tsx | 11 +--- src/routes/users/Search.tsx | 6 +- src/widget/Icon.tsx | 3 +- src/widget/Popup/Message/index.tsx | 3 +- src/widget/Popup/MessageFeed.tsx | 6 +- src/widget/Popup/Welcome.tsx | 3 +- src/widget/Popup/index.tsx | 5 +- src/widget/WidgetContext.tsx | 3 +- src/widget/useSSE.ts | 18 +++--- 116 files changed, 572 insertions(+), 661 deletions(-) diff --git a/package.json b/package.json index 2e002edc..78bcb1d7 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vocechat-web", - "version": "0.4.23", + "version": "0.5.0", "homepage": "https://voce.chat", "dependencies": { "@electron-toolkit/preload": "^2.0.0", diff --git a/src/components/AddEntriesMenu.tsx b/src/components/AddEntriesMenu.tsx index 2f23b9f5..b3c14f6a 100644 --- a/src/components/AddEntriesMenu.tsx +++ b/src/components/AddEntriesMenu.tsx @@ -11,10 +11,11 @@ import ChannelModal from "./ChannelModal"; import InviteModal from "./InviteModal"; import SearchUser from "./SearchUser"; import UsersModal from "./UsersModal"; +import { shallowEqual } from "react-redux"; export default function AddEntriesMenu() { const { t } = useTranslation(); - const currentUser = useAppSelector((store) => store.authData.user); + const isAdmin = useAppSelector((store) => store.authData.user?.is_admin, shallowEqual); const [isPrivate, setIsPrivate] = useState(false); const [inviteModalVisible, setInviteModalVisible] = useState(false); const [searchModalVisible, setSearchModalVisible] = useState(false); @@ -60,7 +61,7 @@ export default function AddEntriesMenu() { <>