normalizr_ruby 0.1.3 → 0.1.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 95de21e33d5f39694c35f6b4b7f2093522ecb1a2
4
- data.tar.gz: c93846067ce9d15c17f7dca3bf869638cee991b0
3
+ metadata.gz: 0b2b22140e39b9b6cc081a0a5170c3be064d1a8f
4
+ data.tar.gz: 66a4d655ee091ccabe654059227a40162427d5b8
5
5
  SHA512:
6
- metadata.gz: 429c8be4c5264a7462b42ebb95b63a5124d0317bdc9f5731b67736c7048cd417fd87d5864943c83e1ed893b2cf2a845c888f8d1ce12be123525c3b95e9df5f21
7
- data.tar.gz: 65a392bdd66dcf4197ea9fa319edfbe6eb8db4a78faa5dcafddb296bd20f1eaeb6409633621164f169692600bf7f39dc958d0d0e8753154ed34fc269ec16a94d
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
- key_transform = NormalizrRuby.config.key_transform
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
- .base_class
52
- .name
53
- .pluralize
54
- .to_sym
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)
@@ -1,3 +1,3 @@
1
1
  module NormalizrRuby
2
- VERSION = "0.1.3"
2
+ VERSION = "0.1.4"
3
3
  end
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.3
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: 2016-10-04 00:00:00.000000000 Z
11
+ date: 2017-03-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport