chore(a11y): mutualise la gestion des <button> qui font des action POST/DESTROY dans un composant unique
This commit is contained in:
parent
d161a624c5
commit
035da4403f
19 changed files with 45 additions and 46 deletions
|
@ -1,11 +0,0 @@
|
|||
# Display a form for adding a repetition row via a button, but since it might already nested within a form
|
||||
# put this component before the actual form containing the editable champs
|
||||
class EditableChamp::AddFormRepetitionRowComponent < ApplicationComponent
|
||||
def self.form_id
|
||||
ActionView::RecordIdentifier.dom_id(Champs::RepetitionChamp.new, :create)
|
||||
end
|
||||
|
||||
def call
|
||||
form_tag('/champs/repetition/:id', method: :post, data: { 'turbo-method': :post, turbo: true }, id: self.class.form_id) {}
|
||||
end
|
||||
end
|
|
@ -1,11 +0,0 @@
|
|||
# Display a form for destroying a repetition row via a button, but since it might already be nested within a form
|
||||
# put this component before the actual form containing the editable champs
|
||||
class EditableChamp::DeleteFormRepetitionRowComponent < ApplicationComponent
|
||||
def self.form_id
|
||||
ActionView::RecordIdentifier.dom_id(Champs::RepetitionChamp.new, :delete)
|
||||
end
|
||||
|
||||
def call
|
||||
form_tag('/champs/repetition/:id', method: :delete, data: { 'turbo-method': :delete, turbo: true }, id: self.class.form_id) {}
|
||||
end
|
||||
end
|
|
@ -3,5 +3,5 @@
|
|||
= render EditableChamp::RepetitionRowComponent.new(form: @form, champ: @champ, row: champs, seen_at: @seen_at)
|
||||
|
||||
.actions{ 'data-turbo': 'true' }
|
||||
= button_tag(name: "action", formaction: champs_repetition_path(@champ.id), class: "fr-btn fr-btn--secondary fr-btn--icon-left fr-icon-add-circle-line fr-mb-3w", title: t(".add_title", libelle: @champ.libelle), form: EditableChamp::AddFormRepetitionRowComponent.form_id, id: dom_id(@champ, :create_repetition)) do
|
||||
= render NestedForms::OwnedButtonComponent.new(formaction: champs_repetition_path(@champ.id), http_method: :create, opt: { class: "fr-btn fr-btn--secondary fr-btn--icon-left fr-icon-add-circle-line fr-mb-3w", title: t(".add_title", libelle: @champ.libelle), id: dom_id(@champ, :create_repetition)}) do
|
||||
= t(".add", libelle: @champ.libelle)
|
||||
|
|
|
@ -5,5 +5,5 @@
|
|||
= render EditableChamp::EditableChampComponent.new form: form, champ: champ, seen_at: @seen_at
|
||||
|
||||
.flex.row-reverse{ 'data-turbo': 'true' }
|
||||
= button_tag(name: "action", formaction: champs_repetition_path(@champ.id, row_id: @row.first.row_id), class: "fr-btn fr-btn--sm fr-btn--tertiary fr-text-action-high--red-marianne", title: t(".delete_title", row_number: @champ.rows.find_index(@row)), form: EditableChamp::DeleteFormRepetitionRowComponent.form_id) do
|
||||
= render NestedForms::OwnedButtonComponent.new(formaction: champs_repetition_path(@champ.id, row_id: @row.first.row_id), http_method: :delete, opt: { class: "fr-btn fr-btn--sm fr-btn--tertiary fr-text-action-high--red-marianne", title: t(".delete_title", row_number: @champ.rows.find_index(@row))}) do
|
||||
= t(".delete")
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue