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 "./chain.js"; import {subPools, unsubPools} from "./pool.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('subPools', (chainId, addresses) => subPools(socket, chainId, addresses) ) socket.on('unsubPools', (chainId, addresses) => unsubPools(socket, chainId, addresses) ) 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)