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
@@ -7,24 +7,24 @@
{% block body %}
{% regroup month_year_data by year as years_list %}
<div role="tablist" class="tw:tabs tw:tabs-bordered tw:w-full" id="yearTabs">
<div role="tablist" class="tabs tabs-border w-full" id="yearTabs">
{% for x in years_list %}
<input type="radio"
name="year_tabs"
role="tab"
class="tw:tab"
class="tab"
aria-label="{{ x.grouper }}"
id="tab-{{ x.grouper }}"
{% if x.grouper == current_year %}checked="checked"{% endif %} />
<div role="tabpanel" class="tw:tab-content tw:p-4" id="{{ x.grouper }}-pane">
<ul class="tw:menu tw:bg-base-100 tw:w-full" id="month-year-list" hx-boost="true">
<div role="tabpanel" class="tab-content" id="{{ x.grouper }}-pane">
<ul class="menu bg-base-100 w-full" id="month-year-list" hx-boost="true">
{% for month_data in x.list %}
<li {% if month_data.month == current_month and month_data.year == current_year %}class="tw:disabled"{% endif %}>
<a class="{% if month_data.month == current_month and month_data.year == current_year %}tw:active{% endif %}"
<li {% if month_data.month == current_month and month_data.year == current_year %}class="disabled"{% endif %}>
<a class="{% if month_data.month == current_month and month_data.year == current_year %}menu-active{% endif %}"
href={{ month_data.url }}
{% if month_data.month == current_month and month_data.year == current_year %}aria-disabled="true"{% endif %}>
<span class="tw:flex-1">{{ month_data.month|month_name }}</span>
<span class="tw:badge tw:badge-primary">{{ month_data.transaction_count }}</span>
<span class="flex-1">{{ month_data.month|month_name }}</span>
<span class="badge badge-primary">{{ month_data.transaction_count }}</span>
</a>
</li>
{% endfor %}
@@ -32,8 +32,8 @@
</div>
{% endfor %}
</div>
<hr class="tw:border-base-300">
<div class="tw:w-full tw:text-end">
<a class="tw:btn tw:btn-outline tw:btn-primary tw:btn-sm" href="{{ today_url }}" role="button" hx-boost="true">{% trans 'Today' %}</a>
<hr class="hr my-4">
<div class="w-full text-end">
<a class="btn btn-outline btn-primary btn-sm" href="{{ today_url }}" role="button" hx-boost="true">{% trans 'Today' %}</a>
</div>
{% endblock %}
+5 -5
View File
@@ -2,12 +2,12 @@
{% load toast_bg %}
{% if messages %}
{% for message in messages %}
<div class="tw:alert tw:alert-{{ message.tags | toast_bg }}"
<div class="toasty alert alert-{{ message.tags | toast_bg }}"
role="alert"
aria-live="assertive"
aria-atomic="true">
<div class="tw:flex tw:items-center tw:justify-between tw:w-full">
<div class="tw:flex tw:items-center tw:gap-2">
<div class="flex items-center justify-between w-full">
<div class="flex items-center gap-2">
<i class="{{ message.tags | toast_icon }} fa-fw"></i>
<div>
<strong>{{ message.tags | toast_title }}</strong>
@@ -15,8 +15,8 @@
</div>
</div>
<button type="button"
class="tw:btn tw:btn-ghost tw:btn-sm tw:btn-circle"
data-bs-dismiss="toast"
class="btn btn-ghost btn-sm btn-circle"
_="on click remove closest .toasty"
aria-label={% translate 'Close' %}>
<i class="fa-solid fa-xmark"></i>
</button>
+21 -2
View File
@@ -1,3 +1,22 @@
{#This is here so we can add dynamic Tailwind classes that will be required via JS/hyperscript but Tailwind has no knowledge of#}
<div class="tw:lg:w-[15vw]"></div>
<div class="tw:lg:ml-[16vw]"></div>
<div class="lg:w-[15vw]"></div>
<div class="lg:ml-[16vw]"></div>
<div class="grid-cols-12"></div>
<div class="md:col-span-1"></div>
<div class="md:col-span-2"></div>
<div class="md:col-span-3"></div>
<div class="md:col-span-4"></div>
<div class="md:col-span-5"></div>
<div class="md:col-span-6"></div>
<div class="md:col-span-7"></div>
<div class="md:col-span-8"></div>
<div class="md:col-span-9"></div>
<div class="md:col-span-10"></div>
<div class="md:col-span-11"></div>
<div class="md:col-span-12"></div>
<div class="alert-error"></div>
<div class="alert-info"></div>
<div class="alert-success"></div>
<div class="alert-warning"></div>
<div class="textarea"></div>
<div class="border-base-content/60"></div>