to_api 1.2.1 → 1.3.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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
@@ -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
- def to_api(*includes)
117
- map{|e|
118
- e.to_api_filters = to_api_filters if to_api_filters.any? && e.respond_to?(:to_api_filters)
119
- e.to_api_filters = to_api_filters if e.respond_to?(:to_api_filters)
120
- e.to_api(*includes)
121
- }
122
- end
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
- def to_api(*includes)
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
@@ -1,3 +1,3 @@
1
1
  module ToApi
2
- VERSION = "1.2.1"
2
+ VERSION = "1.3.0"
3
3
  end
@@ -9,7 +9,7 @@ class FakeRecord < ActiveRecord::Base
9
9
  if respond_to?(:named_scope)
10
10
  named_scope :scopez, :conditions => '1=1'
11
11
  else
12
- scope :scopez, :conditions => '1=1'
12
+ scope :scopez, -> { where '1=1' }
13
13
  end
14
14
 
15
15
  attr_accessor :yarg
@@ -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", ["3.2.15"]
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.2.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: 2013-11-26 00:00:00.000000000 Z
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: 3.2.15
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: 3.2.15
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: 1.8.23
121
+ rubygems_version: 2.4.5.1
134
122
  signing_key:
135
- specification_version: 3
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: []