Files
fixin.me/app/views/units/_form.html.erb
barbie-bot 169e84fe8a Replace render_turbo_stream cancel handlers with form#cancel Stimulus action
Add cancel() method to form_controller that handles all close cases:
- tabular forms (<tr>): removes inner form, re-enables link, shows hidden row
- measurements create form: removes self, enables trigger link, shows no-items

Data attributes already present on controller elements (data-form, data-link,
data-hidden-row) drive the behaviour. Two extra attributes on the create form
(data-cancel-enable, data-cancel-show) cover the non-tabular case.

Delete now-unused _form_close and _edit_form_close partial templates.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-04 14:14:44 +00:00

24 lines
831 B
Plaintext

<%= tabular_fields_for @unit, form: form_tag do |form| %>
<%- tag.tr id: row, class: "form",
data: {controller: 'form', action: 'keydown->form#processKey',
link: link, form: form_tag, hidden_row: hidden_row} do %>
<td style="--depth:<%= @unit.base_id? ? 1 : 0 %>">
<%= form.text_field :symbol, required: true, autofocus: true, size: 12 %>
</td>
<td>
<%= form.text_area :description, cols: 30, rows: 1, escape: false %>
</td>
<td>
<%= form.number_field :multiplier, required: true, size: 10, min: :step if @unit.base_id? %>
</td>
<td class="flex">
<%= form.button %>
<%= image_link_to t(:cancel), "close-outline", units_path, class: 'dangerous',
name: :cancel, data: {action: 'click->form#cancel'} %>
</td>
<td></td>
<% end %>
<% end %>