Index: imaps-frontend/node_modules/axios/lib/adapters/http.js
===================================================================
--- imaps-frontend/node_modules/axios/lib/adapters/http.js	(revision d56544918790c0c3bc50f2f0a98c99f3d2988ccf)
+++ imaps-frontend/node_modules/axios/lib/adapters/http.js	(revision 0c6b92add4cfaedcb91bcd37b45849f142f7d152)
@@ -5,5 +5,5 @@
 import buildFullPath from '../core/buildFullPath.js';
 import buildURL from './../helpers/buildURL.js';
-import {getProxyForUrl} from 'proxy-from-env';
+import proxyFromEnv from 'proxy-from-env';
 import http from 'http';
 import https from 'https';
@@ -84,5 +84,5 @@
   let proxy = configProxy;
   if (!proxy && proxy !== false) {
-    const proxyUrl = getProxyForUrl(location);
+    const proxyUrl = proxyFromEnv.getProxyForUrl(location);
     if (proxyUrl) {
       proxy = new URL(proxyUrl);
@@ -315,5 +315,5 @@
         }
       }
-    } else if (utils.isBlob(data)) {
+    } else if (utils.isBlob(data) || utils.isFile(data)) {
       data.size && headers.setContentType(data.type || 'application/octet-stream');
       headers.setContentLength(data.size || 0);
@@ -570,5 +570,5 @@
 
           const err = new AxiosError(
-            'maxContentLength size of ' + config.maxContentLength + ' exceeded',
+            'stream has been aborted',
             AxiosError.ERR_BAD_RESPONSE,
             config,
Index: imaps-frontend/node_modules/axios/lib/core/Axios.js
===================================================================
--- imaps-frontend/node_modules/axios/lib/core/Axios.js	(revision d56544918790c0c3bc50f2f0a98c99f3d2988ccf)
+++ imaps-frontend/node_modules/axios/lib/core/Axios.js	(revision 0c6b92add4cfaedcb91bcd37b45849f142f7d152)
@@ -41,7 +41,7 @@
     } catch (err) {
       if (err instanceof Error) {
-        let dummy;
-
-        Error.captureStackTrace ? Error.captureStackTrace(dummy = {}) : (dummy = new Error());
+        let dummy = {};
+
+        Error.captureStackTrace ? Error.captureStackTrace(dummy) : (dummy = new Error());
 
         // slice off the Error: ... line
@@ -98,4 +98,9 @@
     }
 
+    validator.assertOptions(config, {
+      baseUrl: validators.spelling('baseURL'),
+      withXsrfToken: validators.spelling('withXSRFToken')
+    }, true);
+
     // Set config.method
     config.method = (config.method || this.defaults.method || 'get').toLowerCase();
Index: imaps-frontend/node_modules/axios/lib/core/mergeConfig.js
===================================================================
--- imaps-frontend/node_modules/axios/lib/core/mergeConfig.js	(revision d56544918790c0c3bc50f2f0a98c99f3d2988ccf)
+++ imaps-frontend/node_modules/axios/lib/core/mergeConfig.js	(revision 0c6b92add4cfaedcb91bcd37b45849f142f7d152)
@@ -20,5 +20,5 @@
   const config = {};
 
-  function getMergedValue(target, source, caseless) {
+  function getMergedValue(target, source, prop, caseless) {
     if (utils.isPlainObject(target) && utils.isPlainObject(source)) {
       return utils.merge.call({caseless}, target, source);
@@ -32,9 +32,9 @@
 
   // eslint-disable-next-line consistent-return
-  function mergeDeepProperties(a, b, caseless) {
+  function mergeDeepProperties(a, b, prop , caseless) {
     if (!utils.isUndefined(b)) {
-      return getMergedValue(a, b, caseless);
+      return getMergedValue(a, b, prop , caseless);
     } else if (!utils.isUndefined(a)) {
-      return getMergedValue(undefined, a, caseless);
+      return getMergedValue(undefined, a, prop , caseless);
     }
   }
@@ -94,5 +94,5 @@
     responseEncoding: defaultToConfig2,
     validateStatus: mergeDirectKeys,
-    headers: (a, b) => mergeDeepProperties(headersToObject(a), headersToObject(b), true)
+    headers: (a, b , prop) => mergeDeepProperties(headersToObject(a), headersToObject(b),prop, true)
   };
 
Index: imaps-frontend/node_modules/axios/lib/env/data.js
===================================================================
--- imaps-frontend/node_modules/axios/lib/env/data.js	(revision d56544918790c0c3bc50f2f0a98c99f3d2988ccf)
+++ imaps-frontend/node_modules/axios/lib/env/data.js	(revision 0c6b92add4cfaedcb91bcd37b45849f142f7d152)
@@ -1,1 +1,1 @@
-export const VERSION = "1.7.7";
+export const VERSION = "1.7.8";
Index: imaps-frontend/node_modules/axios/lib/helpers/buildURL.js
===================================================================
--- imaps-frontend/node_modules/axios/lib/helpers/buildURL.js	(revision d56544918790c0c3bc50f2f0a98c99f3d2988ccf)
+++ imaps-frontend/node_modules/axios/lib/helpers/buildURL.js	(revision 0c6b92add4cfaedcb91bcd37b45849f142f7d152)
@@ -27,5 +27,5 @@
  * @param {string} url The base of the url (e.g., http://www.google.com)
  * @param {object} [params] The params to be appended
- * @param {?object} options
+ * @param {?(object|Function)} options
  *
  * @returns {string} The formatted url
@@ -38,4 +38,10 @@
   
   const _encode = options && options.encode || encode;
+
+  if (utils.isFunction(options)) {
+    options = {
+      serialize: options
+    };
+  } 
 
   const serializeFn = options && options.serialize;
Index: imaps-frontend/node_modules/axios/lib/helpers/formDataToStream.js
===================================================================
--- imaps-frontend/node_modules/axios/lib/helpers/formDataToStream.js	(revision d56544918790c0c3bc50f2f0a98c99f3d2988ccf)
+++ imaps-frontend/node_modules/axios/lib/helpers/formDataToStream.js	(revision 0c6b92add4cfaedcb91bcd37b45849f142f7d152)
@@ -1,3 +1,3 @@
-import {TextEncoder} from 'util';
+import util from 'util';
 import {Readable} from 'stream';
 import utils from "../utils.js";
@@ -6,5 +6,5 @@
 const BOUNDARY_ALPHABET = utils.ALPHABET.ALPHA_DIGIT + '-_';
 
-const textEncoder = new TextEncoder();
+const textEncoder = typeof TextEncoder === 'function' ? new TextEncoder() : new util.TextEncoder();
 
 const CRLF = '\r\n';
Index: imaps-frontend/node_modules/axios/lib/helpers/isURLSameOrigin.js
===================================================================
--- imaps-frontend/node_modules/axios/lib/helpers/isURLSameOrigin.js	(revision d56544918790c0c3bc50f2f0a98c99f3d2988ccf)
+++ imaps-frontend/node_modules/axios/lib/helpers/isURLSameOrigin.js	(revision 0c6b92add4cfaedcb91bcd37b45849f142f7d152)
@@ -1,67 +1,14 @@
-'use strict';
-
-import utils from './../utils.js';
 import platform from '../platform/index.js';
 
-export default platform.hasStandardBrowserEnv ?
+export default platform.hasStandardBrowserEnv ? ((origin, isMSIE) => (url) => {
+  url = new URL(url, platform.origin);
 
-// Standard browser envs have full support of the APIs needed to test
-// whether the request URL is of the same origin as current location.
-  (function standardBrowserEnv() {
-    const msie = platform.navigator && /(msie|trident)/i.test(platform.navigator.userAgent);
-    const urlParsingNode = document.createElement('a');
-    let originURL;
-
-    /**
-    * Parse a URL to discover its components
-    *
-    * @param {String} url The URL to be parsed
-    * @returns {Object}
-    */
-    function resolveURL(url) {
-      let href = url;
-
-      if (msie) {
-        // IE needs attribute set twice to normalize properties
-        urlParsingNode.setAttribute('href', href);
-        href = urlParsingNode.href;
-      }
-
-      urlParsingNode.setAttribute('href', href);
-
-      // urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils
-      return {
-        href: urlParsingNode.href,
-        protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '',
-        host: urlParsingNode.host,
-        search: urlParsingNode.search ? urlParsingNode.search.replace(/^\?/, '') : '',
-        hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '',
-        hostname: urlParsingNode.hostname,
-        port: urlParsingNode.port,
-        pathname: (urlParsingNode.pathname.charAt(0) === '/') ?
-          urlParsingNode.pathname :
-          '/' + urlParsingNode.pathname
-      };
-    }
-
-    originURL = resolveURL(window.location.href);
-
-    /**
-    * Determine if a URL shares the same origin as the current location
-    *
-    * @param {String} requestURL The URL to test
-    * @returns {boolean} True if URL shares the same origin, otherwise false
-    */
-    return function isURLSameOrigin(requestURL) {
-      const parsed = (utils.isString(requestURL)) ? resolveURL(requestURL) : requestURL;
-      return (parsed.protocol === originURL.protocol &&
-          parsed.host === originURL.host);
-    };
-  })() :
-
-  // Non standard browser envs (web workers, react-native) lack needed support.
-  (function nonStandardBrowserEnv() {
-    return function isURLSameOrigin() {
-      return true;
-    };
-  })();
+  return (
+    origin.protocol === url.protocol &&
+    origin.host === url.host &&
+    (isMSIE || origin.port === url.port)
+  );
+})(
+  new URL(platform.origin),
+  platform.navigator && /(msie|trident)/i.test(platform.navigator.userAgent)
+) : () => true;
Index: imaps-frontend/node_modules/axios/lib/helpers/validator.js
===================================================================
--- imaps-frontend/node_modules/axios/lib/helpers/validator.js	(revision d56544918790c0c3bc50f2f0a98c99f3d2988ccf)
+++ imaps-frontend/node_modules/axios/lib/helpers/validator.js	(revision 0c6b92add4cfaedcb91bcd37b45849f142f7d152)
@@ -53,4 +53,12 @@
 };
 
+validators.spelling = function spelling(correctSpelling) {
+  return (value, opt) => {
+    // eslint-disable-next-line no-console
+    console.warn(`${opt} is likely a misspelling of ${correctSpelling}`);
+    return true;
+  }
+};
+
 /**
  * Assert object's properties type
