redress 0.3.1 → 0.3.2

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
- SHA1:
3
- metadata.gz: 6986552c7cc241c94ed1af574a6e1a2a59f60490
4
- data.tar.gz: 110a86ad5c304fb0a4ca933cf76d2e6bb1333fde
2
+ SHA256:
3
+ metadata.gz: 49bded90385feee506f619deb4d89d6b439a009400473bbd8e4af6278e6d90d5
4
+ data.tar.gz: 1793066adf0ebe28712b43674918d815d81ebb9eaf254dc59126f92c1acd5527
5
5
  SHA512:
6
- metadata.gz: e3fa0175f61101b05f45691e48e94e24dbbbd297c9c110f979a947b7d8ef0a0a4cc572faa25ef79673d7e3bc9c91d5631b72b2e3257dc680b55ea777c6591ed3
7
- data.tar.gz: 9ffccd7fadf57d2c0faec5c2b3960aca7a1627eb78f7085f3ad0eeb51ac138e734afad80cd828505ade624d405ebcc6544054d9210e3b419441390c18c543545
6
+ metadata.gz: df64ec1c7fc2089a488dd8a7abc54fdead32af171352eb2316aca075bbdc004010062742542008b0714a2de07c69c4e0061b76026a6b13b3196c55d7a5976214
7
+ data.tar.gz: 894eb582cc33ee28bf5e35bac36aae0db642910ef9a25611684c878dcf5aae8c311cdb789bf54af402070cef73265ace112355e5b70826437f8c2192fe90b74e
data/README.md CHANGED
@@ -68,6 +68,7 @@ class SimpleForm < ApplicationForm
68
68
  attribute :email, String
69
69
  attribute :name_with_email, String
70
70
  attribute :age, Redress::Types::Coercible::Integer
71
+ atttibute :terms_of_service, Redress::Types::Coercible::Bool
71
72
  end
72
73
 
73
74
  validates :name, presence: true
@@ -116,6 +117,27 @@ class OrderForm < Redress::Form
116
117
  end
117
118
  ```
118
119
 
120
+ Form with context:
121
+
122
+ ```
123
+ class CommentForm < Redress::Form
124
+ define_schema do
125
+ attribute :id, Redress::Types::Coercible::Integer
126
+ attribute :content, Redress::Types::String
127
+ end
128
+
129
+ validates :content, presence: true
130
+ validate :unsure_order_state_waiting
131
+
132
+ private
133
+
134
+ def unsure_order_state_waiting
135
+ context.order.state?(:waiting)
136
+ end
137
+ end
138
+
139
+ CommentForm.new(content: 'Hi').with_context(order: order)
140
+ ```
119
141
 
120
142
  ### Commands
121
143
 
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require "wisper"
3
+ require 'wisper'
4
4
 
5
5
  module Redress
6
6
  class Command
data/lib/redress/form.rb CHANGED
@@ -1,20 +1,20 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require "hashie/mash"
4
- require "active_model"
5
- require "dry-struct"
3
+ require 'hashie/mash'
4
+ require 'active_model'
5
+ require 'dry-struct'
6
6
 
7
- require "redress/utils/parse_attributes_from_params"
8
- require "redress/utils/build_form_from_model"
9
- require "redress/utils/attributes_hash"
7
+ require 'redress/utils/parse_attributes_from_params'
8
+ require 'redress/utils/build_form_from_model'
9
+ require 'redress/utils/attributes_hash'
10
10
 
11
11
  module Redress
12
12
  class Form < Dry::Struct
13
13
  include ActiveModel::Validations
14
14
  include ActiveModel::Conversion
15
15
 
16
- DEFAULT_NAME = "Form"
17
- SPLITTER = "::"
16
+ DEFAULT_NAME = 'Form'
17
+ SPLITTER = '::'
18
18
 
19
19
  attr_reader :context
20
20
 
@@ -83,9 +83,12 @@ module Redress
83
83
 
84
84
  def write_attribute(name, value)
85
85
  return unless self.class.attribute?(name)
86
+
86
87
  @attributes[name] = safe_coercion(name, value)
87
88
  end
88
89
 
90
+ private
91
+
89
92
  def safe_coercion(name, value)
90
93
  type = self.class.schema[name]
91
94
  type[value]
@@ -4,15 +4,15 @@ module Redress
4
4
  # Gem identity information.
5
5
  module Identity
6
6
  def self.name
7
- "redress"
7
+ 'redress'
8
8
  end
9
9
 
10
10
  def self.label
11
- "Redress"
11
+ 'Redress'
12
12
  end
13
13
 
14
14
  def self.version
15
- "0.3.1"
15
+ '0.3.2'
16
16
  end
17
17
 
18
18
  def self.version_label
data/lib/redress/types.rb CHANGED
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require "dry-types"
3
+ require 'dry-types'
4
4
 
5
5
  module Redress
6
6
  module Types
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require "hashie"
3
+ require 'hashie'
4
4
 
5
5
  module Redress
6
6
  module Utils
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require "redress/utils/attributes_hash"
3
+ require 'redress/utils/attributes_hash'
4
4
 
5
5
  module Redress
6
6
  module Utils
@@ -22,6 +22,7 @@ module Redress
22
22
 
23
23
  def prefix
24
24
  return if @options[:prefix].blank?
25
+
25
26
  @prefix ||= @options[:prefix].to_s
26
27
  end
27
28
 
@@ -29,7 +30,7 @@ module Redress
29
30
  @full_prefix ||= "#{prefix}_"
30
31
  end
31
32
 
32
- protected
33
+ private
33
34
 
34
35
  def extract_attributes
35
36
  hash = model_attributes.merge!(prefix_attibutes)
data/lib/redress.rb CHANGED
@@ -1,10 +1,10 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require "redress/identity"
3
+ require 'redress/identity'
4
4
 
5
5
  module Redress
6
6
  end
7
7
 
8
- require "redress/types"
9
- require "redress/form"
10
- require "redress/command"
8
+ require 'redress/types'
9
+ require 'redress/form'
10
+ require 'redress/command'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: redress
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.1
4
+ version: 0.3.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Igor Galeta
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-08-19 00:00:00.000000000 Z
11
+ date: 2019-02-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activemodel
@@ -258,8 +258,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
258
258
  - !ruby/object:Gem::Version
259
259
  version: '0'
260
260
  requirements: []
261
- rubyforge_project:
262
- rubygems_version: 2.6.12
261
+ rubygems_version: 3.0.2
263
262
  signing_key:
264
263
  specification_version: 4
265
264
  summary: Build maintainable Ruby apps