ServerStats.tsx 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. import React from 'react';
  2. import { inject, observer } from 'mobx-react';
  3. import PageHeader from 'app/core/components/PageHeader/PageHeader';
  4. import IContainerProps from 'app/containers/IContainerProps';
  5. @inject('nav', 'serverStats')
  6. @observer
  7. export class ServerStats extends React.Component<IContainerProps, any> {
  8. constructor(props) {
  9. super(props);
  10. const { nav, serverStats } = this.props;
  11. nav.load('cfg', 'admin', 'server-stats');
  12. serverStats.load();
  13. }
  14. render() {
  15. const { nav, serverStats } = this.props;
  16. return (
  17. <div>
  18. <PageHeader model={nav as any} />
  19. <div className="page-container page-body">
  20. <table className="filter-table form-inline">
  21. <thead>
  22. <tr>
  23. <th>Name</th>
  24. <th>Value</th>
  25. </tr>
  26. </thead>
  27. <tbody>{serverStats.stats.map(StatItem)}</tbody>
  28. </table>
  29. </div>
  30. </div>
  31. );
  32. }
  33. }
  34. function StatItem(stat) {
  35. return (
  36. <tr key={stat.name}>
  37. <td>{stat.name}</td>
  38. <td>{stat.value}</td>
  39. </tr>
  40. );
  41. }