Socket
Socket
Sign inDemoInstall

browserslist

Package Overview
Dependencies
6
Maintainers
1
Versions
188
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 4.21.8 to 4.21.9

64

index.js

@@ -13,2 +13,3 @@ var jsReleases = require('node-releases/data/processed/envs.json')

var ANDROID_EVERGREEN_FIRST = '37'
var OP_MOB_BLINK_FIRST = 14

@@ -227,17 +228,2 @@ // Helpers

function mapVersions(data, map) {
data.versions = data.versions.map(function (i) {
return map[i] || i
})
data.released = data.released.map(function (i) {
return map[i] || i
})
var fixedDate = {}
for (var i in data.releaseDate) {
fixedDate[map[i] || i] = data.releaseDate[i]
}
data.releaseDate = fixedDate
return data
}
function byName(name, context) {

@@ -253,5 +239,2 @@ name = name.toLowerCase()

cloned.name = name
if (name === 'op_mob') {
cloned = mapVersions(cloned, { '10.0-10.1': '10' })
}
return cloned

@@ -298,10 +281,23 @@ }

function filterAndroid(list, versions, context) {
if (context.mobileToDesktop) return list
var released = browserslist.data.chrome.released
var nEvergreen = released.length - released.indexOf(ANDROID_EVERGREEN_FIRST)
if (versions <= nEvergreen) {
// Adjusts last X versions queries for some mobile browsers,
// where caniuse data jumps from a legacy version to the latest
function filterJumps(list, name, nVersions, context) {
var jump = 1
switch (name) {
case 'android':
if (context.mobileToDesktop) return list
var released = browserslist.data.chrome.released
jump = released.length - released.indexOf(ANDROID_EVERGREEN_FIRST)
break
case 'op_mob':
var latest = browserslist.data.op_mob.released.slice(-1)[0]
jump = getMajor(latest) - OP_MOB_BLINK_FIRST + 1
break
default:
return list
}
if (nVersions <= jump) {
return list.slice(-1)
}
return list.slice(nEvergreen - 1 - versions)
return list.slice(jump - 1 - nVersions)
}

@@ -475,2 +471,3 @@

// Fallback to a similar browser for unknown versions
// Note op_mob is not included as its chromium versions are not in sync with Opera desktop
browserslist.desktopNames = {

@@ -480,3 +477,2 @@ and_chr: 'chrome',

ie_mob: 'ie',
op_mob: 'opera',
android: 'chrome' // has extra processing logic

@@ -607,5 +603,3 @@ }

list = list.map(nameMapper(data.name))
if (data.name === 'android') {
list = filterAndroid(list, node.versions, context)
}
list = filterJumps(list, data.name, node.versions, context)
return selected.concat(list)

@@ -624,5 +618,3 @@ }, [])

list = list.map(nameMapper(data.name))
if (data.name === 'android') {
list = filterAndroid(list, node.versions, context)
}
list = filterJumps(list, data.name, node.versions, context)
return selected.concat(list)

@@ -660,5 +652,3 @@ }, [])

var list = validVersions.map(nameMapper(data.name))
if (data.name === 'android') {
list = filterAndroid(list, node.versions, context)
}
list = filterJumps(list, data.name, node.versions, context)
return list

@@ -695,5 +685,3 @@ }

var list = data.released.slice(-node.versions).map(nameMapper(data.name))
if (data.name === 'android') {
list = filterAndroid(list, node.versions, context)
}
list = filterJumps(list, data.name, node.versions, context)
return list

@@ -1213,4 +1201,2 @@ }

browserslist.versionAliases.op_mob['59'] = '58'
browserslist.nodeVersions = jsReleases.map(function (release) {

@@ -1217,0 +1203,0 @@ return release.version

{
"name": "browserslist",
"version": "4.21.8",
"version": "4.21.9",
"description": "Share target browsers between different front-end tools, like Autoprefixer, Stylelint and babel-env-preset",

@@ -28,4 +28,4 @@ "keywords": [

"dependencies": {
"caniuse-lite": "^1.0.30001502",
"electron-to-chromium": "^1.4.428",
"caniuse-lite": "^1.0.30001503",
"electron-to-chromium": "^1.4.431",
"node-releases": "^2.0.12",

@@ -32,0 +32,0 @@ "update-browserslist-db": "^1.0.11"

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc