lms-graphql-api 0.5.3 → 0.7.0

Sign up to get free protection for your applications and to get access to all the features.
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
@@ -0,0 +1,20 @@
1
+ require_relative "../canvas_base_resolver"
2
+ require_relative "../../types/canvas/sis_import"
3
+ module LMSGraphQL
4
+ module Resolvers
5
+ module Canvas
6
+ class GetCurrentImportingSisImport < CanvasBaseResolver
7
+ type LMSGraphQL::Types::Canvas::CanvasSisImport, null: false
8
+ argument :account_id, ID, required: true
9
+ def resolve(account_id:)
10
+ context[:canvas_api].call("GET_CURRENT_IMPORTING_SIS_IMPORT").proxy(
11
+ "GET_CURRENT_IMPORTING_SIS_IMPORT",
12
+ {
13
+ "account_id": account_id },
14
+ nil,
15
+ ).parsed_response
16
+ end
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,20 @@
1
+ require_relative "../canvas_base_resolver"
2
+ require_relative "../../types/canvas/help_link"
3
+ module LMSGraphQL
4
+ module Resolvers
5
+ module Canvas
6
+ class GetHelpLink < CanvasBaseResolver
7
+ type LMSGraphQL::Types::Canvas::CanvasHelpLink, null: false
8
+ argument :account_id, ID, required: true
9
+ def resolve(account_id:)
10
+ context[:canvas_api].call("GET_HELP_LINKS").proxy(
11
+ "GET_HELP_LINKS",
12
+ {
13
+ "account_id": account_id },
14
+ nil,
15
+ ).parsed_response
16
+ end
17
+ end
18
+ end
19
+ end
20
+ end
@@ -7,18 +7,28 @@ module LMSGraphQL
7
7
  type Boolean, null: false
8
8
  argument :course_id, ID, required: true
9
9
  argument :aggregate, String, required: false
10
+ argument :aggregate_stat, String, required: false
10
11
  argument :user_ids, [ID], required: false
11
12
  argument :outcome_ids, [ID], required: false
12
13
  argument :include, String, required: false
13
- def resolve(course_id:, aggregate: nil, user_ids: nil, outcome_ids: nil, include: nil)
14
+ argument :exclude, String, required: false
15
+ argument :sort_by, String, required: false
16
+ argument :sort_outcome_id, ID, required: false
17
+ argument :sort_order, String, required: false
18
+ def resolve(course_id:, aggregate: nil, aggregate_stat: nil, user_ids: nil, outcome_ids: nil, include: nil, exclude: nil, sort_by: nil, sort_outcome_id: nil, sort_order: nil)
14
19
  context[:canvas_api].call("GET_OUTCOME_RESULT_ROLLUPS").proxy(
15
20
  "GET_OUTCOME_RESULT_ROLLUPS",
16
21
  {
17
22
  "course_id": course_id,
18
23
  "aggregate": aggregate,
24
+ "aggregate_stat": aggregate_stat,
19
25
  "user_ids": user_ids,
20
26
  "outcome_ids": outcome_ids,
21
- "include": include },
27
+ "include": include,
28
+ "exclude": exclude,
29
+ "sort_by": sort_by,
30
+ "sort_outcome_id": sort_outcome_id,
31
+ "sort_order": sort_order },
22
32
  nil,
23
33
  ).parsed_response
24
34
  end
@@ -9,14 +9,16 @@ module LMSGraphQL
9
9
  argument :user_ids, [ID], required: false
10
10
  argument :outcome_ids, [ID], required: false
11
11
  argument :include, String, required: false
12
- def resolve(course_id:, user_ids: nil, outcome_ids: nil, include: nil)
12
+ argument :include_hidden, Boolean, required: false
13
+ def resolve(course_id:, user_ids: nil, outcome_ids: nil, include: nil, include_hidden: nil)
13
14
  context[:canvas_api].call("GET_OUTCOME_RESULTS").proxy(
14
15
  "GET_OUTCOME_RESULTS",
15
16
  {
16
17
  "course_id": course_id,
17
18
  "user_ids": user_ids,
18
19
  "outcome_ids": outcome_ids,
19
- "include": include },
20
+ "include": include,
21
+ "include_hidden": include_hidden },
20
22
  nil,
21
23
  ).parsed_response
22
24
  end
