lms-graphql-api 0.5.3 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (118) hide show
  1. checksums.yaml +4 -4
  2. data/lib/lms_graphql/mutations/canvas/add_observee_with_credentials.rb +3 -1
  3. data/lib/lms_graphql/mutations/canvas/bulk_select_provisional_grades.rb +22 -0
  4. data/lib/lms_graphql/mutations/canvas/bulk_update_column_data.rb +22 -0
  5. data/lib/lms_graphql/mutations/canvas/create_single_rubric.rb +40 -0
  6. data/lib/lms_graphql/mutations/canvas/create_update_proficiency_ratings.rb +28 -0
  7. data/lib/lms_graphql/mutations/canvas/get_pandata_events_jwt_token_and_its_expiration_date.rb +20 -0
  8. data/lib/lms_graphql/mutations/canvas/import_outcome_group_accounts.rb +4 -2
  9. data/lib/lms_graphql/mutations/canvas/import_outcome_group_courses.rb +4 -2
  10. data/lib/lms_graphql/mutations/canvas/import_outcome_group_global.rb +4 -2
  11. data/lib/lms_graphql/mutations/canvas/mutations.rb +7 -1
  12. data/lib/lms_graphql/mutations/canvas/quiz_extensions_set_extensions_for_student_quiz_submissions.rb +13 -13
  13. data/lib/lms_graphql/mutations/canvas/restore_workflow_states_of_sis_imported_items.rb +28 -0
  14. data/lib/lms_graphql/mutations/canvas/update_single_rubric.rb +42 -0
  15. data/lib/lms_graphql/mutations/canvas/update_student_question_scores_and_comments.rb +7 -7
  16. data/lib/lms_graphql/resolvers/canvas/courses_permissions.rb +22 -0
  17. data/lib/lms_graphql/resolvers/canvas/get_aligned_assignments_for_outcome_in_course_for_particular_student.rb +22 -0
  18. data/lib/lms_graphql/resolvers/canvas/get_current_importing_sis_import.rb +20 -0
  19. data/lib/lms_graphql/resolvers/canvas/get_help_links.rb +20 -0
  20. data/lib/lms_graphql/resolvers/canvas/get_outcome_result_rollups.rb +12 -2
  21. data/lib/lms_graphql/resolvers/canvas/get_outcome_results.rb +4 -2
  22. data/lib/lms_graphql/resolvers/canvas/get_proficiency_ratings.rb +20 -0
  23. data/lib/lms_graphql/resolvers/canvas/get_terms_of_service.rb +20 -0
  24. data/lib/lms_graphql/resolvers/canvas/groups_permissions.rb +22 -0
  25. data/lib/lms_graphql/resolvers/canvas/list_assignments_assignment_groups.rb +36 -0
  26. data/lib/lms_graphql/resolvers/canvas/list_assignments_assignments.rb +34 -0
  27. data/lib/lms_graphql/resolvers/canvas/list_blueprint_subscriptions.rb +20 -0
  28. data/lib/lms_graphql/resolvers/canvas/list_missing_submissions.rb +4 -2
  29. data/lib/lms_graphql/resolvers/canvas/list_planner_items.rb +3 -1
  30. data/lib/lms_graphql/resolvers/canvas/moderated_grading_show_provisional_grade_status_for_student.rb +24 -0
  31. data/lib/lms_graphql/resolvers/canvas/permissions.rb +3 -3
  32. data/lib/lms_graphql/types/canvas/admin_input.rb +2 -2
  33. data/lib/lms_graphql/types/canvas/appointment_group_input.rb +6 -6
  34. data/lib/lms_graphql/types/canvas/assignment_event_input.rb +4 -4
  35. data/lib/lms_graphql/types/canvas/assignment_group_input.rb +2 -2
  36. data/lib/lms_graphql/types/canvas/assignment_input.rb +18 -18
  37. data/lib/lms_graphql/types/canvas/authentication_provider_input.rb +2 -2
  38. data/lib/lms_graphql/types/canvas/blueprint_subscription.rb +16 -0
  39. data/lib/lms_graphql/types/canvas/blueprint_subscription_input.rb +16 -0
  40. data/lib/lms_graphql/types/canvas/blueprint_template_input.rb +1 -1
  41. data/lib/lms_graphql/types/canvas/conference_input.rb +2 -2
  42. data/lib/lms_graphql/types/canvas/content_detail_input.rb +2 -2
  43. data/lib/lms_graphql/types/canvas/content_export_input.rb +2 -2
  44. data/lib/lms_graphql/types/canvas/conversation_input.rb +2 -2
  45. data/lib/lms_graphql/types/canvas/course.rb +1 -0
  46. data/lib/lms_graphql/types/canvas/course_epub_export_input.rb +2 -2
  47. data/lib/lms_graphql/types/canvas/course_event_input.rb +2 -2
  48. data/lib/lms_graphql/types/canvas/course_input.rb +9 -8
  49. data/lib/lms_graphql/types/canvas/discussion_topic_input.rb +4 -4
  50. data/lib/lms_graphql/types/canvas/enrollment_input.rb +4 -4
  51. data/lib/lms_graphql/types/canvas/epub_export_input.rb +2 -2
  52. data/lib/lms_graphql/types/canvas/feature_input.rb +2 -2
  53. data/lib/lms_graphql/types/canvas/grade_change_event_input.rb +2 -2
  54. data/lib/lms_graphql/types/canvas/grading_standard_input.rb +2 -2
  55. data/lib/lms_graphql/types/canvas/group_category_input.rb +2 -2
  56. data/lib/lms_graphql/types/canvas/help_link.rb +18 -0
  57. data/lib/lms_graphql/types/canvas/help_link_input.rb +18 -0
  58. data/lib/lms_graphql/types/canvas/lti_assignment.rb +2 -0
  59. data/lib/lms_graphql/types/canvas/lti_assignment_input.rb +2 -0
  60. data/lib/lms_graphql/types/canvas/module_input.rb +2 -2
  61. data/lib/lms_graphql/types/canvas/module_item_input.rb +4 -4
  62. data/lib/lms_graphql/types/canvas/module_item_sequence_input.rb +4 -4
  63. data/lib/lms_graphql/types/canvas/module_item_sequence_node_input.rb +6 -6
  64. data/lib/lms_graphql/types/canvas/originality_report_input.rb +1 -1
  65. data/lib/lms_graphql/types/canvas/outcome.rb +1 -1
  66. data/lib/lms_graphql/types/canvas/outcome_alignment.rb +6 -4
  67. data/lib/lms_graphql/types/canvas/outcome_alignment_input.rb +6 -4
  68. data/lib/lms_graphql/types/canvas/outcome_group_input.rb +2 -2
  69. data/lib/lms_graphql/types/canvas/outcome_import_input.rb +4 -4
  70. data/lib/lms_graphql/types/canvas/outcome_input.rb +3 -3
  71. data/lib/lms_graphql/types/canvas/outcome_link_input.rb +4 -4
  72. data/lib/lms_graphql/types/canvas/outcome_path_input.rb +2 -2
  73. data/lib/lms_graphql/types/canvas/outcome_rollup_input.rb +4 -4
  74. data/lib/lms_graphql/types/canvas/outcome_rollup_score_input.rb +2 -2
  75. data/lib/lms_graphql/types/canvas/page_input.rb +4 -4
  76. data/lib/lms_graphql/types/canvas/page_revision_input.rb +2 -2
  77. data/lib/lms_graphql/types/canvas/page_view_input.rb +2 -2
  78. data/lib/lms_graphql/types/canvas/planner_note.rb +1 -1
  79. data/lib/lms_graphql/types/canvas/planner_note_input.rb +1 -1
  80. data/lib/lms_graphql/types/canvas/planner_override.rb +2 -1
  81. data/lib/lms_graphql/types/canvas/planner_override_input.rb +2 -1
  82. data/lib/lms_graphql/types/canvas/poll_session_input.rb +2 -2
  83. data/lib/lms_graphql/types/canvas/proficiency.rb +14 -0
  84. data/lib/lms_graphql/types/canvas/proficiency_input.rb +14 -0
  85. data/lib/lms_graphql/types/canvas/proficiency_rating.rb +17 -0
  86. data/lib/lms_graphql/types/canvas/proficiency_rating_input.rb +17 -0
  87. data/lib/lms_graphql/types/canvas/profile_input.rb +2 -2
  88. data/lib/lms_graphql/types/canvas/query_type.rb +51 -19
  89. data/lib/lms_graphql/types/canvas/quiz_assignment_override_set_container_input.rb +2 -2
  90. data/lib/lms_graphql/types/canvas/quiz_assignment_override_set_input.rb +4 -4
  91. data/lib/lms_graphql/types/canvas/quiz_input.rb +6 -6
  92. data/lib/lms_graphql/types/canvas/quiz_question_input.rb +2 -2
  93. data/lib/lms_graphql/types/canvas/quiz_report_input.rb +4 -4
  94. data/lib/lms_graphql/types/canvas/quiz_statistic_input.rb +6 -6
  95. data/lib/lms_graphql/types/canvas/quiz_statistics_question_statistic_input.rb +2 -2
  96. data/lib/lms_graphql/types/canvas/report_input.rb +4 -4
  97. data/lib/lms_graphql/types/canvas/result_input.rb +2 -2
  98. data/lib/lms_graphql/types/canvas/role_input.rb +2 -2
  99. data/lib/lms_graphql/types/canvas/rubric_criterium.rb +1 -0
  100. data/lib/lms_graphql/types/canvas/rubric_criterium_input.rb +3 -2
  101. data/lib/lms_graphql/types/canvas/rubric_input.rb +2 -2
  102. data/lib/lms_graphql/types/canvas/scope.rb +4 -1
  103. data/lib/lms_graphql/types/canvas/scope_input.rb +4 -1
  104. data/lib/lms_graphql/types/canvas/section_attribute_input.rb +6 -6
  105. data/lib/lms_graphql/types/canvas/sis_assignment_input.rb +6 -6
  106. data/lib/lms_graphql/types/canvas/sis_import.rb +1 -0
  107. data/lib/lms_graphql/types/canvas/sis_import_datum_input.rb +2 -2
  108. data/lib/lms_graphql/types/canvas/sis_import_input.rb +7 -6
  109. data/lib/lms_graphql/types/canvas/submission_comment_input.rb +2 -2
  110. data/lib/lms_graphql/types/canvas/submission_history_input.rb +2 -2
  111. data/lib/lms_graphql/types/canvas/submission_input.rb +2 -2
  112. data/lib/lms_graphql/types/canvas/terms_of_service.rb +18 -0
  113. data/lib/lms_graphql/types/canvas/terms_of_service_input.rb +18 -0
  114. data/lib/lms_graphql/types/canvas/user_assignment_override_attribute_input.rb +2 -2
  115. data/lib/lms_graphql/types/canvas/user_input.rb +2 -2
  116. data/lib/lms_graphql/types/canvas_forward_declarations.rb +5 -0
  117. data/lib/lms_graphql/version.rb +1 -1
  118. metadata +30 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a3e1958eca3af027593d33d09ad034926ce23be28cc5351cb8338030e4c6243a
