UNPKG

@state-less/leap-frontend

Version:

A collection of open source fullstack services powered by React Server

20 lines (19 loc) 1.07 kB
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime"; import { useComponent } from '@state-less/react-client'; import { Alert } from '@mui/material'; import { useState, useEffect } from 'react'; export const Server = ({ ssr }) => { const [props, { loading, error }] = useComponent('server', { suspend: true, ssr, }); const [count, setCount] = useState(0); useEffect(() => { setTimeout(setCount, 1000, (count + 1) % 2); }); const dur = Date.now() - props?.uptime; const dt = new Date(dur).toUTCString().split(' ').at(-2); const days = Math.floor(dur / (1000 * 60 * 60 * 24)); console.log('Error connecting to server', props, error); return (_jsxs("div", { children: [loading && _jsx(Alert, { severity: "info", children: "Loading..." }), error && _jsx(Alert, { severity: "error", children: "Server is down..." }), !error && !loading && (_jsxs(Alert, { severity: "success", children: ["Server running react-server v", props?.version, " for ", days, ":", dt, " on", ' ', props?.platform] }))] })); };