mirror of
https://github.com/langgenius/dify.git
synced 2026-08-03 03:26:35 +08:00
43 lines
1.1 KiB
TypeScript
43 lines
1.1 KiB
TypeScript
import { useMutation } from '@tanstack/react-query'
|
|
import { create } from 'zustand'
|
|
import {
|
|
sendDeleteAccountCode,
|
|
submitDeleteAccountFeedback,
|
|
verifyDeleteAccountCode,
|
|
} from '@/service/common'
|
|
|
|
type State = {
|
|
sendEmailToken: string
|
|
setSendEmailToken: (token: string) => void
|
|
}
|
|
|
|
export const useAccountDeleteStore = create<State>((set) => ({
|
|
sendEmailToken: '',
|
|
setSendEmailToken: (token: string) => set({ sendEmailToken: token }),
|
|
}))
|
|
|
|
export function useSendDeleteAccountEmail() {
|
|
const updateEmailToken = useAccountDeleteStore((state) => state.setSendEmailToken)
|
|
return useMutation({
|
|
mutationKey: ['delete-account'],
|
|
mutationFn: sendDeleteAccountCode,
|
|
onSuccess: (ret) => {
|
|
if (ret.result === 'success') updateEmailToken(ret.data)
|
|
},
|
|
})
|
|
}
|
|
|
|
export function useConfirmDeleteAccount() {
|
|
return useMutation({
|
|
mutationKey: ['confirm-delete-account'],
|
|
mutationFn: verifyDeleteAccountCode,
|
|
})
|
|
}
|
|
|
|
export function useDeleteAccountFeedback() {
|
|
return useMutation({
|
|
mutationKey: ['delete-account-feedback'],
|
|
mutationFn: submitDeleteAccountFeedback,
|
|
})
|
|
}
|