Literal type
Ensure the field's value matches exactly the expected literal value. In certain cases, VineJS will perform the following normalizations on the input value.
- When expected value is a boolean - The input value
[true, 1, "1", "true", "on"]will be converted totrue. - When expected value is a boolean - The input value
[false, 0, "0", "false"]will be converted tofalse. - When expected value is a number - The string representation of a number value will be converted to a number.
import vine from '@vinejs/vine' const schema = vine.object({ is_hiring_guide: vine.literal(true) }) Using the following modifiers, you may mark the field as optional or nullable.
See also: Working with undefined and null values
{ is_hiring_guide: vine.literal(true).nullable() } { is_hiring_guide: vine.literal(true).optional() } Defining error message
You may define the custom error message using the literal rule name.
const messages = { literal: 'The {{ field }} field must be {{ expectedValue }}' } vine.messagesProvider = new SimpleMessagesProvider(messages)