2023-10-18 08:32:14 +00:00
|
|
|
// Metrics must be initialized before importing anything else
|
|
|
|
import '@overleaf/metrics/initialize.js'
|
|
|
|
|
2022-12-20 12:11:25 +00:00
|
|
|
import Settings from '@overleaf/settings'
|
|
|
|
import logger from '@overleaf/logger'
|
|
|
|
import { app } from './app/js/server.js'
|
|
|
|
import * as ASpell from './app/js/ASpell.js'
|
|
|
|
|
|
|
|
const { host = 'localhost', port = 3005 } = Settings.internal?.spelling ?? {}
|
|
|
|
|
|
|
|
ASpell.startCacheDump()
|
|
|
|
|
|
|
|
const server = app.listen(port, host, function (error) {
|
|
|
|
if (error) {
|
|
|
|
throw error
|
|
|
|
}
|
|
|
|
logger.info({ host, port }, 'spelling HTTP server starting up')
|
|
|
|
})
|
|
|
|
|
|
|
|
process.on('SIGTERM', () => {
|
|
|
|
ASpell.stopCacheDump()
|
|
|
|
server.close(() => {
|
|
|
|
logger.info({ host, port }, 'spelling HTTP server closed')
|
2022-01-06 10:41:31 +00:00
|
|
|
})
|
2022-12-20 12:11:25 +00:00
|
|
|
})
|