browserslist
Advanced tools
+0
-1
@@ -41,3 +41,2 @@ #!/usr/bin/env node | ||
| } else if (isArg('--update-db')) { | ||
| /* c8 ignore next 8 */ | ||
| process.stdout.write( | ||
@@ -44,0 +43,0 @@ 'The --update-db command is deprecated.\n' + |
+5
-31
@@ -10,3 +10,3 @@ var bbm = require('baseline-browser-mapping') | ||
| var env = require('./node') | ||
| var parseWithoutCache = require('./parse') // Will load browser.js in webpack | ||
| var parseWithoutCache = require('./parse') | ||
@@ -18,3 +18,2 @@ var YEAR = 365.259641 * 24 * 60 * 60 * 1000 | ||
| // Helpers | ||
@@ -155,3 +154,2 @@ function isVersionsMatch(versionA, versionB) { | ||
| // this follows the npm-like semver behavior | ||
| function semverFilterLoose(operator, range) { | ||
@@ -162,4 +160,2 @@ range = range.split('.').map(parseSimpleInt) | ||
| } | ||
| // ignore any patch version because we only return minor versions | ||
| // range[2] = 'x' | ||
| switch (operator) { | ||
@@ -180,3 +176,2 @@ case '<=': | ||
| // this follows the npm-like semver behavior | ||
| function compareSemverLoose(version, range) { | ||
@@ -302,4 +297,2 @@ if (version[0] !== range[0]) { | ||
| // 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) { | ||
@@ -427,3 +420,2 @@ var jump = 1 | ||
| } | ||
| // Removing to avoid using context.path without marking query as needsPath | ||
| if (needsPath) { | ||
@@ -449,5 +441,2 @@ context.path = opts.path | ||
| if (name1[0] === name2[0]) { | ||
| // assumptions on caniuse data | ||
| // 1) version ranges never overlaps | ||
| // 2) if version is not a range, it never contains `-` | ||
| var version1 = name1[1].split('-')[0] | ||
@@ -497,3 +486,2 @@ var version2 = name2[1].split('-')[0] | ||
| // Will be filled by Can I Use data below | ||
| browserslist.cache = {} | ||
@@ -506,6 +494,4 @@ browserslist.data = {} | ||
| // Default browsers query | ||
| browserslist.defaults = ['> 0.5%', 'last 2 versions', 'Firefox ESR', 'not dead'] | ||
| // Browser names aliases | ||
| browserslist.aliases = { | ||
@@ -526,5 +512,2 @@ fx: 'firefox', | ||
| // Can I Use only provides a few versions for some browsers (e.g. and_chr). | ||
| // 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 = { | ||
@@ -534,6 +517,5 @@ and_chr: 'chrome', | ||
| ie_mob: 'ie', | ||
| android: 'chrome' // has extra processing logic | ||
| android: 'chrome' | ||
| } | ||
| // Aliases to work with joined versions like `ios_saf 7.0-7.1` | ||
| browserslist.versionAliases = {} | ||
@@ -831,9 +813,2 @@ | ||
| matches: ['year', 'availability', 'date', 'downstream', 'kaios'], | ||
| // Matches: | ||
| // baseline 2024 | ||
| // baseline newly available | ||
| // baseline widely available | ||
| // baseline widely available on 2024-06-01 | ||
| // ...with downstream | ||
| // ...including kaios | ||
| regexp: | ||
@@ -845,3 +820,4 @@ /^baseline\s+(?:(\d+)|(newly|widely)\s+available(?:\s+on\s+(\d{4}-\d{2}-\d{2}))?)?(\s+with\s+downstream)?(\s+including\s+kaios)?$/i, | ||
| var includeKaiOS = !!node.kaios | ||
| if (node.availability === 'newly' && node.date) { | ||
| var availability = node.availability && node.availability.toLowerCase() | ||
| if (availability === 'newly' && node.date) { | ||
| throw new BrowserslistError( | ||
@@ -865,3 +841,3 @@ 'Using newly available with a date is not supported, please use "widely available on YYYY-MM-DD" and add 30 months to the date you specified.' | ||
| }) | ||
| } else if (node.availability === 'newly') { | ||
| } else if (availability === 'newly') { | ||
| var future30months = new Date().setMonth(new Date().getMonth() + 30) | ||
@@ -1038,3 +1014,2 @@ baselineVersions = bbm.getCompatibleVersions({ | ||
| var data = byName(name, context) | ||
| // Only check desktop when latest released mobile has support | ||
| var iMax = data.released.length - 1 | ||
@@ -1321,3 +1296,2 @@ while (iMax >= 0) { | ||
| // Get and convert Can I Use data | ||
@@ -1324,0 +1298,0 @@ ;(function () { |
+2
-7
@@ -30,3 +30,3 @@ var feature = require('caniuse-lite/dist/unpacker/feature').default | ||
| } | ||
| if (name.replace(/^@[^/]+\//, '').indexOf('.') !== -1) { | ||
| if (name.replace(/^@[^/]+\ | ||
| throw new BrowserslistError( | ||
@@ -48,3 +48,2 @@ '`.` not allowed in Browserslist config name. ' + use | ||
| } catch (err) { | ||
| /* c8 ignore start */ | ||
| if ( | ||
@@ -57,3 +56,2 @@ err.code !== 'ENOENT' && | ||
| } | ||
| /* c8 ignore end */ | ||
| } | ||
@@ -245,4 +243,2 @@ | ||
| var browserUsage = usageData[browser] | ||
| // https://github.com/browserslist/browserslist/issues/431#issuecomment-565230615 | ||
| // caniuse-db returns { 0: "percentage" } for `and_*` regional stats | ||
| if ('0' in browserUsage) { | ||
@@ -286,3 +282,2 @@ var versions = data[browser].versions | ||
| var stats = require( | ||
| // Use forward slashes for module paths, also on Windows. | ||
| require.resolve(path.posix.join(name, 'browserslist-stats.json'), { | ||
@@ -345,3 +340,3 @@ paths: ['.'] | ||
| normalizeUsageData(usageData, data) | ||
| usage[country] = {} | ||
| usage[country] = Object.create(null) | ||
| for (var i in usageData) { | ||
@@ -348,0 +343,0 @@ for (var j in usageData[i]) { |
+5
-5
| { | ||
| "name": "browserslist", | ||
| "version": "4.28.2", | ||
| "version": "4.28.3", | ||
| "description": "Share target browsers between different front-end tools, like Autoprefixer, Stylelint and babel-env-preset", | ||
@@ -36,6 +36,6 @@ "keywords": [ | ||
| "dependencies": { | ||
| "baseline-browser-mapping": "^2.10.12", | ||
| "caniuse-lite": "^1.0.30001782", | ||
| "electron-to-chromium": "^1.5.328", | ||
| "node-releases": "^2.0.36", | ||
| "baseline-browser-mapping": "^2.10.38", | ||
| "caniuse-lite": "^1.0.30001799", | ||
| "electron-to-chromium": "^1.5.376", | ||
| "node-releases": "^2.0.48", | ||
| "update-browserslist-db": "^1.2.3" | ||
@@ -42,0 +42,0 @@ }, |
+0
-3
@@ -62,4 +62,1 @@ # Browserslist | ||
| [Babel]: https://github.com/babel/babel/tree/master/packages/babel-preset-env | ||
| ## Docs | ||
| Read full docs **[here](https://github.com/browserslist/browserslist#readme)**. |
67353
-2.35%2140
-1.47%62
-4.62%Updated
Updated