File tree Expand file tree Collapse file tree
invokeai/frontend/web/src/app/store/middleware/listenerMiddleware/listeners Expand file tree Collapse file tree Original file line number Diff line number Diff line change 11import { logger } from 'app/logging/logger' ;
22import { setBoundingBoxDimensions } from 'features/canvas/store/canvasSlice' ;
3- import { controlNetRemoved } from 'features/controlNet/store/controlNetSlice' ;
3+ import {
4+ controlNetRemoved ,
5+ ipAdapterStateReset ,
6+ } from 'features/controlNet/store/controlNetSlice' ;
47import { loraRemoved } from 'features/lora/store/loraSlice' ;
58import { modelSelected } from 'features/parameters/store/actions' ;
69import {
@@ -56,6 +59,7 @@ export const addModelSelectedListener = () => {
5659 modelsCleared += 1 ;
5760 }
5861
62+ // handle incompatible controlnets
5963 const { controlNets } = state . controlNet ;
6064 forEach ( controlNets , ( controlNet , controlNetId ) => {
6165 if ( controlNet . model ?. base_model !== base_model ) {
@@ -64,6 +68,16 @@ export const addModelSelectedListener = () => {
6468 }
6569 } ) ;
6670
71+ // handle incompatible IP-Adapter
72+ const { ipAdapterInfo } = state . controlNet ;
73+ if (
74+ ipAdapterInfo . model &&
75+ ipAdapterInfo . model . base_model !== base_model
76+ ) {
77+ dispatch ( ipAdapterStateReset ( ) ) ;
78+ modelsCleared += 1 ;
79+ }
80+
6781 if ( modelsCleared > 0 ) {
6882 dispatch (
6983 addToast (
You can’t perform that action at this time.
0 commit comments