Skip to content
0

katanakit-js / ValidationService

Class: ValidationService ​

Defined in: src/core/services/validation.service.ts:13

ValidationService - Singleton para validaciones.

Aplica el patrón Singleton: una única instancia que centraliza la validación de datos desconocidos (respuestas de API, configs, input de usuario) contra esquemas Zod devolviendo Safe Results en vez de lanzar excepciones. Puro y sin I/O, seguro para SSR.

Methods ​

useValidate() ​

ts
useValidate<T>(schema, data): FetchResult<T>;

Defined in: src/core/services/validation.service.ts:57

Validates unknown data (API responses, configs, user input) against a Zod schema and returns a Safe Result instead of throwing. Framework-agnostic and pure: no I/O, SSR-safe.

Type Parameters ​

Type ParameterDescription
TThe validated output type (z.infer of the schema).

Parameters ​

ParameterTypeDescription
schemaZodType<T>Any Zod schema.
dataunknownUnknown input to validate.

Returns ​

FetchResult<T>

FetchResult<T> with typed data or a Validation Error.

Example ​

ts
import { SmartVideoOptionsSchema } from "katanakit-js/schemas";

const result = useValidate(SmartVideoOptionsSchema, JSON.parse(raw));
if (result.ok) useBuildVideoEmbed(result.data);

getInstance() ​

ts
static getInstance(): ValidationService;

Defined in: src/core/services/validation.service.ts:32

Obtiene la instancia única del ValidationService (Singleton).

Returns ​

ValidationService

La instancia única de ValidationService.

Example ​

ts
const validator = ValidationService.getInstance();
validator.useValidate(SmartVideoOptionsSchema, raw);

Released under the MIT License.