feat: default firebase

This commit is contained in:
Tristan Yang
2022-12-01 17:07:17 +08:00
parent 4cf47e6027
commit 1474e32f6f
5 changed files with 75 additions and 21 deletions
+14 -4
View File
@@ -21,14 +21,14 @@ let originalValue: valuesOf<ConfigMap> | undefined = undefined;
export default function useConfig(config: keyof ConfigMap = "smtp") {
const [changed, setChanged] = useState(false);
const [values, setValues] = useState<valuesOf<ConfigMap> | undefined>(undefined);
const [updateLoginConfig, { isSuccess: LoginUpdated }] = useUpdateLoginConfigMutation();
const [updateSMTPConfig, { isSuccess: SMTPUpdated }] = useUpdateSMTPConfigMutation();
const [updateLoginConfig, { isSuccess: LoginUpdated, isLoading: LoginUpdating }] = useUpdateLoginConfigMutation();
const [updateSMTPConfig, { isSuccess: SMTPUpdated, isLoading: SMTPUpdating }] = useUpdateSMTPConfigMutation();
const [updateAgoraConfig, { isSuccess: AgoraUpdated, isLoading: AgoraUpdating }] = useUpdateAgoraConfigMutation();
const [updateFirebaseConfig, { isSuccess: FirebaseUpdated, isLoading: FirebaseUpdating }] = useUpdateFirebaseConfigMutation();
const [getAgoraConfig, { data: agoraConfig }] = useLazyGetAgoraConfigQuery();
const [updateAgoraConfig, { isSuccess: AgoraUpdated }] = useUpdateAgoraConfigMutation();
const [getLoginConfig, { data: loginConfig }] = useLazyGetLoginConfigQuery();
const [getSMTPConfig, { data: smtpConfig }] = useLazyGetSMTPConfigQuery();
const [getFirebaseConfig, { data: firebaseConfig }] = useLazyGetFirebaseConfigQuery();
const [updateFirebaseConfig, { isSuccess: FirebaseUpdated }] = useUpdateFirebaseConfigMutation();
const updateFns = {
login: updateLoginConfig,
@@ -48,9 +48,16 @@ export default function useConfig(config: keyof ConfigMap = "smtp") {
agora: AgoraUpdated,
firebase: FirebaseUpdated
};
const updatings = {
login: LoginUpdating,
smtp: SMTPUpdating,
agora: AgoraUpdating,
firebase: FirebaseUpdating
};
const updateConfig = updateFns[config];
const refetch = requests[config];
const updated = updates[config];
const updating = updatings[config];
const reset = () => {
setValues(undefined);
};
@@ -71,6 +78,7 @@ export default function useConfig(config: keyof ConfigMap = "smtp") {
useEffect(() => {
if (updated) {
toast.success("Configuration Updated!");
// setChanged(false);
refetch();
}
}, [updated]);
@@ -92,6 +100,8 @@ export default function useConfig(config: keyof ConfigMap = "smtp") {
}, [values]);
return {
updating,
updated,
reset,
changed,
updateConfig,