import { useEffect, useState } from "react"; import { shortcutService } from "../services"; import { useAppSelector } from "../stores"; import useLoading from "../hooks/useLoading"; import Icon from "../components/Icon"; import Dropdown from "../components/common/Dropdown"; import ShortcutListView from "../components/ShortcutListView"; import CreateShortcutDialog from "../components/CreateShortcutDialog"; interface State { showCreateShortcutDialog: boolean; } const Home: React.FC = () => { const loadingState = useLoading(); const { shortcutList } = useAppSelector((state) => state.shortcut); const [state, setState] = useState({ showCreateShortcutDialog: false, }); useEffect(() => { Promise.all([shortcutService.getMyAllShortcuts()]).finally(() => { loadingState.setFinish(); }); }, []); const setShowCreateShortcutDialog = (show: boolean) => { setState({ ...state, showCreateShortcutDialog: show, }); }; return ( <>
Shortcuts
Add new... } actions={ <> } actionsClassName="!w-32" />
{loadingState.isLoading ? (
loading
) : ( )}
{state.showCreateShortcutDialog && ( setShowCreateShortcutDialog(false)} onConfirm={() => setShowCreateShortcutDialog(false)} /> )} ); }; export default Home;