UNPKG

educa-sdk

Version:

A JavaScript SDK for interacting with the Educa backend API (Admin, Staff, and Student methods)

146 lines (135 loc) 3.93 kB
import request from '../api/request.js'; export const account = (site_id) => ({ login: async ({ formData = {}, onSuccess, onError } = {}) => { try { const data = await request({ method: 'POST', url: '/v2/auth/login/', data: formData, site_id: site_id }); onSuccess?.(data); return data; } catch (err) { onError?.(err); throw err; } }, verifyLogin: async ({ formData = {}, onSuccess, onError } = {}) => { try { const data = await request({ method: 'POST', url: '/v2/profile/verify_login/', data: formData, site_id: site_id }); onSuccess?.(data); return data; } catch (err) { onError?.(err); throw err; } }, forgotPassword: async ({ formData = {}, onSuccess, onError } = {}) => { try { const data = await request({ method: 'POST', url: '/v2/profile/forgot_password/', data: formData, site_id: site_id }); onSuccess?.(data); return data; } catch (err) { onError?.(err); throw err; } }, logout: async ({ formData = {}, onSuccess, onError } = {}) => { try { const data = await request({ method: 'POST', url: '/v2/profile/user_logout/', data: formData, site_id: site_id }); onSuccess?.(data); return data; } catch (err) { onError?.(err); throw err; } }, loginStatus: async ({ params = {}, onSuccess, onError } = {}) => { try { const data = await request({ url: '/v2/profile/auth_status/', site_id: site_id }); onSuccess?.(data); return data; } catch (err) { onError?.(err); throw err; } }, getProfile: async ({ params = {}, onSuccess, onError } = {}) => { try { const data = await request({ url: '/v2/profile/get_profile/', params: params, site_id: site_id }); onSuccess?.(data); return data; } catch (err) { onError?.(err); throw err; } }, uploadPassport: async ({ formData = {}, onSuccess, onError } = {}) => { try { const data = await request({ method: 'POST', url: '/v2/profile/upload_passport/', data: formData, site_id: site_id }); onSuccess?.(data); return data; } catch (err) { onError?.(err); throw err; } }, changePassword: async ({ formData = {}, onSuccess, onError } = {}) => { try { const data = await request({ method: 'POST', url: '/v2/profile/change_password/', data: formData, site_id: site_id }); onSuccess?.(data); return data; } catch (err) { onError?.(err); throw err; } }, updateProfile: async ({ formData = {}, onSuccess, onError } = {}) => { try { const data = await request({ method: 'POST', url: '/v2/profile/update_profile/', data: formData, site_id: site_id }); onSuccess?.(data); return data; } catch (err) { onError?.(err); throw err; } } })