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.

35 lines 1.37 kB
// SPDX-FileCopyrightText: 2025 Contributors to the CitrineOS Project // // SPDX-License-Identifier: Apache-2.0 import { z } from 'zod'; import { BaseSchema } from './types/base.dto.js'; import { MessageOriginSchema, MessageStateSchema, OCPPVersionSchema, } from './types/ocpp.message.js'; export const OCPPMessageWithoutRequestResponseSchema = BaseSchema.extend({ id: z.number().int().optional(), ocppConnectionName: z.string(), stationId: z.number().int().optional(), correlationId: z.string().optional(), origin: MessageOriginSchema, state: MessageStateSchema, protocol: OCPPVersionSchema, action: z.string(), message: z.any(), // JSONB timestamp: z.iso.datetime(), }); const OCPPMessageSchema = OCPPMessageWithoutRequestResponseSchema.extend({ requestMessageId: z.number().int().optional(), requestMessage: OCPPMessageWithoutRequestResponseSchema.optional(), responseMessages: OCPPMessageWithoutRequestResponseSchema.array().optional(), }); export const OCPPMessageProps = OCPPMessageSchema.keyof().enum; export const OCPPMessageCreateSchema = OCPPMessageSchema.omit({ id: true, tenant: true, updatedAt: true, createdAt: true, }); export const ocppMessageSchemas = { OCPPMessage: OCPPMessageSchema, OCPPMessageCreate: OCPPMessageCreateSchema, }; //# sourceMappingURL=ocpp.message.dto.js.map