lms-graphql-api 1.1.1 → 1.2.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (173) hide show
  1. checksums.yaml +5 -5
  2. data/lib/lms_graphql/mutations/canvas/add_allowed_domain_to_account.rb +24 -0
  3. data/lib/lms_graphql/mutations/canvas/add_multiple_allowed_domains_to_account.rb +24 -0
  4. data/lib/lms_graphql/mutations/canvas/add_users_to_content_share.rb +26 -0
  5. data/lib/lms_graphql/mutations/canvas/begin_migration_to_push_to_associated_courses.rb +4 -2
  6. data/lib/lms_graphql/mutations/canvas/bulk_update_assignment_dates.rb +21 -0
  7. data/lib/lms_graphql/mutations/canvas/confirm_image_selection.rb +21 -0
  8. data/lib/lms_graphql/mutations/canvas/create_assignment.rb +13 -3
  9. data/lib/lms_graphql/mutations/canvas/create_content_migration_accounts.rb +16 -2
  10. data/lib/lms_graphql/mutations/canvas/create_content_migration_courses.rb +16 -2
  11. data/lib/lms_graphql/mutations/canvas/create_content_migration_groups.rb +16 -2
  12. data/lib/lms_graphql/mutations/canvas/create_content_migration_users.rb +16 -2
  13. data/lib/lms_graphql/mutations/canvas/create_content_share.rb +28 -0
  14. data/lib/lms_graphql/mutations/canvas/create_external_tool_accounts.rb +6 -2
  15. data/lib/lms_graphql/mutations/canvas/create_external_tool_courses.rb +6 -2
  16. data/lib/lms_graphql/mutations/canvas/create_line_item.rb +34 -0
  17. data/lib/lms_graphql/mutations/canvas/create_new_course.rb +3 -1
  18. data/lib/lms_graphql/mutations/canvas/create_observer_pairing_code.rb +21 -0
  19. data/lib/lms_graphql/mutations/canvas/create_originality_report.rb +6 -2
  20. data/lib/lms_graphql/mutations/canvas/create_rubricassociation.rb +38 -0
  21. data/lib/lms_graphql/mutations/canvas/create_score.rb +40 -0
  22. data/lib/lms_graphql/mutations/canvas/create_single_rubric_assessment.rb +32 -0
  23. data/lib/lms_graphql/mutations/canvas/create_user.rb +6 -2
  24. data/lib/lms_graphql/mutations/canvas/create_webhook_subscription.rb +3 -3
  25. data/lib/lms_graphql/mutations/canvas/delete_line_item.rb +23 -0
  26. data/lib/lms_graphql/mutations/canvas/delete_rubricassociation.rb +23 -0
  27. data/lib/lms_graphql/mutations/canvas/delete_single_rubric.rb +23 -0
  28. data/lib/lms_graphql/mutations/canvas/delete_single_rubric_assessment.rb +25 -0
  29. data/lib/lms_graphql/mutations/canvas/deprecated_self_register_user.rb +42 -0
  30. data/lib/lms_graphql/mutations/canvas/edit_assignment.rb +15 -3
  31. data/lib/lms_graphql/mutations/canvas/edit_originality_report_files.rb +4 -2
  32. data/lib/lms_graphql/mutations/canvas/edit_originality_report_submissions.rb +4 -2
  33. data/lib/lms_graphql/mutations/canvas/edit_user_login.rb +4 -2
  34. data/lib/lms_graphql/mutations/canvas/enroll_user_courses.rb +5 -1
  35. data/lib/lms_graphql/mutations/canvas/enroll_user_sections.rb +5 -1
  36. data/lib/lms_graphql/mutations/canvas/import_sis_data.rb +4 -2
  37. data/lib/lms_graphql/mutations/canvas/lock_or_unlock_current_csp_settings_for_sub_accounts_and_courses.rb +24 -0
  38. data/lib/lms_graphql/mutations/canvas/mutations.rb +27 -4
  39. data/lib/lms_graphql/mutations/canvas/remove_content_share.rb +23 -0
  40. data/lib/lms_graphql/mutations/canvas/remove_domain_from_account.rb +23 -0
  41. data/lib/lms_graphql/mutations/canvas/reset_link_verifier.rb +21 -0
  42. data/lib/lms_graphql/mutations/canvas/submit_assignment_courses.rb +6 -2
  43. data/lib/lms_graphql/mutations/canvas/submit_assignment_sections.rb +6 -2
  44. data/lib/lms_graphql/mutations/canvas/update_account.rb +5 -1
  45. data/lib/lms_graphql/mutations/canvas/update_content_share.rb +26 -0
  46. data/lib/lms_graphql/mutations/canvas/update_course.rb +5 -1
  47. data/lib/lms_graphql/mutations/canvas/update_course_settings.rb +10 -2
  48. data/lib/lms_graphql/mutations/canvas/update_line_item.rb +32 -0
  49. data/lib/lms_graphql/mutations/canvas/update_media_object.rb +24 -0
  50. data/lib/lms_graphql/mutations/canvas/update_media_tracks.rb +24 -0
  51. data/lib/lms_graphql/mutations/canvas/update_public_jwk.rb +21 -0
  52. data/lib/lms_graphql/mutations/canvas/update_rubricassociation.rb +40 -0
  53. data/lib/lms_graphql/mutations/canvas/update_single_rubric_assessment.rb +34 -0
  54. data/lib/lms_graphql/resolvers/canvas/course_audit_log_query_by_account.rb +27 -0
  55. data/lib/lms_graphql/resolvers/canvas/find_images.rb +22 -0
  56. data/lib/lms_graphql/resolvers/canvas/get_account.rb +22 -0
  57. data/lib/lms_graphql/resolvers/canvas/get_content_share.rb +24 -0
  58. data/lib/lms_graphql/resolvers/canvas/get_unread_shares_count.rb +22 -0
  59. data/lib/lms_graphql/resolvers/canvas/get_uploaded_media_folder_for_user_courses.rb +22 -0
  60. data/lib/lms_graphql/resolvers/canvas/get_uploaded_media_folder_for_user_groups.rb +22 -0
  61. data/lib/lms_graphql/resolvers/canvas/get_users_most_recently_graded_submissions.rb +29 -0
  62. data/lib/lms_graphql/resolvers/canvas/index_of_active_global_notification_for_user.rb +4 -2
  63. data/lib/lms_graphql/resolvers/canvas/list_active_courses_in_account.rb +6 -2
  64. data/lib/lms_graphql/resolvers/canvas/list_assignments_assignment_groups.rb +4 -2
  65. data/lib/lms_graphql/resolvers/canvas/list_assignments_assignments.rb +4 -2
  66. data/lib/lms_graphql/resolvers/canvas/list_available_tabs_for_course_or_group_accounts.rb +22 -0
  67. data/lib/lms_graphql/resolvers/canvas/list_available_tabs_for_course_or_group_courses.rb +2 -4
  68. data/lib/lms_graphql/resolvers/canvas/list_available_tabs_for_course_or_group_groups.rb +2 -4
  69. data/lib/lms_graphql/resolvers/canvas/list_available_tabs_for_course_or_group_users.rb +22 -0
  70. data/lib/lms_graphql/resolvers/canvas/list_calendar_events_for_user.rb +6 -2
  71. data/lib/lms_graphql/resolvers/canvas/list_conferences_for_current_user.rb +23 -0
  72. data/lib/lms_graphql/resolvers/canvas/list_content_shares_received.rb +23 -0
  73. data/lib/lms_graphql/resolvers/canvas/list_content_shares_sent.rb +23 -0
  74. data/lib/lms_graphql/resolvers/canvas/list_course_memberships.rb +28 -0
  75. data/lib/lms_graphql/resolvers/canvas/list_enrollment_terms.rb +2 -3
  76. data/lib/lms_graphql/resolvers/canvas/list_enrollments_courses.rb +4 -2
  77. data/lib/lms_graphql/resolvers/canvas/list_enrollments_sections.rb +4 -2
  78. data/lib/lms_graphql/resolvers/canvas/list_enrollments_users.rb +4 -2
  79. data/lib/lms_graphql/resolvers/canvas/list_files_courses.rb +3 -1
  80. data/lib/lms_graphql/resolvers/canvas/list_files_folders.rb +3 -1
  81. data/lib/lms_graphql/resolvers/canvas/list_files_groups.rb +3 -1
  82. data/lib/lms_graphql/resolvers/canvas/list_files_users.rb +3 -1
  83. data/lib/lms_graphql/resolvers/canvas/list_group_s_users.rb +4 -2
  84. data/lib/lms_graphql/resolvers/canvas/list_items_for_selective_import_accounts.rb +26 -0
  85. data/lib/lms_graphql/resolvers/canvas/list_items_for_selective_import_courses.rb +26 -0
  86. data/lib/lms_graphql/resolvers/canvas/list_items_for_selective_import_groups.rb +26 -0
  87. data/lib/lms_graphql/resolvers/canvas/list_items_for_selective_import_users.rb +26 -0
  88. data/lib/lms_graphql/resolvers/canvas/list_line_items.rb +30 -0
  89. data/lib/lms_graphql/resolvers/canvas/list_media_objects_courses.rb +29 -0
  90. data/lib/lms_graphql/resolvers/canvas/list_media_objects_media_objects.rb +27 -0
  91. data/lib/lms_graphql/resolvers/canvas/list_media_tracks_for_media_object.rb +25 -0
  92. data/lib/lms_graphql/resolvers/canvas/list_observers.rb +25 -0
  93. data/lib/lms_graphql/resolvers/canvas/list_planner_items_planner.rb +28 -0
  94. data/lib/lms_graphql/resolvers/canvas/list_planner_items_users.rb +30 -0
  95. data/lib/lms_graphql/resolvers/canvas/list_users_in_account.rb +3 -1
  96. data/lib/lms_graphql/resolvers/canvas/list_users_in_course_search_users.rb +3 -1
  97. data/lib/lms_graphql/resolvers/canvas/list_users_in_course_users.rb +3 -1
  98. data/lib/lms_graphql/resolvers/canvas/names_and_role_list_group_memberships.rb +28 -0
  99. data/lib/lms_graphql/resolvers/canvas/retrieve_assignment_overridden_dates_for_classic_quizzes.rb +24 -0
  100. data/lib/lms_graphql/resolvers/canvas/retrieve_assignment_overridden_dates_for_new_quizzes.rb +24 -0
  101. data/lib/lms_graphql/resolvers/canvas/retrieve_enrollment_term.rb +24 -0
  102. data/lib/lms_graphql/resolvers/canvas/retrieve_reported_csp_violations_for_account.rb +22 -0
  103. data/lib/lms_graphql/resolvers/canvas/return_test_student_for_course.rb +22 -0
  104. data/lib/lms_graphql/resolvers/canvas/search_for_content_share_users.rb +25 -0
  105. data/lib/lms_graphql/resolvers/canvas/show_collection_of_results.rb +24 -0
  106. data/lib/lms_graphql/resolvers/canvas/show_line_item.rb +24 -0
  107. data/lib/lms_graphql/resolvers/canvas/show_observer.rb +24 -0
  108. data/lib/lms_graphql/resolvers/canvas/show_result.rb +26 -0
  109. data/lib/lms_graphql/resolvers/canvas/show_user_details.rb +4 -2
  110. data/lib/lms_graphql/resolvers/canvas/update_user_settings.rb +4 -2
  111. data/lib/lms_graphql/types/canvas/account.rb +1 -9
  112. data/lib/lms_graphql/types/canvas/account_input.rb +1 -9
  113. data/lib/lms_graphql/types/canvas/assignment.rb +4 -3
  114. data/lib/lms_graphql/types/canvas/assignment_input.rb +4 -3
  115. data/lib/lms_graphql/types/canvas/assignment_override.rb +1 -1
  116. data/lib/lms_graphql/types/canvas/assignment_override_input.rb +1 -1
  117. data/lib/lms_graphql/types/canvas/blueprint_template.rb +1 -1
  118. data/lib/lms_graphql/types/canvas/blueprint_template_input.rb +1 -1
  119. data/lib/lms_graphql/types/canvas/calendar_event.rb +1 -0
  120. data/lib/lms_graphql/types/canvas/calendar_event_input.rb +1 -0
  121. data/lib/lms_graphql/types/canvas/conference.rb +2 -0
  122. data/lib/lms_graphql/types/canvas/conference_input.rb +2 -0
  123. data/lib/lms_graphql/types/canvas/content_share.rb +24 -0
  124. data/lib/lms_graphql/types/canvas/content_share_input.rb +24 -0
  125. data/lib/lms_graphql/types/canvas/course.rb +2 -1
  126. data/lib/lms_graphql/types/canvas/course_input.rb +2 -1
  127. data/lib/lms_graphql/types/canvas/developer_key.rb +34 -0
  128. data/lib/lms_graphql/types/canvas/developer_key_input.rb +34 -0
  129. data/lib/lms_graphql/types/canvas/enrollment_terms_list.rb +14 -0
  130. data/lib/lms_graphql/types/canvas/enrollment_terms_list_input.rb +14 -0
  131. data/lib/lms_graphql/types/canvas/feature.rb +1 -1
  132. data/lib/lms_graphql/types/canvas/feature_input.rb +1 -1
  133. data/lib/lms_graphql/types/canvas/grade.rb +2 -0
  134. data/lib/lms_graphql/types/canvas/grade_input.rb +2 -0
  135. data/lib/lms_graphql/types/canvas/help_link.rb +2 -2
  136. data/lib/lms_graphql/types/canvas/help_link_input.rb +2 -2
  137. data/lib/lms_graphql/types/canvas/line_item.rb +20 -0
  138. data/lib/lms_graphql/types/canvas/line_item_input.rb +20 -0
  139. data/lib/lms_graphql/types/canvas/media_object.rb +20 -0
  140. data/lib/lms_graphql/types/canvas/media_object_input.rb +20 -0
  141. data/lib/lms_graphql/types/canvas/media_track.rb +22 -0
  142. data/lib/lms_graphql/types/canvas/media_track_input.rb +22 -0
  143. data/lib/lms_graphql/types/canvas/names_and_role_context.rb +16 -0
  144. data/lib/lms_graphql/types/canvas/names_and_role_context_input.rb +16 -0
  145. data/lib/lms_graphql/types/canvas/names_and_role_membership.rb +17 -0
  146. data/lib/lms_graphql/types/canvas/names_and_role_membership_input.rb +17 -0
  147. data/lib/lms_graphql/types/canvas/names_and_role_message.rb +18 -0
  148. data/lib/lms_graphql/types/canvas/names_and_role_message_input.rb +18 -0
  149. data/lib/lms_graphql/types/canvas/originality_report.rb +4 -1
  150. data/lib/lms_graphql/types/canvas/originality_report_input.rb +4 -1
  151. data/lib/lms_graphql/types/canvas/outcome_alignment.rb +2 -1
  152. data/lib/lms_graphql/types/canvas/outcome_alignment_input.rb +2 -1
  153. data/lib/lms_graphql/types/canvas/pairing_code.rb +17 -0
  154. data/lib/lms_graphql/types/canvas/pairing_code_input.rb +17 -0
  155. data/lib/lms_graphql/types/canvas/query_type.rb +148 -12
  156. data/lib/lms_graphql/types/canvas/result.rb +8 -6
  157. data/lib/lms_graphql/types/canvas/result_input.rb +8 -6
  158. data/lib/lms_graphql/types/canvas/rubric.rb +4 -0
  159. data/lib/lms_graphql/types/canvas/rubric_association.rb +23 -0
  160. data/lib/lms_graphql/types/canvas/rubric_association_input.rb +23 -0
  161. data/lib/lms_graphql/types/canvas/rubric_criterion.rb +19 -0
  162. data/lib/lms_graphql/types/canvas/rubric_criterion_input.rb +19 -0
  163. data/lib/lms_graphql/types/canvas/rubric_input.rb +4 -0
  164. data/lib/lms_graphql/types/canvas/rubric_rating.rb +6 -5
  165. data/lib/lms_graphql/types/canvas/rubric_rating_input.rb +6 -5
  166. data/lib/lms_graphql/types/canvas/score.rb +20 -0
  167. data/lib/lms_graphql/types/canvas/score_input.rb +20 -0
  168. data/lib/lms_graphql/types/canvas/submission.rb +7 -3
  169. data/lib/lms_graphql/types/canvas/submission_input.rb +7 -3
  170. data/lib/lms_graphql/types/canvas_forward_declarations.rb +34 -0
  171. data/lib/lms_graphql/types/date_time_type.rb +8 -5
  172. data/lib/lms_graphql/version.rb +1 -1
  173. metadata +92 -4
