Add browser icons. Currently requires stf-browser-db to be npm linked to work.

This commit is contained in:
Simo Kinnunen
2014-05-08 18:58:13 +09:00
parent 76b9555f4a
commit 0c24cb7ec6
7 changed files with 68 additions and 31 deletions

View File

@@ -1,24 +1,21 @@
var syrup = require('syrup')
var browsers = require('stf-browser-db')
var logger = require('../../../util/logger')
var wire = require('../../../wire')
var wireutil = require('../../../wire/util')
var mapping = {
'com.android.chrome': 'chrome'
, 'com.chrome.beta': 'chrome-beta'
, 'com.sec.android.app.sbrowser': 'samsung-chrome'
, 'com.android.browser': 'android'
, 'org.mozilla.firefox': 'firefox'
, 'org.mozilla.firefox_beta': 'firefox-beta'
, 'com.opera.browser': 'opera'
, 'com.opera.mini.android': 'opera-mini'
, 'com.opera.browser.beta': 'opera-beta'
, 'com.UCMobile.intl': 'uc'
, 'com.explore.web.browser': 'lightning'
, 'com.baidu.browser.inter': 'baidu'
, 'com.tencent.ibibo.mtt': 'one'
}
var mapping = (function() {
var list = Object.create(null)
Object.keys(browsers).forEach(function(id) {
var browser = browsers[id]
if (browser.platforms.android) {
list[browser.platforms.android.package] = id
}
})
return list
})()
module.exports = syrup.serial()
.dependency(require('../support/router'))
@@ -33,11 +30,17 @@ module.exports = syrup.serial()
}
function processApp(app) {
var packageName = pkg(app.component)
var browserId = mapping[packageName]
if (!browserId) {
throw new Error(util.format('Unmapped browser "%s"', packageName))
}
return {
id: app.component
, type: mapping[pkg(app.component)] ||
app.name.toLowerCase().replace(/\s+/g, '-')
, name: app.name
, type: browserId
, name: browsers[browserId].name
, selected: app.selected
, system: app.system
}