@cloudcare/browser-core 3.2.22 → 3.2.25
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/browser/addEventListener.js +4 -2
- package/cjs/browser/addEventListener.js.map +1 -1
- package/cjs/browser/asyncClocks.js +68 -0
- package/cjs/browser/asyncClocks.js.map +1 -0
- package/cjs/dataMap.js +1 -0
- package/cjs/dataMap.js.map +1 -1
- package/cjs/helper/deviceInfo.js +6 -1
- package/cjs/helper/deviceInfo.js.map +1 -1
- package/cjs/helper/getZoneJsOriginalValue.js +2 -1
- package/cjs/helper/getZoneJsOriginalValue.js.map +1 -1
- package/cjs/helper/valueHistory.js +19 -6
- package/cjs/helper/valueHistory.js.map +1 -1
- package/cjs/session/sessionStoreOperations.js +4 -4
- package/cjs/session/sessionStoreOperations.js.map +1 -1
- package/cjs/tracekit/computeStackTrace.js +1 -1
- package/cjs/tracekit/computeStackTrace.js.map +1 -1
- package/cjs/transport/eventBridge.js +8 -1
- package/cjs/transport/eventBridge.js.map +1 -1
- package/esm/browser/addEventListener.js +4 -2
- package/esm/browser/addEventListener.js.map +1 -1
- package/esm/browser/asyncClocks.js +60 -0
- package/esm/browser/asyncClocks.js.map +1 -0
- package/esm/dataMap.js +1 -0
- package/esm/dataMap.js.map +1 -1
- package/esm/helper/deviceInfo.js +6 -1
- package/esm/helper/deviceInfo.js.map +1 -1
- package/esm/helper/getZoneJsOriginalValue.js +2 -1
- package/esm/helper/getZoneJsOriginalValue.js.map +1 -1
- package/esm/helper/valueHistory.js +19 -6
- package/esm/helper/valueHistory.js.map +1 -1
- package/esm/session/sessionStoreOperations.js +4 -4
- package/esm/session/sessionStoreOperations.js.map +1 -1
- package/esm/tracekit/computeStackTrace.js +1 -1
- package/esm/tracekit/computeStackTrace.js.map +1 -1
- package/esm/transport/eventBridge.js +8 -1
- package/esm/transport/eventBridge.js.map +1 -1
- package/package.json +2 -2
- package/src/browser/addEventListener.js +7 -2
- package/src/browser/asyncClocks.js +69 -0
- package/src/dataMap.js +1 -0
- package/src/helper/deviceInfo.js +6 -1
- package/src/helper/getZoneJsOriginalValue.js +2 -1
- package/src/helper/valueHistory.js +18 -6
- package/src/session/sessionStoreOperations.js +4 -16
- package/src/tracekit/computeStackTrace.js +2 -1
- package/src/transport/eventBridge.js +20 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deviceInfo.js","names":["display","monitor","VariableLibrary","navigator","window","infoMap","engine","browser","os","device","MethodLibrary","getMatchMap","u","Trident","indexOf","Presto","WebKit","Gecko","Safari","Chrome","IE","Edge","Firefox","Chromium","Opera","Vivaldi","Yandex","Arora","Lunascape","QupZilla","Kindle","Iceweasel","Konqueror","Iceape","SeaMonkey","Epiphany","UC","QQBrowser","QQ","Baidu","Maxthon","Sogou","LBBROWSER","TheWorld","XiaoMi","Quark","Qiyu","Wechat","Taobao","Alipay","Weibo","Douban","Suning","iQiYi","Windows","Linux","Android","Ubuntu","FreeBSD","Debian","BlackBerry","MeeGo","Symbian","iOS","WebOS","Mobile","Tablet","iPad","matchInfoMap","_this","userAgent","match","s","i","length","value","getOS","getOSVersion","osVersion","osMajor","v","replace","oldWindowsVersionMap","Windows_Phone","Mac_OS","split","version","getOrientationStatu","orientationStatus","orientation","matchMedia","matches","getDeviceType","getNetwork","connection","mozConnection","webkitConnection","result","type","effectiveType","getLanguage","language","browserLanguage","arr","toUpperCase","join","getBrowserInfo","_mime","option","mimeTypes","key","is360","chrome","chrome_version","showModalDialog","navigator_top","screenTop","screenY","browerVersionMap","Firefox_Focus","Coc_Coc","_","SE","hash","EE","Explorer","WechatWork","browserVersion","browserMajor","parseInt","getGeoPostion","callback","geolocation","getCurrentPosition","position","error","warn","_deviceInfo","osVersionMajor","browserVersionMajor","screenSize","screen","width","height","networkType","deviceInfo"],"sources":["../../src/helper/deviceInfo.js"],"sourcesContent":["import { display } from '../helper/display'\nimport { monitor } from '../helper/monitor'\nvar VariableLibrary = {\n navigator:\n typeof window !== 'undefined' && typeof window.navigator != 'undefined'\n ? window.navigator\n : {},\n // 信息map\n infoMap: {\n engine: ['WebKit', 'Trident', 'Gecko', 'Presto'],\n browser: [\n 'Safari',\n 'Chrome',\n 'Edge',\n 'IE',\n 'IE 11',\n 'IE 10',\n 'IE 9',\n 'IE 8',\n 'IE 7',\n 'Firefox',\n 'Firefox Focus',\n 'Chromium',\n 'Opera',\n 'Vivaldi',\n 'Yandex',\n 'Arora',\n 'Lunascape',\n 'QupZilla',\n 'Coc Coc',\n 'Kindle',\n 'Iceweasel',\n 'Konqueror',\n 'Iceape',\n 'SeaMonkey',\n 'Epiphany',\n '360',\n '360SE',\n '360EE',\n 'UC',\n 'QQBrowser',\n 'QQ',\n 'Baidu',\n 'Maxthon',\n 'Sogou',\n 'LBBROWSER',\n '2345Explorer',\n 'TheWorld',\n 'XiaoMi',\n 'Quark',\n 'Qiyu',\n 'Wechat',\n ,\n 'WechatWork',\n 'Taobao',\n 'Alipay',\n 'Weibo',\n 'Douban',\n 'Suning',\n 'iQiYi'\n ],\n os: [\n 'Windows',\n 'Linux',\n 'Mac OS',\n 'Android',\n 'Ubuntu',\n 'FreeBSD',\n 'Debian',\n 'iOS',\n 'Windows Phone',\n 'BlackBerry',\n 'MeeGo',\n 'Symbian',\n 'Chrome OS',\n 'WebOS'\n ],\n device: ['Mobile', 'Tablet', 'iPad']\n }\n}\n// 方法库\nvar MethodLibrary = {\n // 获取匹配库\n getMatchMap: monitor(function (u) {\n return {\n // 内核\n Trident: u.indexOf('Trident') > -1 || u.indexOf('NET CLR') > -1,\n Presto: u.indexOf('Presto') > -1,\n WebKit: u.indexOf('AppleWebKit') > -1,\n Gecko: u.indexOf('Gecko/') > -1,\n // 浏览器\n Safari: u.indexOf('Safari') > -1,\n Chrome: u.indexOf('Chrome') > -1 || u.indexOf('CriOS') > -1,\n IE: u.indexOf('MSIE') > -1 || u.indexOf('Trident') > -1,\n Edge: u.indexOf('Edge') > -1 || u.indexOf('Edg') > -1,\n Firefox: u.indexOf('Firefox') > -1 || u.indexOf('FxiOS') > -1,\n 'Firefox Focus': u.indexOf('Focus') > -1,\n Chromium: u.indexOf('Chromium') > -1,\n Opera: u.indexOf('Opera') > -1 || u.indexOf('OPR') > -1,\n Vivaldi: u.indexOf('Vivaldi') > -1,\n Yandex: u.indexOf('YaBrowser') > -1,\n Arora: u.indexOf('Arora') > -1,\n Lunascape: u.indexOf('Lunascape') > -1,\n QupZilla: u.indexOf('QupZilla') > -1,\n 'Coc Coc': u.indexOf('coc_coc_browser') > -1,\n Kindle: u.indexOf('Kindle') > -1 || u.indexOf('Silk/') > -1,\n Iceweasel: u.indexOf('Iceweasel') > -1,\n Konqueror: u.indexOf('Konqueror') > -1,\n Iceape: u.indexOf('Iceape') > -1,\n SeaMonkey: u.indexOf('SeaMonkey') > -1,\n Epiphany: u.indexOf('Epiphany') > -1,\n 360: u.indexOf('QihooBrowser') > -1 || u.indexOf('QHBrowser') > -1,\n '360EE': u.indexOf('360EE') > -1,\n '360SE': u.indexOf('360SE') > -1,\n UC: u.indexOf('UC') > -1 || u.indexOf(' UBrowser') > -1,\n QQBrowser: u.indexOf('QQBrowser') > -1,\n QQ: u.indexOf('QQ/') > -1,\n Baidu: u.indexOf('Baidu') > -1 || u.indexOf('BIDUBrowser') > -1,\n Maxthon: u.indexOf('Maxthon') > -1,\n Sogou: u.indexOf('MetaSr') > -1 || u.indexOf('Sogou') > -1,\n LBBROWSER: u.indexOf('LBBROWSER') > -1,\n '2345Explorer': u.indexOf('2345Explorer') > -1,\n TheWorld: u.indexOf('TheWorld') > -1,\n XiaoMi: u.indexOf('MiuiBrowser') > -1,\n Quark: u.indexOf('Quark') > -1,\n Qiyu: u.indexOf('Qiyu') > -1,\n Wechat: u.indexOf('MicroMessenger') > -1,\n Taobao: u.indexOf('AliApp(TB') > -1,\n Alipay: u.indexOf('AliApp(AP') > -1,\n Weibo: u.indexOf('Weibo') > -1,\n Douban: u.indexOf('com.douban.frodo') > -1,\n Suning: u.indexOf('SNEBUY-APP') > -1,\n iQiYi: u.indexOf('IqiyiApp') > -1,\n // 系统或平台\n Windows: u.indexOf('Windows') > -1,\n Linux: u.indexOf('Linux') > -1 || u.indexOf('X11') > -1,\n 'Mac OS': u.indexOf('Macintosh') > -1,\n Android: u.indexOf('Android') > -1 || u.indexOf('Adr') > -1,\n Ubuntu: u.indexOf('Ubuntu') > -1,\n FreeBSD: u.indexOf('FreeBSD') > -1,\n Debian: u.indexOf('Debian') > -1,\n 'Windows Phone':\n u.indexOf('IEMobile') > -1 || u.indexOf('Windows Phone') > -1,\n BlackBerry: u.indexOf('BlackBerry') > -1 || u.indexOf('RIM') > -1,\n MeeGo: u.indexOf('MeeGo') > -1,\n Symbian: u.indexOf('Symbian') > -1,\n iOS: u.indexOf('like Mac OS X') > -1,\n 'Chrome OS': u.indexOf('CrOS') > -1,\n WebOS: u.indexOf('hpwOS') > -1,\n // 设备\n Mobile:\n u.indexOf('Mobi') > -1 ||\n u.indexOf('iPh') > -1 ||\n u.indexOf('480') > -1,\n Tablet: u.indexOf('Tablet') > -1 || u.indexOf('Nexus 7') > -1,\n iPad: u.indexOf('iPad') > -1\n }\n }),\n // 在信息map和匹配库中进行匹配\n matchInfoMap: monitor(function (_this) {\n var u = VariableLibrary.navigator.userAgent || ''\n var match = MethodLibrary.getMatchMap(u)\n for (var s in VariableLibrary.infoMap) {\n for (var i = 0; i < VariableLibrary.infoMap[s].length; i++) {\n var value = VariableLibrary.infoMap[s][i]\n if (match[value]) {\n _this[s] = value\n }\n }\n }\n }),\n // 获取当前操作系统\n getOS: monitor(function () {\n var _this = this\n MethodLibrary.matchInfoMap(_this)\n return _this.os || 'Unknown'\n }),\n // 获取操作系统版本\n getOSVersion: monitor(function () {\n var _this = this\n var u = VariableLibrary.navigator.userAgent || ''\n _this.osVersion = ''\n _this.osMajor = ''\n // 系统版本信息\n var osVersion = {\n Windows: function () {\n var v = u.replace(/^.*Windows NT ([\\d.]+);.*$/, '$1')\n var oldWindowsVersionMap = {\n 6.4: '10',\n 6.3: '8.1',\n 6.2: '8',\n 6.1: '7',\n '6.0': 'Vista',\n 5.2: 'XP',\n 5.1: 'XP',\n '5.0': '2000'\n }\n return oldWindowsVersionMap[v] || v\n },\n Android: function () {\n return u.replace(/^.*Android ([\\d.]+);.*$/, '$1')\n },\n iOS: function () {\n return u.replace(/^.*OS ([\\d_]+) like.*$/, '$1').replace(/_/g, '.')\n },\n Debian: function () {\n return u.replace(/^.*Debian\\/([\\d.]+).*$/, '$1')\n },\n 'Windows Phone': function () {\n return u.replace(/^.*Windows Phone( OS)? ([\\d.]+);.*$/, '$2')\n },\n 'Mac OS': function () {\n return u.replace(/^.*Mac OS X ([\\d_]+).*$/, '$1').replace(/_/g, '.')\n },\n WebOS: function () {\n return u.replace(/^.*hpwOS\\/([\\d.]+);.*$/, '$1')\n }\n }\n if (osVersion[_this.os]) {\n _this.osVersion = osVersion[_this.os]()\n if (_this.osVersion === u) {\n _this.osVersion = ''\n }\n }\n if (_this.osVersion) {\n _this.osMajor =\n _this.osVersion.split('.').length && _this.osVersion.split('.')[0]\n }\n return {\n version: _this.osVersion,\n osMajor: _this.osMajor\n }\n }),\n // 获取横竖屏状态\n getOrientationStatu: monitor(function () {\n var orientationStatus = ''\n var orientation = window.matchMedia('(orientation: portrait)')\n if (orientation.matches) {\n orientationStatus = '竖屏'\n } else {\n orientationStatus = '横屏'\n }\n return orientationStatus\n }),\n // 获取设备类型\n getDeviceType: monitor(function () {\n var _this = this\n _this.device = 'PC'\n MethodLibrary.matchInfoMap(_this)\n return _this.device\n }),\n // 获取网络状态\n getNetwork: monitor(function () {\n var connection =\n window.navigator.connection ||\n window.navigator.mozConnection ||\n window.navigator.webkitConnection\n var result = 'unknown'\n var type = connection ? connection.type || connection.effectiveType : null\n if (type && typeof type === 'string') {\n switch (type) {\n // possible type values\n case 'bluetooth':\n case 'cellular':\n result = 'cellular'\n break\n case 'none':\n result = 'none'\n break\n case 'ethernet':\n case 'wifi':\n case 'wimax':\n result = 'wifi'\n break\n case 'other':\n case 'unknown':\n result = 'unknown'\n break\n // possible effectiveType values\n case 'slow-2g':\n case '2g':\n case '3g':\n result = 'cellular'\n break\n case '4g':\n result = 'wifi'\n break\n default:\n break\n }\n }\n return result\n }),\n // 获取当前语言\n getLanguage: monitor(function () {\n var _this = this\n _this.language = (function () {\n var language =\n VariableLibrary.navigator.browserLanguage ||\n VariableLibrary.navigator.language ||\n ''\n var arr = language.split('-')\n if (arr[1]) {\n arr[1] = arr[1].toUpperCase()\n }\n return arr.join('_')\n })()\n return _this.language\n }),\n // 浏览器信息\n getBrowserInfo: monitor(function () {\n var _this = this\n MethodLibrary.matchInfoMap(_this)\n\n var u = VariableLibrary.navigator.userAgent || ''\n\n var _mime = function (option, value) {\n var mimeTypes = VariableLibrary.navigator.mimeTypes\n for (var key in mimeTypes) {\n if (mimeTypes[key][option] == value) {\n return true\n }\n }\n return false\n }\n\n var match = MethodLibrary.getMatchMap(u)\n\n var is360 = false\n if (typeof window !== 'undefined' && window.chrome) {\n var chrome_version = u.replace(/^.*Chrome\\/([\\d]+).*$/, '$1')\n if (chrome_version > 36 && window.showModalDialog) {\n is360 = true\n } else if (chrome_version > 45) {\n is360 = _mime('type', 'application/vnd.chromium.remoting-viewer')\n }\n }\n if (match['Baidu'] && match['Opera']) {\n match['Baidu'] = false\n }\n if (match['Mobile']) {\n match['Mobile'] = !(u.indexOf('iPad') > -1)\n }\n if (is360) {\n if (_mime('type', 'application/gameplugin')) {\n match['360SE'] = true\n } else if (\n VariableLibrary.navigator &&\n VariableLibrary.navigator.connection &&\n typeof VariableLibrary.navigator['connection']['saveData'] ==\n 'undefined'\n ) {\n match['360SE'] = true\n } else {\n match['360EE'] = true\n }\n }\n if (match['IE'] || match['Edge']) {\n var navigator_top = window.screenTop - window.screenY\n switch (navigator_top) {\n case 71: // 无收藏栏,贴边\n break\n case 74: // 无收藏栏,非贴边\n break\n case 99: // 有收藏栏,贴边\n break\n case 102: // 有收藏栏,非贴边\n match['360EE'] = true\n break\n case 75: // 无收藏栏,贴边\n break\n case 74: // 无收藏栏,非贴边\n break\n case 105: // 有收藏栏,贴边\n break\n case 104: // 有收藏栏,非贴边\n match['360SE'] = true\n break\n default:\n break\n }\n }\n\n var browerVersionMap = {\n Safari: function () {\n return u.replace(/^.*Version\\/([\\d.]+).*$/, '$1')\n },\n Chrome: function () {\n return u\n .replace(/^.*Chrome\\/([\\d.]+).*$/, '$1')\n .replace(/^.*CriOS\\/([\\d.]+).*$/, '$1')\n },\n IE: function () {\n return u\n .replace(/^.*MSIE ([\\d.]+).*$/, '$1')\n .replace(/^.*rv:([\\d.]+).*$/, '$1')\n },\n Edge: function () {\n return u.replace(/^.*Edge?\\/([\\d.]+).*$/, '$1')\n },\n Firefox: function () {\n return u\n .replace(/^.*Firefox\\/([\\d.]+).*$/, '$1')\n .replace(/^.*FxiOS\\/([\\d.]+).*$/, '$1')\n },\n 'Firefox Focus': function () {\n return u.replace(/^.*Focus\\/([\\d.]+).*$/, '$1')\n },\n Chromium: function () {\n return u.replace(/^.*Chromium\\/([\\d.]+).*$/, '$1')\n },\n Opera: function () {\n return u\n .replace(/^.*Opera\\/([\\d.]+).*$/, '$1')\n .replace(/^.*OPR\\/([\\d.]+).*$/, '$1')\n },\n Vivaldi: function () {\n return u.replace(/^.*Vivaldi\\/([\\d.]+).*$/, '$1')\n },\n Yandex: function () {\n return u.replace(/^.*YaBrowser\\/([\\d.]+).*$/, '$1')\n },\n Arora: function () {\n return u.replace(/^.*Arora\\/([\\d.]+).*$/, '$1')\n },\n Lunascape: function () {\n return u.replace(/^.*Lunascape[\\/\\s]([\\d.]+).*$/, '$1')\n },\n QupZilla: function () {\n return u.replace(/^.*QupZilla[\\/\\s]([\\d.]+).*$/, '$1')\n },\n 'Coc Coc': function () {\n return u.replace(/^.*coc_coc_browser\\/([\\d.]+).*$/, '$1')\n },\n Kindle: function () {\n return u.replace(/^.*Version\\/([\\d.]+).*$/, '$1')\n },\n Iceweasel: function () {\n return u.replace(/^.*Iceweasel\\/([\\d.]+).*$/, '$1')\n },\n Konqueror: function () {\n return u.replace(/^.*Konqueror\\/([\\d.]+).*$/, '$1')\n },\n Iceape: function () {\n return u.replace(/^.*Iceape\\/([\\d.]+).*$/, '$1')\n },\n SeaMonkey: function () {\n return u.replace(/^.*SeaMonkey\\/([\\d.]+).*$/, '$1')\n },\n Epiphany: function () {\n return u.replace(/^.*Epiphany\\/([\\d.]+).*$/, '$1')\n },\n 360: function () {\n return u.replace(/^.*QihooBrowser\\/([\\d.]+).*$/, '$1')\n },\n '360SE': function () {\n var hash = {\n 63: '10.0',\n 55: '9.1',\n 45: '8.1',\n 42: '8.0',\n 31: '7.0',\n 21: '6.3'\n }\n var chrome_version = u.replace(/^.*Chrome\\/([\\d]+).*$/, '$1')\n return hash[chrome_version] || ''\n },\n '360EE': function () {\n var hash = { 69: '11.0', 63: '9.5', 55: '9.0', 50: '8.7', 30: '7.5' }\n var chrome_version = u.replace(/^.*Chrome\\/([\\d]+).*$/, '$1')\n return hash[chrome_version] || ''\n },\n Maxthon: function () {\n return u.replace(/^.*Maxthon\\/([\\d.]+).*$/, '$1')\n },\n QQBrowser: function () {\n return u.replace(/^.*QQBrowser\\/([\\d.]+).*$/, '$1')\n },\n QQ: function () {\n return u.replace(/^.*QQ\\/([\\d.]+).*$/, '$1')\n },\n Baidu: function () {\n return u.replace(/^.*BIDUBrowser[\\s\\/]([\\d.]+).*$/, '$1')\n },\n UC: function () {\n return u.replace(/^.*UC?Browser\\/([\\d.]+).*$/, '$1')\n },\n Sogou: function () {\n return u\n .replace(/^.*SE ([\\d.X]+).*$/, '$1')\n .replace(/^.*SogouMobileBrowser\\/([\\d.]+).*$/, '$1')\n },\n LBBROWSER: function () {\n var version = ''\n if (u.indexOf('LieBaoFast') > -1) {\n version = u.replace(/^.*LieBaoFast\\/([\\d.]+).*$/, '$1')\n }\n var hash = {\n 57: '6.5',\n 49: '6.0',\n 46: '5.9',\n 42: '5.3',\n 39: '5.2',\n 34: '5.0',\n 29: '4.5',\n 21: '4.0'\n }\n var chrome_version = u.replace(/^.*Chrome\\/([\\d]+).*$/, '$1')\n return version || hash[chrome_version] || ''\n },\n '2345Explorer': function () {\n return u.replace(/^.*2345Explorer\\/([\\d.]+).*$/, '$1')\n },\n TheWorld: function () {\n return u.replace(/^.*TheWorld ([\\d.]+).*$/, '$1')\n },\n XiaoMi: function () {\n return u.replace(/^.*MiuiBrowser\\/([\\d.]+).*$/, '$1')\n },\n Quark: function () {\n return u.replace(/^.*Quark\\/([\\d.]+).*$/, '$1')\n },\n Qiyu: function () {\n return u.replace(/^.*Qiyu\\/([\\d.]+).*$/, '$1')\n },\n Wechat: function () {\n return u.replace(/^.*MicroMessenger\\/([\\d.]+).*$/, '$1')\n },\n WechatWork: function () {\n return u.replace(/^.*wxwork\\/([\\d.]+).*$/, '$1')\n },\n Taobao: function () {\n return u.replace(/^.*AliApp\\(TB\\/([\\d.]+).*$/, '$1')\n },\n Alipay: function () {\n return u.replace(/^.*AliApp\\(AP\\/([\\d.]+).*$/, '$1')\n },\n Weibo: function () {\n return u.replace(/^.*weibo__([\\d.]+).*$/, '$1')\n },\n Douban: function () {\n return u.replace(/^.*com.douban.frodo\\/([\\d.]+).*$/, '$1')\n },\n Suning: function () {\n return u.replace(/^.*SNEBUY-APP([\\d.]+).*$/, '$1')\n },\n iQiYi: function () {\n return u.replace(/^.*IqiyiVersion\\/([\\d.]+).*$/, '$1')\n }\n }\n _this.browserVersion = ''\n _this.browserMajor = ''\n if (browerVersionMap[_this.browser]) {\n _this.browserVersion = browerVersionMap[_this.browser]()\n if (_this.browserVersion == u) {\n _this.browserVersion = ''\n }\n }\n if (_this.browser == 'Chrome' && u.match(/\\S+Browser/)) {\n _this.browser = u.match(/\\S+Browser/)[0]\n _this.version = u.replace(/^.*Browser\\/([\\d.]+).*$/, '$1')\n }\n if (_this.browser == 'Edge') {\n if (_this.version > '75') {\n _this.engine = 'Blink'\n } else {\n _this.engine = 'EdgeHTML'\n }\n }\n if (_this.browser == 'Chrome' && parseInt(_this.browserVersion) > 27) {\n _this.engine = 'Blink'\n } else if (\n match['Chrome'] &&\n _this.engine == 'WebKit' &&\n parseInt(_this.browserVersion) > 27\n ) {\n _this.engine = 'Blink'\n } else if (_this.browser == 'Opera' && parseInt(_this.version) > 12) {\n _this.engine = 'Blink'\n } else if (_this.browser == 'Yandex') {\n _this.engine = 'Blink'\n }\n if (_this.browserVersion) {\n _this.browserMajor =\n _this.browserVersion.split('.').length &&\n this.browserVersion.split('.')[0]\n }\n return {\n browser: _this.browser,\n browserVersion: _this.browserVersion,\n engine: _this.engine,\n browserMajor: _this.browserMajor\n }\n }),\n // 获取地理位置\n getGeoPostion: monitor(function (callback) {\n navigator &&\n navigator.geolocation &&\n navigator.geolocation.getCurrentPosition(\n // 位置获取成功\n function (position) {\n callback(position)\n },\n // 位置获取失败\n function (error) {\n display.warn(error)\n }\n )\n })\n}\nvar _deviceInfo = {}\nif (typeof window !== 'undefined') {\n _deviceInfo = {\n os: MethodLibrary.getOS(),\n osVersion: MethodLibrary.getOSVersion().version,\n osVersionMajor: MethodLibrary.getOSVersion().osMajor,\n browser: MethodLibrary.getBrowserInfo().browser,\n browserVersion: MethodLibrary.getBrowserInfo().browserVersion,\n browserVersionMajor: MethodLibrary.getBrowserInfo().browserMajor,\n screenSize: window.screen.width + '*' + window.screen.height,\n networkType: MethodLibrary.getNetwork(),\n device: MethodLibrary.getDeviceType()\n }\n}\nexport var deviceInfo = _deviceInfo\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"deviceInfo.js","names":["display","monitor","VariableLibrary","navigator","window","infoMap","engine","browser","os","device","MethodLibrary","getMatchMap","u","Trident","indexOf","Presto","WebKit","Gecko","Safari","Chrome","IE","Edge","Firefox","Chromium","Opera","Vivaldi","Yandex","Arora","Lunascape","QupZilla","Kindle","Iceweasel","Konqueror","Iceape","SeaMonkey","Epiphany","UC","QQBrowser","QQ","Baidu","Maxthon","Sogou","LBBROWSER","TheWorld","XiaoMi","Quark","Qiyu","Wechat","Taobao","Alipay","Weibo","Douban","Suning","iQiYi","Windows","Linux","Android","Ubuntu","FreeBSD","Debian","BlackBerry","MeeGo","Symbian","iOS","WebOS","Mobile","Tablet","iPad","matchInfoMap","_this","userAgent","match","s","i","length","value","getOS","getOSVersion","osVersion","osMajor","v","replace","oldWindowsVersionMap","Windows_Phone","Mac_OS","split","version","getOrientationStatu","orientationStatus","orientation","matchMedia","matches","getDeviceType","getNetwork","connection","mozConnection","webkitConnection","result","type","effectiveType","getLanguage","language","browserLanguage","arr","toUpperCase","join","getTimeZone","timeZone","Intl","DateTimeFormat","resolvedOptions","getBrowserInfo","_mime","option","mimeTypes","key","is360","chrome","chrome_version","showModalDialog","navigator_top","screenTop","screenY","browerVersionMap","Firefox_Focus","Coc_Coc","_","SE","hash","EE","Explorer","WechatWork","browserVersion","browserMajor","parseInt","getGeoPostion","callback","geolocation","getCurrentPosition","position","error","warn","_deviceInfo","osVersionMajor","browserVersionMajor","screenSize","screen","width","height","networkType","deviceInfo"],"sources":["../../src/helper/deviceInfo.js"],"sourcesContent":["import { display } from '../helper/display'\nimport { monitor } from '../helper/monitor'\nvar VariableLibrary = {\n navigator:\n typeof window !== 'undefined' && typeof window.navigator != 'undefined'\n ? window.navigator\n : {},\n // 信息map\n infoMap: {\n engine: ['WebKit', 'Trident', 'Gecko', 'Presto'],\n browser: [\n 'Safari',\n 'Chrome',\n 'Edge',\n 'IE',\n 'IE 11',\n 'IE 10',\n 'IE 9',\n 'IE 8',\n 'IE 7',\n 'Firefox',\n 'Firefox Focus',\n 'Chromium',\n 'Opera',\n 'Vivaldi',\n 'Yandex',\n 'Arora',\n 'Lunascape',\n 'QupZilla',\n 'Coc Coc',\n 'Kindle',\n 'Iceweasel',\n 'Konqueror',\n 'Iceape',\n 'SeaMonkey',\n 'Epiphany',\n '360',\n '360SE',\n '360EE',\n 'UC',\n 'QQBrowser',\n 'QQ',\n 'Baidu',\n 'Maxthon',\n 'Sogou',\n 'LBBROWSER',\n '2345Explorer',\n 'TheWorld',\n 'XiaoMi',\n 'Quark',\n 'Qiyu',\n 'Wechat',\n ,\n 'WechatWork',\n 'Taobao',\n 'Alipay',\n 'Weibo',\n 'Douban',\n 'Suning',\n 'iQiYi'\n ],\n os: [\n 'Windows',\n 'Linux',\n 'Mac OS',\n 'Android',\n 'Ubuntu',\n 'FreeBSD',\n 'Debian',\n 'iOS',\n 'Windows Phone',\n 'BlackBerry',\n 'MeeGo',\n 'Symbian',\n 'Chrome OS',\n 'WebOS'\n ],\n device: ['Mobile', 'Tablet', 'iPad']\n }\n}\n// 方法库\nvar MethodLibrary = {\n // 获取匹配库\n getMatchMap: monitor(function (u) {\n return {\n // 内核\n Trident: u.indexOf('Trident') > -1 || u.indexOf('NET CLR') > -1,\n Presto: u.indexOf('Presto') > -1,\n WebKit: u.indexOf('AppleWebKit') > -1,\n Gecko: u.indexOf('Gecko/') > -1,\n // 浏览器\n Safari: u.indexOf('Safari') > -1,\n Chrome: u.indexOf('Chrome') > -1 || u.indexOf('CriOS') > -1,\n IE: u.indexOf('MSIE') > -1 || u.indexOf('Trident') > -1,\n Edge: u.indexOf('Edge') > -1 || u.indexOf('Edg') > -1,\n Firefox: u.indexOf('Firefox') > -1 || u.indexOf('FxiOS') > -1,\n 'Firefox Focus': u.indexOf('Focus') > -1,\n Chromium: u.indexOf('Chromium') > -1,\n Opera: u.indexOf('Opera') > -1 || u.indexOf('OPR') > -1,\n Vivaldi: u.indexOf('Vivaldi') > -1,\n Yandex: u.indexOf('YaBrowser') > -1,\n Arora: u.indexOf('Arora') > -1,\n Lunascape: u.indexOf('Lunascape') > -1,\n QupZilla: u.indexOf('QupZilla') > -1,\n 'Coc Coc': u.indexOf('coc_coc_browser') > -1,\n Kindle: u.indexOf('Kindle') > -1 || u.indexOf('Silk/') > -1,\n Iceweasel: u.indexOf('Iceweasel') > -1,\n Konqueror: u.indexOf('Konqueror') > -1,\n Iceape: u.indexOf('Iceape') > -1,\n SeaMonkey: u.indexOf('SeaMonkey') > -1,\n Epiphany: u.indexOf('Epiphany') > -1,\n 360: u.indexOf('QihooBrowser') > -1 || u.indexOf('QHBrowser') > -1,\n '360EE': u.indexOf('360EE') > -1,\n '360SE': u.indexOf('360SE') > -1,\n UC: u.indexOf('UC') > -1 || u.indexOf(' UBrowser') > -1,\n QQBrowser: u.indexOf('QQBrowser') > -1,\n QQ: u.indexOf('QQ/') > -1,\n Baidu: u.indexOf('Baidu') > -1 || u.indexOf('BIDUBrowser') > -1,\n Maxthon: u.indexOf('Maxthon') > -1,\n Sogou: u.indexOf('MetaSr') > -1 || u.indexOf('Sogou') > -1,\n LBBROWSER: u.indexOf('LBBROWSER') > -1,\n '2345Explorer': u.indexOf('2345Explorer') > -1,\n TheWorld: u.indexOf('TheWorld') > -1,\n XiaoMi: u.indexOf('MiuiBrowser') > -1,\n Quark: u.indexOf('Quark') > -1,\n Qiyu: u.indexOf('Qiyu') > -1,\n Wechat: u.indexOf('MicroMessenger') > -1,\n Taobao: u.indexOf('AliApp(TB') > -1,\n Alipay: u.indexOf('AliApp(AP') > -1,\n Weibo: u.indexOf('Weibo') > -1,\n Douban: u.indexOf('com.douban.frodo') > -1,\n Suning: u.indexOf('SNEBUY-APP') > -1,\n iQiYi: u.indexOf('IqiyiApp') > -1,\n // 系统或平台\n Windows: u.indexOf('Windows') > -1,\n Linux: u.indexOf('Linux') > -1 || u.indexOf('X11') > -1,\n 'Mac OS': u.indexOf('Macintosh') > -1,\n Android: u.indexOf('Android') > -1 || u.indexOf('Adr') > -1,\n Ubuntu: u.indexOf('Ubuntu') > -1,\n FreeBSD: u.indexOf('FreeBSD') > -1,\n Debian: u.indexOf('Debian') > -1,\n 'Windows Phone':\n u.indexOf('IEMobile') > -1 || u.indexOf('Windows Phone') > -1,\n BlackBerry: u.indexOf('BlackBerry') > -1 || u.indexOf('RIM') > -1,\n MeeGo: u.indexOf('MeeGo') > -1,\n Symbian: u.indexOf('Symbian') > -1,\n iOS: u.indexOf('like Mac OS X') > -1,\n 'Chrome OS': u.indexOf('CrOS') > -1,\n WebOS: u.indexOf('hpwOS') > -1,\n // 设备\n Mobile:\n u.indexOf('Mobi') > -1 ||\n u.indexOf('iPh') > -1 ||\n u.indexOf('480') > -1,\n Tablet: u.indexOf('Tablet') > -1 || u.indexOf('Nexus 7') > -1,\n iPad: u.indexOf('iPad') > -1\n }\n }),\n // 在信息map和匹配库中进行匹配\n matchInfoMap: monitor(function (_this) {\n var u = VariableLibrary.navigator.userAgent || ''\n var match = MethodLibrary.getMatchMap(u)\n for (var s in VariableLibrary.infoMap) {\n for (var i = 0; i < VariableLibrary.infoMap[s].length; i++) {\n var value = VariableLibrary.infoMap[s][i]\n if (match[value]) {\n _this[s] = value\n }\n }\n }\n }),\n // 获取当前操作系统\n getOS: monitor(function () {\n var _this = this\n MethodLibrary.matchInfoMap(_this)\n return _this.os || 'Unknown'\n }),\n // 获取操作系统版本\n getOSVersion: monitor(function () {\n var _this = this\n var u = VariableLibrary.navigator.userAgent || ''\n _this.osVersion = ''\n _this.osMajor = ''\n // 系统版本信息\n var osVersion = {\n Windows: function () {\n var v = u.replace(/^.*Windows NT ([\\d.]+);.*$/, '$1')\n var oldWindowsVersionMap = {\n 6.4: '10',\n 6.3: '8.1',\n 6.2: '8',\n 6.1: '7',\n '6.0': 'Vista',\n 5.2: 'XP',\n 5.1: 'XP',\n '5.0': '2000'\n }\n return oldWindowsVersionMap[v] || v\n },\n Android: function () {\n return u.replace(/^.*Android ([\\d.]+);.*$/, '$1')\n },\n iOS: function () {\n return u.replace(/^.*OS ([\\d_]+) like.*$/, '$1').replace(/_/g, '.')\n },\n Debian: function () {\n return u.replace(/^.*Debian\\/([\\d.]+).*$/, '$1')\n },\n 'Windows Phone': function () {\n return u.replace(/^.*Windows Phone( OS)? ([\\d.]+);.*$/, '$2')\n },\n 'Mac OS': function () {\n return u.replace(/^.*Mac OS X ([\\d_]+).*$/, '$1').replace(/_/g, '.')\n },\n WebOS: function () {\n return u.replace(/^.*hpwOS\\/([\\d.]+);.*$/, '$1')\n }\n }\n if (osVersion[_this.os]) {\n _this.osVersion = osVersion[_this.os]()\n if (_this.osVersion === u) {\n _this.osVersion = ''\n }\n }\n if (_this.osVersion) {\n _this.osMajor =\n _this.osVersion.split('.').length && _this.osVersion.split('.')[0]\n }\n return {\n version: _this.osVersion,\n osMajor: _this.osMajor\n }\n }),\n // 获取横竖屏状态\n getOrientationStatu: monitor(function () {\n var orientationStatus = ''\n var orientation = window.matchMedia('(orientation: portrait)')\n if (orientation.matches) {\n orientationStatus = '竖屏'\n } else {\n orientationStatus = '横屏'\n }\n return orientationStatus\n }),\n // 获取设备类型\n getDeviceType: monitor(function () {\n var _this = this\n _this.device = 'PC'\n MethodLibrary.matchInfoMap(_this)\n return _this.device\n }),\n // 获取网络状态\n getNetwork: monitor(function () {\n var connection =\n window.navigator.connection ||\n window.navigator.mozConnection ||\n window.navigator.webkitConnection\n var result = 'unknown'\n var type = connection ? connection.type || connection.effectiveType : null\n if (type && typeof type === 'string') {\n switch (type) {\n // possible type values\n case 'bluetooth':\n case 'cellular':\n result = 'cellular'\n break\n case 'none':\n result = 'none'\n break\n case 'ethernet':\n case 'wifi':\n case 'wimax':\n result = 'wifi'\n break\n case 'other':\n case 'unknown':\n result = 'unknown'\n break\n // possible effectiveType values\n case 'slow-2g':\n case '2g':\n case '3g':\n result = 'cellular'\n break\n case '4g':\n result = 'wifi'\n break\n default:\n break\n }\n }\n return result\n }),\n // 获取当前语言\n getLanguage: monitor(function () {\n var _this = this\n _this.language = (function () {\n var language =\n VariableLibrary.navigator.browserLanguage ||\n VariableLibrary.navigator.language ||\n ''\n var arr = language.split('-')\n if (arr[1]) {\n arr[1] = arr[1].toUpperCase()\n }\n return arr.join('_')\n })()\n return _this.language\n }),\n getTimeZone: monitor(function () {\n const timeZone = Intl.DateTimeFormat().resolvedOptions().timeZone\n return timeZone\n }),\n // 浏览器信息\n getBrowserInfo: monitor(function () {\n var _this = this\n MethodLibrary.matchInfoMap(_this)\n\n var u = VariableLibrary.navigator.userAgent || ''\n\n var _mime = function (option, value) {\n var mimeTypes = VariableLibrary.navigator.mimeTypes\n for (var key in mimeTypes) {\n if (mimeTypes[key][option] == value) {\n return true\n }\n }\n return false\n }\n\n var match = MethodLibrary.getMatchMap(u)\n\n var is360 = false\n if (typeof window !== 'undefined' && window.chrome) {\n var chrome_version = u.replace(/^.*Chrome\\/([\\d]+).*$/, '$1')\n if (chrome_version > 36 && window.showModalDialog) {\n is360 = true\n } else if (chrome_version > 45) {\n is360 = _mime('type', 'application/vnd.chromium.remoting-viewer')\n }\n }\n if (match['Baidu'] && match['Opera']) {\n match['Baidu'] = false\n }\n if (match['Mobile']) {\n match['Mobile'] = !(u.indexOf('iPad') > -1)\n }\n if (is360) {\n if (_mime('type', 'application/gameplugin')) {\n match['360SE'] = true\n } else if (\n VariableLibrary.navigator &&\n VariableLibrary.navigator.connection &&\n typeof VariableLibrary.navigator['connection']['saveData'] ==\n 'undefined'\n ) {\n match['360SE'] = true\n } else {\n match['360EE'] = true\n }\n }\n if (match['IE'] || match['Edge']) {\n var navigator_top = window.screenTop - window.screenY\n switch (navigator_top) {\n case 71: // 无收藏栏,贴边\n break\n case 74: // 无收藏栏,非贴边\n break\n case 99: // 有收藏栏,贴边\n break\n case 102: // 有收藏栏,非贴边\n match['360EE'] = true\n break\n case 75: // 无收藏栏,贴边\n break\n case 74: // 无收藏栏,非贴边\n break\n case 105: // 有收藏栏,贴边\n break\n case 104: // 有收藏栏,非贴边\n match['360SE'] = true\n break\n default:\n break\n }\n }\n\n var browerVersionMap = {\n Safari: function () {\n return u.replace(/^.*Version\\/([\\d.]+).*$/, '$1')\n },\n Chrome: function () {\n return u\n .replace(/^.*Chrome\\/([\\d.]+).*$/, '$1')\n .replace(/^.*CriOS\\/([\\d.]+).*$/, '$1')\n },\n IE: function () {\n return u\n .replace(/^.*MSIE ([\\d.]+).*$/, '$1')\n .replace(/^.*rv:([\\d.]+).*$/, '$1')\n },\n Edge: function () {\n return u.replace(/^.*Edge?\\/([\\d.]+).*$/, '$1')\n },\n Firefox: function () {\n return u\n .replace(/^.*Firefox\\/([\\d.]+).*$/, '$1')\n .replace(/^.*FxiOS\\/([\\d.]+).*$/, '$1')\n },\n 'Firefox Focus': function () {\n return u.replace(/^.*Focus\\/([\\d.]+).*$/, '$1')\n },\n Chromium: function () {\n return u.replace(/^.*Chromium\\/([\\d.]+).*$/, '$1')\n },\n Opera: function () {\n return u\n .replace(/^.*Opera\\/([\\d.]+).*$/, '$1')\n .replace(/^.*OPR\\/([\\d.]+).*$/, '$1')\n },\n Vivaldi: function () {\n return u.replace(/^.*Vivaldi\\/([\\d.]+).*$/, '$1')\n },\n Yandex: function () {\n return u.replace(/^.*YaBrowser\\/([\\d.]+).*$/, '$1')\n },\n Arora: function () {\n return u.replace(/^.*Arora\\/([\\d.]+).*$/, '$1')\n },\n Lunascape: function () {\n return u.replace(/^.*Lunascape[\\/\\s]([\\d.]+).*$/, '$1')\n },\n QupZilla: function () {\n return u.replace(/^.*QupZilla[\\/\\s]([\\d.]+).*$/, '$1')\n },\n 'Coc Coc': function () {\n return u.replace(/^.*coc_coc_browser\\/([\\d.]+).*$/, '$1')\n },\n Kindle: function () {\n return u.replace(/^.*Version\\/([\\d.]+).*$/, '$1')\n },\n Iceweasel: function () {\n return u.replace(/^.*Iceweasel\\/([\\d.]+).*$/, '$1')\n },\n Konqueror: function () {\n return u.replace(/^.*Konqueror\\/([\\d.]+).*$/, '$1')\n },\n Iceape: function () {\n return u.replace(/^.*Iceape\\/([\\d.]+).*$/, '$1')\n },\n SeaMonkey: function () {\n return u.replace(/^.*SeaMonkey\\/([\\d.]+).*$/, '$1')\n },\n Epiphany: function () {\n return u.replace(/^.*Epiphany\\/([\\d.]+).*$/, '$1')\n },\n 360: function () {\n return u.replace(/^.*QihooBrowser\\/([\\d.]+).*$/, '$1')\n },\n '360SE': function () {\n var hash = {\n 63: '10.0',\n 55: '9.1',\n 45: '8.1',\n 42: '8.0',\n 31: '7.0',\n 21: '6.3'\n }\n var chrome_version = u.replace(/^.*Chrome\\/([\\d]+).*$/, '$1')\n return hash[chrome_version] || ''\n },\n '360EE': function () {\n var hash = { 69: '11.0', 63: '9.5', 55: '9.0', 50: '8.7', 30: '7.5' }\n var chrome_version = u.replace(/^.*Chrome\\/([\\d]+).*$/, '$1')\n return hash[chrome_version] || ''\n },\n Maxthon: function () {\n return u.replace(/^.*Maxthon\\/([\\d.]+).*$/, '$1')\n },\n QQBrowser: function () {\n return u.replace(/^.*QQBrowser\\/([\\d.]+).*$/, '$1')\n },\n QQ: function () {\n return u.replace(/^.*QQ\\/([\\d.]+).*$/, '$1')\n },\n Baidu: function () {\n return u.replace(/^.*BIDUBrowser[\\s\\/]([\\d.]+).*$/, '$1')\n },\n UC: function () {\n return u.replace(/^.*UC?Browser\\/([\\d.]+).*$/, '$1')\n },\n Sogou: function () {\n return u\n .replace(/^.*SE ([\\d.X]+).*$/, '$1')\n .replace(/^.*SogouMobileBrowser\\/([\\d.]+).*$/, '$1')\n },\n LBBROWSER: function () {\n var version = ''\n if (u.indexOf('LieBaoFast') > -1) {\n version = u.replace(/^.*LieBaoFast\\/([\\d.]+).*$/, '$1')\n }\n var hash = {\n 57: '6.5',\n 49: '6.0',\n 46: '5.9',\n 42: '5.3',\n 39: '5.2',\n 34: '5.0',\n 29: '4.5',\n 21: '4.0'\n }\n var chrome_version = u.replace(/^.*Chrome\\/([\\d]+).*$/, '$1')\n return version || hash[chrome_version] || ''\n },\n '2345Explorer': function () {\n return u.replace(/^.*2345Explorer\\/([\\d.]+).*$/, '$1')\n },\n TheWorld: function () {\n return u.replace(/^.*TheWorld ([\\d.]+).*$/, '$1')\n },\n XiaoMi: function () {\n return u.replace(/^.*MiuiBrowser\\/([\\d.]+).*$/, '$1')\n },\n Quark: function () {\n return u.replace(/^.*Quark\\/([\\d.]+).*$/, '$1')\n },\n Qiyu: function () {\n return u.replace(/^.*Qiyu\\/([\\d.]+).*$/, '$1')\n },\n Wechat: function () {\n return u.replace(/^.*MicroMessenger\\/([\\d.]+).*$/, '$1')\n },\n WechatWork: function () {\n return u.replace(/^.*wxwork\\/([\\d.]+).*$/, '$1')\n },\n Taobao: function () {\n return u.replace(/^.*AliApp\\(TB\\/([\\d.]+).*$/, '$1')\n },\n Alipay: function () {\n return u.replace(/^.*AliApp\\(AP\\/([\\d.]+).*$/, '$1')\n },\n Weibo: function () {\n return u.replace(/^.*weibo__([\\d.]+).*$/, '$1')\n },\n Douban: function () {\n return u.replace(/^.*com.douban.frodo\\/([\\d.]+).*$/, '$1')\n },\n Suning: function () {\n return u.replace(/^.*SNEBUY-APP([\\d.]+).*$/, '$1')\n },\n iQiYi: function () {\n return u.replace(/^.*IqiyiVersion\\/([\\d.]+).*$/, '$1')\n }\n }\n _this.browserVersion = ''\n _this.browserMajor = ''\n if (browerVersionMap[_this.browser]) {\n _this.browserVersion = browerVersionMap[_this.browser]()\n if (_this.browserVersion == u) {\n _this.browserVersion = ''\n }\n }\n if (_this.browser == 'Chrome' && u.match(/\\S+Browser/)) {\n _this.browser = u.match(/\\S+Browser/)[0]\n _this.version = u.replace(/^.*Browser\\/([\\d.]+).*$/, '$1')\n }\n if (_this.browser == 'Edge') {\n if (_this.version > '75') {\n _this.engine = 'Blink'\n } else {\n _this.engine = 'EdgeHTML'\n }\n }\n if (_this.browser == 'Chrome' && parseInt(_this.browserVersion) > 27) {\n _this.engine = 'Blink'\n } else if (\n match['Chrome'] &&\n _this.engine == 'WebKit' &&\n parseInt(_this.browserVersion) > 27\n ) {\n _this.engine = 'Blink'\n } else if (_this.browser == 'Opera' && parseInt(_this.version) > 12) {\n _this.engine = 'Blink'\n } else if (_this.browser == 'Yandex') {\n _this.engine = 'Blink'\n }\n if (_this.browserVersion) {\n _this.browserMajor =\n _this.browserVersion.split('.').length &&\n this.browserVersion.split('.')[0]\n }\n return {\n browser: _this.browser,\n browserVersion: _this.browserVersion,\n engine: _this.engine,\n browserMajor: _this.browserMajor\n }\n }),\n // 获取地理位置\n getGeoPostion: monitor(function (callback) {\n navigator &&\n navigator.geolocation &&\n navigator.geolocation.getCurrentPosition(\n // 位置获取成功\n function (position) {\n callback(position)\n },\n // 位置获取失败\n function (error) {\n display.warn(error)\n }\n )\n })\n}\nvar _deviceInfo = {}\nif (typeof window !== 'undefined') {\n _deviceInfo = {\n os: MethodLibrary.getOS(),\n osVersion: MethodLibrary.getOSVersion().version,\n osVersionMajor: MethodLibrary.getOSVersion().osMajor,\n browser: MethodLibrary.getBrowserInfo().browser,\n browserVersion: MethodLibrary.getBrowserInfo().browserVersion,\n browserVersionMajor: MethodLibrary.getBrowserInfo().browserMajor,\n screenSize: window.screen.width + '*' + window.screen.height,\n networkType: MethodLibrary.getNetwork(),\n device: MethodLibrary.getDeviceType(),\n timeZone: MethodLibrary.getTimeZone()\n }\n}\nexport var deviceInfo = _deviceInfo\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { getGlobalObject } from '../init';
|
|
1
2
|
/**
|
|
2
3
|
* Gets the original value for a DOM API that was potentially patched by Zone.js.
|
|
3
4
|
*
|
|
@@ -12,7 +13,7 @@
|
|
|
12
13
|
* [1]: https://github.com/angular/angular/tree/main/packages/zone.js
|
|
13
14
|
*/
|
|
14
15
|
export function getZoneJsOriginalValue(target, name) {
|
|
15
|
-
var browserWindow =
|
|
16
|
+
var browserWindow = getGlobalObject();
|
|
16
17
|
var original;
|
|
17
18
|
if (browserWindow.Zone && typeof browserWindow.Zone.__symbol__ === 'function') {
|
|
18
19
|
original = target[browserWindow.Zone.__symbol__(name)];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getZoneJsOriginalValue.js","names":["getZoneJsOriginalValue","target","name","browserWindow","
|
|
1
|
+
{"version":3,"file":"getZoneJsOriginalValue.js","names":["getGlobalObject","getZoneJsOriginalValue","target","name","browserWindow","original","Zone","__symbol__"],"sources":["../../src/helper/getZoneJsOriginalValue.js"],"sourcesContent":["import { getGlobalObject } from '../init'\n/**\n * Gets the original value for a DOM API that was potentially patched by Zone.js.\n *\n * Zone.js[1] is a library that patches a bunch of JS and DOM APIs. It usually stores the original\n * value of the patched functions/constructors/methods in a hidden property prefixed by\n * __zone_symbol__.\n *\n * In multiple occasions, we observed that Zone.js is the culprit of important issues leading to\n * browser resource exhaustion (memory leak, high CPU usage). This method is used as a workaround to\n * use the original DOM API instead of the one patched by Zone.js.\n *\n * [1]: https://github.com/angular/angular/tree/main/packages/zone.js\n */\nexport function getZoneJsOriginalValue(target, name) {\n var browserWindow = getGlobalObject()\n var original\n if (\n browserWindow.Zone &&\n typeof browserWindow.Zone.__symbol__ === 'function'\n ) {\n original = target[browserWindow.Zone.__symbol__(name)]\n }\n if (!original) {\n original = target[name]\n }\n return original\n}\n"],"mappings":"AAAA,SAASA,eAAe,QAAQ,SAAS;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,sBAAsBA,CAACC,MAAM,EAAEC,IAAI,EAAE;EACnD,IAAIC,aAAa,GAAGJ,eAAe,CAAC,CAAC;EACrC,IAAIK,QAAQ;EACZ,IACED,aAAa,CAACE,IAAI,IAClB,OAAOF,aAAa,CAACE,IAAI,CAACC,UAAU,KAAK,UAAU,EACnD;IACAF,QAAQ,GAAGH,MAAM,CAACE,aAAa,CAACE,IAAI,CAACC,UAAU,CAACJ,IAAI,CAAC,CAAC;EACxD;EACA,IAAI,CAACE,QAAQ,EAAE;IACbA,QAAQ,GAAGH,MAAM,CAACC,IAAI,CAAC;EACzB;EACA,OAAOE,QAAQ;AACjB","ignoreList":[]}
|
|
@@ -2,7 +2,13 @@ import { relativeNow, ONE_MINUTE, removeItem, addDuration } from './tools';
|
|
|
2
2
|
import { setInterval, clearInterval } from './timer';
|
|
3
3
|
var END_OF_TIMES = Infinity;
|
|
4
4
|
export var CLEAR_OLD_VALUES_INTERVAL = ONE_MINUTE;
|
|
5
|
-
|
|
5
|
+
var cleanupHistoriesInterval = null;
|
|
6
|
+
var cleanupTasks = new Set();
|
|
7
|
+
function cleanupHistories() {
|
|
8
|
+
cleanupTasks.forEach(function (task) {
|
|
9
|
+
return task();
|
|
10
|
+
});
|
|
11
|
+
}
|
|
6
12
|
/**
|
|
7
13
|
*
|
|
8
14
|
* @param {expireDelay,maxEntries } params
|
|
@@ -12,15 +18,18 @@ export function createValueHistory(params) {
|
|
|
12
18
|
var expireDelay = params.expireDelay;
|
|
13
19
|
var maxEntries = params.maxEntries;
|
|
14
20
|
var entries = [];
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
21
|
+
if (cleanupHistoriesInterval) {
|
|
22
|
+
cleanupHistoriesInterval = setInterval(function () {
|
|
23
|
+
return clearExpiredValues();
|
|
24
|
+
}, CLEAR_OLD_VALUES_INTERVAL);
|
|
25
|
+
}
|
|
26
|
+
function clearExpiredValues() {
|
|
19
27
|
var oldTimeThreshold = relativeNow() - expireDelay;
|
|
20
28
|
while (entries.length > 0 && entries[entries.length - 1].endTime < oldTimeThreshold) {
|
|
21
29
|
entries.pop();
|
|
22
30
|
}
|
|
23
31
|
}
|
|
32
|
+
cleanupTasks.add(clearExpiredValues);
|
|
24
33
|
function add(value, startTime) {
|
|
25
34
|
var entry = {
|
|
26
35
|
value: value,
|
|
@@ -90,7 +99,11 @@ export function createValueHistory(params) {
|
|
|
90
99
|
* Stop internal garbage collection of past entries.
|
|
91
100
|
*/
|
|
92
101
|
function stop() {
|
|
93
|
-
|
|
102
|
+
cleanupTasks["delete"](clearExpiredValues);
|
|
103
|
+
if (cleanupTasks.size === 0 && cleanupHistoriesInterval) {
|
|
104
|
+
clearInterval(cleanupHistoriesInterval);
|
|
105
|
+
cleanupHistoriesInterval = null;
|
|
106
|
+
}
|
|
94
107
|
}
|
|
95
108
|
return {
|
|
96
109
|
add: add,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"valueHistory.js","names":["relativeNow","ONE_MINUTE","removeItem","addDuration","setInterval","clearInterval","END_OF_TIMES","Infinity","CLEAR_OLD_VALUES_INTERVAL","createValueHistory","params","expireDelay","maxEntries","entries","
|
|
1
|
+
{"version":3,"file":"valueHistory.js","names":["relativeNow","ONE_MINUTE","removeItem","addDuration","setInterval","clearInterval","END_OF_TIMES","Infinity","CLEAR_OLD_VALUES_INTERVAL","cleanupHistoriesInterval","cleanupTasks","Set","cleanupHistories","forEach","task","createValueHistory","params","expireDelay","maxEntries","entries","clearExpiredValues","oldTimeThreshold","length","endTime","pop","add","value","startTime","entry","remove","close","unshift","find","options","returnInactive","_i","entries_1","closeActive","latestEntry","findAll","duration","undefined","filter","map","reset","stop","size"],"sources":["../../src/helper/valueHistory.js"],"sourcesContent":["import { relativeNow, ONE_MINUTE, removeItem, addDuration } from './tools'\nimport { setInterval, clearInterval } from './timer'\nvar END_OF_TIMES = Infinity\n\nexport var CLEAR_OLD_VALUES_INTERVAL = ONE_MINUTE\nlet cleanupHistoriesInterval = null\n\nconst cleanupTasks = new Set()\n\nfunction cleanupHistories() {\n cleanupTasks.forEach((task) => task())\n}\n/**\n *\n * @param {expireDelay,maxEntries } params\n * @returns\n */\nexport function createValueHistory(params) {\n var expireDelay = params.expireDelay\n var maxEntries = params.maxEntries\n\n var entries = []\n if (cleanupHistoriesInterval) {\n cleanupHistoriesInterval = setInterval(function () {\n return clearExpiredValues()\n }, CLEAR_OLD_VALUES_INTERVAL)\n }\n\n function clearExpiredValues() {\n var oldTimeThreshold = relativeNow() - expireDelay\n while (\n entries.length > 0 &&\n entries[entries.length - 1].endTime < oldTimeThreshold\n ) {\n entries.pop()\n }\n }\n cleanupTasks.add(clearExpiredValues)\n function add(value, startTime) {\n var entry = {\n value: value,\n startTime: startTime,\n endTime: END_OF_TIMES,\n remove: function () {\n removeItem(entries, entry)\n },\n close: function (endTime) {\n entry.endTime = endTime\n }\n }\n\n if (maxEntries && entries.length >= maxEntries) {\n entries.pop()\n }\n\n entries.unshift(entry)\n\n return entry\n }\n\n function find(startTime, options) {\n if (typeof startTime === 'undefined') {\n startTime = END_OF_TIMES\n }\n if (typeof options === 'undefined') {\n options = { returnInactive: false }\n }\n for (var _i = 0, entries_1 = entries; _i < entries_1.length; _i++) {\n var entry = entries_1[_i]\n if (entry.startTime <= startTime) {\n if (options.returnInactive || startTime <= entry.endTime) {\n return entry.value\n }\n break\n }\n }\n }\n\n function closeActive(endTime) {\n var latestEntry = entries[0]\n if (latestEntry && latestEntry.endTime === END_OF_TIMES) {\n latestEntry.close(endTime)\n }\n }\n\n function findAll(startTime, duration) {\n if (startTime === undefined) {\n startTime = END_OF_TIMES\n }\n if (duration === undefined) {\n duration = 0\n }\n var endTime = addDuration(startTime, duration)\n return entries\n .filter(function (entry) {\n return entry.startTime <= endTime && startTime <= entry.endTime\n })\n .map(function (entry) {\n return entry.value\n })\n }\n\n /**\n * Remove all entries from this collection.\n */\n function reset() {\n entries = []\n }\n\n /**\n * Stop internal garbage collection of past entries.\n */\n function stop() {\n cleanupTasks.delete(clearExpiredValues)\n if (cleanupTasks.size === 0 && cleanupHistoriesInterval) {\n clearInterval(cleanupHistoriesInterval)\n cleanupHistoriesInterval = null\n }\n }\n\n return {\n add: add,\n find: find,\n closeActive: closeActive,\n findAll: findAll,\n reset: reset,\n stop: stop\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -41,7 +41,7 @@ export function processSessionStoreOperations(operations, sessionStoreStrategy)
|
|
|
41
41
|
var currentStore = retrieveStore();
|
|
42
42
|
if (isLockEnabled) {
|
|
43
43
|
// if someone has lock, retry later
|
|
44
|
-
if (currentStore.lock
|
|
44
|
+
if (currentStore.lock) {
|
|
45
45
|
retryLater(operations, sessionStoreStrategy, numberOfRetries);
|
|
46
46
|
return;
|
|
47
47
|
}
|
|
@@ -50,7 +50,7 @@ export function processSessionStoreOperations(operations, sessionStoreStrategy)
|
|
|
50
50
|
persistWithLock(currentStore.session);
|
|
51
51
|
// if lock is not acquired, retry later
|
|
52
52
|
currentStore = retrieveStore();
|
|
53
|
-
if (currentStore.lock !== currentLock
|
|
53
|
+
if (currentStore.lock !== currentLock) {
|
|
54
54
|
retryLater(operations, sessionStoreStrategy, numberOfRetries);
|
|
55
55
|
return;
|
|
56
56
|
}
|
|
@@ -59,7 +59,7 @@ export function processSessionStoreOperations(operations, sessionStoreStrategy)
|
|
|
59
59
|
if (isLockEnabled) {
|
|
60
60
|
// if lock corrupted after process, retry later
|
|
61
61
|
currentStore = retrieveStore();
|
|
62
|
-
if (currentStore.lock !== currentLock
|
|
62
|
+
if (currentStore.lock !== currentLock) {
|
|
63
63
|
retryLater(operations, sessionStoreStrategy, numberOfRetries);
|
|
64
64
|
return;
|
|
65
65
|
}
|
|
@@ -78,7 +78,7 @@ export function processSessionStoreOperations(operations, sessionStoreStrategy)
|
|
|
78
78
|
if (!(processedSession && isSessionInExpiredState(processedSession))) {
|
|
79
79
|
// if lock corrupted after persist, retry later
|
|
80
80
|
currentStore = retrieveStore();
|
|
81
|
-
if (currentStore.lock !== currentLock
|
|
81
|
+
if (currentStore.lock !== currentLock) {
|
|
82
82
|
retryLater(operations, sessionStoreStrategy, numberOfRetries);
|
|
83
83
|
return;
|
|
84
84
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sessionStoreOperations.js","names":["setTimeout","UUID","assign","expandSessionState","isSessionInExpiredState","isSessionInNotStartedState","LOCK_RETRY_DELAY","LOCK_MAX_TRIES","bufferedOperations","ongoingOperations","processSessionStoreOperations","operations","sessionStoreStrategy","numberOfRetries","arguments","length","undefined","isLockEnabled","persistSession","expireSession","persistWithLock","session","lock","currentLock","retrieveStore","retrieveSession","push","next","currentStore","retryLater","processedSession","process","after","sessionStore","currentNumberOfRetries","nextOperations","shift"],"sources":["../../src/session/sessionStoreOperations.js"],"sourcesContent":["import { setTimeout } from '../helper/timer'\nimport { UUID, assign } from '../helper/tools'\nimport {\n expandSessionState,\n isSessionInExpiredState,\n isSessionInNotStartedState\n} from './sessionState'\n\nexport const LOCK_RETRY_DELAY = 10\nexport const LOCK_MAX_TRIES = 100\nconst bufferedOperations = []\nlet ongoingOperations\n\nexport function processSessionStoreOperations(\n operations,\n sessionStoreStrategy,\n numberOfRetries = 0\n) {\n const { isLockEnabled, persistSession, expireSession } = sessionStoreStrategy\n const persistWithLock = function (session) {\n return persistSession(assign({}, session, { lock: currentLock }))\n }\n const retrieveStore = function () {\n const session = sessionStoreStrategy.retrieveSession()\n const lock = session.lock\n if (session.lock) {\n delete session.lock\n }\n\n return {\n session,\n lock\n }\n }\n\n if (!ongoingOperations) {\n ongoingOperations = operations\n }\n if (operations !== ongoingOperations) {\n bufferedOperations.push(operations)\n return\n }\n if (isLockEnabled && numberOfRetries >= LOCK_MAX_TRIES) {\n next(sessionStoreStrategy)\n return\n }\n let currentLock\n let currentStore = retrieveStore()\n if (isLockEnabled) {\n // if someone has lock, retry later\n if (
|
|
1
|
+
{"version":3,"file":"sessionStoreOperations.js","names":["setTimeout","UUID","assign","expandSessionState","isSessionInExpiredState","isSessionInNotStartedState","LOCK_RETRY_DELAY","LOCK_MAX_TRIES","bufferedOperations","ongoingOperations","processSessionStoreOperations","operations","sessionStoreStrategy","numberOfRetries","arguments","length","undefined","isLockEnabled","persistSession","expireSession","persistWithLock","session","lock","currentLock","retrieveStore","retrieveSession","push","next","currentStore","retryLater","processedSession","process","after","sessionStore","currentNumberOfRetries","nextOperations","shift"],"sources":["../../src/session/sessionStoreOperations.js"],"sourcesContent":["import { setTimeout } from '../helper/timer'\nimport { UUID, assign } from '../helper/tools'\nimport {\n expandSessionState,\n isSessionInExpiredState,\n isSessionInNotStartedState\n} from './sessionState'\n\nexport const LOCK_RETRY_DELAY = 10\nexport const LOCK_MAX_TRIES = 100\nconst bufferedOperations = []\nlet ongoingOperations\n\nexport function processSessionStoreOperations(\n operations,\n sessionStoreStrategy,\n numberOfRetries = 0\n) {\n const { isLockEnabled, persistSession, expireSession } = sessionStoreStrategy\n const persistWithLock = function (session) {\n return persistSession(assign({}, session, { lock: currentLock }))\n }\n const retrieveStore = function () {\n const session = sessionStoreStrategy.retrieveSession()\n const lock = session.lock\n if (session.lock) {\n delete session.lock\n }\n\n return {\n session,\n lock\n }\n }\n\n if (!ongoingOperations) {\n ongoingOperations = operations\n }\n if (operations !== ongoingOperations) {\n bufferedOperations.push(operations)\n return\n }\n if (isLockEnabled && numberOfRetries >= LOCK_MAX_TRIES) {\n next(sessionStoreStrategy)\n return\n }\n let currentLock\n let currentStore = retrieveStore()\n if (isLockEnabled) {\n // if someone has lock, retry later\n if (currentStore.lock) {\n retryLater(operations, sessionStoreStrategy, numberOfRetries)\n return\n }\n // acquire lock\n currentLock = UUID()\n persistWithLock(currentStore.session)\n // if lock is not acquired, retry later\n currentStore = retrieveStore()\n if (currentStore.lock !== currentLock) {\n retryLater(operations, sessionStoreStrategy, numberOfRetries)\n return\n }\n }\n let processedSession = operations.process(currentStore.session)\n if (isLockEnabled) {\n // if lock corrupted after process, retry later\n currentStore = retrieveStore()\n if (currentStore.lock !== currentLock) {\n retryLater(operations, sessionStoreStrategy, numberOfRetries)\n return\n }\n }\n if (processedSession) {\n if (isSessionInExpiredState(processedSession)) {\n expireSession()\n } else {\n expandSessionState(processedSession)\n isLockEnabled\n ? persistWithLock(processedSession)\n : persistSession(processedSession)\n }\n }\n if (isLockEnabled) {\n // correctly handle lock around expiration would require to handle this case properly at several levels\n // since we don't have evidence of lock issues around expiration, let's just not do the corruption check for it\n if (!(processedSession && isSessionInExpiredState(processedSession))) {\n // if lock corrupted after persist, retry later\n currentStore = retrieveStore()\n if (currentStore.lock !== currentLock) {\n retryLater(operations, sessionStoreStrategy, numberOfRetries)\n return\n }\n persistSession(currentStore.session)\n processedSession = currentStore.session\n }\n }\n // call after even if session is not persisted in order to perform operations on\n // up-to-date session state value => the value could have been modified by another tab\n if (operations.after) {\n operations.after(processedSession || currentStore.session)\n }\n next(sessionStoreStrategy)\n}\n\nfunction retryLater(operations, sessionStore, currentNumberOfRetries) {\n setTimeout(function () {\n processSessionStoreOperations(\n operations,\n sessionStore,\n currentNumberOfRetries + 1\n )\n }, LOCK_RETRY_DELAY)\n}\n\nfunction next(sessionStore) {\n ongoingOperations = undefined\n const nextOperations = bufferedOperations.shift()\n if (nextOperations) {\n processSessionStoreOperations(nextOperations, sessionStore)\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -83,7 +83,7 @@ function parseWinLine(line) {
|
|
|
83
83
|
url: parts[2]
|
|
84
84
|
};
|
|
85
85
|
}
|
|
86
|
-
var GECKO_LINE_RE = /^\s*(.*?)(?:\((.*?)\))?(?:^|@)((?:file|https?|blob|chrome|webpack|resource|capacitor|\[native).*?|[^@]*bundle)(?::(\d+))?(?::(\d+))?\s*$/i;
|
|
86
|
+
var GECKO_LINE_RE = /^\s*(.*?)(?:\((.*?)\))?(?:^|@)((?:file|https?|blob|chrome|webpack|resource|capacitor|\[native).*?|[^@]*bundle|\[wasm code\])(?::(\d+))?(?::(\d+))?\s*$/i;
|
|
87
87
|
var GECKO_EVAL_RE = /(\S+) line (\d+)(?: > eval line \d+)* > eval/i;
|
|
88
88
|
function parseGeckoLine(line) {
|
|
89
89
|
var parts = GECKO_LINE_RE.exec(line);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"computeStackTrace.js","names":["each","UNKNOWN_FUNCTION","computeStackTrace","ex","stack","stackProperty","tryToGetString","exString","String","startsWith","slice","length","split","line","stackFrame","parseChromeLine","parseChromeAnonymousLine","parseWinLine","parseGeckoLine","func","push","message","name","fileUrl","filePosition","CHROME_LINE_RE","RegExp","CHROME_EVAL_RE","parts","exec","isNative","indexOf","isEval","submatch","args","column","undefined","url","CHROME_ANONYMOUS_FUNCTION_RE","WINJS_LINE_RE","GECKO_LINE_RE","GECKO_EVAL_RE","candidate","property","_typeof","value"],"sources":["../../src/tracekit/computeStackTrace.js"],"sourcesContent":["import { each } from '../helper/tools'\nvar UNKNOWN_FUNCTION = '?'\n\n/**\n * Computes a stack trace for an exception.\n */\nexport function computeStackTrace(ex) {\n var stack = []\n\n var stackProperty = tryToGetString(ex, 'stack')\n var exString = String(ex)\n if (stackProperty && stackProperty.startsWith(exString)) {\n stackProperty = stackProperty.slice(exString.length)\n }\n if (stackProperty) {\n each(stackProperty.split('\\n'), function (line) {\n var stackFrame =\n parseChromeLine(line) ||\n parseChromeAnonymousLine(line) ||\n parseWinLine(line) ||\n parseGeckoLine(line)\n if (stackFrame) {\n if (!stackFrame.func && stackFrame.line) {\n stackFrame.func = UNKNOWN_FUNCTION\n }\n stack.push(stackFrame)\n }\n })\n }\n\n return {\n message: tryToGetString(ex, 'message'),\n name: tryToGetString(ex, 'name'),\n stack: stack\n }\n}\nvar fileUrl =\n '((?:file|https?|blob|chrome-extension|electron|native|eval|webpack|<anonymous>|\\\\w+\\\\.|\\\\/).*?)'\nvar filePosition = '(?::(\\\\d+))'\nvar CHROME_LINE_RE = new RegExp(\n '^\\\\s*at (.*?) ?\\\\(' +\n fileUrl +\n filePosition +\n '?' +\n filePosition +\n '?\\\\)?\\\\s*$',\n 'i'\n)\nvar CHROME_EVAL_RE = new RegExp(\n '\\\\((\\\\S*)' + filePosition + filePosition + '\\\\)'\n)\n\nfunction parseChromeLine(line) {\n var parts = CHROME_LINE_RE.exec(line)\n\n if (!parts) {\n return\n }\n\n var isNative = parts[2] && parts[2].indexOf('native') === 0 // start of line\n var isEval = parts[2] && parts[2].indexOf('eval') === 0 // start of line\n var submatch = CHROME_EVAL_RE.exec(parts[2])\n\n if (isEval && submatch) {\n // throw out eval line/column and use top-most line/column number\n parts[2] = submatch[1] // url\n parts[3] = submatch[2] // line\n parts[4] = submatch[3] // column\n }\n\n return {\n args: isNative ? [parts[2]] : [],\n column: parts[4] ? +parts[4] : undefined,\n func: parts[1] || UNKNOWN_FUNCTION,\n line: parts[3] ? +parts[3] : undefined,\n url: !isNative ? parts[2] : undefined\n }\n}\n\nvar CHROME_ANONYMOUS_FUNCTION_RE = new RegExp(\n '^\\\\s*at ?' + fileUrl + filePosition + '?' + filePosition + '??\\\\s*$',\n 'i'\n)\n\nfunction parseChromeAnonymousLine(line) {\n var parts = CHROME_ANONYMOUS_FUNCTION_RE.exec(line)\n\n if (!parts) {\n return\n }\n\n return {\n args: [],\n column: parts[3] ? +parts[3] : undefined,\n func: UNKNOWN_FUNCTION,\n line: parts[2] ? +parts[2] : undefined,\n url: parts[1]\n }\n}\n\nvar WINJS_LINE_RE =\n /^\\s*at (?:((?:\\[object object\\])?.+) )?\\(?((?:file|ms-appx|https?|webpack|blob):.*?):(\\d+)(?::(\\d+))?\\)?\\s*$/i\n\nfunction parseWinLine(line) {\n var parts = WINJS_LINE_RE.exec(line)\n if (!parts) {\n return\n }\n\n return {\n args: [],\n column: parts[4] ? +parts[4] : undefined,\n func: parts[1] || UNKNOWN_FUNCTION,\n line: +parts[3],\n url: parts[2]\n }\n}\n\nvar GECKO_LINE_RE =\n /^\\s*(.*?)(?:\\((.*?)\\))?(?:^|@)((?:file|https?|blob|chrome|webpack|resource|capacitor|\\[native).*?|[^@]*bundle)(?::(\\d+))?(?::(\\d+))?\\s*$/i\nvar GECKO_EVAL_RE = /(\\S+) line (\\d+)(?: > eval line \\d+)* > eval/i\n\nfunction parseGeckoLine(line) {\n var parts = GECKO_LINE_RE.exec(line)\n if (!parts) {\n return\n }\n\n var isEval = parts[3] && parts[3].indexOf(' > eval') > -1\n var submatch = GECKO_EVAL_RE.exec(parts[3])\n\n if (isEval && submatch) {\n // throw out eval line/column and use top-most line number\n parts[3] = submatch[1]\n parts[4] = submatch[2]\n parts[5] = undefined // no column when eval\n }\n\n return {\n args: parts[2] ? parts[2].split(',') : [],\n column: parts[5] ? +parts[5] : undefined,\n func: parts[1] || UNKNOWN_FUNCTION,\n line: parts[4] ? +parts[4] : undefined,\n url: parts[3]\n }\n}\n\nfunction tryToGetString(candidate, property) {\n if (typeof candidate !== 'object' || !candidate || !(property in candidate)) {\n return undefined\n }\n var value = candidate[property]\n return typeof value === 'string' ? value : undefined\n}\n"],"mappings":";AAAA,SAASA,IAAI,QAAQ,iBAAiB;AACtC,IAAIC,gBAAgB,GAAG,GAAG;;AAE1B;AACA;AACA;AACA,OAAO,SAASC,iBAAiBA,CAACC,EAAE,EAAE;EACpC,IAAIC,KAAK,GAAG,EAAE;EAEd,IAAIC,aAAa,GAAGC,cAAc,CAACH,EAAE,EAAE,OAAO,CAAC;EAC/C,IAAII,QAAQ,GAAGC,MAAM,CAACL,EAAE,CAAC;EACzB,IAAIE,aAAa,IAAIA,aAAa,CAACI,UAAU,CAACF,QAAQ,CAAC,EAAE;IACvDF,aAAa,GAAGA,aAAa,CAACK,KAAK,CAACH,QAAQ,CAACI,MAAM,CAAC;EACtD;EACA,IAAIN,aAAa,EAAE;IACjBL,IAAI,CAACK,aAAa,CAACO,KAAK,CAAC,IAAI,CAAC,EAAE,UAAUC,IAAI,EAAE;MAC9C,IAAIC,UAAU,GACZC,eAAe,CAACF,IAAI,CAAC,IACrBG,wBAAwB,CAACH,IAAI,CAAC,IAC9BI,YAAY,CAACJ,IAAI,CAAC,IAClBK,cAAc,CAACL,IAAI,CAAC;MACtB,IAAIC,UAAU,EAAE;QACd,IAAI,CAACA,UAAU,CAACK,IAAI,IAAIL,UAAU,CAACD,IAAI,EAAE;UACvCC,UAAU,CAACK,IAAI,GAAGlB,gBAAgB;QACpC;QACAG,KAAK,CAACgB,IAAI,CAACN,UAAU,CAAC;MACxB;IACF,CAAC,CAAC;EACJ;EAEA,OAAO;IACLO,OAAO,EAAEf,cAAc,CAACH,EAAE,EAAE,SAAS,CAAC;IACtCmB,IAAI,EAAEhB,cAAc,CAACH,EAAE,EAAE,MAAM,CAAC;IAChCC,KAAK,EAAEA;EACT,CAAC;AACH;AACA,IAAImB,OAAO,GACT,iGAAiG;
|
|
1
|
+
{"version":3,"file":"computeStackTrace.js","names":["each","UNKNOWN_FUNCTION","computeStackTrace","ex","stack","stackProperty","tryToGetString","exString","String","startsWith","slice","length","split","line","stackFrame","parseChromeLine","parseChromeAnonymousLine","parseWinLine","parseGeckoLine","func","push","message","name","fileUrl","filePosition","CHROME_LINE_RE","RegExp","CHROME_EVAL_RE","parts","exec","isNative","indexOf","isEval","submatch","args","column","undefined","url","CHROME_ANONYMOUS_FUNCTION_RE","WINJS_LINE_RE","GECKO_LINE_RE","GECKO_EVAL_RE","candidate","property","_typeof","value"],"sources":["../../src/tracekit/computeStackTrace.js"],"sourcesContent":["import { each } from '../helper/tools'\nvar UNKNOWN_FUNCTION = '?'\n\n/**\n * Computes a stack trace for an exception.\n */\nexport function computeStackTrace(ex) {\n var stack = []\n\n var stackProperty = tryToGetString(ex, 'stack')\n var exString = String(ex)\n if (stackProperty && stackProperty.startsWith(exString)) {\n stackProperty = stackProperty.slice(exString.length)\n }\n if (stackProperty) {\n each(stackProperty.split('\\n'), function (line) {\n var stackFrame =\n parseChromeLine(line) ||\n parseChromeAnonymousLine(line) ||\n parseWinLine(line) ||\n parseGeckoLine(line)\n if (stackFrame) {\n if (!stackFrame.func && stackFrame.line) {\n stackFrame.func = UNKNOWN_FUNCTION\n }\n stack.push(stackFrame)\n }\n })\n }\n\n return {\n message: tryToGetString(ex, 'message'),\n name: tryToGetString(ex, 'name'),\n stack: stack\n }\n}\nvar fileUrl =\n '((?:file|https?|blob|chrome-extension|electron|native|eval|webpack|<anonymous>|\\\\w+\\\\.|\\\\/).*?)'\n\nvar filePosition = '(?::(\\\\d+))'\nvar CHROME_LINE_RE = new RegExp(\n '^\\\\s*at (.*?) ?\\\\(' +\n fileUrl +\n filePosition +\n '?' +\n filePosition +\n '?\\\\)?\\\\s*$',\n 'i'\n)\nvar CHROME_EVAL_RE = new RegExp(\n '\\\\((\\\\S*)' + filePosition + filePosition + '\\\\)'\n)\n\nfunction parseChromeLine(line) {\n var parts = CHROME_LINE_RE.exec(line)\n\n if (!parts) {\n return\n }\n\n var isNative = parts[2] && parts[2].indexOf('native') === 0 // start of line\n var isEval = parts[2] && parts[2].indexOf('eval') === 0 // start of line\n var submatch = CHROME_EVAL_RE.exec(parts[2])\n\n if (isEval && submatch) {\n // throw out eval line/column and use top-most line/column number\n parts[2] = submatch[1] // url\n parts[3] = submatch[2] // line\n parts[4] = submatch[3] // column\n }\n\n return {\n args: isNative ? [parts[2]] : [],\n column: parts[4] ? +parts[4] : undefined,\n func: parts[1] || UNKNOWN_FUNCTION,\n line: parts[3] ? +parts[3] : undefined,\n url: !isNative ? parts[2] : undefined\n }\n}\n\nvar CHROME_ANONYMOUS_FUNCTION_RE = new RegExp(\n '^\\\\s*at ?' + fileUrl + filePosition + '?' + filePosition + '??\\\\s*$',\n 'i'\n)\n\nfunction parseChromeAnonymousLine(line) {\n var parts = CHROME_ANONYMOUS_FUNCTION_RE.exec(line)\n\n if (!parts) {\n return\n }\n\n return {\n args: [],\n column: parts[3] ? +parts[3] : undefined,\n func: UNKNOWN_FUNCTION,\n line: parts[2] ? +parts[2] : undefined,\n url: parts[1]\n }\n}\n\nvar WINJS_LINE_RE =\n /^\\s*at (?:((?:\\[object object\\])?.+) )?\\(?((?:file|ms-appx|https?|webpack|blob):.*?):(\\d+)(?::(\\d+))?\\)?\\s*$/i\n\nfunction parseWinLine(line) {\n var parts = WINJS_LINE_RE.exec(line)\n if (!parts) {\n return\n }\n\n return {\n args: [],\n column: parts[4] ? +parts[4] : undefined,\n func: parts[1] || UNKNOWN_FUNCTION,\n line: +parts[3],\n url: parts[2]\n }\n}\n\nvar GECKO_LINE_RE =\n /^\\s*(.*?)(?:\\((.*?)\\))?(?:^|@)((?:file|https?|blob|chrome|webpack|resource|capacitor|\\[native).*?|[^@]*bundle|\\[wasm code\\])(?::(\\d+))?(?::(\\d+))?\\s*$/i\nvar GECKO_EVAL_RE = /(\\S+) line (\\d+)(?: > eval line \\d+)* > eval/i\n\nfunction parseGeckoLine(line) {\n var parts = GECKO_LINE_RE.exec(line)\n if (!parts) {\n return\n }\n\n var isEval = parts[3] && parts[3].indexOf(' > eval') > -1\n var submatch = GECKO_EVAL_RE.exec(parts[3])\n\n if (isEval && submatch) {\n // throw out eval line/column and use top-most line number\n parts[3] = submatch[1]\n parts[4] = submatch[2]\n parts[5] = undefined // no column when eval\n }\n\n return {\n args: parts[2] ? parts[2].split(',') : [],\n column: parts[5] ? +parts[5] : undefined,\n func: parts[1] || UNKNOWN_FUNCTION,\n line: parts[4] ? +parts[4] : undefined,\n url: parts[3]\n }\n}\n\nfunction tryToGetString(candidate, property) {\n if (typeof candidate !== 'object' || !candidate || !(property in candidate)) {\n return undefined\n }\n var value = candidate[property]\n return typeof value === 'string' ? value : undefined\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -15,7 +15,7 @@ export function getEventBridge() {
|
|
|
15
15
|
return eventBridgeGlobal.getPrivacyLevel && eventBridgeGlobal.getPrivacyLevel();
|
|
16
16
|
},
|
|
17
17
|
getAllowedWebViewHosts: function getAllowedWebViewHosts() {
|
|
18
|
-
return JSON.parse(eventBridgeGlobal.getAllowedWebViewHosts());
|
|
18
|
+
return JSON.parse(eventBridgeGlobal.getAllowedWebViewHosts && eventBridgeGlobal.getAllowedWebViewHosts() || '[]');
|
|
19
19
|
},
|
|
20
20
|
send: function send(eventType, event, viewId) {
|
|
21
21
|
var view = viewId ? {
|
|
@@ -39,6 +39,13 @@ export function bridgeSupports(capability) {
|
|
|
39
39
|
export function canUseEventBridge() {
|
|
40
40
|
var _getGlobalObject$loca;
|
|
41
41
|
var currentHost = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : (_getGlobalObject$loca = getGlobalObject().location) === null || _getGlobalObject$loca === void 0 ? void 0 : _getGlobalObject$loca.hostname;
|
|
42
|
+
var eventBridgeGlobal = getEventBridgeGlobal();
|
|
43
|
+
if (eventBridgeGlobal && eventBridgeGlobal.getAllowedWebViewHosts === undefined) {
|
|
44
|
+
return true;
|
|
45
|
+
}
|
|
46
|
+
if (eventBridgeGlobal && eventBridgeGlobal.getAllowedWebViewHosts && (eventBridgeGlobal.getAllowedWebViewHosts() === null || eventBridgeGlobal.getAllowedWebViewHosts() === undefined)) {
|
|
47
|
+
return true;
|
|
48
|
+
}
|
|
42
49
|
var bridge = getEventBridge();
|
|
43
50
|
return !!bridge && bridge.getAllowedWebViewHosts().some(function (allowedHost) {
|
|
44
51
|
return currentHost === allowedHost || currentHost.endsWith(".".concat(allowedHost));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eventBridge.js","names":["getGlobalObject","getEventBridgeGlobal","FTWebViewJavascriptBridge","getEventBridge","eventBridgeGlobal","getCapabilities","JSON","parse","getPrivacyLevel","getAllowedWebViewHosts","send","eventType","event","viewId","view","id","undefined","sendEvent","stringify","name","data","BridgeCapability","RECORDS","bridgeSupports","capability","bridge","includes","canUseEventBridge","_getGlobalObject$loca","currentHost","arguments","length","location","hostname","some","allowedHost","endsWith","concat"],"sources":["../../src/transport/eventBridge.js"],"sourcesContent":["import { getGlobalObject } from '../init'\n\nfunction getEventBridgeGlobal() {\n return getGlobalObject().FTWebViewJavascriptBridge\n}\nexport function getEventBridge() {\n var eventBridgeGlobal = getEventBridgeGlobal()\n\n if (!eventBridgeGlobal) {\n return\n }\n\n return {\n getCapabilities() {\n return JSON.parse(\n (eventBridgeGlobal.getCapabilities &&\n eventBridgeGlobal.getCapabilities()) ||\n '[]'\n )\n },\n getPrivacyLevel() {\n return (\n eventBridgeGlobal.getPrivacyLevel && eventBridgeGlobal.getPrivacyLevel()\n )\n },\n getAllowedWebViewHosts() {\n return JSON.parse(eventBridgeGlobal.getAllowedWebViewHosts())\n },\n send(eventType, event, viewId) {\n const view = viewId ? { id: viewId } : undefined\n eventBridgeGlobal.sendEvent(\n JSON.stringify({ name: eventType, data: event, view })\n )\n }\n }\n}\nexport const BridgeCapability = {\n RECORDS: 'records'\n}\nexport function bridgeSupports(capability) {\n const bridge = getEventBridge()\n\n return !!bridge && bridge.getCapabilities().includes(capability)\n}\nexport function canUseEventBridge(\n currentHost = getGlobalObject().location?.hostname\n) {\n var bridge = getEventBridge()\n
|
|
1
|
+
{"version":3,"file":"eventBridge.js","names":["getGlobalObject","getEventBridgeGlobal","FTWebViewJavascriptBridge","getEventBridge","eventBridgeGlobal","getCapabilities","JSON","parse","getPrivacyLevel","getAllowedWebViewHosts","send","eventType","event","viewId","view","id","undefined","sendEvent","stringify","name","data","BridgeCapability","RECORDS","bridgeSupports","capability","bridge","includes","canUseEventBridge","_getGlobalObject$loca","currentHost","arguments","length","location","hostname","some","allowedHost","endsWith","concat"],"sources":["../../src/transport/eventBridge.js"],"sourcesContent":["import { getGlobalObject } from '../init'\n\nfunction getEventBridgeGlobal() {\n return getGlobalObject().FTWebViewJavascriptBridge\n}\nexport function getEventBridge() {\n var eventBridgeGlobal = getEventBridgeGlobal()\n\n if (!eventBridgeGlobal) {\n return\n }\n\n return {\n getCapabilities() {\n return JSON.parse(\n (eventBridgeGlobal.getCapabilities &&\n eventBridgeGlobal.getCapabilities()) ||\n '[]'\n )\n },\n getPrivacyLevel() {\n return (\n eventBridgeGlobal.getPrivacyLevel && eventBridgeGlobal.getPrivacyLevel()\n )\n },\n getAllowedWebViewHosts() {\n return JSON.parse(\n (eventBridgeGlobal.getAllowedWebViewHosts &&\n eventBridgeGlobal.getAllowedWebViewHosts()) ||\n '[]'\n )\n },\n send(eventType, event, viewId) {\n const view = viewId ? { id: viewId } : undefined\n eventBridgeGlobal.sendEvent(\n JSON.stringify({ name: eventType, data: event, view })\n )\n }\n }\n}\nexport const BridgeCapability = {\n RECORDS: 'records'\n}\nexport function bridgeSupports(capability) {\n const bridge = getEventBridge()\n\n return !!bridge && bridge.getCapabilities().includes(capability)\n}\nexport function canUseEventBridge(\n currentHost = getGlobalObject().location?.hostname\n) {\n const eventBridgeGlobal = getEventBridgeGlobal()\n if (\n eventBridgeGlobal &&\n eventBridgeGlobal.getAllowedWebViewHosts === undefined\n ) {\n return true\n }\n if (\n eventBridgeGlobal &&\n eventBridgeGlobal.getAllowedWebViewHosts &&\n (eventBridgeGlobal.getAllowedWebViewHosts() === null ||\n eventBridgeGlobal.getAllowedWebViewHosts() === undefined)\n ) {\n return true\n }\n var bridge = getEventBridge()\n return (\n !!bridge &&\n bridge\n .getAllowedWebViewHosts()\n .some(\n (allowedHost) =>\n currentHost === allowedHost || currentHost.endsWith(`.${allowedHost}`)\n )\n )\n}\n"],"mappings":"AAAA,SAASA,eAAe,QAAQ,SAAS;AAEzC,SAASC,oBAAoBA,CAAA,EAAG;EAC9B,OAAOD,eAAe,CAAC,CAAC,CAACE,yBAAyB;AACpD;AACA,OAAO,SAASC,cAAcA,CAAA,EAAG;EAC/B,IAAIC,iBAAiB,GAAGH,oBAAoB,CAAC,CAAC;EAE9C,IAAI,CAACG,iBAAiB,EAAE;IACtB;EACF;EAEA,OAAO;IACLC,eAAe,WAAfA,eAAeA,CAAA,EAAG;MAChB,OAAOC,IAAI,CAACC,KAAK,CACdH,iBAAiB,CAACC,eAAe,IAChCD,iBAAiB,CAACC,eAAe,CAAC,CAAC,IACnC,IACJ,CAAC;IACH,CAAC;IACDG,eAAe,WAAfA,eAAeA,CAAA,EAAG;MAChB,OACEJ,iBAAiB,CAACI,eAAe,IAAIJ,iBAAiB,CAACI,eAAe,CAAC,CAAC;IAE5E,CAAC;IACDC,sBAAsB,WAAtBA,sBAAsBA,CAAA,EAAG;MACvB,OAAOH,IAAI,CAACC,KAAK,CACdH,iBAAiB,CAACK,sBAAsB,IACvCL,iBAAiB,CAACK,sBAAsB,CAAC,CAAC,IAC1C,IACJ,CAAC;IACH,CAAC;IACDC,IAAI,WAAJA,IAAIA,CAACC,SAAS,EAAEC,KAAK,EAAEC,MAAM,EAAE;MAC7B,IAAMC,IAAI,GAAGD,MAAM,GAAG;QAAEE,EAAE,EAAEF;MAAO,CAAC,GAAGG,SAAS;MAChDZ,iBAAiB,CAACa,SAAS,CACzBX,IAAI,CAACY,SAAS,CAAC;QAAEC,IAAI,EAAER,SAAS;QAAES,IAAI,EAAER,KAAK;QAAEE,IAAI,EAAJA;MAAK,CAAC,CACvD,CAAC;IACH;EACF,CAAC;AACH;AACA,OAAO,IAAMO,gBAAgB,GAAG;EAC9BC,OAAO,EAAE;AACX,CAAC;AACD,OAAO,SAASC,cAAcA,CAACC,UAAU,EAAE;EACzC,IAAMC,MAAM,GAAGtB,cAAc,CAAC,CAAC;EAE/B,OAAO,CAAC,CAACsB,MAAM,IAAIA,MAAM,CAACpB,eAAe,CAAC,CAAC,CAACqB,QAAQ,CAACF,UAAU,CAAC;AAClE;AACA,OAAO,SAASG,iBAAiBA,CAAA,EAE/B;EAAA,IAAAC,qBAAA;EAAA,IADAC,WAAW,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAd,SAAA,GAAAc,SAAA,OAAAF,qBAAA,GAAG5B,eAAe,CAAC,CAAC,CAACgC,QAAQ,cAAAJ,qBAAA,uBAA1BA,qBAAA,CAA4BK,QAAQ;EAElD,IAAM7B,iBAAiB,GAAGH,oBAAoB,CAAC,CAAC;EAChD,IACEG,iBAAiB,IACjBA,iBAAiB,CAACK,sBAAsB,KAAKO,SAAS,EACtD;IACA,OAAO,IAAI;EACb;EACA,IACEZ,iBAAiB,IACjBA,iBAAiB,CAACK,sBAAsB,KACvCL,iBAAiB,CAACK,sBAAsB,CAAC,CAAC,KAAK,IAAI,IAClDL,iBAAiB,CAACK,sBAAsB,CAAC,CAAC,KAAKO,SAAS,CAAC,EAC3D;IACA,OAAO,IAAI;EACb;EACA,IAAIS,MAAM,GAAGtB,cAAc,CAAC,CAAC;EAC7B,OACE,CAAC,CAACsB,MAAM,IACRA,MAAM,CACHhB,sBAAsB,CAAC,CAAC,CACxByB,IAAI,CACH,UAACC,WAAW;IAAA,OACVN,WAAW,KAAKM,WAAW,IAAIN,WAAW,CAACO,QAAQ,KAAAC,MAAA,CAAKF,WAAW,CAAE,CAAC;EAAA,CAC1E,CAAC;AAEP","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cloudcare/browser-core",
|
|
3
|
-
"version": "3.2.
|
|
3
|
+
"version": "3.2.25",
|
|
4
4
|
"main": "cjs/index.js",
|
|
5
5
|
"module": "esm/index.js",
|
|
6
6
|
"types": "types/index.d.ts",
|
|
@@ -22,5 +22,5 @@
|
|
|
22
22
|
"author": "dataflux",
|
|
23
23
|
"license": "MIT",
|
|
24
24
|
"description": "DataFlux RUM Web 端数据指标监控",
|
|
25
|
-
"gitHead": "
|
|
25
|
+
"gitHead": "d3ea0b253be974997fac2a295c3f033c927d65eb"
|
|
26
26
|
}
|
|
@@ -34,13 +34,18 @@ export function addEventListeners(eventTarget, eventNames, listener, options) {
|
|
|
34
34
|
options && options.passive
|
|
35
35
|
? { capture: options.capture, passive: options.passive }
|
|
36
36
|
: options && options.capture
|
|
37
|
-
|
|
37
|
+
// Use the window.EventTarget.prototype when possible to avoid wrong overrides (e.g: https://github.com/salesforce/lwc/issues/1824)
|
|
38
|
+
const listenerTarget =
|
|
39
|
+
window.EventTarget && eventTarget instanceof EventTarget
|
|
40
|
+
? window.EventTarget.prototype
|
|
41
|
+
: eventTarget
|
|
42
|
+
var add = getZoneJsOriginalValue(listenerTarget, 'addEventListener')
|
|
38
43
|
|
|
39
44
|
each(eventNames, function (eventName) {
|
|
40
45
|
add.call(eventTarget, eventName, wrappedListener, options)
|
|
41
46
|
})
|
|
42
47
|
var stop = function () {
|
|
43
|
-
var remove = getZoneJsOriginalValue(
|
|
48
|
+
var remove = getZoneJsOriginalValue(listenerTarget, 'removeEventListener')
|
|
44
49
|
each(eventNames, function (eventName) {
|
|
45
50
|
remove.call(eventTarget, eventName, wrappedListener, options)
|
|
46
51
|
})
|