4
- data.tar.gz: b041b3b8ae1442ccc3a798a4651db5a431936547f4806cfbb44b6abe8153a580
3
+ metadata.gz: 1aa3c9c4afc05253018e15ac4ccb1dff68f707f305e1c5775f23155950610589
4
+ data.tar.gz: 6cf93d06c1aec3db4b5dbb71a3179ef746ef1d9cae2b30bee6cdb781f623188a
5
5
  SHA512:
6
- metadata.gz: 58e0ea1460fba5d5e3a3e10f22e8c64983c46c17cd31e372df7e4a0ce1e0bc85d943792270bfd8aed87fb7f5d991ff23b8e95e931ea47549367940d4d8aa78c5
7
- data.tar.gz: ee75cf066848170221209a35545d97bf9195715fed2a87e39b149df1cd5d7d0e7eb18b810fd9f9645fbe4f46278989cd4788914b09e4417c30d06bedc4714d7e
6
+ metadata.gz: e4df5c9ebeae23d9e02303a4a038b432faf624de87a698060f0f3ed301119a5ed6cc201a8f2d49f158b327dd5e9420e57e03bfee7a7216a0663bc5e5b511dbea
7
+ data.tar.gz: e1c849c545b77573ca4b1626ae13bd3a5f84b905145181b2bf0466b29c308a581332dc6cd7bfb61db8dfd338988a4736100fd1372d3ec59b40dfc0b188de82c0
@@ -8,9 +8,10 @@ module LMSGraphQL
8
8
  argument :observee_unique_id, String, required: false