@@ -0,0 +1,20 @@
1
+ require_relative "../canvas_base_resolver"
2
+ require_relative "../../types/canvas/proficiency"
3
+ module LMSGraphQL
4
+ module Resolvers
5
+ module Canvas
6
+ class GetProficiencyRating < CanvasBaseResolver
7
+ type LMSGraphQL::Types::Canvas::CanvasProficiency, null: false
8
+ argument :account_id, ID, required: true
9
+ def resolve(account_id:)
10
+ context[:canvas_api].call("GET_PROFICIENCY_RATINGS").proxy(
11
+ "GET_PROFICIENCY_RATINGS",
12
+ {
13
+ "account_id": account_id },
14
+ nil,
15
+ ).parsed_response
16
+ end
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,20 @@
1
+ require_relative "../canvas_base_resolver"
2
+
3
+ module LMSGraphQL
4
+ module Resolvers
5
+ module Canvas
6
+ class GetTermsOfService < CanvasBaseResolver
7
+ type String, null: false
8
+ argument :account_id, ID, required: true
9
+ def resolve(account_id:)
10
+ context[:canvas_api].call("GET_TERMS_OF_SERVICE").proxy(
11
+ "GET_TERMS_OF_SERVICE",
12
+ {
13
+ "account_id": account_id },
14
+ nil,
15
+ ).parsed_response
16
+ end
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,22 @@
1
+ require_relative "../canvas_base_resolver"
2
+
3
+ module LMSGraphQL
4
+ module Resolvers
5
+ module Canvas
6
+ class GroupsPermission < CanvasBaseResolver
7
+ type Boolean, null: false
8
+ argument :group_id, ID, required: true
9
+ argument :permissions, String, required: false
10
+ def resolve(group_id:, permissions: nil)
11
+ context[:canvas_api].call("GROUPS_PERMISSIONS").proxy(
12
+ "GROUPS_PERMISSIONS",
13
+ {
14
+ "group_id": group_id,
15
+ "permissions": permissions },
16
+ nil,
17
+ ).parsed_response
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,36 @@
1
+ require_relative "../canvas_base_resolver"
2
+ require_relative "../../types/canvas/assignment"
3
+ module LMSGraphQL
4
+ module Resolvers
5
+ module Canvas
6
+ class ListAssignmentsAssignmentGroup < CanvasBaseResolver
7
+ type [LMSGraphQL::Types::Canvas::CanvasAssignment], null: false
8
+ argument :course_id, ID, required: true
9
+ argument :assignment_group_id, ID, required: true
10
+ argument :include, String, required: false
11
+ argument :search_term, String, required: false
12
+ argument :override_assignment_dates, Boolean, required: false
13
+ argument :needs_grading_count_by_section, Boolean, required: false
14
+ argument :bucket, String, required: false
15
+ argument :assignment_ids, [ID], required: false
16
+ argument :order_by, String, required: false
17
+ def resolve(course_id:, assignment_group_id:, include: nil, search_term: nil, override_assignment_dates: nil, needs_grading_count_by_section: nil, bucket: nil, assignment_ids: nil, order_by: nil)
18
+ context[:canvas_api].call("LIST_ASSIGNMENTS_ASSIGNMENT_GROUPS").proxy(
19
+ "LIST_ASSIGNMENTS_ASSIGNMENT_GROUPS",
20
+ {
21
+ "course_id": course_id,
22
+ "assignment_group_id": assignment_group_id,
23
+ "include": include,
24
+ "search_term": search_term,
25
+ "override_assignment_dates": override_assignment_dates,
26
+ "needs_grading_count_by_section": needs_grading_count_by_section,
27
+ "bucket": bucket,
28
+ "assignment_ids": assignment_ids,
29
+ "order_by": order_by },
30
+ nil,
31
+ ).parsed_response
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,34 @@
1
+ require_relative "../canvas_base_resolver"
2
+ require_relative "../../types/canvas/assignment"
3
+ module LMSGraphQL
4
+ module Resolvers
5
+ module Canvas
6
+ class ListAssignmentsAssignment < CanvasBaseResolver
7
+ type [LMSGraphQL::Types::Canvas::CanvasAssignment], null: false
8
+ argument :course_id, ID, required: true
9
+ argument :include, String, required: false
10
+ argument :search_term, String, required: false
11
+ argument :override_assignment_dates, Boolean, required: false
12
+ argument :needs_grading_count_by_section, Boolean, required: false
13
+ argument :bucket, String, required: false
14
+ argument :assignment_ids, [ID], required: false
15
+ argument :order_by, String, required: false
16
+ def resolve(course_id:, include: nil, search_term: nil, override_assignment_dates: nil, needs_grading_count_by_section: nil, bucket: nil, assignment_ids: nil, order_by: nil)
17
+ context[:canvas_api].call("LIST_ASSIGNMENTS_ASSIGNMENTS").proxy(
18
+ "LIST_ASSIGNMENTS_ASSIGNMENTS",
19
+ {
20
+ "course_id": course_id,
21
+ "include": include,
22
+ "search_term": search_term,
23
+ "override_assignment_dates": override_assignment_dates,
24
+ "needs_grading_count_by_section": needs_grading_count_by_section,
25
+ "bucket": bucket,
26
+ "assignment_ids": assignment_ids,
27
+ "order_by": order_by },
28
+ nil,
29
+ ).parsed_response
30
+ end
31
+ end
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,20 @@
1
+ require_relative "../canvas_base_resolver"
2
+ require_relative "../../types/canvas/blueprint_subscription"
3
+ module LMSGraphQL
4
+ module Resolvers
5
+ module Canvas
6
+ class ListBlueprintSubscription < CanvasBaseResolver
7
+ type [LMSGraphQL::Types::Canvas::CanvasBlueprintSubscription], null: false
8
+ argument :course_id, ID, required: true
9
+ def resolve(course_id:)
10
+ context[:canvas_api].call("LIST_BLUEPRINT_SUBSCRIPTIONS").proxy(
11
+ "LIST_BLUEPRINT_SUBSCRIPTIONS",
12
+ {
13
+ "course_id": course_id },
14
+ nil,
15
+ ).parsed_response
16
+ end
17
+ end
18
+ end
19
+ end
20
+ end
@@ -7,12 +7,14 @@ module LMSGraphQL
7
7
  type [LMSGraphQL::Types::Canvas::CanvasAssignment], null: false
