diff options
Diffstat (limited to 'node_modules/caniuse-lite/dist/unpacker/feature.js')
| -rw-r--r-- | node_modules/caniuse-lite/dist/unpacker/feature.js | 52 |
1 files changed, 0 insertions, 52 deletions
diff --git a/node_modules/caniuse-lite/dist/unpacker/feature.js b/node_modules/caniuse-lite/dist/unpacker/feature.js deleted file mode 100644 index 6690e99c..00000000 --- a/node_modules/caniuse-lite/dist/unpacker/feature.js +++ /dev/null @@ -1,52 +0,0 @@ -'use strict' - -const statuses = require('../lib/statuses') -const supported = require('../lib/supported') -const browsers = require('./browsers').browsers -const versions = require('./browserVersions').browserVersions - -const MATH2LOG = Math.log(2) - -function unpackSupport(cipher) { - // bit flags - let stats = Object.keys(supported).reduce((list, support) => { - if (cipher & supported[support]) list.push(support) - return list - }, []) - - // notes - let notes = cipher >> 7 - let notesArray = [] - while (notes) { - let note = Math.floor(Math.log(notes) / MATH2LOG) + 1 - notesArray.unshift(`#${note}`) - notes -= Math.pow(2, note - 1) - } - - return stats.concat(notesArray).join(' ') -} - -function unpackFeature(packed) { - let unpacked = { - status: statuses[packed.B], - title: packed.C, - shown: packed.D - } - unpacked.stats = Object.keys(packed.A).reduce((browserStats, key) => { - let browser = packed.A[key] - browserStats[browsers[key]] = Object.keys(browser).reduce( - (stats, support) => { - let packedVersions = browser[support].split(' ') - let unpacked2 = unpackSupport(support) - packedVersions.forEach(v => (stats[versions[v]] = unpacked2)) - return stats - }, - {} - ) - return browserStats - }, {}) - return unpacked -} - -module.exports = unpackFeature -module.exports.default = unpackFeature |
