Index: imaps-frontend/node_modules/browserslist/browser.js
===================================================================
--- imaps-frontend/node_modules/browserslist/browser.js	(revision d56544918790c0c3bc50f2f0a98c99f3d2988ccf)
+++ imaps-frontend/node_modules/browserslist/browser.js	(revision 0c6b92add4cfaedcb91bcd37b45849f142f7d152)
@@ -45,4 +45,6 @@
   findConfig: noop,
 
+  findConfigFile: noop,
+
   clearCaches: noop,
 
Index: imaps-frontend/node_modules/browserslist/cli.js
===================================================================
--- imaps-frontend/node_modules/browserslist/cli.js	(revision d56544918790c0c3bc50f2f0a98c99f3d2988ccf)
+++ imaps-frontend/node_modules/browserslist/cli.js	(revision 0c6b92add4cfaedcb91bcd37b45849f142f7d152)
@@ -1,6 +1,6 @@
 #!/usr/bin/env node
 
+var fs = require('fs')
 var updateDb = require('update-browserslist-db')
-var fs = require('fs')
 
 var browserslist = require('./')
Index: imaps-frontend/node_modules/browserslist/index.d.ts
===================================================================
--- imaps-frontend/node_modules/browserslist/index.d.ts	(revision d56544918790c0c3bc50f2f0a98c99f3d2988ccf)
+++ imaps-frontend/node_modules/browserslist/index.d.ts	(revision 0c6b92add4cfaedcb91bcd37b45849f142f7d152)
@@ -167,4 +167,15 @@
   ): Query[]
 
+  /**
+   * Return queries for specific file inside the project.
+   *
+   * ```js
+   * browserslist.loadConfig({
+   *   file: process.cwd()
+   * }) ?? browserslist.defaults
+   * ```
+   */
+  function loadConfig(options: LoadConfigOptions): string[] | undefined
+
   function clearCaches(): void
 
@@ -175,11 +186,23 @@
   function findConfig(...pathSegments: string[]): Config | undefined
 
+  function findConfigFile(...pathSegments: string[]): string | undefined
+
   interface LoadConfigOptions {
+    /**
+     * Path to config file
+     * */
     config?: string
+
+    /**
+     * Path to file inside the project to find Browserslist config
+     * in closest folder
+     */
     path?: string
+
+    /**
+     * Environment to choose part of config.
+     */
     env?: string
   }
-
-  function loadConfig(options: LoadConfigOptions): string[] | undefined
 }
 
Index: imaps-frontend/node_modules/browserslist/index.js
===================================================================
--- imaps-frontend/node_modules/browserslist/index.js	(revision d56544918790c0c3bc50f2f0a98c99f3d2988ccf)
+++ imaps-frontend/node_modules/browserslist/index.js	(revision 0c6b92add4cfaedcb91bcd37b45849f142f7d152)
@@ -1,11 +1,11 @@
 var jsReleases = require('node-releases/data/processed/envs.json')
 var agents = require('caniuse-lite/dist/unpacker/agents').agents
+var e2c = require('electron-to-chromium/versions')
 var jsEOL = require('node-releases/data/release-schedule/release-schedule.json')
 var path = require('path')
-var e2c = require('electron-to-chromium/versions')
 
 var BrowserslistError = require('./error')
-var parse = require('./parse')
-var env = require('./node') // Will load browser.js in webpack
+var env = require('./node')
+var parse = require('./parse') // Will load browser.js in webpack
 
 var YEAR = 365.259641 * 24 * 60 * 60 * 1000
@@ -492,4 +492,5 @@
 browserslist.parseConfig = env.parseConfig
 browserslist.readConfig = env.readConfig
+browserslist.findConfigFile = env.findConfigFile
 browserslist.findConfig = env.findConfig
 browserslist.loadConfig = env.loadConfig
Index: imaps-frontend/node_modules/browserslist/node.js
===================================================================
--- imaps-frontend/node_modules/browserslist/node.js	(revision d56544918790c0c3bc50f2f0a98c99f3d2988ccf)
+++ imaps-frontend/node_modules/browserslist/node.js	(revision 0c6b92add4cfaedcb91bcd37b45849f142f7d152)
@@ -1,6 +1,6 @@
 var feature = require('caniuse-lite/dist/unpacker/feature').default
 var region = require('caniuse-lite/dist/unpacker/region').default
+var fs = require('fs')
 var path = require('path')
-var fs = require('fs')
 
 var BrowserslistError = require('./error')
@@ -9,5 +9,4 @@
 var CONFIG_PATTERN = /^browserslist-config-/
 var SCOPED_CONFIG__PATTERN = /@[^/]+(?:\/[^/]+)?\/browserslist-config(?:-|$|\/)/
-var TIME_TO_UPDATE_CANIUSE = 6 * 30 * 24 * 60 * 60 * 1000
 var FORMAT =
   'Browserslist config should be a string or an array ' +
@@ -127,4 +126,12 @@
 }
 
+function parsePackageOrReadConfig(file) {
+  if (path.basename(file) === 'package.json') {
+    return parsePackage(file)
+  } else {
+    return module.exports.readConfig(file)
+  }
+}
+
 function latestReleaseTime(agents) {
   var latest = 0
@@ -138,4 +145,14 @@
   }
   return latest * 1000
