mirror of
https://github.com/marcogll/passkit-generator.git
synced 2026-03-15 21:25:26 +00:00
Added a schema for input parameters to Pass class
This commit is contained in:
39
schema.js
Normal file
39
schema.js
Normal file
@@ -0,0 +1,39 @@
|
||||
const Joi = require("joi");
|
||||
|
||||
const schema = Joi.object().keys({
|
||||
modelDir: Joi.string(),
|
||||
modelName: Joi.string(),
|
||||
certificates: Joi.object().keys({
|
||||
dir: Joi.string(),
|
||||
wwdr: Joi.string(),
|
||||
signerCert: Joi.string(),
|
||||
signerKey: Joi.object().keys({
|
||||
keyFile: Joi.string(),
|
||||
passphrase: Joi.string(),
|
||||
})
|
||||
}),
|
||||
handlers: Joi.object().keys({
|
||||
barcode: Joi.func(),
|
||||
serialNumber: Joi.func()
|
||||
}),
|
||||
overrides: Joi.object()
|
||||
});
|
||||
|
||||
const requiredSchema = schema.requiredKeys(
|
||||
"",
|
||||
"modelDir",
|
||||
"certificates",
|
||||
"certificates.dir",
|
||||
"certificates.wwdr",
|
||||
"certificates.signerCert",
|
||||
"certificates.signerKey",
|
||||
"certificates.signerKey.keyFile",
|
||||
"certificates.signerKey.passphrase"
|
||||
);
|
||||
|
||||
module.exports = {
|
||||
validate: (opts) => {
|
||||
let validation = Joi.validate(opts, requiredSchema);
|
||||
return !validation.error;
|
||||
}
|
||||
};
|
||||
Reference in New Issue
Block a user