Function: createOptionsValidator()
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
Array of field validator configurations
Returns
Validation function that returns an array of error messages
Since
6.12.0