import React, { PureComponent } from 'react'; import { UserSession } from 'app/types'; interface Props { sessions: UserSession[]; onSessionRevoke: (id: number) => void; onAllSessionsRevoke: () => void; } export class UserSessions extends PureComponent { handleSessionRevoke = (id: number) => { return () => { this.props.onSessionRevoke(id); }; }; handleAllSessionsRevoke = () => { this.props.onAllSessionsRevoke(); }; render() { const { sessions } = this.props; return ( <>

Sessions

{sessions && sessions.map((session, index) => ( ))}
Last seen Logged on IP address Browser & OS
{session.isActive ? 'Now' : session.seenAt} {session.createdAt} {session.clientIp} {`${session.browser} on ${session.os} ${session.osVersion}`}
{sessions.length > 0 && ( )}
); } }