11import { type FC , useCallback , useState } from 'react' ;
2- import { FormProvider , useWatch } from 'react-hook-form' ;
2+ import { FormProvider , useForm , useWatch } from 'react-hook-form' ;
33import { useNavigate } from 'react-router-dom-v5-compat' ;
44import { createProvider } from 'src/providers/create/utils/createProvider' ;
55import { createProviderSecret } from 'src/providers/create/utils/createProviderSecret' ;
@@ -26,7 +26,6 @@ import NfsDirectoryField from './fields/NfsDirectoryField';
2626import ProviderNameField from './fields/ProviderNameField' ;
2727import ProviderProjectField from './fields/ProviderProjectField' ;
2828import ProviderTypeField from './fields/ProviderTypeField' ;
29- import { useCreateProviderForm } from './hooks/useCreateProviderForm' ;
3029import { buildOvaProviderResources } from './utils/buildProviderResources' ;
3130import { getDefaultFormValues } from './utils/getDefaultFormValues' ;
3231import CreateProviderFormContextProvider from './CreateProviderFormContextProvider' ;
@@ -40,7 +39,7 @@ const CreateProviderForm: FC = () => {
4039 const { trackEvent } = useForkliftAnalytics ( ) ;
4140 const [ apiError , setApiError ] = useState < Error | null > ( null ) ;
4241
43- const form = useCreateProviderForm ( {
42+ const form = useForm < CreateProviderFormData > ( {
4443 defaultValues : getDefaultFormValues ( '' ) ,
4544 mode : 'onChange' ,
4645 } ) ;
@@ -71,16 +70,19 @@ const CreateProviderForm: FC = () => {
7170 try {
7271 const { provider : newProvider , secret : newSecret } = buildOvaProviderResources ( formData ) ;
7372 const secret = await createProviderSecret ( newProvider , newSecret ) ;
74- const provider = await createProvider ( newProvider , secret ! ) ;
75- await patchProviderSecretOwner ( provider , secret ) ;
7673
77- trackEvent ( TELEMETRY_EVENTS . PROVIDER_CREATE_COMPLETED , {
78- namespace,
79- providerType : provider ?. spec ?. type ,
80- } ) ;
74+ if ( secret ) {
75+ const provider = await createProvider ( newProvider , secret ) ;
76+ await patchProviderSecretOwner ( provider , secret ) ;
77+
78+ trackEvent ( TELEMETRY_EVENTS . PROVIDER_CREATE_COMPLETED , {
79+ namespace,
80+ providerType : provider ?. spec ?. type ,
81+ } ) ;
8182
82- const providerURL = getProviderDetailsPageUrl ( provider ) ;
83- navigate ( providerURL ) ;
83+ const providerURL = getProviderDetailsPageUrl ( provider ) ;
84+ navigate ( providerURL ) ;
85+ }
8486 } catch ( err ) {
8587 trackEvent ( TELEMETRY_EVENTS . PROVIDER_CREATE_FAILED , {
8688 error : err instanceof Error ? err . message : 'Unknown error' ,
0 commit comments