9
9
  argument :observee_password, String, required: false
10
10
  argument :access_token, String, required: false
11
+ argument :pairing_code, String, required: false
11
12
  argument :root_account_id, ID, required: false
12
13
  field :user, LMSGraphQL::Types::Canvas::CanvasUser, null: false
13
- def resolve(user_id:, observee_unique_id: nil, observee_password: nil, access_token: nil, root_account_id: nil)
14
+ def resolve(user_id:, observee_unique_id: nil, observee_password: nil, access_token: nil, pairing_code: nil, root_account_id: nil)
14
15
  context[:canvas_api].call("ADD_OBSERVEE_WITH_CREDENTIALS").proxy(
15
16
  "ADD_OBSERVEE_WITH_CREDENTIALS",
16
17
  {
@@ -18,6 +19,7 @@ module LMSGraphQL
18
19
  "observee[unique_id]": observee_unique_id,
19
20
  "observee[password]": observee_password,
20
21
  "access_token": access_token,
22
+ "pairing_code": pairing_code,
21
23
  "root_account_id": root_account_id },
22
24
  nil,
23
25
  ).parsed_response
@@ -0,0 +1,22 @@
1
+ require_relative "../canvas_base_mutation"
2
+
3
+ module LMSGraphQL
4
+ module Mutations
5
+ module Canvas
6
+ class BulkSelectProvisionalGrade < BaseMutation
7
+ argument :course_id, ID, required: true
8
+ argument :assignment_id, ID, required: true
9
+ field :return_value, Boolean, null: false
10
+ def resolve(course_id:, assignment_id:)
11
+ context[:canvas_api].call("BULK_SELECT_PROVISIONAL_GRADES").proxy(
12
+ "BULK_SELECT_PROVISIONAL_GRADES",
13
+ {
14
+ "course_id": course_id,
15
+ "assignment_id": assignment_id },
16
+ nil,
17
+ ).parsed_response
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,22 @@
1
+ require_relative "../canvas_base_mutation"
2
+ require_relative "../../types/canvas/progress"
3
+ module LMSGraphQL
4
+ module Mutations
5
+ module Canvas
6
+ class BulkUpdateColumnDatum < BaseMutation
7
+ argument :course_id, ID, required: true
8
+ argument :column_data, [String], required: true
9
+ field :progress, LMSGraphQL::Types::Canvas::CanvasProgress, null: false
10
+ def resolve(course_id:, column_data:)
11
+ context[:canvas_api].call("BULK_UPDATE_COLUMN_DATA").proxy(
12
+ "BULK_UPDATE_COLUMN_DATA",
13
+ {
14
+ "course_id": course_id,
15
+ "column_data": column_data },
16
+ nil,
17
+ ).parsed_response
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,40 @@
1
+ require_relative "../canvas_base_mutation"
2
+
3
+ module LMSGraphQL
4
+ module Mutations
5
+ module Canvas
6
+ class CreateSingleRubric < BaseMutation
7
+ argument :course_id, ID, required: true
8
+ argument :id, ID, required: false
9
+ argument :rubric_association_id, ID, required: false
10
+ argument :rubric_title, String, required: false
11
+ argument :rubric_free_form_criterion_comments, Boolean, required: false
12
+ argument :rubric_association_association_id, Int, required: false
13
+ argument :rubric_association_association_type, String, required: false
14
+ argument :rubric_association_use_for_grading, Boolean, required: false
15
+ argument :rubric_association_hide_score_total, Boolean, required: false
16
+ argument :rubric_association_purpose, String, required: false
17
+ argument :rubric_criteria, String, required: false
18
+ field :return_value, Boolean, null: false
19
+ def resolve(course_id:, id: nil, rubric_association_id: nil, rubric_title: nil, rubric_free_form_criterion_comments: nil, rubric_association_association_id: nil, rubric_association_association_type: nil, rubric_association_use_for_grading: nil, rubric_association_hide_score_total: nil, rubric_association_purpose: nil, rubric_criteria: nil)
20
+ context[:canvas_api].call("CREATE_SINGLE_RUBRIC").proxy(
21
+ "CREATE_SINGLE_RUBRIC",
22
+ {
23
+ "course_id": course_id,
24
+ "id": id,
25
+ "rubric_association_id": rubric_association_id,
26
+ "rubric[title]": rubric_title,
27
+ "rubric[free_form_criterion_comments]": rubric_free_form_criterion_comments,
28
+ "rubric_association[association_id]": rubric_association_association_id,
29
+ "rubric_association[association_type]": rubric_association_association_type,
30
+ "rubric_association[use_for_grading]": rubric_association_use_for_grading,
31
+ "rubric_association[hide_score_total]": rubric_association_hide_score_total,
32
+ "rubric_association[purpose]": rubric_association_purpose,
33
+ "rubric[criteria]": rubric_criteria },
34
+ nil,
35
+ ).parsed_response
36
+ end
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,28 @@
1
+ require_relative "../canvas_base_mutation"
2
+ require_relative "../../types/canvas/proficiency"
3
+ module LMSGraphQL
4
+ module Mutations
5
+ module Canvas
6
+ class CreateUpdateProficiencyRating < BaseMutation
7
+ argument :account_id, ID, required: true
8
+ argument :ratings_description, String, required: false
9
+ argument :ratings_points, Int, required: false
10
+ argument :ratings_mastery, Int, required: false
11
+ argument :ratings_color, Int, required: false
12
+ field :proficiency, LMSGraphQL::Types::Canvas::CanvasProficiency, null: false
13
+ def resolve(account_id:, ratings_description: nil, ratings_points: nil, ratings_mastery: nil, ratings_color: nil)
14
+ context[:canvas_api].call("CREATE_UPDATE_PROFICIENCY_RATINGS").proxy(
15
+ "CREATE_UPDATE_PROFICIENCY_RATINGS",
16
+ {
17
+ "account_id": account_id,
18
+ "ratings[description]": ratings_description,
19
+ "ratings[points]": ratings_points,
20
+ "ratings[mastery]": ratings_mastery,
21
+ "ratings[color]": ratings_color },
22
+ nil,
23
+ ).parsed_response
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,20 @@
1
+ require_relative "../canvas_base_mutation"
2
+
3
+ module LMSGraphQL
4
+ module Mutations
5
+ module Canvas
6
+ class GetPandataEventsJwtTokenAndItsExpirationDate < BaseMutation
7
+ argument :app_key, String, required: false
8
+ field :return_value, Boolean, null: false
9
+ def resolve(app_key: nil)
10
+ context[:canvas_api].call("GET_PANDATA_EVENTS_JWT_TOKEN_AND_ITS_EXPIRATION_DATE").proxy(
11
+ "GET_PANDATA_EVENTS_JWT_TOKEN_AND_ITS_EXPIRATION_DATE",
12
+ {
13
+ "app_key": app_key },
14
+ nil,
15
+ ).parsed_response
16
+ end
17
+ end
18
+ end
19
+ end
20
+ end
@@ -7,14 +7,16 @@ module LMSGraphQL
7
7
  argument :account_id, ID, required: true
