lms-api 1.17.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (47) hide show
  1. checksums.yaml +7 -0
  2. data/MIT-LICENSE +20 -0
  3. data/README.md +84 -0
  4. data/Rakefile +27 -0
  5. data/lib/canvas_api.rb +4 -0
  6. data/lib/canvas_api/builder.rb +121 -0
  7. data/lib/canvas_api/js_graphql_helpers.rb +98 -0
  8. data/lib/canvas_api/js_helpers.rb +58 -0
  9. data/lib/canvas_api/rb_graphql_helpers.rb +241 -0
  10. data/lib/canvas_api/render.rb +74 -0
  11. data/lib/canvas_api/ruby_helpers.rb +9 -0
  12. data/lib/canvas_api/templates/constant.erb +10 -0
  13. data/lib/canvas_api/templates/constants.erb +4 -0
  14. data/lib/canvas_api/templates/course_id_required.erb +1 -0
  15. data/lib/canvas_api/templates/course_ids_required.erb +5 -0
  16. data/lib/canvas_api/templates/ex_action.erb +1 -0
  17. data/lib/canvas_api/templates/ex_default_action.erb +1 -0
  18. data/lib/canvas_api/templates/ex_url.erb +18 -0
  19. data/lib/canvas_api/templates/ex_urls.erb +3 -0
  20. data/lib/canvas_api/templates/js_graphql_model.erb +9 -0
  21. data/lib/canvas_api/templates/js_graphql_mutation.erb +0 -0
  22. data/lib/canvas_api/templates/js_graphql_mutations.erb +6 -0
  23. data/lib/canvas_api/templates/js_graphql_queries.erb +7 -0
  24. data/lib/canvas_api/templates/js_graphql_query.erb +7 -0
  25. data/lib/canvas_api/templates/js_graphql_types.erb +100 -0
  26. data/lib/canvas_api/templates/js_url.erb +1 -0
  27. data/lib/canvas_api/templates/js_urls.erb +3 -0
  28. data/lib/canvas_api/templates/rb_forward_declarations.erb +14 -0
  29. data/lib/canvas_api/templates/rb_graphql_field.erb +3 -0
  30. data/lib/canvas_api/templates/rb_graphql_input_type.erb +14 -0
  31. data/lib/canvas_api/templates/rb_graphql_mutation.erb +20 -0
  32. data/lib/canvas_api/templates/rb_graphql_mutation_include.erb +1 -0
  33. data/lib/canvas_api/templates/rb_graphql_mutations.erb +15 -0
  34. data/lib/canvas_api/templates/rb_graphql_resolver.erb +27 -0
  35. data/lib/canvas_api/templates/rb_graphql_root_query.erb +14 -0
  36. data/lib/canvas_api/templates/rb_graphql_type.erb +14 -0
  37. data/lib/canvas_api/templates/rb_url.erb +1 -0
  38. data/lib/canvas_api/templates/rb_urls.erb +5 -0
  39. data/lib/lms/canvas.rb +447 -0
  40. data/lib/lms/canvas_urls.rb +812 -0
  41. data/lib/lms/course_ids_required.rb +309 -0
  42. data/lib/lms/helper_urls.rb +8 -0
  43. data/lib/lms/utils.rb +6 -0
  44. data/lib/lms/version.rb +3 -0
  45. data/lib/lms_api.rb +4 -0
  46. data/lib/tasks/canvas_api.rake +23 -0
  47. metadata +175 -0
