29 lines
980 B
JavaScript
29 lines
980 B
JavaScript
import 'dotenv/config'
|
|
|
|
import {lookupToken} from "./token.js";
|
|
import {httpServer, io} from "./io.js";
|
|
import {ensureVault, loginAddress} from "./vault.js";
|
|
import {chainInfo, VAULT_INIT_CODE_HASH} from "./misc.js";
|
|
|
|
|
|
// setup socket.io
|
|
|
|
io.on("connection", (socket) => {
|
|
// initially, only anonymous messages are allowed
|
|
socket.on('lookupToken', (chainId, address, callback) => {
|
|
lookupToken(chainId, address).then((result)=>callback(result)).catch(()=>callback(null))
|
|
})
|
|
socket.on('address', (chainId, address) => loginAddress(socket, chainId, address) )
|
|
socket.on('ensureVault', (chainId,owner,num) => ensureVault(socket, chainId, owner, num) )
|
|
socket.join('public')
|
|
socket.emit('welcome', {chainInfo, vaultInitCodeHash:VAULT_INIT_CODE_HASH})
|
|
});
|
|
|
|
io.on("disconnection", (socket)=>{
|
|
socket.leave('public')
|
|
})
|
|
|
|
const port = parseInt(process.env.DEXORDER_PORT) || 3000;
|
|
httpServer.listen(port)
|
|
console.log('Started server on port '+port)
|