normalizr_ruby 0.1.3 → 0.1.4
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/lib/normalizr_ruby/converter.rb +8 -5
- data/lib/normalizr_ruby/schema.rb +7 -5
- data/lib/normalizr_ruby/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0b2b22140e39b9b6cc081a0a5170c3be064d1a8f
|
4
|
+
data.tar.gz: 66a4d655ee091ccabe654059227a40162427d5b8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: bbfb4b2b142c0182d70bb2a743d894460d13721e89973349ae29cca5d209fda50343d18343c0107c1f32e9e30ef6f4afbe52636e4bf6ad5fcab25e8f3db8c364
|
7
|
+
data.tar.gz: 2bf46dee5888bf20dcf93e09776bb7928c17a37dca5395f96bdfddf2168a8cba8eb6f60c611eac1d67e419cc3b5250032e8f8e69480c75654707012fbff80a9d
|
@@ -11,15 +11,18 @@ module NormalizrRuby
|
|
11
11
|
def normalize(resource, options)
|
12
12
|
opts = options.presence || {}
|
13
13
|
@result = walk(resource, opts)
|
14
|
-
|
15
|
-
normalized_hash = { result: @result, entities: @entities }
|
16
|
-
KeyTransform.send(key_transform, normalized_hash)
|
14
|
+
{ result: @result, entities: @entities }
|
17
15
|
rescue SchemaNotFound => e
|
18
16
|
resource
|
19
17
|
end
|
20
18
|
|
21
19
|
private
|
22
20
|
|
21
|
+
def recase(value)
|
22
|
+
key_transform = NormalizrRuby.config.key_transform
|
23
|
+
KeyTransform.send(key_transform, value)
|
24
|
+
end
|
25
|
+
|
23
26
|
def not_found(klass)
|
24
27
|
raise SchemaNotFound, "#{klass.name}Schema is not found."
|
25
28
|
end
|
@@ -53,9 +56,9 @@ module NormalizrRuby
|
|
53
56
|
hash[assoc] = assoc_result
|
54
57
|
end
|
55
58
|
result = schema.object.id
|
56
|
-
entity_key = schema.entity_key
|
59
|
+
entity_key = recase(schema.entity_key)
|
57
60
|
@entities[entity_key] ||= {}
|
58
|
-
@entities[entity_key][result] = hash
|
61
|
+
@entities[entity_key][result] = recase(hash)
|
59
62
|
end
|
60
63
|
result
|
61
64
|
end
|
@@ -47,11 +47,13 @@ module NormalizrRuby
|
|
47
47
|
end
|
48
48
|
|
49
49
|
def entity_key
|
50
|
-
object.class
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
50
|
+
klass = object.class
|
51
|
+
if klass.respond_to?(:base_class)
|
52
|
+
klass = klass.base_class
|
53
|
+
end
|
54
|
+
klass.name
|
55
|
+
.pluralize
|
56
|
+
.to_sym
|
55
57
|
end
|
56
58
|
|
57
59
|
def association_resource(association_key)
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: normalizr_ruby
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- shinya takahashi
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2017-03-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|