8
8
  argument :id, ID, required: true
9
9
  argument :source_outcome_group_id, ID, required: true
10
+ argument :async, Boolean, required: false
10
11
  field :outcome_group, LMSGraphQL::Types::Canvas::CanvasOutcomeGroup, null: false
11
- def resolve(account_id:, id:, source_outcome_group_id:)
12
+ def resolve(account_id:, id:, source_outcome_group_id:, async: nil)
12
13
  context[:canvas_api].call("IMPORT_OUTCOME_GROUP_ACCOUNTS").proxy(
13
14
  "IMPORT_OUTCOME_GROUP_ACCOUNTS",
14
15
  {
15
16
  "account_id": account_id,
16
17
  "id": id,
17
- "source_outcome_group_id": source_outcome_group_id },
18
+ "source_outcome_group_id": source_outcome_group_id,
19
+ "async": async },
18
20
  nil,
19
21
  ).parsed_response
20
22
  end
@@ -7,14 +7,16 @@ module LMSGraphQL
7
7
  argument :course_id, ID, required: true
8
8
  argument :id, ID, required: true
9
9
  argument :source_outcome_group_id, ID, required: true
10
+ argument :async, Boolean, required: false
10
11
  field :outcome_group, LMSGraphQL::Types::Canvas::CanvasOutcomeGroup, null: false
