Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 13 additions & 8 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,16 @@
"name": "mapmel",
"version": "1.0.0",
"description": "",
"main": "index.js",
"main": "dist/index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"start": "node index.js",
"dev": "nodemon index.js",
"dbadd": "node data/add_to_db.js",
"dbaddprop": "node data/add_edge_weight.js",
"dbaddpoi": "node data/add_poi.js",
"dbaddlength": "node data/add_edge_length.js"
"build": "tsc",
"start": "node dist/index.js",
"dev": "ts-node src/index.ts",
"dbadd": "ts-node src/data/add_to_db.ts",
"dbaddprop": "ts-node src/data/add_edge_weight.ts",
"dbaddpoi": "ts-node src/data/add_poi.ts",
"dbaddlength": "ts-node src/data/add_edge_length.ts"
},
"keywords": [],
"author": "",
Expand All @@ -28,6 +29,10 @@
"@eslint/js": "^9.18.0",
"eslint": "^9.18.0",
"globals": "^15.14.0",
"nodemon": "^3.1.7"
"nodemon": "^3.1.7",
"typescript": "^5.4.0",
"ts-node": "^10.9.2",
"@types/node": "^20.11.17",
"@types/express": "^4.17.21"
}
}
7 changes: 0 additions & 7 deletions routers/page_loading.js

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
const get_closest_node = require("../../../functions/editor/get_closest_node.js")
const get_closest_node = require("../../../functions/editor/get_closest_node")

