From db8d1980609551354fd978dfb8807a969df2739b Mon Sep 17 00:00:00 2001 From: Rafael Ciobotariu Date: Fri, 28 Mar 2025 12:52:41 +0200 Subject: [PATCH 1/2] created card for every form in form page --- .../src/pages/ReportingFormsList.tsx | 61 +++++++++++++++---- .../src/routes/forms/index.tsx | 2 + 2 files changed, 50 insertions(+), 13 deletions(-) diff --git a/web-citizen-reporting/web-citizen-reporting-template/src/pages/ReportingFormsList.tsx b/web-citizen-reporting/web-citizen-reporting-template/src/pages/ReportingFormsList.tsx index 7ffbdc2a3..17b96f1a6 100644 --- a/web-citizen-reporting/web-citizen-reporting-template/src/pages/ReportingFormsList.tsx +++ b/web-citizen-reporting/web-citizen-reporting-template/src/pages/ReportingFormsList.tsx @@ -1,23 +1,58 @@ import { Button } from "@/components/ui/button"; -import { useForms } from "@/queries/use-forms"; +import { Card, CardContent, CardHeader, CardTitle } from "@/components/ui/card"; +import { formsOptions } from "@/queries/use-forms"; +import { useSuspenseQuery } from "@tanstack/react-query"; import { Link } from "@tanstack/react-router"; function ReportingFormsList() { - const { data: forms } = useForms(); + const { data: forms } = useSuspenseQuery(formsOptions()); + + const sortedForms = [...forms].sort( + (a, b) => a.displayOrder - b.displayOrder + ); return ( - <> - {forms?.map((form) => ( -
- {form.name[form.defaultLanguage]} - -
+
+ {sortedForms.map((form) => ( + + + {form.icon && ( +
+ )} + + {form.name[form.defaultLanguage]} + + + +
+

+ {form.description[form.defaultLanguage]} +

+
+ {form.numberOfQuestions} questions + + {/* - form.lastModifiedOn nu este primit de la API */} + + {new Date(form.lastModifiedOn).toLocaleDateString()} + +
+
+ + +
+ ))} - +
); } diff --git a/web-citizen-reporting/web-citizen-reporting-template/src/routes/forms/index.tsx b/web-citizen-reporting/web-citizen-reporting-template/src/routes/forms/index.tsx index b0686bde9..135669cba 100644 --- a/web-citizen-reporting/web-citizen-reporting-template/src/routes/forms/index.tsx +++ b/web-citizen-reporting/web-citizen-reporting-template/src/routes/forms/index.tsx @@ -1,6 +1,8 @@ import ReportingFormsList from "@/pages/ReportingFormsList"; +import { formsOptions } from "@/queries/use-forms"; import { createFileRoute } from "@tanstack/react-router"; export const Route = createFileRoute("/forms/")({ + loader: (opts) => opts.context.queryClient.ensureQueryData(formsOptions()), component: ReportingFormsList, }); From 3915f22b56d2bc06b9b25e678511b1c997016b1f Mon Sep 17 00:00:00 2001 From: Rafael Ciobotariu Date: Fri, 28 Mar 2025 13:17:21 +0200 Subject: [PATCH 2/2] deleted span with lastModifiedOn data --- .../src/pages/ReportingFormsList.tsx | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/web-citizen-reporting/web-citizen-reporting-template/src/pages/ReportingFormsList.tsx b/web-citizen-reporting/web-citizen-reporting-template/src/pages/ReportingFormsList.tsx index 17b96f1a6..41ce99a5a 100644 --- a/web-citizen-reporting/web-citizen-reporting-template/src/pages/ReportingFormsList.tsx +++ b/web-citizen-reporting/web-citizen-reporting-template/src/pages/ReportingFormsList.tsx @@ -34,13 +34,8 @@ function ReportingFormsList() {

{form.description[form.defaultLanguage]}

-
+
{form.numberOfQuestions} questions - - {/* - form.lastModifiedOn nu este primit de la API */} - - {new Date(form.lastModifiedOn).toLocaleDateString()} -