@ws-kit/zod
Version:
Zod validator adapter for WS-Kit with runtime schema validation and full TypeScript inference
29 lines • 968 B
JavaScript
// SPDX-FileCopyrightText: 2025-present Kriasoft
// SPDX-License-Identifier: MIT
import { ZOD_PAYLOAD } from "./runtime.js";
/**
* Helper to extract Zod payload schema from a message schema.
* @internal
*/
export function getZodPayload(schema) {
return schema?.[ZOD_PAYLOAD];
}
/**
* Helper to validate payload against Zod schema.
* Always uses safeParse for consistent error handling.
* Coercion is controlled by schema design (z.coerce.*), not runtime flags.
* Returns { success: true, data } or { success: false, error }.
* @internal
*/
export function validatePayload(payload, payloadSchema) {
if (!payloadSchema) {
// No payload schema defined (message with no payload)
return { success: true };
}
const result = payloadSchema.safeParse(payload);
if (result.success) {
return { success: true, data: result.data };
}
return { success: false, error: result.error };
}
//# sourceMappingURL=internal.js.map