import '../lib/bare-globals.js'
import DHT from 'hyperdht'
import crypto from 'hypercore-crypto'
import b4a from 'b4a'
const serverPubKey = crypto.keyPair(crypto.hash(b4a.from('hpp-dht-direct-test-seed-v1'))).publicKey
const dht = new DHT()
const t0 = Date.now()
console.log(JSON.stringify({ role: 'client' }))
const socket = dht.connect(serverPubKey)
socket.on('open', () => { console.log(JSON.stringify({ event: 'CLIENT_CONNECTED', ms: Date.now() - t0 })); try { socket.write(b4a.from('ping')) } catch {} })
socket.on('data', (d) => console.log(JSON.stringify({ event: 'CLIENT_RECV', data: b4a.toString(d) })))
socket.on('error', (e) => console.log(JSON.stringify({ event: 'CLIENT_ERROR', msg: e.message })))
setTimeout(() => { console.log(JSON.stringify({ event: 'CLIENT_DONE' })); process.exit(0) }, 38000)