Untitled
unknown
plain_text
a year ago
1.6 kB
13
Indexable
export const CreateHomeFormSchema = Joi.object({
coverageDetails: Joi.object({
ownershipCode: Joi.number().valid(1, 2).required(),
nationalityCode: Joi.number().required(),
mandatoryCovers: Joi.array().items(
Joi.object({
coverCode: Joi.string().valid(CoverCode.CONTENTS, CoverCode.PERSONAL_POSESSIONS, CoverCode.BUILDING).required(),
coverIncluded: Joi.boolean().required(),
coverageLimit: Joi.number().required(),
coverageRange: Joi.string().optional()
})
).required().when('ownershipCode', {
switch: [
{
is: 1,
then: Joi.alternatives().try(
Joi.array().has([
Joi.object({ coverCode: Joi.string().valid(CoverCode.CONTENTS).required() }),
Joi.object({ coverCode: Joi.string().valid(CoverCode.PERSONAL_POSESSIONS).required() }),
Joi.object({ coverCode: Joi.string().valid(CoverCode.BUILDING).required() })
]).length(3),
Joi.array().has([
Joi.object({ coverCode: Joi.string().valid(CoverCode.CONTENTS).required() }),
Joi.object({ coverCode: Joi.string().valid(CoverCode.PERSONAL_POSESSIONS).required() })
]).length(2),
Joi.array().has([
Joi.object({ coverCode: Joi.string().valid(CoverCode.BUILDING).required() })
]).length(1)
)
},
{
is: 2,
then: Joi.array().has([
Joi.object({ coverCode: Joi.string().valid(CoverCode.CONTENTS).required() }),
Joi.object({ coverCode: Joi.string().valid(CoverCode.PERSONAL_POSESSIONS).required() })
]).length(2)
}
]
})
}).required()
}).unknown(true);Editor is loading...
Leave a Comment