8
8
  argument :user_id, ID, required: true
9
9
  argument :include, String, required: false
10
- def resolve(user_id:, include: nil)
10
+ argument :filter, String, required: false
11
+ def resolve(user_id:, include: nil, filter: nil)
11
12
  context[:canvas_api].call("LIST_MISSING_SUBMISSIONS").proxy(
12
13
  "LIST_MISSING_SUBMISSIONS",
13
14
  {
14
15
  "user_id": user_id,
15
- "include": include },
16
+ "include": include,
17
+ "filter": filter },
16
18
  nil,
17
19
  ).parsed_response
18
20
  end
@@ -7,13 +7,15 @@ module LMSGraphQL
7
7
  type Boolean, null: false
8
8
  argument :start_date, LMSGraphQL::Types::DateTimeType, required: false
9
9
  argument :end_date, LMSGraphQL::Types::DateTimeType, required: false
10
+ argument :context_codes, String, required: false
10
11
  argument :filter, String, required: false
11
- def resolve(start_date: nil, end_date: nil, filter: nil)
12
+ def resolve(start_date: nil, end_date: nil, context_codes: nil, filter: nil)
12
13
  context[:canvas_api].call("LIST_PLANNER_ITEMS").proxy(
13
14
  "LIST_PLANNER_ITEMS",
14
15
  {
15
16
  "start_date": start_date,
16
17
  "end_date": end_date,
18
+ "context_codes": context_codes,
17
19
  "filter": filter },
18
20
  nil,
19
21
  ).parsed_response
@@ -0,0 +1,24 @@
1
+ require_relative "../canvas_base_resolver"
2
+
3
+ module LMSGraphQL
4
+ module Resolvers
5
+ module Canvas
6
+ class ModeratedGradingShowProvisionalGradeStatusForStudent < CanvasBaseResolver
7
+ type Boolean, null: false
8
+ argument :course_id, ID, required: true
9
+ argument :assignment_id, ID, required: true
10
+ argument :anonymous_id, ID, required: false
11
+ def resolve(course_id:, assignment_id:, anonymous_id: nil)
12
+ context[:canvas_api].call("MODERATED_GRADING_SHOW_PROVISIONAL_GRADE_STATUS_FOR_STUDENT").proxy(
13
+ "MODERATED_GRADING_SHOW_PROVISIONAL_GRADE_STATUS_FOR_STUDENT",
14
+ {
15
+ "course_id": course_id,
16
+ "assignment_id": assignment_id,
17
+ "anonymous_id": anonymous_id },
18
+ nil,
19
+ ).parsed_response
20
+ end
21
+ end
22
+ end
23
+ end
24
+ end
@@ -5,13 +5,13 @@ module LMSGraphQL
5
5
  module Canvas
