UNPKG

@letanure/resend-cli

Version:

A command-line interface for Resend email API

32 lines 1.92 kB
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime"; import { useState } from 'react'; import { Form as BatchForm } from './batch/Form.js'; import { Form as CancelForm } from './cancel/Form.js'; import { Menu, MenuState } from './Menu.js'; import { Form as RetrieveForm } from './retrieve/Form.js'; import { Form as SendForm } from './send/Form.js'; import { Form as UpdateForm } from './update/Form.js'; export const App = ({ onExit }) => { const [screenState, setScreenState] = useState('menu'); const [lastSelectedEmailMenuItem, setLastSelectedEmailMenuItem] = useState(); const handleMenuSelect = (menuId) => { setScreenState(menuId); }; return (_jsxs(_Fragment, { children: [screenState === 'menu' && (_jsx(Menu, { onSelect: handleMenuSelect, onExit: () => onExit(), initialSelectedKey: lastSelectedEmailMenuItem })), screenState === 'send' && (_jsx(SendForm, { onExit: () => { setLastSelectedEmailMenuItem(MenuState.send); setScreenState('menu'); } })), screenState === 'batch' && (_jsx(BatchForm, { onExit: () => { setLastSelectedEmailMenuItem(MenuState.batch); setScreenState('menu'); } })), screenState === 'retrieve' && (_jsx(RetrieveForm, { onExit: () => { setLastSelectedEmailMenuItem(MenuState.retrieve); setScreenState('menu'); } })), screenState === 'update' && (_jsx(UpdateForm, { onExit: () => { setLastSelectedEmailMenuItem(MenuState.update); setScreenState('menu'); } })), screenState === 'cancel' && (_jsx(CancelForm, { onExit: () => { setLastSelectedEmailMenuItem(MenuState.cancel); setScreenState('menu'); } }))] })); }; //# sourceMappingURL=App.js.map