All files / src/api/teacher TeacherFeaturesAPI.js

93.33% Statements 28/30
50% Branches 6/12
100% Functions 6/6
93.33% Lines 28/30

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65          5x 5x 1x   4x 4x         4x 4x 1x   2x 2x         2x 2x 1x   1x 1x         2x 2x 1x   1x 1x         2x 2x 1x   1x 1x         1x 1x 1x              
import axios from "axios";
import { API_ENDPOINTS } from "@/api/endpoints";
 
export class TeacherFeaturesAPI {
    static async getEffectiveFeatures() {
        try {
            const response = await axios.get(API_ENDPOINTS.teacher.features.effective);
            return response.data;
        } catch (error) {
            console.error("Teacher Features API Error:", error);
            throw error.response?.data || error;
        }
    }
 
    static async getTeacherMadeAssignmentsQuota() {
        try {
            const response = await axios.get(API_ENDPOINTS.teacher.features.teacherMadeAssignmentsQuota);
            return response.data;
        } catch (error) {
            console.error("Teacher made assignments quota API Error:", error);
            throw error.response?.data || error;
        }
    }
 
    static async getOrganization() {
        try {
            const response = await axios.get(API_ENDPOINTS.teacher.features.organization);
            return response.data;
        } catch (error) {
            console.error("Teacher Organization API Error:", error);
            throw error.response?.data || error;
        }
    }
 
    static async getSchool() {
        try {
            const response = await axios.get(API_ENDPOINTS.teacher.features.school);
            return response.data;
        } catch (error) {
            console.error("Teacher School API Error:", error);
            throw error.response?.data || error;
        }
    }
 
    static async getDistrictPlan() {
        try {
            const response = await axios.get(API_ENDPOINTS.teacher.features.districtPlan);
            return response.data;
        } catch (error) {
            console.error("Teacher District Plan API Error:", error);
            throw error.response?.data || error;
        }
    }
 
    static async isFeatureEnabled(featureName) {
        try {
            const response = await axios.get(API_ENDPOINTS.teacher.features.featureStatus(featureName));
            return response.data;
        } catch (error) {
            console.error("Teacher Feature Status API Error:", error);
            throw error.response?.data || error;
        }
    }
}