UNPKG

@tmlmobilidade/types

Version:
34 lines (33 loc) 1.32 kB
/* * */ import { z } from 'zod'; import { GtfsLocationTypeSchema } from './location-type.js'; import { GtfsWheelchairBoardingSchema } from './wheelchair-accessible.js'; /* * */ const GtfsStopAccessValues = [ '0', // Stop/platform cannot be directly accessed from street network. '1', // Directly accessible from street network. ]; export const GtfsStopAccessSchema = z.enum(GtfsStopAccessValues); /** * Represents a stop in the GTFS (General Transit Feed Specification) format. * A stop is a physical location where passengers can board or alight from a transit vehicle. * Each stop can have various attributes such as location, accessibility, and identification. */ export const GtfsStopSchema = z.object({ level_id: z.string().nullish(), location_type: GtfsLocationTypeSchema.default('0'), parent_station: z.string().nullish(), platform_code: z.string().nullish(), stop_access: GtfsStopAccessSchema.nullish(), stop_code: z.string(), stop_desc: z.string().nullish(), stop_id: z.string(), stop_lat: z.number(), stop_lon: z.number(), stop_name: z.string(), stop_timezone: z.string().nullish(), stop_url: z.string().nullish(), tts_stop_name: z.string().nullish(), wheelchair_boarding: GtfsWheelchairBoardingSchema, zone_id: z.string().nullish(), });