Files
sure/app/views/transactions/_transaction.html.erb
Jose Farias 4c5f8263bc Implement transaction category management (#688)
* Singularize "transaction" in transaction-nested paths

* Refactor category badge partial

* Let modal content define its width

* Add contectual menu to transactions index

* Add null_category helper

* Implement category edits

* Fix inline transaction category badges

* Fix typos in system test paths

* Add missing translations

* Add decoration to color select controller

* Wire up transaction category creation

* Fix indent in color-select-controller

* Add button for clearing category from transaction

* Implement category deletions

* Fix existing modal sizes

* Use null_category in a single place

* Remove anemic method in category deletion controller

* reassign_and_destroy -> reassign_transactions_then_destroy

* Fix i18n

* Remove destroy action from CategoriesController callbacks

* transactions_merchant -> transaction_merchant

* reassign_transactions_then_destroy -> replace_and_destroy

* Add transaction category CRUD tests

* Add presence check for transaction_id

* Check replacement_category_id presence

* Test Transaction::Category#replace_and_destroy!
2024-05-02 09:24:31 -04:00

23 lines
1.0 KiB
Plaintext

<%# locals: (transaction:) %>
<%= turbo_frame_tag dom_id(transaction), class:"text-gray-900 flex items-center gap-6 py-4 text-sm font-medium px-4" do %>
<% if full_width_transaction_row?(request.path) %>
<%= link_to transaction_path(transaction), data: { turbo_frame: "modal" }, class: "group" do %>
<%= render partial: "transactions/transaction_name", locals: { name: transaction.name } %>
<% end %>
<div class="w-48">
<%= render partial: "transactions/categories/menu", locals: { transaction: } %>
</div>
<div>
<p><%= transaction.account.name %></p>
</div>
<% else %>
<%= render partial: "transactions/transaction_name", locals: { name: transaction.name } %>
<div class="w-36">
<%= render partial: "transactions/categories/badge", locals: { category: transaction.category } %>
</div>
<% end %>
<div class="ml-auto">
<%= content_tag :p, format_money(-transaction.amount_money), class: ["whitespace-nowrap", { "text-green-600": transaction.amount.negative? }] %>
</div>
<% end %>