mirror of
https://github.com/invoke-ai/InvokeAI.git
synced 2026-02-15 18:54:58 -05:00
50 lines
2.6 KiB
TypeScript
50 lines
2.6 KiB
TypeScript
import { Box, Flex } from '@invoke-ai/ui-library';
|
|
import { useAppSelector } from 'app/store/storeHooks';
|
|
import { overlayScrollbarsParams } from 'common/components/OverlayScrollbars/constants';
|
|
import { Prompts } from 'features/parameters/components/Prompts/Prompts';
|
|
import QueueControls from 'features/queue/components/QueueControls';
|
|
import { SDXLPrompts } from 'features/sdxl/components/SDXLPrompts/SDXLPrompts';
|
|
import { AdvancedSettingsAccordion } from 'features/settingsAccordions/components/AdvancedSettingsAccordion/AdvancedSettingsAccordion';
|
|
import { CompositingSettingsAccordion } from 'features/settingsAccordions/components/CompositingSettingsAccordion/CompositingSettingsAccordion';
|
|
import { ControlSettingsAccordion } from 'features/settingsAccordions/components/ControlSettingsAccordion/ControlSettingsAccordion';
|
|
import { GenerationSettingsAccordion } from 'features/settingsAccordions/components/GenerationSettingsAccordion/GenerationSettingsAccordion';
|
|
import { ImageSettingsAccordion } from 'features/settingsAccordions/components/ImageSettingsAccordion/ImageSettingsAccordion';
|
|
import { RefinerSettingsAccordion } from 'features/settingsAccordions/components/RefinerSettingsAccordion/RefinerSettingsAccordion';
|
|
import { activeTabNameSelector } from 'features/ui/store/uiSelectors';
|
|
import { OverlayScrollbarsComponent } from 'overlayscrollbars-react';
|
|
import type { CSSProperties } from 'react';
|
|
import { memo } from 'react';
|
|
|
|
const overlayScrollbarsStyles: CSSProperties = {
|
|
height: '100%',
|
|
width: '100%',
|
|
};
|
|
|
|
const ParametersPanel = () => {
|
|
const activeTabName = useAppSelector(activeTabNameSelector);
|
|
const isSDXL = useAppSelector((s) => s.generation.model?.base_model === 'sdxl');
|
|
|
|
return (
|
|
<Flex w="full" h="full" flexDir="column" gap={2}>
|
|
<QueueControls />
|
|
<Flex w="full" h="full" position="relative">
|
|
<Box position="absolute" top={0} left={0} right={0} bottom={0}>
|
|
<OverlayScrollbarsComponent defer style={overlayScrollbarsStyles} options={overlayScrollbarsParams.options}>
|
|
<Flex gap={2} flexDirection="column" h="full" w="full">
|
|
{isSDXL ? <SDXLPrompts /> : <Prompts />}
|
|
<ImageSettingsAccordion />
|
|
<GenerationSettingsAccordion />
|
|
<ControlSettingsAccordion />
|
|
{activeTabName === 'unifiedCanvas' && <CompositingSettingsAccordion />}
|
|
{isSDXL && <RefinerSettingsAccordion />}
|
|
<AdvancedSettingsAccordion />
|
|
</Flex>
|
|
</OverlayScrollbarsComponent>
|
|
</Box>
|
|
</Flex>
|
|
</Flex>
|
|
);
|
|
};
|
|
|
|
export default memo(ParametersPanel);
|