@@ -1,15 +1,17 @@
1
1
  require_relative "../canvas_base_type"
2
- require_relative "result_link"
2
+
3
3
 
4
4
  module LMSGraphQL
5
5
  module Types
6
6
  module Canvas
7
7
  class CanvasResult < BaseType
8
- description "LiveAssessments. API Docs: https://canvas.instructure.com/doc/api/live_assessments.html"
9
- field :id, ID, "A unique identifier for this result.Example: 42", null: true
10
- field :passed, Boolean, "Whether the user passed or not.Example: true", null: true
11
- field :assessed_at, LMSGraphQL::Types::DateTimeType, "When this result was recorded.Example: 2014-05-13T00:01:57-06:00", null: true
12
- field :links, LMSGraphQL::Types::Canvas::CanvasResultLink, "Unique identifiers of objects associated with this result.Example: 42, 23, 5", null: true
8
+ description "Result. API Docs: https://canvas.instructure.com/doc/api/result.html"
9
+ field :id, ID, "The fully qualified URL for showing the Result.Example: http://institution.canvas.com/api/lti/courses/5/line_items/2/results/1", null: true
10
+ field :user_id, String, "The lti_user_id or the Canvas user_id.Example: 50 | 'abcasdf'", null: true
11
+ field :result_score, Float, "The score of the result as defined by Canvas, scaled to the resultMaximum.Example: 50", null: true
12
+ field :result_maximum, Float, "Maximum possible score for this result; 1 is the default value and will be assumed if not specified otherwise. Minimum value of 0 required..Example: 50", null: true
13
+ field :comment, String, "Comment visible to the student about the result..", null: true
14
+ field :score_of, String, "URL of the line item this belongs to.Example: http://institution.canvas.com/api/lti/courses/5/line_items/2", null: true
13
15
 
