ultisuite-client/lib/api/hooks/use-mail-account-test.ts
2026-05-25 13:52:40 +02:00

31 lines
877 B
TypeScript

'use client'
import { useMutation } from '@tanstack/react-query'
import { apiClient } from '../client'
import type { MailAccountTestResult } from '../types'
export interface TestMailAccountPayload {
/** Compte existant : permet de tester sans resaisir le mot de passe */
account_id?: string
imap_host: string
imap_port: number
imap_tls: boolean
smtp_host: string
smtp_port: number
smtp_tls: boolean
username?: string
password?: string
auth_type?: 'password' | 'oauth2' | string
}
export function useTestMailAccount(existingAccountId?: string) {
return useMutation({
mutationFn: (payload: TestMailAccountPayload) => {
const body: TestMailAccountPayload = existingAccountId
? { ...payload, account_id: existingAccountId }
: payload
return apiClient.post<MailAccountTestResult>('/mail/accounts/test', body)
},
})
}