Socket
Socket
Sign inDemoInstall

@braintree/browser-detection

Package Overview
Dependencies
0
Maintainers
1
Versions
19
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 1.16.0 to 1.17.0

dist/is-safari.d.ts

53

dist/browser-detection.d.ts

@@ -1,26 +0,27 @@

import isAndroid = require("./is-android");
import isChromeOS = require("./is-chrome-os");
import isChrome = require("./is-chrome");
import isDuckDuckGo = require("./is-duckduckgo");
import isIe = require("./is-ie");
import isIe9 = require("./is-ie9");
import isIe10 = require("./is-ie10");
import isIe11 = require("./is-ie11");
import isEdge = require("./is-edge");
import isFirefox = require("./is-firefox");
import isIos = require("./is-ios");
import isIosFirefox = require("./is-ios-firefox");
import isIosGoogleSearchApp = require("./is-ios-google-search-app");
import isIosSafari = require("./is-ios-safari");
import isIosUIWebview = require("./is-ios-uiwebview");
import isIosWebview = require("./is-ios-webview");
import isIosWKWebview = require("./is-ios-wkwebview");
import isIpadOS = require("./is-ipados");
import isMobileFirefox = require("./is-mobile-firefox");
import isOpera = require("./is-opera");
import isSamsungBrowser = require("./is-samsung");
import isSilk = require("./is-silk");
import hasSoftwareKeyboard = require("./has-software-keyboard");
import supportsPopups = require("./supports-popups");
import supportsPaymentRequestApi = require("./supports-payment-request-api");
export { isAndroid, isChromeOS, isChrome, isDuckDuckGo, isIe, isIe9, isIe10, isIe11, isEdge, isFirefox, isIos, isIosFirefox, isIosGoogleSearchApp, isIosSafari, isIosUIWebview, isIosWebview, isIosWKWebview, isIpadOS, isMobileFirefox, isOpera, isSamsungBrowser, isSilk, hasSoftwareKeyboard, supportsPopups, supportsPaymentRequestApi, };
import isAndroid from "./is-android";
import isChromeOS from "./is-chrome-os";
import isChrome from "./is-chrome";
import isDuckDuckGo from "./is-duckduckgo";
import isIe from "./is-ie";
import isIe9 from "./is-ie9";
import isIe10 from "./is-ie10";
import isIe11 from "./is-ie11";
import isEdge from "./is-edge";
import isFirefox from "./is-firefox";
import isIos from "./is-ios";
import isIosFirefox from "./is-ios-firefox";
import isIosGoogleSearchApp from "./is-ios-google-search-app";
import isSafari from "./is-safari";
import isIosSafari from "./is-ios-safari";
import isIosUIWebview from "./is-ios-uiwebview";
import isIosWebview from "./is-ios-webview";
import isIosWKWebview from "./is-ios-wkwebview";
import isIpadOS from "./is-ipados";
import isMobileFirefox from "./is-mobile-firefox";
import isOpera from "./is-opera";
import isSamsungBrowser from "./is-samsung";
import isSilk from "./is-silk";
import hasSoftwareKeyboard from "./has-software-keyboard";
import supportsPopups from "./supports-popups";
import supportsPaymentRequestApi from "./supports-payment-request-api";
export { isAndroid, isChromeOS, isChrome, isDuckDuckGo, isIe, isIe9, isIe10, isIe11, isEdge, isFirefox, isIos, isIosFirefox, isIosGoogleSearchApp, isSafari, isIosSafari, isIosUIWebview, isIosWebview, isIosWKWebview, isIpadOS, isMobileFirefox, isOpera, isSamsungBrowser, isSilk, hasSoftwareKeyboard, supportsPopups, supportsPaymentRequestApi, };
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.supportsPaymentRequestApi = exports.supportsPopups = exports.hasSoftwareKeyboard = exports.isSilk = exports.isSamsungBrowser = exports.isOpera = exports.isMobileFirefox = exports.isIpadOS = exports.isIosWKWebview = exports.isIosWebview = exports.isIosUIWebview = exports.isIosSafari = exports.isIosGoogleSearchApp = exports.isIosFirefox = exports.isIos = exports.isFirefox = exports.isEdge = exports.isIe11 = exports.isIe10 = exports.isIe9 = exports.isIe = exports.isDuckDuckGo = exports.isChrome = exports.isChromeOS = exports.isAndroid = void 0;
var isAndroid = require("./is-android");
exports.isAndroid = isAndroid;
var isChromeOS = require("./is-chrome-os");
exports.isChromeOS = isChromeOS;
var isChrome = require("./is-chrome");
exports.isChrome = isChrome;
var isDuckDuckGo = require("./is-duckduckgo");
exports.isDuckDuckGo = isDuckDuckGo;
var isIe = require("./is-ie");
exports.isIe = isIe;
var isIe9 = require("./is-ie9");
exports.isIe9 = isIe9;
var isIe10 = require("./is-ie10");
exports.isIe10 = isIe10;
var isIe11 = require("./is-ie11");
exports.isIe11 = isIe11;
var isEdge = require("./is-edge");
exports.isEdge = isEdge;
var isFirefox = require("./is-firefox");
exports.isFirefox = isFirefox;
var isIos = require("./is-ios");
exports.isIos = isIos;
var isIosFirefox = require("./is-ios-firefox");
exports.isIosFirefox = isIosFirefox;
var isIosGoogleSearchApp = require("./is-ios-google-search-app");
exports.isIosGoogleSearchApp = isIosGoogleSearchApp;
var isIosSafari = require("./is-ios-safari");
exports.isIosSafari = isIosSafari;
var isIosUIWebview = require("./is-ios-uiwebview");
exports.isIosUIWebview = isIosUIWebview;
var isIosWebview = require("./is-ios-webview");
exports.isIosWebview = isIosWebview;
var isIosWKWebview = require("./is-ios-wkwebview");
exports.isIosWKWebview = isIosWKWebview;
var isIpadOS = require("./is-ipados");
exports.isIpadOS = isIpadOS;
var isMobileFirefox = require("./is-mobile-firefox");
exports.isMobileFirefox = isMobileFirefox;
var isOpera = require("./is-opera");
exports.isOpera = isOpera;
var isSamsungBrowser = require("./is-samsung");
exports.isSamsungBrowser = isSamsungBrowser;
var isSilk = require("./is-silk");
exports.isSilk = isSilk;
var hasSoftwareKeyboard = require("./has-software-keyboard");
exports.hasSoftwareKeyboard = hasSoftwareKeyboard;
var supportsPopups = require("./supports-popups");
exports.supportsPopups = supportsPopups;
var supportsPaymentRequestApi = require("./supports-payment-request-api");
exports.supportsPaymentRequestApi = supportsPaymentRequestApi;
exports.supportsPaymentRequestApi = exports.supportsPopups = exports.hasSoftwareKeyboard = exports.isSilk = exports.isSamsungBrowser = exports.isOpera = exports.isMobileFirefox = exports.isIpadOS = exports.isIosWKWebview = exports.isIosWebview = exports.isIosUIWebview = exports.isIosSafari = exports.isSafari = exports.isIosGoogleSearchApp = exports.isIosFirefox = exports.isIos = exports.isFirefox = exports.isEdge = exports.isIe11 = exports.isIe10 = exports.isIe9 = exports.isIe = exports.isDuckDuckGo = exports.isChrome = exports.isChromeOS = exports.isAndroid = void 0;
var is_android_1 = require("./is-android");
exports.isAndroid = is_android_1.default;
var is_chrome_os_1 = require("./is-chrome-os");
exports.isChromeOS = is_chrome_os_1.default;
var is_chrome_1 = require("./is-chrome");
exports.isChrome = is_chrome_1.default;
var is_duckduckgo_1 = require("./is-duckduckgo");
exports.isDuckDuckGo = is_duckduckgo_1.default;
var is_ie_1 = require("./is-ie");
exports.isIe = is_ie_1.default;
var is_ie9_1 = require("./is-ie9");
exports.isIe9 = is_ie9_1.default;
var is_ie10_1 = require("./is-ie10");
exports.isIe10 = is_ie10_1.default;
var is_ie11_1 = require("./is-ie11");
exports.isIe11 = is_ie11_1.default;
var is_edge_1 = require("./is-edge");
exports.isEdge = is_edge_1.default;
var is_firefox_1 = require("./is-firefox");
exports.isFirefox = is_firefox_1.default;
var is_ios_1 = require("./is-ios");
exports.isIos = is_ios_1.default;
var is_ios_firefox_1 = require("./is-ios-firefox");
exports.isIosFirefox = is_ios_firefox_1.default;
var is_ios_google_search_app_1 = require("./is-ios-google-search-app");
exports.isIosGoogleSearchApp = is_ios_google_search_app_1.default;
var is_safari_1 = require("./is-safari");
exports.isSafari = is_safari_1.default;
var is_ios_safari_1 = require("./is-ios-safari");
exports.isIosSafari = is_ios_safari_1.default;
var is_ios_uiwebview_1 = require("./is-ios-uiwebview");
exports.isIosUIWebview = is_ios_uiwebview_1.default;
var is_ios_webview_1 = require("./is-ios-webview");
exports.isIosWebview = is_ios_webview_1.default;
var is_ios_wkwebview_1 = require("./is-ios-wkwebview");
exports.isIosWKWebview = is_ios_wkwebview_1.default;
var is_ipados_1 = require("./is-ipados");
exports.isIpadOS = is_ipados_1.default;
var is_mobile_firefox_1 = require("./is-mobile-firefox");
exports.isMobileFirefox = is_mobile_firefox_1.default;
var is_opera_1 = require("./is-opera");
exports.isOpera = is_opera_1.default;
var is_samsung_1 = require("./is-samsung");
exports.isSamsungBrowser = is_samsung_1.default;
var is_silk_1 = require("./is-silk");
exports.isSilk = is_silk_1.default;
var has_software_keyboard_1 = require("./has-software-keyboard");
exports.hasSoftwareKeyboard = has_software_keyboard_1.default;
var supports_popups_1 = require("./supports-popups");
exports.supportsPopups = supports_popups_1.default;
var supports_payment_request_api_1 = require("./supports-payment-request-api");
exports.supportsPaymentRequestApi = supports_payment_request_api_1.default;

