browserslist 4.24.0 → 4.24.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/index.d.ts +23 -2
  2. package/node.js +16 -4
  3. package/package.json +4 -4
package/index.d.ts CHANGED
@@ -166,6 +166,17 @@ declare namespace browserslist {
166
166
  opts?: browserslist.Options
167
167
  ): Query[]
168
168
 
169
+ /**
170
+ * Return queries for specific file inside the project.
171
+ *
172
+ * ```js
173
+ * browserslist.loadConfig({
174
+ * file: process.cwd()
175
+ * }) ?? browserslist.defaults
176
+ * ```
177
+ */
178
+ function loadConfig(options: LoadConfigOptions): string[] | undefined
179
+
169
180
  function clearCaches(): void
170
181
 
171
182
  function parseConfig(string: string): Config
@@ -177,12 +188,22 @@ declare namespace browserslist {
177
188
  function findConfigFile(...pathSegments: string[]): string | undefined
178
189
 
179
190
  interface LoadConfigOptions {
191
+ /**
192
+ * Path to config file
193
+ * */
180
194
  config?: string
195
+
196
+ /**
197
+ * Path to file inside the project to find Browserslist config
198
+ * in closest folder
199
+ */
181
200
  path?: string
201
+
202
+ /**
203
+ * Environment to choose part of config.
204
+ */
182
205
  env?: string
183
206
  }
184
-
185
- function loadConfig(options: LoadConfigOptions): string[] | undefined
186
207
  }
187
208
 
188
209
  declare global {
package/node.js CHANGED
@@ -8,7 +8,6 @@ var BrowserslistError = require('./error')
8
8
  var IS_SECTION = /^\s*\[(.+)]\s*$/
9
9
  var CONFIG_PATTERN = /^browserslist-config-/
10
10
  var SCOPED_CONFIG__PATTERN = /@[^/]+(?:\/[^/]+)?\/browserslist-config(?:-|$|\/)/
11
- var TIME_TO_UPDATE_CANIUSE = 6 * 30 * 24 * 60 * 60 * 1000
12
11
  var FORMAT =
13
12
  'Browserslist config should be a string or an array ' +
14
13
  'of strings with browser queries'
@@ -147,6 +146,16 @@ function latestReleaseTime(agents) {
147
146
  return latest * 1000
148
147
  }
149
148
 
149
+ function getMonthsPassed(date) {
150
+ var now = new Date()
151
+ var past = new Date(date)
152
+
153
+ var years = now.getFullYear() - past.getFullYear()
154
+ var months = now.getMonth() - past.getMonth()
155
+
156
+ return years * 12 + months
157
+ }
158
+
150
159
  function normalizeStats(data, stats) {
151
160
  if (!data) {
152
161
  data = {}
@@ -416,11 +425,14 @@ module.exports = {
416
425
  if (process.env.BROWSERSLIST_IGNORE_OLD_DATA) return
417
426
 
418
427
  var latest = latestReleaseTime(agentsObj)
419
- var halfYearAgo = Date.now() - TIME_TO_UPDATE_CANIUSE
428
+ var monthsPassed = getMonthsPassed(latest)
420
429
 
421
- if (latest !== 0 && latest < halfYearAgo) {
430
+ if (latest !== 0 && monthsPassed >= 6) {
431
+ var months = monthsPassed + ' ' + (monthsPassed > 1 ? 'months' : 'month')
422
432
  console.warn(
423
- 'Browserslist: caniuse-lite is outdated. Please run:\n' +
433
+ 'Browserslist: browsers data (caniuse-lite) is ' +
434
+ months +
435
+ ' old. Please run:\n' +
424
436
  ' npx update-browserslist-db@latest\n' +
425
437
  ' Why you should do it regularly: ' +
426
438
  'https://github.com/browserslist/update-db#readme'
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "browserslist",
3
- "version": "4.24.0",
3
+ "version": "4.24.2",
4
4
  "description": "Share target browsers between different front-end tools, like Autoprefixer, Stylelint and babel-env-preset",
5
5
  "keywords": [
6
6
  "caniuse",
@@ -25,10 +25,10 @@
25
25
  "license": "MIT",
26
26
  "repository": "browserslist/browserslist",
27
27
  "dependencies": {
28
- "caniuse-lite": "^1.0.30001663",
29
- "electron-to-chromium": "^1.5.28",
28
+ "caniuse-lite": "^1.0.30001669",
29
+ "electron-to-chromium": "^1.5.41",
30
30
  "node-releases": "^2.0.18",
31
- "update-browserslist-db": "^1.1.0"
31
+ "update-browserslist-db": "^1.1.1"
32
32
  },
33
33
  "engines": {
34
34
  "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"