@@ -2,12 +2,10 @@ import React from 'react';
22import { useParams } from 'react-router-dom' ;
33import { HookNotify , useResolvedExtensions } from '@odh-dashboard/plugin-core' ;
44import {
5- isModelCatalogDeployModalExtension ,
65 isNavigateToDeploymentWizardWithDataExtension ,
76 DeployPrefillData ,
87} from '~/odh/extension-points' ;
98import { CatalogModel , CatalogModelDetailsParams } from '~/app/modelCatalogTypes' ;
10- import { getDeployButtonState } from '~/odh/utils' ;
119import { useCatalogModelArtifacts } from '~/app/hooks/modelCatalog/useCatalogModelArtifacts' ;
1210import {
1311 decodeParams ,
@@ -27,9 +25,6 @@ const ModelCatalogDeployModalExtension: React.FC<ModelCatalogDeployModalExtensio
2725 model,
2826 render,
2927} ) => {
30- const [ platformExtensions ] = useResolvedExtensions ( isModelCatalogDeployModalExtension ) ;
31- const [ availablePlatformIds , setAvailablePlatformIds ] = React . useState < string [ ] > ( [ ] ) ;
32-
3328 const params = useParams < CatalogModelDetailsParams > ( ) ;
3429 const decodedParams = decodeParams ( params ) ;
3530 const [ artifacts ] = useCatalogModelArtifacts (
@@ -58,27 +53,17 @@ const ModelCatalogDeployModalExtension: React.FC<ModelCatalogDeployModalExtensio
5853 }
5954 } , [ navigateToWizard ] ) ;
6055
56+ const isModalAvailable = React . useMemo ( ( ) => {
57+ return navigateExtensionsLoaded && navigateExtensions . length > 0 ;
58+ } , [ navigateExtensions , navigateExtensionsLoaded ] ) ;
59+
6160 const buttonState =
62- platformExtensions . length > 0
63- ? getDeployButtonState ( availablePlatformIds , true )
64- : navigateExtensionsLoaded && navigateExtensions . length > 0
65- ? { enabled : true }
66- : { enabled : false , tooltip : 'Deployment wizard is not available' } ;
61+ navigateExtensionsLoaded && navigateExtensions . length > 0
62+ ? { enabled : true }
63+ : { enabled : false , tooltip : 'Deployment wizard is not available' } ;
6764
6865 return (
6966 < >
70- { /* Get platform IDs */ }
71- { platformExtensions . map ( ( extension ) => {
72- return (
73- extension . properties . useAvailablePlatformIds && (
74- < HookNotify
75- key = { extension . uid }
76- useHook = { extension . properties . useAvailablePlatformIds }
77- onNotify = { ( value ) => setAvailablePlatformIds ( value ?? [ ] ) }
78- />
79- )
80- ) ;
81- } ) }
8267 { /* Get navigation function */ }
8368 { navigateExtensionsLoaded &&
8469 navigateExtensions . length > 0 &&
@@ -99,7 +84,7 @@ const ModelCatalogDeployModalExtension: React.FC<ModelCatalogDeployModalExtensio
9984 />
10085 ) ;
10186 } ) }
102- { render ( buttonState , onOpenModal , navigateExtensionsLoaded && navigateExtensions . length > 0 ) }
87+ { render ( buttonState , onOpenModal , isModalAvailable ) }
10388 </ >
10489 ) ;
10590} ;
0 commit comments