import classnames from 'classnames'; import type { HTMLAttributes } from 'react'; import React, { useState } from 'react'; import { useRequestCreate } from '../hooks/useRequest'; import useTheme from '../hooks/useTheme'; import type { HttpRequest } from '../lib/models'; import { Button } from './Button'; import { ButtonLink } from './ButtonLink'; import { Dialog } from './Dialog'; import { HeaderEditor } from './HeaderEditor'; import { IconButton } from './IconButton'; import { HStack, VStack } from './Stacks'; import { WindowDragRegion } from './WindowDragRegion'; interface Props extends Omit, 'children'> { workspaceId: string; requests: HttpRequest[]; activeRequestId?: string; } export function Sidebar({ className, activeRequestId, workspaceId, requests, ...props }: Props) { const createRequest = useRequestCreate({ workspaceId, navigateAfter: true }); const { appearance, toggleAppearance } = useTheme(); const [open, setOpen] = useState(false); return (
{ await createRequest.mutate({ name: 'Test Request' }); }} /> {requests.map((r) => ( ))} {/**/} setShowPicker((p) => !p)} /> setOpen(true)} />
); } function SidebarItem({ request, active }: { request: HttpRequest; active: boolean }) { return (
  • {request.name || request.url}
  • ); }