{"version":3,"file":"web-gw7AQi5i.js","sources":["../../node_modules/@capacitor/device/dist/esm/web.js"],"sourcesContent":["import { WebPlugin } from '@capacitor/core';\nexport class DeviceWeb extends WebPlugin {\n async getId() {\n return {\n identifier: this.getUid(),\n };\n }\n async getInfo() {\n if (typeof navigator === 'undefined' || !navigator.userAgent) {\n throw this.unavailable('Device API not available in this browser');\n }\n const ua = navigator.userAgent;\n const uaFields = this.parseUa(ua);\n return {\n model: uaFields.model,\n platform: 'web',\n operatingSystem: uaFields.operatingSystem,\n osVersion: uaFields.osVersion,\n manufacturer: navigator.vendor,\n isVirtual: false,\n webViewVersion: uaFields.browserVersion,\n };\n }\n async getBatteryInfo() {\n if (typeof navigator === 'undefined' || !navigator.getBattery) {\n throw this.unavailable('Device API not available in this browser');\n }\n let battery = {};\n try {\n battery = await navigator.getBattery();\n }\n catch (e) {\n // Let it fail, we don't care\n }\n return {\n batteryLevel: battery.level,\n isCharging: battery.charging,\n };\n }\n async getLanguageCode() {\n return {\n value: navigator.language.split('-')[0].toLowerCase(),\n };\n }\n async getLanguageTag() {\n return {\n value: navigator.language,\n };\n }\n parseUa(ua) {\n const uaFields = {};\n const start = ua.indexOf('(') + 1;\n let end = ua.indexOf(') AppleWebKit');\n if (ua.indexOf(') Gecko') !== -1) {\n end = ua.indexOf(') Gecko');\n }\n const fields = ua.substring(start, end);\n if (ua.indexOf('Android') !== -1) {\n const tmpFields = fields.replace('; wv', '').split('; ').pop();\n if (tmpFields) {\n uaFields.model = tmpFields.split(' Build')[0];\n }\n uaFields.osVersion = fields.split('; ')[1];\n }\n else {\n uaFields.model = fields.split('; ')[0];\n if (typeof navigator !== 'undefined' && navigator.oscpu) {\n uaFields.osVersion = navigator.oscpu;\n }\n else {\n if (ua.indexOf('Windows') !== -1) {\n uaFields.osVersion = fields;\n }\n else {\n const tmpFields = fields.split('; ').pop();\n if (tmpFields) {\n const lastParts = tmpFields\n .replace(' like Mac OS X', '')\n .split(' ');\n uaFields.osVersion = lastParts[lastParts.length - 1].replace(/_/g, '.');\n }\n }\n }\n }\n if (/android/i.test(ua)) {\n uaFields.operatingSystem = 'android';\n }\n else if (/iPad|iPhone|iPod/.test(ua) && !window.MSStream) {\n uaFields.operatingSystem = 'ios';\n }\n else if (/Win/.test(ua)) {\n uaFields.operatingSystem = 'windows';\n }\n else if (/Mac/i.test(ua)) {\n uaFields.operatingSystem = 'mac';\n }\n else {\n uaFields.operatingSystem = 'unknown';\n }\n // Check for browsers based on non-standard javascript apis, only not user agent\n const isSafari = !!window.ApplePaySession;\n const isChrome = !!window.chrome;\n const isFirefox = /Firefox/.test(ua);\n const isEdge = /Edg/.test(ua);\n const isFirefoxIOS = /FxiOS/.test(ua);\n const isChromeIOS = /CriOS/.test(ua);\n const isEdgeIOS = /EdgiOS/.test(ua);\n // FF and Edge User Agents both end with \"/MAJOR.MINOR\"\n if (isSafari ||\n (isChrome && !isEdge) ||\n isFirefoxIOS ||\n isChromeIOS ||\n isEdgeIOS) {\n // Safari version comes as \"... Version/MAJOR.MINOR ...\"\n // Chrome version comes as \"... Chrome/MAJOR.MINOR ...\"\n // FirefoxIOS version comes as \"... FxiOS/MAJOR.MINOR ...\"\n // ChromeIOS version comes as \"... CriOS/MAJOR.MINOR ...\"\n let searchWord;\n if (isFirefoxIOS) {\n searchWord = 'FxiOS';\n }\n else if (isChromeIOS) {\n searchWord = 'CriOS';\n }\n else if (isEdgeIOS) {\n searchWord = 'EdgiOS';\n }\n else if (isSafari) {\n searchWord = 'Version';\n }\n else {\n searchWord = 'Chrome';\n }\n const words = ua.split(' ');\n for (const word of words) {\n if (word.includes(searchWord)) {\n const version = word.split('/')[1];\n uaFields.browserVersion = version;\n }\n }\n }\n else if (isFirefox || isEdge) {\n const reverseUA = ua.split('').reverse().join('');\n const reverseVersion = reverseUA.split('/')[0];\n const version = reverseVersion.split('').reverse().join('');\n uaFields.browserVersion = version;\n }\n return uaFields;\n }\n getUid() {\n if (typeof window !== 'undefined' && window.localStorage) {\n let uid = window.localStorage.getItem('_capuid');\n if (uid) {\n return uid;\n }\n uid = this.uuid4();\n window.localStorage.setItem('_capuid', uid);\n return uid;\n }\n return this.uuid4();\n }\n uuid4() {\n return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {\n const r = (Math.random() * 16) | 0, v = c === 'x' ? r : (r & 0x3) | 0x8;\n return v.toString(16);\n });\n }\n}\n//# sourceMappingURL=web.js.map"],"names":["DeviceWeb","WebPlugin","ua","uaFields","battery","start","end","fields","tmpFields","lastParts","isSafari","isChrome","isFirefox","isEdge","isFirefoxIOS","isChromeIOS","isEdgeIOS","searchWord","words","word","version","uid","c","r"],"mappings":"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","x_google_ignoreList":[0]}