db-vendo-client/format/products-bitmask.js
2018-03-02 23:59:39 +01:00

16 lines
483 B
JavaScript

'use strict'
const createFormatBitmask = (allProducts) => {
const formatBitmask = (products) => {
if(Object.keys(products).length === 0) throw new Error('products filter must not be empty')
let bitmask = 0
for (let product in products) {
if (!allProducts[product]) throw new Error('unknown product ' + product)
if (products[product] === true) bitmask += allProducts[product].bitmask
}
return bitmask
}
return formatBitmask
}
module.exports = createFormatBitmask