lms-api 1.12.0 → 1.12.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/canvas_api/builder.rb +9 -1
- data/lib/canvas_api/templates/ex_action.erb +1 -0
- data/lib/canvas_api/templates/ex_default_action.erb +1 -0
- data/lib/canvas_api/templates/ex_urls.erb +0 -1
- data/lib/lms/canvas.rb +8 -1
- data/lib/lms/canvas_urls.rb +1 -0
- data/lib/lms/version.rb +1 -1
- metadata +5 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4537b1779fc89ca3db4a4e29367b58643ff0a8da
|
4
|
+
data.tar.gz: ac3abcb34b218882b427add8e15fc25ee821e404
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1ae7e8f29bf07b6055926fec2d61eafcb3e6a42e474e876c58b98167336ce0f1ee42bfe0a9b30bbefad8c3c1c1a160f99592ce3d55c91ee92561c3fe4bab21c4
|
7
|
+
data.tar.gz: 742ff6135ad77aeb2dcc391ee095bbbffa23afdf80ffec8d79fe09b966b781725810fdb78ebc8b7f910af8fc0350dd62658bbb1286ad44bf4813f02f15b7f824
|
data/lib/canvas_api/builder.rb
CHANGED
@@ -28,6 +28,10 @@ module CanvasApi
|
|
28
28
|
rb_forward_declarations = []
|
29
29
|
|
30
30
|
nicknames = []
|
31
|
+
|
32
|
+
# Elixir has a default action that raises
|
33
|
+
lms_urls_ex << CanvasApi::Render.new("./templates/ex_default_action.erb", nil, nil, nil, nil, nil, nil, nil).render
|
34
|
+
|
31
35
|
directory["apis"].each do |api|
|
32
36
|
puts "Generating #{api['description']}"
|
33
37
|
resource = HTTParty.get("#{endpoint}#{api['path']}")
|
@@ -48,6 +52,7 @@ module CanvasApi
|
|
48
52
|
lms_urls_rb << CanvasApi::Render.new("./templates/rb_url.erb", api, resource, resource_api, operation, parameters, nil, nil).render
|
49
53
|
lms_urls_js << CanvasApi::Render.new("./templates/js_url.erb", api, resource, resource_api, operation, parameters, nil, nil).render
|
50
54
|
lms_urls_ex << CanvasApi::Render.new("./templates/ex_url.erb", api, resource, resource_api, operation, parameters, nil, nil).render
|
55
|
+
lms_urls_ex << CanvasApi::Render.new("./templates/ex_action.erb", api, resource, resource_api, operation, parameters, nil, nil).render
|
51
56
|
|
52
57
|
if parameters.detect{ |param| param["name"] == "course_id" && param["paramType"] == "path" }
|
53
58
|
course_ids_required_rb << CanvasApi::Render.new("./templates/course_id_required.erb", api, resource, resource_api, operation, parameters, nil, nil).render
|
@@ -94,7 +99,10 @@ module CanvasApi
|
|
94
99
|
|
95
100
|
CanvasApi::Render.new("./templates/rb_urls.erb", nil, nil, nil, nil, nil, lms_urls_rb, nil).save("#{project_root}/lib/lms/canvas_urls.rb")
|
96
101
|
CanvasApi::Render.new("./templates/js_urls.erb", nil, nil, nil, nil, nil, lms_urls_js, nil).save("#{server_app_path}/lib/canvas/urls.js")
|
97
|
-
|
102
|
+
|
103
|
+
# The elixir urls are sorted, to prevent linter errors
|
104
|
+
CanvasApi::Render.new("./templates/ex_urls.erb", nil, nil, nil, nil, nil, lms_urls_ex.sort, nil).save("#{elixir_app_path}/lib/canvas/actions.ex")
|
105
|
+
|
98
106
|
CanvasApi::Render.new("./templates/course_ids_required.erb", nil, nil, nil, nil, nil, course_ids_required_rb, nil).save("#{project_root}/lib/lms/course_ids_required.rb")
|
99
107
|
|
100
108
|
# GraphQL Javascript - still not complete
|
@@ -0,0 +1 @@
|
|
1
|
+
def <%=@nickname.downcase%>, do: "<%=@nickname.upcase%>"
|
@@ -0,0 +1 @@
|
|
1
|
+
def action(type), do: raise InvalidCanvasActionException, message: "Invalid Canvas API Action: #{type}}"
|
data/lib/lms/canvas.rb
CHANGED
@@ -176,7 +176,11 @@ module LMS
|
|
176
176
|
url = full_url("login/oauth2/token", false)
|
177
177
|
result = HTTParty.post(url, headers: headers, body: payload)
|
178
178
|
code = result.response.code.to_i
|
179
|
-
|
179
|
+
if code >= 500
|
180
|
+
raise LMS::Canvas::RefreshToken500Exception.new(api_error(result), code, result, @authentication)
|
181
|
+
end
|
182
|
+
|
183
|
+
if code > 201
|
180
184
|
raise LMS::Canvas::RefreshTokenFailedException.new(api_error(result), code, result, @authentication)
|
181
185
|
end
|
182
186
|
result["access_token"]
|
@@ -402,6 +406,9 @@ module LMS
|
|
402
406
|
class RefreshTokenFailedException < TokenException
|
403
407
|
end
|
404
408
|
|
409
|
+
class RefreshToken500Exception < RefreshTokenFailedException
|
410
|
+
end
|
411
|
+
|
405
412
|
class InvalidRefreshOptionsException < CanvasException
|
406
413
|
end
|
407
414
|
|
data/lib/lms/canvas_urls.rb
CHANGED
@@ -178,6 +178,7 @@ module LMS
|
|
178
178
|
"GET_CURRENT_SETTINGS_FOR_ACCOUNT_OR_COURSE_ACCOUNTS" => { uri: ->(account_id:) { "accounts/#{account_id}/csp_settings" }, method: "GET", parameters: [{"paramType"=>"path", "name"=>"account_id", "type"=>"string", "format"=>nil, "required"=>true, "deprecated"=>false}] },
|
179
179
|
"ENABLE_DISABLE_OR_CLEAR_EXPLICIT_CSP_SETTING_COURSES" => { uri: ->(course_id:) { "courses/#{course_id}/csp_settings" }, method: "PUT", parameters: [{"paramType"=>"path", "name"=>"course_id", "type"=>"string", "format"=>nil, "required"=>true, "deprecated"=>false}, {"paramType"=>"form", "name"=>"status", "type"=>"string", "format"=>nil, "required"=>true, "deprecated"=>false, "enum"=>["enabled", "disabled", "inherited"]}] },
|
180
180
|
"ENABLE_DISABLE_OR_CLEAR_EXPLICIT_CSP_SETTING_ACCOUNTS" => { uri: ->(account_id:) { "accounts/#{account_id}/csp_settings" }, method: "PUT", parameters: [{"paramType"=>"path", "name"=>"account_id", "type"=>"string", "format"=>nil, "required"=>true, "deprecated"=>false}, {"paramType"=>"form", "name"=>"status", "type"=>"string", "format"=>nil, "required"=>true, "deprecated"=>false, "enum"=>["enabled", "disabled", "inherited"]}] },
|
181
|
+
"LOCK_OR_UNLOCK_CURRENT_CSP_SETTINGS_FOR_SUB_ACCOUNTS_AND_COURSES" => { uri: ->(account_id:) { "accounts/#{account_id}/csp_settings/lock" }, method: "PUT", parameters: [{"paramType"=>"path", "name"=>"account_id", "type"=>"string", "format"=>nil, "required"=>true, "deprecated"=>false}, {"paramType"=>"form", "name"=>"settings_locked", "type"=>"boolean", "format"=>nil, "required"=>true, "deprecated"=>false}] },
|
181
182
|
"ADD_DOMAIN_TO_ACCOUNT_WHITELIST" => { uri: ->(account_id:) { "accounts/#{account_id}/csp_settings/domains" }, method: "POST", parameters: [{"paramType"=>"path", "name"=>"account_id", "type"=>"string", "format"=>nil, "required"=>true, "deprecated"=>false}, {"paramType"=>"form", "name"=>"domain", "type"=>"string", "format"=>nil, "required"=>true, "deprecated"=>false}] },
|
182
183
|
"ADD_MULTIPLE_DOMAINS_TO_ACCOUNT_WHITELIST" => { uri: ->(account_id:) { "accounts/#{account_id}/csp_settings/domains/batch_create" }, method: "POST", parameters: [{"paramType"=>"path", "name"=>"account_id", "type"=>"string", "format"=>nil, "required"=>true, "deprecated"=>false}, {"paramType"=>"form", "name"=>"domains", "type"=>"Array", "format"=>nil, "required"=>true, "deprecated"=>false}] },
|
183
184
|
"REMOVE_DOMAIN_FROM_ACCOUNT_WHITELIST" => { uri: ->(account_id:) { "accounts/#{account_id}/csp_settings/domains" }, method: "DELETE", parameters: [{"paramType"=>"path", "name"=>"account_id", "type"=>"string", "format"=>nil, "required"=>true, "deprecated"=>false}, {"paramType"=>"query", "name"=>"domain", "type"=>"string", "format"=>nil, "required"=>true, "deprecated"=>false}] },
|
data/lib/lms/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: lms-api
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.12.
|
4
|
+
version: 1.12.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Atomic Jolt
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2019-
|
13
|
+
date: 2019-10-10 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: activesupport
|
@@ -118,6 +118,8 @@ files:
|
|
118
118
|
- lib/canvas_api/templates/constants.erb
|
119
119
|
- lib/canvas_api/templates/course_id_required.erb
|
120
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
|
121
123
|
- lib/canvas_api/templates/ex_url.erb
|
122
124
|
- lib/canvas_api/templates/ex_urls.erb
|
123
125
|
- lib/canvas_api/templates/js_graphql_model.erb
|
@@ -167,7 +169,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
167
169
|
version: '0'
|
168
170
|
requirements: []
|
169
171
|
rubyforge_project:
|
170
|
-
rubygems_version: 2.6.
|
172
|
+
rubygems_version: 2.6.14.4
|
171
173
|
signing_key:
|
172
174
|
specification_version: 4
|
173
175
|
summary: Wrapper for the Instructure Canvas API
|