diff options
author | crupest <crupest@outlook.com> | 2020-09-01 02:32:06 +0800 |
---|---|---|
committer | crupest <crupest@outlook.com> | 2020-09-01 02:32:06 +0800 |
commit | aa89b6cce7701a57b0c377d938788b4c940013d6 (patch) | |
tree | ae95cb16698439ac825eb1d692ce14125b625ecb /Timeline/ClientApp/src/app/user/User.tsx | |
parent | c3e95a6cd7322c644159eed6350a20dfd1a002ff (diff) | |
download | timeline-aa89b6cce7701a57b0c377d938788b4c940013d6.tar.gz timeline-aa89b6cce7701a57b0c377d938788b4c940013d6.tar.bz2 timeline-aa89b6cce7701a57b0c377d938788b4c940013d6.zip |
...
Diffstat (limited to 'Timeline/ClientApp/src/app/user/User.tsx')
-rw-r--r-- | Timeline/ClientApp/src/app/user/User.tsx | 71 |
1 files changed, 0 insertions, 71 deletions
diff --git a/Timeline/ClientApp/src/app/user/User.tsx b/Timeline/ClientApp/src/app/user/User.tsx deleted file mode 100644 index db0a6f76..00000000 --- a/Timeline/ClientApp/src/app/user/User.tsx +++ /dev/null @@ -1,71 +0,0 @@ -import React, { useState } from "react"; -import { useParams } from "react-router"; - -import { UiLogicError } from "../common"; -import { useUser, userInfoService } from "../data/user"; -import TimelinePageTemplate from "../timeline/TimelinePageTemplate"; - -import UserPage from "./UserPage"; -import ChangeNicknameDialog from "./ChangeNicknameDialog"; -import ChangeAvatarDialog from "./ChangeAvatarDialog"; -import { PersonalTimelineManageItem } from "./UserInfoCard"; - -const User: React.FC = (_) => { - const { username } = useParams<{ username: string }>(); - - const user = useUser(); - - const [dialog, setDialog] = useState<null | PersonalTimelineManageItem>(null); - - let dialogElement: React.ReactElement | undefined; - - const closeDialogHandler = (): void => { - setDialog(null); - }; - - if (dialog === "nickname") { - if (user == null) { - throw new UiLogicError("Change nickname without login."); - } - - dialogElement = ( - <ChangeNicknameDialog - open - close={closeDialogHandler} - onProcess={(newNickname) => - userInfoService.setNickname(username, newNickname) - } - /> - ); - } else if (dialog === "avatar") { - if (user == null) { - throw new UiLogicError("Change avatar without login."); - } - - dialogElement = ( - <ChangeAvatarDialog - open - close={closeDialogHandler} - process={(file) => userInfoService.setAvatar(username, file)} - /> - ); - } - - const onManage = React.useCallback((item: PersonalTimelineManageItem) => { - setDialog(item); - }, []); - - return ( - <> - <TimelinePageTemplate - name={`@${username}`} - UiComponent={UserPage} - onManage={onManage} - notFoundI18nKey="timeline.userNotExist" - /> - {dialogElement} - </> - ); -}; - -export default User; |