@@ -1,2 +0,2 @@

declare const _default: () => boolean;
export = _default;
declare function hasSoftwareKeyboard(): boolean;
export default hasSoftwareKeyboard;
"use strict";
var isAndroid = require("./is-android");
var isChromeOS = require("./is-chrome-os");
var isIos = require("./is-ios");
module.exports = function hasSoftwareKeyboard() {
return isAndroid() || isChromeOS() || isIos();
};
Object.defineProperty(exports, "__esModule", { value: true });
var is_android_1 = require("./is-android");
var is_chrome_os_1 = require("./is-chrome-os");
var is_ios_1 = require("./is-ios");
function hasSoftwareKeyboard() {
return (0, is_android_1.default)() || (0, is_chrome_os_1.default)() || (0, is_ios_1.default)();
}
exports.default = hasSoftwareKeyboard;

@@ -1,2 +0,2 @@

declare const _default: (ua?: string) => boolean;
export = _default;
declare function isAndroid(ua?: string): boolean;
export default isAndroid;
"use strict";
module.exports = function isAndroid(ua) {
Object.defineProperty(exports, "__esModule", { value: true });
function isAndroid(ua) {
ua = ua || window.navigator.userAgent;
return /Android/i.test(ua);
};
}
exports.default = isAndroid;

