strum 0.0.42 → 0.0.43

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
  SHA256:
3
- metadata.gz: d1fd0e1193e8d89e9121446264d50d0ff22f55675cbbb6441f1ee9f7eb22fd91
4
- data.tar.gz: 1813759bc767ee90eed3fcf165768f28da00f77038b33ac451d9d74dc88d093d
3
+ metadata.gz: e8ae432f99d56c58a8df77916a58a63f01e7f4dd3ddcf4be8c726ad0fa1e007f
4
+ data.tar.gz: ed21b5f17ec5b20b8ba8d518038c8b247350a76f2552cddfc2f7e68129c5a45e
5
5
  SHA512:
6
- metadata.gz: f450c4c1fe04ded530f9f4474ccde3464cb3425de09dfc69923372238f5b4628e7b8c4008130734e4c1a9c9f478eb8222dfdb71965aa11502eb81dad371515b6
7
- data.tar.gz: b69dd2556da0d497e8cf6ef81015d560d97cb94020ddc02533c6e38c382184423e693345ae2f27665f17a9bf007491261d4c35b17962ca6d79e999c5c35931a9
6
+ metadata.gz: '07500480059c5a477d24f8a0cf676ce0e98353db644df4392ae9a17ef3208dc6d930d0e6a648748ec0e142505227391b0cdb817d754fd8adeec2cee1bbda9467'
7
+ data.tar.gz: 1a47d7ec10cfde80bc26aad57c71c80b885db58bd473d57255562dae685632a1df360c39f22ebf67dd91e228361300dff1907fd73636097a222286d1fac7e98f
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- strum (0.0.42)
4
+ strum (0.0.43)
5
5
  dry-inflector (~> 0.2.0)
6
6
  thor (~> 0.20)
7
7
 
@@ -1,6 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require "strum/serializer_name"
3
+ require "strum/serializer_class"
4
+ require "dry/inflector"
4
5
 
5
6
  module Strum
6
7
  module JsonSerializer
@@ -8,10 +9,15 @@ module Strum
8
9
  Class.new do
9
10
  include Strum::Service
10
11
  define_method :call do
11
- serializer_class = Strum::SerializerName.call(name: name)
12
+ require "serializers/#{Dry::Inflector.new.underscore(name)}_serializer"
13
+ serializer_class = Strum::SerializerClass.call(name: name)
12
14
  output(serializer_class.new(input).serializable_hash)
13
15
  end
14
16
  end
15
17
  end
18
+
19
+ def self.call(model)
20
+ model.class.call(model)
21
+ end
16
22
  end
17
23
  end
@@ -3,11 +3,11 @@
3
3
  require "strum/service"
4
4
 
5
5
  module Strum
6
- class SerializerName
6
+ class SerializerClass
7
7
  include Strum::Service
8
8
 
9
9
  def call
10
- output(Kernel.const_get(input[:name].to_s + "Serializer"))
10
+ output(Kernel.const_get(name.to_s + "Serializer"))
11
11
  rescue StandardError => e
12
12
  add_error(:serializer, e)
13
13
  end
data/lib/strum/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Strum
4
- VERSION = "0.0.42"
4
+ VERSION = "0.0.43"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: strum
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.42
4
+ version: 0.0.43
5
5
  platform: ruby
6
6
  authors:
7
7
  - Serhiy Nazarov
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-02-04 00:00:00.000000000 Z
11
+ date: 2020-02-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: dry-inflector
@@ -161,7 +161,7 @@ files:
161
161
  - lib/strum/json_deserializer.rb
162
162
  - lib/strum/json_serializer.rb
163
163
  - lib/strum/pipe.rb
164
- - lib/strum/serializer_name.rb
164
+ - lib/strum/serializer_class.rb
165
165
  - lib/strum/service.rb
166
166
  - lib/strum/sub_command_base.rb
167
167
  - lib/strum/tasks/sequel.rake