UNPKG

@citrineos/base

Version:

The base module for OCPP v2.0.1 including all interfaces. This module is not intended to be used directly, but rather as a dependency for other modules.

37 lines 1.41 kB
// SPDX-FileCopyrightText: 2025 Contributors to the CitrineOS Project // // SPDX-License-Identifier: Apache-2.0 import { z } from 'zod'; import { ChargingStationSchema } from './charging.station.dto.js'; import { BaseSchema } from './types/base.dto.js'; import { LocationFacilityEnumSchema, LocationParkingEnumSchema } from './types/enums.js'; import { LocationHoursSchema, PointSchema } from './types/location.js'; export const LocationSchema = BaseSchema.extend({ id: z.number().int().optional(), name: z.string(), address: z.string(), city: z.string(), postalCode: z.string(), state: z.string(), country: z.string(), publishUpstream: z.boolean().default(true), timeZone: z.string().default('UTC'), parkingType: LocationParkingEnumSchema.nullable().optional(), facilities: z.array(LocationFacilityEnumSchema).nullable().optional(), openingHours: LocationHoursSchema.nullable().optional(), coordinates: PointSchema, chargingPool: z.array(ChargingStationSchema).nullable().optional(), }); export const LocationProps = LocationSchema.keyof().enum; export const LocationCreateSchema = LocationSchema.omit({ id: true, tenant: true, chargingPool: true, updatedAt: true, createdAt: true, }); export const locationSchemas = { Location: LocationSchema, LocationCreate: LocationCreateSchema, }; //# sourceMappingURL=location.dto.js.map