This repository has been archived on 2024-02-08. You can view files and clone it, but cannot push or open issues or pull requests.
frontend/src/services/passwordReset.ts

38 lines
893 B
TypeScript
Raw Permalink Normal View History

import AbstractService from './abstractService'
2022-09-06 09:36:01 +00:00
import PasswordResetModel from '@/models/passwordReset'
import type {IPasswordReset} from '@/modelTypes/IPasswordReset'
2022-07-21 16:56:31 +00:00
export default class PasswordResetService extends AbstractService<IPasswordReset> {
constructor() {
super({})
this.paths = {
reset: '/user/password/reset',
requestReset: '/user/password/token',
}
}
modelFactory(data) {
return new PasswordResetModel(data)
}
async resetPassword(model) {
const cancel = this.setLoading()
try {
const response = await this.http.post(this.paths.reset, model)
return this.modelFactory(response.data)
} finally {
cancel()
}
}
async requestResetPassword(model) {
const cancel = this.setLoading()
try {
const response = await this.http.post(this.paths.requestReset, model)
return this.modelFactory(response.data)
} finally {
cancel()
}
}
}