diff --git a/components/button-scroll-to-bottom.tsx b/components/button-scroll-to-bottom.tsx index 9ec0659..b94f34a 100644 --- a/components/button-scroll-to-bottom.tsx +++ b/components/button-scroll-to-bottom.tsx @@ -1,10 +1,10 @@ 'use client' import * as React from 'react' -import { ArrowDown } from 'lucide-react' import { cn } from '@/lib/utils' import { Button, type ButtonProps } from '@/components/ui/button' +import { IconArrowDown } from '@/components/ui/icons' export function ButtonScrollToBottom({ className, ...props }: ButtonProps) { const [isAtBottom, setIsAtBottom] = React.useState(false) @@ -41,7 +41,7 @@ export function ButtonScrollToBottom({ className, ...props }: ButtonProps) { } {...props} > - + Scroll to bottom ) diff --git a/components/chat-message.tsx b/components/chat-message.tsx index 1de2707..f3c6635 100644 --- a/components/chat-message.tsx +++ b/components/chat-message.tsx @@ -1,12 +1,11 @@ import { Message } from 'ai-connector' -import { User } from 'lucide-react' import remarkGfm from 'remark-gfm' import remarkMath from 'remark-math' import { cn } from '@/lib/utils' import { CodeBlock } from '@/components/ui/codeblock' -import { OpenAI } from '@/components/icons' import { MemoizedReactMarkdown } from '@/components/markdown' +import { IconOpenAI, IconUser } from '@/components/ui/icons' export interface ChatMessageProps { message: Message @@ -23,11 +22,7 @@ export function ChatMessage({ message, ...props }: ChatMessageProps) { : 'bg-primary text-primary-foreground' )} > - {message.role === 'user' ? ( - - ) : ( - - )} + {message.role === 'user' ? : }
stop()} className="bg-background" > - + Stop generating ) : ( @@ -44,7 +44,7 @@ export function ChatPanel({ onClick={() => reload()} className="bg-background" > - + Regenerate response ) diff --git a/components/empty-screen.tsx b/components/empty-screen.tsx index 88a6d29..b2804c4 100644 --- a/components/empty-screen.tsx +++ b/components/empty-screen.tsx @@ -1,9 +1,8 @@ -import { ArrowRight } from 'lucide-react' - import { useChatStore } from '@/lib/hooks/use-chat-store' import { cn } from '@/lib/utils' import { Button } from '@/components/ui/button' import { ExternalLink } from '@/components/external-link' +import { IconArrowRight } from '@/components/ui/icons' const exampleMessages = [ { @@ -47,7 +46,7 @@ export function EmptyScreen({ className }: React.ComponentProps<'div'>) { className="h-auto p-0 text-base" onClick={() => setDefaultMessage(message.message)} > - + {message.heading} ))} diff --git a/components/header.tsx b/components/header.tsx index c3b2d6f..b2ffc03 100644 --- a/components/header.tsx +++ b/components/header.tsx @@ -1,11 +1,12 @@ +import { Suspense } from 'react' + import { auth } from '@/auth' import { cn } from '@/lib/utils' import { buttonVariants } from '@/components/ui/button' -import { GitHub, Separator, Vercel } from '@/components/icons' import { Sidebar } from '@/components/sidebar' import { UserMenu } from '@/components/user-menu' -import { SidebarList } from './sidebar-list' -import { Suspense } from 'react' +import { SidebarList } from '@/components/sidebar-list' +import { IconGitHub, IconSeparator, IconVercel } from '@/components/ui/icons' export async function Header() { const session = await auth() @@ -21,7 +22,7 @@ export async function Header() {
- +
@@ -32,7 +33,7 @@ export async function Header() { rel="noopener noreferrer" className={cn(buttonVariants({ variant: 'outline' }))} > - + GitHub - + Deploy to Vercel Deploy diff --git a/components/icons.tsx b/components/icons.tsx deleted file mode 100644 index b94d72f..0000000 --- a/components/icons.tsx +++ /dev/null @@ -1,160 +0,0 @@ -'use client' - -import * as React from 'react' - -import { cn } from '@/lib/utils' - -export function NextChat({ - className, - inverted, - ...props -}: React.ComponentProps<'svg'> & { inverted?: boolean }) { - const id = React.useId() - - return ( - - - - - - - - - - - - - - - - - - - - - - ) -} - -export function OpenAI({ className, ...props }: React.ComponentProps<'svg'>) { - return ( - - OpenAI icon - - - ) -} - -export function Vercel({ className, ...props }: React.ComponentProps<'svg'>) { - return ( - - - - ) -} - -export function GitHub({ className, ...props }: React.ComponentProps<'svg'>) { - return ( - - GitHub - - - ) -} - -export function Separator({ - className, - ...props -}: React.ComponentProps<'svg'>) { - return ( - - ) -} diff --git a/components/prompt-form.tsx b/components/prompt-form.tsx index e90cca8..c250dcb 100644 --- a/components/prompt-form.tsx +++ b/components/prompt-form.tsx @@ -2,7 +2,6 @@ import * as React from 'react' import Link from 'next/link' -import { CornerDownLeft, Plus } from 'lucide-react' import Textarea from 'react-textarea-autosize' import { useChatStore } from '@/lib/hooks/use-chat-store' @@ -15,6 +14,7 @@ import { TooltipProvider, TooltipTrigger } from '@/components/ui/tooltip' +import { IconArrowElbow, IconPlus } from '@/components/ui/icons' export interface PromptProps { onSubmit: (value: string) => void @@ -60,7 +60,7 @@ export function PromptForm({ onSubmit, isLoading }: PromptProps) { 'absolute left-0 top-4 h-8 w-8 rounded-full bg-background p-0 sm:left-4' )} > - + New Chat @@ -85,7 +85,7 @@ export function PromptForm({ onSubmit, isLoading }: PromptProps) { size="icon" disabled={isLoading || input === ''} > - + Send message diff --git a/components/sidebar-item.tsx b/components/sidebar-item.tsx index 55f55a6..ea0295d 100644 --- a/components/sidebar-item.tsx +++ b/components/sidebar-item.tsx @@ -4,7 +4,6 @@ import * as React from 'react' import { useTransition } from 'react' import Link from 'next/link' import { usePathname, useRouter } from 'next/navigation' -import { Loader2Icon, MessageSquare, Trash2Icon } from 'lucide-react' import { cn } from '@/lib/utils' import { @@ -19,6 +18,7 @@ import { } from '@/components/ui/alert-dialog' import { Button, buttonVariants } from '@/components/ui/button' import { removeChat } from '@/app/actions' +import { IconMessage, IconSpinner, IconTrash } from '@/components/ui/icons' export function SidebarItem({ title, @@ -49,7 +49,7 @@ export function SidebarItem({ isActive && 'bg-accent' )} > - +
setIsOpen(true)} > - + Delete )} @@ -91,9 +91,7 @@ export function SidebarItem({ }) }} > - {isPending && ( - - )} + {isPending && } Delete diff --git a/components/sidebar.tsx b/components/sidebar.tsx index 66d7a27..75554e4 100644 --- a/components/sidebar.tsx +++ b/components/sidebar.tsx @@ -3,7 +3,6 @@ import * as React from 'react' import { signOut } from '@auth/nextjs/client' import { type Session } from '@auth/nextjs/types' -import { Sidebar as SidebarIcon } from 'lucide-react' import { Button } from '@/components/ui/button' import { @@ -14,6 +13,7 @@ import { SheetTrigger } from '@/components/ui/sheet' import { ThemeToggle } from '@/components/theme-toggle' +import { IconSidebar } from '@/components/ui/icons' export interface SidebarProps { session?: Session @@ -25,7 +25,7 @@ export function Sidebar({ session, children }: SidebarProps) { diff --git a/components/theme-toggle.tsx b/components/theme-toggle.tsx index 56f559d..67d3f1a 100644 --- a/components/theme-toggle.tsx +++ b/components/theme-toggle.tsx @@ -1,10 +1,10 @@ 'use client' import * as React from 'react' -import { Moon, Sun } from 'lucide-react' import { useTheme } from 'next-themes' import { Button } from '@/components/ui/button' +import { IconMoon, IconSun } from '@/components/ui/icons' export function ThemeToggle() { const { setTheme, theme } = useTheme() @@ -21,9 +21,9 @@ export function ThemeToggle() { }} > {!theme ? null : theme === 'dark' ? ( - + ) : ( - + )} Toggle theme diff --git a/components/ui/codeblock.tsx b/components/ui/codeblock.tsx index 525394a..694bd1d 100644 --- a/components/ui/codeblock.tsx +++ b/components/ui/codeblock.tsx @@ -1,11 +1,11 @@ 'use client' import { FC, memo } from 'react' -import { Check, Clipboard, Download } from 'lucide-react' import { Prism as SyntaxHighlighter } from 'react-syntax-highlighter' import { coldarkDark } from 'react-syntax-highlighter/dist/cjs/styles/prism' import { useCopyToClipboard } from '@/lib/hooks/use-copy-to-cliipboard' +import { IconCheck, IconCopy, IconDownload } from '@/components/ui/icons' interface Props { language: string @@ -91,7 +91,7 @@ const CodeBlock: FC = memo(({ language, value }) => { className="flex items-center gap-1.5 rounded bg-none p-1 text-xs text-white" onClick={() => copyToClipboard(value)} > - {isCopied ? : } + {isCopied ? : } {isCopied ? 'Copied!' : 'Copy code'}
diff --git a/components/ui/dialog.tsx b/components/ui/dialog.tsx index 3abd062..8497985 100644 --- a/components/ui/dialog.tsx +++ b/components/ui/dialog.tsx @@ -2,9 +2,9 @@ import * as React from 'react' import * as DialogPrimitive from '@radix-ui/react-dialog' -import { X } from 'lucide-react' import { cn } from '@/lib/utils' +import { IconClose } from '@/components/ui/icons' const Dialog = DialogPrimitive.Root @@ -54,7 +54,7 @@ const DialogContent = React.forwardRef< > {children} - + Close diff --git a/components/ui/dropdown-menu.tsx b/components/ui/dropdown-menu.tsx deleted file mode 100644 index 4d5ed21..0000000 --- a/components/ui/dropdown-menu.tsx +++ /dev/null @@ -1,200 +0,0 @@ -'use client' - -import * as React from 'react' -import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu' -import { Check, ChevronRight, Circle } from 'lucide-react' - -import { cn } from '@/lib/utils' - -const DropdownMenu = DropdownMenuPrimitive.Root - -const DropdownMenuTrigger = DropdownMenuPrimitive.Trigger - -const DropdownMenuGroup = DropdownMenuPrimitive.Group - -const DropdownMenuPortal = DropdownMenuPrimitive.Portal - -const DropdownMenuSub = DropdownMenuPrimitive.Sub - -const DropdownMenuRadioGroup = DropdownMenuPrimitive.RadioGroup - -const DropdownMenuSubTrigger = React.forwardRef< - React.ElementRef, - React.ComponentPropsWithoutRef & { - inset?: boolean - } ->(({ className, inset, children, ...props }, ref) => ( - - {children} - - -)) -DropdownMenuSubTrigger.displayName = - DropdownMenuPrimitive.SubTrigger.displayName - -const DropdownMenuSubContent = React.forwardRef< - React.ElementRef, - React.ComponentPropsWithoutRef ->(({ className, ...props }, ref) => ( - -)) -DropdownMenuSubContent.displayName = - DropdownMenuPrimitive.SubContent.displayName - -const DropdownMenuContent = React.forwardRef< - React.ElementRef, - React.ComponentPropsWithoutRef ->(({ className, sideOffset = 4, ...props }, ref) => ( - - - -)) -DropdownMenuContent.displayName = DropdownMenuPrimitive.Content.displayName - -const DropdownMenuItem = React.forwardRef< - React.ElementRef, - React.ComponentPropsWithoutRef & { - inset?: boolean - } ->(({ className, inset, ...props }, ref) => ( - -)) -DropdownMenuItem.displayName = DropdownMenuPrimitive.Item.displayName - -const DropdownMenuCheckboxItem = React.forwardRef< - React.ElementRef, - React.ComponentPropsWithoutRef ->(({ className, children, checked, ...props }, ref) => ( - - - - - - - {children} - -)) -DropdownMenuCheckboxItem.displayName = - DropdownMenuPrimitive.CheckboxItem.displayName - -const DropdownMenuRadioItem = React.forwardRef< - React.ElementRef, - React.ComponentPropsWithoutRef ->(({ className, children, ...props }, ref) => ( - - - - - - - {children} - -)) -DropdownMenuRadioItem.displayName = DropdownMenuPrimitive.RadioItem.displayName - -const DropdownMenuLabel = React.forwardRef< - React.ElementRef, - React.ComponentPropsWithoutRef & { - inset?: boolean - } ->(({ className, inset, ...props }, ref) => ( - -)) -DropdownMenuLabel.displayName = DropdownMenuPrimitive.Label.displayName - -const DropdownMenuSeparator = React.forwardRef< - React.ElementRef, - React.ComponentPropsWithoutRef ->(({ className, ...props }, ref) => ( - -)) -DropdownMenuSeparator.displayName = DropdownMenuPrimitive.Separator.displayName - -const DropdownMenuShortcut = ({ - className, - ...props -}: React.HTMLAttributes) => { - return ( - - ) -} -DropdownMenuShortcut.displayName = 'DropdownMenuShortcut' - -export { - DropdownMenu, - DropdownMenuTrigger, - DropdownMenuContent, - DropdownMenuItem, - DropdownMenuCheckboxItem, - DropdownMenuRadioItem, - DropdownMenuLabel, - DropdownMenuSeparator, - DropdownMenuShortcut, - DropdownMenuGroup, - DropdownMenuPortal, - DropdownMenuSub, - DropdownMenuSubContent, - DropdownMenuSubTrigger, - DropdownMenuRadioGroup -} diff --git a/components/ui/icons.tsx b/components/ui/icons.tsx new file mode 100644 index 0000000..6165381 --- /dev/null +++ b/components/ui/icons.tsx @@ -0,0 +1,420 @@ +'use client' + +import * as React from 'react' + +import { cn } from '@/lib/utils' + +function IconNextChat({ + className, + inverted, + ...props +}: React.ComponentProps<'svg'> & { inverted?: boolean }) { + const id = React.useId() + + return ( + + + + + + + + + + + + + + + + + + + + + + ) +} + +function IconOpenAI({ className, ...props }: React.ComponentProps<'svg'>) { + return ( + + OpenAI icon + + + ) +} + +function IconVercel({ className, ...props }: React.ComponentProps<'svg'>) { + return ( + + + + ) +} + +function IconGitHub({ className, ...props }: React.ComponentProps<'svg'>) { + return ( + + GitHub + + + ) +} + +function IconSeparator({ className, ...props }: React.ComponentProps<'svg'>) { + return ( + + ) +} + +function IconArrowDown({ className, ...props }: React.ComponentProps<'svg'>) { + return ( + + + + ) +} + +function IconArrowRight({ className, ...props }: React.ComponentProps<'svg'>) { + return ( + + + + ) +} + +function IconUser({ className, ...props }: React.ComponentProps<'svg'>) { + return ( + + + + ) +} + +function IconPlus({ className, ...props }: React.ComponentProps<'svg'>) { + return ( + + + + ) +} + +function IconArrowElbow({ className, ...props }: React.ComponentProps<'svg'>) { + return ( + + + + ) +} + +function IconSpinner({ className, ...props }: React.ComponentProps<'svg'>) { + return ( + + + + ) +} + +function IconMessage({ className, ...props }: React.ComponentProps<'svg'>) { + return ( + + + + ) +} + +function IconTrash({ className, ...props }: React.ComponentProps<'svg'>) { + return ( + + + + ) +} + +function IconRefresh({ className, ...props }: React.ComponentProps<'svg'>) { + return ( + + + + ) +} + +function IconStop({ className, ...props }: React.ComponentProps<'svg'>) { + return ( + + + + ) +} + +function IconSidebar({ className, ...props }: React.ComponentProps<'svg'>) { + return ( + + + + ) +} + +function IconMoon({ className, ...props }: React.ComponentProps<'svg'>) { + return ( + + + + ) +} + +function IconSun({ className, ...props }: React.ComponentProps<'svg'>) { + return ( + + + + ) +} + +function IconCopy({ className, ...props }: React.ComponentProps<'svg'>) { + return ( + + + + ) +} + +function IconCheck({ className, ...props }: React.ComponentProps<'svg'>) { + return ( + + + + ) +} + +function IconDownload({ className, ...props }: React.ComponentProps<'svg'>) { + return ( + + + + ) +} + +function IconClose({ className, ...props }: React.ComponentProps<'svg'>) { + return ( + + + + ) +} + +export { + IconNextChat, + IconOpenAI, + IconVercel, + IconGitHub, + IconSeparator, + IconArrowDown, + IconArrowRight, + IconUser, + IconPlus, + IconArrowElbow, + IconSpinner, + IconMessage, + IconTrash, + IconRefresh, + IconStop, + IconSidebar, + IconMoon, + IconSun, + IconCopy, + IconCheck, + IconDownload, + IconClose +} diff --git a/components/ui/sheet.tsx b/components/ui/sheet.tsx index 655c1f6..6d12ff7 100644 --- a/components/ui/sheet.tsx +++ b/components/ui/sheet.tsx @@ -3,9 +3,9 @@ import * as React from 'react' import * as SheetPrimitive from '@radix-ui/react-dialog' import { cva, type VariantProps } from 'class-variance-authority' -import { X } from 'lucide-react' import { cn } from '@/lib/utils' +import { IconClose } from '@/components/ui/icons' const Sheet = SheetPrimitive.Root @@ -73,7 +73,7 @@ const SheetContent = React.forwardRef< > {children} - + Close diff --git a/components/user-menu.tsx b/components/user-menu.tsx index 8650c1c..280fa3c 100644 --- a/components/user-menu.tsx +++ b/components/user-menu.tsx @@ -3,9 +3,9 @@ import * as React from 'react' import { signIn } from '@auth/nextjs/client' import { type Session } from '@auth/nextjs/types' -import { Loader2Icon } from 'lucide-react' import { Button } from '@/components/ui/button' +import { IconSpinner } from '@/components/ui/icons' export interface UserMenuProps { session?: Session @@ -25,7 +25,7 @@ export function UserMenu({ session }: UserMenuProps) { }} disabled={isLoading} > - {isLoading && } + {isLoading && } Login ) diff --git a/package.json b/package.json index 6948936..646b9b7 100644 --- a/package.json +++ b/package.json @@ -18,7 +18,6 @@ "@auth/nextjs": "0.0.0-manual.030e8328", "@radix-ui/react-alert-dialog": "^1.0.4", "@radix-ui/react-dialog": "^1.0.4", - "@radix-ui/react-dropdown-menu": "^2.0.4", "@radix-ui/react-separator": "^1.0.3", "@radix-ui/react-slot": "^1.0.2", "@radix-ui/react-tooltip": "^1.0.6", @@ -29,7 +28,6 @@ "class-variance-authority": "^0.4.0", "clsx": "^1.2.1", "focus-trap-react": "^10.1.1", - "lucide-react": "0.216.0", "nanoid": "^4.0.2", "next": "13.4.5-canary.12", "next-themes": "^0.2.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index d7a6db4..a5f796b 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -20,9 +20,6 @@ dependencies: '@radix-ui/react-dialog': specifier: ^1.0.4 version: 1.0.4(@types/react-dom@18.2.4)(@types/react@18.2.6)(react-dom@18.2.0)(react@18.2.0) - '@radix-ui/react-dropdown-menu': - specifier: ^2.0.4 - version: 2.0.4(@types/react@18.2.6)(react-dom@18.2.0)(react@18.2.0) '@radix-ui/react-separator': specifier: ^1.0.3 version: 1.0.3(@types/react-dom@18.2.4)(@types/react@18.2.6)(react-dom@18.2.0)(react@18.2.0) @@ -53,9 +50,6 @@ dependencies: focus-trap-react: specifier: ^10.1.1 version: 10.1.1(prop-types@15.8.1)(react-dom@18.2.0)(react@18.2.0) - lucide-react: - specifier: 0.216.0 - version: 0.216.0(react@18.2.0) nanoid: specifier: ^4.0.2 version: 4.0.2 @@ -252,40 +246,16 @@ packages: engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true - /@floating-ui/core@0.7.3: - resolution: {integrity: sha512-buc8BXHmG9l82+OQXOFU3Kr2XQx9ys01U/Q9HMIrZ300iLc8HLMgh7dcCqgYzAzf4BkoQvDcXf5Y+CuEZ5JBYg==} - dev: false - /@floating-ui/core@1.2.6: resolution: {integrity: sha512-EvYTiXet5XqweYGClEmpu3BoxmsQ4hkj3QaYA6qEnigCWffTP3vNRwBReTdrwDwo7OoJ3wM8Uoe9Uk4n+d4hfg==} dev: false - /@floating-ui/dom@0.5.4: - resolution: {integrity: sha512-419BMceRLq0RrmTSDxn8hf9R3VCJv2K9PUfugh5JyEFmdjzDo+e8U5EdR8nzKq8Yj1htzLm3b6eQEEam3/rrtg==} - dependencies: - '@floating-ui/core': 0.7.3 - dev: false - /@floating-ui/dom@1.2.9: resolution: {integrity: sha512-sosQxsqgxMNkV3C+3UqTS6LxP7isRLwX8WMepp843Rb3/b0Wz8+MdUkxJksByip3C2WwLugLHN1b4ibn//zKwQ==} dependencies: '@floating-ui/core': 1.2.6 dev: false - /@floating-ui/react-dom@0.7.2(@types/react@18.2.6)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-1T0sJcpHgX/u4I1OzIEhlcrvkUN8ln39nz7fMoE/2HDHrPiMFoOGR7++GYyfUmIQHkkrTinaeQsO3XWubjSvGg==} - peerDependencies: - react: '>=16.8.0' - react-dom: '>=16.8.0' - dependencies: - '@floating-ui/dom': 0.5.4 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - use-isomorphic-layout-effect: 1.1.2(@types/react@18.2.6)(react@18.2.0) - transitivePeerDependencies: - - '@types/react' - dev: false - /@floating-ui/react-dom@2.0.0(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-Ke0oU3SeuABC2C4OFu2mSAwHIP5WUiV98O9YWoHV4Q5aT6E9k06DV0Khi5uYspR8xmmBk08t8ZDcz3TR3ARkEg==} peerDependencies: @@ -479,12 +449,6 @@ packages: tslib: 2.5.0 dev: true - /@radix-ui/primitive@1.0.0: - resolution: {integrity: sha512-3e7rn8FDMin4CgeL7Z/49smCA3rFYY3Ha2rUQ7HRWFadS5iCRw08ZgVT1LaNTCNqgvrUiyczLflrVrF0SRQtNA==} - dependencies: - '@babel/runtime': 7.21.5 - dev: false - /@radix-ui/primitive@1.0.1: resolution: {integrity: sha512-yQ8oGX2GVsEYMWGxcovu1uGWPCxV5BFfeeYxqPmuAzUyLT9qmaMXSAhXpb0WrspIeqYzdJpkh2vHModJPgRIaw==} dependencies: @@ -517,18 +481,6 @@ packages: react-dom: 18.2.0(react@18.2.0) dev: false - /@radix-ui/react-arrow@1.0.2(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-fqYwhhI9IarZ0ll2cUSfKuXHlJK0qE4AfnRrPBbRwEH/4mGQn04/QFGomLi8TXWIdv9WJk//KgGm+aDxVIr1wA==} - peerDependencies: - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - dependencies: - '@babel/runtime': 7.21.5 - '@radix-ui/react-primitive': 1.0.2(react-dom@18.2.0)(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - dev: false - /@radix-ui/react-arrow@1.0.3(@types/react-dom@18.2.4)(@types/react@18.2.6)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-wSP+pHsB/jQRaL6voubsQ/ZlrGBHHrOjmBnr19hxYgtS0WvAFwZhK2WP/YY5yF9uKECCEEDGxuLxq1NBK51wFA==} peerDependencies: @@ -550,30 +502,6 @@ packages: react-dom: 18.2.0(react@18.2.0) dev: false - /@radix-ui/react-collection@1.0.2(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-s8WdQQ6wNXpaxdZ308KSr8fEWGrg4un8i4r/w7fhiS4ElRNjk5rRcl0/C6TANG2LvLOGIxtzo/jAg6Qf73TEBw==} - peerDependencies: - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - dependencies: - '@babel/runtime': 7.21.5 - '@radix-ui/react-compose-refs': 1.0.0(react@18.2.0) - '@radix-ui/react-context': 1.0.0(react@18.2.0) - '@radix-ui/react-primitive': 1.0.2(react-dom@18.2.0)(react@18.2.0) - '@radix-ui/react-slot': 1.0.1(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - dev: false - - /@radix-ui/react-compose-refs@1.0.0(react@18.2.0): - resolution: {integrity: sha512-0KaSv6sx787/hK3eF53iOkiSLwAGlFMx5lotrqD2pTjB18KbybKoEIgkNZTKC60YECDQTKGTRcDBILwZVqVKvA==} - peerDependencies: - react: ^16.8 || ^17.0 || ^18.0 - dependencies: - '@babel/runtime': 7.21.5 - react: 18.2.0 - dev: false - /@radix-ui/react-compose-refs@1.0.1(@types/react@18.2.6)(react@18.2.0): resolution: {integrity: sha512-fDSBgd44FKHa1FRMU59qBMPFcl2PZE+2nmqunj+BWFyYYjnhIDWL2ItDs3rrbJDQOtzt5nIebLCQc4QRfz6LJw==} peerDependencies: @@ -588,15 +516,6 @@ packages: react: 18.2.0 dev: false - /@radix-ui/react-context@1.0.0(react@18.2.0): - resolution: {integrity: sha512-1pVM9RfOQ+n/N5PJK33kRSKsr1glNxomxONs5c49MliinBY6Yw2Q995qfBUUo0/Mbg05B/sGA0gkgPI7kmSHBg==} - peerDependencies: - react: ^16.8 || ^17.0 || ^18.0 - dependencies: - '@babel/runtime': 7.21.5 - react: 18.2.0 - dev: false - /@radix-ui/react-context@1.0.1(@types/react@18.2.6)(react@18.2.0): resolution: {integrity: sha512-ebbrdFoYTcuZ0v4wG5tedGnp9tzcV8awzsxYph7gXUyvnNLuTIcCk1q17JEbnVhXAKG9oX3KtchwiMIAYp9NLg==} peerDependencies: @@ -645,31 +564,6 @@ packages: react-remove-scroll: 2.5.5(@types/react@18.2.6)(react@18.2.0) dev: false - /@radix-ui/react-direction@1.0.0(react@18.2.0): - resolution: {integrity: sha512-2HV05lGUgYcA6xgLQ4BKPDmtL+QbIZYH5fCOTAOOcJ5O0QbWS3i9lKaurLzliYUDhORI2Qr3pyjhJh44lKA3rQ==} - peerDependencies: - react: ^16.8 || ^17.0 || ^18.0 - dependencies: - '@babel/runtime': 7.21.5 - react: 18.2.0 - dev: false - - /@radix-ui/react-dismissable-layer@1.0.3(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-nXZOvFjOuHS1ovumntGV7NNoLaEp9JEvTht3MBjP44NSW5hUKj/8OnfN3+8WmB+CEhN44XaGhpHoSsUIEl5P7Q==} - peerDependencies: - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - dependencies: - '@babel/runtime': 7.21.5 - '@radix-ui/primitive': 1.0.0 - '@radix-ui/react-compose-refs': 1.0.0(react@18.2.0) - '@radix-ui/react-primitive': 1.0.2(react-dom@18.2.0)(react@18.2.0) - '@radix-ui/react-use-callback-ref': 1.0.0(react@18.2.0) - '@radix-ui/react-use-escape-keydown': 1.0.2(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - dev: false - /@radix-ui/react-dismissable-layer@1.0.4(@types/react-dom@18.2.4)(@types/react@18.2.6)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-7UpBa/RKMoHJYjie1gkF1DlK8l1fdU/VKDpoS3rCCo8YBJR294GwcEHyxHw72yvphJ7ld0AXEcSLAzY2F/WyCg==} peerDependencies: @@ -695,35 +589,6 @@ packages: react-dom: 18.2.0(react@18.2.0) dev: false - /@radix-ui/react-dropdown-menu@2.0.4(@types/react@18.2.6)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-y6AT9+MydyXcByivdK1+QpjWoKaC7MLjkS/cH1Q3keEyMvDkiY85m8o2Bi6+Z1PPUlCsMULopxagQOSfN0wahg==} - peerDependencies: - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - dependencies: - '@babel/runtime': 7.21.5 - '@radix-ui/primitive': 1.0.0 - '@radix-ui/react-compose-refs': 1.0.0(react@18.2.0) - '@radix-ui/react-context': 1.0.0(react@18.2.0) - '@radix-ui/react-id': 1.0.0(react@18.2.0) - '@radix-ui/react-menu': 2.0.4(@types/react@18.2.6)(react-dom@18.2.0)(react@18.2.0) - '@radix-ui/react-primitive': 1.0.2(react-dom@18.2.0)(react@18.2.0) - '@radix-ui/react-use-controllable-state': 1.0.0(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - transitivePeerDependencies: - - '@types/react' - dev: false - - /@radix-ui/react-focus-guards@1.0.0(react@18.2.0): - resolution: {integrity: sha512-UagjDk4ijOAnGu4WMUPj9ahi7/zJJqNZ9ZAiGPp7waUWJO0O1aWXi/udPphI0IUjvrhBsZJGSN66dR2dsueLWQ==} - peerDependencies: - react: ^16.8 || ^17.0 || ^18.0 - dependencies: - '@babel/runtime': 7.21.5 - react: 18.2.0 - dev: false - /@radix-ui/react-focus-guards@1.0.1(@types/react@18.2.6)(react@18.2.0): resolution: {integrity: sha512-Rect2dWbQ8waGzhMavsIbmSVCgYxkXLxxR3ZvCX79JOglzdEy4JXMb98lq4hPxUbLr77nP0UOGf4rcMU+s1pUA==} peerDependencies: @@ -738,20 +603,6 @@ packages: react: 18.2.0 dev: false - /@radix-ui/react-focus-scope@1.0.2(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-spwXlNTfeIprt+kaEWE/qYuYT3ZAqJiAGjN/JgdvgVDTu8yc+HuX+WOWXrKliKnLnwck0F6JDkqIERncnih+4A==} - peerDependencies: - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - dependencies: - '@babel/runtime': 7.21.5 - '@radix-ui/react-compose-refs': 1.0.0(react@18.2.0) - '@radix-ui/react-primitive': 1.0.2(react-dom@18.2.0)(react@18.2.0) - '@radix-ui/react-use-callback-ref': 1.0.0(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - dev: false - /@radix-ui/react-focus-scope@1.0.3(@types/react-dom@18.2.4)(@types/react@18.2.6)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-upXdPfqI4islj2CslyfUBNlaJCPybbqRHAi1KER7Isel9Q2AtSJ0zRBZv8mWQiFXD2nyAJ4BhC3yXgZ6kMBSrQ==} peerDependencies: @@ -775,16 +626,6 @@ packages: react-dom: 18.2.0(react@18.2.0) dev: false - /@radix-ui/react-id@1.0.0(react@18.2.0): - resolution: {integrity: sha512-Q6iAB/U7Tq3NTolBBQbHTgclPmGWE3OlktGGqrClPozSw4vkQ1DfQAOtzgRPecKsMdJINE05iaoDUG8tRzCBjw==} - peerDependencies: - react: ^16.8 || ^17.0 || ^18.0 - dependencies: - '@babel/runtime': 7.21.5 - '@radix-ui/react-use-layout-effect': 1.0.0(react@18.2.0) - react: 18.2.0 - dev: false - /@radix-ui/react-id@1.0.1(@types/react@18.2.6)(react@18.2.0): resolution: {integrity: sha512-tI7sT/kqYp8p96yGWY1OAnLHrqDgzHefRBKQ2YAkBS5ja7QLcZ9Z/uY7bEjPUatf8RomoXM8/1sMj1IJaE5UzQ==} peerDependencies: @@ -800,60 +641,6 @@ packages: react: 18.2.0 dev: false - /@radix-ui/react-menu@2.0.4(@types/react@18.2.6)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-mzKR47tZ1t193trEqlQoJvzY4u9vYfVH16ryBrVrCAGZzkgyWnMQYEZdUkM7y8ak9mrkKtJiqB47TlEnubeOFQ==} - peerDependencies: - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - dependencies: - '@babel/runtime': 7.21.5 - '@radix-ui/primitive': 1.0.0 - '@radix-ui/react-collection': 1.0.2(react-dom@18.2.0)(react@18.2.0) - '@radix-ui/react-compose-refs': 1.0.0(react@18.2.0) - '@radix-ui/react-context': 1.0.0(react@18.2.0) - '@radix-ui/react-direction': 1.0.0(react@18.2.0) - '@radix-ui/react-dismissable-layer': 1.0.3(react-dom@18.2.0)(react@18.2.0) - '@radix-ui/react-focus-guards': 1.0.0(react@18.2.0) - '@radix-ui/react-focus-scope': 1.0.2(react-dom@18.2.0)(react@18.2.0) - '@radix-ui/react-id': 1.0.0(react@18.2.0) - '@radix-ui/react-popper': 1.1.1(@types/react@18.2.6)(react-dom@18.2.0)(react@18.2.0) - '@radix-ui/react-portal': 1.0.2(react-dom@18.2.0)(react@18.2.0) - '@radix-ui/react-presence': 1.0.0(react-dom@18.2.0)(react@18.2.0) - '@radix-ui/react-primitive': 1.0.2(react-dom@18.2.0)(react@18.2.0) - '@radix-ui/react-roving-focus': 1.0.3(react-dom@18.2.0)(react@18.2.0) - '@radix-ui/react-slot': 1.0.1(react@18.2.0) - '@radix-ui/react-use-callback-ref': 1.0.0(react@18.2.0) - aria-hidden: 1.2.3 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - react-remove-scroll: 2.5.5(@types/react@18.2.6)(react@18.2.0) - transitivePeerDependencies: - - '@types/react' - dev: false - - /@radix-ui/react-popper@1.1.1(@types/react@18.2.6)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-keYDcdMPNMjSC8zTsZ8wezUMiWM9Yj14wtF3s0PTIs9srnEPC9Kt2Gny1T3T81mmSeyDjZxsD9N5WCwNNb712w==} - peerDependencies: - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - dependencies: - '@babel/runtime': 7.21.5 - '@floating-ui/react-dom': 0.7.2(@types/react@18.2.6)(react-dom@18.2.0)(react@18.2.0) - '@radix-ui/react-arrow': 1.0.2(react-dom@18.2.0)(react@18.2.0) - '@radix-ui/react-compose-refs': 1.0.0(react@18.2.0) - '@radix-ui/react-context': 1.0.0(react@18.2.0) - '@radix-ui/react-primitive': 1.0.2(react-dom@18.2.0)(react@18.2.0) - '@radix-ui/react-use-callback-ref': 1.0.0(react@18.2.0) - '@radix-ui/react-use-layout-effect': 1.0.0(react@18.2.0) - '@radix-ui/react-use-rect': 1.0.0(react@18.2.0) - '@radix-ui/react-use-size': 1.0.0(react@18.2.0) - '@radix-ui/rect': 1.0.0 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - transitivePeerDependencies: - - '@types/react' - dev: false - /@radix-ui/react-popper@1.1.2(@types/react-dom@18.2.4)(@types/react@18.2.6)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-1CnGGfFi/bbqtJZZ0P/NQY20xdG3E0LALJaLUEoKwPLwl6PPPfbeiCqMVQnhoFRAxjJj4RpBRJzDmUgsex2tSg==} peerDependencies: @@ -884,18 +671,6 @@ packages: react-dom: 18.2.0(react@18.2.0) dev: false - /@radix-ui/react-portal@1.0.2(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-swu32idoCW7KA2VEiUZGBSu9nB6qwGdV6k6HYhUoOo3M1FFpD+VgLzUqtt3mwL1ssz7r2x8MggpLSQach2Xy/Q==} - peerDependencies: - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - dependencies: - '@babel/runtime': 7.21.5 - '@radix-ui/react-primitive': 1.0.2(react-dom@18.2.0)(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - dev: false - /@radix-ui/react-portal@1.0.3(@types/react-dom@18.2.4)(@types/react@18.2.6)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-xLYZeHrWoPmA5mEKEfZZevoVRK/Q43GfzRXkWV6qawIWWK8t6ifIiLQdd7rmQ4Vk1bmI21XhqF9BN3jWf+phpA==} peerDependencies: @@ -917,19 +692,6 @@ packages: react-dom: 18.2.0(react@18.2.0) dev: false - /@radix-ui/react-presence@1.0.0(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-A+6XEvN01NfVWiKu38ybawfHsBjWum42MRPnEuqPsBZ4eV7e/7K321B5VgYMPv3Xx5An6o1/l9ZuDBgmcmWK3w==} - peerDependencies: - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - dependencies: - '@babel/runtime': 7.21.5 - '@radix-ui/react-compose-refs': 1.0.0(react@18.2.0) - '@radix-ui/react-use-layout-effect': 1.0.0(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - dev: false - /@radix-ui/react-presence@1.0.1(@types/react-dom@18.2.4)(@types/react@18.2.6)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-UXLW4UAbIY5ZjcvzjfRFo5gxva8QirC9hF7wRE4U5gz+TP0DbRk+//qyuAQ1McDxBt1xNMBTaciFGvEmJvAZCg==} peerDependencies: @@ -952,18 +714,6 @@ packages: react-dom: 18.2.0(react@18.2.0) dev: false - /@radix-ui/react-primitive@1.0.2(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-zY6G5Qq4R8diFPNwtyoLRZBxzu1Z+SXMlfYpChN7Dv8gvmx9X3qhDqiLWvKseKVJMuedFeU/Sa0Sy/Ia+t06Dw==} - peerDependencies: - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - dependencies: - '@babel/runtime': 7.21.5 - '@radix-ui/react-slot': 1.0.1(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - dev: false - /@radix-ui/react-primitive@1.0.3(@types/react-dom@18.2.4)(@types/react@18.2.6)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-yi58uVyoAcK/Nq1inRY56ZSjKypBNKTa/1mcL8qdl6oJeEaDbOldlzrGn7P6Q3Id5d+SYNGc5AJgc4vGhjs5+g==} peerDependencies: @@ -985,26 +735,6 @@ packages: react-dom: 18.2.0(react@18.2.0) dev: false - /@radix-ui/react-roving-focus@1.0.3(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-stjCkIoMe6h+1fWtXlA6cRfikdBzCLp3SnVk7c48cv/uy3DTGoXhN76YaOYUJuy3aEDvDIKwKR5KSmvrtPvQPQ==} - peerDependencies: - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - dependencies: - '@babel/runtime': 7.21.5 - '@radix-ui/primitive': 1.0.0 - '@radix-ui/react-collection': 1.0.2(react-dom@18.2.0)(react@18.2.0) - '@radix-ui/react-compose-refs': 1.0.0(react@18.2.0) - '@radix-ui/react-context': 1.0.0(react@18.2.0) - '@radix-ui/react-direction': 1.0.0(react@18.2.0) - '@radix-ui/react-id': 1.0.0(react@18.2.0) - '@radix-ui/react-primitive': 1.0.2(react-dom@18.2.0)(react@18.2.0) - '@radix-ui/react-use-callback-ref': 1.0.0(react@18.2.0) - '@radix-ui/react-use-controllable-state': 1.0.0(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - dev: false - /@radix-ui/react-separator@1.0.3(@types/react-dom@18.2.4)(@types/react@18.2.6)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-itYmTy/kokS21aiV5+Z56MZB54KrhPgn6eHDKkFeOLR34HMN2s8PaN47qZZAGnvupcjxHaFZnW4pQEh0BvvVuw==} peerDependencies: @@ -1026,16 +756,6 @@ packages: react-dom: 18.2.0(react@18.2.0) dev: false - /@radix-ui/react-slot@1.0.1(react@18.2.0): - resolution: {integrity: sha512-avutXAFL1ehGvAXtPquu0YK5oz6ctS474iM3vNGQIkswrVhdrS52e3uoMQBzZhNRAIE0jBnUyXWNmSjGHhCFcw==} - peerDependencies: - react: ^16.8 || ^17.0 || ^18.0 - dependencies: - '@babel/runtime': 7.21.5 - '@radix-ui/react-compose-refs': 1.0.0(react@18.2.0) - react: 18.2.0 - dev: false - /@radix-ui/react-slot@1.0.2(@types/react@18.2.6)(react@18.2.0): resolution: {integrity: sha512-YeTpuq4deV+6DusvVUW4ivBgnkHwECUu0BiN43L5UCDFgdhsRUWAghhTF5MbvNTPzmiFOx90asDSUjWuCNapwg==} peerDependencies: @@ -1083,15 +803,6 @@ packages: react-dom: 18.2.0(react@18.2.0) dev: false - /@radix-ui/react-use-callback-ref@1.0.0(react@18.2.0): - resolution: {integrity: sha512-GZtyzoHz95Rhs6S63D2t/eqvdFCm7I+yHMLVQheKM7nBD8mbZIt+ct1jz4536MDnaOGKIxynJ8eHTkVGVVkoTg==} - peerDependencies: - react: ^16.8 || ^17.0 || ^18.0 - dependencies: - '@babel/runtime': 7.21.5 - react: 18.2.0 - dev: false - /@radix-ui/react-use-callback-ref@1.0.1(@types/react@18.2.6)(react@18.2.0): resolution: {integrity: sha512-D94LjX4Sp0xJFVaoQOd3OO9k7tpBYNOXdVhkltUbGv2Qb9OXdrg/CpsjlZv7ia14Sylv398LswWBVVu5nqKzAQ==} peerDependencies: @@ -1106,16 +817,6 @@ packages: react: 18.2.0 dev: false - /@radix-ui/react-use-controllable-state@1.0.0(react@18.2.0): - resolution: {integrity: sha512-FohDoZvk3mEXh9AWAVyRTYR4Sq7/gavuofglmiXB2g1aKyboUD4YtgWxKj8O5n+Uak52gXQ4wKz5IFST4vtJHg==} - peerDependencies: - react: ^16.8 || ^17.0 || ^18.0 - dependencies: - '@babel/runtime': 7.21.5 - '@radix-ui/react-use-callback-ref': 1.0.0(react@18.2.0) - react: 18.2.0 - dev: false - /@radix-ui/react-use-controllable-state@1.0.1(@types/react@18.2.6)(react@18.2.0): resolution: {integrity: sha512-Svl5GY5FQeN758fWKrjM6Qb7asvXeiZltlT4U2gVfl8Gx5UAv2sMR0LWo8yhsIZh2oQ0eFdZ59aoOOMV7b47VA==} peerDependencies: @@ -1131,16 +832,6 @@ packages: react: 18.2.0 dev: false - /@radix-ui/react-use-escape-keydown@1.0.2(react@18.2.0): - resolution: {integrity: sha512-DXGim3x74WgUv+iMNCF+cAo8xUHHeqvjx8zs7trKf+FkQKPQXLk2sX7Gx1ysH7Q76xCpZuxIJE7HLPxRE+Q+GA==} - peerDependencies: - react: ^16.8 || ^17.0 || ^18.0 - dependencies: - '@babel/runtime': 7.21.5 - '@radix-ui/react-use-callback-ref': 1.0.0(react@18.2.0) - react: 18.2.0 - dev: false - /@radix-ui/react-use-escape-keydown@1.0.3(@types/react@18.2.6)(react@18.2.0): resolution: {integrity: sha512-vyL82j40hcFicA+M4Ex7hVkB9vHgSse1ZWomAqV2Je3RleKGO5iM8KMOEtfoSB0PnIelMd2lATjTGMYqN5ylTg==} peerDependencies: @@ -1156,15 +847,6 @@ packages: react: 18.2.0 dev: false - /@radix-ui/react-use-layout-effect@1.0.0(react@18.2.0): - resolution: {integrity: sha512-6Tpkq+R6LOlmQb1R5NNETLG0B4YP0wc+klfXafpUCj6JGyaUc8il7/kUZ7m59rGbXGczE9Bs+iz2qloqsZBduQ==} - peerDependencies: - react: ^16.8 || ^17.0 || ^18.0 - dependencies: - '@babel/runtime': 7.21.5 - react: 18.2.0 - dev: false - /@radix-ui/react-use-layout-effect@1.0.1(@types/react@18.2.6)(react@18.2.0): resolution: {integrity: sha512-v/5RegiJWYdoCvMnITBkNNx6bCj20fiaJnWtRkU18yITptraXjffz5Qbn05uOiQnOvi+dbkznkoaMltz1GnszQ==} peerDependencies: @@ -1179,16 +861,6 @@ packages: react: 18.2.0 dev: false - /@radix-ui/react-use-rect@1.0.0(react@18.2.0): - resolution: {integrity: sha512-TB7pID8NRMEHxb/qQJpvSt3hQU4sqNPM1VCTjTRjEOa7cEop/QMuq8S6fb/5Tsz64kqSvB9WnwsDHtjnrM9qew==} - peerDependencies: - react: ^16.8 || ^17.0 || ^18.0 - dependencies: - '@babel/runtime': 7.21.5 - '@radix-ui/rect': 1.0.0 - react: 18.2.0 - dev: false - /@radix-ui/react-use-rect@1.0.1(@types/react@18.2.6)(react@18.2.0): resolution: {integrity: sha512-Cq5DLuSiuYVKNU8orzJMbl15TXilTnJKUCltMVQg53BQOF1/C5toAaGrowkgksdBQ9H+SRL23g0HDmg9tvmxXw==} peerDependencies: @@ -1204,16 +876,6 @@ packages: react: 18.2.0 dev: false - /@radix-ui/react-use-size@1.0.0(react@18.2.0): - resolution: {integrity: sha512-imZ3aYcoYCKhhgNpkNDh/aTiU05qw9hX+HHI1QDBTyIlcFjgeFlKKySNGMwTp7nYFLQg/j0VA2FmCY4WPDDHMg==} - peerDependencies: - react: ^16.8 || ^17.0 || ^18.0 - dependencies: - '@babel/runtime': 7.21.5 - '@radix-ui/react-use-layout-effect': 1.0.0(react@18.2.0) - react: 18.2.0 - dev: false - /@radix-ui/react-use-size@1.0.1(@types/react@18.2.6)(react@18.2.0): resolution: {integrity: sha512-ibay+VqrgcaI6veAojjofPATwledXiSmX+C0KrBk/xgpX9rBzPV3OsfwlhQdUOFbh+LKQorLYT+xTXW9V8yd0g==} peerDependencies: @@ -1250,12 +912,6 @@ packages: react-dom: 18.2.0(react@18.2.0) dev: false - /@radix-ui/rect@1.0.0: - resolution: {integrity: sha512-d0O68AYy/9oeEy1DdC07bz1/ZXX+DqCskRd3i4JzLSTXwefzaepQrKjXC7aNM8lTHjFLDO0pDgaEiQ7jEk+HVg==} - dependencies: - '@babel/runtime': 7.21.5 - dev: false - /@radix-ui/rect@1.0.1: resolution: {integrity: sha512-fyrgCaedtvMg9NK3en0pnOYJdtfwxUcNolezkNPUsoX57X8oQk+NkqcvzHXD2uKNij6GXmWU9NDru2IWjrO4BQ==} dependencies: @@ -3525,14 +3181,6 @@ packages: es5-ext: 0.10.62 dev: true - /lucide-react@0.216.0(react@18.2.0): - resolution: {integrity: sha512-PGWXs6JXI/08rhfkmj/joji0MAKDCcms44j0LYILO4J36AWqKhgjjaZ6WECRSyZ9TQe5gOrAR0g38O8cKrQngw==} - peerDependencies: - react: ^16.5.1 || ^17.0.0 || ^18.0.0 - dependencies: - react: 18.2.0 - dev: false - /markdown-table@3.0.3: resolution: {integrity: sha512-Z1NL3Tb1M9wH4XESsCDEksWoKTdlUafKc4pt0GRwjUyXaCFZ+dc3g2erqB6zm3szA2IUSi7VnPI+o/9jnxh9hw==} dev: false