@@ -2,17 +2,17 @@ import * as React from "react";
22import {
33 Sidebar ,
44 SidebarContent ,
5- SidebarGroup ,
6- SidebarGroupContent ,
75 SidebarHeader ,
8- SidebarInput ,
96 SidebarRail ,
7+ SidebarMenu ,
8+ SidebarMenuItem ,
9+ SidebarMenuButton ,
1010} from "@/components/ui/sidebar" ;
11- import { useAppDispatch , useAppSelector } from "@/hooks/store" ;
12- import { selectHeaders , selectRootResources , setHeaders , selectMockServerEnabled , setMockServerEnabled } from "@/state/store" ;
13- import { Label } from "../../components/ui/label" ;
14- import { Checkbox } from "../../components/ui/checkbox" ;
11+ import { useAppSelector } from "@/hooks/store" ;
12+ import { selectRootResources } from "@/state/store" ;
1513import { ResourceTypeList } from "@/components/resource_types/resource_type_list" ;
14+ import { Home } from "lucide-react" ;
15+ import { Link } from "react-router-dom" ;
1616
1717// The AppSidebar. This fetches the list of root resources from the schema and displays them.
1818export function AppSidebar ( { ...props } : React . ComponentProps < typeof Sidebar > ) {
@@ -21,8 +21,16 @@ export function AppSidebar({ ...props }: React.ComponentProps<typeof Sidebar>) {
2121 return (
2222 < Sidebar { ...props } >
2323 < SidebarHeader >
24- < HeadersInput />
25- < MockServerToggle />
24+ < SidebarMenu >
25+ < SidebarMenuItem >
26+ < SidebarMenuButton asChild >
27+ < Link to = "/" >
28+ < Home className = "h-4 w-4" />
29+ < span > Home</ span >
30+ </ Link >
31+ </ SidebarMenuButton >
32+ </ SidebarMenuItem >
33+ </ SidebarMenu >
2634 </ SidebarHeader >
2735 < SidebarContent >
2836 < ResourceTypeList resources = { resources } />
@@ -31,52 +39,3 @@ export function AppSidebar({ ...props }: React.ComponentProps<typeof Sidebar>) {
3139 </ Sidebar >
3240 ) ;
3341}
34-
35- export function HeadersInput ( ) {
36- const headers = useAppSelector ( selectHeaders ) ;
37- const dispatch = useAppDispatch ( ) ;
38-
39- const handleTextChange = ( event : React . ChangeEvent < HTMLInputElement > ) => {
40- dispatch ( setHeaders ( event . target . value ) ) ;
41- } ;
42-
43- return (
44- < form >
45- < SidebarGroup className = "py-0" >
46- < SidebarGroupContent className = "relative" >
47- < Label htmlFor = "headers" className = "sr-only" >
48- Headers
49- </ Label >
50- < SidebarInput
51- id = "headers"
52- placeholder = "Headers"
53- type = "text"
54- value = { headers ! }
55- onChange = { handleTextChange } />
56- </ SidebarGroupContent >
57- </ SidebarGroup >
58- </ form >
59- ) ;
60- }
61-
62- export function MockServerToggle ( ) {
63- const mockServerEnabled = useAppSelector ( selectMockServerEnabled ) ;
64- const dispatch = useAppDispatch ( ) ;
65-
66- const handleToggle = ( event : React . ChangeEvent < HTMLInputElement > ) => {
67- dispatch ( setMockServerEnabled ( event . target . checked ) ) ;
68- } ;
69-
70- return (
71- < SidebarGroup className = "py-2" >
72- < SidebarGroupContent >
73- < Checkbox
74- id = "mock-server"
75- checked = { mockServerEnabled }
76- onChange = { handleToggle }
77- label = "Use Mock Server"
78- />
79- </ SidebarGroupContent >
80- </ SidebarGroup >
81- ) ;
82- }
0 commit comments