53 lines
1.3 KiB
TypeScript
Raw Normal View History

2021-07-20 14:00:26 +03:00
import React, { useEffect, useState } from "react";
import logo from "./logo.svg";
import "./App.scss";
import { Fluence } from "@fluencelabs/fluence";
2021-07-20 14:00:26 +03:00
import { krasnodar } from "@fluencelabs/fluence-network-environment";
import { getRelayTime } from "./_aqua/getting-started";
const relayNode = krasnodar[0];
function App() {
const [relayTime, setRelayTime] = useState<Date | null>(null);
2021-07-20 14:00:26 +03:00
useEffect(() => {
Fluence.start({ connectTo: relayNode })
2021-07-20 14:00:26 +03:00
.catch((err) => console.log("Client initialization failed", err));
}, []);
2021-07-20 14:00:26 +03:00
const onGetRelayTimeBtnClick = async () => {
if (!Fluence.getStatus().isConnected) {
2021-07-20 14:00:26 +03:00
return;
}
const time = await getRelayTime(relayNode.peerId);
2021-07-20 14:00:26 +03:00
setRelayTime(new Date(time));
};
return (
<div className="App">
<header>
<img src={logo} className="logo" alt="logo" />
</header>
<div className="content">
<h1>Status: {Fluence.getStatus().isConnected ? "Connected" : "Disconnected"}</h1>
<button className="btn" onClick={onGetRelayTimeBtnClick}>
2021-07-20 14:00:26 +03:00
Get relay time
</button>
{relayTime && (
<>
<h2>Relay time:</h2>
<div>{relayTime?.toLocaleString() || ""}</div>
</>
)}
</div>
</div>
);
}
export default App;