11
- def resolve(course_id:, id:, source_outcome_group_id:)
12
+ def resolve(course_id:, id:, source_outcome_group_id:, async: nil)
12
13
  context[:canvas_api].call("IMPORT_OUTCOME_GROUP_COURSES").proxy(
13
14
  "IMPORT_OUTCOME_GROUP_COURSES",
14
15
  {
15
16
  "course_id": course_id,
16
17
  "id": id,
17
- "source_outcome_group_id": source_outcome_group_id },
18
+ "source_outcome_group_id": source_outcome_group_id,
19
+ "async": async },
18
20
  nil,
19
21
  ).parsed_response
20
22
  end
@@ -6,13 +6,15 @@ module LMSGraphQL
6
6
  class ImportOutcomeGroupGlobal < BaseMutation
7
7
  argument :id, ID, required: true
8
8
  argument :source_outcome_group_id, ID, required: true
9
+ argument :async, Boolean, required: false
9
10
  field :outcome_group, LMSGraphQL::Types::Canvas::CanvasOutcomeGroup, null: false
10
- def resolve(id:, source_outcome_group_id:)
11
+ def resolve(id:, source_outcome_group_id:, async: nil)
11
12
  context[:canvas_api].call("IMPORT_OUTCOME_GROUP_GLOBAL").proxy(
12
13
  "IMPORT_OUTCOME_GROUP_GLOBAL",
13
14
  {
14
15
  "id": id,
15
- "source_outcome_group_id": source_outcome_group_id },
16
+ "source_outcome_group_id": source_outcome_group_id,
17
+ "async": async },
16
18
  nil,
17
19
  ).parsed_response
18
20
  end
@@ -96,6 +96,7 @@ module LMSGraphQL
96
96
  field :delete_custom_gradebook_column, mutation: LMSGraphQL::Mutations::Canvas::DeleteCustomGradebookColumn
97
97
  field :reorder_custom_columns, mutation: LMSGraphQL::Mutations::Canvas::ReorderCustomColumn
98
98
  field :update_column_data, mutation: LMSGraphQL::Mutations::Canvas::UpdateColumnDatum
99
+ field :bulk_update_column_data, mutation: LMSGraphQL::Mutations::Canvas::BulkUpdateColumnDatum
99
100
  field :create_new_discussion_topic_courses, mutation: LMSGraphQL::Mutations::Canvas::CreateNewDiscussionTopicCourse
100
101
  field :create_new_discussion_topic_groups, mutation: LMSGraphQL::Mutations::Canvas::CreateNewDiscussionTopicGroup
101
102
  field :update_topic_courses, mutation: LMSGraphQL::Mutations::Canvas::UpdateTopicCourse
@@ -208,6 +209,7 @@ module LMSGraphQL
208
209
  field :edit_user_login, mutation: LMSGraphQL::Mutations::Canvas::EditUserLogin
209
210
  field :delete_user_login, mutation: LMSGraphQL::Mutations::Canvas::DeleteUserLogin
