| 123456789101112131415161718192021222324252627282930 | const _ = require('lodash')const Filter = require('scim-query-filter-parser')module.exports = {  generateSuccess (msg) {    return {      succeeded: true,      errorCode: 0,      slug: 'ok',      message: _.defaultTo(msg, 'Operation succeeded.')    }  },  generateError (err, complete = true) {    const error = {      succeeded: false,      errorCode: err.code || 1,      slug: err.name,      message: err.message || 'An unexpected error occured.'    }    return (complete) ? { responseResult: error } : error  },  filter (arr, filterString) {    const prvFilter = new Filter(_.toString(filterString).replace(/'/g, `"`))    return arr.filter(prvFilter.test)  },  orderBy (arr, orderString) {    let orderParams = _.zip(...orderString.split(',').map(ord => _.trim(ord).split(' ').map(_.trim)))    return _.orderBy(arr, orderParams[0], orderParams[1])  }}
 |