fix(form): conditional hides fieldset__element so vertical margins are not cumulated
This commit is contained in:
parent
7b9f44ec42
commit
9e5ade817a
3 changed files with 16 additions and 12 deletions
|
@ -30,15 +30,20 @@ class EditableChamp::EditableChampComponent < ApplicationComponent
|
||||||
{
|
{
|
||||||
'editable-champ': true,
|
'editable-champ': true,
|
||||||
"editable-champ-#{@champ.type_champ}": true,
|
"editable-champ-#{@champ.type_champ}": true,
|
||||||
"hidden": !@champ.visible?,
|
|
||||||
champ_component.dsfr_group_classname => true
|
champ_component.dsfr_group_classname => true
|
||||||
}.merge(champ_component.input_group_error_class_names)
|
}.merge(champ_component.input_group_error_class_names)
|
||||||
),
|
),
|
||||||
id: @champ.input_group_id,
|
|
||||||
data: { controller: stimulus_controller, **data_dependent_conditions, **stimulus_values }
|
data: { controller: stimulus_controller, **data_dependent_conditions, **stimulus_values }
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def fieldset_element_attributes
|
||||||
|
{
|
||||||
|
id: @champ.input_group_id,
|
||||||
|
"hidden": !@champ.visible?
|
||||||
|
}
|
||||||
|
end
|
||||||
|
|
||||||
def stimulus_values
|
def stimulus_values
|
||||||
if @champ.fetch_external_data_pending?
|
if @champ.fetch_external_data_pending?
|
||||||
{ turbo_poll_url_value: }
|
{ turbo_poll_url_value: }
|
||||||
|
|
|
@ -1,9 +1,10 @@
|
||||||
= content_tag((champ_component.dsfr_champ_container), html_options) do
|
.fr-fieldset__element{ **fieldset_element_attributes }
|
||||||
- if has_label?(@champ)
|
= content_tag((champ_component.dsfr_champ_container), html_options) do
|
||||||
= render EditableChamp::ChampLabelComponent.new form: @form, champ: @champ, seen_at: @seen_at
|
- if has_label?(@champ)
|
||||||
|
= render EditableChamp::ChampLabelComponent.new form: @form, champ: @champ, seen_at: @seen_at
|
||||||
|
|
||||||
= render champ_component
|
= render champ_component
|
||||||
|
|
||||||
= render Dsfr::InputStatusMessageComponent.new(errors_on_attribute: champ_component.errors_on_attribute?, error_full_messages: champ_component.error_full_messages, described_by: @champ.describedby_id)
|
= render Dsfr::InputStatusMessageComponent.new(errors_on_attribute: champ_component.errors_on_attribute?, error_full_messages: champ_component.error_full_messages, described_by: @champ.describedby_id)
|
||||||
|
|
||||||
= @form.hidden_field :id, value: @champ.id
|
= @form.hidden_field :id, value: @champ.id
|
||||||
|
|
|
@ -8,8 +8,7 @@
|
||||||
= render section
|
= render section
|
||||||
- else
|
- else
|
||||||
= fields_for champ.input_name, champ do |form|
|
= fields_for champ.input_name, champ do |form|
|
||||||
.fr-fieldset__element
|
= render EditableChamp::EditableChampComponent.new form:, champ:
|
||||||
= render EditableChamp::EditableChampComponent.new form:, champ:
|
|
||||||
- else
|
- else
|
||||||
%fieldset.fr-fieldset.fr-my-0
|
%fieldset.fr-fieldset.fr-my-0
|
||||||
- if header_section
|
- if header_section
|
||||||
|
@ -20,5 +19,4 @@
|
||||||
= render section
|
= render section
|
||||||
- else
|
- else
|
||||||
= fields_for champ.input_name, champ do |form|
|
= fields_for champ.input_name, champ do |form|
|
||||||
.fr-fieldset__element
|
= render EditableChamp::EditableChampComponent.new form:, champ:
|
||||||
= render EditableChamp::EditableChampComponent.new form:, champ:
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue