"use strict"; const fs = require("fs"); const { parseOsm } = require("../../packages/road-compiler/src/osm"); const trafficSignals = require("../../packages/road-compiler/src/traffic-signals"); function readTrafficSignalFeatures(stopLinePath, intersectionPath, osmPath) { const controls = parseOsm(fs.readFileSync(osmPath, "utf8")).trafficSignalControls; return trafficSignals.buildTrafficSignalFeatures( JSON.parse(fs.readFileSync(stopLinePath, "utf8")), JSON.parse(fs.readFileSync(intersectionPath, "utf8")), controls, ); } function readTrafficSignals(editablePath, osmPath = null) { const collection = JSON.parse(fs.readFileSync(editablePath, "utf8")); if (osmPath) { const controls = parseOsm(fs.readFileSync(osmPath, "utf8")).trafficSignalControls; trafficSignals.validateTrafficSignalSourceReferences(collection, controls); } return trafficSignals.buildTrafficSignalsFromFeatures(collection); } module.exports = { ...trafficSignals, readTrafficSignalFeatures, readTrafficSignals };