jsonapionify 0.11.0 → 0.11.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -13
- data/lib/jsonapionify/api/relationship.rb +1 -1
- data/lib/jsonapionify/api/resource/builders.rb +5 -1
- data/lib/jsonapionify/api/resource/builders/id_builder.rb +16 -0
- data/lib/jsonapionify/api/resource/builders/identity_helper.rb +1 -1
- data/lib/jsonapionify/api/resource/builders/resource_builder.rb +1 -1
- data/lib/jsonapionify/api/resource/builders/resource_identifer_builder.rb +1 -1
- data/lib/jsonapionify/api/resource/defaults/request_contexts.rb +1 -1
- data/lib/jsonapionify/api/resource/definitions/relationships.rb +5 -4
- data/lib/jsonapionify/api/resource/definitions/sorting.rb +2 -2
- data/lib/jsonapionify/api/sort_field.rb +2 -2
- data/lib/jsonapionify/api/sort_field_set.rb +2 -2
- data/lib/jsonapionify/structure/collections/base.rb +2 -2
- data/lib/jsonapionify/structure/helpers/validations.rb +4 -4
- data/lib/jsonapionify/structure/maps/relationships.rb +1 -1
- data/lib/jsonapionify/structure/objects/attributes.rb +1 -1
- data/lib/jsonapionify/structure/objects/base.rb +6 -8
- data/lib/jsonapionify/structure/objects/top_level.rb +1 -1
- data/lib/jsonapionify/version.rb +1 -1
- metadata +82 -81
checksums.yaml
CHANGED
@@ -1,15 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
|
5
|
-
data.tar.gz: !binary |-
|
6
|
-
Yzg1ZmQyZmViOWZhYjM1MjQxOGUwZDc3YjdjMzJkYzdmZWUzMjJlZg==
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: b7ed091a181d1e53eda2052540430254aedd7e15
|
4
|
+
data.tar.gz: 61641fb19edace65a33e71f1688c94549e41c831
|
7
5
|
SHA512:
|
8
|
-
metadata.gz:
|
9
|
-
|
10
|
-
Nzc1Njk0MTYzMTAxOTM4ODQ4NTVhZjljY2YyYTI3NTRiM2U4MjM5YWEzMThi
|
11
|
-
OThkYmMyODc0MDA3YTcwODllZTVlZTZkZTE4OTdkOTRjNGI4ZTg=
|
12
|
-
data.tar.gz: !binary |-
|
13
|
-
MGYxNzUyZDcwMjdkMmY5MDUyMmQwZThjNGY2MzRiODRlZjUwMjQxZWNkYWZm
|
14
|
-
Yzc2OGZhNDEzNTU1NTg0MGFmNGZjZjg4Yzc3MDI1ZWJlYWFiOWI2YWE4OTNh
|
15
|
-
YzllY2E3YmEzYTVjNmFhYWI3YjQxZjRiMDVmNDA2NjdiYzg1OWM=
|
6
|
+
metadata.gz: 60c1fcce71f1fda4f2ad61f1492a73bb2abb46279ec25631ebb1e47c809e6df353ce7d9c4c662739f1dcbd1941ed60ea9ade3eb7519be79a2b5eb7a351a13390
|
7
|
+
data.tar.gz: 7dab56fc80cbfccfa9cc1f3b942aa68d89c71bbe959746fc5e52280bbc68fe3351c1809aa7bf27b454d7230390c2122055684494901fc57e2815d6d442b4789a
|
@@ -65,7 +65,7 @@ module JSONAPIonify::Api
|
|
65
65
|
|
66
66
|
attr_reader :owner, :class_proc, :name, :resolve, :hidden
|
67
67
|
|
68
|
-
def initialize(owner, name, resource: nil, includable: false, hidden: :
|
68
|
+
def initialize(owner, name, resource: nil, includable: false, hidden: :list, resolve: proc { |n, o| o.send(n) }, &block)
|
69
69
|
@class_proc = block || proc {}
|
70
70
|
@owner = owner
|
71
71
|
@name = name
|
@@ -24,7 +24,7 @@ module JSONAPIonify::Api
|
|
24
24
|
end
|
25
25
|
|
26
26
|
def build_resource_identifier(instance:)
|
27
|
-
|
27
|
+
ResourceIdentiferBuilder.build(self, instance: instance)
|
28
28
|
end
|
29
29
|
|
30
30
|
def build_resource_identifier_collection(collection:)
|
@@ -39,6 +39,10 @@ module JSONAPIonify::Api
|
|
39
39
|
CursorBuilder.build(self, **options)
|
40
40
|
end
|
41
41
|
|
42
|
+
def build_id(**options)
|
43
|
+
IdBuilder.build(self, **options)
|
44
|
+
end
|
45
|
+
|
42
46
|
end
|
43
47
|
|
44
48
|
delegated_methods = ClassMethods.instance_methods - instance_methods
|
@@ -0,0 +1,16 @@
|
|
1
|
+
module JSONAPIonify::Api
|
2
|
+
module Resource::Builders
|
3
|
+
class IdBuilder < BaseBuilder
|
4
|
+
attr_reader :instance
|
5
|
+
|
6
|
+
def initialize(resource, instance:)
|
7
|
+
super(resource)
|
8
|
+
@instance = instance
|
9
|
+
end
|
10
|
+
|
11
|
+
def build
|
12
|
+
instance.send(resource.id_attribute).to_s
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
@@ -1,6 +1,6 @@
|
|
1
1
|
module JSONAPIonify::Api
|
2
2
|
module Resource::Builders
|
3
|
-
class ResourceBuilder <
|
3
|
+
class ResourceBuilder < ResourceIdentiferBuilder
|
4
4
|
delegate :attributes, :relationships, :type, :relationship, to: :resource, prefix: true
|
5
5
|
delegate :params, :includes, :fields, :action_name, :request, to: :context
|
6
6
|
|
@@ -34,7 +34,7 @@ module JSONAPIonify::Api
|
|
34
34
|
self.attributes.each do |attr|
|
35
35
|
next unless attr.required_for_action?(action_name, context)
|
36
36
|
if attr.read? || context.id
|
37
|
-
example_id = self.build_id(context.instance)
|
37
|
+
example_id = self.build_id(instance: context.instance)
|
38
38
|
next unless attr.resolve(
|
39
39
|
context.instance, context, example_id: example_id
|
40
40
|
).nil?
|
@@ -8,11 +8,12 @@ module JSONAPIonify::Api
|
|
8
8
|
end
|
9
9
|
end
|
10
10
|
|
11
|
-
def relates_to_many(name, count_attribute: false,
|
11
|
+
def relates_to_many(name, count_attribute: false, count_hidden: false, **opts, &block)
|
12
12
|
define_relationship(name, Relationship::Many, **opts, &block).tap do
|
13
13
|
define_relationship_counter(
|
14
14
|
name,
|
15
|
-
count_attribute === true ? "#{name.to_s.singularize}_count" : count_attribute.to_s
|
15
|
+
count_attribute === true ? "#{name.to_s.singularize}_count" : count_attribute.to_s,
|
16
|
+
count_hidden
|
16
17
|
) if count_attribute
|
17
18
|
end
|
18
19
|
end
|
@@ -22,8 +23,8 @@ module JSONAPIonify::Api
|
|
22
23
|
define_relationship(name, Relationship::One, **opts, &block)
|
23
24
|
end
|
24
25
|
|
25
|
-
def define_relationship_counter(rel_name, name,
|
26
|
-
attribute name.to_sym, types.Integer, "The number of #{rel_name}.", write: false do |_, instance, context|
|
26
|
+
def define_relationship_counter(rel_name, name, hidden = false)
|
27
|
+
attribute name.to_sym, types.Integer, "The number of #{rel_name}.", hidden: hidden, write: false do |_, instance, context|
|
27
28
|
rel = context.resource.class.relationship(rel_name)
|
28
29
|
rel_context = rel.new(
|
29
30
|
request: context.request,
|
@@ -31,11 +31,11 @@ module JSONAPIonify::Api
|
|
31
31
|
end
|
32
32
|
|
33
33
|
define_sorting_strategy('Enumerable') do |collection, fields|
|
34
|
-
collection.to_a.deep_sort(fields.
|
34
|
+
collection.to_a.deep_sort(fields.to_h)
|
35
35
|
end
|
36
36
|
|
37
37
|
define_sorting_strategy('ActiveRecord::Relation') do |collection, fields|
|
38
|
-
collection.reorder(fields.
|
38
|
+
collection.reorder(fields.to_h).order(self.class.id_attribute)
|
39
39
|
end
|
40
40
|
|
41
41
|
end
|
@@ -1,6 +1,6 @@
|
|
1
1
|
module JSONAPIonify::Api
|
2
2
|
class SortField
|
3
|
-
delegate :to_s, :inspect, to: :
|
3
|
+
delegate :to_s, :inspect, to: :to_h
|
4
4
|
attr_reader :name, :order
|
5
5
|
|
6
6
|
def initialize(name)
|
@@ -69,7 +69,7 @@ module JSONAPIonify::Api
|
|
69
69
|
@str
|
70
70
|
end
|
71
71
|
|
72
|
-
def
|
72
|
+
def to_h
|
73
73
|
{ name => order }
|
74
74
|
end
|
75
75
|
|
@@ -48,7 +48,7 @@ module JSONAPIonify::Structure
|
|
48
48
|
map do |member|
|
49
49
|
case member
|
50
50
|
when Objects::Base, Hash
|
51
|
-
member.
|
51
|
+
member.to_h
|
52
52
|
else
|
53
53
|
member
|
54
54
|
end
|
@@ -74,7 +74,7 @@ module JSONAPIonify::Structure
|
|
74
74
|
instance
|
75
75
|
else
|
76
76
|
if type_class < instance.class
|
77
|
-
type_class.from_hash instance.
|
77
|
+
type_class.from_hash instance.to_h
|
78
78
|
else
|
79
79
|
raise(
|
80
80
|
ValidationError,
|
@@ -77,12 +77,12 @@ module JSONAPIonify::Structure
|
|
77
77
|
def must_not_contain_deep!(*keys, **options, &block)
|
78
78
|
before_validation do
|
79
79
|
JSONAPIonify::Continuation.new(**options).check(self) do
|
80
|
-
all_invalid_keys
|
81
|
-
keys
|
82
|
-
is_invalid
|
80
|
+
all_invalid_keys = []
|
81
|
+
keys += self.keys.select(&block) if block_given?
|
82
|
+
is_invalid = proc do |hash|
|
83
83
|
invalid_keys = hash.keys.map(&:to_sym) & keys.map(&:to_sym)
|
84
84
|
all_invalid_keys += invalid_keys
|
85
|
-
children = hash.values.select { |v| v.respond_to?(:
|
85
|
+
children = hash.values.select { |v| v.respond_to?(:keys) && v.respond_to?(:values) }
|
86
86
|
invalid_keys.present? | children.map { |c| is_invalid.call c }.reduce(:|)
|
87
87
|
end
|
88
88
|
if is_invalid.call(self)
|
@@ -26,7 +26,7 @@ module JSONAPIonify::Structure
|
|
26
26
|
attr_reader :object, :parent
|
27
27
|
|
28
28
|
delegate :cache_store, to: JSONAPIonify
|
29
|
-
delegate
|
29
|
+
delegate(*(Hash.instance_methods - instance_methods), to: :object)
|
30
30
|
|
31
31
|
before_initialize do
|
32
32
|
observe(self.object).added do |items|
|
@@ -63,7 +63,7 @@ module JSONAPIonify::Structure
|
|
63
63
|
end
|
64
64
|
|
65
65
|
def copy
|
66
|
-
self.class.from_hash
|
66
|
+
self.class.from_hash to_h
|
67
67
|
end
|
68
68
|
|
69
69
|
def ==(other)
|
@@ -82,7 +82,7 @@ module JSONAPIonify::Structure
|
|
82
82
|
|
83
83
|
def compile(validate: true)
|
84
84
|
self.validate if validate && !JSONAPIonify.validation_disabled?
|
85
|
-
|
85
|
+
to_h
|
86
86
|
end
|
87
87
|
|
88
88
|
def as_json(**opts)
|
@@ -91,15 +91,13 @@ module JSONAPIonify::Structure
|
|
91
91
|
|
92
92
|
def to_json(**opts)
|
93
93
|
Oj.dump(as_json **opts)
|
94
|
-
rescue NoMemoryError
|
95
|
-
binding.pry
|
96
94
|
end
|
97
95
|
|
98
96
|
def signature
|
99
|
-
"#{self.class.name}:#{Digest::SHA2.hexdigest
|
97
|
+
"#{self.class.name}:#{Digest::SHA2.hexdigest to_h.to_s}"
|
100
98
|
end
|
101
99
|
|
102
|
-
def
|
100
|
+
def to_h
|
103
101
|
ordered_object = [
|
104
102
|
*object.slice(*self.class.ordered_keys),
|
105
103
|
*object.except(*self.class.ordered_keys)
|
@@ -108,7 +106,7 @@ module JSONAPIonify::Structure
|
|
108
106
|
hash[k] =
|
109
107
|
case v
|
110
108
|
when Objects::Base
|
111
|
-
v.
|
109
|
+
v.to_h
|
112
110
|
when Hash
|
113
111
|
v.deep_stringify_keys
|
114
112
|
when Collections::Base
|
data/lib/jsonapionify/version.rb
CHANGED
metadata
CHANGED
@@ -1,489 +1,489 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: jsonapionify
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.11.
|
4
|
+
version: 0.11.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jason Waldrip
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-06-
|
11
|
+
date: 2016-06-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - ~>
|
17
|
+
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
19
|
version: '4.2'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- - ~>
|
24
|
+
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '4.2'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: faraday
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- - ~>
|
31
|
+
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
33
|
version: '0.9'
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- - ~>
|
38
|
+
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '0.9'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: rack
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
|
-
- -
|
45
|
+
- - ">="
|
46
46
|
- !ruby/object:Gem::Version
|
47
47
|
version: '0'
|
48
48
|
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
|
-
- -
|
52
|
+
- - ">="
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '0'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: redcarpet
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
|
-
- -
|
59
|
+
- - ">="
|
60
60
|
- !ruby/object:Gem::Version
|
61
61
|
version: '0'
|
62
62
|
type: :runtime
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
|
-
- -
|
66
|
+
- - ">="
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '0'
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: oj
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
|
-
- -
|
73
|
+
- - ">="
|
74
74
|
- !ruby/object:Gem::Version
|
75
75
|
version: '0'
|
76
76
|
type: :runtime
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
|
-
- -
|
80
|
+
- - ">="
|
81
81
|
- !ruby/object:Gem::Version
|
82
82
|
version: '0'
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
84
|
name: rack-test
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
86
86
|
requirements:
|
87
|
-
- -
|
87
|
+
- - ">="
|
88
88
|
- !ruby/object:Gem::Version
|
89
89
|
version: '0'
|
90
90
|
type: :runtime
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
|
-
- -
|
94
|
+
- - ">="
|
95
95
|
- !ruby/object:Gem::Version
|
96
96
|
version: '0'
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
98
|
name: faker
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
100
100
|
requirements:
|
101
|
-
- -
|
101
|
+
- - ">="
|
102
102
|
- !ruby/object:Gem::Version
|
103
103
|
version: '0'
|
104
104
|
type: :runtime
|
105
105
|
prerelease: false
|
106
106
|
version_requirements: !ruby/object:Gem::Requirement
|
107
107
|
requirements:
|
108
|
-
- -
|
108
|
+
- - ">="
|
109
109
|
- !ruby/object:Gem::Version
|
110
110
|
version: '0'
|
111
111
|
- !ruby/object:Gem::Dependency
|
112
112
|
name: possessive
|
113
113
|
requirement: !ruby/object:Gem::Requirement
|
114
114
|
requirements:
|
115
|
-
- -
|
115
|
+
- - ">="
|
116
116
|
- !ruby/object:Gem::Version
|
117
117
|
version: '0'
|
118
118
|
type: :runtime
|
119
119
|
prerelease: false
|
120
120
|
version_requirements: !ruby/object:Gem::Requirement
|
121
121
|
requirements:
|
122
|
-
- -
|
122
|
+
- - ">="
|
123
123
|
- !ruby/object:Gem::Version
|
124
124
|
version: '0'
|
125
125
|
- !ruby/object:Gem::Dependency
|
126
126
|
name: unstrict_proc
|
127
127
|
requirement: !ruby/object:Gem::Requirement
|
128
128
|
requirements:
|
129
|
-
- -
|
129
|
+
- - ">="
|
130
130
|
- !ruby/object:Gem::Version
|
131
131
|
version: '0'
|
132
132
|
type: :runtime
|
133
133
|
prerelease: false
|
134
134
|
version_requirements: !ruby/object:Gem::Requirement
|
135
135
|
requirements:
|
136
|
-
- -
|
136
|
+
- - ">="
|
137
137
|
- !ruby/object:Gem::Version
|
138
138
|
version: '0'
|
139
139
|
- !ruby/object:Gem::Dependency
|
140
140
|
name: enumerable_observer
|
141
141
|
requirement: !ruby/object:Gem::Requirement
|
142
142
|
requirements:
|
143
|
-
- -
|
143
|
+
- - ">="
|
144
144
|
- !ruby/object:Gem::Version
|
145
145
|
version: '0'
|
146
146
|
type: :runtime
|
147
147
|
prerelease: false
|
148
148
|
version_requirements: !ruby/object:Gem::Requirement
|
149
149
|
requirements:
|
150
|
-
- -
|
150
|
+
- - ">="
|
151
151
|
- !ruby/object:Gem::Version
|
152
152
|
version: '0'
|
153
153
|
- !ruby/object:Gem::Dependency
|
154
154
|
name: concurrent-ruby
|
155
155
|
requirement: !ruby/object:Gem::Requirement
|
156
156
|
requirements:
|
157
|
-
- - ~>
|
157
|
+
- - "~>"
|
158
158
|
- !ruby/object:Gem::Version
|
159
159
|
version: 1.0.1
|
160
160
|
type: :runtime
|
161
161
|
prerelease: false
|
162
162
|
version_requirements: !ruby/object:Gem::Requirement
|
163
163
|
requirements:
|
164
|
-
- - ~>
|
164
|
+
- - "~>"
|
165
165
|
- !ruby/object:Gem::Version
|
166
166
|
version: 1.0.1
|
167
167
|
- !ruby/object:Gem::Dependency
|
168
168
|
name: concurrent-ruby-ext
|
169
169
|
requirement: !ruby/object:Gem::Requirement
|
170
170
|
requirements:
|
171
|
-
- -
|
171
|
+
- - ">="
|
172
172
|
- !ruby/object:Gem::Version
|
173
173
|
version: '0'
|
174
174
|
type: :runtime
|
175
175
|
prerelease: false
|
176
176
|
version_requirements: !ruby/object:Gem::Requirement
|
177
177
|
requirements:
|
178
|
-
- -
|
178
|
+
- - ">="
|
179
179
|
- !ruby/object:Gem::Version
|
180
180
|
version: '0'
|
181
181
|
- !ruby/object:Gem::Dependency
|
182
182
|
name: mime-types
|
183
183
|
requirement: !ruby/object:Gem::Requirement
|
184
184
|
requirements:
|
185
|
-
- -
|
185
|
+
- - ">="
|
186
186
|
- !ruby/object:Gem::Version
|
187
187
|
version: '0'
|
188
188
|
type: :runtime
|
189
189
|
prerelease: false
|
190
190
|
version_requirements: !ruby/object:Gem::Requirement
|
191
191
|
requirements:
|
192
|
-
- -
|
192
|
+
- - ">="
|
193
193
|
- !ruby/object:Gem::Version
|
194
194
|
version: '0'
|
195
195
|
- !ruby/object:Gem::Dependency
|
196
196
|
name: pry
|
197
197
|
requirement: !ruby/object:Gem::Requirement
|
198
198
|
requirements:
|
199
|
-
- -
|
199
|
+
- - ">="
|
200
200
|
- !ruby/object:Gem::Version
|
201
201
|
version: '0'
|
202
202
|
type: :development
|
203
203
|
prerelease: false
|
204
204
|
version_requirements: !ruby/object:Gem::Requirement
|
205
205
|
requirements:
|
206
|
-
- -
|
206
|
+
- - ">="
|
207
207
|
- !ruby/object:Gem::Version
|
208
208
|
version: '0'
|
209
209
|
- !ruby/object:Gem::Dependency
|
210
210
|
name: pry-byebug
|
211
211
|
requirement: !ruby/object:Gem::Requirement
|
212
212
|
requirements:
|
213
|
-
- -
|
213
|
+
- - ">="
|
214
214
|
- !ruby/object:Gem::Version
|
215
215
|
version: '0'
|
216
216
|
type: :development
|
217
217
|
prerelease: false
|
218
218
|
version_requirements: !ruby/object:Gem::Requirement
|
219
219
|
requirements:
|
220
|
-
- -
|
220
|
+
- - ">="
|
221
221
|
- !ruby/object:Gem::Version
|
222
222
|
version: '0'
|
223
223
|
- !ruby/object:Gem::Dependency
|
224
224
|
name: rocco
|
225
225
|
requirement: !ruby/object:Gem::Requirement
|
226
226
|
requirements:
|
227
|
-
- -
|
227
|
+
- - ">="
|
228
228
|
- !ruby/object:Gem::Version
|
229
229
|
version: '0'
|
230
230
|
type: :development
|
231
231
|
prerelease: false
|
232
232
|
version_requirements: !ruby/object:Gem::Requirement
|
233
233
|
requirements:
|
234
|
-
- -
|
234
|
+
- - ">="
|
235
235
|
- !ruby/object:Gem::Version
|
236
236
|
version: '0'
|
237
237
|
- !ruby/object:Gem::Dependency
|
238
238
|
name: bundler
|
239
239
|
requirement: !ruby/object:Gem::Requirement
|
240
240
|
requirements:
|
241
|
-
- - ~>
|
241
|
+
- - "~>"
|
242
242
|
- !ruby/object:Gem::Version
|
243
243
|
version: '1.10'
|
244
244
|
type: :development
|
245
245
|
prerelease: false
|
246
246
|
version_requirements: !ruby/object:Gem::Requirement
|
247
247
|
requirements:
|
248
|
-
- - ~>
|
248
|
+
- - "~>"
|
249
249
|
- !ruby/object:Gem::Version
|
250
250
|
version: '1.10'
|
251
251
|
- !ruby/object:Gem::Dependency
|
252
252
|
name: rake
|
253
253
|
requirement: !ruby/object:Gem::Requirement
|
254
254
|
requirements:
|
255
|
-
- - ~>
|
255
|
+
- - "~>"
|
256
256
|
- !ruby/object:Gem::Version
|
257
257
|
version: '10.0'
|
258
258
|
type: :development
|
259
259
|
prerelease: false
|
260
260
|
version_requirements: !ruby/object:Gem::Requirement
|
261
261
|
requirements:
|
262
|
-
- - ~>
|
262
|
+
- - "~>"
|
263
263
|
- !ruby/object:Gem::Version
|
264
264
|
version: '10.0'
|
265
265
|
- !ruby/object:Gem::Dependency
|
266
266
|
name: rspec
|
267
267
|
requirement: !ruby/object:Gem::Requirement
|
268
268
|
requirements:
|
269
|
-
- -
|
269
|
+
- - ">="
|
270
270
|
- !ruby/object:Gem::Version
|
271
271
|
version: '0'
|
272
272
|
type: :development
|
273
273
|
prerelease: false
|
274
274
|
version_requirements: !ruby/object:Gem::Requirement
|
275
275
|
requirements:
|
276
|
-
- -
|
276
|
+
- - ">="
|
277
277
|
- !ruby/object:Gem::Version
|
278
278
|
version: '0'
|
279
279
|
- !ruby/object:Gem::Dependency
|
280
280
|
name: guard
|
281
281
|
requirement: !ruby/object:Gem::Requirement
|
282
282
|
requirements:
|
283
|
-
- -
|
283
|
+
- - ">="
|
284
284
|
- !ruby/object:Gem::Version
|
285
285
|
version: '0'
|
286
286
|
type: :development
|
287
287
|
prerelease: false
|
288
288
|
version_requirements: !ruby/object:Gem::Requirement
|
289
289
|
requirements:
|
290
|
-
- -
|
290
|
+
- - ">="
|
291
291
|
- !ruby/object:Gem::Version
|
292
292
|
version: '0'
|
293
293
|
- !ruby/object:Gem::Dependency
|
294
294
|
name: guard-rspec
|
295
295
|
requirement: !ruby/object:Gem::Requirement
|
296
296
|
requirements:
|
297
|
-
- -
|
297
|
+
- - ">="
|
298
298
|
- !ruby/object:Gem::Version
|
299
299
|
version: '0'
|
300
300
|
type: :development
|
301
301
|
prerelease: false
|
302
302
|
version_requirements: !ruby/object:Gem::Requirement
|
303
303
|
requirements:
|
304
|
-
- -
|
304
|
+
- - ">="
|
305
305
|
- !ruby/object:Gem::Version
|
306
306
|
version: '0'
|
307
307
|
- !ruby/object:Gem::Dependency
|
308
308
|
name: navigable_hash
|
309
309
|
requirement: !ruby/object:Gem::Requirement
|
310
310
|
requirements:
|
311
|
-
- -
|
311
|
+
- - ">="
|
312
312
|
- !ruby/object:Gem::Version
|
313
313
|
version: '0'
|
314
314
|
type: :development
|
315
315
|
prerelease: false
|
316
316
|
version_requirements: !ruby/object:Gem::Requirement
|
317
317
|
requirements:
|
318
|
-
- -
|
318
|
+
- - ">="
|
319
319
|
- !ruby/object:Gem::Version
|
320
320
|
version: '0'
|
321
321
|
- !ruby/object:Gem::Dependency
|
322
322
|
name: code-statistics
|
323
323
|
requirement: !ruby/object:Gem::Requirement
|
324
324
|
requirements:
|
325
|
-
- -
|
325
|
+
- - ">="
|
326
326
|
- !ruby/object:Gem::Version
|
327
327
|
version: '0'
|
328
328
|
type: :development
|
329
329
|
prerelease: false
|
330
330
|
version_requirements: !ruby/object:Gem::Requirement
|
331
331
|
requirements:
|
332
|
-
- -
|
332
|
+
- - ">="
|
333
333
|
- !ruby/object:Gem::Version
|
334
334
|
version: '0'
|
335
335
|
- !ruby/object:Gem::Dependency
|
336
336
|
name: codeclimate-test-reporter
|
337
337
|
requirement: !ruby/object:Gem::Requirement
|
338
338
|
requirements:
|
339
|
-
- -
|
339
|
+
- - ">="
|
340
340
|
- !ruby/object:Gem::Version
|
341
341
|
version: '0'
|
342
342
|
type: :development
|
343
343
|
prerelease: false
|
344
344
|
version_requirements: !ruby/object:Gem::Requirement
|
345
345
|
requirements:
|
346
|
-
- -
|
346
|
+
- - ">="
|
347
347
|
- !ruby/object:Gem::Version
|
348
348
|
version: '0'
|
349
349
|
- !ruby/object:Gem::Dependency
|
350
350
|
name: guard-rack
|
351
351
|
requirement: !ruby/object:Gem::Requirement
|
352
352
|
requirements:
|
353
|
-
- -
|
353
|
+
- - ">="
|
354
354
|
- !ruby/object:Gem::Version
|
355
355
|
version: '0'
|
356
356
|
type: :development
|
357
357
|
prerelease: false
|
358
358
|
version_requirements: !ruby/object:Gem::Requirement
|
359
359
|
requirements:
|
360
|
-
- -
|
360
|
+
- - ">="
|
361
361
|
- !ruby/object:Gem::Version
|
362
362
|
version: '0'
|
363
363
|
- !ruby/object:Gem::Dependency
|
364
364
|
name: guard-rake
|
365
365
|
requirement: !ruby/object:Gem::Requirement
|
366
366
|
requirements:
|
367
|
-
- -
|
367
|
+
- - ">="
|
368
368
|
- !ruby/object:Gem::Version
|
369
369
|
version: '0'
|
370
370
|
type: :development
|
371
371
|
prerelease: false
|
372
372
|
version_requirements: !ruby/object:Gem::Requirement
|
373
373
|
requirements:
|
374
|
-
- -
|
374
|
+
- - ">="
|
375
375
|
- !ruby/object:Gem::Version
|
376
376
|
version: '0'
|
377
377
|
- !ruby/object:Gem::Dependency
|
378
378
|
name: guard-bundler
|
379
379
|
requirement: !ruby/object:Gem::Requirement
|
380
380
|
requirements:
|
381
|
-
- -
|
381
|
+
- - ">="
|
382
382
|
- !ruby/object:Gem::Version
|
383
383
|
version: '0'
|
384
384
|
type: :development
|
385
385
|
prerelease: false
|
386
386
|
version_requirements: !ruby/object:Gem::Requirement
|
387
387
|
requirements:
|
388
|
-
- -
|
388
|
+
- - ">="
|
389
389
|
- !ruby/object:Gem::Version
|
390
390
|
version: '0'
|
391
391
|
- !ruby/object:Gem::Dependency
|
392
392
|
name: activerecord
|
393
393
|
requirement: !ruby/object:Gem::Requirement
|
394
394
|
requirements:
|
395
|
-
- -
|
395
|
+
- - ">="
|
396
396
|
- !ruby/object:Gem::Version
|
397
397
|
version: '0'
|
398
398
|
type: :development
|
399
399
|
prerelease: false
|
400
400
|
version_requirements: !ruby/object:Gem::Requirement
|
401
401
|
requirements:
|
402
|
-
- -
|
402
|
+
- - ">="
|
403
403
|
- !ruby/object:Gem::Version
|
404
404
|
version: '0'
|
405
405
|
- !ruby/object:Gem::Dependency
|
406
406
|
name: activerecord-import
|
407
407
|
requirement: !ruby/object:Gem::Requirement
|
408
408
|
requirements:
|
409
|
-
- -
|
409
|
+
- - ">="
|
410
410
|
- !ruby/object:Gem::Version
|
411
411
|
version: '0'
|
412
412
|
type: :development
|
413
413
|
prerelease: false
|
414
414
|
version_requirements: !ruby/object:Gem::Requirement
|
415
415
|
requirements:
|
416
|
-
- -
|
416
|
+
- - ">="
|
417
417
|
- !ruby/object:Gem::Version
|
418
418
|
version: '0'
|
419
419
|
- !ruby/object:Gem::Dependency
|
420
420
|
name: sqlite3
|
421
421
|
requirement: !ruby/object:Gem::Requirement
|
422
422
|
requirements:
|
423
|
-
- -
|
423
|
+
- - ">="
|
424
424
|
- !ruby/object:Gem::Version
|
425
425
|
version: '0'
|
426
426
|
type: :development
|
427
427
|
prerelease: false
|
428
428
|
version_requirements: !ruby/object:Gem::Requirement
|
429
429
|
requirements:
|
430
|
-
- -
|
430
|
+
- - ">="
|
431
431
|
- !ruby/object:Gem::Version
|
432
432
|
version: '0'
|
433
433
|
- !ruby/object:Gem::Dependency
|
434
434
|
name: ruby-prof
|
435
435
|
requirement: !ruby/object:Gem::Requirement
|
436
436
|
requirements:
|
437
|
-
- -
|
437
|
+
- - ">="
|
438
438
|
- !ruby/object:Gem::Version
|
439
439
|
version: '0'
|
440
440
|
type: :development
|
441
441
|
prerelease: false
|
442
442
|
version_requirements: !ruby/object:Gem::Requirement
|
443
443
|
requirements:
|
444
|
-
- -
|
444
|
+
- - ">="
|
445
445
|
- !ruby/object:Gem::Version
|
446
446
|
version: '0'
|
447
447
|
- !ruby/object:Gem::Dependency
|
448
448
|
name: bcrypt
|
449
449
|
requirement: !ruby/object:Gem::Requirement
|
450
450
|
requirements:
|
451
|
-
- -
|
451
|
+
- - ">="
|
452
452
|
- !ruby/object:Gem::Version
|
453
453
|
version: '0'
|
454
454
|
type: :development
|
455
455
|
prerelease: false
|
456
456
|
version_requirements: !ruby/object:Gem::Requirement
|
457
457
|
requirements:
|
458
|
-
- -
|
458
|
+
- - ">="
|
459
459
|
- !ruby/object:Gem::Version
|
460
460
|
version: '0'
|
461
461
|
- !ruby/object:Gem::Dependency
|
462
462
|
name: thin
|
463
463
|
requirement: !ruby/object:Gem::Requirement
|
464
464
|
requirements:
|
465
|
-
- -
|
465
|
+
- - ">="
|
466
466
|
- !ruby/object:Gem::Version
|
467
467
|
version: '0'
|
468
468
|
type: :development
|
469
469
|
prerelease: false
|
470
470
|
version_requirements: !ruby/object:Gem::Requirement
|
471
471
|
requirements:
|
472
|
-
- -
|
472
|
+
- - ">="
|
473
473
|
- !ruby/object:Gem::Version
|
474
474
|
version: '0'
|
475
475
|
- !ruby/object:Gem::Dependency
|
476
476
|
name: memory_model
|
477
477
|
requirement: !ruby/object:Gem::Requirement
|
478
478
|
requirements:
|
479
|
-
- -
|
479
|
+
- - ">="
|
480
480
|
- !ruby/object:Gem::Version
|
481
481
|
version: '0'
|
482
482
|
type: :development
|
483
483
|
prerelease: false
|
484
484
|
version_requirements: !ruby/object:Gem::Requirement
|
485
485
|
requirements:
|
486
|
-
- -
|
486
|
+
- - ">="
|
487
487
|
- !ruby/object:Gem::Version
|
488
488
|
version: '0'
|
489
489
|
description:
|
@@ -493,14 +493,14 @@ executables: []
|
|
493
493
|
extensions: []
|
494
494
|
extra_rdoc_files: []
|
495
495
|
files:
|
496
|
-
- .codeclimate.yml
|
497
|
-
- .csslintrc
|
498
|
-
- .editorconfig
|
499
|
-
- .gitignore
|
500
|
-
- .rspec
|
501
|
-
- .rubocop.yml
|
502
|
-
- .ruby-version
|
503
|
-
- .travis.yml
|
496
|
+
- ".codeclimate.yml"
|
497
|
+
- ".csslintrc"
|
498
|
+
- ".editorconfig"
|
499
|
+
- ".gitignore"
|
500
|
+
- ".rspec"
|
501
|
+
- ".rubocop.yml"
|
502
|
+
- ".ruby-version"
|
503
|
+
- ".travis.yml"
|
504
504
|
- CODE_OF_CONDUCT.md
|
505
505
|
- Gemfile
|
506
506
|
- Guardfile
|
@@ -545,6 +545,7 @@ files:
|
|
545
545
|
- lib/jsonapionify/api/resource/builders/base_builder.rb
|
546
546
|
- lib/jsonapionify/api/resource/builders/cursor_builder.rb
|
547
547
|
- lib/jsonapionify/api/resource/builders/fields_builder.rb
|
548
|
+
- lib/jsonapionify/api/resource/builders/id_builder.rb
|
548
549
|
- lib/jsonapionify/api/resource/builders/identity_helper.rb
|
549
550
|
- lib/jsonapionify/api/resource/builders/relationship_builder.rb
|
550
551
|
- lib/jsonapionify/api/resource/builders/relationships_builder.rb
|
@@ -647,17 +648,17 @@ require_paths:
|
|
647
648
|
- lib
|
648
649
|
required_ruby_version: !ruby/object:Gem::Requirement
|
649
650
|
requirements:
|
650
|
-
- - ~>
|
651
|
+
- - "~>"
|
651
652
|
- !ruby/object:Gem::Version
|
652
653
|
version: 2.3.1
|
653
654
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
654
655
|
requirements:
|
655
|
-
- -
|
656
|
+
- - ">="
|
656
657
|
- !ruby/object:Gem::Version
|
657
658
|
version: '0'
|
658
659
|
requirements: []
|
659
660
|
rubyforge_project:
|
660
|
-
rubygems_version: 2.
|
661
|
+
rubygems_version: 2.5.1
|
661
662
|
signing_key:
|
662
663
|
specification_version: 4
|
663
664
|
summary: Ruby object structure conforming to the JSON API spec.
|