import React, { useCallback, useState } from 'react'; import { useDispatch, useSelector } from 'react-redux'; import Alert from 'Components/Alert'; import FileBrowserModal from 'Components/FileBrowser/FileBrowserModal'; import Icon from 'Components/Icon'; import Button from 'Components/Link/Button'; import { icons, kinds, sizes } from 'Helpers/Props'; import { addRootFolder } from 'Store/Actions/rootFolderActions'; import createRootFoldersSelector from 'Store/Selectors/createRootFoldersSelector'; import translate from 'Utilities/String/translate'; import styles from './AddRootFolder.css'; function AddRootFolder() { const { isSaving, saveError } = useSelector(createRootFoldersSelector()); const dispatch = useDispatch(); const [isAddNewRootFolderModalOpen, setIsAddNewRootFolderModalOpen] = useState(false); const onAddNewRootFolderPress = useCallback(() => { setIsAddNewRootFolderModalOpen(true); }, [setIsAddNewRootFolderModalOpen]); const onNewRootFolderSelect = useCallback( ({ value }: { value: string }) => { dispatch(addRootFolder({ path: value })); }, [dispatch] ); const onAddRootFolderModalClose = useCallback(() => { setIsAddNewRootFolderModalOpen(false); }, [setIsAddNewRootFolderModalOpen]); return ( <> {!isSaving && saveError ? ( {translate('AddRootFolderError')} ) : null}
); } export default AddRootFolder;