From d7f4718d77619bd4d111a476772bcd0993b6f794 Mon Sep 17 00:00:00 2001 From: sara Date: Sun, 20 Jul 2025 15:08:59 +0300 Subject: [PATCH 1/5] All Notes page --- apps/web/components/ui/dropdown-menu.tsx | 255 ++++++++++++++++++ apps/web/package.json | 1 + .../web/src/components/Dashboard/AllNotes.tsx | 88 ++++++ apps/web/src/components/Dashboard/Notes.tsx | 2 +- apps/web/src/routes/AppRouter.tsx | 5 + pnpm-lock.yaml | 249 +++++++++++++++++ 6 files changed, 599 insertions(+), 1 deletion(-) create mode 100644 apps/web/components/ui/dropdown-menu.tsx create mode 100644 apps/web/src/components/Dashboard/AllNotes.tsx diff --git a/apps/web/components/ui/dropdown-menu.tsx b/apps/web/components/ui/dropdown-menu.tsx new file mode 100644 index 0000000..efa2c20 --- /dev/null +++ b/apps/web/components/ui/dropdown-menu.tsx @@ -0,0 +1,255 @@ +import * as React from "react" +import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu" +import { CheckIcon, ChevronRightIcon, CircleIcon } from "lucide-react" + +import { cn } from "../../src/lib/utils" + +function DropdownMenu({ + ...props +}: React.ComponentProps) { + return +} + +function DropdownMenuPortal({ + ...props +}: React.ComponentProps) { + return ( + + ) +} + +function DropdownMenuTrigger({ + ...props +}: React.ComponentProps) { + return ( + + ) +} + +function DropdownMenuContent({ + className, + sideOffset = 4, + ...props +}: React.ComponentProps) { + return ( + + + + ) +} + +function DropdownMenuGroup({ + ...props +}: React.ComponentProps) { + return ( + + ) +} + +function DropdownMenuItem({ + className, + inset, + variant = "default", + ...props +}: React.ComponentProps & { + inset?: boolean + variant?: "default" | "destructive" +}) { + return ( + + ) +} + +function DropdownMenuCheckboxItem({ + className, + children, + checked, + ...props +}: React.ComponentProps) { + return ( + + + + + + + {children} + + ) +} + +function DropdownMenuRadioGroup({ + ...props +}: React.ComponentProps) { + return ( + + ) +} + +function DropdownMenuRadioItem({ + className, + children, + ...props +}: React.ComponentProps) { + return ( + + + + + + + {children} + + ) +} + +function DropdownMenuLabel({ + className, + inset, + ...props +}: React.ComponentProps & { + inset?: boolean +}) { + return ( + + ) +} + +function DropdownMenuSeparator({ + className, + ...props +}: React.ComponentProps) { + return ( + + ) +} + +function DropdownMenuShortcut({ + className, + ...props +}: React.ComponentProps<"span">) { + return ( + + ) +} + +function DropdownMenuSub({ + ...props +}: React.ComponentProps) { + return +} + +function DropdownMenuSubTrigger({ + className, + inset, + children, + ...props +}: React.ComponentProps & { + inset?: boolean +}) { + return ( + + {children} + + + ) +} + +function DropdownMenuSubContent({ + className, + ...props +}: React.ComponentProps) { + return ( + + ) +} + +export { + DropdownMenu, + DropdownMenuPortal, + DropdownMenuTrigger, + DropdownMenuContent, + DropdownMenuGroup, + DropdownMenuLabel, + DropdownMenuItem, + DropdownMenuCheckboxItem, + DropdownMenuRadioGroup, + DropdownMenuRadioItem, + DropdownMenuSeparator, + DropdownMenuShortcut, + DropdownMenuSub, + DropdownMenuSubTrigger, + DropdownMenuSubContent, +} diff --git a/apps/web/package.json b/apps/web/package.json index e935ccd..ef0a580 100644 --- a/apps/web/package.json +++ b/apps/web/package.json @@ -15,6 +15,7 @@ "@hookform/resolvers": "^5.0.1", "@radix-ui/react-checkbox": "^1.2.3", "@radix-ui/react-dialog": "^1.1.12", + "@radix-ui/react-dropdown-menu": "^2.1.15", "@radix-ui/react-label": "^2.1.4", "@radix-ui/react-radio-group": "^1.3.6", "@radix-ui/react-slot": "^1.2.2", diff --git a/apps/web/src/components/Dashboard/AllNotes.tsx b/apps/web/src/components/Dashboard/AllNotes.tsx new file mode 100644 index 0000000..b4e10f2 --- /dev/null +++ b/apps/web/src/components/Dashboard/AllNotes.tsx @@ -0,0 +1,88 @@ +import { + DropdownMenu, + DropdownMenuContent, + DropdownMenuItem, + DropdownMenuTrigger, +} from "@/components/ui/dropdown-menu" +import { ChevronDown, EllipsisVertical, Pencil, Trash } from "lucide-react" + + + +function AllNotes() { + const Fakenotes = [ + { topic: 'Topic 1 : intro to sql', date: '22/5/2024', note: 'consectetur adipiscing elit, sed do' }, + { topic: 'Topic 2 : intro to sql', date: '22/5/2024', note: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do' }, + { topic: 'Topic 3 : intro to sql', date: '22/5/2024', note: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do' }, + { topic: 'Topic 4 : intro to sql', date: '22/5/2024', note: 'Lorem ipsum, dolor sit amet consectetur adipisicing elit. Numquam dolores, ducimus incidunt autem minus consequatur voluptatibus veritatis amet in eos ipsam architecto. Numquam ducimus incidunt illo! Magnam doloremque ipsum recusandae!' }, + { topic: 'Topic 5 : intro to sql', date: '22/5/2024', note: 'Lorem ipsum dolor sit amet consectetur adipisicing elit. Facere incidunt voluptas est placeat repudiandae nesciunt debitis cum similique expedita, vitae commodi fuga beatae nihil dolore rem nulla hic blanditiis excepturi delectus sit culpa cumque iste. Sequi sint dolores, eaque fuga quidem delectus corporis repellat hic ut, quis aspernatur aut quam?' }, + ] + return ( + <> +
+
+ +

Level

+
+ + Beginer + Intermidiate + Advanced + +
+
+
+ +

Sort by Name

+
+ + Sql + HTML + CSS + Js + React + +
+
+
+ +

Sort by Date