@@ -1,2 +0,2 @@

declare const _default: (ua?: string) => boolean;
export = _default;
declare function isChromeOS(ua?: string): boolean;
export default isChromeOS;
"use strict";
module.exports = function isChromeOS(ua) {
Object.defineProperty(exports, "__esModule", { value: true });
function isChromeOS(ua) {
ua = ua || window.navigator.userAgent;
return /CrOS/i.test(ua);
};
}
exports.default = isChromeOS;

@@ -1,2 +0,2 @@

declare const _default: (ua?: string) => boolean;
export = _default;
declare function isChrome(ua?: string): boolean;
export default isChrome;
"use strict";
var isEdge = require("./is-edge");
var isSamsung = require("./is-samsung");
var isDuckDuckGo = require("./is-duckduckgo");
var isOpera = require("./is-opera");
var isSilk = require("./is-silk");
module.exports = function isChrome(ua) {
Object.defineProperty(exports, "__esModule", { value: true });
var is_edge_1 = require("./is-edge");
var is_samsung_1 = require("./is-samsung");
var is_duckduckgo_1 = require("./is-duckduckgo");
var is_opera_1 = require("./is-opera");
var is_silk_1 = require("./is-silk");
function isChrome(ua) {
ua = ua || window.navigator.userAgent;
return ((ua.indexOf("Chrome") !== -1 || ua.indexOf("CriOS") !== -1) &&
!isEdge(ua) &&
!isSamsung(ua) &&
!isDuckDuckGo(ua) &&
!isOpera(ua) &&
!isSilk(ua));
};
!(0, is_edge_1.default)(ua) &&
!(0, is_samsung_1.default)(ua) &&
!(0, is_duckduckgo_1.default)(ua) &&
!(0, is_opera_1.default)(ua) &&
!(0, is_silk_1.default)(ua));
}
exports.default = isChrome;

