diff --git a/app.js b/app.js index fb9f8d2..7923d8c 100644 --- a/app.js +++ b/app.js @@ -1,2 +1,4 @@ -import('./websocket') -import('./express') +import './websocket.js' +import './express.js' + + diff --git a/express.js b/express.js index ad92dd5..16815c1 100644 --- a/express.js +++ b/express.js @@ -1,19 +1,24 @@ +import express from "express"; +import path from "path"; +import pingRouter from "./routes/ping.js"; +import indexRouter from "./routes/index.js"; +import sassMiddleware from "node-sass-middleware"; +import logger from "morgan"; +import cookieParser from "cookie-parser"; +import * as url from 'url'; -let express = require('express'); -let path = require('path'); -let cookieParser = require('cookie-parser'); -let logger = require('morgan'); -let sassMiddleware = require('node-sass-middleware'); - -let indexRouter = require('./routes/index'); -let pingRouter = require('./routes/ping'); +const __filename = url.fileURLToPath(import.meta.url); +const __dirname = url.fileURLToPath(new URL('.', import.meta.url)); let app = express(); -let port = 3003; +let port = process.env.PORT || '3003' +//let port = normalizePort(process.env.PORT || '3003'); +app.set('port', port); + let log = false; -if(process.env.PORT) port = process.env.PORT; +// if(process.env.PORT) port = process.env.PORT; if(process.env.LOG) log = process.env.LOG; console.log("Running on port: " + port); @@ -35,4 +40,89 @@ app.use('/ping', pingRouter); app.listen(port); -module.exports = app; \ No newline at end of file +// +// /** +// * Module dependencies. +// */ +// +// // let app = require('../app'); +// let debug = require('debug')('avusddatacollection:server'); +// let http = require('http'); +// +// +// /** +// * Create HTTP server. +// */ +// +// let server = http.createServer(app); +// +// /** +// * Listen on provided port, on all network interfaces. +// */ +// +// server.listen(port); +// server.on('error', onError); +// server.on('listening', onListening); +// +// /** +// * Normalize a port into a number, string, or false. +// */ +// +// function normalizePort(val) { +// let port = parseInt(val, 10); +// +// if (isNaN(port)) { +// // named pipe +// return val; +// } +// +// if (port >= 0) { +// // port number +// return port; +// } +// +// return false; +// } +// +// /** +// * Event listener for HTTP server "error" event. +// */ +// +// function onError(error) { +// if (error.syscall !== 'listen') { +// throw error; +// } +// +// let bind = typeof port === 'string' +// ? 'Pipe ' + port +// : 'Port ' + port; +// +// // handle specific listen errors with friendly messages +// switch (error.code) { +// case 'EACCES': +// console.error(bind + ' requires elevated privileges'); +// process.exit(1); +// break; +// case 'EADDRINUSE': +// console.error(bind + ' is already in use'); +// process.exit(1); +// break; +// default: +// throw error; +// } +// } +// +// /** +// * Event listener for HTTP server "listening" event. +// */ +// +// function onListening() { +// let addr = server.address(); +// let bind = typeof addr === 'string' +// ? 'pipe ' + addr +// : 'port ' + addr.port; +// debug('Listening on ' + bind); +// } + +//module.exports = app; +export default app \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index e10173c..c2ad66c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,6 +8,7 @@ "name": "avusddatacollection", "version": "0.0.0", "dependencies": { + "@babel/runtime": "^7.16.7", "cookie-parser": "~1.4.4", "debug": "~2.6.9", "express": "~4.16.1", @@ -21,6 +22,17 @@ "bestzip": "^2.1.7" } }, + "node_modules/@babel/runtime": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.20.7.tgz", + "integrity": "sha512-UF0tvkUtxwAgZ5W/KrkHf0Rn0fdnLDU9ScxBrEVNUprE/MzirjK4MJUX1/BVDv00Sv8cljtukVK1aky++X1SjQ==", + "dependencies": { + "regenerator-runtime": "^0.13.11" + }, + "engines": { + "node": ">=6.9.0" + } + }, "node_modules/@types/node": { "version": "17.0.12", "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.12.tgz", @@ -2247,6 +2259,11 @@ "node": ">=0.10.0" } }, + "node_modules/regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" + }, "node_modules/repeating": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", @@ -3064,6 +3081,14 @@ } }, "dependencies": { + "@babel/runtime": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.20.7.tgz", + "integrity": "sha512-UF0tvkUtxwAgZ5W/KrkHf0Rn0fdnLDU9ScxBrEVNUprE/MzirjK4MJUX1/BVDv00Sv8cljtukVK1aky++X1SjQ==", + "requires": { + "regenerator-runtime": "^0.13.11" + } + }, "@types/node": { "version": "17.0.12", "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.12.tgz", @@ -4803,6 +4828,11 @@ "strip-indent": "^1.0.1" } }, + "regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" + }, "repeating": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", diff --git a/package.json b/package.json index 8e1265a..6c853eb 100644 --- a/package.json +++ b/package.json @@ -2,11 +2,13 @@ "name": "avusddatacollection", "version": "0.0.0", "private": true, + "type": "module", "scripts": { "start": "node ./bin/www", "build": "bestzip ../TempestDataCollection.zip app.js bin public routes package*.json" }, "dependencies": { + "@babel/runtime": "^7.16.7", "cookie-parser": "~1.4.4", "debug": "~2.6.9", "express": "~4.16.1", diff --git a/routes/index.js b/routes/index.js index 172f62e..8fa1860 100644 --- a/routes/index.js +++ b/routes/index.js @@ -1,5 +1,6 @@ -var express = require('express'); -var router = express.Router(); +import express from "express"; + +const router = express.Router(); /* GET home page. */ router.get('/', function(req, res, next) { @@ -7,4 +8,4 @@ router.get('/', function(req, res, next) { res.status(400); }); -module.exports = router; +export default router; diff --git a/routes/ping.js b/routes/ping.js index ab40813..ae764b9 100644 --- a/routes/ping.js +++ b/routes/ping.js @@ -1,7 +1,9 @@ -let _ = require("underscore"); -let express = require('express'); +import _ from "underscore"; +import express from "express"; +import {MongoClient} from "mongodb"; + let router = express.Router(); -const {MongoClient} = require("mongodb"); + let localAddresses = process.env.LOCAL_ADDRESSES; //eg: "10.18.,10.17." // Create an array of local address beginnings. This is matched against the client addresses to determine if they are local. If not provided then all addresses are considered local. if(localAddresses) localAddresses = localAddresses.split(','); @@ -116,4 +118,4 @@ router.get('/', function(req, res, next) { res.end('Pong'); }); -module.exports = router; +export default router;