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) }