+}
+
+function getMonthsPassed(date) {
+  var now = new Date()
+  var past = new Date(date)
+
+  var years = now.getFullYear() - past.getFullYear()
+  var months = now.getMonth() - past.getMonth()
+
+  return years * 12 + months
 }
 
@@ -238,9 +255,5 @@
     } else if (opts.config || process.env.BROWSERSLIST_CONFIG) {
       var file = opts.config || process.env.BROWSERSLIST_CONFIG
-      if (path.basename(file) === 'package.json') {
-        return pickEnv(parsePackage(file), opts)
-      } else {
-        return pickEnv(module.exports.readConfig(file), opts)
-      }
+      return pickEnv(parsePackageOrReadConfig(file), opts)
     } else if (opts.path) {
       return pickEnv(module.exports.findConfig(opts.path), opts)
@@ -331,15 +344,6 @@
   },
 
-  findConfig: function findConfig(from) {
-    from = path.resolve(from)
-
-    var passed = []
+  findConfigFile: function findConfigFile(from) {
     var resolved = eachParent(from, function (dir) {
-      if (dir in configCache) {
-        return configCache[dir]
-      }
-
-      passed.push(dir)
-
       var config = path.join(dir, 'browserslist')
       var pkg = path.join(dir, 'package.json')
@@ -371,14 +375,36 @@
         )
       } else if (isFile(config)) {
-        return module.exports.readConfig(config)
+        return config
       } else if (isFile(rc)) {
-        return module.exports.readConfig(rc)
-      } else {
-        return pkgBrowserslist
+        return rc
+      } else if (pkgBrowserslist) {
+        return pkg
       }
     })
+
+    return resolved
+  },
+
+  findConfig: function findConfig(from) {
+    from = path.resolve(from)
+
+    var fromDir = isFile(from) ? path.dirname(from) : from
+    if (fromDir in configCache) {
+      return configCache[fromDir]
+    }
+
+    var resolved
+    var configFile = this.findConfigFile(from)
+    if (configFile) {
+      resolved = parsePackageOrReadConfig(configFile)
+    }
+
     if (!process.env.BROWSERSLIST_DISABLE_CACHE) {
-      passed.forEach(function (dir) {
+      var configDir = configFile && path.dirname(configFile)
+      eachParent(from, function (dir) {
         configCache[dir] = resolved
+        if (dir === configDir) {
+          return null
+        }
       })
     }
@@ -400,9 +426,12 @@
 
     var latest = latestReleaseTime(agentsObj)
-    var halfYearAgo = Date.now() - TIME_TO_UPDATE_CANIUSE
-
-    if (latest !== 0 && latest < halfYearAgo) {
+    var monthsPassed = getMonthsPassed(latest)
+
+    if (latest !== 0 && monthsPassed >= 6) {
+      var months = monthsPassed + ' ' + (monthsPassed > 1 ? 'months' : 'month')
       console.warn(
-        'Browserslist: caniuse-lite is outdated. Please run:\n' +
+        'Browserslist: browsers data (caniuse-lite) is ' +
+          months +
+          ' old. Please run:\n' +
           '  npx update-browserslist-db@latest\n' +
           '  Why you should do it regularly: ' +
Index: imaps-frontend/node_modules/browserslist/package.json
===================================================================
--- imaps-frontend/node_modules/browserslist/package.json	(revision d56544918790c0c3bc50f2f0a98c99f3d2988ccf)
+++ imaps-frontend/node_modules/browserslist/package.json	(revision 0c6b92add4cfaedcb91bcd37b45849f142f7d152)
@@ -1,5 +1,5 @@
 {
   "name": "browserslist",
-  "version": "4.23.3",
+  "version": "4.24.2",
   "description": "Share target browsers between different front-end tools, like Autoprefixer, Stylelint and babel-env-preset",
   "keywords": [
@@ -26,8 +26,8 @@
   "repository": "browserslist/browserslist",
   "dependencies": {
-    "caniuse-lite": "^1.0.30001646",
-    "electron-to-chromium": "^1.5.4",
+    "caniuse-lite": "^1.0.30001669",
+    "electron-to-chromium": "^1.5.41",
     "node-releases": "^2.0.18",
-    "update-browserslist-db": "^1.1.0"
+    "update-browserslist-db": "^1.1.1"
   },
   "engines": {
Index: imaps-frontend/node_modules/browserslist/parse.js
===================================================================
--- imaps-frontend/node_modules/browserslist/parse.js	(revision d56544918790c0c3bc50f2f0a98c99f3d2988ccf)
+++ imaps-frontend/node_modules/browserslist/parse.js	(revision 0c6b92add4cfaedcb91bcd37b45849f142f7d152)
@@ -10,5 +10,5 @@
 
 function find(string, predicate) {
-  for (var n = 1, max = string.length; n <= max; n++) {
+  for (var max = string.length, n = 1; n <= max; n++) {
     var parsed = string.substr(-n, n)
     if (predicate(parsed, n, max)) {
