@@ -11,9 +11,11 @@ import Toast from "libs/toast";
1111import  {  computeArrayFromBoundingBox  }  from  "libs/utils" ; 
1212import  type  React  from  "react" ; 
1313import  {  createContext ,  useCallback ,  useContext ,  useEffect ,  useState  }  from  "react" ; 
14+ import  {  useDispatch  }  from  "react-redux" ; 
1415import  {  APIJobType ,  type  AiModel  }  from  "types/api_types" ; 
1516import  {  ControlModeEnum  }  from  "viewer/constants" ; 
1617import  {  getColorLayers  }  from  "viewer/model/accessors/dataset_accessor" ; 
18+ import  {  setAIJobModalStateAction  }  from  "viewer/model/actions/ui_actions" ; 
1719import  type  {  UserBoundingBox  }  from  "viewer/store" ; 
1820
1921interface  RunAiModelJobContextType  { 
@@ -41,6 +43,8 @@ export const RunAiModelJobContextProvider: React.FC<{ children: React.ReactNode
4143  const  [ newDatasetName ,  setNewDatasetName ]  =  useState ( "" ) ; 
4244  const  [ selectedLayerName ,  setSelectedLayerName ]  =  useState < string  |  null > ( null ) ; 
4345
46+   const  dispatch  =  useDispatch ( ) ; 
47+ 
4448  const  dataset  =  useWkSelector ( ( state )  =>  state . dataset ) ; 
4549  const  annotationId  =  useWkSelector ( ( state )  =>  state . annotation . annotationId ) ; 
4650  const  isViewMode  =  useWkSelector ( 
@@ -76,8 +80,8 @@ export const RunAiModelJobContextProvider: React.FC<{ children: React.ReactNode
7680    const  maybeAnnotationId  =  isViewMode  ? { }  : {  annotationId } ; 
7781
7882    try  { 
79-       if  ( "isOwnedByUsersOrganization "  in  selectedModel )  { 
80-         // Custom model  
83+       if  ( "traininJob "  in  selectedModel )  { 
84+         // Custom models  
8185        const  commonInferenceArgs  =  { 
8286          ...maybeAnnotationId , 
8387          aiModelId : selectedModel . id  as  string , 
@@ -97,7 +101,7 @@ export const RunAiModelJobContextProvider: React.FC<{ children: React.ReactNode
97101          await  runNeuronModelInferenceWithAiModelJob ( commonInferenceArgs ) ; 
98102        } 
99103      }  else  { 
100-         // Pre-trained model  
104+         // Pre-trained models  
101105        switch  ( selectedJobType )  { 
102106          case  APIJobType . INFER_NEURONS :
103107            await  startNeuronInferralJob ( 
@@ -124,6 +128,7 @@ export const RunAiModelJobContextProvider: React.FC<{ children: React.ReactNode
124128        } 
125129      } 
126130      Toast . success ( "Analysis started successfully!" ) ; 
131+       dispatch ( setAIJobModalStateAction ( "invisible" ) ) ; 
127132    }  catch  ( error )  { 
128133      console . error ( error ) ; 
129134      Toast . error ( "Failed to start analysis." ) ; 
0 commit comments