Merge pull request #6242 from menloresearch/enhancement/remove-validate-extension

enhancement: remove validate file extension from select file when import gguf
This commit is contained in:
Faisal Amir 2025-08-20 13:30:59 +07:00 committed by GitHub
commit ee0b29d9f0
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -100,25 +100,16 @@ function ProviderDetail() {
if (!provider) { if (!provider) {
return return
} }
setImportingModel(true) setImportingModel(true)
const selectedFile = await open({ const selectedFile = await open({
multiple: false, multiple: false,
directory: false, directory: false,
filters: [
{
name: 'GGUF',
extensions: ['gguf'],
},
],
}) })
// If the dialog returns a file path, extract just the file name // If the dialog returns a file path, extract just the file name
const fileName = const fileName =
typeof selectedFile === 'string' typeof selectedFile === 'string'
? selectedFile ? selectedFile.split(/[\\/]/).pop()?.replace(/\s/g, '-')
.split(/[\\/]/)
.pop()
?.replace(/\s/g, '-')
: undefined : undefined
if (selectedFile && fileName) { if (selectedFile && fileName) {
@ -126,7 +117,7 @@ function ProviderDetail() {
const modelExists = provider.models.some( const modelExists = provider.models.some(
(model) => model.name === fileName (model) => model.name === fileName
) )
if (modelExists) { if (modelExists) {
toast.error('Model already exists', { toast.error('Model already exists', {
description: `${fileName} already imported`, description: `${fileName} already imported`,
@ -141,18 +132,15 @@ function ProviderDetail() {
await getProviders().then(setProviders) await getProviders().then(setProviders)
toast.success(t('providers:import'), { toast.success(t('providers:import'), {
id: `import-model-${provider.provider}`, id: `import-model-${provider.provider}`,
description: t( description: t('providers:importModelSuccess', {
'providers:importModelSuccess', provider: fileName,
{ provider: fileName } }),
),
}) })
} catch (error) { } catch (error) {
console.error( console.error(t('providers:importModelError'), error)
t('providers:importModelError'),
error
)
toast.error(t('providers:importModelError'), { toast.error(t('providers:importModelError'), {
description: error instanceof Error ? error.message : 'Unknown error occurred', description:
error instanceof Error ? error.message : 'Unknown error occurred',
}) })
} finally { } finally {
setImportingModel(false) setImportingModel(false)
@ -565,7 +553,9 @@ function ProviderDetail() {
/> />
)} )}
<span className="text-main-view-fg/70"> <span className="text-main-view-fg/70">
{importingModel ? 'Importing...' : t('providers:import')} {importingModel
? 'Importing...'
: t('providers:import')}
</span> </span>
</div> </div>
</Button> </Button>