From 20373c4376c9123f1bac4e4978299cc54c4329dc Mon Sep 17 00:00:00 2001 From: zerosoul Date: Tue, 12 Apr 2022 18:21:59 +0800 Subject: [PATCH] refactor: setting modals to pages --- src/app/services/channel.js | 9 +- src/app/slices/ui.js | 12 -- src/common/component/Setting/config/Logins.js | 115 ----------------- .../component/Setting/config/useConfig.js | 92 -------------- src/common/component/Setting/navs.js | 104 --------------- .../component/StyledSettingContainer.js | 75 ++++++----- src/routes/chat/ChannelList/NavItem.js | 15 ++- src/routes/chat/ChannelList/index.js | 2 +- src/routes/home/Menu.js | 15 +-- src/routes/home/index.js | 29 ++--- src/routes/index.js | 6 + .../setting}/LogoutConfirmModal.js | 19 ++- .../Setting => routes/setting}/MyAccount.js | 4 +- .../setting}/Notifications.js | 6 +- .../Setting => routes/setting}/Overview.js | 12 +- .../setting}/ProfileBasicEditModal.js | 12 +- .../setting}/config/Agora.js | 10 +- .../setting}/config/Firebase.js | 10 +- src/routes/setting/config/Logins.js | 119 ++++++++++++++++++ .../Setting => routes/setting}/config/SMTP.js | 14 +-- .../setting}/config/StyledContainer.js | 0 src/routes/setting/config/useConfig.js | 107 ++++++++++++++++ .../Setting => routes/setting}/index.js | 11 +- src/routes/setting/navs.js | 104 +++++++++++++++ .../settingChannel}/DeleteConfirmModal.js | 14 +-- .../settingChannel}/Overview.js | 14 +-- .../settingChannel}/index.js | 18 +-- .../settingChannel}/navs.js | 2 +- 28 files changed, 473 insertions(+), 477 deletions(-) delete mode 100644 src/common/component/Setting/config/Logins.js delete mode 100644 src/common/component/Setting/config/useConfig.js delete mode 100644 src/common/component/Setting/navs.js rename src/{common/component/Setting => routes/setting}/LogoutConfirmModal.js (80%) rename src/{common/component/Setting => routes/setting}/MyAccount.js (97%) rename src/{common/component/Setting => routes/setting}/Notifications.js (75%) rename src/{common/component/Setting => routes/setting}/Overview.js (93%) rename src/{common/component/Setting => routes/setting}/ProfileBasicEditModal.js (84%) rename src/{common/component/Setting => routes/setting}/config/Agora.js (91%) rename src/{common/component/Setting => routes/setting}/config/Firebase.js (89%) create mode 100644 src/routes/setting/config/Logins.js rename src/{common/component/Setting => routes/setting}/config/SMTP.js (90%) rename src/{common/component/Setting => routes/setting}/config/StyledContainer.js (100%) create mode 100644 src/routes/setting/config/useConfig.js rename src/{common/component/Setting => routes/setting}/index.js (79%) create mode 100644 src/routes/setting/navs.js rename src/{common/component/ChannelSetting => routes/settingChannel}/DeleteConfirmModal.js (79%) rename src/{common/component/ChannelSetting => routes/settingChannel}/Overview.js (89%) rename src/{common/component/ChannelSetting => routes/settingChannel}/index.js (75%) rename src/{common/component/ChannelSetting => routes/settingChannel}/navs.js (92%) diff --git a/src/app/services/channel.js b/src/app/services/channel.js index 0cfa48e0..7494214d 100644 --- a/src/app/services/channel.js +++ b/src/app/services/channel.js @@ -6,7 +6,6 @@ import { updateChannel, removeChannel } from "../slices/channels"; import { removeMessage } from "../slices/message"; import { removeChannelSession } from "../slices/message.channel"; import { removeReactionMessage } from "../slices/message.reaction"; -import { toggleChannelSetting } from "../slices/ui"; import { onMessageSendStarted } from "./handlers"; export const channelApi = createApi({ reducerPath: "channelApi", @@ -79,16 +78,10 @@ export const channelApi = createApi({ method: "DELETE", }), async onQueryStarted(id, { dispatch, getState, queryFulfilled }) { - const { - ui: { channelSetting }, - channelMessage, - } = getState(); + const { channelMessage } = getState(); try { await queryFulfilled; dispatch(removeChannel(id)); - if (id == channelSetting) { - dispatch(toggleChannelSetting()); - } // 删掉该channel下的所有消息&reaction const mids = channelMessage[id]; if (mids) { diff --git a/src/app/slices/ui.js b/src/app/slices/ui.js index 3e3f9d58..8eb0e4dc 100644 --- a/src/app/slices/ui.js +++ b/src/app/slices/ui.js @@ -5,8 +5,6 @@ const initialState = { ready: false, inputMode: "text", menuExpand: false, - setting: false, - channelSetting: null, fileListView: Views.item, }; const uiSlice = createSlice({ @@ -31,14 +29,6 @@ const uiSlice = createSlice({ updateFileListView(state, action) { state.fileListView = action.payload; }, - toggleSetting(state) { - state.setting = !state.setting; - }, - toggleChannelSetting(state, action) { - console.log("toggle channel setting payload", action); - const id = action.payload; - state.channelSetting = state.channelSetting ? null : id; - }, }, }); export const { @@ -46,9 +36,7 @@ export const { setReady, updateOnline, updateInputMode, - toggleSetting, toggleMenuExpand, - toggleChannelSetting, updateFileListView, } = uiSlice.actions; export default uiSlice.reducer; diff --git a/src/common/component/Setting/config/Logins.js b/src/common/component/Setting/config/Logins.js deleted file mode 100644 index 2e96cfcb..00000000 --- a/src/common/component/Setting/config/Logins.js +++ /dev/null @@ -1,115 +0,0 @@ -// import { useState, useEffect } from "react"; -import StyledContainer from './StyledContainer'; -// import Input from "../../styled/Input"; -import Textarea from '../../styled/Textarea'; -import Toggle from '../../styled/Toggle'; -import Label from '../../styled/Label'; -import SaveTip from '../../SaveTip'; -import useConfig from './useConfig'; - -export default function Logins() { - const { values, updateConfig, setValues, reset, changed } = useConfig('login'); - const handleUpdate = () => { - // const { token_url, description } = values; - updateConfig(values); - }; - const handleChange = (evt) => { - const newValue = evt.target.value; - const { type } = evt.target.dataset; - const items = newValue ? newValue.split('\n') : []; - setValues((prev) => { - return { ...prev, [type]: items }; - }); - }; - const handleToggle = (val) => { - setValues((prev) => { - return { ...prev, ...val }; - }); - }; - if (!values) return null; - const { google, metamask, password, oidc = [] } = values ?? {}; - return ( - -
-
- - -
-
- - -
-
- - -
-
- -