import { graphql } from "@/gql"; // eslint-disable-next-line @typescript-eslint/no-unused-vars const CoursePageFragment = graphql(` fragment CoursePageFields on CoursePageInterface { title id slug content_type frontend_url } `); export const ATTENDANCE_CHECK_QUERY = graphql(` query attendanceCheckQuery($courseSessionId: ID!) { course_session_attendance_course(id: $courseSessionId) { id attendance_user_list { user_id status } } } `); export const ASSIGNMENT_COMPLETION_QUERY = graphql(` query assignmentCompletionQuery( $assignmentId: ID! $courseSessionId: ID! $learningContentId: ID $assignmentUserId: UUID ) { assignment(id: $assignmentId) { assignment_type needs_expert_evaluation max_points content_type effort_required evaluation_description evaluation_document_url evaluation_tasks id intro_text performance_objectives slug tasks title translation_key solution_sample { id url } competence_certificate { ...CoursePageFields } } assignment_completion( assignment_id: $assignmentId course_session_id: $courseSessionId assignment_user_id: $assignmentUserId learning_content_page_id: $learningContentId ) { id completion_status submitted_at evaluation_submitted_at evaluation_user { id first_name last_name } assignment_user { avatar_url first_name last_name id } evaluation_points evaluation_max_points evaluation_points_deducted evaluation_points_deducted_reason evaluation_points_final evaluation_passed edoniq_extended_time_flag completion_data task_completion_data } } `); export const COMPETENCE_NAVI_CERTIFICATE_QUERY = graphql(` query competenceCertificateQuery($courseSlug: String!, $courseSessionId: ID!) { competence_certificate_list(course_slug: $courseSlug) { ...CoursePageFields competence_certificates { ...CoursePageFields assignments { ...CoursePageFields assignment_type max_points competence_certificate_weight completion(course_session_id: $courseSessionId) { id completion_status submitted_at evaluation_points evaluation_points_deducted evaluation_points_final evaluation_max_points evaluation_passed } learning_content { ...CoursePageFields circle { id title slug } } } } } } `); export const COMPETENCE_NAVI_CERTIFICATE_FOR_USER_QUERY = graphql(` query competenceCertificateForUserQuery( $courseSlug: String! $courseSessionId: ID! $userId: UUID! ) { competence_certificate_list_for_user(course_slug: $courseSlug, user_id: $userId) { ...CoursePageFields competence_certificates { ...CoursePageFields assignments { ...CoursePageFields assignment_type max_points competence_certificate_weight completion(course_session_id: $courseSessionId) { id completion_status submitted_at evaluation_points evaluation_points_final evaluation_points_deducted evaluation_max_points evaluation_passed } learning_content { ...CoursePageFields circle { id title slug } } } } } } `); export const COURSE_SESSION_DETAIL_QUERY = graphql(` query courseSessionDetail($courseSessionId: ID!) { course_session(id: $courseSessionId) { id title course { id title slug configuration { id enable_circle_documents enable_learning_mentor enable_competence_certificates } } users { id user_id first_name last_name email avatar_url role circles { id title slug } optional_attendance } attendance_courses { id location trainer due_date { id start end } learning_content_id learning_content { id title circle { id title slug } } } assignments { id submission_deadline { id start } evaluation_deadline { id start } learning_content { id title content_assignment { id title assignment_type } } } edoniq_tests { id deadline { id start end } learning_content { id title content_assignment { id title assignment_type } } } } } `); export const COURSE_QUERY = graphql(` query courseQuery($slug: String!) { course(slug: $slug) { id title slug category_name configuration { id enable_circle_documents enable_learning_mentor enable_competence_certificates is_uk } action_competences { competence_id ...CoursePageFields performance_criteria { competence_id learning_unit { id slug evaluate_url } ...CoursePageFields } } learning_path { ...CoursePageFields topics { is_visible ...CoursePageFields circles { description goals ...CoursePageFields learning_sequences { icon ...CoursePageFields learning_units { evaluate_url ...CoursePageFields performance_criteria { ...CoursePageFields } learning_contents { can_user_self_toggle_course_completion content_url minutes description ...CoursePageFields ... on LearningContentAssignmentObjectType { assignment_type content_assignment { id assignment_type } competence_certificate { ...CoursePageFields } } ... on LearningContentEdoniqTestObjectType { checkbox_text has_extended_time_test content_assignment { id assignment_type } competence_certificate { ...CoursePageFields } } ... on LearningContentRichTextObjectType { text } } } } } } } } } `); export const DASHBOARD_CONFIG = graphql(` query dashboardConfig { dashboard_config { id slug name dashboard_type course_configuration { id enable_circle_documents enable_learning_mentor enable_competence_certificates is_uk } } } `); export const DASHBOARD_COURSE_SESSION_PROGRESS = graphql(` query dashboardProgress($courseId: ID!) { course_progress(course_id: $courseId) { _id course_id session_to_continue_id competence { _id total_count success_count fail_count } assignment { _id total_count points_max_count points_achieved_count } } } `); export const DASHBOARD_COURSE_DATA = graphql(` query dashboardCourseData($courseId: ID!) { course_progress(course_id: $courseId) { _id course_id session_to_continue_id } } `); export const DASHBOARD_COURSE_STATISTICS = graphql(` query courseStatistics($courseId: ID!) { course_statistics(course_id: $courseId) { _id course_id course_title course_slug course_session_properties { _id sessions { id name } generations circles { id name } } course_session_selection_ids course_session_selection_metrics { _id session_count participant_count expert_count } attendance_day_presences { _id records { _id course_session_id generation circle_id due_date participants_present participants_total details_url } summary { _id days_completed participants_present } } feedback_responses { _id records { _id course_session_id generation circle_id experts satisfaction_average satisfaction_max details_url } summary { _id satisfaction_average satisfaction_max total_responses } } assignments { _id summary { _id completed_count average_passed total_passed total_failed } records { _id course_session_id course_session_assignment_id circle_id generation assignment_title assignment_type_translation_key details_url deadline metrics { _id passed_count failed_count unranked_count ranking_completed average_passed } } } competences { _id summary { _id success_total fail_total } records { _id course_session_id generation circle_id title success_count fail_count details_url } } } } `); export const DASHBOARD_MENTOR_COMPETENCE_SUMMARY = graphql(` query mentorCourseStatistics($courseId: ID!) { mentor_course_statistics(course_id: $courseId) { _id course_id course_title course_slug course_session_selection_ids user_selection_ids assignments { _id summary { _id completed_count average_passed total_passed total_failed } records { _id course_session_id course_session_assignment_id circle_id generation assignment_title assignment_type_translation_key details_url deadline metrics { _id passed_count failed_count unranked_count ranking_completed average_passed } } } } } `);