| import { Flex, Spacer } from '@invoke-ai/ui-library'; | |
| import { useAppSelector } from 'app/store/storeHooks'; | |
| import { CanvasManagerProviderGate } from 'features/controlLayers/contexts/CanvasManagerProviderGate'; | |
| import { ClearQueueIconButton } from 'features/queue/components/ClearQueueIconButton'; | |
| import { QueueActionsMenuButton } from 'features/queue/components/QueueActionsMenuButton'; | |
| import { SendToToggle } from 'features/queue/components/SendToToggle'; | |
| import ProgressBar from 'features/system/components/ProgressBar'; | |
| import { selectActiveTab } from 'features/ui/store/uiSelectors'; | |
| import { memo } from 'react'; | |
| import { InvokeButton } from './InvokeQueueBackButton'; | |
| const QueueControls = () => { | |
| const tab = useAppSelector(selectActiveTab); | |
| return ( | |
| <Flex w="full" position="relative" borderRadius="base" gap={2} flexDir="column"> | |
| <Flex gap={2}> | |
| <InvokeButton /> | |
| <Spacer /> | |
| {tab === 'canvas' && ( | |
| <CanvasManagerProviderGate> | |
| <SendToToggle /> | |
| </CanvasManagerProviderGate> | |
| )} | |
| <QueueActionsMenuButton /> | |
| <ClearQueueIconButton /> | |
| </Flex> | |
| <ProgressBar /> | |
| </Flex> | |
| ); | |
| }; | |
| export default memo(QueueControls); | |