"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getClientMeta = exports.getLocalStorage = exports.getLocalStorageOrThrow = exports.getCrypto = exports.getCryptoOrThrow = exports.getLocation = exports.getLocationOrThrow = exports.getNavigator = exports.getNavigatorOrThrow = exports.getDocument = exports.getDocumentOrThrow = exports.getFromWindowOrThrow = exports.getFromWindow = exports.isBrowser = exports.isNode = exports.isMobile = exports.isIOS = exports.isAndroid = exports.detectOS = exports.detectEnv = void 0; const tslib_1 = require("tslib"); const windowMetadata = tslib_1.__importStar(require("@walletconnect/window-metadata")); const windowGetters = tslib_1.__importStar(require("@walletconnect/window-getters")); const detect_browser_1 = require("detect-browser"); function detectEnv(userAgent) { return (0, detect_browser_1.detect)(userAgent); } exports.detectEnv = detectEnv; function detectOS() { const env = detectEnv(); return env && env.os ? env.os : undefined; } exports.detectOS = detectOS; function isAndroid() { const os = detectOS(); return os ? os.toLowerCase().includes("android") : false; } exports.isAndroid = isAndroid; function isIOS() { const os = detectOS(); return os ? os.toLowerCase().includes("ios") || (os.toLowerCase().includes("mac") && navigator.maxTouchPoints > 1) : false; } exports.isIOS = isIOS; function isMobile() { const os = detectOS(); return os ? isAndroid() || isIOS() : false; } exports.isMobile = isMobile; function isNode() { const env = detectEnv(); const result = env && env.name ? env.name.toLowerCase() === "node" : false; return result; } exports.isNode = isNode; function isBrowser() { const result = !isNode() && !!(0, exports.getNavigator)(); return result; } exports.isBrowser = isBrowser; exports.getFromWindow = windowGetters.getFromWindow; exports.getFromWindowOrThrow = windowGetters.getFromWindowOrThrow; exports.getDocumentOrThrow = windowGetters.getDocumentOrThrow; exports.getDocument = windowGetters.getDocument; exports.getNavigatorOrThrow = windowGetters.getNavigatorOrThrow; exports.getNavigator = windowGetters.getNavigator; exports.getLocationOrThrow = windowGetters.getLocationOrThrow; exports.getLocation = windowGetters.getLocation; exports.getCryptoOrThrow = windowGetters.getCryptoOrThrow; exports.getCrypto = windowGetters.getCrypto; exports.getLocalStorageOrThrow = windowGetters.getLocalStorageOrThrow; exports.getLocalStorage = windowGetters.getLocalStorage; function getClientMeta() { return windowMetadata.getWindowMetadata(); } exports.getClientMeta = getClientMeta; //# sourceMappingURL=browser.js.map