@@ -1,2 +0,2 @@

declare const _default: (ua?: string) => boolean;
export = _default;
declare function isDuckDuckGo(ua?: string): boolean;
export default isDuckDuckGo;
"use strict";
module.exports = function isDuckDuckGo(ua) {
Object.defineProperty(exports, "__esModule", { value: true });
function isDuckDuckGo(ua) {
ua = ua || window.navigator.userAgent;
return ua.indexOf("DuckDuckGo/") !== -1;
};
}
exports.default = isDuckDuckGo;

@@ -1,2 +0,2 @@

declare const _default: (ua?: string) => boolean;
export = _default;
declare function isEdge(ua?: string): boolean;
export default isEdge;
"use strict";
module.exports = function isEdge(ua) {
Object.defineProperty(exports, "__esModule", { value: true });
function isEdge(ua) {
ua = ua || window.navigator.userAgent;
return ua.indexOf("Edge/") !== -1;
};
}
exports.default = isEdge;

@@ -1,2 +0,2 @@

declare const _default: (ua?: string) => boolean;
export = _default;
declare function isFirefox(ua?: string): boolean;
export default isFirefox;
"use strict";
module.exports = function isFirefox(ua) {
Object.defineProperty(exports, "__esModule", { value: true });
function isFirefox(ua) {
ua = ua || window.navigator.userAgent;
return /Firefox/i.test(ua);
};
}
exports.default = isFirefox;

@@ -1,2 +0,2 @@

declare const _default: (ua?: string) => boolean;
export = _default;
declare function isIE(ua?: string): boolean;
export default isIE;
"use strict";
var isIE11 = require("./is-ie11");
module.exports = function isIE(ua) {
Object.defineProperty(exports, "__esModule", { value: true });
var is_ie11_1 = require("./is-ie11");
function isIE(ua) {
ua = ua || window.navigator.userAgent;
return ua.indexOf("MSIE") !== -1 || isIE11(ua);
};
return ua.indexOf("MSIE") !== -1 || (0, is_ie11_1.default)(ua);
}
exports.default = isIE;

@@ -1,2 +0,2 @@