+
+ + Sort by Latest + Sort by Oldest + + +
+
+
+
+ { + Fakenotes.map((note, index) => +
+
+

{note.topic}

+
+

{note.date}

+
+ + + + +

Edit

+

Delete

+
+
+
+
+
+

{note.note}...

+
+ ) + } +
+ + + ) +} + +export default AllNotes \ No newline at end of file diff --git a/apps/web/src/components/Dashboard/Notes.tsx b/apps/web/src/components/Dashboard/Notes.tsx index 01b117e..41f105c 100644 --- a/apps/web/src/components/Dashboard/Notes.tsx +++ b/apps/web/src/components/Dashboard/Notes.tsx @@ -22,7 +22,7 @@ function Notes() { ) } - +

View All

diff --git a/apps/web/src/routes/AppRouter.tsx b/apps/web/src/routes/AppRouter.tsx index 25f5cae..f640b12 100644 --- a/apps/web/src/routes/AppRouter.tsx +++ b/apps/web/src/routes/AppRouter.tsx @@ -19,6 +19,7 @@ import Task from "../pages/Task"; // Router Functions import { createBrowserRouter, RouterProvider } from "react-router-dom"; +import AllNotes from "../components/Dashboard/AllNotes"; const router = createBrowserRouter([ { @@ -73,6 +74,10 @@ const router = createBrowserRouter([ path: "task/:taskId", element: , }, + { + path: "notes", + element: , + }, ], }, ]); diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 8f7ad7c..bf61ce6 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -69,6 +69,9 @@ importers: '@radix-ui/react-dialog': specifier: ^1.1.12 version: 1.1.13(@types/react-dom@19.1.4(@types/react@19.1.4))(@types/react@19.1.4)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + '@radix-ui/react-dropdown-menu': + specifier: ^2.1.15 + version: 2.1.15(@types/react-dom@19.1.4(@types/react@19.1.4))(@types/react@19.1.4)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) '@radix-ui/react-label': specifier: ^2.1.4 version: 2.1.6(@types/react-dom@19.1.4(@types/react@19.1.4))(@types/react@19.1.4)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) @@ -634,6 +637,21 @@ packages: resolution: {integrity: sha512-ZAoA40rNMPwSm+AeHpCq8STiNAwzWLJuP8Xv4CHIc9wv/PSuExjMrmjfYNj682vW0OOiZ1HKxzvjQr9XZIisQA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@floating-ui/core@1.7.2': + resolution: {integrity: sha512-wNB5ooIKHQc+Kui96jE/n69rHFWAVoxn5CAzL1Xdd8FG03cgY3MLO+GF9U3W737fYDSgPWA6MReKhBQBop6Pcw==} + + '@floating-ui/dom@1.7.2': + resolution: {integrity: sha512-7cfaOQuCS27HD7DX+6ib2OrnW+b4ZBwDNnCcT0uTyidcmyWb03FnQqJybDBoCnpdxwBSfA94UAYlRCt7mV+TbA==} + + '@floating-ui/react-dom@2.1.4': + resolution: {integrity: sha512-JbbpPhp38UmXDDAu60RJmbeme37Jbgsm7NrHGgzYYFKmblzRUh6Pa641dII6LsjwF4XlScDrde2UAzDo/b9KPw==} + peerDependencies: + react: '>=16.8.0' + react-dom: '>=16.8.0' + + '@floating-ui/utils@0.2.10': + resolution: {integrity: sha512-aGTxbpbg8/b5JfU1HXSrbH3wXZuLPJcNEcZQFMxLs3oSzgtVu6nFPkbbGGUvBcUjKV2YyB9Wxxabo+HEH9tcRQ==} + '@hexagon/base64@1.1.28': resolution: {integrity: sha512-lhqDEAvWixy3bZ+UOYbPwUbBkwBq5C1LAJ/xPC8Oi+lL54oyakv/npbA0aU2hgCsx/1NUd4IBvV03+aUBWxerw==} @@ -786,6 +804,19 @@ packages: '@radix-ui/primitive@1.1.2': resolution: {integrity: sha512-XnbHrrprsNqZKQhStrSwgRUQzoCI1glLzdw79xiZPoofhGICeZRSQ3dIxAKH1gb3OHfNf4d6f+vAv3kil2eggA==} + '@radix-ui/react-arrow@1.1.7': + resolution: {integrity: sha512-F+M1tLhO+mlQaOWspE8Wstg+z6PwxwRd8oQ8IXceWz92kfAmalTRf0EjrouQeo7QssEPfCn05B4Ihs1K9WQ/7w==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + '@radix-ui/react-checkbox@1.3.1': resolution: {integrity: sha512-xTaLKAO+XXMPK/BpVTSaAAhlefmvMSACjIhK9mGsImvX2ljcTDm8VGR1CuS1uYcNdR5J+oiOhoJZc5un6bh3VQ==} peerDependencies: @@ -865,6 +896,19 @@ packages: '@types/react': optional: true + '@radix-ui/react-dismissable-layer@1.1.10': + resolution: {integrity: sha512-IM1zzRV4W3HtVgftdQiiOmA0AdJlCtMLe00FXaHwgt3rAnNsIyDqshvkIW3hj/iu5hu8ERP7KIYki6NkqDxAwQ==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + '@radix-ui/react-dismissable-layer@1.1.9': resolution: {integrity: sha512-way197PiTvNp+WBP7svMJasHl+vibhWGQDb6Mgf5mhEWJkgb85z7Lfl9TUdkqpWsf8GRNmoopx9ZxCyDzmgRMQ==} peerDependencies: @@ -878,6 +922,19 @@ packages: '@types/react-dom': optional: true + '@radix-ui/react-dropdown-menu@2.1.15': + resolution: {integrity: sha512-mIBnOjgwo9AH3FyKaSWoSu/dYj6VdhJ7frEPiGTeXCdUFHjl9h3mFh2wwhEtINOmYXWhdpf1rY2minFsmaNgVQ==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + '@radix-ui/react-focus-guards@1.1.2': resolution: {integrity: sha512-fyjAACV62oPV925xFCrH8DR5xWhg9KYtJT4s3u54jxp+L/hbpTY2kIeEFFbFe+a/HCE94zGQMZLIpVTPVZDhaA==} peerDependencies: @@ -900,6 +957,19 @@ packages: '@types/react-dom': optional: true + '@radix-ui/react-focus-scope@1.1.7': + resolution: {integrity: sha512-t2ODlkXBQyn7jkl6TNaw/MtVEVvIGelJDCG41Okq/KwUsJBwQ4XVZsHAVUkK4mBv3ewiAS3PGuUWuY2BoK4ZUw==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + '@radix-ui/react-id@1.1.1': resolution: {integrity: sha512-kGkGegYIdQsOb4XjsfM97rXsiHaBwco+hFI66oO4s9LU+PLAC5oJ7khdOVFxkhsmlbpUqDAvXw11CluXP+jkHg==} peerDependencies: @@ -922,6 +992,32 @@ packages: '@types/react-dom': optional: true + '@radix-ui/react-menu@2.1.15': + resolution: {integrity: sha512-tVlmA3Vb9n8SZSd+YSbuFR66l87Wiy4du+YE+0hzKQEANA+7cWKH1WgqcEX4pXqxUFQKrWQGHdvEfw00TjFiew==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-popper@1.2.7': + resolution: {integrity: sha512-IUFAccz1JyKcf/RjB552PlWwxjeCJB8/4KxT7EhBHOJM+mN7LdW+B3kacJXILm32xawcMMjb2i0cIZpo+f9kiQ==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + '@radix-ui/react-portal@1.1.8': resolution: {integrity: sha512-hQsTUIn7p7fxCPvao/q6wpbxmCwgLrlz+nOrJgC+RwfZqWY/WN+UMqkXzrtKbPrF82P43eCTl3ekeKuyAQbFeg==} peerDependencies: @@ -935,6 +1031,19 @@ packages: '@types/react-dom': optional: true + '@radix-ui/react-portal@1.1.9': + resolution: {integrity: sha512-bpIxvq03if6UNwXZ+HTK71JLh4APvnXntDc6XOX8UVq4XQOVl7lwok0AvIl+b8zgCw3fSaVTZMpAPPagXbKmHQ==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + '@radix-ui/react-presence@1.1.4': resolution: {integrity: sha512-ueDqRbdc4/bkaQT3GIpLQssRlFgWaL/U2z/S31qRwwLWoxHLgry3SIfCwhxeQNbirEUXFa+lq3RL3oBYXtcmIA==} peerDependencies: @@ -1098,6 +1207,15 @@ packages: '@types/react': optional: true + '@radix-ui/react-use-rect@1.1.1': + resolution: {integrity: sha512-QTYuDesS0VtuHNNvMh+CjlKJ4LJickCMUAqjlE3+j8w+RlRpwyX3apEQKGFzbZGdo7XNG1tXa+bQqIE7HIXT2w==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@radix-ui/react-use-size@1.1.1': resolution: {integrity: sha512-ewrXRDTAqAXlkl6t/fkXWNAhFX9I+CkKlw6zjEwk86RSPKwZr3xpBRso655aqYafwtnbpHLj6toFzmd6xdVptQ==} peerDependencies: @@ -1107,6 +1225,9 @@ packages: '@types/react': optional: true + '@radix-ui/rect@1.1.1': + resolution: {integrity: sha512-HPwpGIzkl28mWyZqG52jiqDJ12waP11Pa1lGoiyUkIEuMLBP0oeK/C89esbXrxsky5we7dfd8U58nm0SgAWpVw==} + '@rollup/pluginutils@5.1.4': resolution: {integrity: sha512-USm05zrsFxYLPdWWq+K3STlWiT/3ELn3RcV5hJMghpeAIhxfsUIg6mt12CBJBInWMV4VneoV7SfGv8xIwo2qNQ==} engines: {node: '>=14.0.0'} @@ -4008,6 +4129,23 @@ snapshots: '@eslint/core': 0.13.0 levn: 0.4.1 + '@floating-ui/core@1.7.2': + dependencies: + '@floating-ui/utils': 0.2.10 + + '@floating-ui/dom@1.7.2': + dependencies: + '@floating-ui/core': 1.7.2 + '@floating-ui/utils': 0.2.10 + + '@floating-ui/react-dom@2.1.4(react-dom@19.1.0(react@19.1.0))(react@19.1.0)': + dependencies: + '@floating-ui/dom': 1.7.2 + react: 19.1.0 + react-dom: 19.1.0(react@19.1.0) + + '@floating-ui/utils@0.2.10': {} + '@hexagon/base64@1.1.28': {} '@hookform/resolvers@5.0.1(react-hook-form@7.56.3(react@19.1.0))': @@ -4177,6 +4315,15 @@ snapshots: '@radix-ui/primitive@1.1.2': {} + '@radix-ui/react-arrow@1.1.7(@types/react-dom@19.1.4(@types/react@19.1.4))(@types/react@19.1.4)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)': + dependencies: + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.1.4(@types/react@19.1.4))(@types/react@19.1.4)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + react: 19.1.0 + react-dom: 19.1.0(react@19.1.0) + optionalDependencies: + '@types/react': 19.1.4 + '@types/react-dom': 19.1.4(@types/react@19.1.4) + '@radix-ui/react-checkbox@1.3.1(@types/react-dom@19.1.4(@types/react@19.1.4))(@types/react@19.1.4)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)': dependencies: '@radix-ui/primitive': 1.1.2 @@ -4257,6 +4404,19 @@ snapshots: optionalDependencies: '@types/react': 19.1.4 + '@radix-ui/react-dismissable-layer@1.1.10(@types/react-dom@19.1.4(@types/react@19.1.4))(@types/react@19.1.4)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)': + dependencies: + '@radix-ui/primitive': 1.1.2 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.4)(react@19.1.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.1.4(@types/react@19.1.4))(@types/react@19.1.4)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.1.4)(react@19.1.0) + '@radix-ui/react-use-escape-keydown': 1.1.1(@types/react@19.1.4)(react@19.1.0) + react: 19.1.0 + react-dom: 19.1.0(react@19.1.0) + optionalDependencies: + '@types/react': 19.1.4 + '@types/react-dom': 19.1.4(@types/react@19.1.4) + '@radix-ui/react-dismissable-layer@1.1.9(@types/react-dom@19.1.4(@types/react@19.1.4))(@types/react@19.1.4)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)': dependencies: '@radix-ui/primitive': 1.1.2 @@ -4270,6 +4430,21 @@ snapshots: '@types/react': 19.1.4 '@types/react-dom': 19.1.4(@types/react@19.1.4) + '@radix-ui/react-dropdown-menu@2.1.15(@types/react-dom@19.1.4(@types/react@19.1.4))(@types/react@19.1.4)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)': + dependencies: + '@radix-ui/primitive': 1.1.2 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.4)(react@19.1.0) + '@radix-ui/react-context': 1.1.2(@types/react@19.1.4)(react@19.1.0) + '@radix-ui/react-id': 1.1.1(@types/react@19.1.4)(react@19.1.0) + '@radix-ui/react-menu': 2.1.15(@types/react-dom@19.1.4(@types/react@19.1.4))(@types/react@19.1.4)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.1.4(@types/react@19.1.4))(@types/react@19.1.4)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.1.4)(react@19.1.0) + react: 19.1.0 + react-dom: 19.1.0(react@19.1.0) + optionalDependencies: + '@types/react': 19.1.4 + '@types/react-dom': 19.1.4(@types/react@19.1.4) + '@radix-ui/react-focus-guards@1.1.2(@types/react@19.1.4)(react@19.1.0)': dependencies: react: 19.1.0 @@ -4287,6 +4462,17 @@ snapshots: '@types/react': 19.1.4 '@types/react-dom': 19.1.4(@types/react@19.1.4) + '@radix-ui/react-focus-scope@1.1.7(@types/react-dom@19.1.4(@types/react@19.1.4))(@types/react@19.1.4)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)': + dependencies: + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.4)(react@19.1.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.1.4(@types/react@19.1.4))(@types/react@19.1.4)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.1.4)(react@19.1.0) + react: 19.1.0 + react-dom: 19.1.0(react@19.1.0) + optionalDependencies: + '@types/react': 19.1.4 + '@types/react-dom': 19.1.4(@types/react@19.1.4) + '@radix-ui/react-id@1.1.1(@types/react@19.1.4)(react@19.1.0)': dependencies: '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.1.4)(react@19.1.0) @@ -4303,6 +4489,50 @@ snapshots: '@types/react': 19.1.4 '@types/react-dom': 19.1.4(@types/react@19.1.4) + '@radix-ui/react-menu@2.1.15(@types/react-dom@19.1.4(@types/react@19.1.4))(@types/react@19.1.4)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)': + dependencies: + '@radix-ui/primitive': 1.1.2 + '@radix-ui/react-collection': 1.1.7(@types/react-dom@19.1.4(@types/react@19.1.4))(@types/react@19.1.4)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.4)(react@19.1.0) + '@radix-ui/react-context': 1.1.2(@types/react@19.1.4)(react@19.1.0) + '@radix-ui/react-direction': 1.1.1(@types/react@19.1.4)(react@19.1.0) + '@radix-ui/react-dismissable-layer': 1.1.10(@types/react-dom@19.1.4(@types/react@19.1.4))(@types/react@19.1.4)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + '@radix-ui/react-focus-guards': 1.1.2(@types/react@19.1.4)(react@19.1.0) + '@radix-ui/react-focus-scope': 1.1.7(@types/react-dom@19.1.4(@types/react@19.1.4))(@types/react@19.1.4)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + '@radix-ui/react-id': 1.1.1(@types/react@19.1.4)(react@19.1.0) + '@radix-ui/react-popper': 1.2.7(@types/react-dom@19.1.4(@types/react@19.1.4))(@types/react@19.1.4)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + '@radix-ui/react-portal': 1.1.9(@types/react-dom@19.1.4(@types/react@19.1.4))(@types/react@19.1.4)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + '@radix-ui/react-presence': 1.1.4(@types/react-dom@19.1.4(@types/react@19.1.4))(@types/react@19.1.4)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.1.4(@types/react@19.1.4))(@types/react@19.1.4)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + '@radix-ui/react-roving-focus': 1.1.10(@types/react-dom@19.1.4(@types/react@19.1.4))(@types/react@19.1.4)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + '@radix-ui/react-slot': 1.2.3(@types/react@19.1.4)(react@19.1.0) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.1.4)(react@19.1.0) + aria-hidden: 1.2.4 + react: 19.1.0 + react-dom: 19.1.0(react@19.1.0) + react-remove-scroll: 2.6.3(@types/react@19.1.4)(react@19.1.0) + optionalDependencies: + '@types/react': 19.1.4 + '@types/react-dom': 19.1.4(@types/react@19.1.4) + + '@radix-ui/react-popper@1.2.7(@types/react-dom@19.1.4(@types/react@19.1.4))(@types/react@19.1.4)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)': + dependencies: + '@floating-ui/react-dom': 2.1.4(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + '@radix-ui/react-arrow': 1.1.7(@types/react-dom@19.1.4(@types/react@19.1.4))(@types/react@19.1.4)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.4)(react@19.1.0) + '@radix-ui/react-context': 1.1.2(@types/react@19.1.4)(react@19.1.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.1.4(@types/react@19.1.4))(@types/react@19.1.4)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.1.4)(react@19.1.0) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.1.4)(react@19.1.0) + '@radix-ui/react-use-rect': 1.1.1(@types/react@19.1.4)(react@19.1.0) + '@radix-ui/react-use-size': 1.1.1(@types/react@19.1.4)(react@19.1.0) + '@radix-ui/rect': 1.1.1 + react: 19.1.0 + react-dom: 19.1.0(react@19.1.0) + optionalDependencies: + '@types/react': 19.1.4 + '@types/react-dom': 19.1.4(@types/react@19.1.4) + '@radix-ui/react-portal@1.1.8(@types/react-dom@19.1.4(@types/react@19.1.4))(@types/react@19.1.4)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)': dependencies: '@radix-ui/react-primitive': 2.1.2(@types/react-dom@19.1.4(@types/react@19.1.4))(@types/react@19.1.4)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) @@ -4313,6 +4543,16 @@ snapshots: '@types/react': 19.1.4 '@types/react-dom': 19.1.4(@types/react@19.1.4) + '@radix-ui/react-portal@1.1.9(@types/react-dom@19.1.4(@types/react@19.1.4))(@types/react@19.1.4)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)': + dependencies: + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.1.4(@types/react@19.1.4))(@types/react@19.1.4)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.1.4)(react@19.1.0) + react: 19.1.0 + react-dom: 19.1.0(react@19.1.0) + optionalDependencies: + '@types/react': 19.1.4 + '@types/react-dom': 19.1.4(@types/react@19.1.4) + '@radix-ui/react-presence@1.1.4(@types/react-dom@19.1.4(@types/react@19.1.4))(@types/react@19.1.4)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)': dependencies: '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.4)(react@19.1.0) @@ -4463,6 +4703,13 @@ snapshots: optionalDependencies: '@types/react': 19.1.4 + '@radix-ui/react-use-rect@1.1.1(@types/react@19.1.4)(react@19.1.0)': + dependencies: + '@radix-ui/rect': 1.1.1 + react: 19.1.0 + optionalDependencies: + '@types/react': 19.1.4 + '@radix-ui/react-use-size@1.1.1(@types/react@19.1.4)(react@19.1.0)': dependencies: '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.1.4)(react@19.1.0) @@ -4470,6 +4717,8 @@ snapshots: optionalDependencies: '@types/react': 19.1.4 + '@radix-ui/rect@1.1.1': {} + '@rollup/pluginutils@5.1.4(rollup@4.40.2)': dependencies: '@types/estree': 1.0.7 From 9773659937cae69ccdfe1f869ce89cdc39402ffc Mon Sep 17 00:00:00 2001 From: sara Date: Sun, 20 Jul 2025 15:50:46 +0300 Subject: [PATCH 2/5] add allnotes page to pages folder --- apps/web/src/{components/Dashboard => pages}/AllNotes.tsx | 0 apps/web/src/routes/AppRouter.tsx | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) rename apps/web/src/{components/Dashboard => pages}/AllNotes.tsx (100%) diff --git a/apps/web/src/components/Dashboard/AllNotes.tsx b/apps/web/src/pages/AllNotes.tsx similarity index 100% rename from apps/web/src/components/Dashboard/AllNotes.tsx rename to apps/web/src/pages/AllNotes.tsx diff --git a/apps/web/src/routes/AppRouter.tsx b/apps/web/src/routes/AppRouter.tsx index f640b12..7db166c 100644 --- a/apps/web/src/routes/AppRouter.tsx +++ b/apps/web/src/routes/AppRouter.tsx @@ -19,7 +19,7 @@ import Task from "../pages/Task"; // Router Functions import { createBrowserRouter, RouterProvider } from "react-router-dom"; -import AllNotes from "../components/Dashboard/AllNotes"; +import AllNotes from "../pages/AllNotes"; const router = createBrowserRouter([ { From 9d553b13198cf37d9e6f08527d2043a7a76a99b9 Mon Sep 17 00:00:00 2001 From: sara Date: Thu, 4 Sep 2025 01:59:35 +0300 Subject: [PATCH 3/5] add --- apps/web/components/ui/dropdown-menu.tsx | 64 ++++---- apps/web/src/pages/AllNotes.tsx | 196 ++++++++++++++--------- 2 files changed, 149 insertions(+), 111 deletions(-) diff --git a/apps/web/components/ui/dropdown-menu.tsx b/apps/web/components/ui/dropdown-menu.tsx index efa2c20..c252225 100644 --- a/apps/web/components/ui/dropdown-menu.tsx +++ b/apps/web/components/ui/dropdown-menu.tsx @@ -1,13 +1,13 @@ -import * as React from "react" -import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu" -import { CheckIcon, ChevronRightIcon, CircleIcon } from "lucide-react" +import * as React from "react"; +import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu"; +import { CheckIcon, ChevronRightIcon, CircleIcon } from "lucide-react"; -import { cn } from "../../src/lib/utils" +import { cn } from "../../src/lib/utils"; function DropdownMenu({ ...props }: React.ComponentProps) { - return + return ; } function DropdownMenuPortal({ @@ -15,7 +15,7 @@ function DropdownMenuPortal({ }: React.ComponentProps) { return ( - ) + ); } function DropdownMenuTrigger({ @@ -26,7 +26,7 @@ function DropdownMenuTrigger({ data-slot="dropdown-menu-trigger" {...props} /> - ) + ); } function DropdownMenuContent({ @@ -41,12 +41,12 @@ function DropdownMenuContent({ sideOffset={sideOffset} className={cn( "bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 max-h-(--radix-dropdown-menu-content-available-height) min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border p-1 shadow-md", - className + className, )} {...props} /> - ) + ); } function DropdownMenuGroup({ @@ -54,7 +54,7 @@ function DropdownMenuGroup({ }: React.ComponentProps) { return ( - ) + ); } function DropdownMenuItem({ @@ -63,8 +63,8 @@ function DropdownMenuItem({ variant = "default", ...props }: React.ComponentProps & { - inset?: boolean - variant?: "default" | "destructive" + inset?: boolean; + variant?: "default" | "destructive"; }) { return ( - ) + ); } function DropdownMenuCheckboxItem({ @@ -91,7 +91,7 @@ function DropdownMenuCheckboxItem({ data-slot="dropdown-menu-checkbox-item" className={cn( "focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", - className + className, )} checked={checked} {...props} @@ -103,7 +103,7 @@ function DropdownMenuCheckboxItem({ {children} - ) + ); } function DropdownMenuRadioGroup({ @@ -114,7 +114,7 @@ function DropdownMenuRadioGroup({ data-slot="dropdown-menu-radio-group" {...props} /> - ) + ); } function DropdownMenuRadioItem({ @@ -127,7 +127,7 @@ function DropdownMenuRadioItem({ data-slot="dropdown-menu-radio-item" className={cn( "focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", - className + className, )} {...props} > @@ -138,7 +138,7 @@ function DropdownMenuRadioItem({
{children} - ) + ); } function DropdownMenuLabel({ @@ -146,7 +146,7 @@ function DropdownMenuLabel({ inset, ...props }: React.ComponentProps & { - inset?: boolean + inset?: boolean; }) { return ( - ) + ); } function DropdownMenuSeparator({ @@ -171,7 +171,7 @@ function DropdownMenuSeparator({ className={cn("bg-border -mx-1 my-1 h-px", className)} {...props} /> - ) + ); } function DropdownMenuShortcut({ @@ -183,17 +183,17 @@ function DropdownMenuShortcut({ data-slot="dropdown-menu-shortcut" className={cn( "text-muted-foreground ml-auto text-xs tracking-widest", - className + className, )} {...props} /> - ) + ); } function DropdownMenuSub({ ...props }: React.ComponentProps) { - return + return ; } function DropdownMenuSubTrigger({ @@ -202,7 +202,7 @@ function DropdownMenuSubTrigger({ children, ...props }: React.ComponentProps & { - inset?: boolean + inset?: boolean; }) { return ( {children} - ) + ); } function DropdownMenuSubContent({ @@ -229,11 +229,11 @@ function DropdownMenuSubContent({ data-slot="dropdown-menu-sub-content" className={cn( "bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-hidden rounded-md border p-1 shadow-lg", - className + className, )} {...props} /> - ) + ); } export { @@ -252,4 +252,4 @@ export { DropdownMenuSub, DropdownMenuSubTrigger, DropdownMenuSubContent, -} +}; diff --git a/apps/web/src/pages/AllNotes.tsx b/apps/web/src/pages/AllNotes.tsx index b4e10f2..05d3ff0 100644 --- a/apps/web/src/pages/AllNotes.tsx +++ b/apps/web/src/pages/AllNotes.tsx @@ -1,88 +1,126 @@ import { - DropdownMenu, - DropdownMenuContent, - DropdownMenuItem, - DropdownMenuTrigger, -} from "@/components/ui/dropdown-menu" -import { ChevronDown, EllipsisVertical, Pencil, Trash } from "lucide-react" - - + DropdownMenu, + DropdownMenuContent, + DropdownMenuItem, + DropdownMenuTrigger, +} from "@/components/ui/dropdown-menu"; +import { ChevronDown, EllipsisVertical, Pencil, Trash } from "lucide-react"; function AllNotes() { - const Fakenotes = [ - { topic: 'Topic 1 : intro to sql', date: '22/5/2024', note: 'consectetur adipiscing elit, sed do' }, - { topic: 'Topic 2 : intro to sql', date: '22/5/2024', note: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do' }, - { topic: 'Topic 3 : intro to sql', date: '22/5/2024', note: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do' }, - { topic: 'Topic 4 : intro to sql', date: '22/5/2024', note: 'Lorem ipsum, dolor sit amet consectetur adipisicing elit. Numquam dolores, ducimus incidunt autem minus consequatur voluptatibus veritatis amet in eos ipsam architecto. Numquam ducimus incidunt illo! Magnam doloremque ipsum recusandae!' }, - { topic: 'Topic 5 : intro to sql', date: '22/5/2024', note: 'Lorem ipsum dolor sit amet consectetur adipisicing elit. Facere incidunt voluptas est placeat repudiandae nesciunt debitis cum similique expedita, vitae commodi fuga beatae nihil dolore rem nulla hic blanditiis excepturi delectus sit culpa cumque iste. Sequi sint dolores, eaque fuga quidem delectus corporis repellat hic ut, quis aspernatur aut quam?' }, - ] - return ( - <> -
-
- -

Level

-
- - Beginer - Intermidiate - Advanced - -
-
+ const Fakenotes = [ + { + topic: "Topic 1 : intro to sql", + date: "22/5/2024", + note: "consectetur adipiscing elit, sed do", + }, + { + topic: "Topic 2 : intro to sql", + date: "22/5/2024", + note: "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do", + }, + { + topic: "Topic 3 : intro to sql", + date: "22/5/2024", + note: "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do", + }, + { + topic: "Topic 4 : intro to sql", + date: "22/5/2024", + note: "Lorem ipsum, dolor sit amet consectetur adipisicing elit. Numquam dolores, ducimus incidunt autem minus consequatur voluptatibus veritatis amet in eos ipsam architecto. Numquam ducimus incidunt illo! Magnam doloremque ipsum recusandae!", + }, + { + topic: "Topic 5 : intro to sql", + date: "22/5/2024", + note: "Lorem ipsum dolor sit amet consectetur adipisicing elit. Facere incidunt voluptas est placeat repudiandae nesciunt debitis cum similique expedita, vitae commodi fuga beatae nihil dolore rem nulla hic blanditiis excepturi delectus sit culpa cumque iste. Sequi sint dolores, eaque fuga quidem delectus corporis repellat hic ut, quis aspernatur aut quam?", + }, + ]; + return ( + <> +
+
+ + +
+ {" "} +

Level

{" "} +
+
+ + Beginer + Intermidiate + Advanced + +
+
+
+ + +
+ {" "} +

Sort by Name

{" "} +
+
+ + Sql + HTML + CSS + Js + React + +
+
+
+ + +
+ {" "} +

Sort by Date

{" "} +
+
+ + Sort by Latest + Sort by Oldest + +
+
+
+
+ {Fakenotes.map((note, index) => ( +
+
+

+ {note.topic} +

+
+

{note.date}

- -

Sort by Name

+ + + - - Sql - HTML - CSS - Js - React - - -
-
- -

Sort by Date

-
- - Sort by Latest - Sort by Oldest - - -
+ + +

Edit

{" "} +
+ +

Delete

+
+
+
+
-
- { - Fakenotes.map((note, index) => -
-
-

{note.topic}

-
-

{note.date}

-
- - - - -

Edit

-

Delete

-
-
-
-
-
-

{note.note}...

-
- ) - } -
- - - ) +

+ {note.note}... +

+
+ ))} +
+ + ); } -export default AllNotes \ No newline at end of file +export default AllNotes; From a8818f50523617a250ef005ae107e4abc4f6d524 Mon Sep 17 00:00:00 2001 From: sara Date: Thu, 4 Sep 2025 02:07:42 +0300 Subject: [PATCH 4/5] solve --- apps/web/{src => }/pages/AllNotes.tsx | 0 apps/web/{src => }/pages/ChooseTrack.tsx | 0 apps/web/{src => }/pages/Course.tsx | 0 apps/web/{src => }/pages/Dashboard.tsx | 0 apps/web/{src => }/pages/Help.tsx | 0 apps/web/{src => }/pages/LeaderBoard.tsx | 0 apps/web/{src => }/pages/Login.tsx | 0 apps/web/{src => }/pages/Notes.tsx | 0 apps/web/{src => }/pages/Profile.tsx | 0 apps/web/{src => }/pages/Quiz.tsx | 0 apps/web/{src => }/pages/Roadmap.tsx | 0 apps/web/{src => }/pages/Settings.tsx | 0 apps/web/{src => }/pages/Task.tsx | 0 apps/web/{src => }/pages/Topic.tsx | 0 apps/web/src/routes/AppRouter.tsx | 24 ++++++++++++------------ apps/web/tsconfig.json | 4 ++-- 16 files changed, 14 insertions(+), 14 deletions(-) rename apps/web/{src => }/pages/AllNotes.tsx (100%) rename apps/web/{src => }/pages/ChooseTrack.tsx (100%) rename apps/web/{src => }/pages/Course.tsx (100%) rename apps/web/{src => }/pages/Dashboard.tsx (100%) rename apps/web/{src => }/pages/Help.tsx (100%) rename apps/web/{src => }/pages/LeaderBoard.tsx (100%) rename apps/web/{src => }/pages/Login.tsx (100%) rename apps/web/{src => }/pages/Notes.tsx (100%) rename apps/web/{src => }/pages/Profile.tsx (100%) rename apps/web/{src => }/pages/Quiz.tsx (100%) rename apps/web/{src => }/pages/Roadmap.tsx (100%) rename apps/web/{src => }/pages/Settings.tsx (100%) rename apps/web/{src => }/pages/Task.tsx (100%) rename apps/web/{src => }/pages/Topic.tsx (100%) diff --git a/apps/web/src/pages/AllNotes.tsx b/apps/web/pages/AllNotes.tsx similarity index 100% rename from apps/web/src/pages/AllNotes.tsx rename to apps/web/pages/AllNotes.tsx diff --git a/apps/web/src/pages/ChooseTrack.tsx b/apps/web/pages/ChooseTrack.tsx similarity index 100% rename from apps/web/src/pages/ChooseTrack.tsx rename to apps/web/pages/ChooseTrack.tsx diff --git a/apps/web/src/pages/Course.tsx b/apps/web/pages/Course.tsx similarity index 100% rename from apps/web/src/pages/Course.tsx rename to apps/web/pages/Course.tsx diff --git a/apps/web/src/pages/Dashboard.tsx b/apps/web/pages/Dashboard.tsx similarity index 100% rename from apps/web/src/pages/Dashboard.tsx rename to apps/web/pages/Dashboard.tsx diff --git a/apps/web/src/pages/Help.tsx b/apps/web/pages/Help.tsx similarity index 100% rename from apps/web/src/pages/Help.tsx rename to apps/web/pages/Help.tsx diff --git a/apps/web/src/pages/LeaderBoard.tsx b/apps/web/pages/LeaderBoard.tsx similarity index 100% rename from apps/web/src/pages/LeaderBoard.tsx rename to apps/web/pages/LeaderBoard.tsx diff --git a/apps/web/src/pages/Login.tsx b/apps/web/pages/Login.tsx similarity index 100% rename from apps/web/src/pages/Login.tsx rename to apps/web/pages/Login.tsx diff --git a/apps/web/src/pages/Notes.tsx b/apps/web/pages/Notes.tsx similarity index 100% rename from apps/web/src/pages/Notes.tsx rename to apps/web/pages/Notes.tsx diff --git a/apps/web/src/pages/Profile.tsx b/apps/web/pages/Profile.tsx similarity index 100% rename from apps/web/src/pages/Profile.tsx rename to apps/web/pages/Profile.tsx diff --git a/apps/web/src/pages/Quiz.tsx b/apps/web/pages/Quiz.tsx similarity index 100% rename from apps/web/src/pages/Quiz.tsx rename to apps/web/pages/Quiz.tsx diff --git a/apps/web/src/pages/Roadmap.tsx b/apps/web/pages/Roadmap.tsx similarity index 100% rename from apps/web/src/pages/Roadmap.tsx rename to apps/web/pages/Roadmap.tsx diff --git a/apps/web/src/pages/Settings.tsx b/apps/web/pages/Settings.tsx similarity index 100% rename from apps/web/src/pages/Settings.tsx rename to apps/web/pages/Settings.tsx diff --git a/apps/web/src/pages/Task.tsx b/apps/web/pages/Task.tsx similarity index 100% rename from apps/web/src/pages/Task.tsx rename to apps/web/pages/Task.tsx diff --git a/apps/web/src/pages/Topic.tsx b/apps/web/pages/Topic.tsx similarity index 100% rename from apps/web/src/pages/Topic.tsx rename to apps/web/pages/Topic.tsx diff --git a/apps/web/src/routes/AppRouter.tsx b/apps/web/src/routes/AppRouter.tsx index e92be28..d6469ea 100644 --- a/apps/web/src/routes/AppRouter.tsx +++ b/apps/web/src/routes/AppRouter.tsx @@ -7,21 +7,21 @@ import MainLayout from "@layouts/MainLayout"; // Pages import Login from "@pages/Login"; -import Dashboard from "../pages/Dashboard"; -import Roadmap from "../pages/Roadmap"; -import LeaderBoard from "../pages/LeaderBoard"; -import Quiz from "../pages/Quiz"; -import Profile from "../pages/Profile"; -import Settings from "../pages/Settings"; -import Help from "../pages/Help"; -import ChooseTrack from "../pages/ChooseTrack"; -import Course from "../pages/Course"; -import Topic from "../pages/Topic"; -import Task from "../pages/Task"; +import Dashboard from "../../pages/Dashboard"; +import Roadmap from "../../pages/Roadmap"; +import LeaderBoard from "../../pages/LeaderBoard"; +import Quiz from "../../pages/Quiz"; +import Profile from "../../pages/Profile"; +import Settings from "../../pages/Settings"; +import Help from "../../pages/Help"; +import ChooseTrack from "../../pages/ChooseTrack"; +import Course from "../../pages/Course"; +import Topic from "../../pages/Topic"; +import Task from "../../pages/Task"; // Router Functions import { createBrowserRouter, RouterProvider } from "react-router-dom"; -import AllNotes from "../pages/AllNotes"; +import AllNotes from "../../pages/AllNotes"; const router = createBrowserRouter([ { diff --git a/apps/web/tsconfig.json b/apps/web/tsconfig.json index d96ce66..17ad586 100644 --- a/apps/web/tsconfig.json +++ b/apps/web/tsconfig.json @@ -19,7 +19,7 @@ "baseUrl": ".", "paths": { "@/*": ["./*"], - "@pages/*": ["src/pages/*"], + "@pages/*": ["pages/*"], "@components/*": ["components/*"], "@layouts/*": ["src/layouts/*"], "@hooks/*": ["src/hooks/*"], @@ -32,6 +32,6 @@ "noUnusedParameters": true, "noFallthroughCasesInSwitch": true }, - "include": ["src", "components"], + "include": ["src", "components", "pages"], "references": [{ "path": "./tsconfig.node.json" }] } From 061554542b6e92304841ec94e3e045b02172fbfd Mon Sep 17 00:00:00 2001 From: sara Date: Thu, 4 Sep 2025 02:39:52 +0300 Subject: [PATCH 5/5] resolve conflicts + notes page --- apps/web/{ => src}/pages/AllNotes.tsx | 0 apps/web/{ => src}/pages/ChooseTrack.tsx | 0 apps/web/{ => src}/pages/Course.tsx | 0 apps/web/{ => src}/pages/Dashboard.tsx | 0 apps/web/{ => src}/pages/Help.tsx | 0 apps/web/{ => src}/pages/LeaderBoard.tsx | 0 apps/web/{ => src}/pages/Login.tsx | 0 apps/web/{ => src}/pages/Notes.tsx | 0 apps/web/{ => src}/pages/Profile.tsx | 0 apps/web/{ => src}/pages/Quiz.tsx | 0 apps/web/{ => src}/pages/Roadmap.tsx | 0 apps/web/{ => src}/pages/Settings.tsx | 0 apps/web/{ => src}/pages/Task.tsx | 0 apps/web/{ => src}/pages/Topic.tsx | 0 apps/web/src/routes/AppRouter.tsx | 24 ++++++++++++------------ apps/web/tsconfig.json | 4 ++-- 16 files changed, 14 insertions(+), 14 deletions(-) rename apps/web/{ => src}/pages/AllNotes.tsx (100%) rename apps/web/{ => src}/pages/ChooseTrack.tsx (100%) rename apps/web/{ => src}/pages/Course.tsx (100%) rename apps/web/{ => src}/pages/Dashboard.tsx (100%) rename apps/web/{ => src}/pages/Help.tsx (100%) rename apps/web/{ => src}/pages/LeaderBoard.tsx (100%) rename apps/web/{ => src}/pages/Login.tsx (100%) rename apps/web/{ => src}/pages/Notes.tsx (100%) rename apps/web/{ => src}/pages/Profile.tsx (100%) rename apps/web/{ => src}/pages/Quiz.tsx (100%) rename apps/web/{ => src}/pages/Roadmap.tsx (100%) rename apps/web/{ => src}/pages/Settings.tsx (100%) rename apps/web/{ => src}/pages/Task.tsx (100%) rename apps/web/{ => src}/pages/Topic.tsx (100%) diff --git a/apps/web/pages/AllNotes.tsx b/apps/web/src/pages/AllNotes.tsx similarity index 100% rename from apps/web/pages/AllNotes.tsx rename to apps/web/src/pages/AllNotes.tsx diff --git a/apps/web/pages/ChooseTrack.tsx b/apps/web/src/pages/ChooseTrack.tsx similarity index 100% rename from apps/web/pages/ChooseTrack.tsx rename to apps/web/src/pages/ChooseTrack.tsx diff --git a/apps/web/pages/Course.tsx b/apps/web/src/pages/Course.tsx similarity index 100% rename from apps/web/pages/Course.tsx rename to apps/web/src/pages/Course.tsx diff --git a/apps/web/pages/Dashboard.tsx b/apps/web/src/pages/Dashboard.tsx similarity index 100% rename from apps/web/pages/Dashboard.tsx rename to apps/web/src/pages/Dashboard.tsx diff --git a/apps/web/pages/Help.tsx b/apps/web/src/pages/Help.tsx similarity index 100% rename from apps/web/pages/Help.tsx rename to apps/web/src/pages/Help.tsx diff --git a/apps/web/pages/LeaderBoard.tsx b/apps/web/src/pages/LeaderBoard.tsx similarity index 100% rename from apps/web/pages/LeaderBoard.tsx rename to apps/web/src/pages/LeaderBoard.tsx diff --git a/apps/web/pages/Login.tsx b/apps/web/src/pages/Login.tsx similarity index 100% rename from apps/web/pages/Login.tsx rename to apps/web/src/pages/Login.tsx diff --git a/apps/web/pages/Notes.tsx b/apps/web/src/pages/Notes.tsx similarity index 100% rename from apps/web/pages/Notes.tsx rename to apps/web/src/pages/Notes.tsx diff --git a/apps/web/pages/Profile.tsx b/apps/web/src/pages/Profile.tsx similarity index 100% rename from apps/web/pages/Profile.tsx rename to apps/web/src/pages/Profile.tsx diff --git a/apps/web/pages/Quiz.tsx b/apps/web/src/pages/Quiz.tsx similarity index 100% rename from apps/web/pages/Quiz.tsx rename to apps/web/src/pages/Quiz.tsx diff --git a/apps/web/pages/Roadmap.tsx b/apps/web/src/pages/Roadmap.tsx similarity index 100% rename from apps/web/pages/Roadmap.tsx rename to apps/web/src/pages/Roadmap.tsx diff --git a/apps/web/pages/Settings.tsx b/apps/web/src/pages/Settings.tsx similarity index 100% rename from apps/web/pages/Settings.tsx rename to apps/web/src/pages/Settings.tsx diff --git a/apps/web/pages/Task.tsx b/apps/web/src/pages/Task.tsx similarity index 100% rename from apps/web/pages/Task.tsx rename to apps/web/src/pages/Task.tsx diff --git a/apps/web/pages/Topic.tsx b/apps/web/src/pages/Topic.tsx similarity index 100% rename from apps/web/pages/Topic.tsx rename to apps/web/src/pages/Topic.tsx diff --git a/apps/web/src/routes/AppRouter.tsx b/apps/web/src/routes/AppRouter.tsx index d6469ea..e92be28 100644 --- a/apps/web/src/routes/AppRouter.tsx +++ b/apps/web/src/routes/AppRouter.tsx @@ -7,21 +7,21 @@ import MainLayout from "@layouts/MainLayout"; // Pages import Login from "@pages/Login"; -import Dashboard from "../../pages/Dashboard"; -import Roadmap from "../../pages/Roadmap"; -import LeaderBoard from "../../pages/LeaderBoard"; -import Quiz from "../../pages/Quiz"; -import Profile from "../../pages/Profile"; -import Settings from "../../pages/Settings"; -import Help from "../../pages/Help"; -import ChooseTrack from "../../pages/ChooseTrack"; -import Course from "../../pages/Course"; -import Topic from "../../pages/Topic"; -import Task from "../../pages/Task"; +import Dashboard from "../pages/Dashboard"; +import Roadmap from "../pages/Roadmap"; +import LeaderBoard from "../pages/LeaderBoard"; +import Quiz from "../pages/Quiz"; +import Profile from "../pages/Profile"; +import Settings from "../pages/Settings"; +import Help from "../pages/Help"; +import ChooseTrack from "../pages/ChooseTrack"; +import Course from "../pages/Course"; +import Topic from "../pages/Topic"; +import Task from "../pages/Task"; // Router Functions import { createBrowserRouter, RouterProvider } from "react-router-dom"; -import AllNotes from "../../pages/AllNotes"; +import AllNotes from "../pages/AllNotes"; const router = createBrowserRouter([ { diff --git a/apps/web/tsconfig.json b/apps/web/tsconfig.json index 17ad586..c963180 100644 --- a/apps/web/tsconfig.json +++ b/apps/web/tsconfig.json @@ -19,7 +19,7 @@ "baseUrl": ".", "paths": { "@/*": ["./*"], - "@pages/*": ["pages/*"], + "@pages/*": ["src/pages/*"], "@components/*": ["components/*"], "@layouts/*": ["src/layouts/*"], "@hooks/*": ["src/hooks/*"], @@ -32,6 +32,6 @@ "noUnusedParameters": true, "noFallthroughCasesInSwitch": true }, - "include": ["src", "components", "pages"], + "include": ["src", "components", "src/pages"], "references": [{ "path": "./tsconfig.node.json" }] }