From 986db250cfe2ac952e145eb2bbbcd16d3be33cb7 Mon Sep 17 00:00:00 2001 From: Markus Thielker Date: Mon, 11 Mar 2024 09:52:06 +0100 Subject: [PATCH 1/6] N-FIN-18: remove environment condition --- src/app/account/page.tsx | 37 ++++++++++++++++++------------------- 1 file changed, 18 insertions(+), 19 deletions(-) diff --git a/src/app/account/page.tsx b/src/app/account/page.tsx index 4cd88f9..37926c2 100644 --- a/src/app/account/page.tsx +++ b/src/app/account/page.tsx @@ -20,26 +20,25 @@ export default async function AccountPage() { } let paymentCount = 0; - let entityCount = 0; - let categoryCount = 0; + paymentCount = await prismaClient.payment.count({ + where: { + userId: user.id, + }, + }); - if (process.env.NODE_ENV === 'development') { - paymentCount = await prismaClient.payment.count({ - where: { - userId: user.id, - }, - }); - entityCount = await prismaClient.entity.count({ - where: { - userId: user.id, - }, - }); - categoryCount = await prismaClient.category.count({ - where: { - userId: user.id, - }, - }); - } + let entityCount = 0; + entityCount = await prismaClient.entity.count({ + where: { + userId: user.id, + }, + }); + + let categoryCount = 0; + categoryCount = await prismaClient.category.count({ + where: { + userId: user.id, + }, + }); return (
From 7660f1037b26ea2825b1465c822793a8e958d523 Mon Sep 17 00:00:00 2001 From: Markus Thielker Date: Mon, 11 Mar 2024 10:27:52 +0100 Subject: [PATCH 2/6] N-FIN-19: add page size drop down The default page size is set to 50 --- src/components/ui/data-table.tsx | 102 ++++++++++++++++++++----------- 1 file changed, 65 insertions(+), 37 deletions(-) diff --git a/src/components/ui/data-table.tsx b/src/components/ui/data-table.tsx index 33815e4..5492642 100644 --- a/src/components/ui/data-table.tsx +++ b/src/components/ui/data-table.tsx @@ -4,8 +4,9 @@ import { ColumnDef, flexRender, getCoreRowModel, getPaginationRowModel, useReact import { Table, TableBody, TableCell, TableHead, TableHeader, TableRow } from '@/components/ui/table'; import { Button } from '@/components/ui/button'; -import React from 'react'; +import React, { useEffect, useState } from 'react'; import { ChevronLeft, ChevronRight, ChevronsLeft, ChevronsRight } from 'lucide-react'; +import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from '@/components/ui/select'; interface DataTableProps { columns: ColumnDef[]; @@ -20,6 +21,7 @@ export function DataTable({ pagination, className, }: DataTableProps) { + const table = useReactTable({ data, columns, @@ -27,6 +29,13 @@ export function DataTable({ getPaginationRowModel: pagination ? getPaginationRowModel() : undefined, }); + const [pageSize, setPageSize] = useState(50); + useEffect(() => { + if (pagination) { + table.setPageSize(pageSize); + } + }, [table, pagination, pageSize]); + return (
@@ -75,43 +84,62 @@ export function DataTable({
{ pagination && ( -
- + + + +
) } From 6dd2fde2b5077c1ad516d3db2d881cef9c4fde6a Mon Sep 17 00:00:00 2001 From: Markus Thielker Date: Mon, 11 Mar 2024 11:22:18 +0100 Subject: [PATCH 3/6] N-FIN-20: add fixed width on actions column --- src/components/ui/data-table.tsx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/components/ui/data-table.tsx b/src/components/ui/data-table.tsx index 5492642..c522f86 100644 --- a/src/components/ui/data-table.tsx +++ b/src/components/ui/data-table.tsx @@ -66,7 +66,8 @@ export function DataTable({ data-state={row.getIsSelected() && 'selected'} > {row.getVisibleCells().map((cell) => ( - + {flexRender(cell.column.columnDef.cell, cell.getContext())} ))} From 2f03dd8b011c0636b1dc457f23033836b442f8e3 Mon Sep 17 00:00:00 2001 From: Markus Thielker Date: Mon, 11 Mar 2024 11:27:55 +0100 Subject: [PATCH 4/6] N-FIN-21: show color in front of category name --- src/app/payments/columns.tsx | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/app/payments/columns.tsx b/src/app/payments/columns.tsx index b092e50..32a2157 100644 --- a/src/app/payments/columns.tsx +++ b/src/app/payments/columns.tsx @@ -50,7 +50,15 @@ export const columns = ( header: 'Category', cell: ({row}) => { const category = categories.find((category) => category.id === row.original.categoryId); - return category?.name ?? '-'; + return ( +
+ + + +

{category?.name ?? '-'}

+
+ ); }, }, { From c64f28a6325a85216030213d2399295de811a82a Mon Sep 17 00:00:00 2001 From: Markus Thielker Date: Mon, 11 Mar 2024 12:07:36 +0100 Subject: [PATCH 5/6] N-FIN-23: show app version on account page --- next.config.mjs | 3 +++ src/app/account/page.tsx | 17 +++++++++++++++++ 2 files changed, 20 insertions(+) diff --git a/next.config.mjs b/next.config.mjs index e769fd5..99d9088 100644 --- a/next.config.mjs +++ b/next.config.mjs @@ -8,6 +8,9 @@ const nextConfig = { return config; }, output: 'standalone', + env: { + appVersion: process.env.npm_package_version, + }, }; export default nextConfig; diff --git a/src/app/account/page.tsx b/src/app/account/page.tsx index 37926c2..fae73de 100644 --- a/src/app/account/page.tsx +++ b/src/app/account/page.tsx @@ -90,6 +90,23 @@ export default async function AccountPage() { +
+

Version {process.env.appVersion}

+ +
); } From 897cf58d2ac2ff2b95242bf12ed8e3cd29d6a2b6 Mon Sep 17 00:00:00 2001 From: Markus Thielker Date: Mon, 11 Mar 2024 12:10:58 +0100 Subject: [PATCH 6/6] N-FIN-v1.0.1: update package.json --- package-lock.json | 5 +++-- package.json | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 9c1ed7b..7843c0b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,13 @@ { "name": "next-finances", - "version": "1.0.0", + "version": "1.0.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "next-finances", - "version": "1.0.0", + "version": "1.0.1", + "license": "MIT", "dependencies": { "@hookform/resolvers": "^3.3.4", "@lucia-auth/adapter-prisma": "^4.0.0", diff --git a/package.json b/package.json index ee21928..2cb23d4 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "next-finances", "description": "A finances application to keep track of my personal spendings", "homepage": "https://github.com/MarkusThielker/next-finances", - "version": "1.0.0", + "version": "1.0.1", "license": "MIT", "author": { "name": "Markus Thielker"