14
16
  end
15
17
  end
@@ -1,15 +1,17 @@
1
1
  require_relative "../canvas_base_input_type"
2
- require_relative "result_link"
2
+
3
3
 
4
4
  module LMSGraphQL
5
5
  module Types
6
6
  module Canvas
7
7
  class CanvasResultInput < BaseInputObject
8
- description "LiveAssessments. API Docs: https://canvas.instructure.com/doc/api/live_assessments.html"
9
- argument :id, ID, "A unique identifier for this result.Example: 42", required: false
10
- argument :passed, Boolean, "Whether the user passed or not.Example: true", required: false
11
- argument :assessed_at, LMSGraphQL::Types::DateTimeType, "When this result was recorded.Example: 2014-05-13T00:01:57-06:00", required: false
12
- argument :links, LMSGraphQL::Types::Canvas::CanvasResultLinkInput, "Unique identifiers of objects associated with this result.Example: 42, 23, 5", required: false
8
+ description "Result. API Docs: https://canvas.instructure.com/doc/api/result.html"
9
+ argument :id, ID, "The fully qualified URL for showing the Result.Example: http://institution.canvas.com/api/lti/courses/5/line_items/2/results/1", required: false
10
+ argument :user_id, String, "The lti_user_id or the Canvas user_id.Example: 50 | 'abcasdf'", required: false
11
+ argument :result_score, Float, "The score of the result as defined by Canvas, scaled to the resultMaximum.Example: 50", required: false
12
+ argument :result_maximum, Float, "Maximum possible score for this result; 1 is the default value and will be assumed if not specified otherwise. Minimum value of 0 required..Example: 50", required: false
13
+ argument :comment, String, "Comment visible to the student about the result..", required: false
14
+ argument :score_of, String, "URL of the line item this belongs to.Example: http://institution.canvas.com/api/lti/courses/5/line_items/2", required: false
13
15
 
