import { action, computed, observable } from 'mobx'; import { observer } from 'mobx-react'; import * as React from 'react'; import { MainViewModal } from '../views/MainViewModal'; import './SharingManager.scss'; @observer export class ServerStats extends React.Component<{}> { public static Instance: ServerStats; @observable private isOpen = false; // whether the SharingManager modal is open or not // private get linkVisible() { // return this.targetDoc ? this.targetDoc["acl-" + PublicKey] !== SharingPermissions.None : false; // } @action public open = async () => { /** * Populates the list of users. */ fetch('/stats').then((res: Response) => res.text().then(action(stats => (this._stats = JSON.parse(stats))))); this.isOpen = true; }; public close = action(() => { this.isOpen = false; }); constructor(props: {}) { super(props); ServerStats.Instance = this; } @observable _stats: { [key: string]: any } | undefined; /** * @returns the main interface of the SharingManager. */ @computed get sharingInterface() { return (
Active users:{this._stats?.socketMap.length} {this._stats?.socketMap.map((user: any) => (

{user.username}

))}
); } render() { return ; } }