6
6
  class Permission < CanvasBaseResolver
7
7
  type Boolean, null: false
8
- argument :course_id, ID, required: true
8
+ argument :account_id, ID, required: true
9
9
  argument :permissions, String, required: false
10
- def resolve(course_id:, permissions: nil)
10
+ def resolve(account_id:, permissions: nil)
11
11
  context[:canvas_api].call("PERMISSIONS").proxy(
12
12
  "PERMISSIONS",
13
13
  {
14
- "course_id": course_id,
14
+ "account_id": account_id,
15
15
  "permissions": permissions },
16
16
  nil,
17
17
  ).parsed_response
@@ -1,5 +1,5 @@
1
1
  require_relative "../canvas_base_input_type"
2
- require_relative "user_input"
2
+ require_relative "user"
3
3
 
4
4
  module LMSGraphQL
5
5
  module Types
@@ -8,7 +8,7 @@ module LMSGraphQL
8
8
  description "Admins. API Docs: https://canvas.instructure.com/doc/api/admins.html"
9
9
  argument :id, ID, "The unique identifier for the account role/user assignment..Example: 1023", required: false
10
10
  argument :role, String, "The account role assigned. This can be 'AccountAdmin' or a user-defined role created by the Roles API..Example: AccountAdmin", required: false
11
- argument :user, LMSGraphQL::Types::Canvas::CanvasUserInput, "The user the role is assigned to. See the Users API for details..", required: false
11
+ argument :user, LMSGraphQL::Types::Canvas::CanvasUser, "The user the role is assigned to. See the Users API for details..", required: false
12
12
  argument :workflow_state, String, "The status of the account role/user assignment..Example: deleted", required: false
13
13
 
14
14
  end
@@ -1,7 +1,7 @@
1
1
  require_relative "../canvas_base_input_type"
2
- require_relative "appointment_input"
3
- require_relative "calendar_event_input"
4
- require_relative "calendar_event_input"
2
+ require_relative "appointment"
3
+ require_relative "calendar_event"
4
+ require_relative "calendar_event"
5
5
 
6
6
  module LMSGraphQL
7
7
  module Types
@@ -31,14 +31,14 @@ module LMSGraphQL
31
31
  argument :location_name, String, "The location name of the appointment group.Example: El Tigre Chino's office", required: false
32
32
  argument :location_address, String, "The address of the appointment group's location.Example: Room 234", required: false
33
33
  argument :participant_count, Int, "The number of participant who have reserved slots (see include[] argument).Example: 2", required: false
34
- argument :reserved_times, [LMSGraphQL::Types::Canvas::CanvasAppointmentInput], "The start and end times of slots reserved by the current user as well as the id of the calendar event for the reservation (see include[] argument).Example: {'id'=>987, 'start_at'=>'2012-07-20T15:00:00-06:00', 'end_at'=>'2012-07-20T15:00:00-06:00'}", required: false
34
+ argument :reserved_times, [LMSGraphQL::Types::Canvas::CanvasAppointment], "The start and end times of slots reserved by the current user as well as the id of the calendar event for the reservation (see include[] argument).Example: {'id'=>987, 'start_at'=>'2012-07-20T15:00:00-06:00', 'end_at'=>'2012-07-20T15:00:00-06:00'}", required: false
35
35
  argument :context_codes, String, "The context codes (i.e. courses) this appointment group belongs to. Only people in these courses will be eligible to sign up..Example: course_123", required: false
36
36
  argument :sub_context_codes, Int, "The sub-context codes (i.e. course sections and group categories) this appointment group is restricted to.Example: course_section_234", required: false
37
37
  argument :workflow_state, AppointmentGroupWorkflowStateEnum, "Current state of the appointment group ('pending', 'active' or 'deleted'). 'pending' indicates that it has not been published yet and is invisible to participants..Example: active", required: false