14
16
  end
15
17
  end
@@ -1,5 +1,7 @@
1
1
  require_relative "../canvas_base_type"
2
+ require_relative "rubric_criterion"
2
3
  require_relative "rubric_assessment"
4
+ require_relative "rubric_association"
3
5
 
4
6
  module LMSGraphQL
5
7
  module Types
@@ -15,7 +17,9 @@ module LMSGraphQL
15
17
  field :read_only, Boolean, "Example: true", null: true
16
18
  field :free_form_criterion_comments, Boolean, "whether or not free-form comments are used.Example: true", null: true
17
19
  field :hide_score_total, Boolean, "Example: true", null: true
20
+ field :data, [LMSGraphQL::Types::Canvas::CanvasRubricCriterion], "An array with all of this Rubric's grading Criteria.", null: true
18
21
  field :assessments, [LMSGraphQL::Types::Canvas::CanvasRubricAssessment], "If an assessment type is included in the 'include' parameter, includes an array of rubric assessment objects for a given rubric, based on the assessment type requested. If the user does not request an assessment type this key will be absent..", null: true
22
+ field :associations, [LMSGraphQL::Types::Canvas::CanvasRubricAssociation], "If an association type is included in the 'include' parameter, includes an array of rubric association objects for a given rubric, based on the association type requested. If the user does not request an association type this key will be absent..", null: true
19
23
 
20
24
  end
21
25
  end
