2022-01-07 17:05:39 +11:00
|
|
|
import { Waku } from 'js-waku';
|
|
|
|
|
import * as React from 'react';
|
2022-01-07 16:55:27 +11:00
|
|
|
|
|
|
|
|
function App() {
|
2022-01-07 17:05:39 +11:00
|
|
|
const [waku, setWaku] = React.useState(undefined);
|
|
|
|
|
const [wakuStatus, setWakuStatus] = React.useState('None');
|
|
|
|
|
|
|
|
|
|
React.useEffect(() => {
|
|
|
|
|
if (!!waku) return;
|
|
|
|
|
if (wakuStatus !== 'None') return;
|
|
|
|
|
|
|
|
|
|
setWakuStatus('Starting');
|
|
|
|
|
|
|
|
|
|
Waku.create({ bootstrap: true }).then((waku) => {
|
|
|
|
|
setWaku(waku);
|
2022-01-07 17:06:39 +11:00
|
|
|
setWakuStatus('Connecting');
|
|
|
|
|
waku.waitForConnectedPeer().then(() => {
|
|
|
|
|
setWakuStatus('Ready');
|
|
|
|
|
});
|
2022-01-07 17:05:39 +11:00
|
|
|
});
|
|
|
|
|
}, [waku, wakuStatus]);
|
|
|
|
|
|
2022-01-07 16:55:27 +11:00
|
|
|
return (
|
2022-01-07 17:05:39 +11:00
|
|
|
<div className='App'>
|
|
|
|
|
<header className='App-header'>
|
|
|
|
|
<p>Waku node's status: {wakuStatus}</p>
|
2022-01-07 16:55:27 +11:00
|
|
|
</header>
|
|
|
|
|
</div>
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
export default App;
|