db-vendo-client/parse/products-bitmask.js
Jannis R 339d64e901
convert to ESM 💥📝
2022-11-18 19:20:03 +01:00

17 lines
448 B
JavaScript

const parseBitmask = ({profile}, bitmask) => {
const res = {}
for (let product of profile.products) res[product.id] = false
const bits = bitmask.toString(2).split('').map(i => parseInt(i)).reverse()
for (let i = 0; i < bits.length; i++) {
if (!bits[i]) continue // ignore `0`
const product = profile.products.find(p => p.bitmasks.includes(Math.pow(2, i)))
if (product) res[product.id] = true
}
return res
}
export {
parseBitmask,
}