@@ -0,0 +1,23 @@
1
+ require_relative "../canvas_base_type"
2
+
3
+
4
+ module LMSGraphQL
5
+ module Types
6
+ module Canvas
7
+ class CanvasRubricAssociation < BaseType
8
+ description "Rubrics. API Docs: https://canvas.instructure.com/doc/api/rubrics.html"
9
+ field :id, ID, "the ID of the association.Example: 1", null: true
10
+ field :rubric_id, ID, "the ID of the rubric.Example: 1", null: true
11
+ field :association_id, ID, "the ID of the object this association links to.Example: 1", null: true
12
+ field :association_type, String, "the type of object this association links to.Example: Course", null: true
13
+ field :use_for_grading, Boolean, "Whether or not the associated rubric is used for grade calculation.Example: true", null: true
14
+ field :summary_data, String, "", null: true
15
+ field :purpose, String, "Whether or not the association is for grading (and thus linked to an assignment) or if it's to indicate the rubric should appear in its context. Values will be grading or bookmark..Example: grading", null: true
16
+ field :hide_score_total, Boolean, "Whether or not the score total is displayed within the rubric. This option is only available if the rubric is not used for grading..Example: true", null: true
17
+ field :hide_points, Boolean, "Example: true", null: true
18
+ field :hide_outcome_results, Boolean, "Example: true", null: true
19
+
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,23 @@
1
+ require_relative "../canvas_base_input_type"
2
+
3
+
4
+ module LMSGraphQL
5
+ module Types
6
+ module Canvas
7
+ class CanvasRubricAssociationInput < BaseInputObject
8
+ description "Rubrics. API Docs: https://canvas.instructure.com/doc/api/rubrics.html"
9
+ argument :id, ID, "the ID of the association.Example: 1", required: false
10
+ argument :rubric_id, ID, "the ID of the rubric.Example: 1", required: false
11
+ argument :association_id, ID, "the ID of the object this association links to.Example: 1", required: false
12
+ argument :association_type, String, "the type of object this association links to.Example: Course", required: false
13
+ argument :use_for_grading, Boolean, "Whether or not the associated rubric is used for grade calculation.Example: true", required: false
14
+ argument :summary_data, String, "", required: false
15
+ argument :purpose, String, "Whether or not the association is for grading (and thus linked to an assignment) or if it's to indicate the rubric should appear in its context. Values will be grading or bookmark..Example: grading", required: false
16
+ argument :hide_score_total, Boolean, "Whether or not the score total is displayed within the rubric. This option is only available if the rubric is not used for grading..Example: true", required: false
17
+ argument :hide_points, Boolean, "Example: true", required: false
18
+ argument :hide_outcome_results, Boolean, "Example: true", required: false
19
+
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,19 @@
1
+ require_relative "../canvas_base_type"
2
+ require_relative "rubric_rating"
3
+
4
+ module LMSGraphQL
5
+ module Types
6
+ module Canvas
7
+ class CanvasRubricCriterion < BaseType
8
+ description "Rubrics. API Docs: https://canvas.instructure.com/doc/api/rubrics.html"
9
+ field :id, ID, "the ID of the criterion.Example: _10", null: true
10
+ field :description, String, "", null: true
11
+ field :long_description, String, "", null: true
12
+ field :points, Int, "Example: 5", null: true
13
+ field :criterion_use_range, Boolean, "Example: false", null: true
14
+ field :ratings, [LMSGraphQL::Types::Canvas::CanvasRubricRating], "the possible ratings for this Criterion.", null: true
15
+
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,19 @@
1
+ require_relative "../canvas_base_input_type"
2
+ require_relative "rubric_rating"
3
+
4
+ module LMSGraphQL
5
+ module Types
6
+ module Canvas
7
+ class CanvasRubricCriterionInput < BaseInputObject
8
+ description "Rubrics. API Docs: https://canvas.instructure.com/doc/api/rubrics.html"
9
+ argument :id, ID, "the ID of the criterion.Example: _10", required: false
10
+ argument :description, String, "", required: false
11
+ argument :long_description, String, "", required: false
12
+ argument :points, Int, "Example: 5", required: false
13
+ argument :criterion_use_range, Boolean, "Example: false", required: false
14
+ argument :ratings, [LMSGraphQL::Types::Canvas::CanvasRubricRatingInput], "the possible ratings for this Criterion.", required: false
15
+
16
+ end
17
+ end
18
+ end
19
+ end
@@ -1,5 +1,7 @@
1
1
  require_relative "../canvas_base_input_type"
2
+ require_relative "rubric_criterion"
2
3
  require_relative "rubric_assessment"
4
+ require_relative "rubric_association"
3
5
 
4
6
  module LMSGraphQL
5
7
  module Types
@@ -15,7 +17,9 @@ module LMSGraphQL
15
17
  argument :read_only, Boolean, "Example: true", required: false
16
18
  argument :free_form_criterion_comments, Boolean, "whether or not free-form comments are used.Example: true", required: false
17
19
  argument :hide_score_total, Boolean, "Example: true", required: false
20
+ argument :data, [LMSGraphQL::Types::Canvas::CanvasRubricCriterionInput], "An array with all of this Rubric's grading Criteria.", required: false
18
21
  argument :assessments, [LMSGraphQL::Types::Canvas::CanvasRubricAssessmentInput], "If an assessment type is included in the 'include' parameter, includes an array of rubric assessment objects for a given rubric, based on the assessment type requested. If the user does not request an assessment type this key will be absent..", required: false
22
+ argument :associations, [LMSGraphQL::Types::Canvas::CanvasRubricAssociationInput], "If an association type is included in the 'include' parameter, includes an array of rubric association objects for a given rubric, based on the association type requested. If the user does not request an association type this key will be absent..", required: false
19
23
 
20
24
  end
21
25
  end
@@ -5,11 +5,12 @@ module LMSGraphQL
5
5
  module Types
6
6
  module Canvas
7
7
  class CanvasRubricRating < BaseType
8
- description "Assignments. API Docs: https://canvas.instructure.com/doc/api/assignments.html"
9
- field :points, Int, "Example: 10", null: true
10
- field :id, ID, "Example: rat1", null: true
11
- field :description, String, "Example: Full marks", null: true
12
- field :long_description, String, "Example: Student completed the assignment flawlessly.", null: true
8
+ description "Rubrics. API Docs: https://canvas.instructure.com/doc/api/rubrics.html"
9
+ field :id, ID, "Example: name_2", null: true
10
+ field :criterion_id, ID, "Example: _10", null: true
11
+ field :description, String, "", null: true
12
+ field :long_description, String, "", null: true
13
+ field :points, Int, "Example: 5", null: true
13
14
 
14
15
  end
15
16
  end
@@ -5,11 +5,12 @@ module LMSGraphQL
5
5
  module Types
6
6
  module Canvas
7
7
  class CanvasRubricRatingInput < BaseInputObject
8
- description "Assignments. API Docs: https://canvas.instructure.com/doc/api/assignments.html"
9
- argument :points, Int, "Example: 10", required: false
10
- argument :id, ID, "Example: rat1", required: false
11
- argument :description, String, "Example: Full marks", required: false
12
- argument :long_description, String, "Example: Student completed the assignment flawlessly.", required: false
8
+ description "Rubrics. API Docs: https://canvas.instructure.com/doc/api/rubrics.html"
9
+ argument :id, ID, "Example: name_2", required: false
10
+ argument :criterion_id, ID, "Example: _10", required: false
11
+ argument :description, String, "", required: false
12
+ argument :long_description, String, "", required: false
13
+ argument :points, Int, "Example: 5", required: false
13
14
 
14
15
  end
15
16
  end
