diff --git a/src/app/[name]/(Main)/page.tsx b/src/app/[name]/(Main)/page.tsx
index 8ff6a21..54f3163 100644
--- a/src/app/[name]/(Main)/page.tsx
+++ b/src/app/[name]/(Main)/page.tsx
@@ -5,7 +5,6 @@ import SearchBox from "@/components/input/SearchBox";
import CategoryItemRenderer from "@/components/listview/CategoryItemRenderer";
import HorizontalScrollView from "@/components/listview/HorizontalScrollView";
import Image from "next/image";
-import EqualizerIcon from "@/components/icons/EqualizerIcon";
import TextAlignIcon from "@/components/icons/TextAlignIcon";
import VerticalScrollView from "@/components/listview/VerticalScrollView";
import MenuItemRenderer from "@/components/listview/MenuItemRenderer";
@@ -15,7 +14,7 @@ import Button from "@/components/button/PrimaryButton";
import AnimatedBottomSheet from "@/components/bottomsheet/AnimatedBottomSheet";
import { Switch } from "@/components/ui/switch";
import { TicketPercentIcon } from "lucide-react";
-import { MedalStar } from 'iconsax-react'
+import { Candle2, MedalStar } from 'iconsax-react'
import { useQueryState } from 'next-usequerystate'
import clsx from "clsx";
import CategorySmallItemRenderer from "@/components/listview/CategorySmallItemRenderer";
@@ -224,7 +223,7 @@ const MenuIndex = () => {
updateCategory(index)}
>
@@ -235,7 +234,7 @@ const MenuIndex = () => {
height={32}
alt="category image"
/>
- {item.title}
+ {item.title}
))}
@@ -247,12 +246,12 @@ const MenuIndex = () => {
{categories[+selectedCategory]?.title}
-
@@ -262,7 +261,7 @@ const MenuIndex = () => {
animate={{ y: smallCategoriesVisible ? 0 : -50, opacity: smallCategoriesVisible ? 1 : 0 }}
transition={{ duration: .1 }}
className={clsx(
- 'fixed left-0 z-10 top-0 px-4 pt-16 bg-[#F4F5F9CC] backdrop-blur-[44px] right-0 xl:pr-72 xl:pt-20',
+ 'fixed left-0 z-10 top-0 px-4 pt-16 bg-[#F4F5F9CC] dark:bg-background/70 backdrop-blur-[44px] right-0 xl:pr-72 xl:pt-20',
``
)}>
@@ -270,7 +269,7 @@ const MenuIndex = () => {
updateCategory(index)}
>
@@ -281,7 +280,7 @@ const MenuIndex = () => {
height={24}
alt="category image"
/>
- {item.title}
+ {item.title}
))}
diff --git a/src/app/globals.css b/src/app/globals.css
index eb6fb45..9ec648e 100644
--- a/src/app/globals.css
+++ b/src/app/globals.css
@@ -37,7 +37,7 @@ input[type="password"]:not(:placeholder-shown) {
font-style: normal;
font-weight: normal;
speak: none;
- color: #b6b6b6da;
+ color: var(--disabled-text);
margin: 5px 0px 10px 0px;
font-size: 24px;
/* Controls dot size (width & height) */
@@ -96,7 +96,7 @@ input[type="password"]:not(:placeholder-shown) {
input:-webkit-autofill {
-webkit-box-shadow: 0 0 0px 0px transparent inset !important;
box-shadow: 0 0 0px 0px transparent inset !important;
- -webkit-text-fill-color: #b6b6b6da !important;
+ -webkit-text-fill-color: var(--disabled-text) !important;
background: currentColor !important;
transition: background-color 10000s ease-in-out 0s;
}
@@ -104,7 +104,7 @@ input:-webkit-autofill {
input:autofill {
-webkit-box-shadow: 0 0 0px 0px transparent inset !important;
box-shadow: 0 0 0px 0px transparent inset !important;
- -webkit-text-fill-color: #b6b6b6da !important;
+ -webkit-text-fill-color: var(--disabled-text) !important;
background: currentColor !important;
transition: background-color 10000s ease-in-out 0s;
}
@@ -129,9 +129,9 @@ input:autofill {
border-radius: inherit;
/* inherit border-radius from parent */
background: linear-gradient(to bottom right,
- #FFFFFF 6.25%,
+ var(--container) 6.25%,
rgba(255, 253, 253, 0) 52.01%,
- #FFFFFF 96.87%);
+ var(--container) 96.87%);
mask:
linear-gradient(#fff 0 0) content-box,
linear-gradient(#fff 0 0);
@@ -146,7 +146,6 @@ input:autofill {
box-sizing: border-box;
}
-
@theme {
--font-irancell: var(--font-irancell);
@@ -187,24 +186,38 @@ input:autofill {
--color-sidebar-border: var(--sidebar-border);
--color-sidebar-ring: var(--sidebar-ring);
- --color-background: var(--background); /* oklch(0.963 0.008 289.2) */
- --color-container: var(--container); /* oklch(1 0 0) */
- --color-primary: var(--primary); /* oklch(0.14 0 0) */
- --color-border: var(--border); /* oklch(0.885 0.007 248.3) */
- --color-invalid: var(--invalid); /* oklch(0.515 0.118 27.5) */
- --color-valid: var(--valid); /* oklch(0.46 0.107 132.7) */
- --color-foreground: var(--foreground); /* oklch(0.202 0 0) */
- --color-disabled: var(--disabled); /* oklch(0.91 0.004 295.2) */
- --color-disabled2: var(--disabled2); /* oklch(0.5 0 0) */
- --color-disabled3: var(--disabled3); /* oklch(0.949 0.002 277.1) */
- --color-disabled-text: var(--disabled-text); /* oklch(0.34 0.006 257.4) */
- --color-menu-header: var(--menu-header); /* oklch(0.79 0.03 237.3) */
- --color-icon-deactive: var(--icon-deactive); /* oklch(0.65 0.027 234.8) */
- --color-icon-active: var(--icon-active); /* oklch(0.12 0.002 304.5) */
+ --color-background: var(--background);
+ /* oklch(0.963 0.008 289.2) */
+ --color-container: var(--container);
+ /* oklch(1 0 0) */
+ --color-primary: var(--primary);
+ /* oklch(0.14 0 0) */
+ --color-border: var(--border);
+ /* oklch(0.885 0.007 248.3) */
+ --color-invalid: var(--invalid);
+ /* oklch(0.515 0.118 27.5) */
+ --color-valid: var(--valid);
+ /* oklch(0.46 0.107 132.7) */
+ --color-foreground: var(--foreground);
+ /* oklch(0.202 0 0) */
+ --color-disabled: var(--disabled);
+ /* oklch(0.91 0.004 295.2) */
+ --color-disabled2: var(--disabled2);
+ /* oklch(0.5 0 0) */
+ --color-disabled3: var(--disabled3);
+ /* oklch(0.949 0.002 277.1) */
+ --color-disabled-text: var(--disabled-text);
+ /* oklch(0.34 0.006 257.4) */
+ --color-menu-header: var(--menu-header);
+ /* oklch(0.79 0.03 237.3) */
+ --color-icon-deactive: var(--icon-deactive);
+ /* oklch(0.65 0.027 234.8) */
+ --color-icon-active: var(--icon-active);
+ /* oklch(0.12 0.002 304.5) */
}
/* unified theme */
-:root {
+:root {
--font-irancell: "Irancell";
--radius-normal: 10px;
@@ -247,20 +260,34 @@ html[data-theme="light"] {
--sidebar-border: oklch(0.922 0 0);
--sidebar-ring: oklch(0.708 0 0); */
- --background: oklch(0.963 0.008 289.2); /* #F4F5F9 */
- --container: oklch(1 0 0); /* #FFFFFF */
- --primary: oklch(0.14 0 0); /* #000000 */
- --border: oklch(0.885 0.007 248.3); /* #E5E5E5 */
- --invalid: oklch(0.515 0.118 27.5); /* red (#FF0000 approx) */
- --valid: oklch(0.46 0.107 132.7); /* #439C46 */
- --foreground: oklch(0.202 0 0); /* #333333 */
- --disabled: oklch(0.91 0.004 295.2); /* #E7E7E7 */
- --disabled2: oklch(0.5 0 0); /* #7F7F7F */
- --disabled3: oklch(0.949 0.002 277.1); /* #F2F2F2 */
- --disabled-text: oklch(0.34 0.006 257.4); /* #8C90A3 */
- --menu-header: oklch(0.79 0.03 237.3); /* #C3C7DD */
- --icon-deactive: oklch(0.65 0.027 234.8); /* #A8ABBF */
- --icon-active: oklch(0.12 0.002 304.5); /* #292D32 */
+ --background: oklch(0.963 0.008 289.2);
+ /* #F4F5F9 */
+ --container: oklch(1 0 0);
+ /* #FFFFFF */
+ --primary: oklch(0.14 0 0);
+ /* #000000 */
+ --border: oklch(0.885 0.007 248.3);
+ /* #E5E5E5 */
+ --invalid: oklch(0.515 0.118 27.5);
+ /* red (#FF0000 approx) */
+ --valid: oklch(0.46 0.107 132.7);
+ /* #439C46 */
+ --foreground: oklch(0.202 0 0);
+ /* #333333 */
+ --disabled: oklch(0.91 0.004 295.2);
+ /* #E7E7E7 */
+ --disabled2: oklch(0.5 0 0);
+ /* #7F7F7F */
+ --disabled3: oklch(0.949 0.002 277.1);
+ /* #F2F2F2 */
+ --disabled-text: oklch(0.34 0.006 257.4);
+ /* #8C90A3 */
+ --menu-header: oklch(0.79 0.03 237.3);
+ /* #C3C7DD */
+ --icon-deactive: oklch(0.65 0.027 234.8);
+ /* #A8ABBF */
+ --icon-active: oklch(0.12 0.002 304.5);
+ /* #292D32 */
}
html[data-theme="dark"] {
@@ -296,20 +323,34 @@ html[data-theme="dark"] {
--sidebar-border: oklch(1 0 0 / 10%);
--sidebar-ring: oklch(0.556 0 0); */
- --background: oklch(23.26% 0.014 253.1); /* #F4F5F9 */
- --container: oklch(25.33% 0.016 252.42); /* #FFFFFF */
- --primary: oklch(14% 0.005 285.823); /* #000000 */
- --border: oklch(21.15% 0.012 254.09); /* #E5E5E5 */
- --invalid: oklch(0.515 0.118 27.5); /* red (#FF0000 approx) */
- --valid: oklch(0.46 0.107 132.7); /* #439C46 */
- --foreground: oklch(97.807% 0.029 256.847); /* #333333 */
- --disabled: oklch(42.866% 0.00494 286.051); /* #E7E7E7 */
- --disabled2: oklch(0.5 0 0); /* #7F7F7F */
- --disabled3: oklch(0.949 0.002 277.1); /* #F2F2F2 */
- --disabled-text: oklch(75.73% 0.01398 251.72); /* #8C90A3 */
- --menu-header: oklch(0.79 0.03 237.3); /* #C3C7DD */
- --icon-deactive: oklch(0.65 0.027 234.8); /* #A8ABBF */
- --icon-active: oklch(0.12 0.002 304.5); /* #292D32 */
+ --background: oklch(23.26% 0.014 253.1);
+ /* #F4F5F9 */
+ --container: oklch(30.33% 0.016 252.42);
+ /* #FFFFFF */
+ --primary: oklch(14% 0.005 285.823);
+ /* #000000 */
+ --border: oklch(21.15% 0.012 254.09);
+ /* #E5E5E5 */
+ --invalid: oklch(0.515 0.118 27.5);
+ /* red (#FF0000 approx) */
+ --valid: oklch(0.46 0.107 132.7);
+ /* #439C46 */
+ --foreground: oklch(97.807% 0.029 256.847);
+ /* #333333 */
+ --disabled: oklch(42.866% 0.00494 286.051);
+ /* #E7E7E7 */
+ --disabled2: oklch(0.5 0 0);
+ /* #7F7F7F */
+ --disabled3: oklch(0.949 0.002 277.1);
+ /* #F2F2F2 */
+ --disabled-text: oklch(75.73% 0.01398 251.72);
+ /* #8C90A3 */
+ --menu-header: oklch(0.79 0.03 237.3);
+ /* #C3C7DD */
+ --icon-deactive: oklch(0.65 0.027 234.8);
+ /* #A8ABBF */
+ --icon-active: oklch(0.12 0.002 304.5);
+ /* #292D32 */
}
/* @layer base {
@@ -320,4 +361,4 @@ html[data-theme="dark"] {
body {
@apply bg-background text-foreground;
}
-} */
+} */
\ No newline at end of file
diff --git a/src/components/icons/MinusIcon.tsx b/src/components/icons/MinusIcon.tsx
index 51310b0..3032086 100644
--- a/src/components/icons/MinusIcon.tsx
+++ b/src/components/icons/MinusIcon.tsx
@@ -9,7 +9,7 @@ interface MinusIconProps {
const MinusIcon: React.FC = ({
className = '',
- stroke = '#333333',
+ stroke = 'currentColor',
strokeWidth = 1.5,
size = 10,
}) => {
diff --git a/src/components/icons/PlusIcon.tsx b/src/components/icons/PlusIcon.tsx
index 828300d..3360593 100644
--- a/src/components/icons/PlusIcon.tsx
+++ b/src/components/icons/PlusIcon.tsx
@@ -9,7 +9,7 @@ interface PlusIconProps {
const PlusIcon: React.FC = ({
className = '',
- stroke = '#333333',
+ stroke = 'currentColor',
strokeWidth = 1.5,
size = 10,
}) => {
diff --git a/src/components/icons/TextAlignIcon.tsx b/src/components/icons/TextAlignIcon.tsx
index 264014b..0ee5e82 100644
--- a/src/components/icons/TextAlignIcon.tsx
+++ b/src/components/icons/TextAlignIcon.tsx
@@ -9,7 +9,7 @@ interface TextAlignIconProps {
const TextAlignIcon: React.FC = ({
className = '',
- stroke = '#333333',
+ stroke = 'currentColor',
strokeWidth = 1.5,
size = 20,
}) => {
diff --git a/src/components/input/SearchBox.tsx b/src/components/input/SearchBox.tsx
index 42c5a6a..013718f 100644
--- a/src/components/input/SearchBox.tsx
+++ b/src/components/input/SearchBox.tsx
@@ -12,7 +12,7 @@ interface SearchboxProps extends Omit
diff --git a/src/components/listview/CategoryItemRenderer.tsx b/src/components/listview/CategoryItemRenderer.tsx
index cc48ebb..50b168a 100644
--- a/src/components/listview/CategoryItemRenderer.tsx
+++ b/src/components/listview/CategoryItemRenderer.tsx
@@ -8,7 +8,7 @@ type Props = {
function CategoryItemRenderer({ children, ...rest }: Props) {
return (
-
+
+
{
/>
-
{food.name}
+
{food.name}
{food.contains}
@@ -49,15 +49,15 @@ const MenuItem = ({ food }: MenuItemProps) => {
className="inline-flex w-full justify-center items-center gap-2"
>
-
افزودن
+
افزودن
) : (
<>
increment(food.id)}
- className="bg-white hover:bg-white/60 active:bg-white/30 rounded-sm p-2"
+ className="bg-container hover:bg-container/60 active:bg-container/30 rounded-sm p-2"
>
-
+
{
decrement(food.id)}
- className="bg-white hover:bg-white/60 active:bg-white/30 rounded-sm p-2"
+ className="bg-container hover:bg-container/60 active:bg-container/30 rounded-sm p-2"
>
-
+
>
)}
diff --git a/src/components/listview/MenuItemRenderer.tsx b/src/components/listview/MenuItemRenderer.tsx
index d6d9e5d..64dc18d 100644
--- a/src/components/listview/MenuItemRenderer.tsx
+++ b/src/components/listview/MenuItemRenderer.tsx
@@ -10,10 +10,7 @@ function MenuItemRendererComponent({ children, ...rest }: Props) {
return (
+ className={`${rest.className} box-shadow-normal transition-all duration-200 ease-out w-full min-h-36 bg-container rounded-3xl px-4 flex items-center justify-between gap-4`}>
{children}
diff --git a/src/components/topbar/TopBar.tsx b/src/components/topbar/TopBar.tsx
index 5351f4c..531baa0 100644
--- a/src/components/topbar/TopBar.tsx
+++ b/src/components/topbar/TopBar.tsx
@@ -1,10 +1,9 @@
'use client'
import React from 'react'
-import BurgerMenuIcon from '../icons/BurgerMenuIcon'
import NotificationBellIcon from '../icons/NotificationBellIcon'
import Image from 'next/image'
-import { ArrowDown2, LogoutCurve, ProfileCircle, Setting2 } from 'iconsax-react'
+import { ArrowDown2, HambergerMenu, LogoutCurve, ProfileCircle, Setting2 } from 'iconsax-react'
import Dropdown from '../utils/Dropdown'
import Seperator from '../utils/Seperator'
import Link from 'next/link'
@@ -33,7 +32,7 @@ function TopBar({ profileDropState, toggleProfileDropState, toggleMenuState }: P
-
+
{/*
S
@@ -54,7 +53,7 @@ function TopBar({ profileDropState, toggleProfileDropState, toggleMenuState }: P
width={73}
height={25}
alt='Profile avatar'
- className='rounded-full'
+ className='rounded-full dark:invert-100'
src={'/assets/images/danak-logo.png'} />
@@ -63,8 +62,8 @@ function TopBar({ profileDropState, toggleProfileDropState, toggleMenuState }: P
-
-
+
+
2