38
38
  argument :requiring_action, Boolean, "Boolean indicating whether the current user needs to sign up for this appointment group (i.e. it's reservable and the min_appointments_per_participant limit has not been met by this user)..Example: true", required: false
39
39
  argument :appointments_count, Int, "Number of time slots in this appointment group.Example: 2", required: false
40
- argument :appointments, [LMSGraphQL::Types::Canvas::CanvasCalendarEventInput], "Calendar Events representing the time slots (see include[] argument) Refer to the Calendar Events API for more information.", required: false
41
- argument :new_appointments, [LMSGraphQL::Types::Canvas::CanvasCalendarEventInput], "Newly created time slots (same format as appointments above). Only returned in Create/Update responses where new time slots have been added.", required: false
40
+ argument :appointments, [LMSGraphQL::Types::Canvas::CanvasCalendarEvent], "Calendar Events representing the time slots (see include[] argument) Refer to the Calendar Events API for more information.", required: false
41
+ argument :new_appointments, [LMSGraphQL::Types::Canvas::CanvasCalendarEvent], "Newly created time slots (same format as appointments above). Only returned in Create/Update responses where new time slots have been added.", required: false
42
42
  argument :max_appointments_per_participant, Int, "Maximum number of time slots a user may register for, or null if no limit.Example: 1", required: false
43
43
  argument :min_appointments_per_participant, Int, "Minimum number of time slots a user must register for. If not set, users do not need to sign up for any time slots.Example: 1", required: false
44
44
  argument :participants_per_appointment, Int, "Maximum number of participants that may register for each time slot, or null if no limit.Example: 1", required: false
@@ -1,6 +1,6 @@
1
1
  require_relative "../canvas_base_input_type"
2
- require_relative "assignment_input"
3
- require_relative "assignment_override_input"
2
+ require_relative "assignment"
3
+ require_relative "assignment_override"
4
4
 
5
5
  module LMSGraphQL
6
6
  module Types
@@ -24,8 +24,8 @@ module LMSGraphQL
24
24
  argument :all_day, Boolean, "Boolean indicating whether this is an all-day event (e.g. assignment due at midnight).Example: true", required: false
25
25
  argument :created_at, LMSGraphQL::Types::DateTimeType, "When the assignment was created.Example: 2012-07-12T10:55:20-06:00", required: false
26
26
  argument :updated_at, LMSGraphQL::Types::DateTimeType, "When the assignment was last updated.Example: 2012-07-12T10:55:20-06:00", required: false
27
- argument :assignment, LMSGraphQL::Types::Canvas::CanvasAssignmentInput, "The full assignment JSON data (See the Assignments API).", required: false
28
- argument :assignment_overrides, LMSGraphQL::Types::Canvas::CanvasAssignmentOverrideInput, "The list of AssignmentOverrides that apply to this event (See the Assignments API). This information is useful for determining which students or sections this assignment-due event applies to..", required: false
27
+ argument :assignment, LMSGraphQL::Types::Canvas::CanvasAssignment, "The full assignment JSON data (See the Assignments API).", required: false
28
+ argument :assignment_overrides, LMSGraphQL::Types::Canvas::CanvasAssignmentOverride, "The list of AssignmentOverrides that apply to this event (See the Assignments API). This information is useful for determining which students or sections this assignment-due event applies to..", required: false
29
29
 
30
30
  end
31
31
  end
@@ -1,5 +1,5 @@
1
1
  require_relative "../canvas_base_input_type"
2
- require_relative "grading_rule_input"
2
+ require_relative "grading_rule"
3
3
 
4
4
  module LMSGraphQL
5
5
  module Types
@@ -13,7 +13,7 @@ module LMSGraphQL
13
13
  argument :sis_source_id, ID, "the sis source id of the Assignment Group.Example: 1234", required: false
14
14
  argument :integration_data, String, "the integration data of the Assignment Group.Example: 0954", required: false
15
15
  argument :assignments, Int, "the assignments in this Assignment Group (see the Assignment API for a detailed list of fields).", required: false
16
- argument :rules, LMSGraphQL::Types::Canvas::CanvasGradingRuleInput, "the grading rules that this Assignment Group has.", required: false
16
+ argument :rules, LMSGraphQL::Types::Canvas::CanvasGradingRule, "the grading rules that this Assignment Group has.", required: false
17
17
 
18
18
  end
