1212 */
1313
1414import { useState , useMemo , useCallback , useEffect } from 'react'
15+ import { useNavigate } from 'react-router-dom'
1516import {
1617 Button ,
1718 Dropdown ,
@@ -24,14 +25,13 @@ import {
2425} from '@heroui/react'
2526
2627import { Icon } from '@/components/Icon'
27- import { useAddLLMProviderModal } from '@/components/AddLLMProviderModal'
2828import { useLLMModelStore } from '@/stores/llmModelStore'
2929import { LLMService } from '@/lib/llm'
3030import { CredentialService } from '@/lib/credential-service'
3131import { inferLocalModelCapabilities } from '@/lib/llm/models'
3232import { getModel as getModelFromModelsDev } from '@/lib/models-dev'
3333import type { NormalizedModel } from '@/lib/models-dev/types'
34- import { type Lang , useI18n } from '@/i18n'
34+ import { type Lang , useI18n , useUrl } from '@/i18n'
3535import type { Credential } from '@/types'
3636import type { IconName } from '@/lib/types'
3737
@@ -145,7 +145,8 @@ export function StudioModelSelector({
145145 onVideoModelChange,
146146} : StudioModelSelectorProps ) {
147147 const { t } = useI18n ( localI18n )
148- const openAddProviderModal = useAddLLMProviderModal ( ( state ) => state . open )
148+ const navigate = useNavigate ( )
149+ const url = useUrl ( )
149150 const credentials = useLLMModelStore ( ( state ) => state . credentials )
150151
151152 // View mode: 'providers' shows provider list, 'models' shows model list for a provider
@@ -417,7 +418,13 @@ export function StudioModelSelector({
417418 variant = "flat"
418419 color = "warning"
419420 className = "min-w-0 px-2 h-8"
420- onPress = { openAddProviderModal }
421+ onPress = { ( ) =>
422+ navigate (
423+ url (
424+ `${ location . pathname } ${ location . search } #settings/providers/add` ,
425+ ) ,
426+ )
427+ }
421428 startContent = { < Icon name = "Plus" size = "sm" /> }
422429 >
423430 < span className = "text-xs" > { t ( 'Select model' ) } </ span >
@@ -652,7 +659,13 @@ export function StudioModelSelector({
652659 key = "add-provider"
653660 startContent = { < Icon name = "Plus" size = "sm" /> }
654661 textValue = { t ( 'Select model' ) }
655- onPress = { openAddProviderModal }
662+ onPress = { ( ) =>
663+ navigate (
664+ url (
665+ `${ location . pathname } ${ location . search } #settings/providers/add` ,
666+ ) ,
667+ )
668+ }
656669 closeOnSelect
657670 >
658671 { t ( 'Add provider' ) }
0 commit comments