diff --git a/app/home/(user)/(dashboard)/layout.tsx b/app/home/(user)/(dashboard)/layout.tsx
index 5e08ec6..96d81f5 100644
--- a/app/home/(user)/(dashboard)/layout.tsx
+++ b/app/home/(user)/(dashboard)/layout.tsx
@@ -7,6 +7,8 @@ import { z } from 'zod';
import { UserWorkspaceContextProvider } from '@kit/accounts/components';
import { Page, PageMobileNavigation, PageNavigation } from '@kit/ui/page';
import { SidebarProvider } from '@kit/ui/shadcn-sidebar';
+import { StoreCart } from '@medusajs/types';
+import { retrieveCart } from '@lib/data';
import { AppLogo } from '~/components/app-logo';
import { personalAccountNavigationConfig } from '~/config/personal-account-navigation.config';
@@ -17,7 +19,6 @@ import { HomeMenuNavigation } from '../_components/home-menu-navigation';
import { HomeMobileNavigation } from '../_components/home-mobile-navigation';
import { HomeSidebar } from '../_components/home-sidebar';
import { loadUserWorkspace } from '../_lib/server/load-user-workspace';
-import { retrieveCart } from '@lib/data';
function UserHomeLayout({ children }: React.PropsWithChildren) {
const state = use(getLayoutState());
@@ -44,7 +45,7 @@ function SidebarLayout({ children }: React.PropsWithChildren) {
-
+
{children}
@@ -66,7 +67,7 @@ function HeaderLayout({ children }: React.PropsWithChildren) {
-
+
@@ -84,14 +85,16 @@ function HeaderLayout({ children }: React.PropsWithChildren) {
function MobileNavigation({
workspace,
+ cart,
}: {
workspace: Awaited>;
+ cart: StoreCart | null;
}) {
return (
<>
-
+
>
);
}
diff --git a/app/home/(user)/_components/home-menu-navigation.tsx b/app/home/(user)/_components/home-menu-navigation.tsx
index 761be60..407ebf1 100644
--- a/app/home/(user)/_components/home-menu-navigation.tsx
+++ b/app/home/(user)/_components/home-menu-navigation.tsx
@@ -46,7 +46,7 @@ export async function HomeMenuNavigation(props: { workspace: UserWorkspace, cart
diff --git a/app/home/(user)/_components/home-mobile-navigation.tsx b/app/home/(user)/_components/home-mobile-navigation.tsx
index bd3a502..87fd7d5 100644
--- a/app/home/(user)/_components/home-mobile-navigation.tsx
+++ b/app/home/(user)/_components/home-mobile-navigation.tsx
@@ -2,7 +2,7 @@
import Link from 'next/link';
-import { LogOut, Menu } from 'lucide-react';
+import { LogOut, Menu, ShoppingCart } from 'lucide-react';
import { useSignOut } from '@kit/supabase/hooks/use-sign-out';
import {
@@ -16,6 +16,7 @@ import {
} from '@kit/ui/dropdown-menu';
import { If } from '@kit/ui/if';
import { Trans } from '@kit/ui/trans';
+import { StoreCart } from '@medusajs/types';
import featuresFlagConfig from '~/config/feature-flags.config';
import { personalAccountNavigationConfig } from '~/config/personal-account-navigation.config';
@@ -24,7 +25,7 @@ import { personalAccountNavigationConfig } from '~/config/personal-account-navig
import { HomeAccountSelector } from '../_components/home-account-selector';
import type { UserWorkspace } from '../_lib/server/load-user-workspace';
-export function HomeMobileNavigation(props: { workspace: UserWorkspace }) {
+export function HomeMobileNavigation(props: { workspace: UserWorkspace, cart: StoreCart | null }) {
const signOut = useSignOut();
const Links = personalAccountNavigationConfig.routes.map((item, index) => {
@@ -46,6 +47,10 @@ export function HomeMobileNavigation(props: { workspace: UserWorkspace }) {
}
});
+
+ const cartItemsCount = props.cart?.items?.length ?? 0;
+ const hasCartItems = cartItemsCount > 0;
+
return (
@@ -69,6 +74,18 @@ export function HomeMobileNavigation(props: { workspace: UserWorkspace }) {
+
+
+ }
+ labelOptions={{ count: cartItemsCount }}
+ />
+
+
+
+
{Links}
@@ -83,6 +100,7 @@ function DropdownLink(
props: React.PropsWithChildren<{
path: string;
label: string;
+ labelOptions?: Record;
Icon: React.ReactNode;
}>,
) {
@@ -95,7 +113,7 @@ function DropdownLink(
{props.Icon}
-
+
diff --git a/public/locales/en/common.json b/public/locales/en/common.json
index 280e9f7..ea42f86 100644
--- a/public/locales/en/common.json
+++ b/public/locales/en/common.json
@@ -58,6 +58,7 @@
"back": "Back",
"welcome": "Welcome",
"shoppingCart": "Shopping cart",
+ "shoppingCartCount": "Shopping cart ({{count}})",
"search": "Search{{end}}",
"myActions": "My actions",
"healthPackageComparison": {
diff --git a/public/locales/et/common.json b/public/locales/et/common.json
index 05008e4..d1e5068 100644
--- a/public/locales/et/common.json
+++ b/public/locales/et/common.json
@@ -58,6 +58,7 @@
"back": "Back",
"welcome": "Tere tulemast",
"shoppingCart": "Ostukorv",
+ "shoppingCartCount": "Ostukorv ({{count}})",
"search": "Otsi{{end}}",
"myActions": "Minu toimingud",
"healthPackageComparison": {