@@ -0,0 +1,20 @@
1
+ require_relative "../canvas_base_type"
2
+
3
+
4
+ module LMSGraphQL
5
+ module Types
6
+ module Canvas
7
+ class CanvasScore < BaseType
8
+ description "Score. API Docs: https://canvas.instructure.com/doc/api/score.html"
9
+ field :user_id, String, "The lti_user_id or the Canvas user_id.Example: 50 | 'abcasdf'", null: true
10
+ field :score_given, Float, "The Current score received in the tool for this line item and user, scaled to the scoreMaximum.Example: 50", null: true
11
+ field :score_maximum, Float, "Maximum possible score for this result; it must be present if scoreGiven is present..Example: 50", null: true
12
+ field :comment, String, "Comment visible to the student about this score..", null: true
13
+ field :timestamp, String, "Date and time when the score was modified in the tool. Should use subsecond precision..Example: 2017-04-16T18:54:36.736+00:00", null: true
14
+ field :activity_progress, String, "Indicate to Canvas the status of the user towards the activity's completion. Must be one of Initialized, Started, InProgress, Submitted, Completed.Example: Completed", null: true
15
+ field :grading_progress, String, "Indicate to Canvas the status of the grading process. A value of PendingManual will require intervention by a grader. Values of NotReady, Failed, and Pending will cause the scoreGiven to be ignored. FullyGraded values will require no action. Possible values are NotReady, Failed, Pending, PendingManual, FullyGraded.Example: FullyGraded", null: true
16
+
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,20 @@
1
+ require_relative "../canvas_base_input_type"
2
+
3
+
4
+ module LMSGraphQL
5
+ module Types
6
+ module Canvas
7
+ class CanvasScoreInput < BaseInputObject
8
+ description "Score. API Docs: https://canvas.instructure.com/doc/api/score.html"
9
+ argument :user_id, String, "The lti_user_id or the Canvas user_id.Example: 50 | 'abcasdf'", required: false
10
+ argument :score_given, Float, "The Current score received in the tool for this line item and user, scaled to the scoreMaximum.Example: 50", required: false
11
+ argument :score_maximum, Float, "Maximum possible score for this result; it must be present if scoreGiven is present..Example: 50", required: false
12
+ argument :comment, String, "Comment visible to the student about this score..", required: false
13
+ argument :timestamp, String, "Date and time when the score was modified in the tool. Should use subsecond precision..Example: 2017-04-16T18:54:36.736+00:00", required: false
14
+ argument :activity_progress, String, "Indicate to Canvas the status of the user towards the activity's completion. Must be one of Initialized, Started, InProgress, Submitted, Completed.Example: Completed", required: false
15
+ argument :grading_progress, String, "Indicate to Canvas the status of the grading process. A value of PendingManual will require intervention by a grader. Values of NotReady, Failed, and Pending will cause the scoreGiven to be ignored. FullyGraded values will require no action. Possible values are NotReady, Failed, Pending, PendingManual, FullyGraded.Example: FullyGraded", required: false
16
+
17
+ end
18
+ end
19
+ end
20
+ end
@@ -1,5 +1,8 @@
1
1
  require_relative "../canvas_base_type"
2
+ require_relative "assignment"
3
+ require_relative "course"
2
4
  require_relative "submission_comment"
5
+ require_relative "user"
3
6
 
4
7
  module LMSGraphQL
5
8
  module Types
@@ -20,8 +23,8 @@ module LMSGraphQL
20
23
  class CanvasSubmission < BaseType
21
24
  description "Submissions. API Docs: https://canvas.instructure.com/doc/api/submissions.html"
22
25
  field :assignment_id, ID, "The submission's assignment id.Example: 23", null: true
23
- field :assignment, String, "The submission's assignment (see the assignments API) (optional).Example: Assignment", null: true
24
- field :course, String, "The submission's course (see the course API) (optional).Example: Course", null: true
26
+ field :assignment, LMSGraphQL::Types::Canvas::CanvasAssignment, "The submission's assignment (see the assignments API) (optional).", null: true
27
+ field :course, LMSGraphQL::Types::Canvas::CanvasCourse, "The submission's course (see the course API) (optional).", null: true
25
28
  field :attempt, Int, "This is the submission attempt number..Example: 1", null: true
26
29
  field :body, String, "The content of the submission, if it was submitted directly in a text field..Example: There are three factors too.", null: true
27
30
  field :grade, String, "The grade for the submission, translated into the assignment grading scheme (so a letter grade, for example)..Example: A-", null: true
@@ -36,7 +39,7 @@ module LMSGraphQL
36
39
  field :user_id, ID, "The id of the user who created the submission.Example: 134", null: true
37
40
  field :grader_id, ID, "The id of the user who graded the submission. This will be null for submissions that haven't been graded yet. It will be a positive number if a real user has graded the submission and a negative number if the submission was graded by a process (e.g. Quiz autograder and autograding LTI tools). Specifically autograded quizzes set grader_id to the negative of the quiz id. Submissions autograded by LTI tools set grader_id to the negative of the tool id..Example: 86", null: true
38
41
  field :graded_at, LMSGraphQL::Types::DateTimeType, "Example: 2012-01-02T03:05:34Z", null: true
39
- field :user, String, "The submissions user (see user API) (optional).Example: User", null: true
42
+ field :user, LMSGraphQL::Types::Canvas::CanvasUser, "The submissions user (see user API) (optional).", null: true
40
43
  field :late, Boolean, "Whether the submission was made after the applicable due date.", null: true
41
44
  field :assignment_visible, Boolean, "Whether the assignment is visible to the user who submitted the assignment. Submissions where `assignment_visible` is false no longer count towards the student's grade and the assignment can no longer be accessed by the student. `assignment_visible` becomes false for submissions that do not have a grade and whose assignment is no longer assigned to the student's section..Example: true", null: true
42
45
  field :excused, Boolean, "Whether the assignment is excused. Excused assignments have no impact on a user's grade..Example: true", null: true
@@ -47,6 +50,7 @@ module LMSGraphQL
47
50
  field :workflow_state, SubmissionWorkflowStateEnum, "The current state of the submission.Example: submitted", null: true
48
51
  field :extra_attempts, Float, "Extra submission attempts allowed for the given user and assignment..Example: 10", null: true
49
52
  field :anonymous_id, ID, "A unique short ID identifying this submission without reference to the owning user. Only included if the caller has administrator access for the current account..Example: acJ4Q", null: true
