grape-swagger-rails 0.5.0 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.github/workflows/danger.yml +1 -1
- data/.github/workflows/head.yml +13 -10
- data/.github/workflows/rubocop.yml +1 -1
- data/.github/workflows/test.yml +23 -14
- data/.rubocop_todo.yml +5 -11
- data/CHANGELOG.md +12 -0
- data/Gemfile +12 -3
- data/README.md +3 -39
- data/app/assets/stylesheets/grape_swagger_rails/application.css +1 -1
- data/app/assets/stylesheets/grape_swagger_rails/screen-propshaft.css +1489 -0
- data/app/views/grape_swagger_rails/application/index.html.erb +23 -2
- data/grape-swagger-rails.gemspec +1 -0
- data/lib/grape-swagger-rails/engine.rb +15 -0
- data/lib/grape-swagger-rails/version.rb +1 -1
- data/lib/grape-swagger-rails.rb +8 -2
- data/lib/tasks/swagger_ui.rake +4 -4
- data/spec/dummy/app/assets/config/manifest.js +0 -1
- data/spec/features/swagger_spec.rb +11 -9
- data/spec/spec_helper.rb +9 -0
- metadata +20 -8
- /data/app/assets/stylesheets/grape_swagger_rails/{screen.css.erb → screen-sprockets.css.erb} +0 -0
@@ -4,8 +4,29 @@
|
|
4
4
|
<title><%= GrapeSwaggerRails.options.app_name || 'Swagger UI' %></title>
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
6
6
|
<link href='//fonts.googleapis.com/css?family=Droid+Sans:400,700' rel='stylesheet' type='text/css'/>
|
7
|
-
|
8
|
-
|
7
|
+
<% if defined?(Propshaft::Railtie) && Rails.application.assets.is_a?(Propshaft::Assembly) %>
|
8
|
+
<%= stylesheet_link_tag 'grape_swagger_rails/reset', media: 'all' %>
|
9
|
+
<%= stylesheet_link_tag 'grape_swagger_rails/screen-propshaft', media: 'all' %>
|
10
|
+
|
11
|
+
<%= javascript_include_tag 'grape_swagger_rails/jquery-1.8.0.min' %>
|
12
|
+
<%= javascript_include_tag 'grape_swagger_rails/jquery.slideto.min' %>
|
13
|
+
<%= javascript_include_tag 'grape_swagger_rails/jquery.wiggle.min' %>
|
14
|
+
<%= javascript_include_tag 'grape_swagger_rails/jquery.ba-bbq.min' %>
|
15
|
+
<%= javascript_include_tag 'grape_swagger_rails/handlebars-2.0.0' %>
|
16
|
+
<%= javascript_include_tag 'grape_swagger_rails/marked' %>
|
17
|
+
<%= javascript_include_tag 'grape_swagger_rails/lodash.min' %>
|
18
|
+
<%= javascript_include_tag 'grape_swagger_rails/backbone-min' %>
|
19
|
+
<%= javascript_include_tag 'grape_swagger_rails/swagger-ui.min' %>
|
20
|
+
<%= javascript_include_tag 'grape_swagger_rails/highlight.9.1.0.pack' %>
|
21
|
+
<%= javascript_include_tag 'grape_swagger_rails/js-yaml.min' %>
|
22
|
+
<%= javascript_include_tag 'grape_swagger_rails/jsoneditor.min' %>
|
23
|
+
<%= javascript_include_tag 'grape_swagger_rails/object-assign-pollyfill' %>
|
24
|
+
<%= javascript_include_tag 'grape_swagger_rails/swagger-oauth' %>
|
25
|
+
<%= javascript_include_tag 'grape_swagger_rails/base64' %>
|
26
|
+
<% else %>
|
27
|
+
<%= stylesheet_link_tag 'grape_swagger_rails/application', media: 'all' %>
|
28
|
+
<%= javascript_include_tag 'grape_swagger_rails/application' %>
|
29
|
+
<% end %>
|
9
30
|
<script type="text/javascript">
|
10
31
|
$(function () {
|
11
32
|
var options = $("html").data('swagger-options');
|
data/grape-swagger-rails.gemspec
CHANGED
@@ -15,6 +15,7 @@ Gem::Specification.new do |spec|
|
|
15
15
|
spec.license = 'MIT'
|
16
16
|
spec.files = `git ls-files`.split($INPUT_RECORD_SEPARATOR)
|
17
17
|
spec.require_paths = %w[lib]
|
18
|
+
spec.add_dependency 'ostruct'
|
18
19
|
spec.add_dependency 'railties', '>= 6.0.6.1'
|
19
20
|
spec.metadata = {
|
20
21
|
'bug_tracker_uri' => 'https://github.com/ruby-grape/grape-swagger-rails/issues',
|
@@ -3,6 +3,21 @@
|
|
3
3
|
module GrapeSwaggerRails
|
4
4
|
class Engine < ::Rails::Engine
|
5
5
|
paths['lib/tasks'] = 'lib/tasks/exported'
|
6
|
+
|
6
7
|
isolate_namespace GrapeSwaggerRails
|
8
|
+
|
9
|
+
initializer 'grape_swagger_rails.assets', group: :all do |app|
|
10
|
+
if app.config.respond_to?(:assets) && defined?(Sprockets)
|
11
|
+
sprockets_4_or_later = Gem::Version.new(Sprockets::VERSION) >= Gem::Version.new('4')
|
12
|
+
|
13
|
+
[
|
14
|
+
'grape_swagger_rails/application.js',
|
15
|
+
'grape_swagger_rails/application.css',
|
16
|
+
'grape_swagger_rails/favicon.ico'
|
17
|
+
].each do |asset_path|
|
18
|
+
app.config.assets.precompile << (sprockets_4_or_later ? asset_path : proc { |path| path == asset_path })
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
7
22
|
end
|
8
23
|
end
|
data/lib/grape-swagger-rails.rb
CHANGED
@@ -6,8 +6,10 @@ require 'ostruct'
|
|
6
6
|
module GrapeSwaggerRails
|
7
7
|
class Options < OpenStruct
|
8
8
|
def before_filter(&block)
|
9
|
-
|
10
|
-
|
9
|
+
GrapeSwaggerRails.deprecator.warn(
|
10
|
+
'This option is deprecated and going to be removed in 1.0.0. ' \
|
11
|
+
'Please use `before_action` instead'
|
12
|
+
)
|
11
13
|
before_action(&block)
|
12
14
|
end
|
13
15
|
|
@@ -43,4 +45,8 @@ module GrapeSwaggerRails
|
|
43
45
|
hide_url_input: false,
|
44
46
|
hide_api_key_input: false
|
45
47
|
)
|
48
|
+
|
49
|
+
def self.deprecator
|
50
|
+
@deprecator ||= ActiveSupport::Deprecation.new('1.0', 'GrapeSwaggerRails')
|
51
|
+
end
|
46
52
|
end
|
data/lib/tasks/swagger_ui.rake
CHANGED
@@ -40,9 +40,9 @@ namespace :swagger_ui do
|
|
40
40
|
'swagger-oauth.js',
|
41
41
|
'base64.js'
|
42
42
|
].freeze
|
43
|
-
javascript_files = Dir["#{root}/app/assets/javascripts/grape_swagger_rails/*.js"].map
|
43
|
+
javascript_files = Dir["#{root}/app/assets/javascripts/grape_swagger_rails/*.js"].map do |f|
|
44
44
|
f.split('/').last
|
45
|
-
|
45
|
+
end - ['application.js']
|
46
46
|
(javascript_files - JAVASCRIPT_FILES).each do |filename|
|
47
47
|
puts "WARNING: add #{filename} to swagger_ui.rake"
|
48
48
|
end
|
@@ -65,9 +65,9 @@ namespace :swagger_ui do
|
|
65
65
|
'reset.css',
|
66
66
|
'screen.css'
|
67
67
|
].freeze
|
68
|
-
css_files = Dir["#{root}/app/assets/stylesheets/grape_swagger_rails/*.css"].map
|
68
|
+
css_files = Dir["#{root}/app/assets/stylesheets/grape_swagger_rails/*.css"].map do |f|
|
69
69
|
f.split('/').last
|
70
|
-
|
70
|
+
end - ['application.css']
|
71
71
|
(css_files - CSS_FILES).each do |filename|
|
72
72
|
puts "WARNING: add #{filename} to swagger_ui.rake"
|
73
73
|
end
|
@@ -51,7 +51,7 @@ describe 'Swagger' do
|
|
51
51
|
find_by_id('endpointListTogger_headers', visible: true).click
|
52
52
|
first('span[class="http_method"] a', visible: true).click
|
53
53
|
click_button 'Try it out!'
|
54
|
-
expect(page).to have_css 'span.hljs-attr', text:
|
54
|
+
expect(page).to have_css 'span.hljs-attr', text: /X-Test-Header/i
|
55
55
|
expect(page).to have_css 'span.hljs-string', text: 'Test Value'
|
56
56
|
end
|
57
57
|
|
@@ -59,9 +59,9 @@ describe 'Swagger' do
|
|
59
59
|
find_by_id('endpointListTogger_headers', visible: true).click
|
60
60
|
first('span[class="http_method"] a', visible: true).click
|
61
61
|
click_button 'Try it out!'
|
62
|
-
expect(page).to have_css 'span.hljs-attr', text:
|
62
|
+
expect(page).to have_css 'span.hljs-attr', text: /X-Test-Header/i
|
63
63
|
expect(page).to have_css 'span.hljs-string', text: 'Test Value'
|
64
|
-
expect(page).to have_css 'span.hljs-attr', text:
|
64
|
+
expect(page).to have_css 'span.hljs-attr', text: /X-Another-Header/i
|
65
65
|
expect(page).to have_css 'span.hljs-string', text: 'Another Value'
|
66
66
|
end
|
67
67
|
end
|
@@ -108,7 +108,7 @@ describe 'Swagger' do
|
|
108
108
|
find_by_id('endpointListTogger_headers', visible: true).click
|
109
109
|
first('span[class="http_method"] a', visible: true).click
|
110
110
|
click_button 'Try it out!'
|
111
|
-
expect(page).to have_css 'span.hljs-attr', text:
|
111
|
+
expect(page).to have_css 'span.hljs-attr', text: /Authorization/i
|
112
112
|
expect(page).to have_css 'span.hljs-string', text: "Basic #{Base64.encode64('username:password').strip}"
|
113
113
|
end
|
114
114
|
end
|
@@ -127,7 +127,7 @@ describe 'Swagger' do
|
|
127
127
|
find_by_id('endpointListTogger_headers', visible: true).click
|
128
128
|
first('span[class="http_method"] a', visible: true).click
|
129
129
|
click_button 'Try it out!'
|
130
|
-
expect(page).to have_css 'span.hljs-attr', text:
|
130
|
+
expect(page).to have_css 'span.hljs-attr', text: /Authorization/i
|
131
131
|
expect(page).to have_css 'span.hljs-string', text: 'Bearer token'
|
132
132
|
end
|
133
133
|
end
|
@@ -146,7 +146,7 @@ describe 'Swagger' do
|
|
146
146
|
find_by_id('endpointListTogger_headers', visible: true).click
|
147
147
|
first('span[class="http_method"] a', visible: true).click
|
148
148
|
click_button 'Try it out!'
|
149
|
-
expect(page).to have_css 'span.hljs-attr', text:
|
149
|
+
expect(page).to have_css 'span.hljs-attr', text: /Authorization/i
|
150
150
|
expect(page).to have_css 'span.hljs-string', text: 'Token token'
|
151
151
|
end
|
152
152
|
end
|
@@ -171,14 +171,16 @@ describe 'Swagger' do
|
|
171
171
|
|
172
172
|
describe '#before_filter' do
|
173
173
|
before do
|
174
|
-
allow(
|
174
|
+
allow(GrapeSwaggerRails.deprecator).to receive(:warn)
|
175
175
|
end
|
176
176
|
|
177
177
|
it 'throws deprecation warning' do
|
178
178
|
GrapeSwaggerRails.options.before_filter { true }
|
179
179
|
|
180
|
-
expect(
|
181
|
-
|
180
|
+
expect(GrapeSwaggerRails.deprecator).to have_received(:warn).with(
|
181
|
+
'This option is deprecated and going to be removed in 1.0.0. ' \
|
182
|
+
'Please use `before_action` instead'
|
183
|
+
)
|
182
184
|
end
|
183
185
|
end
|
184
186
|
|
data/spec/spec_helper.rb
CHANGED
@@ -2,6 +2,15 @@
|
|
2
2
|
|
3
3
|
ENV['RAILS_ENV'] ||= 'test'
|
4
4
|
|
5
|
+
asset_pipeline = ENV.fetch('ASSET_PIPELINE', 'sprockets')
|
6
|
+
case asset_pipeline
|
7
|
+
when 'propshaft'
|
8
|
+
require 'rails/railtie'
|
9
|
+
require 'propshaft'
|
10
|
+
else
|
11
|
+
require 'sprockets/railtie'
|
12
|
+
end
|
13
|
+
|
5
14
|
require File.expand_path('dummy/config/environment.rb', __dir__)
|
6
15
|
require 'rspec/rails'
|
7
16
|
|
metadata
CHANGED
@@ -1,15 +1,28 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: grape-swagger-rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.7.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Alexander Logunov
|
8
|
-
autorequire:
|
9
8
|
bindir: bin
|
10
9
|
cert_chain: []
|
11
|
-
date:
|
10
|
+
date: 1980-01-02 00:00:00.000000000 Z
|
12
11
|
dependencies:
|
12
|
+
- !ruby/object:Gem::Dependency
|
13
|
+
name: ostruct
|
14
|
+
requirement: !ruby/object:Gem::Requirement
|
15
|
+
requirements:
|
16
|
+
- - ">="
|
17
|
+
- !ruby/object:Gem::Version
|
18
|
+
version: '0'
|
19
|
+
type: :runtime
|
20
|
+
prerelease: false
|
21
|
+
version_requirements: !ruby/object:Gem::Requirement
|
22
|
+
requirements:
|
23
|
+
- - ">="
|
24
|
+
- !ruby/object:Gem::Version
|
25
|
+
version: '0'
|
13
26
|
- !ruby/object:Gem::Dependency
|
14
27
|
name: railties
|
15
28
|
requirement: !ruby/object:Gem::Requirement
|
@@ -81,7 +94,8 @@ files:
|
|
81
94
|
- app/assets/stylesheets/grape_swagger_rails/application.css
|
82
95
|
- app/assets/stylesheets/grape_swagger_rails/print.css
|
83
96
|
- app/assets/stylesheets/grape_swagger_rails/reset.css
|
84
|
-
- app/assets/stylesheets/grape_swagger_rails/screen.css
|
97
|
+
- app/assets/stylesheets/grape_swagger_rails/screen-propshaft.css
|
98
|
+
- app/assets/stylesheets/grape_swagger_rails/screen-sprockets.css.erb
|
85
99
|
- app/assets/stylesheets/grape_swagger_rails/style.css
|
86
100
|
- app/assets/stylesheets/grape_swagger_rails/typography.css
|
87
101
|
- app/controllers/grape_swagger_rails/application_controller.rb
|
@@ -139,9 +153,8 @@ licenses:
|
|
139
153
|
metadata:
|
140
154
|
bug_tracker_uri: https://github.com/ruby-grape/grape-swagger-rails/issues
|
141
155
|
changelog_uri: https://github.com/ruby-grape/grape-swagger-rails/blob/master/CHANGELOG.md
|
142
|
-
source_code_uri: https://github.com/ruby-grape/grape-swagger-rails/tree/v0.
|
156
|
+
source_code_uri: https://github.com/ruby-grape/grape-swagger-rails/tree/v0.7.0
|
143
157
|
rubygems_mfa_required: 'true'
|
144
|
-
post_install_message:
|
145
158
|
rdoc_options: []
|
146
159
|
require_paths:
|
147
160
|
- lib
|
@@ -156,8 +169,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
156
169
|
- !ruby/object:Gem::Version
|
157
170
|
version: '0'
|
158
171
|
requirements: []
|
159
|
-
rubygems_version: 3.
|
160
|
-
signing_key:
|
172
|
+
rubygems_version: 3.6.9
|
161
173
|
specification_version: 4
|
162
174
|
summary: Swagger UI as Rails Engine for grape-swagger gem.
|
163
175
|
test_files: []
|
/data/app/assets/stylesheets/grape_swagger_rails/{screen.css.erb → screen-sprockets.css.erb}
RENAMED
File without changes
|