Skip to content

Commit

Permalink
Logging diagram port on init
Browse files Browse the repository at this point in the history
  • Loading branch information
PalumboN committed Nov 7, 2023
1 parent db29053 commit 9a57cf8
Showing 1 changed file with 10 additions and 6 deletions.
16 changes: 10 additions & 6 deletions src/commands/repl.ts
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,10 @@ export default async function (autoImportPath: string | undefined, options: Opti
logger.info(`Initializing Wollok REPL ${autoImportPath ? `for file ${valueDescription(autoImportPath)} ` : ''}on ${valueDescription(options.project)}`)

let interpreter = await initializeInterpreter(autoImportPath, options)
const io: Server | undefined = options.noDiagram ? undefined : await initializeClient(options)
const _ = options.noDiagram ? undefined : await initializeClient(options)

const io = _?.io
const server = _?.server

const commandHandler = defineCommands(autoImportPath, options, () => {
io?.emit('updateDiagram', getDataDiagram(interpreter))
Expand Down Expand Up @@ -67,10 +70,11 @@ export default async function (autoImportPath: string | undefined, options: Opti
repl.prompt()
})

io?.on('connection', _socket => {
server?.addListener('listening', () => {
logger.info(successDescription('Dynamic diagram available at: ' + bold(`http://localhost:${options.port}`)))
repl.prompt()
})

io?.on('connection', socket => {
socket.emit('initDiagram', options)
socket.emit('updateDiagram', getDataDiagram(interpreter))
Expand Down Expand Up @@ -192,9 +196,9 @@ export function interprete(interpreter: Interpreter, line: string): string {
} catch (error: any) {
return (
error.type === 'ParsimmonError' ? failureDescription(`Syntax error:\n${error.message.split('\n').filter(notEmpty).slice(1).join('\n')}`) :
error instanceof WollokException ? failureDescription('Evaluation Error!', error) :
error instanceof ParseError ? failureDescription(`Syntax Error at offset ${error.sourceMap.start.offset}: ${line.slice(error.sourceMap.start.offset, error.sourceMap.end.offset)}`) :
failureDescription('Uh-oh... Unexpected TypeScript Error!', error)
error instanceof WollokException ? failureDescription('Evaluation Error!', error) :
error instanceof ParseError ? failureDescription(`Syntax Error at offset ${error.sourceMap.start.offset}: ${line.slice(error.sourceMap.start.offset, error.sourceMap.end.offset)}`) :
failureDescription('Uh-oh... Unexpected TypeScript Error!', error)
)
}
}
Expand Down Expand Up @@ -238,7 +242,7 @@ async function initializeClient(options: Options) {
express.static(publicPath('diagram'), { maxAge: '1d' }),
)
server.listen(parseInt(options.port), 'localhost')
return io
return { server, io }
}

function newImport(importNode: Import, environment: Environment) {
Expand Down

0 comments on commit 9a57cf8

Please sign in to comment.