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.
@@ -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: []