From c1149a26623e7946a01afae3d2a0880c9dc81ed7 Mon Sep 17 00:00:00 2001 From: alexandercerutti Date: Sun, 19 Aug 2018 00:43:40 +0200 Subject: [PATCH] Changed _filterOptions implementation - added forbidden options checks --- index.js | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/index.js b/index.js index 5936a6a..16464c4 100644 --- a/index.js +++ b/index.js @@ -321,18 +321,13 @@ class Pass { * @returns {Object} - filtered options based on above criterias. */ - _filterOptions(query) { - const supportedOptions = ["serialNumber", "userInfo", "expirationDate", "locations", "authenticationToken", "barcode"]; + _filterOptions(opts) { + const forbidden = ["primaryFields", "secondaryFields", "auxiliaryFields", "backFields", "headerFields"]; + const supported = ["serialNumber", "userInfo", "expirationDate", "locations", "authenticationToken", "barcode"]; - let options = {}; + let valid = Object.keys(opts).filter(o => !forbidden.includes(o) && supported.includes(o)); - supportedOptions.forEach(function(key) { - if (query[key]) { - options[key] = query[key]; - } - }); - - return options; + return Object.assign(...valid.map(v => ({ [v]: opts[v] })), {}); } /**