import React, { PureComponent } from 'react'; import { UserDTO, UserSession } from 'app/types'; import { LoadingPlaceholder, Button, Icon } from '@grafana/ui'; export interface Props { user: UserDTO; sessions: UserSession[]; isLoading: boolean; loadSessions: () => void; revokeUserSession: (tokenId: number) => void; } export class UserSessions extends PureComponent { componentDidMount() { this.props.loadSessions(); } render() { const { isLoading, sessions, revokeUserSession } = this.props; if (isLoading) { return ; } return ( <> {sessions.length > 0 && ( <>

Sessions

{sessions.map((session: UserSession, index) => ( {session.isActive ? : } ))}
Last seen Logged on IP address Browser & OS
Now{session.seenAt}{session.createdAt} {session.clientIp} {session.browser} on {session.os} {session.osVersion}
)} ); } } export default UserSessions;