'use strict' const slugg = require('slugg') // todo: are p.number and p.line ever different? // todo: operator from p.oprX? const parseLine = (profile, p) => { if (!p) return null // todo: handle this upstream const res = { type: 'line', id: null, name: p.line || p.name, public: true } // We don't get a proper line id from the API, so we use the trip nr here. // todo: find a better way if (p.prodCtx && p.prodCtx.num) res.id = p.prodCtx.num // This is terrible, but FPTF demands an ID. Let's pray for VBB to expose an ID. else if (p.line) res.id = slugg(p.line.trim()) else if (p.name) res.id = slugg(p.name.trim()) if (p.cls) res.class = p.cls if (p.prodCtx && p.prodCtx.catCode !== undefined) { res.productCode = +p.prodCtx.catCode } // todo: parse mode, remove from profiles return res } module.exports = parseLine