@@ -0,0 +1,309 @@
1
+ module LMS
2
+ COURSE_REQUIRED_ENDPOINTS = [
3
+ "GET_COURSE_LEVEL_PARTICIPATION_DATA",
4
+ "GET_COURSE_LEVEL_ASSIGNMENT_DATA",
5
+ "GET_COURSE_LEVEL_STUDENT_SUMMARY_DATA",
6
+ "GET_USER_IN_A_COURSE_LEVEL_PARTICIPATION_DATA",
7
+ "GET_USER_IN_A_COURSE_LEVEL_ASSIGNMENT_DATA",
8
+ "GET_USER_IN_A_COURSE_LEVEL_MESSAGING_DATA",
9
+ "LIST_EXTERNAL_FEEDS_COURSES",
10
+ "CREATE_EXTERNAL_FEED_COURSES",
11
+ "DELETE_EXTERNAL_FEED_COURSES",
12
+ "SET_EXTENSIONS_FOR_STUDENT_ASSIGNMENT_SUBMISSIONS",
13
+ "LIST_ASSIGNMENT_GROUPS",
14
+ "GET_ASSIGNMENT_GROUP",
15
+ "CREATE_ASSIGNMENT_GROUP",
16
+ "EDIT_ASSIGNMENT_GROUP",
17
+ "DESTROY_ASSIGNMENT_GROUP",
18
+ "DELETE_ASSIGNMENT",
19
+ "LIST_ASSIGNMENTS_ASSIGNMENTS",
20
+ "LIST_ASSIGNMENTS_ASSIGNMENT_GROUPS",
21
+ "LIST_ASSIGNMENTS_FOR_USER",
22
+ "GET_SINGLE_ASSIGNMENT",
23
+ "CREATE_ASSIGNMENT",
24
+ "EDIT_ASSIGNMENT",
25
+ "BULK_UPDATE_ASSIGNMENT_DATES",
26
+ "LIST_ASSIGNMENT_OVERRIDES",
27
+ "GET_SINGLE_ASSIGNMENT_OVERRIDE",
28
+ "CREATE_ASSIGNMENT_OVERRIDE",
29
+ "UPDATE_ASSIGNMENT_OVERRIDE",
30
+ "DELETE_ASSIGNMENT_OVERRIDE",
31
+ "BATCH_RETRIEVE_OVERRIDES_IN_COURSE",
32
+ "BATCH_CREATE_OVERRIDES_IN_COURSE",
33
+ "BATCH_UPDATE_OVERRIDES_IN_COURSE",
34
+ "GET_BLUEPRINT_INFORMATION",
35
+ "GET_ASSOCIATED_COURSE_INFORMATION",
36
+ "UPDATE_ASSOCIATED_COURSES",
37
+ "BEGIN_MIGRATION_TO_PUSH_TO_ASSOCIATED_COURSES",
38
+ "SET_OR_REMOVE_RESTRICTIONS_ON_BLUEPRINT_COURSE_OBJECT",
39
+ "GET_UNSYNCED_CHANGES",
40
+ "LIST_BLUEPRINT_MIGRATIONS",
41
+ "SHOW_BLUEPRINT_MIGRATION",
42
+ "GET_MIGRATION_DETAILS",
43
+ "LIST_BLUEPRINT_SUBSCRIPTIONS",
44
+ "LIST_BLUEPRINT_IMPORTS",
45
+ "SHOW_BLUEPRINT_IMPORT",
46
+ "GET_IMPORT_DETAILS",
47
+ "SET_COURSE_TIMETABLE",
48
+ "GET_COURSE_TIMETABLE",
49
+ "CREATE_OR_UPDATE_EVENTS_DIRECTLY_FOR_COURSE_TIMETABLE",
50
+ "LIST_COLLABORATIONS_COURSES",
51
+ "LIST_POTENTIAL_MEMBERS_COURSES",
52
+ "LIST_CONFERENCES_COURSES",
53
+ "LIST_CONTENT_EXPORTS_COURSES",
54
+ "SHOW_CONTENT_EXPORT_COURSES",
55
+ "EXPORT_CONTENT_COURSES",
56
+ "LIST_MIGRATION_ISSUES_COURSES",
57
+ "GET_MIGRATION_ISSUE_COURSES",
58
+ "UPDATE_MIGRATION_ISSUE_COURSES",
59
+ "LIST_CONTENT_MIGRATIONS_COURSES",
60
+ "GET_CONTENT_MIGRATION_COURSES",
61
+ "CREATE_CONTENT_MIGRATION_COURSES",
62
+ "UPDATE_CONTENT_MIGRATION_COURSES",
63
+ "LIST_MIGRATION_SYSTEMS_COURSES",
64
+ "LIST_ITEMS_FOR_SELECTIVE_IMPORT_COURSES",
65
+ "GET_CURRENT_SETTINGS_FOR_ACCOUNT_OR_COURSE_COURSES",
66
+ "ENABLE_DISABLE_OR_CLEAR_EXPLICIT_CSP_SETTING_COURSES",
67
+ "COURSE_AUDIT_LOG_QUERY_BY_COURSE",
68
+ "COURSE_QUIZ_EXTENSIONS_SET_EXTENSIONS_FOR_STUDENT_QUIZ_SUBMISSIONS",
69
+ "COURSES_UPLOAD_FILE",
70
+ "LIST_STUDENTS",
71
+ "LIST_USERS_IN_COURSE_USERS",
72
+ "LIST_USERS_IN_COURSE_SEARCH_USERS",
73
+ "LIST_RECENTLY_LOGGED_IN_STUDENTS",
74
+ "GET_SINGLE_USER",
75
+ "SEARCH_FOR_CONTENT_SHARE_USERS",
76
+ "COURSES_PREVIEW_PROCESSED_HTML",
77
+ "COURSE_ACTIVITY_STREAM",
78
+ "COURSE_ACTIVITY_STREAM_SUMMARY",
79
+ "COURSE_TODO_ITEMS",
80
+ "GET_COURSE_SETTINGS",
81
+ "UPDATE_COURSE_SETTINGS",
82
+ "RETURN_TEST_STUDENT_FOR_COURSE",
83
+ "RESET_COURSE",
84
+ "GET_EFFECTIVE_DUE_DATES",
85
+ "COURSES_PERMISSIONS",
86
+ "GET_COURSE_COPY_STATUS",
87
+ "COPY_COURSE_CONTENT",
88
+ "LIST_CUSTOM_GRADEBOOK_COLUMNS",
89
+ "CREATE_CUSTOM_GRADEBOOK_COLUMN",
90
+ "UPDATE_CUSTOM_GRADEBOOK_COLUMN",
91
+ "DELETE_CUSTOM_GRADEBOOK_COLUMN",
92
+ "REORDER_CUSTOM_COLUMNS",
93
+ "LIST_ENTRIES_FOR_COLUMN",
94
+ "UPDATE_COLUMN_DATA",
95
+ "BULK_UPDATE_COLUMN_DATA",
96
+ "LIST_DISCUSSION_TOPICS_COURSES",
97
+ "CREATE_NEW_DISCUSSION_TOPIC_COURSES",
98
+ "UPDATE_TOPIC_COURSES",
99
+ "DELETE_TOPIC_COURSES",
100
+ "REORDER_PINNED_TOPICS_COURSES",
101
+ "UPDATE_ENTRY_COURSES",
102
+ "DELETE_ENTRY_COURSES",
103
+ "GET_SINGLE_TOPIC_COURSES",
104
+ "GET_FULL_TOPIC_COURSES",
105
+ "POST_ENTRY_COURSES",
106
+ "LIST_TOPIC_ENTRIES_COURSES",
107
+ "POST_REPLY_COURSES",
108
+ "LIST_ENTRY_REPLIES_COURSES",
109
+ "LIST_ENTRIES_COURSES",
110
+ "MARK_TOPIC_AS_READ_COURSES",
111
+ "MARK_TOPIC_AS_UNREAD_COURSES",
112
+ "MARK_ALL_ENTRIES_AS_READ_COURSES",
113
+ "MARK_ALL_ENTRIES_AS_UNREAD_COURSES",
114
+ "MARK_ENTRY_AS_READ_COURSES",
115
+ "MARK_ENTRY_AS_UNREAD_COURSES",
116
+ "RATE_ENTRY_COURSES",
117
+ "SUBSCRIBE_TO_TOPIC_COURSES",
118
+ "UNSUBSCRIBE_FROM_TOPIC_COURSES",
119
+ "LIST_ENROLLMENTS_COURSES",
120
+ "ENROLL_USER_COURSES",
121
+ "CONCLUDE_DEACTIVATE_OR_DELETE_ENROLLMENT",
122
+ "ACCEPT_COURSE_INVITATION",
123
+ "REJECT_COURSE_INVITATION",
124
+ "RE_ACTIVATE_ENROLLMENT",
125
+ "ADDS_LAST_ATTENDED_DATE_TO_STUDENT_ENROLLMENT_IN_COURSE",
126
+ "LIST_EXTERNAL_TOOLS_COURSES",
127
+ "GET_SESSIONLESS_LAUNCH_URL_FOR_EXTERNAL_TOOL_COURSES",
128
+ "GET_SINGLE_EXTERNAL_TOOL_COURSES",
129
+ "CREATE_EXTERNAL_TOOL_COURSES",
130
+ "EDIT_EXTERNAL_TOOL_COURSES",
131
+ "DELETE_EXTERNAL_TOOL_COURSES",
132
+ "LIST_FEATURES_COURSES",
133
+ "LIST_ENABLED_FEATURES_COURSES",
134
+ "GET_FEATURE_FLAG_COURSES",
135
+ "SET_FEATURE_FLAG_COURSES",
136
+ "REMOVE_FEATURE_FLAG_COURSES",
137
+ "GET_QUOTA_INFORMATION_COURSES",
138
+ "LIST_FILES_COURSES",
139
+ "GET_FILE_COURSES",
140
+ "LIST_ALL_FOLDERS_COURSES",
141
+ "RESOLVE_PATH_COURSES_FULL_PATH",
142
+ "RESOLVE_PATH_COURSES",
143
+ "GET_FOLDER_COURSES",
144
+ "CREATE_FOLDER_COURSES",
145
+ "GET_UPLOADED_MEDIA_FOLDER_FOR_USER_COURSES",
146
+ "SET_USAGE_RIGHTS_COURSES",
147
+ "REMOVE_USAGE_RIGHTS_COURSES",
148
+ "LIST_LICENSES_COURSES",
149
+ "GRADE_CHANGE_LOG_QUERY_BY_COURSE",
150
+ "DAYS_IN_GRADEBOOK_HISTORY_FOR_THIS_COURSE",
151
+ "DETAILS_FOR_GIVEN_DATE_IN_GRADEBOOK_HISTORY_FOR_THIS_COURSE",
152
+ "LISTS_SUBMISSIONS",
153
+ "LIST_UNCOLLATED_SUBMISSION_VERSIONS",
154
+ "LIST_GRADING_PERIODS_COURSES",
155
+ "GET_SINGLE_GRADING_PERIOD",
156
+ "UPDATE_SINGLE_GRADING_PERIOD",
157
+ "DELETE_GRADING_PERIOD_COURSES",
158
+ "CREATE_NEW_GRADING_STANDARD_COURSES",
159
+ "LIST_GRADING_STANDARDS_AVAILABLE_IN_CONTEXT_COURSES",
160
+ "GET_SINGLE_GRADING_STANDARD_IN_CONTEXT_COURSES",
161
+ "LIST_GROUP_CATEGORIES_FOR_CONTEXT_COURSES",
162
+ "CREATE_GROUP_CATEGORY_COURSES",
163
+ "LIST_GROUPS_AVAILABLE_IN_CONTEXT_COURSES",
164
+ "CREATE_LINE_ITEM",
165
+ "UPDATE_LINE_ITEM",
166
+ "SHOW_LINE_ITEM",
167
+ "LIST_LINE_ITEMS",
168
+ "DELETE_LINE_ITEM",
169
+ "CREATE_LIVE_ASSESSMENT_RESULTS",
170
+ "LIST_LIVE_ASSESSMENT_RESULTS",
171
+ "CREATE_OR_FIND_LIVE_ASSESSMENT",
172
+ "LIST_LIVE_ASSESSMENTS",
173
+ "LIST_MEDIA_OBJECTS_COURSES",
174
+ "LIST_STUDENTS_SELECTED_FOR_MODERATION",
175
+ "SELECT_STUDENTS_FOR_MODERATION",
176
+ "BULK_SELECT_PROVISIONAL_GRADES",
177
+ "SHOW_PROVISIONAL_GRADE_STATUS_FOR_STUDENT",
178
+ "SELECT_PROVISIONAL_GRADE",
179
+ "PUBLISH_PROVISIONAL_GRADES_FOR_ASSIGNMENT",
180
+ "MODERATED_GRADING_SHOW_PROVISIONAL_GRADE_STATUS_FOR_STUDENT",
181
+ "LIST_MODULES",
182
+ "SHOW_MODULE",
183
+ "CREATE_MODULE",
184
+ "UPDATE_MODULE",
185
+ "DELETE_MODULE",
186
+ "RE_LOCK_MODULE_PROGRESSIONS",
187
+ "LIST_MODULE_ITEMS",
188
+ "SHOW_MODULE_ITEM",
189
+ "CREATE_MODULE_ITEM",
190
+ "UPDATE_MODULE_ITEM",
191
+ "SELECT_MASTERY_PATH",
192
+ "DELETE_MODULE_ITEM",
193
+ "MARK_MODULE_ITEM_AS_DONE_NOT_DONE",
194
+ "GET_MODULE_ITEM_SEQUENCE",
195
+ "MARK_MODULE_ITEM_READ",
196
+ "LIST_COURSE_MEMBERSHIPS",
197
+ "REDIRECT_TO_ROOT_OUTCOME_GROUP_FOR_CONTEXT_COURSES",
198
+ "GET_ALL_OUTCOME_GROUPS_FOR_CONTEXT_COURSES",
199
+ "GET_ALL_OUTCOME_LINKS_FOR_CONTEXT_COURSES",
200
+ "SHOW_OUTCOME_GROUP_COURSES",
201
+ "UPDATE_OUTCOME_GROUP_COURSES",
202
+ "DELETE_OUTCOME_GROUP_COURSES",
203
+ "LIST_LINKED_OUTCOMES_COURSES",
204
+ "CREATE_LINK_OUTCOME_COURSES",
205
+ "CREATE_LINK_OUTCOME_COURSES_OUTCOME_ID",
206
+ "UNLINK_OUTCOME_COURSES",
207
+ "LIST_SUBGROUPS_COURSES",
208
+ "CREATE_SUBGROUP_COURSES",
209
+ "IMPORT_OUTCOME_GROUP_COURSES",
210
+ "IMPORT_OUTCOMES_COURSES",
211
+ "GET_OUTCOME_IMPORT_STATUS_COURSES",
212
+ "GET_OUTCOME_RESULTS",
213
+ "GET_OUTCOME_RESULT_ROLLUPS",
214
+ "GET_ALIGNED_ASSIGNMENTS_FOR_OUTCOME_IN_COURSE_FOR_PARTICULAR_STUDENT",
215
+ "SHOW_FRONT_PAGE_COURSES",
216
+ "DUPLICATE_PAGE",
217
+ "UPDATE_CREATE_FRONT_PAGE_COURSES",
218
+ "LIST_PAGES_COURSES",
219
+ "CREATE_PAGE_COURSES",
220
+ "SHOW_PAGE_COURSES",
221
+ "UPDATE_CREATE_PAGE_COURSES",
222
+ "DELETE_PAGE_COURSES",
223
+ "LIST_REVISIONS_COURSES",
224
+ "SHOW_REVISION_COURSES_LATEST",
225
+ "SHOW_REVISION_COURSES_REVISION_ID",
226
+ "REVERT_TO_REVISION_COURSES",
227
+ "GET_ALL_PEER_REVIEWS_COURSES_PEER_REVIEWS",
228
+ "GET_ALL_PEER_REVIEWS_COURSES_SUBMISSIONS",
229
+ "PEER_REVIEWS_CREATE_PEER_REVIEW_COURSES",
230
+ "DELETE_PEER_REVIEW_COURSES",
231
+ "RETRIEVE_ASSIGNMENT_OVERRIDDEN_DATES_FOR_CLASSIC_QUIZZES",
232
+ "RETRIEVE_ASSIGNMENT_OVERRIDDEN_DATES_FOR_NEW_QUIZZES",
233
+ "QUIZ_EXTENSIONS_SET_EXTENSIONS_FOR_STUDENT_QUIZ_SUBMISSIONS",
234
+ "GET_AVAILABLE_QUIZ_IP_FILTERS",
235
+ "GET_SINGLE_QUIZ_GROUP",
236
+ "CREATE_QUESTION_GROUP",
237
+ "UPDATE_QUESTION_GROUP",
238
+ "DELETE_QUESTION_GROUP",
239
+ "REORDER_QUESTION_GROUPS",
240
+ "LIST_QUESTIONS_IN_QUIZ_OR_SUBMISSION",
241
+ "GET_SINGLE_QUIZ_QUESTION",
242
+ "CREATE_SINGLE_QUIZ_QUESTION",
243
+ "UPDATE_EXISTING_QUIZ_QUESTION",
244
+ "DELETE_QUIZ_QUESTION",
245
+ "RETRIEVE_ALL_QUIZ_REPORTS",
246
+ "CREATE_QUIZ_REPORT",
247
+ "GET_QUIZ_REPORT",
248
+ "ABORT_GENERATION_OF_REPORT_OR_REMOVE_PREVIOUSLY_GENERATED_ONE",
249
+ "FETCHING_LATEST_QUIZ_STATISTICS",
250
+ "SUBMIT_CAPTURED_EVENTS",
251
+ "RETRIEVE_CAPTURED_EVENTS",
252
+ "QUIZ_SUBMISSION_FILES_UPLOAD_FILE",
253
+ "SEND_MESSAGE_TO_UNSUBMITTED_OR_SUBMITTED_USERS_FOR_QUIZ",
254
+ "GET_ALL_QUIZ_SUBMISSIONS",
255
+ "GET_QUIZ_SUBMISSION",
256
+ "GET_SINGLE_QUIZ_SUBMISSION",
257
+ "CREATE_QUIZ_SUBMISSION_START_QUIZ_TAKING_SESSION",
258
+ "UPDATE_STUDENT_QUESTION_SCORES_AND_COMMENTS",
259
+ "COMPLETE_QUIZ_SUBMISSION_TURN_IT_IN",
260
+ "GET_CURRENT_QUIZ_SUBMISSION_TIMES",
261
+ "LIST_QUIZZES_IN_COURSE",
262
+ "GET_SINGLE_QUIZ",
263
+ "CREATE_QUIZ",
264
+ "EDIT_QUIZ",
265
+ "DELETE_QUIZ",
266
+ "REORDER_QUIZ_ITEMS",
267
+ "VALIDATE_QUIZ_ACCESS_CODE",
268
+ "SHOW_COLLECTION_OF_RESULTS",
269
+ "SHOW_RESULT",
270
+ "CREATE_SINGLE_RUBRIC",
271
+ "UPDATE_SINGLE_RUBRIC",
272
+ "DELETE_SINGLE_RUBRIC",
273
+ "LIST_RUBRICS_COURSES",
274
+ "GET_SINGLE_RUBRIC_COURSES",
275
+ "CREATE_SINGLE_RUBRIC_ASSESSMENT",
276
+ "UPDATE_SINGLE_RUBRIC_ASSESSMENT",
277
+ "DELETE_SINGLE_RUBRIC_ASSESSMENT",
278
+ "CREATE_RUBRICASSOCIATION",
279
+ "UPDATE_RUBRICASSOCIATION",
280
+ "DELETE_RUBRICASSOCIATION",
281
+ "RETRIEVE_ASSIGNMENTS_ENABLED_FOR_GRADE_EXPORT_TO_SIS_COURSES",
282
+ "DISABLE_ASSIGNMENTS_CURRENTLY_ENABLED_FOR_GRADE_EXPORT_TO_SIS",
283
+ "CREATE_SCORE",
284
+ "LIST_COURSE_SECTIONS",
285
+ "CREATE_COURSE_SECTION",
286
+ "GET_SECTION_INFORMATION_COURSES",
287
+ "SUBMISSION_COMMENTS_UPLOAD_FILE",
288
+ "SUBMIT_ASSIGNMENT_COURSES",
289
+ "LIST_ASSIGNMENT_SUBMISSIONS_COURSES",
290
+ "LIST_SUBMISSIONS_FOR_MULTIPLE_ASSIGNMENTS_COURSES",
291
+ "GET_SINGLE_SUBMISSION_COURSES",
292
+ "UPLOAD_FILE_COURSES",
293
+ "GRADE_OR_COMMENT_ON_SUBMISSION_COURSES",
294
+ "LIST_GRADEABLE_STUDENTS",
295
+ "LIST_MULTIPLE_ASSIGNMENTS_GRADEABLE_STUDENTS",
296
+ "GRADE_OR_COMMENT_ON_MULTIPLE_SUBMISSIONS_COURSES_SUBMISSIONS",
297
+ "GRADE_OR_COMMENT_ON_MULTIPLE_SUBMISSIONS_COURSES_ASSIGNMENTS",
298
+ "MARK_SUBMISSION_AS_READ_COURSES",
299
+ "MARK_SUBMISSION_AS_UNREAD_COURSES",
300
+ "SUBMISSION_SUMMARY_COURSES",
301
+ "LIST_AVAILABLE_TABS_FOR_COURSE_OR_GROUP_COURSES",
302
+ "UPDATE_TAB_FOR_COURSE",
303
+ "GET_COURSE_NICKNAME",
304
+ "SET_COURSE_NICKNAME",
305
+ "REMOVE_COURSE_NICKNAME",
306
+ "CREATE_EPUB_EXPORT",
307
+ "SHOW_EPUB_EXPORT"
308
+ ].freeze
309
+ end
@@ -0,0 +1,8 @@
1
+
2
+ module LMS
3
+
4
+ CANVAS_HELPER_URLs = {
5
+ "HELPER_ALL_ACCOUNTS" => :all_accounts
6
+ }
7
+
8
+ end
@@ -0,0 +1,6 @@
1
+ def require_all(_absolute_path, _dir)
2
+ dir = File.expand_path(File.join(File.dirname(_absolute_path), _dir)) + "/**/*.rb"
3
+ Dir[dir].each do |file|
4
+ require file
5
+ end
6
+ end
@@ -0,0 +1,3 @@
1
+ module LMS
2
+ VERSION = "1.17.0".freeze
3
+ end
@@ -0,0 +1,4 @@
1
+ module LMS
2
+ end
3
+
4
+ require "lms/canvas"
@@ -0,0 +1,23 @@
1
+ require "httparty"
2
+ require "active_support"
3
+ require "active_support/core_ext/object/blank"
4
+ require "active_support/core_ext/string/inflections"
5
+
6
+ require "lms/canvas_urls"
7
+ require "lms/helper_urls"
8
+
9
+ require "canvas_api"
10
+
11
+ namespace :canvas do
12
+
13
+ desc "Scrape the LMS api"
14
+ task :api do
15
+ current_path = File.expand_path(File.dirname(__FILE__))
16
+ client_app_path = File.expand_path(File.join(current_path, "../../../atomic-canvas/src/constants"))
17
+ server_app_path = File.expand_path(File.join(current_path, "../../../atomic-lti"))
18
+ elixir_app_path = File.expand_path(File.join(current_path, "../../../catalyst"))
19
+ rb_graphql_app_path = File.expand_path(File.join(current_path, "../../../lms_graphql_api"))
20
+ project_root = File.expand_path(File.join(current_path, "../../"))
21
+ CanvasApi::Builder.build(project_root, client_app_path, server_app_path, elixir_app_path, rb_graphql_app_path)
22
+ end
23
+ end
metadata ADDED
@@ -0,0 +1,175 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: lms-api
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.17.0
5
+ platform: ruby
6
+ authors:
7
+ - Atomic Jolt
8
+ - Jamis Buck
9
+ - Justin Ball
10
+ autorequire:
11
+ bindir: bin
12
+ cert_chain: []
13
+ date: 2020-07-21 00:00:00.000000000 Z
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: activesupport
17
+ requirement: !ruby/object:Gem::Requirement
18
+ requirements:
19
+ - - ">="
20
+ - !ruby/object:Gem::Version
21
+ version: '3.0'
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ requirements:
26
+ - - ">="
27
+ - !ruby/object:Gem::Version
28
+ version: '3.0'
29
+ - !ruby/object:Gem::Dependency
30
+ name: httparty
31
+ requirement: !ruby/object:Gem::Requirement
32
+ requirements:
33
+ - - ">="
34
+ - !ruby/object:Gem::Version
35
+ version: '0'
36
+ type: :runtime
37
+ prerelease: false
38
+ version_requirements: !ruby/object:Gem::Requirement
39
+ requirements:
40
+ - - ">="
41
+ - !ruby/object:Gem::Version
42
+ version: '0'
43
+ - !ruby/object:Gem::Dependency
44
+ name: rake
45
+ requirement: !ruby/object:Gem::Requirement
46
+ requirements:
47
+ - - ">="
48
+ - !ruby/object:Gem::Version
49
+ version: '0'
50
+ type: :development
51
+ prerelease: false
52
+ version_requirements: !ruby/object:Gem::Requirement
53
+ requirements:
54
+ - - ">="
55
+ - !ruby/object:Gem::Version
56
+ version: '0'
57
+ - !ruby/object:Gem::Dependency
58
+ name: rspec
59
+ requirement: !ruby/object:Gem::Requirement
60
+ requirements:
61
+ - - ">="
62
+ - !ruby/object:Gem::Version
63
+ version: '0'
64
+ type: :development
65
+ prerelease: false
66
+ version_requirements: !ruby/object:Gem::Requirement
67
+ requirements:
68
+ - - ">="
69
+ - !ruby/object:Gem::Version
70
+ version: '0'
71
+ - !ruby/object:Gem::Dependency
72
+ name: webmock
73
+ requirement: !ruby/object:Gem::Requirement
74
+ requirements:
75
+ - - ">="
76
+ - !ruby/object:Gem::Version
77
+ version: '0'
78
+ type: :development
79
+ prerelease: false
80
+ version_requirements: !ruby/object:Gem::Requirement
81
+ requirements:
82
+ - - ">="
83
+ - !ruby/object:Gem::Version
84
+ version: '0'
85
+ - !ruby/object:Gem::Dependency
86
+ name: byebug
87
+ requirement: !ruby/object:Gem::Requirement
88
+ requirements:
89
+ - - ">="
90
+ - !ruby/object:Gem::Version
91
+ version: '0'
92
+ type: :development
93
+ prerelease: false
94
+ version_requirements: !ruby/object:Gem::Requirement
95
+ requirements:
96
+ - - ">="
97
+ - !ruby/object:Gem::Version
98
+ version: '0'
99
+ description: Wrapper for the Instructure Canvas API
100
+ email:
101
+ - jamis@jamisbuck.org
102
+ - justin.ball@atomicjolt.com
103
+ executables: []
104
+ extensions: []
105
+ extra_rdoc_files: []
106
+ files:
107
+ - MIT-LICENSE
108
+ - README.md
109
+ - Rakefile
110
+ - lib/canvas_api.rb
111
+ - lib/canvas_api/builder.rb
112
+ - lib/canvas_api/js_graphql_helpers.rb
113
+ - lib/canvas_api/js_helpers.rb
114
+ - lib/canvas_api/rb_graphql_helpers.rb
115
+ - lib/canvas_api/render.rb
116
+ - lib/canvas_api/ruby_helpers.rb
117
+ - lib/canvas_api/templates/constant.erb
118
+ - lib/canvas_api/templates/constants.erb
119
+ - lib/canvas_api/templates/course_id_required.erb
120
+ - lib/canvas_api/templates/course_ids_required.erb
121
+ - lib/canvas_api/templates/ex_action.erb
122
+ - lib/canvas_api/templates/ex_default_action.erb
123
+ - lib/canvas_api/templates/ex_url.erb
124
+ - lib/canvas_api/templates/ex_urls.erb
125
+ - lib/canvas_api/templates/js_graphql_model.erb
126
+ - lib/canvas_api/templates/js_graphql_mutation.erb
127
+ - lib/canvas_api/templates/js_graphql_mutations.erb
128
+ - lib/canvas_api/templates/js_graphql_queries.erb
129
+ - lib/canvas_api/templates/js_graphql_query.erb
130
+ - lib/canvas_api/templates/js_graphql_types.erb
131
+ - lib/canvas_api/templates/js_url.erb
132
+ - lib/canvas_api/templates/js_urls.erb
133
+ - lib/canvas_api/templates/rb_forward_declarations.erb
134
+ - lib/canvas_api/templates/rb_graphql_field.erb
135
+ - lib/canvas_api/templates/rb_graphql_input_type.erb
136
+ - lib/canvas_api/templates/rb_graphql_mutation.erb
137
+ - lib/canvas_api/templates/rb_graphql_mutation_include.erb
138
+ - lib/canvas_api/templates/rb_graphql_mutations.erb
139
+ - lib/canvas_api/templates/rb_graphql_resolver.erb
140
+ - lib/canvas_api/templates/rb_graphql_root_query.erb
141
+ - lib/canvas_api/templates/rb_graphql_type.erb
142
+ - lib/canvas_api/templates/rb_url.erb
143
+ - lib/canvas_api/templates/rb_urls.erb
144
+ - lib/lms/canvas.rb
145
+ - lib/lms/canvas_urls.rb
146
+ - lib/lms/course_ids_required.rb
147
+ - lib/lms/helper_urls.rb
148
+ - lib/lms/utils.rb
149
+ - lib/lms/version.rb
150
+ - lib/lms_api.rb
151
+ - lib/tasks/canvas_api.rake
152
+ homepage: https://github.com/atomicjolt/lms_api
153
+ licenses:
154
+ - MIT
155
+ metadata: {}
156
+ post_install_message:
157
+ rdoc_options: []
158
+ require_paths:
159
+ - lib
160
+ required_ruby_version: !ruby/object:Gem::Requirement
161
+ requirements:
162
+ - - ">="
163
+ - !ruby/object:Gem::Version
164
+ version: '2.0'
165
+ required_rubygems_version: !ruby/object:Gem::Requirement
166
+ requirements:
167
+ - - ">="
168
+ - !ruby/object:Gem::Version
169
+ version: '0'
170
+ requirements: []
171
+ rubygems_version: 3.1.4
172
+ signing_key:
173
+ specification_version: 4
174
+ summary: Wrapper for the Instructure Canvas API
175
+ test_files: []