210
211
  field :select_students_for_moderation, mutation: LMSGraphQL::Mutations::Canvas::SelectStudentsForModeration
212
+ field :bulk_select_provisional_grades, mutation: LMSGraphQL::Mutations::Canvas::BulkSelectProvisionalGrade
211
213
  field :select_provisional_grade, mutation: LMSGraphQL::Mutations::Canvas::SelectProvisionalGrade
212
214
  field :copy_provisional_grade, mutation: LMSGraphQL::Mutations::Canvas::CopyProvisionalGrade
213
215
  field :publish_provisional_grades_for_assignment, mutation: LMSGraphQL::Mutations::Canvas::PublishProvisionalGradesForAssignment
@@ -284,6 +286,7 @@ module LMSGraphQL
284
286
  field :create_single_poll, mutation: LMSGraphQL::Mutations::Canvas::CreateSinglePoll
285
287
  field :update_single_poll, mutation: LMSGraphQL::Mutations::Canvas::UpdateSinglePoll
286
288
  field :delete_poll, mutation: LMSGraphQL::Mutations::Canvas::DeletePoll
289
+ field :create_update_proficiency_ratings, mutation: LMSGraphQL::Mutations::Canvas::CreateUpdateProficiencyRating
287
290
  field :quiz_extensions_set_extensions_for_student_quiz_submissions, mutation: LMSGraphQL::Mutations::Canvas::QuizExtensionsSetExtensionsForStudentQuizSubmission
288
291
  field :create_question_group, mutation: LMSGraphQL::Mutations::Canvas::CreateQuestionGroup
289
292
  field :update_question_group, mutation: LMSGraphQL::Mutations::Canvas::UpdateQuestionGroup
@@ -312,7 +315,10 @@ module LMSGraphQL
312
315
  field :deactivate_role, mutation: LMSGraphQL::Mutations::Canvas::DeactivateRole
313
316
  field :activate_role, mutation: LMSGraphQL::Mutations::Canvas::ActivateRole
314
317
  field :update_role, mutation: LMSGraphQL::Mutations::Canvas::UpdateRole
318
+ field :create_single_rubric, mutation: LMSGraphQL::Mutations::Canvas::CreateSingleRubric
319
+ field :update_single_rubric, mutation: LMSGraphQL::Mutations::Canvas::UpdateSingleRubric
315
320
  field :import_sis_data, mutation: LMSGraphQL::Mutations::Canvas::ImportSisDatum
321
+ field :restore_workflow_states_of_sis_imported_items, mutation: LMSGraphQL::Mutations::Canvas::RestoreWorkflowStatesOfSisImportedItem
316
322
  field :abort_sis_import, mutation: LMSGraphQL::Mutations::Canvas::AbortSisImport
317
323
  field :abort_all_pending_sis_imports, mutation: LMSGraphQL::Mutations::Canvas::AbortAllPendingSisImport
318
324
  field :disable_assignments_currently_enabled_for_grade_export_to_sis, mutation: LMSGraphQL::Mutations::Canvas::DisableAssignmentsCurrentlyEnabledForGradeExportToSi
@@ -355,7 +361,7 @@ module LMSGraphQL
355
361
  field :merge_user_into_another_user_destination_user_id, mutation: LMSGraphQL::Mutations::Canvas::MergeUserIntoAnotherUserDestinationUserId
356
362
  field :merge_user_into_another_user_accounts, mutation: LMSGraphQL::Mutations::Canvas::MergeUserIntoAnotherUserAccount
357
363
  field :split_merged_users_into_separate_users, mutation: LMSGraphQL::Mutations::Canvas::SplitMergedUsersIntoSeparateUser
358
- field :get_pandata_jwt_token_and_its_expiration_date, mutation: LMSGraphQL::Mutations::Canvas::GetPandataJwtTokenAndItsExpirationDate
364
+ field :get_pandata_events_jwt_token_and_its_expiration_date, mutation: LMSGraphQL::Mutations::Canvas::GetPandataEventsJwtTokenAndItsExpirationDate
359
365
  field :store_custom_data, mutation: LMSGraphQL::Mutations::Canvas::StoreCustomDatum
360
366
  field :delete_custom_data, mutation: LMSGraphQL::Mutations::Canvas::DeleteCustomDatum
361
367
  field :set_course_nickname, mutation: LMSGraphQL::Mutations::Canvas::SetCourseNickname
@@ -6,25 +6,25 @@ module LMSGraphQL
6
6
  class QuizExtensionsSetExtensionsForStudentQuizSubmission < BaseMutation
7
7
  argument :course_id, ID, required: true
8
8
  argument :quiz_id, ID, required: true
