From 7f60a4a2826ed0e596b08562f426e390c79cd564 Mon Sep 17 00:00:00 2001 From: Mary Hipp Date: Fri, 8 Nov 2024 20:14:13 -0500 Subject: [PATCH] (ui): update more generation settings for SD3 linear UI --- .../subpanels/ModelPanel/Fields/BaseModelSelect.tsx | 2 ++ .../frontend/web/src/features/parameters/types/constants.ts | 3 ++- .../GenerationSettingsAccordion.tsx | 5 +++-- .../ImageSettingsAccordion/ImageSettingsAccordion.tsx | 5 +++-- 4 files changed, 10 insertions(+), 5 deletions(-) diff --git a/invokeai/frontend/web/src/features/modelManagerV2/subpanels/ModelPanel/Fields/BaseModelSelect.tsx b/invokeai/frontend/web/src/features/modelManagerV2/subpanels/ModelPanel/Fields/BaseModelSelect.tsx index e07714a827..a915972871 100644 --- a/invokeai/frontend/web/src/features/modelManagerV2/subpanels/ModelPanel/Fields/BaseModelSelect.tsx +++ b/invokeai/frontend/web/src/features/modelManagerV2/subpanels/ModelPanel/Fields/BaseModelSelect.tsx @@ -10,6 +10,8 @@ import type { UpdateModelArg } from 'services/api/endpoints/models'; const options: ComboboxOption[] = [ { value: 'sd-1', label: MODEL_TYPE_MAP['sd-1'] }, { value: 'sd-2', label: MODEL_TYPE_MAP['sd-2'] }, + { value: 'sd-3', label: MODEL_TYPE_MAP['sd-3'] }, + { value: 'flux', label: MODEL_TYPE_MAP['flux'] }, { value: 'sdxl', label: MODEL_TYPE_MAP['sdxl'] }, { value: 'sdxl-refiner', label: MODEL_TYPE_MAP['sdxl-refiner'] }, ]; diff --git a/invokeai/frontend/web/src/features/parameters/types/constants.ts b/invokeai/frontend/web/src/features/parameters/types/constants.ts index 6d498e48a8..6eb6e6d98c 100644 --- a/invokeai/frontend/web/src/features/parameters/types/constants.ts +++ b/invokeai/frontend/web/src/features/parameters/types/constants.ts @@ -7,9 +7,10 @@ export const MODEL_TYPE_MAP = { any: 'Any', 'sd-1': 'Stable Diffusion 1.x', 'sd-2': 'Stable Diffusion 2.x', + 'sd-3': 'Stable Diffusion 3.x', sdxl: 'Stable Diffusion XL', 'sdxl-refiner': 'Stable Diffusion XL Refiner', - flux: 'Flux', + flux: 'FLUX', }; /** diff --git a/invokeai/frontend/web/src/features/settingsAccordions/components/GenerationSettingsAccordion/GenerationSettingsAccordion.tsx b/invokeai/frontend/web/src/features/settingsAccordions/components/GenerationSettingsAccordion/GenerationSettingsAccordion.tsx index 1d19e3eadd..8e2401fd2a 100644 --- a/invokeai/frontend/web/src/features/settingsAccordions/components/GenerationSettingsAccordion/GenerationSettingsAccordion.tsx +++ b/invokeai/frontend/web/src/features/settingsAccordions/components/GenerationSettingsAccordion/GenerationSettingsAccordion.tsx @@ -4,7 +4,7 @@ import { EMPTY_ARRAY } from 'app/store/constants'; import { createMemoizedSelector } from 'app/store/createMemoizedSelector'; import { useAppSelector } from 'app/store/storeHooks'; import { selectLoRAsSlice } from 'features/controlLayers/store/lorasSlice'; -import { selectIsFLUX } from 'features/controlLayers/store/paramsSlice'; +import { selectIsFLUX, selectIsSD3 } from 'features/controlLayers/store/paramsSlice'; import { LoRAList } from 'features/lora/components/LoRAList'; import LoRASelect from 'features/lora/components/LoRASelect'; import ParamCFGScale from 'features/parameters/components/Core/ParamCFGScale'; @@ -30,6 +30,7 @@ export const GenerationSettingsAccordion = memo(() => { const modelConfig = useSelectedModelConfig(); const activeTabName = useAppSelector(selectActiveTab); const isFLUX = useAppSelector(selectIsFLUX); + const isSD3 = useAppSelector(selectIsSD3); const selectBadges = useMemo( () => createMemoizedSelector(selectLoRAsSlice, (loras) => { @@ -74,7 +75,7 @@ export const GenerationSettingsAccordion = memo(() => { - {!isFLUX && } + {!isFLUX && !isSD3 && } {isFLUX ? : } diff --git a/invokeai/frontend/web/src/features/settingsAccordions/components/ImageSettingsAccordion/ImageSettingsAccordion.tsx b/invokeai/frontend/web/src/features/settingsAccordions/components/ImageSettingsAccordion/ImageSettingsAccordion.tsx index 701cced1dd..38c88696d5 100644 --- a/invokeai/frontend/web/src/features/settingsAccordions/components/ImageSettingsAccordion/ImageSettingsAccordion.tsx +++ b/invokeai/frontend/web/src/features/settingsAccordions/components/ImageSettingsAccordion/ImageSettingsAccordion.tsx @@ -3,7 +3,7 @@ import { Expander, Flex, FormControlGroup, StandaloneAccordion } from '@invoke-a import { EMPTY_ARRAY } from 'app/store/constants'; import { createMemoizedSelector } from 'app/store/createMemoizedSelector'; import { useAppSelector } from 'app/store/storeHooks'; -import { selectIsFLUX, selectParamsSlice } from 'features/controlLayers/store/paramsSlice'; +import { selectIsFLUX, selectIsSD3, selectParamsSlice } from 'features/controlLayers/store/paramsSlice'; import { selectCanvasSlice, selectScaleMethod } from 'features/controlLayers/store/selectors'; import { ParamOptimizedDenoisingToggle } from 'features/parameters/components/Advanced/ParamOptimizedDenoisingToggle'; import BboxScaledHeight from 'features/parameters/components/Bbox/BboxScaledHeight'; @@ -60,6 +60,7 @@ export const ImageSettingsAccordion = memo(() => { defaultIsOpen: false, }); const isFLUX = useAppSelector(selectIsFLUX); + const isSD3 = useAppSelector(selectIsSD3); return ( { - {isFLUX && } + {(isFLUX || isSD3) && } {scaleMethod !== 'none' && (