module.exports = async (req, res) => {
const { lat, lng } = req.query
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
const { run_query } = require("../../functions/neo4j_driver.js")
const { run_query } = require("../../functions/neo4j_driver")

module.exports = async (req, res) => {
let nodes = await run_query(`
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
const { run_query } = require("../../functions/neo4j_driver.js")
const { get_lat_lon_from_tile_and_position } = require("../../functions/tile_converter.js")
const { run_query } = require("../../functions/neo4j_driver")
const { get_lat_lon_from_tile_and_position } = require("../../functions/tile_converter")

const MAX_CACHE_SIZE = 500

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
const { run_query } = require("../../functions/neo4j_driver.js")
const { run_query } = require("../../functions/neo4j_driver")

module.exports = async (req, res) => {
// get the result id from the request
Expand Down
6 changes: 3 additions & 3 deletions controllers/api/route.js → src/controllers/api/route.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
const { run_query } = require("../../functions/neo4j_driver.js")
const { find_closest_edge } = require("../../functions/get_closest_road_edge.js")
const driving_route = require("../../functions/routing/driving.js")
const { run_query } = require("../../functions/neo4j_driver")
const { find_closest_edge } = require("../../functions/get_closest_road_edge")
const driving_route = require("../../functions/routing/driving")

async function get_closest_road_edge(lat, lng) {
// get a list of the 100 nearest nodes to the given coordinate
Expand Down
4 changes: 2 additions & 2 deletions controllers/api/search.js → src/controllers/api/search.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
const { run_query } = require("../../functions/neo4j_driver.js")
const fuse = require("fuse.js")
const { run_query } = require("../../functions/neo4j_driver")
const fuse = require("fuse")

const replacements = {
rd: "road",
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
let { run_query } = require("../neo4j_driver.js")
let { run_query } = require("../neo4j_driver")

module.exports = async (lat, lng) => {
/**
Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
let { run_query } = require("../neo4j_driver.js")
let PriorityQueue = require("./helpers/priority_queue.js")
let { run_query } = require("../neo4j_driver")
let PriorityQueue = require("./helpers/priority_queue")
let {
SHORT_ROUTE_THRESHOLD_METERS,
LONG_ROUTE_THRESHOLD_METERS,
SMALL_RADIUS_METERS,
MEDIUM_RADIUS_METERS,
LARGE_RADIUS_METERS,
MAJOR_HIGHWAYS,
} = require("./helpers/driving/defaults.js")
let distance_heuristic = require("./helpers/driving/distance_heuristic.js")
let time_heuristic = require("./helpers/time_heuristic.js")
let get_neighbours = require("./helpers/get_neighbours.js")
const Benchmarks = require("./helpers/benchmarks.js")
const { start_session, close_session } = require("./routing_neo4j_driver.js")
} = require("./helpers/driving/defaults")
let distance_heuristic = require("./helpers/driving/distance_heuristic")
let time_heuristic = require("./helpers/time_heuristic")
let get_neighbours = require("./helpers/get_neighbours")
const Benchmarks = require("./helpers/benchmarks")
const { start_session, close_session } = require("./routing_neo4j_driver")

// --- Node Position Cache ---
let node_positions = {}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
let { run_query } = require("../../neo4j_driver.js")
let distance_heuristic = require("./driving/distance_heuristic.js")
let kmh_to_mps = require("./driving/kmh_to_mps.js")
let { DEFAULT_SPEEDS_KMH } = require("./driving/defaults.js")
const { run_bached_query } = require("../routing_neo4j_driver.js")
let { run_query } = require("../../neo4j_driver")
let distance_heuristic = require("./driving/distance_heuristic")
let kmh_to_mps = require("./driving/kmh_to_mps")
let { DEFAULT_SPEEDS_KMH } = require("./driving/defaults")
const { run_bached_query } = require("../routing_neo4j_driver")

module.exports = async function get_neighbours(node_positions, node_id, benchmarks, session) {
const overallStart = performance.now()
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
let { MAX_ASSUMED_SPEED_KMH } = require("./driving/defaults.js")
let distance_heuristic = require("./driving/distance_heuristic.js")
let kmh_to_mps = require("./driving/kmh_to_mps.js")
let { MAX_ASSUMED_SPEED_KMH } = require("./driving/defaults")
let distance_heuristic = require("./driving/distance_heuristic")
let kmh_to_mps = require("./driving/kmh_to_mps")

module.exports = function time_heuristic(pos1, pos2, benchmarks) {
const start = performance.now()
Expand Down
File renamed without changes.
12 changes: 6 additions & 6 deletions index.js → src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,26 +5,26 @@ require("dotenv").config()
const express = require("express")

// config.json file
const config = require("./config.json")
const config = require("../config.json")

// set up express app
const app = express()
app.set("view engine", "ejs")

// set up middleware
app.use(require("./middlewares/logging.js")) // logging
app.use(require("./middlewares/logging")) // logging
app.use(express.static("public"))
app.use(express.json())

// routers -> main
app.use(require("./routers/page_loading.js"))
app.use(require("./routers/three_routes.js")) // three.js stuff
app.use(require("./routers/page_loading"))
app.use(require("./routers/three_routes")) // three.js stuff

// routers -> api
app.use(require("./routers/api.js"))
app.use(require("./routers/api"))

// neo4j stuff idk chatgpt told me to add it
const { close_driver } = require("./functions/neo4j_driver.js")
const { close_driver } = require("./functions/neo4j_driver")

function on_signal() {
console.log("Shutting down gracefully")
Expand Down
2 changes: 1 addition & 1 deletion middlewares/logging.js → src/middlewares/logging.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
const color = require("../functions/color.js")
const color = require("../functions/color")

module.exports = async (req, res, next) => {
const start_time = process.hrtime()
Expand Down
13 changes: 8 additions & 5 deletions routers/api.js → src/routers/api.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,16 @@ const express = require("express")
const router = express.Router()

// Public frontend UI API
router.get("/api/get_tile/:z/:x/:y", require("../controllers/api/get_tile.js"))
router.get("/api/search", require("../controllers/api/search.js"))
router.get("/api/result/:id", require("../controllers/api/result.js"))
router.get("/api/get_tile/:z/:x/:y", require("../controllers/api/get_tile"))
router.get("/api/search", require("../controllers/api/search"))
router.get("/api/result/:id", require("../controllers/api/result"))

router.get("/api/route", require("../controllers/api/route.js"))
router.get("/api/route", require("../controllers/api/route"))

// Private (Editor) UI API
router.get("/api/editor/get_closest_road_edge", require("../controllers/api/editor_actions/get_node.js"))
router.get(
"/api/editor/get_closest_road_edge",
require("../controllers/api/editor_actions/get_node")
)

module.exports = router
7 changes: 7 additions & 0 deletions src/routers/page_loading.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
const express = require("express")
const router = express.Router()

router.get("/", require("../controllers/pages/index"))
router.get("/editor", require("../controllers/pages/editor"))

module.exports = router
File renamed without changes.
14 changes: 14 additions & 0 deletions tsconfig.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
{
"compilerOptions": {
"target": "es2016",
"module": "commonjs",
"rootDir": "src",
"outDir": "dist",
"esModuleInterop": true,
"resolveJsonModule": true,
"forceConsistentCasingInFileNames": true,
"strict": false,
"skipLibCheck": true
},
"include": ["src/**/*"]
}