effective_bootstrap 1.21.1 → 1.21.2

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ac81d19dbad37905c71ec5fa109ecbe8574a1f76b0614f4cbc77b22cdb85ee24
4
- data.tar.gz: 738c05e420873c8fc9d4c107feb3dbedd3f71259805f113f77b354a1cd67f1c1
3
+ metadata.gz: 0b8ff70344d83b63351e5b03f2c05c82fc2c14bb45588a973dfadd8c644efd28
4
+ data.tar.gz: f8f97aa9e4e108c25cd521aca8d656a5086f6bfc6a4857b4ed71c6d639ba0025
5
5
  SHA512:
6
- metadata.gz: d465200a2da3234aeca09338776288b6334b81fd6a634b2928e1b962a9c746e593c49d3f0c3dc3426b3ecd642e30e56a7291150b85cb844c8fdf2b033e39cd7a
7
- data.tar.gz: 7e792145b494b651eb90b36a0d6debad6b712f1a830c63f62de5ba5ca1a3a97d07b28387f7621db40767931f22944216050f7a3f195bd03e6be0bdd540f41115
6
+ metadata.gz: c73246a94e4a8d2fd8b4c4af5415ea1ca5ba555a7c54a4bbafd5a0f942726f1e512e3ea86e59f082bd58d56c6c3573a8950fccaad44c46bfb83724e072b8a2fd
7
+ data.tar.gz: bc720e9b612b6a28b1144a993f87b2f1d51b4f48c8e9a818d47881e4c1c5c4ba4a7aa30122983b9b28fc7ff61fa907e70ef458bca03ae3dfa91be1d107b50eae
@@ -222,6 +222,7 @@ module Effective
222
222
 
223
223
  def required?(name)
224
224
  return false unless object && name
225
+ return false if @builder.options[:skip_required] # Set by a f.has_many
225
226
 
226
227
  obj = (object.class == Class) ? object : object.class
227
228
  return false unless obj.respond_to?(:validators_on)
@@ -132,6 +132,10 @@ module Effective
132
132
  end
133
133
  end
134
134
 
135
+ def reject_proc_present?(name)
136
+ @builder.object.class.reflect_on_association(name)&.active_record&.nested_attributes_options&.dig(name)&.key?(:reject_if)
137
+ end
138
+
135
139
  def render_resource(resource, block, skip_disabled: nil)
136
140
  remove = BLANK
137
141
  reorder = BLANK
@@ -140,6 +144,7 @@ module Effective
140
144
 
141
145
  content = @builder.fields_for(name, resource) do |form|
142
146
  form.disabled = disabled? unless skip_disabled
147
+ form.options[:skip_required] = resource.try(:new_record?) && reject_proc_present?(name)
143
148
 
144
149
  fields = block.call(form)
145
150
 
@@ -1,3 +1,3 @@
1
1
  module EffectiveBootstrap
2
- VERSION = '1.21.1'.freeze
2
+ VERSION = '1.21.2'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: effective_bootstrap
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.21.1
4
+ version: 1.21.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Code and Effect
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-06-10 00:00:00.000000000 Z
11
+ date: 2025-06-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails