import { ClientIds } from 'config/clients/types' import { getApiUrl } from '../config/routes' const errorLexics = { 5: '', 10: '', } type FailedResponse = { error: { code: keyof typeof errorLexics, message?: string, }, ok: false, } type SuccessResponse = { ok: true, } export const changePassword = async (currentClientId: ClientIds, password: string) => { const url = getApiUrl('/change_password') const init: RequestInit = { body: new URLSearchParams({ client_id: currentClientId, password, }), method: 'PUT', } const response = await fetch(url, init) const body: SuccessResponse | FailedResponse = await response.json() if (body.ok) return Promise.resolve() return Promise.reject(errorLexics[body.error.code]) }