53
+ field :posted_at, LMSGraphQL::Types::DateTimeType, "The date this submission was posted to the student, or nil if it has not been posted..Example: 2020-01-02T11:10:30Z", null: true
50
54
 
51
55
  end
52
56
  end
@@ -1,5 +1,8 @@
1
1
  require_relative "../canvas_base_input_type"
2
+ require_relative "assignment"
3
+ require_relative "course"
2
4
  require_relative "submission_comment"
5
+ require_relative "user"
3
6
 
4
7
  module LMSGraphQL
5
8
  module Types
@@ -20,8 +23,8 @@ module LMSGraphQL
20
23
  class CanvasSubmissionInput < BaseInputObject
21
24
  description "Submissions. API Docs: https://canvas.instructure.com/doc/api/submissions.html"
22
25
  argument :assignment_id, ID, "The submission's assignment id.Example: 23", required: false
23
- argument :assignment, String, "The submission's assignment (see the assignments API) (optional).Example: Assignment", required: false
24
- argument :course, String, "The submission's course (see the course API) (optional).Example: Course", required: false
26
+ argument :assignment, LMSGraphQL::Types::Canvas::CanvasAssignmentInput, "The submission's assignment (see the assignments API) (optional).", required: false
27
+ argument :course, LMSGraphQL::Types::Canvas::CanvasCourseInput, "The submission's course (see the course API) (optional).", required: false
25
28
  argument :attempt, Int, "This is the submission attempt number..Example: 1", required: false
26
29
  argument :body, String, "The content of the submission, if it was submitted directly in a text field..Example: There are three factors too.", required: false
27
30
  argument :grade, String, "The grade for the submission, translated into the assignment grading scheme (so a letter grade, for example)..Example: A-", required: false
@@ -36,7 +39,7 @@ module LMSGraphQL
36
39
  argument :user_id, ID, "The id of the user who created the submission.Example: 134", required: false
37
40
  argument :grader_id, ID, "The id of the user who graded the submission. This will be null for submissions that haven't been graded yet. It will be a positive number if a real user has graded the submission and a negative number if the submission was graded by a process (e.g. Quiz autograder and autograding LTI tools). Specifically autograded quizzes set grader_id to the negative of the quiz id. Submissions autograded by LTI tools set grader_id to the negative of the tool id..Example: 86", required: false
38
41
  argument :graded_at, LMSGraphQL::Types::DateTimeType, "Example: 2012-01-02T03:05:34Z", required: false
39
- argument :user, String, "The submissions user (see user API) (optional).Example: User", required: false
42
+ argument :user, LMSGraphQL::Types::Canvas::CanvasUserInput, "The submissions user (see user API) (optional).", required: false
40
43
  argument :late, Boolean, "Whether the submission was made after the applicable due date.", required: false
41
44
  argument :assignment_visible, Boolean, "Whether the assignment is visible to the user who submitted the assignment. Submissions where `assignment_visible` is false no longer count towards the student's grade and the assignment can no longer be accessed by the student. `assignment_visible` becomes false for submissions that do not have a grade and whose assignment is no longer assigned to the student's section..Example: true", required: false
42
45
  argument :excused, Boolean, "Whether the assignment is excused. Excused assignments have no impact on a user's grade..Example: true", required: false
@@ -47,6 +50,7 @@ module LMSGraphQL
47
50
  argument :workflow_state, SubmissionWorkflowStateEnum, "The current state of the submission.Example: submitted", required: false
48
51
  argument :extra_attempts, Float, "Extra submission attempts allowed for the given user and assignment..Example: 10", required: false
49
52
  argument :anonymous_id, ID, "A unique short ID identifying this submission without reference to the owning user. Only included if the caller has administrator access for the current account..Example: acJ4Q", required: false
53
+ argument :posted_at, LMSGraphQL::Types::DateTimeType, "The date this submission was posted to the student, or nil if it has not been posted..Example: 2020-01-02T11:10:30Z", required: false
50
54
 
51
55
  end
52
56
  end
@@ -24,6 +24,8 @@ module LMSGraphQL
24
24
  class CanvasHelpLink < BaseType;end
25
25
  class CanvasHelpLinkInput < BaseInputObject;end
26
26
  class CanvasHelpLink < BaseType;end
27
+ class CanvasAccountInput < BaseInputObject;end
28
+ class CanvasAccount < BaseType;end
27
29
  class CanvasAdminInput < BaseInputObject;end
28
30
  class CanvasAdmin < BaseType;end
29
31
  class CanvasExternalFeedInput < BaseInputObject;end
@@ -104,6 +106,8 @@ module LMSGraphQL
104
106
  class CanvasContentMigration < BaseType;end
105
107
  class CanvasMigratorInput < BaseInputObject;end
106
108
  class CanvasMigrator < BaseType;end
109
+ class CanvasContentShareInput < BaseInputObject;end
110
+ class CanvasContentShare < BaseType;end
107
111
  class CanvasConversationInput < BaseInputObject;end
108
112
  class CanvasConversation < BaseType;end
109
113
  class CanvasConversationParticipantInput < BaseInputObject;end
@@ -136,6 +140,8 @@ module LMSGraphQL
136
140
  class CanvasDiscussionTopic < BaseType;end
137
141
  class CanvasEnrollmentTermInput < BaseInputObject;end
138
142
  class CanvasEnrollmentTerm < BaseType;end
143
+ class CanvasEnrollmentTermsListInput < BaseInputObject;end
144
+ class CanvasEnrollmentTermsList < BaseType;end
139
145
  class CanvasGradeInput < BaseInputObject;end
140
146
  class CanvasGrade < BaseType;end
141
147
  class CanvasEnrollmentInput < BaseInputObject;end
@@ -184,12 +190,18 @@ module LMSGraphQL
184
190
  class CanvasJWT < BaseType;end
185
191
  class CanvasLatePolicyInput < BaseInputObject;end
186
192
  class CanvasLatePolicy < BaseType;end
193
+ class CanvasLineItemInput < BaseInputObject;end
194
+ class CanvasLineItem < BaseType;end
187
195
  class CanvasResultInput < BaseInputObject;end
