From 50164dc62921853c4535ac2807baae8a02a6af26 Mon Sep 17 00:00:00 2001
From: Hayden <64056131+hay-kot@users.noreply.github.com>
Date: Wed, 22 Mar 2023 12:05:26 -0800
Subject: [PATCH] filter details for zero values
---
frontend/components/Base/Card.vue | 46 +++++++++++++++----
.../components/global/DetailsSection/types.ts | 15 ++++++
frontend/pages/item/[id]/index.vue | 45 ++++++++++++++----
3 files changed, 86 insertions(+), 20 deletions(-)
diff --git a/frontend/components/Base/Card.vue b/frontend/components/Base/Card.vue
index 464066f..8926c29 100644
--- a/frontend/components/Base/Card.vue
+++ b/frontend/components/Base/Card.vue
@@ -1,16 +1,42 @@
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
+
diff --git a/frontend/components/global/DetailsSection/types.ts b/frontend/components/global/DetailsSection/types.ts
index 92c6f90..a7086d0 100644
--- a/frontend/components/global/DetailsSection/types.ts
+++ b/frontend/components/global/DetailsSection/types.ts
@@ -36,3 +36,18 @@ export type Detail = BaseDetail & {
export type AnyDetail = DateDetail | CurrencyDetail | LinkDetail | MarkdownDetail | Detail;
export type Details = Array;
+
+export function filterZeroValues(details: Details): Details {
+ return details.filter(detail => {
+ switch (detail.type) {
+ case "date":
+ return validDate(detail.text);
+ case "currency":
+ return !!detail.text;
+ case "link":
+ return !!detail.text && !!detail.href;
+ default:
+ return detail.text !== null && detail.text !== "" && detail.text !== undefined;
+ }
+ });
+}
diff --git a/frontend/pages/item/[id]/index.vue b/frontend/pages/item/[id]/index.vue
index 5794a77..e9fb281 100644
--- a/frontend/pages/item/[id]/index.vue
+++ b/frontend/pages/item/[id]/index.vue
@@ -1,5 +1,5 @@