import React, { useState } from 'react'; import { IonHeader, IonToolbar, IonTitle, IonContent, IonPage, IonButtons, IonMenuButton, IonList, IonItem, IonAlert, } from '@ionic/react'; import './Account.scss'; import { setUsername } from '../data/user/user.actions'; import { connect } from '../data/connect'; import { RouteComponentProps } from 'react-router'; interface OwnProps extends RouteComponentProps {} interface StateProps { username?: string; } interface DispatchProps { setUsername: typeof setUsername; } interface AccountProps extends OwnProps, StateProps, DispatchProps {} const Account: React.FC = ({ setUsername, username }) => { const [showAlert, setShowAlert] = useState(false); const clicked = (text: string) => { console.log(`Clicked ${text}`); }; return ( Account {username && (
avatar

{username}

clicked('Update Picture')}>Update Picture setShowAlert(true)}>Change Username clicked('Change Password')}>Change Password Support Logout
)}
{ setUsername(data.username); }, }, ]} inputs={[ { type: 'text', name: 'username', value: username, placeholder: 'username', }, ]} onDidDismiss={() => setShowAlert(false)} />
); }; export default connect({ mapStateToProps: (state) => ({ username: state.user.username, }), mapDispatchToProps: { setUsername, }, component: Account, });