to_api 1.2.1 → 1.3.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 +7 -0
- data/lib/to_api.rb +26 -16
- data/lib/to_api/version.rb +1 -1
- data/spec/to_api_spec.rb +1 -1
- data/to_api.gemspec +2 -1
- metadata +18 -32
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 383641504ea469fcd5c52628a77add7e9f145f8f
|
4
|
+
data.tar.gz: b3a3c7fea117fb69d3e49899f36eabc295d0a5c1
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: a4220c067c139ca7054ff74120ca389b59d615c4aa31ecc7055d2d39d2b15ee5596b5187b2b27bb00cb7c1bc0ac1b98ebc8348e34baefc63abeb7a29616d8c14
|
7
|
+
data.tar.gz: 1deef44cefae4a0dd6361445f245f3df32f8d75b30bbfa33a0097f4d073bdd2116676633d942ec56861fb58bd5f83a982173750172924fa0f5ef29cad07c918d
|
data/lib/to_api.rb
CHANGED
@@ -23,6 +23,15 @@ module ToApiInstanceMethods
|
|
23
23
|
end
|
24
24
|
end
|
25
25
|
|
26
|
+
module ToApiMultiple
|
27
|
+
def to_api(*includes)
|
28
|
+
map{|e|
|
29
|
+
e.to_api_filters = to_api_filters if to_api_filters.any? && e.respond_to?(:to_api_filters)
|
30
|
+
e.to_api(*includes)
|
31
|
+
}
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
26
35
|
module ToApiFilter
|
27
36
|
def add_to_api_filter(include_name, &block)
|
28
37
|
@_to_api_filters ||= {}
|
@@ -106,33 +115,34 @@ if Object.const_defined? :ActiveRecord
|
|
106
115
|
end
|
107
116
|
include_hash
|
108
117
|
end
|
109
|
-
|
110
118
|
end
|
111
|
-
|
119
|
+
|
112
120
|
if defined?(ActiveRecord::NamedScope)
|
113
121
|
#Sadly, Scope isn't enumerable
|
114
122
|
class ActiveRecord::NamedScope::Scope
|
115
123
|
include ToApiFilter
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
124
|
+
include ToApiMultiple
|
125
|
+
end
|
126
|
+
end
|
127
|
+
|
128
|
+
if defined?(ActiveRecord::Associations::CollectionProxy)
|
129
|
+
class ActiveRecord::Associations::CollectionProxy
|
130
|
+
include ToApiFilter
|
131
|
+
include ToApiMultiple
|
132
|
+
end
|
133
|
+
end
|
134
|
+
|
135
|
+
if defined?(ActiveRecord::Relation)
|
136
|
+
class ActiveRecord::Relation
|
137
|
+
include ToApiFilter
|
138
|
+
include ToApiMultiple
|
123
139
|
end
|
124
140
|
end
|
125
141
|
end
|
126
142
|
|
127
143
|
class Array
|
128
144
|
include ToApiFilter
|
129
|
-
|
130
|
-
map{|e|
|
131
|
-
e.to_api_filters = to_api_filters if to_api_filters.any? && e.respond_to?(:to_api_filters)
|
132
|
-
|
133
|
-
e.to_api(*includes)
|
134
|
-
}
|
135
|
-
end
|
145
|
+
include ToApiMultiple
|
136
146
|
end
|
137
147
|
|
138
148
|
class Hash
|
data/lib/to_api/version.rb
CHANGED
data/spec/to_api_spec.rb
CHANGED
data/to_api.gemspec
CHANGED
@@ -19,7 +19,8 @@ Gem::Specification.new do |s|
|
|
19
19
|
s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
|
20
20
|
s.require_paths = ["lib"]
|
21
21
|
|
22
|
-
s.add_development_dependency "activerecord", ["
|
22
|
+
s.add_development_dependency "activerecord", ["5.0.1"]
|
23
|
+
# s.add_development_dependency "activerecord", ["3.2.15"]
|
23
24
|
# s.add_development_dependency "activerecord", [">= 2.3", "< 3"]
|
24
25
|
s.add_development_dependency "rspec", "= 2.14.1"
|
25
26
|
s.add_development_dependency "rake", ">= 0.8.7"
|
metadata
CHANGED
@@ -1,8 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: to_api
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
5
|
-
prerelease:
|
4
|
+
version: 1.3.0
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Shawn Anderson
|
@@ -10,28 +9,25 @@ authors:
|
|
10
9
|
autorequire:
|
11
10
|
bindir: bin
|
12
11
|
cert_chain: []
|
13
|
-
date:
|
12
|
+
date: 2017-01-20 00:00:00.000000000 Z
|
14
13
|
dependencies:
|
15
14
|
- !ruby/object:Gem::Dependency
|
16
15
|
name: activerecord
|
17
16
|
requirement: !ruby/object:Gem::Requirement
|
18
|
-
none: false
|
19
17
|
requirements:
|
20
18
|
- - '='
|
21
19
|
- !ruby/object:Gem::Version
|
22
|
-
version:
|
20
|
+
version: 5.0.1
|
23
21
|
type: :development
|
24
22
|
prerelease: false
|
25
23
|
version_requirements: !ruby/object:Gem::Requirement
|
26
|
-
none: false
|
27
24
|
requirements:
|
28
25
|
- - '='
|
29
26
|
- !ruby/object:Gem::Version
|
30
|
-
version:
|
27
|
+
version: 5.0.1
|
31
28
|
- !ruby/object:Gem::Dependency
|
32
29
|
name: rspec
|
33
30
|
requirement: !ruby/object:Gem::Requirement
|
34
|
-
none: false
|
35
31
|
requirements:
|
36
32
|
- - '='
|
37
33
|
- !ruby/object:Gem::Version
|
@@ -39,7 +35,6 @@ dependencies:
|
|
39
35
|
type: :development
|
40
36
|
prerelease: false
|
41
37
|
version_requirements: !ruby/object:Gem::Requirement
|
42
|
-
none: false
|
43
38
|
requirements:
|
44
39
|
- - '='
|
45
40
|
- !ruby/object:Gem::Version
|
@@ -47,49 +42,43 @@ dependencies:
|
|
47
42
|
- !ruby/object:Gem::Dependency
|
48
43
|
name: rake
|
49
44
|
requirement: !ruby/object:Gem::Requirement
|
50
|
-
none: false
|
51
45
|
requirements:
|
52
|
-
- -
|
46
|
+
- - ">="
|
53
47
|
- !ruby/object:Gem::Version
|
54
48
|
version: 0.8.7
|
55
49
|
type: :development
|
56
50
|
prerelease: false
|
57
51
|
version_requirements: !ruby/object:Gem::Requirement
|
58
|
-
none: false
|
59
52
|
requirements:
|
60
|
-
- -
|
53
|
+
- - ">="
|
61
54
|
- !ruby/object:Gem::Version
|
62
55
|
version: 0.8.7
|
63
56
|
- !ruby/object:Gem::Dependency
|
64
57
|
name: pry
|
65
58
|
requirement: !ruby/object:Gem::Requirement
|
66
|
-
none: false
|
67
59
|
requirements:
|
68
|
-
- -
|
60
|
+
- - ">="
|
69
61
|
- !ruby/object:Gem::Version
|
70
62
|
version: '0'
|
71
63
|
type: :development
|
72
64
|
prerelease: false
|
73
65
|
version_requirements: !ruby/object:Gem::Requirement
|
74
|
-
none: false
|
75
66
|
requirements:
|
76
|
-
- -
|
67
|
+
- - ">="
|
77
68
|
- !ruby/object:Gem::Version
|
78
69
|
version: '0'
|
79
70
|
- !ruby/object:Gem::Dependency
|
80
71
|
name: sqlite3
|
81
72
|
requirement: !ruby/object:Gem::Requirement
|
82
|
-
none: false
|
83
73
|
requirements:
|
84
|
-
- -
|
74
|
+
- - ">="
|
85
75
|
- !ruby/object:Gem::Version
|
86
76
|
version: '0'
|
87
77
|
type: :development
|
88
78
|
prerelease: false
|
89
79
|
version_requirements: !ruby/object:Gem::Requirement
|
90
|
-
none: false
|
91
80
|
requirements:
|
92
|
-
- -
|
81
|
+
- - ">="
|
93
82
|
- !ruby/object:Gem::Version
|
94
83
|
version: '0'
|
95
84
|
description: Helper for simplifying JSON api creation.
|
@@ -100,8 +89,8 @@ executables: []
|
|
100
89
|
extensions: []
|
101
90
|
extra_rdoc_files: []
|
102
91
|
files:
|
103
|
-
- .gitignore
|
104
|
-
- .ruby-version
|
92
|
+
- ".gitignore"
|
93
|
+
- ".ruby-version"
|
105
94
|
- Gemfile
|
106
95
|
- README.md
|
107
96
|
- Rakefile
|
@@ -112,28 +101,25 @@ files:
|
|
112
101
|
- to_api.gemspec
|
113
102
|
homepage: http://github.com/atomicobject/to_api
|
114
103
|
licenses: []
|
104
|
+
metadata: {}
|
115
105
|
post_install_message:
|
116
106
|
rdoc_options: []
|
117
107
|
require_paths:
|
118
108
|
- lib
|
119
109
|
required_ruby_version: !ruby/object:Gem::Requirement
|
120
|
-
none: false
|
121
110
|
requirements:
|
122
|
-
- -
|
111
|
+
- - ">="
|
123
112
|
- !ruby/object:Gem::Version
|
124
113
|
version: '0'
|
125
114
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
126
|
-
none: false
|
127
115
|
requirements:
|
128
|
-
- -
|
116
|
+
- - ">="
|
129
117
|
- !ruby/object:Gem::Version
|
130
118
|
version: '0'
|
131
119
|
requirements: []
|
132
120
|
rubyforge_project: to_api
|
133
|
-
rubygems_version:
|
121
|
+
rubygems_version: 2.4.5.1
|
134
122
|
signing_key:
|
135
|
-
specification_version:
|
123
|
+
specification_version: 4
|
136
124
|
summary: Helper for simplifying JSON api creation
|
137
|
-
test_files:
|
138
|
-
- spec/spec_helper.rb
|
139
|
-
- spec/to_api_spec.rb
|
125
|
+
test_files: []
|