declare const _default: (ua?: string) => boolean;
export = _default;
declare function isIe10(ua?: string): boolean;
export default isIe10;
"use strict";
module.exports = function isIe10(ua) {
Object.defineProperty(exports, "__esModule", { value: true });
function isIe10(ua) {
ua = ua || window.navigator.userAgent;
return ua.indexOf("MSIE 10") !== -1;
};
}
exports.default = isIe10;

@@ -1,2 +0,2 @@

declare const _default: (ua?: string) => boolean;
export = _default;
declare function isIe11(ua?: string): boolean;
export default isIe11;
"use strict";
module.exports = function isIe11(ua) {
Object.defineProperty(exports, "__esModule", { value: true });
function isIe11(ua) {
ua = ua || window.navigator.userAgent;
return ua.indexOf("Trident/7") !== -1;
};
}
exports.default = isIe11;

@@ -1,2 +0,2 @@

declare const _default: (ua?: string) => boolean;
export = _default;
declare function isIe9(ua?: string): boolean;
export default isIe9;
"use strict";
module.exports = function isIe9(ua) {
Object.defineProperty(exports, "__esModule", { value: true });
function isIe9(ua) {
ua = ua || window.navigator.userAgent;
return ua.indexOf("MSIE 9") !== -1;
};
}
exports.default = isIe9;

@@ -1,2 +0,2 @@

declare const _default: (ua?: string) => boolean;
export = _default;
declare function isIosFirefox(ua?: string): boolean;
export default isIosFirefox;
"use strict";
module.exports = function isIosFirefox(ua) {
Object.defineProperty(exports, "__esModule", { value: true });
function isIosFirefox(ua) {
ua = ua || window.navigator.userAgent;
return /FxiOS/i.test(ua);
};
}
exports.default = isIosFirefox;

@@ -1,2 +0,2 @@

declare const _default: (ua?: string) => boolean;
export = _default;
declare function isIosGoogleSearchApp(ua?: string): boolean;
export default isIosGoogleSearchApp;
"use strict";
var isIos = require("./is-ios");
Object.defineProperty(exports, "__esModule", { value: true });
var is_ios_1 = require("./is-ios");
function isGoogleSearchApp(ua) {
return /\bGSA\b/.test(ua);
}
module.exports = function isIosGoogleSearchApp(ua) {
function isIosGoogleSearchApp(ua) {
ua = ua || window.navigator.userAgent;
return isIos(ua) && isGoogleSearchApp(ua);
};
return (0, is_ios_1.default)(ua) && isGoogleSearchApp(ua);
}
exports.default = isIosGoogleSearchApp;

@@ -1,2 +0,2 @@

declare const _default: (ua?: string) => boolean;
export = _default;
declare function isIosSafari(ua?: string): boolean;
export default isIosSafari;
"use strict";
var isIos = require("./is-ios");
var isIosFirefox = require("./is-ios-firefox");
Object.defineProperty(exports, "__esModule", { value: true });
var is_ios_1 = require("./is-ios");
var is_ios_firefox_1 = require("./is-ios-firefox");
var webkitRegexp = /webkit/i;

