feat: automated replacement

This commit is contained in:
Herculino Trotta
2025-10-28 14:13:30 -03:00
parent dd82289488
commit e600d87968
167 changed files with 4442 additions and 2503 deletions
@@ -1,9 +1,9 @@
{% load i18n %}
<div class="container px-md-3 py-3 column-gap-5">
<div class="tw:text-3xl fw-bold font-monospace tw:w-full mb-3">
<div class="tw:container tw:px-md-3 tw:py-3 tw:column-gap-5">
<div class="tw:text-3xl tw:font-bold tw:font-mono tw:w-full tw:mb-3">
{% spaceless %}
<div>{% translate 'Recurring Transactions' %}<span>
<a class="text-decoration-none tw:text-2xl p-1 category-action"
<a class="tw:no-underline tw:text-2xl tw:p-1 category-action"
role="button"
data-bs-toggle="tooltip"
data-bs-title="{% translate "Add" %}"
@@ -14,22 +14,16 @@
{% endspaceless %}
</div>
<div class="card">
<div class="card-header">
<ul class="nav nav-pills card-header-pills" id="myTab" role="tablist">
<li class="nav-item" role="presentation">
<button class="nav-link active" data-bs-toggle="tab" type="button" role="tab" aria-selected="true" hx-get="{% url 'active_recurring_transaction_list' %}" hx-trigger="load, click" hx-target="#recurring-transactions-table">{% translate 'Active' %}</button>
</li>
<li class="nav-item" role="presentation">
<button class="nav-link" hx-get="{% url 'paused_recurring_transaction_list' %}" hx-target="#recurring-transactions-table" data-bs-toggle="tab" type="button" role="tab" aria-selected="false">{% translate 'Paused' %}</button>
</li>
<li class="nav-item" role="presentation">
<button class="nav-link" hx-get="{% url 'finished_recurring_transaction_list' %}" hx-target="#recurring-transactions-table" data-bs-toggle="tab" type="button" role="tab" aria-selected="false">{% translate 'Finished' %}</button>
</li>
</ul>
<div class="tw:card tw:bg-base-100 tw:shadow-xl">
<div class="tw:card-header tw:bg-base-200 tw:p-4">
<div role="tablist" class="tw:tabs tw:tabs-lifted">
<button class="tw:tab tw:tab-active" data-bs-toggle="tab" type="button" role="tab" aria-selected="true" hx-get="{% url 'active_recurring_transaction_list' %}" hx-trigger="load, click" hx-target="#recurring-transactions-table">{% translate 'Active' %}</button>
<button class="tw:tab" hx-get="{% url 'paused_recurring_transaction_list' %}" hx-target="#recurring-transactions-table" data-bs-toggle="tab" type="button" role="tab" aria-selected="false">{% translate 'Paused' %}</button>
<button class="tw:tab" hx-get="{% url 'finished_recurring_transaction_list' %}" hx-target="#recurring-transactions-table" data-bs-toggle="tab" type="button" role="tab" aria-selected="false">{% translate 'Finished' %}</button>
</div>
</div>
<div class="card-body">
<div class="tw:card-body">
<div id="recurring-transactions-table"></div>
</div>
@@ -10,22 +10,22 @@
{% if recurring_transactions %}
<c-config.search></c-config.search>
<div class="table-responsive">
<table class="table table-hover align-middle">
<div class="tw:overflow-x-auto">
<table class="tw:table tw:table-zebra">
<thead>
<tr>
<th scope="col" class="col-auto"></th>
<th scope="col" class="col">{% translate 'Name' %}</th>
<th scope="col" class="col">{% translate 'Account' %}</th>
<th scope="col" class="col">{% translate 'Amount' %}</th>
<th scope="col" class="tw:w-auto"></th>
<th scope="col">{% translate 'Name' %}</th>
<th scope="col">{% translate 'Account' %}</th>
<th scope="col">{% translate 'Amount' %}</th>
</tr>
</thead>
<tbody>
{% for recurring_transaction in recurring_transactions %}
<tr class="recurring_transaction">
<td class="col-auto text-center">
<div class="btn-group" role="group" aria-label="{% translate 'Actions' %}">
<a class="btn btn-secondary btn-sm"
<td class="tw:w-auto tw:text-center">
<div class="tw:join" role="group" aria-label="{% translate 'Actions' %}">
<a class="tw:btn tw:btn-secondary tw:btn-sm tw:join-item"
role="button"
data-bs-toggle="tooltip"
data-bs-title="{% translate "Edit" %}"
@@ -33,7 +33,7 @@
hx-swap="innerHTML"
hx-target="#generic-offcanvas">
<i class="fa-solid fa-pencil fa-fw"></i></a>
<a class="btn btn-secondary btn-sm "
<a class="tw:btn tw:btn-secondary tw:btn-sm tw:join-item"
role="button"
data-bs-toggle="tooltip"
data-bs-title="{% translate "Transactions" %}"
@@ -43,7 +43,7 @@
<i class="fa-solid fa-eye fa-fw"></i></a>
{% if status != 'finished' %}
{% if recurring_transaction.is_paused %}
<a class="btn btn-secondary btn-sm text-info"
<a class="tw:btn tw:btn-secondary tw:btn-sm tw:join-item tw:text-info"
role="button"
data-bs-toggle="tooltip"
data-bs-title="{% translate "Unpause" %}"
@@ -57,7 +57,7 @@
data-confirm-text="{% translate "Yes, unpause it!" %}"
_="install prompt_swal"><i class="fa-solid fa-play fa-fw"></i></a>
{% else %}
<a class="btn btn-secondary btn-sm text-info"
<a class="tw:btn tw:btn-secondary tw:btn-sm tw:join-item tw:text-info"
role="button"
data-bs-toggle="tooltip"
data-bs-title="{% translate "Pause" %}"
@@ -72,7 +72,7 @@
_="install prompt_swal">
<i class="fa-solid fa-pause fa-fw"></i></a>
{% endif %}
<a class="btn btn-secondary btn-sm text-info"
<a class="tw:btn tw:btn-secondary tw:btn-sm tw:join-item tw:text-info"
role="button"
data-bs-toggle="tooltip"
data-bs-title="{% translate "Finish" %}"
@@ -87,7 +87,7 @@
_="install prompt_swal">
<i class="fa-solid fa-flag-checkered fa-fw"></i></a>
{% endif %}
<a class="btn btn-secondary btn-sm text-danger"
<a class="tw:btn tw:btn-secondary tw:btn-sm tw:join-item tw:text-error"
role="button"
data-bs-toggle="tooltip"
data-bs-title="{% translate "Delete" %}"
@@ -101,16 +101,16 @@
_="install prompt_swal"><i class="fa-solid fa-trash fa-fw"></i></a>
</div>
</td>
<td class="col">
<td>
<div class="{% if recurring_transaction.type == 'EX' %}tw:text-red-400{% else %}tw:text-green-400{% endif %}">
{{ recurring_transaction.description }}
</div>
<div class="tw:text-sm tw:text-gray-400">{{ recurring_transaction.notes|linebreaksbr }}</div>
<div class="tw:text-sm tw:text-base-content/60">{{ recurring_transaction.notes|linebreaksbr }}</div>
</td>
<td class="col-auto">
<td class="tw:w-auto">
{% if recurring_transaction.account.group %}{{ recurring_transaction.account.group }} • {% endif %}{{ recurring_transaction.account }}
</td>
<td class="col-auto">
<td class="tw:w-auto">
<c-amount.display
:amount="recurring_transaction.amount"
:prefix="recurring_transaction.account.currency.prefix"