UNPKG

educa-sdk

Version:

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

154 lines (142 loc) 4.08 kB
import request from '../api/request.js'; export const account = (token) => ({ login: async ({ formData = {}, onSuccess, onError } = {}) => { try { const data = await request({ method: 'POST', url: '/v3/auth/login/', data: formData }); onSuccess?.(data); return data; } catch (err) { onError?.(err); throw err; } }, getSchoolInfo: async ({ params = {}, onSuccess, onError } = {}) => { try { const data = await request({ url: '/v3/school/get_info/' }); onSuccess?.(data); return data; } catch (err) { onError?.(err); throw err; } }, getSessions: async ({ params = {}, onSuccess, onError } = {}) => { try { const data = await request({ url: '/v3/school/get_sessions/', params: params, token: token }); onSuccess?.(data); return data; } catch (err) { onError?.(err); throw err; } }, getTerms: async ({ params = {}, onSuccess, onError } = {}) => { try { const data = await request({ url: '/v3/school/get_terms/', params: params, token: token }); onSuccess?.(data); return data; } catch (err) { onError?.(err); throw err; } }, getEvents: async ({ params = {}, onSuccess, onError } = {}) => { try { const data = await request({ url: '/v3/school/get_events/', params: params, token: token }); onSuccess?.(data); return data; } catch (err) { onError?.(err); throw err; } }, getProfile: async ({ params = {}, onSuccess, onError } = {}) => { try { const data = await request({ url: '/v3/profile/get_profile/', params: params, token: token }); onSuccess?.(data); return data; } catch (err) { onError?.(err); throw err; } }, uploadPassport: async ({ formData = {}, onSuccess, onError } = {}) => { try { const data = await request({ method: 'POST', url: '/v3/profile/upload_passport/', data: formData }); onSuccess?.(data); return data; } catch (err) { onError?.(err); throw err; } }, changePassword: async ({ formData = {}, onSuccess, onError } = {}) => { try { const data = await request({ method: 'POST', url: '/v3/profile/change_password/', data: formData, token: token }); onSuccess?.(data); return data; } catch (err) { onError?.(err); throw err; } }, getStudentReport: async ({ params = {}, onSuccess, onError } = {}) => { try { const data = await request({ url: '/v3/profile/get_student_report/', params: params, token: token }); onSuccess?.(data); return data; } catch (err) { onError?.(err); throw err; } }, getClassmates: async ({ params = {}, onSuccess, onError } = {}) => { try { const data = await request({ url: '/v3/classrooms/get_classmates/', params: params, token: token }); onSuccess?.(data); return data; } catch (err) { onError?.(err); throw err; } }, })