Skip to content

Commit b1b5c0d

Browse files
fix(ui): fix workflow editor model selector, excise ONNX
Ensure workflow editor model selector component gets a value This introduced some funky type issues related to ONNX models. ONNX doesn't work anyways (unmaintained). Instead of fixing the types to work with a non-working feature, ONNX is now removed entirely from the UI. - Remove all refs to ONNX (and Olives) - Fix some type issues - Add ONNX nodes to the nodes denylist (so they are not visible in UI) - Update VAE graph helper, which still had some ONNX logic. It's a very simple change and doesn't change any logic. Just removes some conditions that were for ONNX. I tested it and nothing broke. - Regenerate types - Fix prettier and eslint ignores for generated types - Lint
1 parent ebe7170 commit b1b5c0d

File tree

27 files changed

+1501
-2055
lines changed

27 files changed

+1501
-2055
lines changed

invokeai/frontend/web/.eslintignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,4 +7,4 @@ stats.html
77
index.html
88
.yarn/
99
*.scss
10-
src/services/api/schema.d.ts
10+
src/services/api/schema.ts

invokeai/frontend/web/.prettierignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ index.html
99
.yarn/
1010
.yalc/
1111
*.scss
12-
src/services/api/schema.d.ts
12+
src/services/api/schema.ts
1313
static/
1414
src/theme/css/overlayscrollbars.css
1515
src/theme_/css/overlayscrollbars.css

