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

129 lines
3.6 KiB
JavaScript
Raw Normal View History

import {request} from '../lib/request.js';
2024-12-21 15:26:49 +00:00
import {products} from '../lib/products.js';
import {ageGroup, ageGroupFromAge, ageGroupLabel} from './age-group.js';
import {formatStationBoardReq} from '../format/station-board-req.js';
import {formatTripReq} from '../format/trip-req.js';
2024-12-07 18:29:16 +00:00
import {formatNearbyReq} from '../format/nearby-req.js';
2019-10-31 18:48:11 +01:00
import {parseDateTime} from '../parse/date-time.js';
import {parsePlatform} from '../parse/platform.js';
2024-12-21 15:26:49 +00:00
import {parseProducts} from '../parse/products.js';
import {parseWhen} from '../parse/when.js';
import {parseDeparture} from '../parse/departure.js';
import {parseArrival} from '../parse/arrival.js';
import {parseTrip} from '../parse/trip.js';
import {parseJourneyLeg} from '../parse/journey-leg.js';
import {parseJourney} from '../parse/journey.js';
import {parseLine} from '../parse/line.js';
import {parseLocation} from '../parse/location.js';
import {parsePolyline} from '../parse/polyline.js';
import {parseOperator} from '../parse/operator.js';
2025-01-02 14:00:45 +00:00
import {parseRemarks, parseCancelled} from '../parse/remarks.js';
import {parseStopover} from '../parse/stopover.js';
2024-12-21 15:26:49 +00:00
import {parseLoadFactor, parseArrOrDepWithLoadFactor} from '../parse/load-factor.js';
import {parseHintByCode} from '../parse/hints-by-code.js';
2025-01-03 10:57:24 +00:00
import {parseTickets, parsePrice} from '../parse/tickets.js';
2019-10-31 20:08:56 +01:00
import {formatAddress} from '../format/address.js';
import {formatCoord} from '../format/coord.js';
import {formatDate} from '../format/date.js';
import {formatProductsFilter} from '../format/products-filter.js';
import {formatPoi} from '../format/poi.js';
import {formatStation} from '../format/station.js';
2025-01-02 14:00:45 +00:00
import {formatTime, formatTimeOfDay} from '../format/time.js';
import {formatLocation} from '../format/location.js';
2025-01-03 10:57:24 +00:00
import {formatTravellers} from '../format/travellers.js';
2024-12-21 15:26:49 +00:00
import {formatLoyaltyCard} from '../format/loyalty-cards.js';
import {formatTransfers} from '../format/transfers.js';
const DEBUG = (/(^|,)hafas-client(,|$)/).test(process.env.DEBUG || '');
const logRequest = DEBUG
? (_, req, reqId) => console.error(String(req.body))
2024-12-21 15:26:49 +00:00
: () => { };
const logResponse = DEBUG
? (_, res, body, reqId) => console.error(body)
2024-12-21 15:26:49 +00:00
: () => { };
2024-12-21 15:26:49 +00:00
const id = (_ctx, x) => x;
const notImplemented = (_ctx, _x) => {
throw new Error('NotImplemented');
};
const defaultProfile = {
2019-10-31 18:48:11 +01:00
request,
2024-12-21 15:26:49 +00:00
products,
ageGroup, ageGroupFromAge, ageGroupLabel,
2019-10-31 18:48:11 +01:00
transformReqBody: id,
transformReq: id,
2025-01-02 14:00:45 +00:00
randomizeUserAgent: false,
logRequest,
logResponse,
2019-10-31 20:08:56 +01:00
formatStationBoardReq,
2024-12-21 15:26:49 +00:00
formatLocationsReq: notImplemented,
2025-01-08 23:02:57 +00:00
formatStopReq: notImplemented,
2019-10-31 20:08:56 +01:00
formatTripReq,
2024-12-07 18:29:16 +00:00
formatNearbyReq,
2024-12-21 15:26:49 +00:00
formatJourneysReq: notImplemented,
formatRefreshJourneyReq: notImplemented,
2017-11-12 20:02:32 +01:00
transformJourneysQuery: id,
parseDateTime,
2019-08-30 19:19:31 +02:00
parsePlatform,
2024-12-21 15:26:49 +00:00
parseProducts,
2019-08-30 19:19:31 +02:00
parseWhen,
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,
2024-12-21 15:26:49 +00:00
parseStationName: id,
parseLocation,
2018-05-16 21:07:05 +02:00
parsePolyline,
parseOperator,
2024-12-07 16:16:31 +00:00
parseRemarks,
2025-01-02 14:00:45 +00:00
parseCancelled,
parseStopover,
2024-12-21 15:26:49 +00:00
parseLoadFactor,
parseArrOrDepWithLoadFactor,
parseHintByCode,
2025-01-03 10:57:24 +00:00
parsePrice,
parseTickets,
2025-01-08 23:02:57 +00:00
parseStop: notImplemented,
formatAddress,
formatCoord,
formatDate,
2024-12-21 15:26:49 +00:00
formatLocation,
formatLocationFilter: notImplemented,
formatLoyaltyCard,
formatPoi,
2024-12-21 15:26:49 +00:00
formatProductsFilter,
formatStation,
formatTime,
2025-01-02 14:00:45 +00:00
formatTimeOfDay,
formatTransfers,
2025-01-03 10:57:24 +00:00
formatTravellers,
2024-12-21 15:26:49 +00:00
formatRectangle: id,
2024-12-21 15:26:49 +00:00
journeysOutFrwd: true,
departuresGetPasslist: false,
departuresStbFltrEquiv: false,
2024-12-21 15:26:49 +00:00
trip: true,
radar: false,
refreshJourney: true,
2024-12-21 16:30:11 +00:00
journeysFromTrip: false,
refreshJourneyUseOutReconL: false,
2024-12-07 16:16:31 +00:00
tripsByName: false,
remarks: false,
2024-12-21 15:26:49 +00:00
remarksGetPolyline: false,
2024-12-21 16:30:11 +00:00
reachableFrom: false,
2024-12-07 16:16:31 +00:00
lines: false,
};
2022-05-07 16:17:37 +02:00
export {
defaultProfile,
};