2020-03-14 00:02:20 +08:00
|
|
|
import React from "react";
|
|
|
|
import { useNetwork, NetworkStatus } from "../providers/network";
|
|
|
|
|
|
|
|
function NetworkStatusButton() {
|
|
|
|
const { status, url } = useNetwork();
|
|
|
|
|
|
|
|
switch (status) {
|
|
|
|
case NetworkStatus.Connected:
|
2020-03-17 12:04:04 +08:00
|
|
|
return <span className="btn btn-white lift">{url}</span>;
|
2020-03-14 00:02:20 +08:00
|
|
|
|
|
|
|
case NetworkStatus.Connecting:
|
|
|
|
return (
|
2020-03-17 12:04:04 +08:00
|
|
|
<span className="btn btn-warning lift">
|
2020-03-14 00:02:20 +08:00
|
|
|
{"Connecting "}
|
|
|
|
<span
|
|
|
|
className="spinner-grow spinner-grow-sm text-dark"
|
|
|
|
role="status"
|
|
|
|
aria-hidden="true"
|
|
|
|
></span>
|
2020-03-17 12:04:04 +08:00
|
|
|
</span>
|
2020-03-14 00:02:20 +08:00
|
|
|
);
|
|
|
|
|
|
|
|
case NetworkStatus.Failure:
|
2020-03-17 12:04:04 +08:00
|
|
|
return <span className="btn btn-danger lift">Disconnected</span>;
|
2020-03-14 00:02:20 +08:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
export default NetworkStatusButton;
|