diff --git a/web/screens/Settings/Advanced/DataFolder/ModalErrorSetDestGlobal.tsx b/web/screens/Settings/Advanced/DataFolder/ModalErrorSetDestGlobal.tsx
index 3729dc0d8..125cd18bd 100644
--- a/web/screens/Settings/Advanced/DataFolder/ModalErrorSetDestGlobal.tsx
+++ b/web/screens/Settings/Advanced/DataFolder/ModalErrorSetDestGlobal.tsx
@@ -10,13 +10,15 @@ import {
ModalClose,
Button,
} from '@janhq/uikit'
-import { atom, useAtom } from 'jotai'
+import { atom, useAtom, useAtomValue } from 'jotai'
+
+import { errorAtom } from '.'
export const showChangeFolderErrorAtom = atom(false)
const ModalErrorSetDestGlobal = () => {
const [show, setShow] = useAtom(showChangeFolderErrorAtom)
-
+ const error = useAtomValue(errorAtom)
return (
@@ -28,6 +30,7 @@ const ModalErrorSetDestGlobal = () => {
Oops! Something went wrong. Jan data folder remains the same. Please
try again.
+ {error}
setShow(false)}>
diff --git a/web/screens/Settings/Advanced/DataFolder/index.tsx b/web/screens/Settings/Advanced/DataFolder/index.tsx
index e653e4b9b..b7bb88cdd 100644
--- a/web/screens/Settings/Advanced/DataFolder/index.tsx
+++ b/web/screens/Settings/Advanced/DataFolder/index.tsx
@@ -2,7 +2,7 @@ import { Fragment, useCallback, useEffect, useState } from 'react'
import { fs, AppConfiguration } from '@janhq/core'
import { Button, Input } from '@janhq/uikit'
-import { useSetAtom } from 'jotai'
+import { atom, useSetAtom } from 'jotai'
import { PencilIcon, FolderOpenIcon } from 'lucide-react'
import Loader from '@/containers/Loader'
@@ -18,6 +18,8 @@ import ModalErrorSetDestGlobal, {
import ModalSameDirectory, { showSamePathModalAtom } from './ModalSameDirectory'
+export const errorAtom = atom('')
+
const DataFolder = () => {
const [janDataFolderPath, setJanDataFolderPath] = useState('')
const [showLoader, setShowLoader] = useState(false)
@@ -25,6 +27,7 @@ const DataFolder = () => {
const setShowSameDirectory = useSetAtom(showSamePathModalAtom)
const setShowChangeFolderError = useSetAtom(showChangeFolderErrorAtom)
const [destinationPath, setDestinationPath] = useState(undefined)
+ const setError = useSetAtom(errorAtom)
useEffect(() => {
window.core?.api
@@ -65,8 +68,10 @@ const DataFolder = () => {
setShowLoader(false)
}, 1200)
await window.core?.api?.relaunch()
- } catch (e) {
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
+ } catch (e: any) {
console.error(`Error: ${e}`)
+ setError(e.message)
setShowLoader(false)
setShowChangeFolderError(true)
}