188
196
  class CanvasResult < BaseType;end
189
197
  class CanvasResultLinkInput < BaseInputObject;end
190
198
  class CanvasResultLink < BaseType;end
191
199
  class CanvasAssessmentInput < BaseInputObject;end
192
200
  class CanvasAssessment < BaseType;end
201
+ class CanvasMediaTrackInput < BaseInputObject;end
202
+ class CanvasMediaTrack < BaseType;end
203
+ class CanvasMediaObjectInput < BaseInputObject;end
204
+ class CanvasMediaObject < BaseType;end
193
205
  class CanvasProvisionalGradeInput < BaseInputObject;end
194
206
  class CanvasProvisionalGrade < BaseType;end
195
207
  class CanvasModuleInput < BaseInputObject;end
@@ -204,6 +216,14 @@ module LMSGraphQL
204
216
  class CanvasModuleItemSequenceNode < BaseType;end
205
217
  class CanvasModuleItemSequenceInput < BaseInputObject;end
206
218
  class CanvasModuleItemSequence < BaseType;end
219
+ class CanvasNamesAndRoleContextInput < BaseInputObject;end
220
+ class CanvasNamesAndRoleContext < BaseType;end
221
+ class CanvasNamesAndRoleMessageInput < BaseInputObject;end
222
+ class CanvasNamesAndRoleMessage < BaseType;end
223
+ class CanvasNamesAndRoleMembershipInput < BaseInputObject;end
224
+ class CanvasNamesAndRoleMembership < BaseType;end
225
+ class CanvasNamesAndRoleMembershipInput < BaseInputObject;end
226
+ class CanvasNamesAndRoleMembership < BaseType;end
207
227
  class CanvasNotificationPreferenceInput < BaseInputObject;end
208
228
  class CanvasNotificationPreference < BaseType;end
209
229
  class CanvasToolSettingInput < BaseInputObject;end
@@ -268,6 +288,8 @@ module LMSGraphQL
268
288
  class CanvasProficiency < BaseType;end
269
289
  class CanvasProgressInput < BaseInputObject;end
270
290
  class CanvasProgress < BaseType;end
291
+ class CanvasDeveloperKeyInput < BaseInputObject;end
292
+ class CanvasDeveloperKey < BaseType;end
271
293
  class CanvasQuizAssignmentOverrideSetInput < BaseInputObject;end
272
294
  class CanvasQuizAssignmentOverrideSet < BaseType;end
273
295
  class CanvasQuizAssignmentOverrideSetContainerInput < BaseInputObject;end
@@ -314,14 +336,22 @@ module LMSGraphQL
314
336
  class CanvasQuiz < BaseType;end
315
337
  class CanvasQuizPermissionInput < BaseInputObject;end
316
338
  class CanvasQuizPermission < BaseType;end
339
+ class CanvasResultInput < BaseInputObject;end
340
+ class CanvasResult < BaseType;end
317
341
  class CanvasRolePermissionInput < BaseInputObject;end
318
342
  class CanvasRolePermission < BaseType;end
319
343
  class CanvasRoleInput < BaseInputObject;end
320
344
  class CanvasRole < BaseType;end
321
345
  class CanvasRubricInput < BaseInputObject;end
322
346
  class CanvasRubric < BaseType;end
347
+ class CanvasRubricCriterionInput < BaseInputObject;end
348
+ class CanvasRubricCriterion < BaseType;end
349
+ class CanvasRubricRatingInput < BaseInputObject;end
350
+ class CanvasRubricRating < BaseType;end
323
351
  class CanvasRubricAssessmentInput < BaseInputObject;end
324
352
  class CanvasRubricAssessment < BaseType;end
353
+ class CanvasRubricAssociationInput < BaseInputObject;end
354
+ class CanvasRubricAssociation < BaseType;end
325
355
  class CanvasSisImportErrorInput < BaseInputObject;end
326
356
  class CanvasSisImportError < BaseType;end
327
357
  class CanvasSisImportDatumInput < BaseInputObject;end
@@ -348,6 +378,8 @@ module LMSGraphQL
348
378
  class CanvasUserAssignmentOverrideAttribute < BaseType;end
349
379
  class CanvasStudentAttributeInput < BaseInputObject;end
350
380
  class CanvasStudentAttribute < BaseType;end
381
+ class CanvasScoreInput < BaseInputObject;end
382
+ class CanvasScore < BaseType;end
351
383
  class CanvasSectionInput < BaseInputObject;end
352
384
  class CanvasSection < BaseType;end
353
385
  class CanvasSharedBrandConfigInput < BaseInputObject;end
@@ -360,6 +392,8 @@ module LMSGraphQL
360
392
  class CanvasSubmission < BaseType;end
361
393
  class CanvasTabInput < BaseInputObject;end
362
394
  class CanvasTab < BaseType;end
395
+ class CanvasPairingCodeInput < BaseInputObject;end
396
+ class CanvasPairingCode < BaseType;end
363
397
  class CanvasUserDisplayInput < BaseInputObject;end
364
398
  class CanvasUserDisplay < BaseType;end
365
399
  class CanvasAnonymousUserDisplayInput < BaseInputObject;end
@@ -1,15 +1,18 @@
1
1
  module LMSGraphQL
2
2
  module Types
3
- DateTimeType = ::GraphQL::ScalarType.define do
4
- name "DateTime"
3
+ class DateTimeType < ::GraphQL::Schema::Scalar
4
+ graphql_name "DateTime"
5
5
 
6
- coerce_input ->(value, _ctx) { Time.zone.parse(value) }
7
- coerce_result ->(value, _ctx) {
6
+ def self.coerce_input(value, _ctx)
7
+ Time.zone.parse(value)
8
+ end
9
+
10
+ def self.coerce_result(value, _ctx)
8
11
  if value.is_a? String
9
12
  value = Time.zone.parse(value)
10
13
  end
11
14
  value.utc.iso8601
12
- }
15
+ end
13
16
  end
14
17
  end
15
18
  end