readymade 0.2.4 → 0.2.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +6 -0
- data/Gemfile.lock +1 -1
- data/lib/readymade/form.rb +20 -4
- data/lib/readymade/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d8b0938bb39253068f0b78cd62841b08aa118f9ae51fb8e8e49c59a47cc5d6dc
|
4
|
+
data.tar.gz: 59fa97d3a17ab1b7330a1af92399a09aceb8843b81f1adb4f667580e495685f1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5496ed0f230582f69b423e15561ba247d5967b44242fe3baa0611f4056e207ab8752dd2360380dc20a3072fea94ceac176f6098b84a07ea263ecd314ff735f3e
|
7
|
+
data.tar.gz: 99a797b196fc7d20c60026b39e5500c7b5a048ce743d92ae37b55412370b429c52a9623cc74031535811ce9743ba43dc197d923cae99fa4a5623ee368cec9ca2
|
data/CHANGELOG.md
CHANGED
data/Gemfile.lock
CHANGED
data/lib/readymade/form.rb
CHANGED
@@ -45,6 +45,8 @@ module Readymade
|
|
45
45
|
end
|
46
46
|
|
47
47
|
def required_attributes
|
48
|
+
return [] if params.try(:[], :_destroy).present?
|
49
|
+
|
48
50
|
@required_attributes ||= self.class::REQUIRED_ATTRIBUTES
|
49
51
|
end
|
50
52
|
|
@@ -79,9 +81,17 @@ module Readymade
|
|
79
81
|
|
80
82
|
# copy errors from nested forms into parent form
|
81
83
|
def sync_nested_errors(nested_forms)
|
82
|
-
|
83
|
-
|
84
|
-
errors.
|
84
|
+
if rails_errors_v2?
|
85
|
+
nested_forms.each do |n_form|
|
86
|
+
n_form.errors.each do |code|
|
87
|
+
errors.add("#{n_form.humanized_name}.#{code.attribute}", code.message)
|
88
|
+
end
|
89
|
+
end
|
90
|
+
else
|
91
|
+
nested_forms.each do |n_form|
|
92
|
+
n_form.errors.each do |code, text|
|
93
|
+
errors.add("#{n_form.humanized_name}.#{code}", text)
|
94
|
+
end
|
85
95
|
end
|
86
96
|
end
|
87
97
|
|
@@ -92,7 +102,7 @@ module Readymade
|
|
92
102
|
def sync_errors(from: self, to: record)
|
93
103
|
return if [from, to].any?(&:blank?)
|
94
104
|
|
95
|
-
if
|
105
|
+
if rails_errors_v2?
|
96
106
|
from.errors.messages.each do |key, values|
|
97
107
|
Array.wrap(values).uniq.each do |uv|
|
98
108
|
to.errors.add(key, uv)
|
@@ -145,6 +155,12 @@ module Readymade
|
|
145
155
|
{}
|
146
156
|
end
|
147
157
|
|
158
|
+
private
|
159
|
+
|
160
|
+
def rails_errors_v2?
|
161
|
+
Rails.version.to_f > 6.0
|
162
|
+
end
|
163
|
+
|
148
164
|
# EXAMPLE
|
149
165
|
# class Items::Forms::Create::Value < ::Readymade::Form
|
150
166
|
# PERMITTED_ATTRIBUTES = %i[vat_percent price_type item_category].freeze
|
data/lib/readymade/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: readymade
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- OrestF
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-05-
|
11
|
+
date: 2022-05-19 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: byebug
|