basant307/AI_Governance_Project
048
1'use strict'2 3const browsers = require('./browsers').browsers4const versions = require('./browserVersions').browserVersions5const agentsData = require('../../data/agents')6 7function unpackBrowserVersions(versionsData) {8 return Object.keys(versionsData).reduce((usage, version) => {9 usage[versions[version]] = versionsData[version]10 return usage11 }, {})12}13 14module.exports.agents = Object.keys(agentsData).reduce((map, key) => {15 let versionsData = agentsData[key]16 map[browsers[key]] = Object.keys(versionsData).reduce((data, entry) => {17 if (entry === 'A') {18 data.usage_global = unpackBrowserVersions(versionsData[entry])19 } else if (entry === 'C') {20 data.versions = versionsData[entry].reduce((list, version) => {21 if (version === '') {22 list.push(null)23 } else {24 list.push(versions[version])25 }26 return list27 }, [])28 } else if (entry === 'D') {29 data.prefix_exceptions = unpackBrowserVersions(versionsData[entry])30 } else if (entry === 'E') {31 data.browser = versionsData[entry]32 } else if (entry === 'F') {33 data.release_date = Object.keys(versionsData[entry]).reduce(34 (map2, key2) => {35 map2[versions[key2]] = versionsData[entry][key2]36 return map237 },38 {}39 )40 } else {41 // entry is B42 data.prefix = versionsData[entry]43 }44 return data45 }, {})46 return map47}, {})48 