invokeai/frontend/web/src/common/components/IAIColorPicker.tsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ const IAIColorPicker = (props: IAIColorPickerProps) => {
7070
step={1}
7171
w={numberInputWidth}
7272
defaultValue={90}
73-
/>
73+
/>
7474
</InvControl>
7575
<InvControl label="Green">
7676
<InvNumberInput
@@ -81,7 +81,7 @@ const IAIColorPicker = (props: IAIColorPickerProps) => {
8181
step={1}
8282
w={numberInputWidth}
8383
defaultValue={90}
84-
/>
84+
/>
8585
</InvControl>
8686
<InvControl label="Blue">
8787
<InvNumberInput
@@ -92,7 +92,7 @@ const IAIColorPicker = (props: IAIColorPickerProps) => {
9292
step={1}
9393
w={numberInputWidth}
9494
defaultValue={255}
95-
/>
95+
/>
9696
</InvControl>
9797
<InvControl label="Alpha">
9898
<InvNumberInput

invokeai/frontend/web/src/features/dynamicPrompts/components/ParamDynamicPromptsMaxPrompts.tsx

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,7 @@ import { stateSelector } from 'app/store/store';
33
import { useAppDispatch, useAppSelector } from 'app/store/storeHooks';
44
import { InvControl } from 'common/components/InvControl/InvControl';
55
import { InvSlider } from 'common/components/InvSlider/InvSlider';
6-
import {
7-
maxPromptsChanged,
8-
} from 'features/dynamicPrompts/store/dynamicPromptsSlice';
6+
import { maxPromptsChanged } from 'features/dynamicPrompts/store/dynamicPromptsSlice';
97
import { memo, useCallback } from 'react';
108
import { useTranslation } from 'react-i18next';
119

invokeai/frontend/web/src/features/lora/components/LoRACard.tsx

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,7 @@ import { InvNumberInput } from 'common/components/InvNumberInput/InvNumberInput'
99
import { InvSlider } from 'common/components/InvSlider/InvSlider';
1010
import { InvText } from 'common/components/InvText/wrapper';
1111
import type { LoRA } from 'features/lora/store/loraSlice';
12-
import {
13-
loraRemoved,
14-
loraWeightChanged,
15-
} from 'features/lora/store/loraSlice';
12+
import { loraRemoved, loraWeightChanged } from 'features/lora/store/loraSlice';
1613
import { memo, useCallback } from 'react';
1714
import { FaTrashCan } from 'react-icons/fa6';
1815

invokeai/frontend/web/src/features/modelManager/subpanels/ModelManagerPanel/ModelList.tsx

Lines changed: 4 additions & 76 deletions
Original file line numberDiff line numberDiff line change
@@ -13,12 +13,10 @@ import { ALL_BASE_MODELS } from 'services/api/constants';
1313
import type {
1414
LoRAModelConfigEntity,
1515
MainModelConfigEntity,
16-
OnnxModelConfigEntity,
1716
} from 'services/api/endpoints/models';
1817
import {
1918
useGetLoRAModelsQuery,
2019
useGetMainModelsQuery,
21-
useGetOnnxModelsQuery,
2220
} from 'services/api/endpoints/models';
2321

2422
import ModelListItem from './ModelListItem';
@@ -28,9 +26,9 @@ type ModelListProps = {
2826
setSelectedModelId: (name: string | undefined) => void;
2927
};
3028

31-
type ModelFormat = 'all' | 'checkpoint' | 'diffusers' | 'olive' | 'onnx';
29+
type ModelFormat = 'all' | 'checkpoint' | 'diffusers';
3230

33-
type ModelType = 'main' | 'lora' | 'onnx';
31+
type ModelType = 'main' | 'lora';
3432

3533
type CombinedModelFormat = ModelFormat | 'lora';
3634

@@ -77,26 +75,6 @@ const ModelList = (props: ModelListProps) => {
7775
}
7876
);
7977

80-
const { filteredOnnxModels, isLoadingOnnxModels } = useGetOnnxModelsQuery(
81-
ALL_BASE_MODELS,
82-
{
83-
selectFromResult: ({ data, isLoading }) => ({
84-
filteredOnnxModels: modelsFilter(data, 'onnx', 'onnx', nameFilter),
85-
isLoadingOnnxModels: isLoading,
86-
}),
87-
}
88-
);
89-
90-
const { filteredOliveModels, isLoadingOliveModels } = useGetOnnxModelsQuery(
91-
ALL_BASE_MODELS,
92-
{
93-
selectFromResult: ({ data, isLoading }) => ({
94-
filteredOliveModels: modelsFilter(data, 'onnx', 'olive', nameFilter),
95-
isLoadingOliveModels: isLoading,
96-
}),
97-
}
98-
);
99-
10078
const handleSearchFilter = useCallback((e: ChangeEvent<HTMLInputElement>) => {
10179
setNameFilter(e.target.value);
10280
}, []);
@@ -126,20 +104,6 @@ const ModelList = (props: ModelListProps) => {
126104
>
127105
{t('modelManager.checkpointModels')}
128106
</InvButton>
129-
<InvButton
130-
size="sm"
131-
onClick={setModelFormatFilter.bind(null, 'onnx')}
132-
isChecked={modelFormatFilter === 'onnx'}
133-
>
134-
{t('modelManager.onnxModels')}
135-
</InvButton>
136-
<InvButton
137-
size="sm"
138-
onClick={setModelFormatFilter.bind(null, 'olive')}
139-
isChecked={modelFormatFilter === 'olive'}
140-
>
141-
{t('modelManager.oliveModels')}
142-
</InvButton>
143107
<InvButton
144108
size="sm"
145109
onClick={setModelFormatFilter.bind(null, 'lora')}
@@ -202,34 +166,6 @@ const ModelList = (props: ModelListProps) => {
202166
key="loras"
203167
/>
204168
)}
205-
{/* Olive List */}
206-
{isLoadingOliveModels && (
207-
<FetchingModelsLoader loadingMessage="Loading Olives..." />
208-
)}
209-
{['all', 'olive'].includes(modelFormatFilter) &&
210-
!isLoadingOliveModels &&
211-
filteredOliveModels.length > 0 && (
212-
<ModelListWrapper
213-
title="Olives"
214-
modelList={filteredOliveModels}
215-
selected={{ selectedModelId, setSelectedModelId }}
216-
key="olive"
217-
/>
218-
)}
219-
{/* Onnx List */}
220-
{isLoadingOnnxModels && (
221-
<FetchingModelsLoader loadingMessage="Loading ONNX..." />
222-
)}
223-
{['all', 'onnx'].includes(modelFormatFilter) &&
224-
!isLoadingOnnxModels &&
225-
filteredOnnxModels.length > 0 && (
226-
<ModelListWrapper
227-
title="ONNX"
228-
modelList={filteredOnnxModels}
229-
selected={{ selectedModelId, setSelectedModelId }}
230-
key="onnx"
231-
/>
232-
)}
233169
</Flex>
234170
</Flex>
235171
</Flex>
@@ -238,12 +174,7 @@ const ModelList = (props: ModelListProps) => {
238174

239175
export default memo(ModelList);
240176

241-
const modelsFilter = <
242-
T extends
243-
| MainModelConfigEntity
244-
| LoRAModelConfigEntity
245-
| OnnxModelConfigEntity,
246-
>(
177+
const modelsFilter = <T extends MainModelConfigEntity | LoRAModelConfigEntity>(
247178
data: EntityState<T, string> | undefined,
248179
model_type: ModelType,
249180
model_format: ModelFormat | undefined,
@@ -282,10 +213,7 @@ StyledModelContainer.displayName = 'StyledModelContainer';
282213

283214
type ModelListWrapperProps = {
284215
title: string;
285-
modelList:
286-
| MainModelConfigEntity[]
287-
| LoRAModelConfigEntity[]
288-
| OnnxModelConfigEntity[];
216+
modelList: MainModelConfigEntity[] | LoRAModelConfigEntity[];
289217
selected: ModelListProps;
290218
};
291219

invokeai/frontend/web/src/features/modelManager/subpanels/ModelManagerPanel/ModelListItem.tsx

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,15 +14,14 @@ import { useTranslation } from 'react-i18next';
1414
import type {
1515
LoRAModelConfigEntity,
1616
MainModelConfigEntity,
17-
OnnxModelConfigEntity,
1817
} from 'services/api/endpoints/models';
1918
import {
2019
useDeleteLoRAModelsMutation,
2120
useDeleteMainModelsMutation,
2221
} from 'services/api/endpoints/models';
2322

2423
type ModelListItemProps = {
25-
model: MainModelConfigEntity | OnnxModelConfigEntity | LoRAModelConfigEntity;
24+
model: MainModelConfigEntity | LoRAModelConfigEntity;
2625
isSelected: boolean;
2726
setSelectedModelId: (v: string | undefined) => void;
2827
};
@@ -44,7 +43,6 @@ const ModelListItem = (props: ModelListItemProps) => {
4443
const method = {
4544
main: deleteMainModel,
4645
lora: deleteLoRAModel,
47-
onnx: deleteMainModel,
4846
}[model.model_type];
4947

5048
method(model)

invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/fields/inputs/MainModelFieldInputComponent.tsx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ const MainModelFieldInputComponent = (props: Props) => {
4545
modelEntities: data,
4646
onChange: _onChange,
4747
isLoading,
48+
selectedModel: field.value,
4849
});
4950

5051
return (

invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/fields/inputs/RefinerModelFieldInputComponent.tsx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ const RefinerModelFieldInputComponent = (props: Props) => {
4545
modelEntities: data,
4646
onChange: _onChange,
4747
isLoading,
48+
selectedModel: field.value,
4849
});
4950

5051
return (

invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/fields/inputs/SDXLMainModelFieldInputComponent.tsx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ const SDXLMainModelFieldInputComponent = (props: Props) => {
4545
modelEntities: data,
4646
onChange: _onChange,
4747
isLoading,
48+
selectedModel: field.value,
4849
});
4950

5051
return (

0 commit comments

Comments
 (0)