rails-rapido 0.9.2 → 0.9.3
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/.rubocop.yml +1 -1
- data/lib/rapido/api_controller.rb +29 -18
- data/lib/rapido/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c62492980ddb246461582385eb1c9fa069b025ccbd39c4ae94189d33bafc836a
|
4
|
+
data.tar.gz: 14eb7a3269938509bb01ca8517cf68398445f05b6b93c92e918516e8c7c2aabd
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 05e5f8e6d38877005df077ab7b767c890158ba7a0be2f48130e0e16a41e5973f1ae4f16e40291f56481c9218425b9548707f22aeab2125b543515264d12f54eb
|
7
|
+
data.tar.gz: 26916c6b6672d778eec56db5fb1b52d1a03c805655a80322de84c5c8137a7ddc606c73d8bd7ad4a432aa557f849e0be2dcb01a56276a3459d399c8663210bf93
|
data/.rubocop.yml
CHANGED
@@ -22,19 +22,19 @@ module Rapido
|
|
22
22
|
|
23
23
|
def index
|
24
24
|
return if performed?
|
25
|
-
render json:
|
25
|
+
render json: resource_collection_presenter
|
26
26
|
end
|
27
27
|
|
28
28
|
def show
|
29
29
|
return if performed?
|
30
30
|
if request.format.to_sym == :json
|
31
|
-
render json:
|
31
|
+
render json: resource_presenter
|
32
32
|
elsif request.format.to_sym == :xml
|
33
|
-
render xml:
|
34
|
-
elsif request.format.
|
35
|
-
render plain:
|
33
|
+
render xml: resource_presenter
|
34
|
+
elsif request.format.to_sym == :csv
|
35
|
+
render plain: resource_presenter.send("to_csv")
|
36
36
|
else
|
37
|
-
render json:
|
37
|
+
render json: resource_presenter
|
38
38
|
end
|
39
39
|
end
|
40
40
|
|
@@ -46,7 +46,7 @@ module Rapido
|
|
46
46
|
if new_resource.save
|
47
47
|
after_create_success(new_resource)
|
48
48
|
return if performed?
|
49
|
-
render json:
|
49
|
+
render json: resource_presenter(new_resource), status: :created
|
50
50
|
else
|
51
51
|
after_create_failure(new_resource)
|
52
52
|
return if performed?
|
@@ -56,7 +56,7 @@ module Rapido
|
|
56
56
|
|
57
57
|
def destroy
|
58
58
|
return if performed?
|
59
|
-
resource_before_destruction =
|
59
|
+
resource_before_destruction = resource_presenter
|
60
60
|
before_destroy
|
61
61
|
resource.destroy
|
62
62
|
after_destroy_success
|
@@ -72,7 +72,7 @@ module Rapido
|
|
72
72
|
if resource.save
|
73
73
|
after_update_success
|
74
74
|
return if performed?
|
75
|
-
render json:
|
75
|
+
render json: resource_presenter
|
76
76
|
else
|
77
77
|
after_update_failure
|
78
78
|
return if performed?
|
@@ -117,17 +117,28 @@ module Rapido
|
|
117
117
|
head :unauthorized unless allowed_actions.include?(params[:action].to_sym)
|
118
118
|
end
|
119
119
|
|
120
|
-
def
|
121
|
-
|
122
|
-
|
123
|
-
|
120
|
+
def resource_presenter(new_resource = nil)
|
121
|
+
@resource_presenter ||= begin
|
122
|
+
args = presenter_args.nil? ? nil : presenter_args.map { |arg| params[arg] }
|
123
|
+
if presenter
|
124
|
+
presenter.new(new_resource || resource, *args)
|
125
|
+
else
|
126
|
+
(new_resource || resource).to_h
|
127
|
+
end
|
128
|
+
end
|
124
129
|
end
|
125
130
|
|
126
|
-
def
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
+
def resource_collection_presenter
|
132
|
+
@resource_collection_presenter ||= begin
|
133
|
+
args = collection_presenter_args.nil? ? nil : collection_presenter_args.map { |arg| params[arg] }
|
134
|
+
if collection_presenter
|
135
|
+
collection_presenter.new(resource_collection, *args)
|
136
|
+
elsif presenter
|
137
|
+
resource_collection.map { |r| presenter.new(r) }
|
138
|
+
else
|
139
|
+
resource_collection.map(&:to_h)
|
140
|
+
end
|
141
|
+
end
|
131
142
|
end
|
132
143
|
end
|
133
144
|
end
|
data/lib/rapido/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rails-rapido
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.9.
|
4
|
+
version: 0.9.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jonathan Kirst
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-02-
|
11
|
+
date: 2021-02-11 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|