9
- argument :user_id, ID, required: true
10
- argument :extra_attempts, Int, required: false
11
- argument :extra_time, Int, required: false
12
- argument :manually_unlocked, Boolean, required: false
13
- argument :extend_from_now, Int, required: false
14
- argument :extend_from_end_at, Int, required: false
9
+ argument :quiz_extensions_user_id, Int, required: true
10
+ argument :quiz_extensions_extra_attempts, Int, required: false
11
+ argument :quiz_extensions_extra_time, Int, required: false
12
+ argument :quiz_extensions_manually_unlocked, Boolean, required: false
13
+ argument :quiz_extensions_extend_from_now, Int, required: false
14
+ argument :quiz_extensions_extend_from_end_at, Int, required: false
15
15
  field :return_value, Boolean, null: false
16
- def resolve(course_id:, quiz_id:, user_id:, extra_attempts: nil, extra_time: nil, manually_unlocked: nil, extend_from_now: nil, extend_from_end_at: nil)
16
+ def resolve(course_id:, quiz_id:, quiz_extensions_user_id:, quiz_extensions_extra_attempts: nil, quiz_extensions_extra_time: nil, quiz_extensions_manually_unlocked: nil, quiz_extensions_extend_from_now: nil, quiz_extensions_extend_from_end_at: nil)
17
17
  context[:canvas_api].call("QUIZ_EXTENSIONS_SET_EXTENSIONS_FOR_STUDENT_QUIZ_SUBMISSIONS").proxy(
18
18
  "QUIZ_EXTENSIONS_SET_EXTENSIONS_FOR_STUDENT_QUIZ_SUBMISSIONS",
19
19
  {
20
20
  "course_id": course_id,
21
21
  "quiz_id": quiz_id,
22
- "user_id": user_id,
23
- "extra_attempts": extra_attempts,
24
- "extra_time": extra_time,
25
- "manually_unlocked": manually_unlocked,
26
- "extend_from_now": extend_from_now,
27
- "extend_from_end_at": extend_from_end_at },
22
+ "quiz_extensions[user_id]": quiz_extensions_user_id,
23
+ "quiz_extensions[extra_attempts]": quiz_extensions_extra_attempts,
24
+ "quiz_extensions[extra_time]": quiz_extensions_extra_time,
25
+ "quiz_extensions[manually_unlocked]": quiz_extensions_manually_unlocked,
26
+ "quiz_extensions[extend_from_now]": quiz_extensions_extend_from_now,
27
+ "quiz_extensions[extend_from_end_at]": quiz_extensions_extend_from_end_at },
28
28
  nil,
29
29
  ).parsed_response
30
30
  end
@@ -0,0 +1,28 @@
1
+ require_relative "../canvas_base_mutation"
2
+ require_relative "../../types/canvas/progress"
3
+ module LMSGraphQL
4
+ module Mutations
5
+ module Canvas
6
+ class RestoreWorkflowStatesOfSisImportedItem < BaseMutation
7
+ argument :account_id, ID, required: true
8
+ argument :id, ID, required: true
9
+ argument :batch_mode, Boolean, required: false
10
+ argument :undelete_only, Boolean, required: false
11
+ argument :unconclude_only, Boolean, required: false
12
+ field :progress, LMSGraphQL::Types::Canvas::CanvasProgress, null: false
13
+ def resolve(account_id:, id:, batch_mode: nil, undelete_only: nil, unconclude_only: nil)
14
+ context[:canvas_api].call("RESTORE_WORKFLOW_STATES_OF_SIS_IMPORTED_ITEMS").proxy(
15
+ "RESTORE_WORKFLOW_STATES_OF_SIS_IMPORTED_ITEMS",
16
+ {
17
+ "account_id": account_id,
18
+ "id": id,
19
+ "batch_mode": batch_mode,
20
+ "undelete_only": undelete_only,
21
+ "unconclude_only": unconclude_only },
22
+ nil,
23
+ ).parsed_response
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,42 @@
1
+ require_relative "../canvas_base_mutation"
2
+
3
+ module LMSGraphQL
4
+ module Mutations
5
+ module Canvas
6
+ class UpdateSingleRubric < BaseMutation
7
+ argument :course_id, ID, required: true
8
+ argument :id, ID, required: true
9
+ argument :rubric_association_id, ID, required: false
10
+ argument :rubric_title, String, required: false
11
+ argument :rubric_free_form_criterion_comments, Boolean, required: false
12
+ argument :rubric_skip_updating_points_possible, Boolean, required: false
13
+ argument :rubric_association_association_id, Int, required: false
14
+ argument :rubric_association_association_type, String, required: false
15
+ argument :rubric_association_use_for_grading, Boolean, required: false
16
+ argument :rubric_association_hide_score_total, Boolean, required: false
17
+ argument :rubric_association_purpose, String, required: false
18
+ argument :rubric_criteria, String, required: false
19
+ field :return_value, Boolean, null: false
20
+ def resolve(course_id:, id:, rubric_association_id: nil, rubric_title: nil, rubric_free_form_criterion_comments: nil, rubric_skip_updating_points_possible: nil, rubric_association_association_id: nil, rubric_association_association_type: nil, rubric_association_use_for_grading: nil, rubric_association_hide_score_total: nil, rubric_association_purpose: nil, rubric_criteria: nil)
21
+ context[:canvas_api].call("UPDATE_SINGLE_RUBRIC").proxy(
22
+ "UPDATE_SINGLE_RUBRIC",
23
+ {
24
+ "course_id": course_id,
25
+ "id": id,
26
+ "rubric_association_id": rubric_association_id,
27
+ "rubric[title]": rubric_title,
28
+ "rubric[free_form_criterion_comments]": rubric_free_form_criterion_comments,
29
+ "rubric[skip_updating_points_possible]": rubric_skip_updating_points_possible,
30
+ "rubric_association[association_id]": rubric_association_association_id,
31
+ "rubric_association[association_type]": rubric_association_association_type,
32
+ "rubric_association[use_for_grading]": rubric_association_use_for_grading,
33
+ "rubric_association[hide_score_total]": rubric_association_hide_score_total,
34
+ "rubric_association[purpose]": rubric_association_purpose,
35
+ "rubric[criteria]": rubric_criteria },
36
+ nil,
37
+ ).parsed_response
38
+ end
39
+ end
40
+ end
41
+ end
42
+ end
@@ -7,20 +7,20 @@ module LMSGraphQL
7
7
  argument :course_id, ID, required: true
