import { getNestedValue } from '@/utils/object'
import { getPolylineFromLinestring } from '@/utils/map.js'
import { datetimeToTimestamp } from '@/utils/dates.js'
/**
* Used by Diagnostic module
* @param {*} item
* @param {*} options
* @returns
*/
export default function normalizeTripHistoryStepItem(item, options = {}) {
return {
startTimestamp: datetimeToTimestamp(item.dh_trajet_deb),
endTimestamp: datetimeToTimestamp(item.dh_trajet_fin),
polylines: convertLinestringToPolylines(
getNestedValue(item, 'linestring'),
[]
),
}
}
/**
* APIV2: linestring can be String or Array of strings (Zone interdiction might split trip history sometimes)
*/
function convertLinestringToPolylines(linestringValue) {
let polylines = []
if (linestringValue instanceof Array) {
return linestringValue.map(getPolylineFromLinestring)
} else {
return [getPolylineFromLinestring(linestringValue)]
}
}
Source