UNPKG

@letanure/resend-cli

Version:

A command-line interface for Resend email API

32 lines 1.94 kB
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime"; import { useState } from 'react'; import { Form as CreateForm } from './create/Form.js'; import { Form as DeleteForm } from './delete/Form.js'; import { Form as ListForm } from './list/Form.js'; import { Menu, MenuState } from './Menu.js'; import { Form as RetrieveForm } from './retrieve/Form.js'; import { Form as UpdateForm } from './update/Form.js'; export const App = ({ onExit }) => { const [screenState, setScreenState] = useState('menu'); const [lastSelectedContactMenuItem, setLastSelectedContactMenuItem] = useState(); const handleMenuSelect = (menuId) => { setScreenState(menuId); }; return (_jsxs(_Fragment, { children: [screenState === 'menu' && (_jsx(Menu, { onSelect: handleMenuSelect, onExit: () => onExit(), initialSelectedKey: lastSelectedContactMenuItem })), screenState === 'create' && (_jsx(CreateForm, { onExit: () => { setLastSelectedContactMenuItem(MenuState.create); setScreenState('menu'); } })), screenState === 'retrieve' && (_jsx(RetrieveForm, { onExit: () => { setLastSelectedContactMenuItem(MenuState.retrieve); setScreenState('menu'); } })), screenState === 'update' && (_jsx(UpdateForm, { onExit: () => { setLastSelectedContactMenuItem(MenuState.update); setScreenState('menu'); } })), screenState === 'delete' && (_jsx(DeleteForm, { onExit: () => { setLastSelectedContactMenuItem(MenuState.delete); setScreenState('menu'); } })), screenState === 'list' && (_jsx(ListForm, { onExit: () => { setLastSelectedContactMenuItem(MenuState.list); setScreenState('menu'); } }))] })); }; //# sourceMappingURL=App.js.map