19
19
  end
@@ -1,13 +1,13 @@
1
1
  require_relative "../canvas_base_input_type"
2
- require_relative "assignment_date_input"
3
- require_relative "turnitin_setting_input"
4
- require_relative "external_tool_tag_attribute_input"
5
- require_relative "needs_grading_count_input"
6
- require_relative "lock_info_input"
7
- require_relative "discussion_topic_input"
8
- require_relative "submission_input"
9
- require_relative "rubric_criterium_input"
10
- require_relative "assignment_override_input"
2
+ require_relative "assignment_date"
3
+ require_relative "turnitin_setting"
4
+ require_relative "external_tool_tag_attribute"
5
+ require_relative "needs_grading_count"
6
+ require_relative "lock_info"
7
+ require_relative "discussion_topic"
8
+ require_relative "submission"
9
+ require_relative "rubric_criterium"
10
+ require_relative "assignment_override"
11
11
 
12
12
  module LMSGraphQL
13
13
  module Types
@@ -43,7 +43,7 @@ module LMSGraphQL
43
43
  argument :lock_at, LMSGraphQL::Types::DateTimeType, "the lock date (assignment is locked after this date). returns null if not present. NOTE: If this assignment has assignment overrides, this field will be the lock date as it applies to the user requesting information from the API..Example: 2012-07-01T23:59:00-06:00", required: false
44
44
  argument :unlock_at, LMSGraphQL::Types::DateTimeType, "the unlock date (assignment is unlocked after this date) returns null if not present NOTE: If this assignment has assignment overrides, this field will be the unlock date as it applies to the user requesting information from the API..Example: 2012-07-01T23:59:00-06:00", required: false
45
45
  argument :has_overrides, Boolean, "whether this assignment has overrides.Example: true", required: false
46
- argument :all_dates, [LMSGraphQL::Types::Canvas::CanvasAssignmentDateInput], "(Optional) all dates associated with the assignment, if applicable.", required: false
46
+ argument :all_dates, [LMSGraphQL::Types::Canvas::CanvasAssignmentDate], "(Optional) all dates associated with the assignment, if applicable.", required: false
47
47
  argument :course_id, ID, "the ID of the course the assignment belongs to.Example: 123", required: false
48
48
  argument :html_url, String, "the URL to the assignment's web page.Example: https://.", required: false
49
49
  argument :submissions_download_url, String, "the URL to download all submissions as a zip.Example: https://example.com/courses/:course_id/assignments/:id/submissions?zip=1", required: false
@@ -53,9 +53,9 @@ module LMSGraphQL
53
53
  argument :max_name_length, Int, "An integer indicating the maximum length an assignment's name may be.Example: 15", required: false
54
54
  argument :turnitin_enabled, Boolean, "Boolean flag indicating whether or not Turnitin has been enabled for the assignment. NOTE: This flag will not appear unless your account has the Turnitin plugin available.Example: true", required: false
55
55
  argument :vericite_enabled, Boolean, "Boolean flag indicating whether or not VeriCite has been enabled for the assignment. NOTE: This flag will not appear unless your account has the VeriCite plugin available.Example: true", required: false
56
- argument :turnitin_settings, LMSGraphQL::Types::Canvas::CanvasTurnitinSettingInput, "Settings to pass along to turnitin to control what kinds of matches should be considered. originality_report_visibility can be 'immediate', 'after_grading', 'after_due_date', or 'never' exclude_small_matches_type can be null, 'percent', 'words' exclude_small_matches_value: - if type is null, this will be null also - if type is 'percent', this will be a number between 0 and 100 representing match size to exclude as a percentage of the document size. - if type is 'words', this will be number > 0 representing how many words a match must contain for it to be considered NOTE: This flag will not appear unless your account has the Turnitin plugin available.", required: false
56
+ argument :turnitin_settings, LMSGraphQL::Types::Canvas::CanvasTurnitinSetting, "Settings to pass along to turnitin to control what kinds of matches should be considered. originality_report_visibility can be 'immediate', 'after_grading', 'after_due_date', or 'never' exclude_small_matches_type can be null, 'percent', 'words' exclude_small_matches_value: - if type is null, this will be null also - if type is 'percent', this will be a number between 0 and 100 representing match size to exclude as a percentage of the document size. - if type is 'words', this will be number > 0 representing how many words a match must contain for it to be considered NOTE: This flag will not appear unless your account has the Turnitin plugin available.", required: false
57
57
  argument :grade_group_students_individually, Boolean, "If this is a group assignment, boolean flag indicating whether or not students will be graded individually..", required: false
