Added schemas for 'field' and 'structure'

This commit is contained in:
alexandercerutti
2018-07-22 23:48:55 +02:00
parent b74da4ba93
commit c05bd130c3

View File

@@ -19,14 +19,29 @@ const CONSTANTS = {
}), }),
overrides: Joi.object() overrides: Joi.object()
}), }),
barcode: Joi.object().keys({ barcode: Joi.object().keys({
altText: Joi.string(), altText: Joi.string(),
messageEncoding: Joi.string(), messageEncoding: Joi.string(),
format: Joi.string().required().regex(/(PKBarcodeFormatQR|PKBarcodeFormatPDF417|PKBarcodeFormatAztec|PKBarcodeFormatCode128)/, "barcodeType"), format: Joi.string().required().regex(/(PKBarcodeFormatQR|PKBarcodeFormatPDF417|PKBarcodeFormatAztec|PKBarcodeFormatCode128)/, "barcodeType"),
message: Joi.string().required() message: Joi.string().required()
}), }),
field: Joi.object().keys({
attributedValue: Joi.string(),
changeMessage: Joi.string(),
dataDetectorType: Joi.array().items(Joi.string().regex(/(PKDataDetectorTypePhoneNumber|PKDataDetectorTypeLink|PKDataDetectorTypeAddress|PKDataDetectorTypeCalendarEvent)/, "dataDetectorType")),
label: Joi.string(),
textAlignment: Joi.string().regex(/(PKTextAlignmentLeft|PKTextAlignmentCenter|PKTextAlignmentRight|PKTextAlignmentNatural)/, "graphic-alignment"),
key: Joi.string().required(),
value: Joi.string().required()
}),
structure: Joi.object().keys({
auxiliaryFields: Joi.array().items(this.field),
backFields: Joi.array().items(this.field),
headerFields: Joi.array().items(this.field),
primaryFields: Joi.array().items(this.field),
secondaryFields: Joi.array().items(this.field),
transitType: Joi.string().regex(/(PKTransitTypeAir|PKTransitTypeBoat|PKTransitTypeBus|PKTransitTypeGeneric|PKTransitTypeTrain)/)
})
}; };
module.exports = { module.exports = {