feat: first batch of work

This commit is contained in:
Herculino Trotta
2025-11-01 03:15:44 -03:00
parent e600d87968
commit a63367a772
175 changed files with 3433 additions and 2245 deletions
@@ -3,33 +3,33 @@
<div hx-get="{% url 'insights_emergency_fund' %}" hx-trigger="updated from:window" class="show-loading"
hx-swap="outerHTML">
<div class="tw:join tw:join-vertical tw:w-full" id="emergency-fund-accordion">
<div class="join join-vertical w-full" id="emergency-fund-accordion">
{% for id, data in data.items %}
{% if data.average %}
<div class="tw:collapse tw:collapse-arrow tw:join-item tw:border-base-300 tw:border">
<div class="collapse collapse-arrow join-item border-base-300 border">
<input type="radio" name="emergency-fund-accordion" />
<div class="tw:collapse-title tw:text-base tw:font-medium">
<div class="collapse-title text-base font-medium">
<span>
<span class="tw:text-base-content/60">{% trans "You've spent an average of" %}</span>
<span class="text-base-content/60">{% trans "You've spent an average of" %}</span>
<c-amount.display
:amount="data.average"
:prefix="data.currency.prefix"
:suffix="data.currency.suffix"
:decimal_places="data.currency.decimal_places"
custom_class="tw:text-3xl"
custom_class="text-3xl"
divless></c-amount.display>
<span class="tw:text-base-content/60">{% trans 'on the last 12 months, at this rate you could go by' %}</span>
<span class="tw:text-3xl">{{ data.months }}</span>
<span class="tw:text-base-content/60">{% trans 'months without any income.' %}</span>
<span class="text-base-content/60">{% trans 'on the last 12 months, at this rate you could go by' %}</span>
<span class="text-3xl">{{ data.months }}</span>
<span class="text-base-content/60">{% trans 'months without any income.' %}</span>
</span>
</div>
<div class="tw:collapse-content">
<div class="tw:flex tw:justify-between tw:items-baseline tw:mt-2">
<div class="tw:text-end tw:font-mono">
<div class="tw:text-base-content/60">{% translate 'average expenses' %}</div>
<div class="collapse-content">
<div class="flex justify-between items-baseline mt-2">
<div class="text-end font-mono">
<div class="text-base-content/60">{% translate 'average expenses' %}</div>
</div>
<div class="dotted-line tw:flex-grow"></div>
<div class="tw:text-end tw:font-mono">
<div class="dotted-line flex-grow"></div>
<div class="text-end font-mono">
<c-amount.display
:amount="data.average"
:prefix="data.currency.prefix"
@@ -38,12 +38,12 @@
color="red"></c-amount.display>
</div>
</div>
<div class="tw:flex tw:justify-between tw:items-baseline tw:mt-2">
<div class="tw:text-end tw:font-mono">
<div class="tw:text-base-content/60">{% translate 'liquid total' %}</div>
<div class="flex justify-between items-baseline mt-2">
<div class="text-end font-mono">
<div class="text-base-content/60">{% translate 'liquid total' %}</div>
</div>
<div class="dotted-line tw:flex-grow"></div>
<div class="tw:text-end tw:font-mono">
<div class="dotted-line flex-grow"></div>
<div class="text-end font-mono">
<c-amount.display
:amount="data.total_current"
:prefix="data.currency.prefix"
@@ -52,12 +52,12 @@
color="{% if data.total_current > 0 %}green{% elif data.total_current < 0 %}red{% endif %}"></c-amount.display>
</div>
</div>
<div class="tw:flex tw:justify-between tw:items-baseline tw:mt-2">
<div class="tw:text-end tw:font-mono">
<div class="tw:text-base-content/60">{% translate 'months left' %}</div>
<div class="flex justify-between items-baseline mt-2">
<div class="text-end font-mono">
<div class="text-base-content/60">{% translate 'months left' %}</div>
</div>
<div class="dotted-line tw:flex-grow"></div>
<div class="tw:text-end tw:font-mono">
<div class="dotted-line flex-grow"></div>
<div class="text-end font-mono">
<span>{{ data.months }}</span>
</div>
</div>