8
8
  argument :quiz_id, ID, required: true
9
9
  argument :id, ID, required: true
10
- argument :attempt, Int, required: true
11
- argument :fudge_points, Float, required: false
12
- argument :questions, String, required: false
10
+ argument :quiz_submissions_attempt, Int, required: true
11
+ argument :quiz_submissions_fudge_points, Float, required: false
12
+ argument :quiz_submissions_questions, [LMSGraphQL::Types::Canvas::CanvasHashInput], required: false
13
13
  field :return_value, Boolean, null: false
14
- def resolve(course_id:, quiz_id:, id:, attempt:, fudge_points: nil, questions: nil)
14
+ def resolve(course_id:, quiz_id:, id:, quiz_submissions_attempt:, quiz_submissions_fudge_points: nil, quiz_submissions_questions: nil)
15
15
  context[:canvas_api].call("UPDATE_STUDENT_QUESTION_SCORES_AND_COMMENTS").proxy(
16
16
  "UPDATE_STUDENT_QUESTION_SCORES_AND_COMMENTS",
17
17
  {
18
18
  "course_id": course_id,
19
19
  "quiz_id": quiz_id,
20
20
  "id": id,
21
- "attempt": attempt,
22
- "fudge_points": fudge_points,
23
- "questions": questions },
21
+ "quiz_submissions[attempt]": quiz_submissions_attempt,
22
+ "quiz_submissions[fudge_points]": quiz_submissions_fudge_points,
23
+ "quiz_submissions[questions]": quiz_submissions_questions },
24
24
  nil,
25
25
  ).parsed_response
26
26
  end
@@ -0,0 +1,22 @@
1
+ require_relative "../canvas_base_resolver"
2
+
3
+ module LMSGraphQL
4
+ module Resolvers
5
+ module Canvas
6
+ class CoursesPermission < CanvasBaseResolver
7
+ type Boolean, null: false
8
+ argument :course_id, ID, required: true
9
+ argument :permissions, String, required: false
10
+ def resolve(course_id:, permissions: nil)
11
+ context[:canvas_api].call("COURSES_PERMISSIONS").proxy(
12
+ "COURSES_PERMISSIONS",
13
+ {
14
+ "course_id": course_id,
15
+ "permissions": permissions },
16
+ nil,
17
+ ).parsed_response
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,22 @@
1
+ require_relative "../canvas_base_resolver"
2
+ require_relative "../../types/canvas/outcome_alignment"
3
+ module LMSGraphQL
4
+ module Resolvers
5
+ module Canvas
6
+ class GetAlignedAssignmentsForOutcomeInCourseForParticularStudent < CanvasBaseResolver
7
+ type [LMSGraphQL::Types::Canvas::CanvasOutcomeAlignment], null: false
8
+ argument :course_id, ID, required: true
9
+ argument :student_id, ID, required: false
10
+ def resolve(course_id:, student_id: nil)
11
+ context[:canvas_api].call("GET_ALIGNED_ASSIGNMENTS_FOR_OUTCOME_IN_COURSE_FOR_PARTICULAR_STUDENT").proxy(
12
+ "GET_ALIGNED_ASSIGNMENTS_FOR_OUTCOME_IN_COURSE_FOR_PARTICULAR_STUDENT",
13
+ {
14
+ "course_id": course_id,
15
+ "student_id": student_id },
16
+ nil,
17
+ ).parsed_response
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end