feat: fixing certificate and block

This commit is contained in:
2026-04-14 13:07:45 -04:00
parent e0e6655b91
commit 169a0a18a2
21 changed files with 837 additions and 1226 deletions
+12
View File
@@ -278,6 +278,7 @@ export interface OrganizationExerciseSettings {
role_playing_enabled: boolean;
mermaid_enabled: boolean;
code_lab_enabled: boolean;
certificates_enabled: boolean;
}
export interface User {
@@ -433,6 +434,12 @@ export interface GlobalAiUsageResponse {
student_chat_usage: StudentChatUsage[];
}
export interface SamSyncResponse {
students_synced: number;
assignments_synced: number;
errors: string[];
}
// ==================== Grading ====================
export interface GradingCategory {
@@ -899,6 +906,11 @@ export const cmsApi = {
getCourseTeam: (courseId: string): Promise<CourseInstructor[]> => apiFetch(`/courses/${courseId}/team`),
addTeamMember: (courseId: string, email: string, role: string): Promise<CourseInstructor> => apiFetch(`/courses/${courseId}/team`, { method: 'POST', body: JSON.stringify({ email, role }) }),
removeTeamMember: (courseId: string, userId: string): Promise<void> => apiFetch(`/courses/${courseId}/team/${userId}`, { method: 'DELETE' }),
// SAM Integration
syncSamStudents: (): Promise<SamSyncResponse> => apiFetch('/sam/sync-students', { method: 'POST' }),
syncSamAssignments: (): Promise<SamSyncResponse> => apiFetch('/sam/sync-assignments', { method: 'POST' }),
syncSamAll: (): Promise<SamSyncResponse> => apiFetch('/sam/sync-all', { method: 'POST' }),
getUsers: (): Promise<User[]> => apiFetch('/users'),
// Modules & Lessons