Compare commits

..

4 commits

Author SHA1 Message Date
9252c86f5c feat(libra): shrink filter controls on mobile
Drop the date-range/type-filter buttons and custom-date inputs from
h-8 to h-7 below md to claw back a bit of vertical space on phones,
keeping h-8 on tablet/desktop where it's comfortable.
2026-05-16 23:28:29 +02:00
22ad5fd974 feat(libra): drop User and Source rows from transaction cards
User row is noise on a personal history view, and Source is always
libra-api right now — both just clutter the card. Drop them; can
bring back if/when there's a second source to disambiguate.
2026-05-16 23:27:41 +02:00
8b91c7bd72 feat(libra): add income/expense type filter to transaction history
All / Income / Expenses toggle row with a Filter icon, aligned to the
Calendar-iconed date range row above. Filters transactionsToDisplay
client-side using the existing isIncome/isExpense helpers; works on
top of the search and date filters.
2026-05-16 23:25:59 +02:00
396b012707 feat(libra): color-code income/expense entries in transaction history
Left green/red stripe on each card plus a matching tint on the
income-entry / expense-entry tag badge — mirrors the Record page's
red/green palette so the two screens read consistently.
2026-05-16 23:24:20 +02:00

View file

@ -216,7 +216,7 @@ onMounted(() => {
:key="option.value" :key="option.value"
:variant="dateRangeType === option.value ? 'default' : 'outline'" :variant="dateRangeType === option.value ? 'default' : 'outline'"
size="sm" size="sm"
class="h-8 px-3 text-xs" class="h-7 md:h-8 px-3 text-xs"
@click="onDateRangeTypeChange(option.value)" @click="onDateRangeTypeChange(option.value)"
:disabled="isLoading" :disabled="isLoading"
> >
@ -232,7 +232,7 @@ onMounted(() => {
:key="option.value" :key="option.value"
:variant="typeFilter === option.value ? 'default' : 'outline'" :variant="typeFilter === option.value ? 'default' : 'outline'"
size="sm" size="sm"
class="h-8 px-3 text-xs" class="h-7 md:h-8 px-3 text-xs"
@click="typeFilter = option.value" @click="typeFilter = option.value"
:disabled="isLoading" :disabled="isLoading"
> >
@ -247,7 +247,7 @@ onMounted(() => {
<Input <Input
type="date" type="date"
v-model="customStartDate" v-model="customStartDate"
class="h-8 text-xs" class="h-7 md:h-8 text-xs"
:disabled="isLoading" :disabled="isLoading"
/> />
</div> </div>
@ -256,13 +256,13 @@ onMounted(() => {
<Input <Input
type="date" type="date"
v-model="customEndDate" v-model="customEndDate"
class="h-8 text-xs" class="h-7 md:h-8 text-xs"
:disabled="isLoading" :disabled="isLoading"
/> />
</div> </div>
<Button <Button
size="sm" size="sm"
class="h-8 px-3 text-xs" class="h-7 md:h-8 px-3 text-xs"
@click="applyCustomDateRange" @click="applyCustomDateRange"
:disabled="isLoading || !customStartDate || !customEndDate" :disabled="isLoading || !customStartDate || !customEndDate"
> >