@@ -14,9 +15,10 @@ function isWebkit(ua) {

}
module.exports = function isIosSafari(ua) {
function isIosSafari(ua) {
ua = ua || window.navigator.userAgent;
return (isIos(ua) &&
return ((0, is_ios_1.default)(ua) &&
isWebkit(ua) &&
!isIosChrome(ua) &&
!isIosFirefox(ua) &&
!(0, is_ios_firefox_1.default)(ua) &&
!isFacebook(ua));
};
}
exports.default = isIosSafari;

@@ -1,2 +0,2 @@

declare const _default: (ua?: string, statusBarVisible?: boolean) => boolean;
export = _default;
declare function isIosUIWebview(ua?: string, statusBarVisible?: boolean): boolean;
export default isIosUIWebview;
"use strict";
var isIosWebview = require("./is-ios-webview");
module.exports = function isIosUIWebview(ua, statusBarVisible) {
Object.defineProperty(exports, "__esModule", { value: true });
var is_ios_webview_1 = require("./is-ios-webview");
function isIosUIWebview(ua, statusBarVisible) {
statusBarVisible =

@@ -8,3 +9,4 @@ typeof statusBarVisible !== "undefined"

: window.statusbar.visible;
return isIosWebview(ua) && !statusBarVisible;
};
return (0, is_ios_webview_1.default)(ua) && !statusBarVisible;
}
exports.default = isIosUIWebview;

@@ -1,2 +0,2 @@

declare const _default: (ua?: string) => boolean;
export = _default;
declare function isIosWebview(ua?: string): boolean;
export default isIosWebview;
"use strict";
var isIos = require("./is-ios");
var isIosGoogleSearchApp = require("./is-ios-google-search-app");
module.exports = function isIosWebview(ua) {
Object.defineProperty(exports, "__esModule", { value: true });
var is_ios_1 = require("./is-ios");
var is_ios_google_search_app_1 = require("./is-ios-google-search-app");
function isIosWebview(ua) {
ua = ua || window.navigator.userAgent;
if (isIos(ua)) {
if ((0, is_ios_1.default)(ua)) {
// The Google Search iOS app is technically a webview and doesn't support popups.
if (isIosGoogleSearchApp(ua)) {
if ((0, is_ios_google_search_app_1.default)(ua)) {
return true;

@@ -15,2 +16,3 @@ }

return false;
};
}
exports.default = isIosWebview;

@@ -1,2 +0,2 @@

declare const _default: (ua?: string, statusBarVisible?: boolean) => boolean;
export = _default;
declare function isIosWKWebview(ua?: string, statusBarVisible?: boolean): boolean;
export default isIosWKWebview;
"use strict";
var isIosWebview = require("./is-ios-webview");
module.exports = function isIosWKWebview(ua, statusBarVisible) {
Object.defineProperty(exports, "__esModule", { value: true });
var is_ios_webview_1 = require("./is-ios-webview");
function isIosWKWebview(ua, statusBarVisible) {
statusBarVisible =

@@ -8,3 +9,4 @@ typeof statusBarVisible !== "undefined"

: window.statusbar.visible;
return isIosWebview(ua) && statusBarVisible;
};
return (0, is_ios_webview_1.default)(ua) && statusBarVisible;
}
exports.default = isIosWKWebview;

@@ -1,2 +0,2 @@

declare const _default: (ua?: string, checkIpadOS?: boolean, document?: object) => boolean;
export = _default;
declare function isIos(ua?: string, checkIpadOS?: boolean, document?: object): boolean;
export default isIos;
"use strict";
var isIpadOS = require("./is-ipados");
module.exports = function isIos(ua, checkIpadOS, document) {
Object.defineProperty(exports, "__esModule", { value: true });
var is_ipados_1 = require("./is-ipados");
function isIos(ua, checkIpadOS, document) {
if (checkIpadOS === void 0) { checkIpadOS = true; }
ua = ua || window.navigator.userAgent;
var iOsTest = /iPhone|iPod|iPad/i.test(ua);
return checkIpadOS ? iOsTest || isIpadOS(ua, document) : iOsTest;
};
return checkIpadOS ? iOsTest || (0, is_ipados_1.default)(ua, document) : iOsTest;
}
exports.default = isIos;

@@ -1,2 +0,2 @@

declare const _default: (ua?: string, document?: object) => boolean;
export = _default;
declare function isIpadOS(ua?: string, document?: object): boolean;
export default isIpadOS;
"use strict";
module.exports = function isIpadOS(ua, document) {
Object.defineProperty(exports, "__esModule", { value: true });
function isIpadOS(ua, document) {
ua = ua || window.navigator.userAgent;

@@ -8,2 +9,3 @@ document = document || window.document;

return /Mac|iPad/i.test(ua) && "ontouchend" in document;
};
}
exports.default = isIpadOS;

@@ -1,2 +0,2 @@

declare const _default: (ua?: string) => boolean;
export = _default;
declare function isMobileFirefox(ua?: string): boolean;
export default isMobileFirefox;
"use strict";
var isIosFirefox = require("./is-ios-firefox");
var isFirefox = require("./is-firefox");
module.exports = function isMobileFirefox(ua) {
Object.defineProperty(exports, "__esModule", { value: true });
var is_ios_firefox_1 = require("./is-ios-firefox");
var is_firefox_1 = require("./is-firefox");
function isMobileFirefox(ua) {
ua = ua || window.navigator.userAgent;
return (isIosFirefox(ua) ||
(/iPhone|iPod|iPad|Mobile|Tablet/i.test(ua) && isFirefox(ua)));
};
return ((0, is_ios_firefox_1.default)(ua) ||
(/iPhone|iPod|iPad|Mobile|Tablet/i.test(ua) && (0, is_firefox_1.default)(ua)));
}
exports.default = isMobileFirefox;

@@ -1,2 +0,2 @@

declare const _default: (ua?: string) => boolean;
export = _default;
declare function isOpera(ua?: string): boolean;
export default isOpera;
"use strict";
module.exports = function isOpera(ua) {
Object.defineProperty(exports, "__esModule", { value: true });
function isOpera(ua) {
ua = ua || window.navigator.userAgent;

@@ -7,2 +8,3 @@ return (ua.indexOf("OPR/") !== -1 ||

ua.indexOf("OPT/") !== -1);
};
}
exports.default = isOpera;

@@ -1,2 +0,2 @@

declare const _default: (ua?: string) => boolean;
export = _default;
declare function isSamsungBrowser(ua?: string): boolean;
export default isSamsungBrowser;
"use strict";
module.exports = function isSamsungBrowser(ua) {
Object.defineProperty(exports, "__esModule", { value: true });
function isSamsungBrowser(ua) {
ua = ua || window.navigator.userAgent;
return /SamsungBrowser/i.test(ua);
};
}
exports.default = isSamsungBrowser;

@@ -1,2 +0,2 @@

declare const _default: (ua?: string) => boolean;
export = _default;
declare function isSilk(ua?: string): boolean;
export default isSilk;
"use strict";
module.exports = function isSilk(ua) {
Object.defineProperty(exports, "__esModule", { value: true });
function isSilk(ua) {
ua = ua || window.navigator.userAgent;
return ua.indexOf("Silk/") !== -1;
};
}
exports.default = isSilk;

@@ -1,2 +0,2 @@

declare const _default: (ua?: string) => boolean;
export = _default;
declare function supportsPaymentRequestApi(ua?: string): boolean;
export default supportsPaymentRequestApi;
"use strict";
var isChrome = require("./is-chrome");
Object.defineProperty(exports, "__esModule", { value: true });
var is_chrome_1 = require("./is-chrome");
var MINIMUM_SUPPORTED_CHROME_VERSION = 61;

@@ -12,3 +13,3 @@ function isSupportedChromeVersion(ua) {

}
module.exports = function supportsPaymentRequestApi(ua) {
function supportsPaymentRequestApi(ua) {
ua = ua || window.navigator.userAgent;

@@ -18,3 +19,3 @@ if (!window.PaymentRequest) {

}
if (!isChrome(ua)) {
if (!(0, is_chrome_1.default)(ua)) {
// if browser is not chrome based, but has Payment Request API

@@ -28,2 +29,3 @@ // this means that it implemented the API after it was finalized

return isSupportedChromeVersion(ua);
};
}
exports.default = supportsPaymentRequestApi;

@@ -1,2 +0,2 @@

declare const _default: (ua?: string) => boolean;
export = _default;
declare function supportsPopups(ua?: string): boolean;
export default supportsPopups;
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
var MINIMUM_SUPPORTED_CHROME_IOS_VERSION = 48;
var isAndroid = require("./is-android");
var isIosFirefox = require("./is-ios-firefox");
var isIosWebview = require("./is-ios-webview");
var isChrome = require("./is-chrome");
var isSamsungBrowser = require("./is-samsung");
var isDuckDuckGo = require("./is-duckduckgo");
var is_android_1 = require("./is-android");
var is_ios_firefox_1 = require("./is-ios-firefox");
var is_ios_webview_1 = require("./is-ios-webview");
var is_chrome_1 = require("./is-chrome");
var is_samsung_1 = require("./is-samsung");
var is_duckduckgo_1 = require("./is-duckduckgo");
function isUnsupportedIosChrome(ua) {

@@ -25,4 +26,4 @@ ua = ua || window.navigator.userAgent;

ua = ua || window.navigator.userAgent;
if (isAndroid(ua)) {
return (androidWebviewRegExp.test(ua) && !isOperaMini(ua) && !isDuckDuckGo(ua));
if ((0, is_android_1.default)(ua)) {
return (androidWebviewRegExp.test(ua) && !isOperaMini(ua) && !(0, is_duckduckgo_1.default)(ua));
}

@@ -32,8 +33,8 @@ return false;

function isOldSamsungBrowserOrSamsungWebview(ua) {
return !isChrome(ua) && !isSamsungBrowser(ua) && /samsung/i.test(ua);
return !(0, is_chrome_1.default)(ua) && !(0, is_samsung_1.default)(ua) && /samsung/i.test(ua);
}
module.exports = function supportsPopups(ua) {
function supportsPopups(ua) {
ua = ua || window.navigator.userAgent;
return !(isIosWebview(ua) ||
isIosFirefox(ua) ||
return !((0, is_ios_webview_1.default)(ua) ||
(0, is_ios_firefox_1.default)(ua) ||
isAndroidWebview(ua) ||

@@ -43,2 +44,3 @@ isOperaMini(ua) ||

isOldSamsungBrowserOrSamsungWebview(ua));
};
}
exports.default = supportsPopups;
{
"name": "@braintree/browser-detection",
"version": "1.16.0",
"version": "1.17.0",
"description": "A small lib to detect browser compatibility for braintree products",

@@ -15,10 +15,10 @@ "main": "dist/browser-detection.js",

"@typescript-eslint/eslint-plugin": "^5.54.1",
"@vitest/coverage-v8": "^0.33.0",
"eslint": "^8.35.0",
"eslint-config-braintree": "^6.0.0-typescript-prep-rc.2",
"eslint-plugin-prettier": "^4.2.1",
"jest": "^29.5.0",
"jest-environment-jsdom": "^29.5.0",
"happy-dom": "^10.3.2",
"prettier": "^2.8.4",
"ts-jest": "^29.0.5",
"typescript": "^4.9.5"
"typescript": "^4.9.5",
"vitest": "^0.33.0"
},

@@ -32,3 +32,4 @@ "scripts": {

"pretest": "npm run build",
"test": "jest",
"test": "vitest",
"coverage": "vitest run --coverage",
"version": "./version"

@@ -46,9 +47,3 @@ },

},
"homepage": "https://github.com/braintree/browser-detection#readme",
"jest": {
"testEnvironment": "jsdom",
"preset": "ts-jest",
"restoreMocks": true,
"resetMocks": true
}
"homepage": "https://github.com/braintree/browser-detection#readme"
}

@@ -16,2 +16,3 @@ # Browser Detection

browserDetection.isFirefox();
browserDetection.isSafari();
browserDetection.isIe();

@@ -47,2 +48,3 @@ browserDetection.isIe9();

const isFirefox = require("browser-detection/is-firefox");
const isSafari = require("browser-detection/is-safari");
const isIe = require("browser-detection/is-ie");

@@ -88,1 +90,5 @@ const isIe9 = require("browser-detection/is-ie9");

```
### Notes on Safari
`is-safari` is used for _desktop_ Safari detection, if you are trying to detect an iOS version of Safari, use `is-ios-safari`.
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc