Add translation utility for formatting StaffLDB(Station) Data

Signed-off-by: Fred Boniface <fred@fjla.uk>
This commit is contained in:
Fred Boniface 2023-08-01 13:40:04 +01:00
parent d7d4768663
commit edb33153ce
1 changed files with 43 additions and 0 deletions

View File

@ -0,0 +1,43 @@
export type { StaffLdb, NrccMessage, TrainServices,
ServiceLocation } from '@owlboard/ts-types'
/// I do not yet have a type defined for any of the input object
export function transform(input: Object): StaffLdb {
let output: StaffLdb
return output
}
function transformNrcc(input: any): NrccMessage[] {
let output: NrccMessage[] = []
if (!Array.isArray(input?.message)) {
input.message = [input.message]
}
for (const item of input?.message) {
let message = {
severity: item?.severity,
xhtmlMessage: item?.xhtmlMessage
}
output.push(message)
}
return output
}
function transformTrainServices(input: Object): TrainServices[] {
let output: TrainServices[]
return output
}
function transformLocation(input: any): ServiceLocation {
let output: ServiceLocation[] = []
if (!Array.isArray(input)) {
input = [input]
}
for (const item of input) {
const location: ServiceLocation = {
tiploc: item?.tiploc,
name: item?.locationName
}
output.push(location)
}
return output
}