summaryrefslogtreecommitdiff
path: root/desktop/node_modules/axios/lib/platform/browser/index.js
diff options
context:
space:
mode:
Diffstat (limited to 'desktop/node_modules/axios/lib/platform/browser/index.js')
-rw-r--r--desktop/node_modules/axios/lib/platform/browser/index.js64
1 files changed, 64 insertions, 0 deletions
diff --git a/desktop/node_modules/axios/lib/platform/browser/index.js b/desktop/node_modules/axios/lib/platform/browser/index.js
new file mode 100644
index 0000000..4d2203f
--- /dev/null
+++ b/desktop/node_modules/axios/lib/platform/browser/index.js
@@ -0,0 +1,64 @@
+import URLSearchParams from './classes/URLSearchParams.js'
+import FormData from './classes/FormData.js'
+import Blob from './classes/Blob.js'
+
+/**
+ * Determine if we're running in a standard browser environment
+ *
+ * This allows axios to run in a web worker, and react-native.
+ * Both environments support XMLHttpRequest, but not fully standard globals.
+ *
+ * web workers:
+ * typeof window -> undefined
+ * typeof document -> undefined
+ *
+ * react-native:
+ * navigator.product -> 'ReactNative'
+ * nativescript
+ * navigator.product -> 'NativeScript' or 'NS'
+ *
+ * @returns {boolean}
+ */
+const isStandardBrowserEnv = (() => {
+ let product;
+ if (typeof navigator !== 'undefined' && (
+ (product = navigator.product) === 'ReactNative' ||
+ product === 'NativeScript' ||
+ product === 'NS')
+ ) {
+ return false;
+ }
+
+ return typeof window !== 'undefined' && typeof document !== 'undefined';
+})();
+
+/**
+ * Determine if we're running in a standard browser webWorker environment
+ *
+ * Although the `isStandardBrowserEnv` method indicates that
+ * `allows axios to run in a web worker`, the WebWorker will still be
+ * filtered out due to its judgment standard
+ * `typeof window !== 'undefined' && typeof document !== 'undefined'`.
+ * This leads to a problem when axios post `FormData` in webWorker
+ */
+ const isStandardBrowserWebWorkerEnv = (() => {
+ return (
+ typeof WorkerGlobalScope !== 'undefined' &&
+ // eslint-disable-next-line no-undef
+ self instanceof WorkerGlobalScope &&
+ typeof self.importScripts === 'function'
+ );
+})();
+
+
+export default {
+ isBrowser: true,
+ classes: {
+ URLSearchParams,
+ FormData,
+ Blob
+ },
+ isStandardBrowserEnv,
+ isStandardBrowserWebWorkerEnv,
+ protocols: ['http', 'https', 'file', 'blob', 'url', 'data']
+};