diff --git a/app/home/(user)/(dashboard)/order/page.tsx b/app/home/(user)/(dashboard)/order/page.tsx
index a26d6e1..98c1c4f 100644
--- a/app/home/(user)/(dashboard)/order/page.tsx
+++ b/app/home/(user)/(dashboard)/order/page.tsx
@@ -10,6 +10,7 @@ import { Trans } from '@kit/ui/trans';
import { HomeLayoutPageHeader } from '../../_components/home-page-header';
import OrdersTable from '../../_components/orders/orders-table';
import { withI18n } from '~/lib/i18n/with-i18n';
+import type { IOrderLineItem } from '../../_components/orders/types';
export async function generateMetadata() {
const { t } = await createI18nServerInstance();
@@ -29,11 +30,17 @@ async function OrdersPage() {
}
const analysisPackagesType = productTypes.find(({ metadata }) => metadata?.handle === 'analysis-packages');
- const analysisPackageOrders = orders.flatMap(({ id, items, payment_status, fulfillment_status }) => items
+ const analysisPackageOrders: IOrderLineItem[] = orders.flatMap(({ id, items, payment_status, fulfillment_status }) => items
?.filter((item) => item.product_type_id === analysisPackagesType?.id)
.map((item) => ({ item, orderId: id, orderStatus: `${payment_status}/${fulfillment_status}` }))
|| []);
+ const otherOrders: IOrderLineItem[] = orders
+ .filter(({ items }) => items?.some((item) => item.product_type_id !== analysisPackagesType?.id))
+ .flatMap(({ id, items, payment_status, fulfillment_status }) => items
+ ?.map((item) => ({ item, orderId: id, orderStatus: `${payment_status}/${fulfillment_status}` }))
+ || []);
+
return (
<>
}
/>
-
+
+
>
);
diff --git a/app/home/(user)/_components/orders/orders-item.tsx b/app/home/(user)/_components/orders/orders-item.tsx
index 26e965b..2d80f7d 100644
--- a/app/home/(user)/_components/orders/orders-item.tsx
+++ b/app/home/(user)/_components/orders/orders-item.tsx
@@ -5,10 +5,10 @@ import {
import { Eye } from "lucide-react";
import Link from "next/link";
import { formatDate } from "date-fns";
-import { IAnalysisPackageOrder } from "./types";
+import { IOrderLineItem } from "./types";
export default function OrdersItem({ orderItem }: {
- orderItem: IAnalysisPackageOrder,
+ orderItem: IOrderLineItem,
}) {
return (
diff --git a/app/home/(user)/_components/orders/orders-table.tsx b/app/home/(user)/_components/orders/orders-table.tsx
index b2e4b1e..2514aab 100644
--- a/app/home/(user)/_components/orders/orders-table.tsx
+++ b/app/home/(user)/_components/orders/orders-table.tsx
@@ -7,12 +7,13 @@ import {
TableHeader,
} from '@kit/ui/table';
import OrdersItem from "./orders-item";
-import { IAnalysisPackageOrder } from "./types";
+import { IOrderLineItem } from "./types";
const IS_SHOWN_ORDER_STATUS = true as boolean;
-export default function OrdersTable({ orderItems }: {
- orderItems: IAnalysisPackageOrder[];
+export default function OrdersTable({ orderItems, title }: {
+ orderItems: IOrderLineItem[];
+ title: string;
}) {
if (!orderItems || orderItems.length === 0) {
return null;
@@ -23,7 +24,7 @@ export default function OrdersTable({ orderItems }: {
-
+
diff --git a/app/home/(user)/_components/orders/types.ts b/app/home/(user)/_components/orders/types.ts
index 2ad04ce..422043e 100644
--- a/app/home/(user)/_components/orders/types.ts
+++ b/app/home/(user)/_components/orders/types.ts
@@ -1,6 +1,6 @@
import { StoreOrderLineItem } from "@medusajs/types";
-export interface IAnalysisPackageOrder {
+export interface IOrderLineItem {
item: StoreOrderLineItem;
orderId: string;
orderStatus: string;
diff --git a/public/locales/en/orders.json b/public/locales/en/orders.json
index f1f1273..33db1e6 100644
--- a/public/locales/en/orders.json
+++ b/public/locales/en/orders.json
@@ -3,6 +3,7 @@
"description": "View your orders",
"table": {
"analysisPackage": "Analysis package",
+ "otherOrders": "Order",
"createdAt": "Ordered at"
}
}
\ No newline at end of file
diff --git a/public/locales/et/orders.json b/public/locales/et/orders.json
index aa2f7ff..dcba485 100644
--- a/public/locales/et/orders.json
+++ b/public/locales/et/orders.json
@@ -3,6 +3,7 @@
"description": "Vaata oma tellimusi",
"table": {
"analysisPackage": "Analüüsi pakett",
+ "otherOrders": "Tellimus",
"createdAt": "Tellitud"
}
}
\ No newline at end of file