db-vendo-client/lib/default-profile.js

141 lines
4.2 KiB
JavaScript
Raw Normal View History

'use strict'
2019-10-31 18:48:11 +01:00
const request = require('../lib/request')
2019-10-31 20:08:56 +01:00
const formatStationBoardReq = require('../format/station-board-req')
const formatLocationsReq = require('../format/locations-req')
const formatStopReq = require('../format/stop-req')
const formatNearbyReq = require('../format/nearby-req')
const formatTripReq = require('../format/trip-req')
const formatRadarReq = require('../format/radar-req')
const formatReachableFromReq = require('../format/reachable-from-req')
const formatRefreshJourneyReq = require('../format/refresh-journey-req')
2020-03-09 20:54:43 +01:00
const formatRemarksReq = require('../format/remarks-req')
2020-03-09 21:44:35 +01:00
const formatLinesReq = require('../format/lines-req')
2019-10-31 20:08:56 +01:00
const parseDateTime = require('../parse/date-time')
2019-08-30 19:19:31 +02:00
const parsePlatform = require('../parse/platform')
const parseProductsBitmask = require('../parse/products-bitmask')
2019-08-30 19:19:31 +02:00
const parseIcon = require('../parse/icon')
const parseWhen = require('../parse/when')
const parsePrognosisType = require('../parse/prognosis-type')
2022-11-16 15:18:12 +01:00
const parseScheduledDays = require('../parse/scheduled-days')
const parseDeparture = require('../parse/departure')
2018-06-26 15:49:50 +02:00
const parseArrival = require('../parse/arrival')
2020-06-11 15:33:45 +02:00
const parseTrip = require('../parse/trip')
2017-12-28 16:56:27 +01:00
const parseJourneyLeg = require('../parse/journey-leg')
const parseJourney = require('../parse/journey')
const parseLine = require('../parse/line')
const parseLocation = require('../parse/location')
2018-10-27 14:47:19 +02:00
const parseCommon = require('../parse/common')
2018-05-16 21:07:05 +02:00
const parsePolyline = require('../parse/polyline')
const parseMovement = require('../parse/movement')
const parseNearby = require('../parse/nearby')
const parseOperator = require('../parse/operator')
const parseHint = require('../parse/hint')
2018-06-07 18:46:24 +02:00
const parseWarning = require('../parse/warning')
const parseStopover = require('../parse/stopover')
const formatAddress = require('../format/address')
const formatCoord = require('../format/coord')
const formatDate = require('../format/date')
const formatLocationFilter = require('../format/location-filter')
const formatProductsFilter = require('../format/products-filter')
const formatPoi = require('../format/poi')
const formatStation = require('../format/station')
const formatTime = require('../format/time')
const formatLocation = require('../format/location')
2017-11-20 17:37:08 +01:00
const formatRectangle = require('../format/rectangle')
const filters = require('../format/filters')
const DEBUG = /(^|,)hafas-client(,|$)/.test(process.env.DEBUG || '')
const logRequest = DEBUG
? (_, req, reqId) => console.error(req.body + '')
: () => {}
const logResponse = DEBUG
? (_, res, body, reqId) => console.error(body)
: () => {}
const id = (ctx, x) => x
const defaultProfile = {
2019-10-31 18:48:11 +01:00
request,
transformReqBody: id,
transformReq: id,
salt: null,
addChecksum: false,
addMicMac: false,
randomizeUserAgent: true,
logRequest,
logResponse,
2019-10-31 20:08:56 +01:00
formatStationBoardReq,
formatLocationsReq,
formatStopReq,
formatNearbyReq,
formatTripReq,
formatRadarReq,
formatReachableFromReq,
formatRefreshJourneyReq,
2020-03-09 20:54:43 +01:00
formatRemarksReq,
2020-03-09 21:44:35 +01:00
formatLinesReq,
2017-11-12 20:02:32 +01:00
transformJourneysQuery: id,
parseDateTime,
2019-08-30 19:19:31 +02:00
parsePlatform,
parseProductsBitmask,
2019-08-30 19:19:31 +02:00
parseIcon,
parseWhen,
parsePrognosisType,
2022-11-16 15:18:12 +01:00
parseScheduledDays,
parseDeparture,
2018-06-26 15:49:50 +02:00
parseArrival,
2020-06-11 15:33:45 +02:00
parseTrip,
2017-12-28 16:56:27 +01:00
parseJourneyLeg,
parseJourney,
parseLine,
parseStationName: (_, name) => name,
parseLocation,
2018-10-27 14:47:19 +02:00
parseCommon,
2018-05-16 21:07:05 +02:00
parsePolyline,
parseMovement,
parseNearby,
parseOperator,
parseHint,
2018-06-07 18:46:24 +02:00
parseWarning,
parseStopover,
formatAddress,
formatCoord,
formatDate,
formatLocationFilter,
formatProductsFilter,
formatPoi,
formatStation,
formatTime,
2017-11-20 17:37:08 +01:00
formatLocation,
formatRectangle,
filters,
2019-12-29 22:16:45 +01:00
journeysOutFrwd: true, // `journeys()` method: support for `outFrwd` field?
2021-10-26 14:15:17 +02:00
// todo: https://github.com/KDE/kpublictransport/commit/c7c54304160d8f22eab0c91812a107aca82304b7
// `departures()` method: support for `getPasslist` field?
departuresGetPasslist: false,
// `departures()` method: support for `stbFltrEquiv` field?
departuresStbFltrEquiv: false,
trip: false,
radar: false,
refreshJourney: true,
// refreshJourney(): use `outReconL[]` instead of `ctxRecon`?
refreshJourneyUseOutReconL: false,
2020-11-28 11:40:46 +01:00
tripsByName: true,
remarks: true,
2021-10-26 14:15:17 +02:00
// `remarks()` method: support for `getPolyline` field?
2021-01-14 23:34:37 +01:00
remarksGetPolyline: true, // `remarks()` method: support for `getPolyline` field?
2020-11-28 11:40:46 +01:00
lines: true,
}
module.exports = defaultProfile