UNPKG

educa-sdk

Version:

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

146 lines (134 loc) 3.95 kB
import request from '../api/request.js'; export const course = (site_id) => ({ list: async ({ params = {}, onSuccess, onError } = {}) => { try { const data = await request({ url: '/v2/courses/subject_list/', params: params, site_id: site_id }); onSuccess?.(data); return data; } catch (err) { onError?.(err); throw err; } }, classSubjects: async ({ params = {}, onSuccess, onError } = {}) => { try { const data = await request({ url: '/v2/courses/class_subject_list/', params: params, site_id: site_id }); onSuccess?.(data); return data; } catch (err) { onError?.(err); throw err; } }, getAssignedSyllabus: async ({ params = {}, onSuccess, onError } = {}) => { try { const data = await request({ url: '/v2/courses/get_assigned_syllabus/', params: params, site_id: site_id }); onSuccess?.(data); return data; } catch (err) { onError?.(err); throw err; } }, getTopics: async ({ params = {}, onSuccess, onError } = {}) => { try { const data = await request({ url: '/v2/courses/get_topics/', params: params, site_id: site_id }); onSuccess?.(data); return data; } catch (err) { onError?.(err); throw err; } }, updateTopic: async ({ formData = {}, onSuccess, onError } = {}) => { try { const data = await request({ method: 'POST', url: '/v2/courses/update_topic/', data: formData, site_id: site_id }); onSuccess?.(data); return data; } catch (err) { onError?.(err); throw err; } }, generateTopics: async ({ formData = {}, onSuccess, onError } = {}) => { try { const data = await request({ method: 'POST', url: '/v2/courses/generate_topics/', data: formData, site_id: site_id }); onSuccess?.(data); return data; } catch (err) { onError?.(err); throw err; } }, downloadSyllabus: async ({ formData = {}, onSuccess, onError } = {}) => { try { const data = await request({ method: 'POST', url: '/v2/courses/download_syllabus/', data: formData, site_id: site_id }); onSuccess?.(data); return data; } catch (err) { onError?.(err); throw err; } }, generateAiNote: async ({ formData = {}, onSuccess, onError } = {}) => { try { const data = await request({ method: 'POST', url: '/v2/courses/generate_content/', data: formData, site_id: site_id }); onSuccess?.(data); return data; } catch (err) { onError?.(err); throw err; } }, generateNotePDF: async ({ formData = {}, onSuccess, onError } = {}) => { try { const data = await request({ method: 'POST', url: '/v2/courses/generate_note_pdf/', data: formData, site_id: site_id }); onSuccess?.(data); return data; } catch (err) { onError?.(err); throw err; } }, })