diff --git a/electron/utils/migration.ts b/electron/utils/migration.ts index 7295fa15d..80851f9de 100644 --- a/electron/utils/migration.ts +++ b/electron/utils/migration.ts @@ -61,6 +61,9 @@ async function checkAndMigrateTheme( ) if (existingTheme) { const desTheme = join(janDataThemesFolder, existingTheme) + if (!lstatSync(desTheme).isDirectory()) { + return + } console.debug('Updating theme', existingTheme) rmdirSync(desTheme, { recursive: true }) cpSync(sourceThemePath, join(janDataThemesFolder, sourceThemeName), { diff --git a/web/hooks/useImportModel.ts b/web/hooks/useImportModel.ts index 093385f0d..a2b1f09cb 100644 --- a/web/hooks/useImportModel.ts +++ b/web/hooks/useImportModel.ts @@ -5,11 +5,11 @@ import { ImportingModel, LocalImportModelEvent, Model, - ModelEvent, ModelExtension, OptionType, events, fs, + baseName, } from '@janhq/core' import { atom, useSetAtom } from 'jotai' @@ -61,8 +61,8 @@ const useImportModel = () => { const importModels = useCallback( (models: ImportingModel[], optionType: OptionType) => { - models.map((model) => { - const modelId = model.modelId ?? model.path.split('/').pop() + models.map(async (model) => { + const modelId = model.modelId ?? (await baseName(model.path)) if (modelId) { addDownloadingModel(modelId) extensionManager diff --git a/web/package.json b/web/package.json index af3bce5d1..d3ee82a33 100644 --- a/web/package.json +++ b/web/package.json @@ -38,7 +38,7 @@ "react": "18.2.0", "react-circular-progressbar": "^2.1.0", "react-dom": "18.2.0", - "react-dropzone": "^14.2.3", + "react-dropzone": "14.2.3", "react-hook-form": "^7.47.0", "react-hot-toast": "^2.4.1", "react-icons": "^4.12.0", diff --git a/web/screens/Settings/Advanced/index.tsx b/web/screens/Settings/Advanced/index.tsx index 50e2a72a6..0b1438c47 100644 --- a/web/screens/Settings/Advanced/index.tsx +++ b/web/screens/Settings/Advanced/index.tsx @@ -306,7 +306,8 @@ const Advanced = () => { }) } // Stop any running model to apply the changes - if (e.target.checked !== gpuEnabled) stopModel() + if (e.target.checked !== gpuEnabled) + stopModel().then(() => window.core?.api?.relaunch()) }} /> }