const apiUrls = {
  auth: {
    login: '/user/auth/login',
    logout: '/user/auth/logout',
    modifyPassword: '/user/auth/modify-password',
    loginStatus: '/user/auth/check'
  },
  user: {
    info: '/user/info'
  },
  admin: {
    teacher: {
      add: '/admin/user/teacher/add',
      delete: '/admin/user/teacher/delete',
      update: '/admin/user/teacher/update',
    },
    course: {
      add: '/admin/course/add',
      delete: '/admin/course/delete',
      update: '/admin/course/update',
      courseTeacher: {
        add: '/course/teacher/add',
        remove: '/course/teachers/remove',
        update: '/course/teachers/update',
      }
    },
    courseSchedule: {
      add: '/admin/course-schedule/add',
      delete: '/admin/course-schedule/delete',
      update: '/admin/course-schedule/update',
      clone: '/admin/course-schedule/clone',
    },
    major: {
      add: '/admin/major/add',
      delete: '/admin/major/delete',
      update: '/admin/major/update',
    },
    student: {
      add: '/admin/user/student/add',
      addWithAutoMajor: '/admin/user/student/add-with-auto-major',
      delete: '/admin/user/student/delete',
      update: '/admin/user/student/update',
    },
    activity: {
      add: '/admin/activity/add',
      delete: '/admin/activity/delete',
      update: '/admin/activity/update',
      targets: {
        list: '/admin/activity/targets/list',
        add: '/admin/activity/targets/add',
        info: '/admin/activity/targets/info',
        duplicate: '/admin/activity/targets/duplicate',
        update: '/admin/activity/targets/update',
        delete: '/admin/activity/targets/delete',
      }
    }
  },
  course: {
    list: '/course/list',
    listNames: '/course/list-names',
    info: '/course/info',
    getSelectedStudents: '/course/get-selected-students',
    getNotSelectedStudents: '/course/get-not-selected-students',
    exportStudents: '/course/export-students',
    exportNotSelectStudents: '/course/export-not-select-students',
    courseTeacher: {
      list: '/course/teachers/list'
    },
  },
  courseSchedule: {
    list: '/course-schedule/list',
    info: '/course-schedule/info',
    fromCourse: '/course-schedule/list-available',
    studentList: '/course-schedule/list-student',
  },
  major: {
    list: '/major/list',
    info: '/major/info',
  },
  score: {
    export: '/score/export',
  },
  teacher: {
    list: '/teacher/list',
    info: '/teacher/info',
    course: {
      list: '/teacher/course-schedule/teacher-schedules',
      courseForTeacher: '/course/teacher-courses'
    },
    score: {
      scheduleScore: '/teacher/score/list-students',
      update: '/teacher/score/update',
    }
  },
  student: {
    list: '/student/list',
    info: '/student/info',
    course: {
      candidate: '/student/course/candidate',
      selected: '/student/course-schedule/result',
      select: '/student/course-schedule/select',
      checkSelected: '/student/course-schedule/check-selected',
      unselect: '/student/course-schedule/unselect',
      official: '/student/course-schedule/official',
    },
    score: {
      all: '/student/score/all'
    }
  },
  activity: {
    current: '/activity/current',
    list: '/activity/list',
    info: '/activity/info',
  },
}

export {
  apiUrls
}
