feat : solid box-shadows
This commit is contained in:
@@ -3,9 +3,9 @@ import { ButtonProps } from "../../types/props";
|
||||
function Button({ children, extra, active,...attrs }: ButtonProps) {
|
||||
return (
|
||||
<button
|
||||
className={`px-4 py-1 md:px-5 md:py-2 rounded-md transition duration-300 ease-in-out transform bg-white text-[#333] hover:bg-gray-600 hover:text-white shadow-lg hover:!shadow-gray-600 ${
|
||||
className={`px-4 py-1 md:px-5 md:py-2 rounded-md transition duration-300 ease-in-out transform bg-white text-[#333] hover:bg-gray-600 hover:text-white !shadow-lg ${
|
||||
active
|
||||
? "!bg-secondTheme shadow-secondTheme shadow-lg hover:!shadow-gray-600"
|
||||
? "!bg-secondTheme !shadow-lg hover:!shadow-inner"
|
||||
: ""
|
||||
} ${extra}`}
|
||||
type="button"
|
||||
|
||||
@@ -5,13 +5,15 @@ import MobileMenu from "./MobileMenu";
|
||||
import NavbarLink from "./NavbarLink";
|
||||
import router from "../../../../routes/routes";
|
||||
import Button from "../../../button";
|
||||
import { Link } from "react-router-dom";
|
||||
import { useNavigate } from "react-router-dom";
|
||||
import { Route } from "../../../../types/props";
|
||||
import { isAuthenticated } from "../../../../utils/auth";
|
||||
|
||||
const Navbar = () => {
|
||||
const [isOpen, setIsOpen] = useState<boolean>(false);
|
||||
|
||||
const auth = isAuthenticated();
|
||||
const [routes] = useState<Route[]>(router);
|
||||
const navigate = useNavigate();
|
||||
|
||||
const toggleMenu = () => {
|
||||
setIsOpen(!isOpen);
|
||||
@@ -41,9 +43,11 @@ const Navbar = () => {
|
||||
);
|
||||
})}
|
||||
</div>
|
||||
<Button>
|
||||
<Link to="/profile"> پروفایل </Link>
|
||||
</Button>
|
||||
{auth ? (
|
||||
<Button onClick={() => navigate("/profile")}>پروفایل</Button>
|
||||
) : (
|
||||
<Button onClick={() => navigate("/login")}>ورود</Button>
|
||||
)}
|
||||
<div className="md:hidden">
|
||||
<MobileMenuButton isOpen={isOpen} onClick={toggleMenu} />
|
||||
</div>
|
||||
|
||||
@@ -24,7 +24,7 @@ const Input = ({
|
||||
type={type}
|
||||
name={name}
|
||||
id={id}
|
||||
className="outline-none border-none sm:text-sm rounded-lg block w-full p-2.5 md:p-3 bg-gray-700 border-gray-600 placeholder-gray-400 text-white"
|
||||
className={`outline-none border-none sm:text-sm rounded-lg block w-full p-2.5 md:p-3 bg-gray-700 border-gray-600 placeholder-gray-400 text-white ${extra}`}
|
||||
placeholder={placeholder}
|
||||
{...attrs}
|
||||
/>
|
||||
|
||||
@@ -2,7 +2,7 @@ const Info = () => {
|
||||
return (
|
||||
<div className="relative w-full h-full flex flex-col px-4 py-4 text-start">
|
||||
<h1 className="font-bold text-xl md:text-2xl text-center">درباره ما</h1>
|
||||
<p className="font-normal text-sm mt-2 md:text-lg">
|
||||
<p className="font-normal text-sm mt-2 md:text-lg !leading-10">
|
||||
با تولید سادگی نامفهوم از صنعت چاپ، و با استفاده از طراحان گرافیک است،
|
||||
چاپگرها و متون بلکه روزنامه و مجله در ستون و سطرآنچنان که لازم است، و
|
||||
برای شرایط فعلی تکنولوژی مورد نیاز، و کاربردهای متنوع با هدف بهبود
|
||||
|
||||
@@ -25,7 +25,7 @@ const ConfigItem = ({ dateBuy, configName, isDisabled }: ConfigItemProps) => {
|
||||
<div className="relative w-full h-full rounded-md">
|
||||
{isDisabled && (
|
||||
<div className="absolute inset-0 flex items-center justify-center bg-opacity-50 rounded-md backdrop-blur-sm z-10">
|
||||
<div className="text-white font-bold p-1 bg-red-600 text-xs md:text-base rounded-md shadow-md shadow-red-600">
|
||||
<div className="text-white font-bold p-1 bg-red-600 text-xs md:text-base rounded-md shadow-md">
|
||||
کانفیگ <span className="text-secondTheme">{configName}</span> غیر
|
||||
فعال است .{" "}
|
||||
<Button
|
||||
@@ -43,7 +43,7 @@ const ConfigItem = ({ dateBuy, configName, isDisabled }: ConfigItemProps) => {
|
||||
}`}
|
||||
>
|
||||
<p className="max-md:hidden">تاریخ خرید : {dateBuy}</p>
|
||||
<li className="px-2 py-1 bg-secondTheme shadow-md shadow-secondTheme rounded-md w-auto h-auto text-gray-900 font-bold list-none">
|
||||
<li className="px-2 py-1 bg-secondTheme shadow-md rounded-md w-auto h-auto text-gray-900 font-bold list-none">
|
||||
{configName}
|
||||
</li>
|
||||
<div className="max-md:hidden flex flex-row-reverse gap-2 justify-end items-center">
|
||||
@@ -51,7 +51,7 @@ const ConfigItem = ({ dateBuy, configName, isDisabled }: ConfigItemProps) => {
|
||||
کپی
|
||||
<IoCopy />
|
||||
</Button>
|
||||
<Button extra="!m-0 !px-2 !py-1.5 shadow-md shadow-white">
|
||||
<Button extra="!m-0 !px-2 !py-1.5 shadow-md">
|
||||
آموزش
|
||||
</Button>
|
||||
<Dropdown isOpen={isOpenDropDown} setIsOpen={setIsOpenDropDown}>
|
||||
@@ -60,7 +60,7 @@ const ConfigItem = ({ dateBuy, configName, isDisabled }: ConfigItemProps) => {
|
||||
data-dropdown-toggle="dropdown"
|
||||
type="button"
|
||||
onClick={handleToggle}
|
||||
extra="!m-0 !px-2 !py-1.5 shadow-md shadow-white"
|
||||
extra="!m-0 !px-2 !py-1.5 shadow-md"
|
||||
>
|
||||
حجم
|
||||
</Button>
|
||||
@@ -71,7 +71,7 @@ const ConfigItem = ({ dateBuy, configName, isDisabled }: ConfigItemProps) => {
|
||||
</div>
|
||||
<div className="md:hidden flex flex-row-reverse gap-2 justify-end items-center">
|
||||
<Button
|
||||
extra="!m-0 !px-2 !py-1 shadow-md shadow-white"
|
||||
extra="!m-0 !px-2 !py-1 shadow-md"
|
||||
onClick={() => setIsOpen(true)}
|
||||
>
|
||||
مشاهده جزئیات
|
||||
|
||||
@@ -30,21 +30,21 @@ const ListRules = () => {
|
||||
<ul>
|
||||
<li className="flex flex-row mt-2 gap-2 w-full bg-gray-800 p-2 rounded-md items-center">
|
||||
<img src={Warning} alt="warning" className=" w-[2rem]" />
|
||||
<p className="font-normal text-sm md:text-lg text-start">
|
||||
<p className="font-normal max-sm:text-xs max-md:text-sm md:text-lg text-start">
|
||||
هرگونه استفاده غیر مجاز و غیر قانونی به عهده شخص استفادهکننده
|
||||
میباشد.
|
||||
</p>
|
||||
</li>
|
||||
<li className="flex flex-row mt-2 gap-2 w-full bg-gray-800 p-2 rounded-md items-center">
|
||||
<img src={Warning} alt="warning" className="w-[2rem]" />
|
||||
<p className="font-normal text-sm md:text-lg text-start">
|
||||
<p className="font-normal max-sm:text-xs max-md:text-sm md:text-lg text-start">
|
||||
در صورتی که سرویس خریداری شده یک کاربره باشد و اگر سرویس خود را در
|
||||
اختیار شخص دیگری قرار دهید سرویس شما به صورت خودکار مسدود خواهد شد.{" "}
|
||||
</p>
|
||||
</li>
|
||||
<li className="flex flex-row mt-2 gap-2 w-full bg-gray-800 p-2 rounded-md items-center">
|
||||
<img src={Warning} alt="warning" className="w-[2rem]" />
|
||||
<p className="font-normal text-sm md:text-lg text-start">
|
||||
<p className="font-normal max-sm:text-xs max-md:text-sm md:text-lg text-start">
|
||||
در صورتی که مشکلی برای سرویسها به وجود بیاید تمام سعی خود را
|
||||
میکنیم تا هر چه سریعتر مشکل را برطرف کنیم. بازه زمانی بین 10 دقیقه
|
||||
الی حداکثر 24 ساعت میباشد.{" "}
|
||||
@@ -52,7 +52,7 @@ const ListRules = () => {
|
||||
</li>
|
||||
<li className="flex flex-row mt-2 gap-2 w-full bg-gray-800 p-2 rounded-md items-center">
|
||||
<img src={Warning} alt="warning" className="w-[2rem]" />
|
||||
<p className="font-normal text-sm md:text-lg text-start">
|
||||
<p className="font-normal max-sm:text-xs max-md:text-sm md:text-lg text-start">
|
||||
تمامی سرویسهای ما مخصوص بازی میباشد و برای کاهش پینگ در بازیهای
|
||||
آنلاین و عبور از تحریم بازیها استفاده میشود و هرگونه استفاده غیر
|
||||
مجاز از سرویسها به عنوان V.p.n و استفادههای دیگر ممنوع میباشد و
|
||||
|
||||
Reference in New Issue
Block a user