"use strict"; const fs = require("fs"); const { osm: { parseOsm }, trafficSignals } = require("@osm-asset/road-compiler"); 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 };