58
- argument :external_tool_tag_attributes, LMSGraphQL::Types::Canvas::CanvasExternalToolTagAttributeInput, "(Optional) assignment's settings for external tools if submission_types include 'external_tool'. Only url and new_tab are included (new_tab defaults to false). Use the 'External Tools' API if you need more information about an external tool..", required: false
58
+ argument :external_tool_tag_attributes, LMSGraphQL::Types::Canvas::CanvasExternalToolTagAttribute, "(Optional) assignment's settings for external tools if submission_types include 'external_tool'. Only url and new_tab are included (new_tab defaults to false). Use the 'External Tools' API if you need more information about an external tool..", required: false
59
59
  argument :peer_reviews, Boolean, "Boolean indicating if peer reviews are required for this assignment.", required: false
60
60
  argument :automatic_peer_reviews, Boolean, "Boolean indicating peer reviews are assigned automatically. If false, the teacher is expected to manually assign peer reviews..", required: false
61
61
  argument :peer_review_count, Int, "Integer representing the amount of reviews each user is assigned. NOTE: This key is NOT present unless you have automatic_peer_reviews set to true..Example: 0", required: false
@@ -63,7 +63,7 @@ module LMSGraphQL
63
63
  argument :intra_group_peer_reviews, Boolean, "Boolean representing whether or not members from within the same group on a group assignment can be assigned to peer review their own group's work.Example: false", required: false
64
64
  argument :group_category_id, ID, "The ID of the assignment’s group set, if this is a group assignment. For group discussions, set group_category_id on the discussion topic, not the linked assignment..Example: 1", required: false
65
65
  argument :needs_grading_count, Int, "if the requesting user has grading rights, the number of submissions that need grading..Example: 17", required: false
66
- argument :needs_grading_count_by_section, [LMSGraphQL::Types::Canvas::CanvasNeedsGradingCountInput], "if the requesting user has grading rights and the 'needs_grading_count_by_section' flag is specified, the number of submissions that need grading split out by section. NOTE: This key is NOT present unless you pass the 'needs_grading_count_by_section' argument as true. ANOTHER NOTE: it's possible to be enrolled in multiple sections, and if a student is setup that way they will show an assignment that needs grading in multiple sections (effectively the count will be duplicated between sections).Example: {'section_id'=>'123456', 'needs_grading_count'=>5}, {'section_id'=>'654321', 'needs_grading_count'=>0}", required: false
66
+ argument :needs_grading_count_by_section, [LMSGraphQL::Types::Canvas::CanvasNeedsGradingCount], "if the requesting user has grading rights and the 'needs_grading_count_by_section' flag is specified, the number of submissions that need grading split out by section. NOTE: This key is NOT present unless you pass the 'needs_grading_count_by_section' argument as true. ANOTHER NOTE: it's possible to be enrolled in multiple sections, and if a student is setup that way they will show an assignment that needs grading in multiple sections (effectively the count will be duplicated between sections).Example: {'section_id'=>'123456', 'needs_grading_count'=>5}, {'section_id'=>'654321', 'needs_grading_count'=>0}", required: false
67
67
  argument :position, Int, "the sorting order of the assignment in the group.Example: 1", required: false
68
68
  argument :post_to_sis, Boolean, "(optional, present if Sync Grades to SIS feature is enabled).Example: true", required: false
69
69
  argument :integration_id, ID, "(optional, Third Party unique identifier for Assignment).Example: 12341234", required: false
@@ -78,20 +78,20 @@ module LMSGraphQL
78
78
  argument :unpublishable, Boolean, "Whether the assignment's 'published' state can be changed to false. Will be false if there are student submissions for the assignment..", required: false
79
79
  argument :only_visible_to_overrides, Boolean, "Whether the assignment is only visible to overrides..", required: false
80
80
  argument :locked_for_user, Boolean, "Whether or not this is locked for the user..", required: false
