From dbb698c1bf27c08a8441f99d14c583ece915aef6 Mon Sep 17 00:00:00 2001 From: elmedinarifi Date: Thu, 19 Dec 2024 10:30:24 +0100 Subject: [PATCH] feat: add skeleton component, route page, and mobile hook; update sidebar styles and globals --- bun.lockb | Bin 482510 -> 451071 bytes components.json | 2 +- package.json | 5 +- .../(dashboard)/dashboard/[route]/page.tsx | 15 + .../dashboard/[route]/route-page.tsx | 25 + src/app/(dashboard)/dashboard/layout.tsx | 34 + src/components/ui/separator.tsx | 31 + src/components/ui/sheet.tsx | 144 ++++ src/components/ui/sidebar.tsx | 775 ++++++++++++++++++ src/components/ui/skeleton.tsx | 15 + src/components/ui/tooltip.tsx | 30 + src/hooks/use-mobile.tsx | 21 + src/styles/globals.css | 16 + tailwind.config.ts | 20 +- 14 files changed, 1126 insertions(+), 7 deletions(-) create mode 100644 src/app/(dashboard)/dashboard/[route]/page.tsx create mode 100644 src/app/(dashboard)/dashboard/[route]/route-page.tsx create mode 100644 src/app/(dashboard)/dashboard/layout.tsx create mode 100644 src/components/ui/separator.tsx create mode 100644 src/components/ui/sheet.tsx create mode 100644 src/components/ui/sidebar.tsx create mode 100644 src/components/ui/skeleton.tsx create mode 100644 src/components/ui/tooltip.tsx create mode 100644 src/hooks/use-mobile.tsx diff --git a/bun.lockb b/bun.lockb index adc0e66f33ff31e0774b509312fba7a1445d3d54..7b482416e38871638b020789ac363e33663a212d 100755 GIT binary patch delta 89597 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 delta 109767 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 w; +}) { + const { route } = await params; + + return ( +

+ +
+ ); +} diff --git a/src/app/(dashboard)/dashboard/[route]/route-page.tsx b/src/app/(dashboard)/dashboard/[route]/route-page.tsx new file mode 100644 index 0000000..78ed070 --- /dev/null +++ b/src/app/(dashboard)/dashboard/[route]/route-page.tsx @@ -0,0 +1,25 @@ +'use client'; +import { useQuery } from '@tanstack/react-query'; +import React from 'react'; + +export default function RoutePage({ route }: { route: string }) { + const { data, isFetching } = useQuery({ + queryKey: ['route', route], + queryFn: async () => { + const response = await fetch(`/api/v1/${route}`); + return response.json(); + }, + refetchOnWindowFocus: false, + }); + return ( +
+ {isFetching + ? ( +

Loading...

+ ) + : ( +
{JSON.stringify(data, null, 2)}
+ )} +
+ ); +} diff --git a/src/app/(dashboard)/dashboard/layout.tsx b/src/app/(dashboard)/dashboard/layout.tsx new file mode 100644 index 0000000..353ac5d --- /dev/null +++ b/src/app/(dashboard)/dashboard/layout.tsx @@ -0,0 +1,34 @@ +'use client'; +import { usePathname } from 'next/navigation'; + +import { AppSidebar } from '@/components/app-sidebar'; +import { Separator } from '@/components/ui/separator'; +import { + SidebarInset, + SidebarProvider, + SidebarTrigger, +} from '@/components/ui/sidebar'; + +export default function Page({ children }: { children: React.ReactNode }) { + const pathname = usePathname(); + let route = pathname.split('/').pop(); + if (route) { + route = route + .split('-') + .map(word => word.charAt(0).toUpperCase() + word.slice(1)) + .join(' '); + } + return ( + + + +
+ + + {route} +
+ {children} +
+
+ ); +} diff --git a/src/components/ui/separator.tsx b/src/components/ui/separator.tsx new file mode 100644 index 0000000..c8fe673 --- /dev/null +++ b/src/components/ui/separator.tsx @@ -0,0 +1,31 @@ +'use client'; + +import * as SeparatorPrimitive from '@radix-ui/react-separator'; +import * as React from 'react'; + +import { cn } from '@/lib/utils'; + +const Separator = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>( + ( + { className, orientation = 'horizontal', decorative = true, ...props }, + ref, + ) => ( + + ), +); +Separator.displayName = SeparatorPrimitive.Root.displayName; + +export { Separator }; diff --git a/src/components/ui/sheet.tsx b/src/components/ui/sheet.tsx new file mode 100644 index 0000000..e45fcc0 --- /dev/null +++ b/src/components/ui/sheet.tsx @@ -0,0 +1,144 @@ +'use client'; + +import * as SheetPrimitive from '@radix-ui/react-dialog'; +import { cva, type VariantProps } from 'class-variance-authority'; +import { X } from 'lucide-react'; +import * as React from 'react'; + +import { cn } from '@/lib/utils'; + +const Sheet = SheetPrimitive.Root; + +const SheetTrigger = SheetPrimitive.Trigger; + +const SheetClose = SheetPrimitive.Close; + +const SheetPortal = SheetPrimitive.Portal; + +const SheetOverlay = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => ( + +)); +SheetOverlay.displayName = SheetPrimitive.Overlay.displayName; + +const sheetVariants = cva( + 'fixed z-50 gap-4 bg-background p-6 shadow-lg transition ease-in-out data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:duration-300 data-[state=open]:duration-500', + { + variants: { + side: { + top: 'inset-x-0 top-0 border-b data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top', + bottom: + 'inset-x-0 bottom-0 border-t data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom', + left: 'inset-y-0 left-0 h-full w-3/4 border-r data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left sm:max-w-sm', + right: + 'inset-y-0 right-0 h-full w-3/4 border-l data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right sm:max-w-sm', + }, + }, + defaultVariants: { + side: 'right', + }, + }, +); + +interface SheetContentProps + extends React.ComponentPropsWithoutRef, + VariantProps {} + +const SheetContent = React.forwardRef< + React.ElementRef, + SheetContentProps +>(({ side = 'right', className, children, ...props }, ref) => ( + + + + {children} + + + Close + + + +)); +SheetContent.displayName = SheetPrimitive.Content.displayName; + +function SheetHeader({ + className, + ...props +}: React.HTMLAttributes) { + return ( +
+ ); +} +SheetHeader.displayName = 'SheetHeader'; + +function SheetFooter({ + className, + ...props +}: React.HTMLAttributes) { + return ( +
+ ); +} +SheetFooter.displayName = 'SheetFooter'; + +const SheetTitle = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => ( + +)); +SheetTitle.displayName = SheetPrimitive.Title.displayName; + +const SheetDescription = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => ( + +)); +SheetDescription.displayName = SheetPrimitive.Description.displayName; + +export { + Sheet, + SheetClose, + SheetContent, + SheetDescription, + SheetFooter, + SheetHeader, + SheetOverlay, + SheetPortal, + SheetTitle, + SheetTrigger, +}; diff --git a/src/components/ui/sidebar.tsx b/src/components/ui/sidebar.tsx new file mode 100644 index 0000000..7409697 --- /dev/null +++ b/src/components/ui/sidebar.tsx @@ -0,0 +1,775 @@ +'use client'; + +import type { VariantProps } from 'class-variance-authority'; + +import { Slot } from '@radix-ui/react-slot'; +import { cva } from 'class-variance-authority'; +import { PanelLeft } from 'lucide-react'; +import * as React from 'react'; + +import { Button } from '@/components/ui/button'; +import { Input } from '@/components/ui/input'; +import { Separator } from '@/components/ui/separator'; +import { Sheet, SheetContent } from '@/components/ui/sheet'; +import { Skeleton } from '@/components/ui/skeleton'; +import { + Tooltip, + TooltipContent, + TooltipProvider, + TooltipTrigger, +} from '@/components/ui/tooltip'; +import { useIsMobile } from '@/hooks/use-mobile'; +import { cn } from '@/lib/utils'; + +const SIDEBAR_COOKIE_NAME = 'sidebar:state'; +const SIDEBAR_COOKIE_MAX_AGE = 60 * 60 * 24 * 7; +const SIDEBAR_WIDTH = '16rem'; +const SIDEBAR_WIDTH_MOBILE = '18rem'; +const SIDEBAR_WIDTH_ICON = '3rem'; +const SIDEBAR_KEYBOARD_SHORTCUT = 'b'; + +interface SidebarContext { + state: 'expanded' | 'collapsed'; + open: boolean; + setOpen: (open: boolean) => void; + openMobile: boolean; + setOpenMobile: (open: boolean) => void; + isMobile: boolean; + toggleSidebar: () => void; +} + +// eslint-disable-next-line ts/no-redeclare +const SidebarContext = React.createContext(null); + +function useSidebar() { + const context = React.useContext(SidebarContext); + if (!context) { + throw new Error('useSidebar must be used within a SidebarProvider.'); + } + + return context; +} + +const SidebarProvider = React.forwardRef< + HTMLDivElement, + React.ComponentProps<'div'> & { + defaultOpen?: boolean; + open?: boolean; + onOpenChange?: (open: boolean) => void; + } +>( + ( + { + defaultOpen = true, + open: openProp, + onOpenChange: setOpenProp, + className, + style, + children, + ...props + }, + ref, + ) => { + const isMobile = useIsMobile(); + const [openMobile, setOpenMobile] = React.useState(false); + + // This is the internal state of the sidebar. + // We use openProp and setOpenProp for control from outside the component. + const [_open, _setOpen] = React.useState(defaultOpen); + const open = openProp ?? _open; + const setOpen = React.useCallback( + (value: boolean | ((value: boolean) => boolean)) => { + const openState = typeof value === 'function' ? value(open) : value; + if (setOpenProp) { + setOpenProp(openState); + } + else { + _setOpen(openState); + } + + // This sets the cookie to keep the sidebar state. + document.cookie = `${SIDEBAR_COOKIE_NAME}=${openState}; path=/; max-age=${SIDEBAR_COOKIE_MAX_AGE}`; + }, + [setOpenProp, open], + ); + + // Helper to toggle the sidebar. + const toggleSidebar = React.useCallback(() => { + return isMobile + ? setOpenMobile(open => !open) + : setOpen(open => !open); + }, [isMobile, setOpen, setOpenMobile]); + + // Adds a keyboard shortcut to toggle the sidebar. + React.useEffect(() => { + const handleKeyDown = (event: KeyboardEvent) => { + if ( + event.key === SIDEBAR_KEYBOARD_SHORTCUT + && (event.metaKey || event.ctrlKey) + ) { + event.preventDefault(); + toggleSidebar(); + } + }; + + window.addEventListener('keydown', handleKeyDown); + return () => window.removeEventListener('keydown', handleKeyDown); + }, [toggleSidebar]); + + // We add a state so that we can do data-state="expanded" or "collapsed". + // This makes it easier to style the sidebar with Tailwind classes. + const state = open ? 'expanded' : 'collapsed'; + + const contextValue = React.useMemo( + () => ({ + state, + open, + setOpen, + isMobile, + openMobile, + setOpenMobile, + toggleSidebar, + }), + [ + state, + open, + setOpen, + isMobile, + openMobile, + setOpenMobile, + toggleSidebar, + ], + ); + + return ( + + +
+ {children} +
+
+
+ ); + }, + ); +SidebarProvider.displayName = 'SidebarProvider'; + +const Sidebar = React.forwardRef< + HTMLDivElement, + React.ComponentProps<'div'> & { + side?: 'left' | 'right'; + variant?: 'sidebar' | 'floating' | 'inset'; + collapsible?: 'offcanvas' | 'icon' | 'none'; + } +>( + ( + { + side = 'left', + variant = 'sidebar', + collapsible = 'offcanvas', + className, + children, + ...props + }, + ref, + ) => { + const { isMobile, state, openMobile, setOpenMobile } = useSidebar(); + + if (collapsible === 'none') { + return ( +
+ {children} +
+ ); + } + + if (isMobile) { + return ( + + +
{children}
+
+
+ ); + } + + return ( +
+ {/* This is what handles the sidebar gap on desktop */} +
+ +
+ ); + }, +); +Sidebar.displayName = 'Sidebar'; + +const SidebarTrigger = React.forwardRef< + React.ElementRef, + React.ComponentProps +>(({ className, onClick, ...props }, ref) => { + const { toggleSidebar } = useSidebar(); + + return ( + + ); +}); +SidebarTrigger.displayName = 'SidebarTrigger'; + +const SidebarRail = React.forwardRef< + HTMLButtonElement, + React.ComponentProps<'button'> +>(({ className, ...props }, ref) => { + const { toggleSidebar } = useSidebar(); + + return ( +