Skip to main content

Function: createOptionsValidator()

Gala Launchpad SDK 9.0.0-rc.5


Gala Launchpad SDK 9.0.0-rc.5 / index / createOptionsValidator

Function: createOptionsValidator()

createOptionsValidator<T>(configs): OptionsValidatorWithErrors<T>

Defined in: packages/launchpad-sdk/dist/utils/validation-helpers.d.ts:575

Creates an options validator from field configurations

This factory eliminates duplicate validation boilerplate across DTO files. Returns an array of error messages (empty if valid), which aligns with moderator.dto.ts and api-key.dto.ts validation patterns.

Usage​

Basic field validation​

import { createOptionsValidator, commonValidators } from '../utils/validation-helpers';

const validateCreateOptions = createOptionsValidator<CreateOptions>([
{ field: 'name', required: true, type: 'string' },
{ field: 'description', validator: commonValidators.maxLength('description', 255) },
{ field: 'status', validator: commonValidators.enumValue('status', ['active', 'inactive']) },
]);

// Usage
const errors = validateCreateOptions(options);
if (errors.length > 0) {
throw new ValidationError(errors[0], 'options', 'VALIDATION_FAILED');
}

With custom validators​

const validateOptions = createOptionsValidator<MyOptions>([
{ field: 'tokenName', validator: (value) => {
try {
validateLaunchpadTokenName(value as string, 'tokenName');
return undefined;
} catch (e) {
return (e as Error).message;
}
}},
]);

Type Parameters​

T​

T extends Record<string, unknown>

Parameters​

configs​

FieldValidatorConfig[]

Array of field validator configurations

Returns​

OptionsValidatorWithErrors<T>

Validation function that returns an array of error messages

Since​

6.12.0