From c05bd130c353a37b9ac77dabe92764f7098784b8 Mon Sep 17 00:00:00 2001 From: alexandercerutti Date: Sun, 22 Jul 2018 23:48:55 +0200 Subject: [PATCH] Added schemas for 'field' and 'structure' --- schema.js | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/schema.js b/schema.js index 8528a23..74f2316 100644 --- a/schema.js +++ b/schema.js @@ -19,14 +19,29 @@ const CONSTANTS = { }), overrides: Joi.object() }), - barcode: Joi.object().keys({ altText: Joi.string(), messageEncoding: Joi.string(), format: Joi.string().required().regex(/(PKBarcodeFormatQR|PKBarcodeFormatPDF417|PKBarcodeFormatAztec|PKBarcodeFormatCode128)/, "barcodeType"), 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 = {