81
- argument :lock_info, LMSGraphQL::Types::Canvas::CanvasLockInfoInput, "(Optional) Information for the user about the lock. Present when locked_for_user is true..", required: false
81
+ argument :lock_info, LMSGraphQL::Types::Canvas::CanvasLockInfo, "(Optional) Information for the user about the lock. Present when locked_for_user is true..", required: false
82
82
  argument :lock_explanation, String, "(Optional) An explanation of why this is locked for the user. Present when locked_for_user is true..Example: This assignment is locked until September 1 at 12:00am", required: false
83
83
  argument :quiz_id, ID, "(Optional) id of the associated quiz (applies only when submission_types is ['online_quiz']).Example: 620", required: false
84
84
  argument :anonymous_submissions, Boolean, "(Optional) whether anonymous submissions are accepted (applies only to quiz assignments).", required: false
85
- argument :discussion_topic, LMSGraphQL::Types::Canvas::CanvasDiscussionTopicInput, "(Optional) the DiscussionTopic associated with the assignment, if applicable.", required: false
85
+ argument :discussion_topic, LMSGraphQL::Types::Canvas::CanvasDiscussionTopic, "(Optional) the DiscussionTopic associated with the assignment, if applicable.", required: false
86
86
  argument :freeze_on_copy, Boolean, "(Optional) Boolean indicating if assignment will be frozen when it is copied. NOTE: This field will only be present if the AssignmentFreezer plugin is available for your account..", required: false
87
87
  argument :frozen, Boolean, "(Optional) Boolean indicating if assignment is frozen for the calling user. NOTE: This field will only be present if the AssignmentFreezer plugin is available for your account..", required: false
88
88
  argument :frozen_attributes, String, "(Optional) Array of frozen attributes for the assignment. Only account administrators currently have permission to change an attribute in this list. Will be empty if no attributes are frozen for this assignment. Possible frozen attributes are: title, description, lock_at, points_possible, grading_type, submission_types, assignment_group_id, allowed_extensions, group_category_id, notify_of_update, peer_reviews NOTE: This field will only be present if the AssignmentFreezer plugin is available for your account..Example: title", required: false
89
- argument :submission, LMSGraphQL::Types::Canvas::CanvasSubmissionInput, "(Optional) If 'submission' is included in the 'include' parameter, includes a Submission object that represents the current user's (user who is requesting information from the api) current submission for the assignment. See the Submissions API for an example response. If the user does not have a submission, this key will be absent..", required: false
89
+ argument :submission, LMSGraphQL::Types::Canvas::CanvasSubmission, "(Optional) If 'submission' is included in the 'include' parameter, includes a Submission object that represents the current user's (user who is requesting information from the api) current submission for the assignment. See the Submissions API for an example response. If the user does not have a submission, this key will be absent..", required: false
90
90
  argument :use_rubric_for_grading, Boolean, "(Optional) If true, the rubric is directly tied to grading the assignment. Otherwise, it is only advisory. Included if there is an associated rubric..Example: true", required: false
91
91
  argument :rubric_settings, String, "(Optional) An object describing the basic attributes of the rubric, including the point total. Included if there is an associated rubric..Example: {'points_possible'=>12}", required: false
92
- argument :rubric, [LMSGraphQL::Types::Canvas::CanvasRubricCriteriumInput], "(Optional) A list of scoring criteria and ratings for each rubric criterion. Included if there is an associated rubric..", required: false
92
+ argument :rubric, [LMSGraphQL::Types::Canvas::CanvasRubricCriterium], "(Optional) A list of scoring criteria and ratings for each rubric criterion. Included if there is an associated rubric..", required: false
93
93
  argument :assignment_visibility, Int, "(Optional) If 'assignment_visibility' is included in the 'include' parameter, includes an array of student IDs who can see this assignment..Example: 137, 381, 572", required: false
94
- argument :overrides, [LMSGraphQL::Types::Canvas::CanvasAssignmentOverrideInput], "(Optional) If 'overrides' is included in the 'include' parameter, includes an array of assignment override objects..", required: false
94
+ argument :overrides, [LMSGraphQL::Types::Canvas::CanvasAssignmentOverride], "(Optional) If 'overrides' is included in the 'include' parameter, includes an array of assignment override objects..", required: false
95
95
  argument :omit_from_final_grade, Boolean, "(Optional) If true, the assignment will be omitted from the student's final grade.Example: true", required: false
96
96
  argument :moderated_grading, Boolean, "Boolean indicating if the assignment is moderated..Example: true", required: false
97
97