From 74b256f601ae437059173036590c73855805056f Mon Sep 17 00:00:00 2001 From: Lanskikh Date: Tue, 3 Jun 2025 11:46:49 +0500 Subject: [PATCH] upd --- src/components/Layout.tsx | 17 ++++++ src/components/Navbar.tsx | 84 ++++++++++++++++++++++++++++ src/components/NewButton.tsx | 44 +++++++++++++++ src/components/icons/DesktopIcon.tsx | 8 +-- src/index.css | 1 + src/pages/DashboardPage.tsx | 28 +--------- src/routes.tsx | 10 +++- vite.config.ts | 6 ++ 8 files changed, 162 insertions(+), 36 deletions(-) create mode 100644 src/components/Layout.tsx create mode 100644 src/components/Navbar.tsx create mode 100644 src/components/NewButton.tsx diff --git a/src/components/Layout.tsx b/src/components/Layout.tsx new file mode 100644 index 0000000..9a128ce --- /dev/null +++ b/src/components/Layout.tsx @@ -0,0 +1,17 @@ +import { Outlet } from "react-router"; +import Navbar from "./Navbar"; + +function Layout() { + return ( +
+
+
+ + +
+
+
+ ); +} + +export default Layout; diff --git a/src/components/Navbar.tsx b/src/components/Navbar.tsx new file mode 100644 index 0000000..7222b00 --- /dev/null +++ b/src/components/Navbar.tsx @@ -0,0 +1,84 @@ +import { NavLink } from "react-router"; +import clsx from "clsx"; +import HomeIcon from "./icons/HomeIcon"; +import DesktopIcon from "./icons/DesktopIcon"; + +function Navbar() { + return ( +
+ + clsx( + "2xl:p-[1.493vw] 2xl:py-[1.111vw] px-[21.5px] py-4 transition-colors flex 2xl:gap-[0.556vw] gap-2 items-center text-[#7D7D7D] hover:text-[#7B60F3]", + isActive && "text-[#7B60F3]" + ) + } + > + + + + Главная + + + clsx( + "2xl:p-[1.493vw] 2xl:py-[1.111vw] px-[21.5px] py-4 transition-colors flex 2xl:gap-[0.556vw] gap-2 items-center text-[#7D7D7D] hover:text-[#7B60F3]", + isActive && "text-[#7B60F3]" + ) + } + > + + + + Сеансы + + + clsx( + "2xl:p-[1.493vw] 2xl:py-[1.111vw] px-[21.5px] py-4 transition-colors flex 2xl:gap-[0.556vw] gap-2 items-center text-[#7D7D7D] hover:text-[#7B60F3]", + isActive && "text-[#7B60F3]" + ) + } + > + + + + Главная + + + clsx( + "2xl:p-[1.493vw] 2xl:py-[1.111vw] px-[21.5px] py-4 transition-colors flex 2xl:gap-[0.556vw] gap-2 items-center text-[#7D7D7D] hover:text-[#7B60F3]", + isActive && "text-[#7B60F3]" + ) + } + > + + + + Главная + + + clsx( + "2xl:p-[1.493vw] 2xl:py-[1.111vw] px-[21.5px] py-4 transition-colors flex 2xl:gap-[0.556vw] gap-2 items-center text-[#7D7D7D] hover:text-[#7B60F3]", + isActive && "text-[#7B60F3]" + ) + } + > + + + + Главная + + {/* */} +
+ ); +} + +export default Navbar; diff --git a/src/components/NewButton.tsx b/src/components/NewButton.tsx new file mode 100644 index 0000000..6c731a6 --- /dev/null +++ b/src/components/NewButton.tsx @@ -0,0 +1,44 @@ +import clsx from "clsx"; + +interface NewButtonProps extends React.ButtonHTMLAttributes { + children: React.ReactNode; + variant: "critical" | "secondary" | "primary" | "cta" | "menu"; + className?: string; + size?: "small" | "medium" | "large"; + ref?: React.RefObject; +} + +function NewButton({ + children, + variant = "primary", + size = "medium", + className, + ref, + ...props +}: NewButtonProps) { + return ( + + ); +} + +export default NewButton; diff --git a/src/components/icons/DesktopIcon.tsx b/src/components/icons/DesktopIcon.tsx index 9cf09e8..7b1f539 100644 --- a/src/components/icons/DesktopIcon.tsx +++ b/src/components/icons/DesktopIcon.tsx @@ -1,12 +1,6 @@ export default function DesktopIcon() { return ( - + -
-
-
-
- logo -
- -
-
-
- {servers?.map((server) => ( - - ))} -
-
-
...
-
- - ); + return
; } export default DashboardPage; diff --git a/src/routes.tsx b/src/routes.tsx index f9a4754..2da35f7 100644 --- a/src/routes.tsx +++ b/src/routes.tsx @@ -1,3 +1,4 @@ +import Layout from "./components/Layout"; import DashboardPage from "./pages/DashboardPage"; import LoginPage from "./pages/LoginPage"; import ProtectedPage from "./pages/ProtectedPage"; @@ -8,8 +9,13 @@ export default [ element: , children: [ { - index: true, - element: , + element: , + children: [ + { + index: true, + element: , + }, + ], }, ], }, diff --git a/vite.config.ts b/vite.config.ts index f961a45..d46e678 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -5,4 +5,10 @@ import tailwindcss from "@tailwindcss/vite"; // https://vite.dev/config/ export default defineConfig({ plugins: [react(), tailwindcss()], + server: { + host: true, + }, + preview: { + host: true, + }, });