@cloudcare/browser-core 3.2.48 → 3.3.0
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/asyncClocks.js +2 -2
- package/cjs/browser/asyncClocks.js.map +1 -1
- package/cjs/configuration/remoteConfiguration.js +1 -0
- package/cjs/configuration/remoteConfiguration.js.map +1 -1
- package/cjs/console/consoleObservable.js +17 -11
- package/cjs/console/consoleObservable.js.map +1 -1
- package/cjs/helper/deviceInfo.js +91 -44
- package/cjs/helper/deviceInfo.js.map +1 -1
- package/cjs/helper/errorTools.js +12 -7
- package/cjs/helper/errorTools.js.map +1 -1
- package/cjs/helper/monitor.js +11 -7
- package/cjs/helper/monitor.js.map +1 -1
- package/cjs/helper/polyfills.js +1 -1
- package/cjs/helper/polyfills.js.map +1 -1
- package/cjs/helper/tools.js +4 -4
- package/cjs/helper/tools.js.map +1 -1
- package/cjs/helper/valueHistory.js +1 -1
- package/cjs/helper/valueHistory.js.map +1 -1
- package/cjs/report/reportObservable.js +2 -2
- package/cjs/report/reportObservable.js.map +1 -1
- package/cjs/session/sessionManagement.js +1 -0
- package/cjs/session/sessionManagement.js.map +1 -1
- package/cjs/session/sessionStore.js +1 -1
- package/cjs/session/sessionStore.js.map +1 -1
- package/cjs/synthetics/syntheticsWorkerValues.js +2 -2
- package/cjs/synthetics/syntheticsWorkerValues.js.map +1 -1
- package/esm/browser/asyncClocks.js +2 -2
- package/esm/browser/asyncClocks.js.map +1 -1
- package/esm/configuration/remoteConfiguration.js +1 -0
- package/esm/configuration/remoteConfiguration.js.map +1 -1
- package/esm/console/consoleObservable.js +19 -13
- package/esm/console/consoleObservable.js.map +1 -1
- package/esm/helper/deviceInfo.js +90 -44
- package/esm/helper/deviceInfo.js.map +1 -1
- package/esm/helper/errorTools.js +11 -7
- package/esm/helper/errorTools.js.map +1 -1
- package/esm/helper/monitor.js +10 -7
- package/esm/helper/monitor.js.map +1 -1
- package/esm/helper/polyfills.js +1 -1
- package/esm/helper/polyfills.js.map +1 -1
- package/esm/helper/tools.js +4 -4
- package/esm/helper/tools.js.map +1 -1
- package/esm/helper/valueHistory.js +1 -1
- package/esm/helper/valueHistory.js.map +1 -1
- package/esm/report/reportObservable.js +2 -0
- package/esm/report/reportObservable.js.map +1 -1
- package/esm/session/sessionManagement.js +1 -0
- package/esm/session/sessionManagement.js.map +1 -1
- package/esm/session/sessionStore.js +1 -1
- package/esm/session/sessionStore.js.map +1 -1
- package/esm/synthetics/syntheticsWorkerValues.js +2 -2
- package/esm/synthetics/syntheticsWorkerValues.js.map +1 -1
- package/package.json +2 -2
- package/src/browser/asyncClocks.js +2 -2
- package/src/configuration/remoteConfiguration.js +1 -0
- package/src/console/consoleObservable.js +20 -18
- package/src/helper/deviceInfo.js +105 -53
- package/src/helper/errorTools.js +22 -12
- package/src/helper/monitor.js +10 -8
- package/src/helper/polyfills.js +1 -1
- package/src/helper/tools.js +4 -4
- package/src/helper/valueHistory.js +1 -1
- package/src/report/reportObservable.js +2 -0
- package/src/session/sessionManagement.js +1 -0
- package/src/session/sessionStore.js +4 -1
- package/src/synthetics/syntheticsWorkerValues.js +6 -4
- package/types/index.d.ts +74 -0
|
@@ -15,10 +15,10 @@ function fetchAndApplyRemoteClocks(initConfiguration, callback) {
|
|
|
15
15
|
fetchRemoteClocks(initConfiguration, function (serverTimestamp) {
|
|
16
16
|
var end = performance.now();
|
|
17
17
|
var rtt = end - start;
|
|
18
|
-
callback(applyRemoteClocks(serverTimestamp, rtt));
|
|
18
|
+
callback(applyRemoteClocks(serverTimestamp, rtt, start));
|
|
19
19
|
});
|
|
20
20
|
}
|
|
21
|
-
function applyRemoteClocks(serverTimestamp, rtt) {
|
|
21
|
+
function applyRemoteClocks(serverTimestamp, rtt, start) {
|
|
22
22
|
var estimatedClientTime = performance.timing.navigationStart + start + rtt / 2;
|
|
23
23
|
var offset = serverTimestamp - estimatedClientTime;
|
|
24
24
|
return offset;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"asyncClocks.js","names":["_addEventListener","require","_display","_transportConfiguration","timeOffset","fetchAndApplyRemoteClocks","initConfiguration","callback","start","performance","now","fetchRemoteClocks","serverTimestamp","end","rtt","applyRemoteClocks","estimatedClientTime","timing","navigationStart","offset","configuration","xhr","XMLHttpRequest","addEventListener","status","remoteConfiguration","JSON","parse","responseText","content","displayRemoteClocksFetchingError","open","buildEndpoint","send","url","datakitOrigin","datakitUrl","site","indexOf","location","origin","trim","endpoint","lastIndexOf","length","applicationId","clientToken","display","error"],"sources":["../../src/browser/asyncClocks.js"],"sourcesContent":["import { addEventListener } from './addEventListener'\nimport { display } from '../helper/display'\nimport { trim } from '../configuration/transportConfiguration'\nlet timeOffset\nexport function fetchAndApplyRemoteClocks(initConfiguration, callback) {\n const start = performance.now()\n fetchRemoteClocks(initConfiguration, (serverTimestamp) => {\n const end = performance.now()\n const rtt = end - start\n callback(applyRemoteClocks(serverTimestamp, rtt))\n })\n}\nfunction applyRemoteClocks(serverTimestamp, rtt) {\n const estimatedClientTime =\n performance.timing.navigationStart + start + rtt / 2\n\n const offset = serverTimestamp - estimatedClientTime\n return offset\n}\nexport function fetchRemoteClocks(configuration, callback) {\n const xhr = new XMLHttpRequest()\n\n addEventListener(xhr, 'load', function () {\n if (xhr.status === 200) {\n const remoteConfiguration = JSON.parse(xhr.responseText)\n callback(remoteConfiguration.content)\n } else {\n displayRemoteClocksFetchingError()\n }\n })\n\n addEventListener(xhr, 'error', function () {\n callback({})\n displayRemoteClocksFetchingError()\n })\n\n xhr.open('GET', buildEndpoint(configuration))\n xhr.send()\n}\n\nexport function buildEndpoint(configuration) {\n var url =\n configuration.datakitOrigin ||\n configuration.datakitUrl ||\n configuration.site\n if (url.indexOf('/') === 0) {\n url = location.origin + trim(url)\n }\n var endpoint = url\n if (url.lastIndexOf('/') === url.length - 1) {\n endpoint = trim(url) + 'v1/env_variable'\n } else {\n endpoint = trim(url) + '/v1/env_variable'\n }\n endpoint += '?app_id=' + configuration.applicationId\n //testing-openway.dataflux.cn/v1/env_variable?token=a47fb0cdddaa4561a90d941317cdbc0b&app_id=d1b454d0_22eb_11ef_9b66_95ca11aa2c6c&to_headless=true\n if (configuration.site && configuration.clientToken) {\n endpoint =\n endpoint + '&token=' + configuration.clientToken + '&to_headless=true'\n }\n return endpoint\n}\n\nfunction displayRemoteClocksFetchingError() {\n display.error('Error fetching the remote configuration.')\n}\n"],"mappings":";;;;;;;;AAAA,IAAAA,iBAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,uBAAA,GAAAF,OAAA;AACA,IAAIG,UAAU;AACP,SAASC,yBAAyBA,CAACC,iBAAiB,EAAEC,QAAQ,EAAE;EACrE,IAAMC,KAAK,GAAGC,WAAW,CAACC,GAAG,CAAC,CAAC;EAC/BC,iBAAiB,CAACL,iBAAiB,EAAE,UAACM,eAAe,EAAK;IACxD,IAAMC,GAAG,GAAGJ,WAAW,CAACC,GAAG,CAAC,CAAC;IAC7B,IAAMI,GAAG,GAAGD,GAAG,GAAGL,KAAK;IACvBD,QAAQ,CAACQ,iBAAiB,CAACH,eAAe,EAAEE,GAAG,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"asyncClocks.js","names":["_addEventListener","require","_display","_transportConfiguration","timeOffset","fetchAndApplyRemoteClocks","initConfiguration","callback","start","performance","now","fetchRemoteClocks","serverTimestamp","end","rtt","applyRemoteClocks","estimatedClientTime","timing","navigationStart","offset","configuration","xhr","XMLHttpRequest","addEventListener","status","remoteConfiguration","JSON","parse","responseText","content","displayRemoteClocksFetchingError","open","buildEndpoint","send","url","datakitOrigin","datakitUrl","site","indexOf","location","origin","trim","endpoint","lastIndexOf","length","applicationId","clientToken","display","error"],"sources":["../../src/browser/asyncClocks.js"],"sourcesContent":["import { addEventListener } from './addEventListener'\nimport { display } from '../helper/display'\nimport { trim } from '../configuration/transportConfiguration'\nlet timeOffset\nexport function fetchAndApplyRemoteClocks(initConfiguration, callback) {\n const start = performance.now()\n fetchRemoteClocks(initConfiguration, (serverTimestamp) => {\n const end = performance.now()\n const rtt = end - start\n callback(applyRemoteClocks(serverTimestamp, rtt, start))\n })\n}\nfunction applyRemoteClocks(serverTimestamp, rtt, start) {\n const estimatedClientTime =\n performance.timing.navigationStart + start + rtt / 2\n\n const offset = serverTimestamp - estimatedClientTime\n return offset\n}\nexport function fetchRemoteClocks(configuration, callback) {\n const xhr = new XMLHttpRequest()\n\n addEventListener(xhr, 'load', function () {\n if (xhr.status === 200) {\n const remoteConfiguration = JSON.parse(xhr.responseText)\n callback(remoteConfiguration.content)\n } else {\n displayRemoteClocksFetchingError()\n }\n })\n\n addEventListener(xhr, 'error', function () {\n callback({})\n displayRemoteClocksFetchingError()\n })\n\n xhr.open('GET', buildEndpoint(configuration))\n xhr.send()\n}\n\nexport function buildEndpoint(configuration) {\n var url =\n configuration.datakitOrigin ||\n configuration.datakitUrl ||\n configuration.site\n if (url.indexOf('/') === 0) {\n url = location.origin + trim(url)\n }\n var endpoint = url\n if (url.lastIndexOf('/') === url.length - 1) {\n endpoint = trim(url) + 'v1/env_variable'\n } else {\n endpoint = trim(url) + '/v1/env_variable'\n }\n endpoint += '?app_id=' + configuration.applicationId\n //testing-openway.dataflux.cn/v1/env_variable?token=a47fb0cdddaa4561a90d941317cdbc0b&app_id=d1b454d0_22eb_11ef_9b66_95ca11aa2c6c&to_headless=true\n if (configuration.site && configuration.clientToken) {\n endpoint =\n endpoint + '&token=' + configuration.clientToken + '&to_headless=true'\n }\n return endpoint\n}\n\nfunction displayRemoteClocksFetchingError() {\n display.error('Error fetching the remote configuration.')\n}\n"],"mappings":";;;;;;;;AAAA,IAAAA,iBAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,uBAAA,GAAAF,OAAA;AACA,IAAIG,UAAU;AACP,SAASC,yBAAyBA,CAACC,iBAAiB,EAAEC,QAAQ,EAAE;EACrE,IAAMC,KAAK,GAAGC,WAAW,CAACC,GAAG,CAAC,CAAC;EAC/BC,iBAAiB,CAACL,iBAAiB,EAAE,UAACM,eAAe,EAAK;IACxD,IAAMC,GAAG,GAAGJ,WAAW,CAACC,GAAG,CAAC,CAAC;IAC7B,IAAMI,GAAG,GAAGD,GAAG,GAAGL,KAAK;IACvBD,QAAQ,CAACQ,iBAAiB,CAACH,eAAe,EAAEE,GAAG,EAAEN,KAAK,CAAC,CAAC;EAC1D,CAAC,CAAC;AACJ;AACA,SAASO,iBAAiBA,CAACH,eAAe,EAAEE,GAAG,EAAEN,KAAK,EAAE;EACtD,IAAMQ,mBAAmB,GACvBP,WAAW,CAACQ,MAAM,CAACC,eAAe,GAAGV,KAAK,GAAGM,GAAG,GAAG,CAAC;EAEtD,IAAMK,MAAM,GAAGP,eAAe,GAAGI,mBAAmB;EACpD,OAAOG,MAAM;AACf;AACO,SAASR,iBAAiBA,CAACS,aAAa,EAAEb,QAAQ,EAAE;EACzD,IAAMc,GAAG,GAAG,IAAIC,cAAc,CAAC,CAAC;EAEhC,IAAAC,kCAAgB,EAACF,GAAG,EAAE,MAAM,EAAE,YAAY;IACxC,IAAIA,GAAG,CAACG,MAAM,KAAK,GAAG,EAAE;MACtB,IAAMC,mBAAmB,GAAGC,IAAI,CAACC,KAAK,CAACN,GAAG,CAACO,YAAY,CAAC;MACxDrB,QAAQ,CAACkB,mBAAmB,CAACI,OAAO,CAAC;IACvC,CAAC,MAAM;MACLC,gCAAgC,CAAC,CAAC;IACpC;EACF,CAAC,CAAC;EAEF,IAAAP,kCAAgB,EAACF,GAAG,EAAE,OAAO,EAAE,YAAY;IACzCd,QAAQ,CAAC,CAAC,CAAC,CAAC;IACZuB,gCAAgC,CAAC,CAAC;EACpC,CAAC,CAAC;EAEFT,GAAG,CAACU,IAAI,CAAC,KAAK,EAAEC,aAAa,CAACZ,aAAa,CAAC,CAAC;EAC7CC,GAAG,CAACY,IAAI,CAAC,CAAC;AACZ;AAEO,SAASD,aAAaA,CAACZ,aAAa,EAAE;EAC3C,IAAIc,GAAG,GACLd,aAAa,CAACe,aAAa,IAC3Bf,aAAa,CAACgB,UAAU,IACxBhB,aAAa,CAACiB,IAAI;EACpB,IAAIH,GAAG,CAACI,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;IAC1BJ,GAAG,GAAGK,QAAQ,CAACC,MAAM,GAAG,IAAAC,4BAAI,EAACP,GAAG,CAAC;EACnC;EACA,IAAIQ,QAAQ,GAAGR,GAAG;EAClB,IAAIA,GAAG,CAACS,WAAW,CAAC,GAAG,CAAC,KAAKT,GAAG,CAACU,MAAM,GAAG,CAAC,EAAE;IAC3CF,QAAQ,GAAG,IAAAD,4BAAI,EAACP,GAAG,CAAC,GAAG,iBAAiB;EAC1C,CAAC,MAAM;IACLQ,QAAQ,GAAG,IAAAD,4BAAI,EAACP,GAAG,CAAC,GAAG,kBAAkB;EAC3C;EACAQ,QAAQ,IAAI,UAAU,GAAGtB,aAAa,CAACyB,aAAa;EACpD;EACA,IAAIzB,aAAa,CAACiB,IAAI,IAAIjB,aAAa,CAAC0B,WAAW,EAAE;IACnDJ,QAAQ,GACNA,QAAQ,GAAG,SAAS,GAAGtB,aAAa,CAAC0B,WAAW,GAAG,mBAAmB;EAC1E;EACA,OAAOJ,QAAQ;AACjB;AAEA,SAASZ,gCAAgCA,CAAA,EAAG;EAC1CiB,gBAAO,CAACC,KAAK,CAAC,0CAA0C,CAAC;AAC3D","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remoteConfiguration.js","names":["_addEventListener","require","_display","_transportConfiguration","_tools","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","_typeof","Symbol","toPrimitive","call","TypeError","String","Number","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","a","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","n","l","iterator","u","f","next","done","isArray","fetchAndApplyRemoteConfiguration","initConfiguration","callback","fetchRemoteConfiguration","remoteInitConfiguration","applyRemoteConfiguration","getSimpleRemoteConfiguration","modifiableFieldPaths","sessionSampleRate","telemetrySampleRate","silentMultipleInit","service","env","version","tracingSampleRate","useCrossSiteSessionCookie","usePartitionedCrossSiteSessionCookie","useSecureSessionCookie","trackSessionAcrossSubdomains","storeContextsToLocal","storeContextsKey","sendContentTypeByJson","allowFallbackToLocalStorage","sessionOnErrorSampleRate","sessionReplaySampleRate","sessionReplayOnErrorSampleRate","trackUserInteractions","trackInteractions","actionNameAttribute","trackViewsManually","workerUrl","compressIntakeRequests","traceType","modificationByFieldsPath","remoteConfiguration","result","objectEntries","_ref","_ref2","fieldPath","fieldType","remoteValue","getType","simpleRemoteInitConfiguration","key","undefined","simpleKey","replace","applicationId","configuration","xhr","XMLHttpRequest","addEventListener","status","JSON","parse","responseText","content","displayRemoteConfigurationFetchingError","open","buildEndpoint","send","url","datakitOrigin","datakitUrl","site","indexOf","location","origin","trim","endpoint","lastIndexOf","clientToken","display","error"],"sources":["../../src/configuration/remoteConfiguration.js"],"sourcesContent":["import { addEventListener } from '../browser/addEventListener'\nimport { display } from '../helper/display'\nimport { trim } from './transportConfiguration'\nimport { objectEntries, getType } from '../helper/tools'\nexport function fetchAndApplyRemoteConfiguration(initConfiguration, callback) {\n fetchRemoteConfiguration(initConfiguration, (remoteInitConfiguration) => {\n callback(\n applyRemoteConfiguration(initConfiguration, remoteInitConfiguration),\n getSimpleRemoteConfiguration(initConfiguration, remoteInitConfiguration)\n )\n })\n}\n\nconst modifiableFieldPaths = {\n sessionSampleRate: 'number',\n telemetrySampleRate: 'number',\n silentMultipleInit: 'boolean',\n service: 'string',\n env: 'string',\n version: 'string',\n tracingSampleRate: 'number',\n useCrossSiteSessionCookie: 'boolean',\n usePartitionedCrossSiteSessionCookie: 'boolean',\n useSecureSessionCookie: 'boolean',\n trackSessionAcrossSubdomains: 'boolean',\n storeContextsToLocal: 'boolean',\n storeContextsKey: 'string',\n sendContentTypeByJson: 'boolean',\n allowFallbackToLocalStorage: 'boolean',\n sessionOnErrorSampleRate: 'number',\n sessionReplaySampleRate: 'number',\n sessionReplayOnErrorSampleRate: 'number',\n trackUserInteractions: 'boolean',\n trackInteractions: 'boolean',\n actionNameAttribute: 'string',\n trackViewsManually: 'boolean',\n workerUrl: 'string',\n compressIntakeRequests: 'boolean',\n traceType: 'string'\n}\nfunction modificationByFieldsPath(remoteConfiguration, modifiableFieldPaths) {\n const result = {}\n objectEntries(modifiableFieldPaths).forEach(([fieldPath, fieldType]) => {\n // const sourceValue = sourceConfiguration[fieldPath]\n const remoteValue = remoteConfiguration[fieldPath]\n if (getType(remoteValue) === fieldType) {\n result[fieldPath] = remoteValue\n }\n })\n return result\n}\nexport function getSimpleRemoteConfiguration(\n initConfiguration,\n remoteInitConfiguration\n) {\n const simpleRemoteInitConfiguration = {}\n for (const key in remoteInitConfiguration) {\n if (remoteInitConfiguration[key] !== undefined) {\n // ex\n // {\n // \"R.d1b454d0_22eb_11ef_9b66_95ca11aa2c6c.sessionSampleRate\": 80\n // }\n // transform to\n // {\n // \"sessionSampleRate\": 80\n // }\n const simpleKey = key.replace(\n 'R.' + initConfiguration.applicationId + '.',\n ''\n )\n simpleRemoteInitConfiguration[simpleKey] = remoteInitConfiguration[key]\n }\n }\n return simpleRemoteInitConfiguration\n}\nexport function applyRemoteConfiguration(\n initConfiguration,\n remoteInitConfiguration\n) {\n const simpleRemoteInitConfiguration = getSimpleRemoteConfiguration(\n initConfiguration,\n remoteInitConfiguration\n )\n return {\n ...initConfiguration,\n ...modificationByFieldsPath(\n simpleRemoteInitConfiguration,\n modifiableFieldPaths\n )\n }\n}\n\nexport function fetchRemoteConfiguration(configuration, callback) {\n const xhr = new XMLHttpRequest()\n\n addEventListener(xhr, 'load', function () {\n if (xhr.status === 200) {\n const remoteConfiguration = JSON.parse(xhr.responseText)\n callback(remoteConfiguration.content)\n } else {\n callback({})\n displayRemoteConfigurationFetchingError()\n }\n })\n\n addEventListener(xhr, 'error', function () {\n callback({})\n displayRemoteConfigurationFetchingError()\n })\n\n xhr.open('GET', buildEndpoint(configuration))\n xhr.send()\n}\n\nexport function buildEndpoint(configuration) {\n var url =\n configuration.datakitOrigin ||\n configuration.datakitUrl ||\n configuration.site\n if (url.indexOf('/') === 0) {\n url = location.origin + trim(url)\n }\n var endpoint = url\n if (url.lastIndexOf('/') === url.length - 1) {\n endpoint = trim(url) + 'v1/env_variable'\n } else {\n endpoint = trim(url) + '/v1/env_variable'\n }\n endpoint += '?app_id=' + configuration.applicationId\n //testing-openway.dataflux.cn/v1/env_variable?token=a47fb0cdddaa4561a90d941317cdbc0b&app_id=d1b454d0_22eb_11ef_9b66_95ca11aa2c6c&to_headless=true\n if (configuration.site && configuration.clientToken) {\n endpoint =\n endpoint + '&token=' + configuration.clientToken + '&to_headless=true'\n }\n return endpoint\n}\n\nfunction displayRemoteConfigurationFetchingError() {\n display.error('Error fetching the remote configuration.')\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"remoteConfiguration.js","names":["_addEventListener","require","_display","_transportConfiguration","_tools","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","_typeof","Symbol","toPrimitive","call","TypeError","String","Number","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","a","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","n","l","iterator","u","f","next","done","isArray","fetchAndApplyRemoteConfiguration","initConfiguration","callback","fetchRemoteConfiguration","remoteInitConfiguration","applyRemoteConfiguration","getSimpleRemoteConfiguration","modifiableFieldPaths","sessionSampleRate","telemetrySampleRate","silentMultipleInit","service","env","version","tracingSampleRate","useCrossSiteSessionCookie","usePartitionedCrossSiteSessionCookie","useSecureSessionCookie","trackSessionAcrossSubdomains","storeContextsToLocal","storeContextsKey","sendContentTypeByJson","allowFallbackToLocalStorage","sessionOnErrorSampleRate","sessionReplaySampleRate","sessionReplayOnErrorSampleRate","trackUserInteractions","trackInteractions","actionNameAttribute","trackViewsManually","workerUrl","replayCanvasWorkerUrl","compressIntakeRequests","traceType","modificationByFieldsPath","remoteConfiguration","result","objectEntries","_ref","_ref2","fieldPath","fieldType","remoteValue","getType","simpleRemoteInitConfiguration","key","undefined","simpleKey","replace","applicationId","configuration","xhr","XMLHttpRequest","addEventListener","status","JSON","parse","responseText","content","displayRemoteConfigurationFetchingError","open","buildEndpoint","send","url","datakitOrigin","datakitUrl","site","indexOf","location","origin","trim","endpoint","lastIndexOf","clientToken","display","error"],"sources":["../../src/configuration/remoteConfiguration.js"],"sourcesContent":["import { addEventListener } from '../browser/addEventListener'\nimport { display } from '../helper/display'\nimport { trim } from './transportConfiguration'\nimport { objectEntries, getType } from '../helper/tools'\nexport function fetchAndApplyRemoteConfiguration(initConfiguration, callback) {\n fetchRemoteConfiguration(initConfiguration, (remoteInitConfiguration) => {\n callback(\n applyRemoteConfiguration(initConfiguration, remoteInitConfiguration),\n getSimpleRemoteConfiguration(initConfiguration, remoteInitConfiguration)\n )\n })\n}\n\nconst modifiableFieldPaths = {\n sessionSampleRate: 'number',\n telemetrySampleRate: 'number',\n silentMultipleInit: 'boolean',\n service: 'string',\n env: 'string',\n version: 'string',\n tracingSampleRate: 'number',\n useCrossSiteSessionCookie: 'boolean',\n usePartitionedCrossSiteSessionCookie: 'boolean',\n useSecureSessionCookie: 'boolean',\n trackSessionAcrossSubdomains: 'boolean',\n storeContextsToLocal: 'boolean',\n storeContextsKey: 'string',\n sendContentTypeByJson: 'boolean',\n allowFallbackToLocalStorage: 'boolean',\n sessionOnErrorSampleRate: 'number',\n sessionReplaySampleRate: 'number',\n sessionReplayOnErrorSampleRate: 'number',\n trackUserInteractions: 'boolean',\n trackInteractions: 'boolean',\n actionNameAttribute: 'string',\n trackViewsManually: 'boolean',\n workerUrl: 'string',\n replayCanvasWorkerUrl: 'string',\n compressIntakeRequests: 'boolean',\n traceType: 'string'\n}\nfunction modificationByFieldsPath(remoteConfiguration, modifiableFieldPaths) {\n const result = {}\n objectEntries(modifiableFieldPaths).forEach(([fieldPath, fieldType]) => {\n // const sourceValue = sourceConfiguration[fieldPath]\n const remoteValue = remoteConfiguration[fieldPath]\n if (getType(remoteValue) === fieldType) {\n result[fieldPath] = remoteValue\n }\n })\n return result\n}\nexport function getSimpleRemoteConfiguration(\n initConfiguration,\n remoteInitConfiguration\n) {\n const simpleRemoteInitConfiguration = {}\n for (const key in remoteInitConfiguration) {\n if (remoteInitConfiguration[key] !== undefined) {\n // ex\n // {\n // \"R.d1b454d0_22eb_11ef_9b66_95ca11aa2c6c.sessionSampleRate\": 80\n // }\n // transform to\n // {\n // \"sessionSampleRate\": 80\n // }\n const simpleKey = key.replace(\n 'R.' + initConfiguration.applicationId + '.',\n ''\n )\n simpleRemoteInitConfiguration[simpleKey] = remoteInitConfiguration[key]\n }\n }\n return simpleRemoteInitConfiguration\n}\nexport function applyRemoteConfiguration(\n initConfiguration,\n remoteInitConfiguration\n) {\n const simpleRemoteInitConfiguration = getSimpleRemoteConfiguration(\n initConfiguration,\n remoteInitConfiguration\n )\n return {\n ...initConfiguration,\n ...modificationByFieldsPath(\n simpleRemoteInitConfiguration,\n modifiableFieldPaths\n )\n }\n}\n\nexport function fetchRemoteConfiguration(configuration, callback) {\n const xhr = new XMLHttpRequest()\n\n addEventListener(xhr, 'load', function () {\n if (xhr.status === 200) {\n const remoteConfiguration = JSON.parse(xhr.responseText)\n callback(remoteConfiguration.content)\n } else {\n callback({})\n displayRemoteConfigurationFetchingError()\n }\n })\n\n addEventListener(xhr, 'error', function () {\n callback({})\n displayRemoteConfigurationFetchingError()\n })\n\n xhr.open('GET', buildEndpoint(configuration))\n xhr.send()\n}\n\nexport function buildEndpoint(configuration) {\n var url =\n configuration.datakitOrigin ||\n configuration.datakitUrl ||\n configuration.site\n if (url.indexOf('/') === 0) {\n url = location.origin + trim(url)\n }\n var endpoint = url\n if (url.lastIndexOf('/') === url.length - 1) {\n endpoint = trim(url) + 'v1/env_variable'\n } else {\n endpoint = trim(url) + '/v1/env_variable'\n }\n endpoint += '?app_id=' + configuration.applicationId\n //testing-openway.dataflux.cn/v1/env_variable?token=a47fb0cdddaa4561a90d941317cdbc0b&app_id=d1b454d0_22eb_11ef_9b66_95ca11aa2c6c&to_headless=true\n if (configuration.site && configuration.clientToken) {\n endpoint =\n endpoint + '&token=' + configuration.clientToken + '&to_headless=true'\n }\n return endpoint\n}\n\nfunction displayRemoteConfigurationFetchingError() {\n display.error('Error fetching the remote configuration.')\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -13,6 +13,7 @@ var _jsonStringify = require("../helper/serialisation/jsonStringify");
|
|
|
13
13
|
var _display = require("../helper/display");
|
|
14
14
|
var _monitor = require("../helper/monitor");
|
|
15
15
|
var _enums = require("../helper/enums");
|
|
16
|
+
var _sanitize = require("../helper/sanitize");
|
|
16
17
|
var consoleObservablesByApi = {};
|
|
17
18
|
function initConsoleObservable(apis) {
|
|
18
19
|
var consoleObservables = (0, _tools.map)(apis, function (api) {
|
|
@@ -47,35 +48,40 @@ function buildConsoleLog(params, api, handlingStack) {
|
|
|
47
48
|
var message = (0, _tools.map)(params, function (param) {
|
|
48
49
|
return formatConsoleParameters(param);
|
|
49
50
|
}).join(' ');
|
|
50
|
-
var error;
|
|
51
51
|
if (api === _display.ConsoleApiName.error) {
|
|
52
|
-
var firstErrorParam = (0, _tools.find)(params,
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
error = {
|
|
56
|
-
stack: firstErrorParam ? (0, _errorTools.toStackTraceString)((0, _tracekit.computeStackTrace)(firstErrorParam)) : undefined,
|
|
57
|
-
causes: firstErrorParam ? (0, _errorTools.flattenErrorCauses)(firstErrorParam, 'console') : undefined,
|
|
52
|
+
var firstErrorParam = (0, _tools.find)(params, _errorTools.isError);
|
|
53
|
+
var rawError = (0, _errorTools.computeRawError)({
|
|
54
|
+
originalError: firstErrorParam,
|
|
58
55
|
startClocks: (0, _tools.clocksNow)(),
|
|
59
56
|
message: message,
|
|
60
57
|
source: _errorTools.ErrorSource.CONSOLE,
|
|
61
58
|
handling: _enums.ErrorHandling.HANDLED,
|
|
59
|
+
handlingStack: handlingStack,
|
|
60
|
+
nonErrorPrefix: _enums.NonErrorPrefix.PROVIDED,
|
|
61
|
+
useFallbackStack: false
|
|
62
|
+
});
|
|
63
|
+
rawError.message = message;
|
|
64
|
+
return {
|
|
65
|
+
api: api,
|
|
66
|
+
message: message,
|
|
67
|
+
error: rawError,
|
|
62
68
|
handlingStack: handlingStack
|
|
63
69
|
};
|
|
64
70
|
}
|
|
65
71
|
return {
|
|
66
72
|
api: api,
|
|
67
73
|
message: message,
|
|
68
|
-
error:
|
|
74
|
+
error: undefined,
|
|
69
75
|
handlingStack: handlingStack
|
|
70
76
|
};
|
|
71
77
|
}
|
|
72
78
|
function formatConsoleParameters(param) {
|
|
73
79
|
if (typeof param === 'string') {
|
|
74
|
-
return param;
|
|
80
|
+
return (0, _sanitize.sanitize)(param);
|
|
75
81
|
}
|
|
76
|
-
if (
|
|
82
|
+
if ((0, _errorTools.isError)(param)) {
|
|
77
83
|
return (0, _errorTools.formatErrorMessage)((0, _tracekit.computeStackTrace)(param));
|
|
78
84
|
}
|
|
79
|
-
return (0, _jsonStringify.jsonStringify)(param, undefined, 2);
|
|
85
|
+
return (0, _jsonStringify.jsonStringify)((0, _sanitize.sanitize)(param), undefined, 2);
|
|
80
86
|
}
|
|
81
87
|
//# sourceMappingURL=consoleObservable.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"consoleObservable.js","names":["_tracekit","require","_errorTools","_observable","_tools","_jsonStringify","_display","_monitor","_enums","consoleObservablesByApi","initConsoleObservable","apis","consoleObservables","map","api","createConsoleObservable","mergeObservables","apply","resetConsoleObservable","Observable","observable","originalConsoleApi","console","params","slice","call","arguments","handlingStack","createHandlingStack","callMonitored","notify","buildConsoleLog","message","param","formatConsoleParameters","join","
|
|
1
|
+
{"version":3,"file":"consoleObservable.js","names":["_tracekit","require","_errorTools","_observable","_tools","_jsonStringify","_display","_monitor","_enums","_sanitize","consoleObservablesByApi","initConsoleObservable","apis","consoleObservables","map","api","createConsoleObservable","mergeObservables","apply","resetConsoleObservable","Observable","observable","originalConsoleApi","console","params","slice","call","arguments","handlingStack","createHandlingStack","callMonitored","notify","buildConsoleLog","message","param","formatConsoleParameters","join","ConsoleApiName","error","firstErrorParam","find","isError","rawError","computeRawError","originalError","startClocks","clocksNow","source","ErrorSource","CONSOLE","handling","ErrorHandling","HANDLED","nonErrorPrefix","NonErrorPrefix","PROVIDED","useFallbackStack","undefined","sanitize","formatErrorMessage","computeStackTrace","jsonStringify"],"sources":["../../src/console/consoleObservable.js"],"sourcesContent":["import { computeStackTrace } from '../tracekit'\nimport {\n createHandlingStack,\n formatErrorMessage,\n computeRawError,\n isError\n} from '../helper/errorTools'\nimport { mergeObservables, Observable } from '../helper/observable'\nimport { find, map, clocksNow } from '../helper/tools'\nimport { jsonStringify } from '../helper/serialisation/jsonStringify'\nimport { ConsoleApiName } from '../helper/display'\nimport { callMonitored } from '../helper/monitor'\nimport { ErrorHandling, NonErrorPrefix } from '../helper/enums'\nimport { ErrorSource } from '../helper/errorTools'\nimport { sanitize } from '../helper/sanitize'\nvar consoleObservablesByApi = {}\n\nexport function initConsoleObservable(apis) {\n var consoleObservables = map(apis, function (api) {\n if (!consoleObservablesByApi[api]) {\n consoleObservablesByApi[api] = createConsoleObservable(api)\n }\n return consoleObservablesByApi[api]\n })\n\n return mergeObservables.apply(this, consoleObservables)\n}\nexport function resetConsoleObservable() {\n consoleObservablesByApi = {}\n}\n/* eslint-disable no-console */\nfunction createConsoleObservable(api) {\n return new Observable(function (observable) {\n var originalConsoleApi = console[api]\n console[api] = function () {\n var params = [].slice.call(arguments)\n originalConsoleApi.apply(console, arguments)\n var handlingStack = createHandlingStack()\n callMonitored(function () {\n observable.notify(buildConsoleLog(params, api, handlingStack))\n })\n }\n return function () {\n console[api] = originalConsoleApi\n }\n })\n}\n\nfunction buildConsoleLog(params, api, handlingStack) {\n var message = map(params, function (param) {\n return formatConsoleParameters(param)\n }).join(' ')\n if (api === ConsoleApiName.error) {\n var firstErrorParam = find(params, isError)\n const rawError = computeRawError({\n originalError: firstErrorParam,\n startClocks: clocksNow(),\n message: message,\n source: ErrorSource.CONSOLE,\n handling: ErrorHandling.HANDLED,\n handlingStack: handlingStack,\n nonErrorPrefix: NonErrorPrefix.PROVIDED,\n useFallbackStack: false\n })\n rawError.message = message\n return {\n api: api,\n message: message,\n error: rawError,\n handlingStack: handlingStack\n }\n }\n\n return {\n api: api,\n message: message,\n error: undefined,\n handlingStack: handlingStack\n }\n}\n\nfunction formatConsoleParameters(param) {\n if (typeof param === 'string') {\n return sanitize(param)\n }\n if (isError(param)) {\n return formatErrorMessage(computeStackTrace(param))\n }\n return jsonStringify(sanitize(param), undefined, 2)\n}\n"],"mappings":"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","ignoreList":[]}
|
package/cjs/helper/deviceInfo.js
CHANGED
|
@@ -4,14 +4,30 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.deviceInfo = void 0;
|
|
7
|
+
exports.getDeviceInfo = getDeviceInfo;
|
|
7
8
|
var _display = require("../helper/display");
|
|
8
9
|
var _monitor = require("../helper/monitor");
|
|
10
|
+
function getBrowserWindow() {
|
|
11
|
+
return typeof window !== 'undefined' ? window : undefined;
|
|
12
|
+
}
|
|
13
|
+
function getNavigator() {
|
|
14
|
+
var browserWindow = getBrowserWindow();
|
|
15
|
+
return browserWindow && typeof browserWindow.navigator !== 'undefined' ? browserWindow.navigator : {};
|
|
16
|
+
}
|
|
17
|
+
function getUserAgent() {
|
|
18
|
+
return getNavigator().userAgent || '';
|
|
19
|
+
}
|
|
20
|
+
function getTarget(target, context) {
|
|
21
|
+
return target || context || {};
|
|
22
|
+
}
|
|
9
23
|
var VariableLibrary = {
|
|
10
|
-
|
|
24
|
+
get navigator() {
|
|
25
|
+
return getNavigator();
|
|
26
|
+
},
|
|
11
27
|
infoMap: {
|
|
12
28
|
engine: ['WebKit', 'Trident', 'Gecko', 'Presto'],
|
|
13
|
-
browser: ['Safari', 'Chrome', 'Edge', 'IE', 'IE 11', 'IE 10', 'IE 9', 'IE 8', 'IE 7', 'Firefox', 'Firefox Focus', 'Chromium', 'Opera', 'Vivaldi', 'Yandex', 'Arora', 'Lunascape', 'QupZilla', 'Coc Coc', 'Kindle', 'Iceweasel', 'Konqueror', 'Iceape', 'SeaMonkey', 'Epiphany', '360', '360SE', '360EE', 'UC', 'QQBrowser', 'QQ', 'Baidu', 'Maxthon', 'Sogou', 'LBBROWSER', '2345Explorer', 'TheWorld', 'XiaoMi', 'Quark', 'Qiyu', 'Wechat'
|
|
14
|
-
os: ['Windows', 'Linux', 'Mac OS', 'Android', 'Ubuntu', 'FreeBSD', 'Debian', 'iOS', 'Windows Phone', 'BlackBerry', 'MeeGo', 'Symbian', 'Chrome OS', 'WebOS'],
|
|
29
|
+
browser: ['Safari', 'Chrome', 'Edge', 'IE', 'IE 11', 'IE 10', 'IE 9', 'IE 8', 'IE 7', 'Firefox', 'Firefox Focus', 'Chromium', 'Opera', 'Vivaldi', 'Yandex', 'Arora', 'Lunascape', 'QupZilla', 'Coc Coc', 'Kindle', 'Iceweasel', 'Konqueror', 'Iceape', 'SeaMonkey', 'Epiphany', '360', '360SE', '360EE', 'UC', 'QQBrowser', 'QQ', 'Baidu', 'Maxthon', 'Sogou', 'LBBROWSER', '2345Explorer', 'TheWorld', 'XiaoMi', 'Quark', 'Qiyu', 'Wechat', 'WechatWork', 'Taobao', 'Alipay', 'Weibo', 'Douban', 'Suning', 'iQiYi'],
|
|
30
|
+
os: ['Windows', 'Linux', 'Mac OS', 'Android', 'HarmonyOS', 'Ubuntu', 'FreeBSD', 'Debian', 'iOS', 'Windows Phone', 'BlackBerry', 'MeeGo', 'Symbian', 'Chrome OS', 'WebOS'],
|
|
15
31
|
device: ['Mobile', 'Tablet', 'iPad']
|
|
16
32
|
}
|
|
17
33
|
};
|
|
@@ -68,6 +84,7 @@ var MethodLibrary = {
|
|
|
68
84
|
Linux: u.indexOf('Linux') > -1 || u.indexOf('X11') > -1,
|
|
69
85
|
'Mac OS': u.indexOf('Macintosh') > -1,
|
|
70
86
|
Android: u.indexOf('Android') > -1 || u.indexOf('Adr') > -1,
|
|
87
|
+
HarmonyOS: u.indexOf('HarmonyOS') > -1 || u.indexOf('OpenHarmony') > -1 || u.indexOf('HMOS') > -1,
|
|
71
88
|
Ubuntu: u.indexOf('Ubuntu') > -1,
|
|
72
89
|
FreeBSD: u.indexOf('FreeBSD') > -1,
|
|
73
90
|
Debian: u.indexOf('Debian') > -1,
|
|
@@ -83,8 +100,9 @@ var MethodLibrary = {
|
|
|
83
100
|
iPad: u.indexOf('iPad') > -1
|
|
84
101
|
};
|
|
85
102
|
}),
|
|
86
|
-
matchInfoMap: (0, _monitor.monitor)(function (
|
|
87
|
-
var
|
|
103
|
+
matchInfoMap: (0, _monitor.monitor)(function (target) {
|
|
104
|
+
var _this = getTarget(target, this);
|
|
105
|
+
var u = getUserAgent();
|
|
88
106
|
var match = MethodLibrary.getMatchMap(u);
|
|
89
107
|
for (var s in VariableLibrary.infoMap) {
|
|
90
108
|
for (var i = 0; i < VariableLibrary.infoMap[s].length; i++) {
|
|
@@ -95,14 +113,15 @@ var MethodLibrary = {
|
|
|
95
113
|
}
|
|
96
114
|
}
|
|
97
115
|
}),
|
|
98
|
-
getOS: (0, _monitor.monitor)(function () {
|
|
99
|
-
var _this = this;
|
|
116
|
+
getOS: (0, _monitor.monitor)(function (target) {
|
|
117
|
+
var _this = getTarget(target, this);
|
|
118
|
+
_this.os = '';
|
|
100
119
|
MethodLibrary.matchInfoMap(_this);
|
|
101
120
|
return _this.os || 'Unknown';
|
|
102
121
|
}),
|
|
103
|
-
getOSVersion: (0, _monitor.monitor)(function () {
|
|
104
|
-
var _this = this;
|
|
105
|
-
var u =
|
|
122
|
+
getOSVersion: (0, _monitor.monitor)(function (target) {
|
|
123
|
+
var _this = getTarget(target, this);
|
|
124
|
+
var u = getUserAgent();
|
|
106
125
|
_this.osVersion = '';
|
|
107
126
|
_this.osMajor = '';
|
|
108
127
|
var osVersion = {
|
|
@@ -123,6 +142,9 @@ var MethodLibrary = {
|
|
|
123
142
|
Android: function Android() {
|
|
124
143
|
return u.replace(/^.*Android ([\d.]+);.*$/, '$1');
|
|
125
144
|
},
|
|
145
|
+
HarmonyOS: function HarmonyOS() {
|
|
146
|
+
return u.replace(/^.*(?:HarmonyOS|OpenHarmony)[\/\s]([\d.]+).*$/, '$1').replace(/^.*HMOS[\s\/]([\d.]+).*$/, '$1');
|
|
147
|
+
},
|
|
126
148
|
iOS: function iOS() {
|
|
127
149
|
return u.replace(/^.*OS ([\d_]+) like.*$/, '$1').replace(/_/g, '.');
|
|
128
150
|
},
|
|
@@ -153,14 +175,18 @@ var MethodLibrary = {
|
|
|
153
175
|
osMajor: _this.osMajor
|
|
154
176
|
};
|
|
155
177
|
}),
|
|
156
|
-
getDeviceType: (0, _monitor.monitor)(function () {
|
|
157
|
-
var _this = this;
|
|
178
|
+
getDeviceType: (0, _monitor.monitor)(function (target) {
|
|
179
|
+
var _this = getTarget(target, this);
|
|
158
180
|
_this.device = 'PC';
|
|
159
181
|
MethodLibrary.matchInfoMap(_this);
|
|
160
182
|
return _this.device;
|
|
161
183
|
}),
|
|
162
184
|
getNetwork: (0, _monitor.monitor)(function () {
|
|
163
|
-
var
|
|
185
|
+
var browserWindow = getBrowserWindow();
|
|
186
|
+
if (!browserWindow || !browserWindow.navigator) {
|
|
187
|
+
return 'unknown';
|
|
188
|
+
}
|
|
189
|
+
var connection = browserWindow.navigator.connection || browserWindow.navigator.mozConnection || browserWindow.navigator.webkitConnection;
|
|
164
190
|
var result = 'unknown';
|
|
165
191
|
var type = connection ? connection.type || connection.effectiveType : null;
|
|
166
192
|
if (type && typeof type === 'string') {
|
|
@@ -197,10 +223,11 @@ var MethodLibrary = {
|
|
|
197
223
|
}
|
|
198
224
|
return result;
|
|
199
225
|
}),
|
|
200
|
-
getLanguage: (0, _monitor.monitor)(function () {
|
|
201
|
-
var _this = this;
|
|
226
|
+
getLanguage: (0, _monitor.monitor)(function (target) {
|
|
227
|
+
var _this = getTarget(target, this);
|
|
202
228
|
_this.language = function () {
|
|
203
|
-
var
|
|
229
|
+
var navigator = getNavigator();
|
|
230
|
+
var language = navigator.browserLanguage || navigator.language || '';
|
|
204
231
|
var arr = language.split('-');
|
|
205
232
|
if (arr[1]) {
|
|
206
233
|
arr[1] = arr[1].toUpperCase();
|
|
@@ -217,12 +244,19 @@ var MethodLibrary = {
|
|
|
217
244
|
return undefined;
|
|
218
245
|
}
|
|
219
246
|
}),
|
|
220
|
-
getBrowserInfo: (0, _monitor.monitor)(function () {
|
|
221
|
-
var _this = this;
|
|
247
|
+
getBrowserInfo: (0, _monitor.monitor)(function (target) {
|
|
248
|
+
var _this = getTarget(target, this);
|
|
249
|
+
_this.engine = '';
|
|
250
|
+
_this.browser = '';
|
|
222
251
|
MethodLibrary.matchInfoMap(_this);
|
|
223
|
-
var
|
|
252
|
+
var browserWindow = getBrowserWindow();
|
|
253
|
+
var navigator = getNavigator();
|
|
254
|
+
var u = getUserAgent();
|
|
224
255
|
var _mime = function _mime(option, value) {
|
|
225
|
-
var mimeTypes =
|
|
256
|
+
var mimeTypes = navigator.mimeTypes;
|
|
257
|
+
if (!mimeTypes) {
|
|
258
|
+
return false;
|
|
259
|
+
}
|
|
226
260
|
for (var key in mimeTypes) {
|
|
227
261
|
if (mimeTypes[key][option] == value) {
|
|
228
262
|
return true;
|
|
@@ -232,9 +266,9 @@ var MethodLibrary = {
|
|
|
232
266
|
};
|
|
233
267
|
var match = MethodLibrary.getMatchMap(u);
|
|
234
268
|
var is360 = false;
|
|
235
|
-
if (
|
|
269
|
+
if (browserWindow && browserWindow.chrome) {
|
|
236
270
|
var chrome_version = u.replace(/^.*Chrome\/([\d]+).*$/, '$1');
|
|
237
|
-
if (chrome_version > 36 &&
|
|
271
|
+
if (chrome_version > 36 && browserWindow.showModalDialog) {
|
|
238
272
|
is360 = true;
|
|
239
273
|
} else if (chrome_version > 45) {
|
|
240
274
|
is360 = _mime('type', 'application/vnd.chromium.remoting-viewer');
|
|
@@ -249,14 +283,14 @@ var MethodLibrary = {
|
|
|
249
283
|
if (is360) {
|
|
250
284
|
if (_mime('type', 'application/gameplugin')) {
|
|
251
285
|
match['360SE'] = true;
|
|
252
|
-
} else if (
|
|
286
|
+
} else if (navigator && navigator.connection && typeof navigator['connection']['saveData'] == 'undefined') {
|
|
253
287
|
match['360SE'] = true;
|
|
254
288
|
} else {
|
|
255
289
|
match['360EE'] = true;
|
|
256
290
|
}
|
|
257
291
|
}
|
|
258
|
-
if (match['IE'] || match['Edge']) {
|
|
259
|
-
var navigator_top =
|
|
292
|
+
if (browserWindow && (match['IE'] || match['Edge'])) {
|
|
293
|
+
var navigator_top = browserWindow.screenTop - browserWindow.screenY;
|
|
260
294
|
switch (navigator_top) {
|
|
261
295
|
case 71:
|
|
262
296
|
break;
|
|
@@ -453,10 +487,10 @@ var MethodLibrary = {
|
|
|
453
487
|
}
|
|
454
488
|
if (_this.browser == 'Chrome' && u.match(/\S+Browser/)) {
|
|
455
489
|
_this.browser = u.match(/\S+Browser/)[0];
|
|
456
|
-
_this.
|
|
490
|
+
_this.browserVersion = u.replace(/^.*Browser\/([\d.]+).*$/, '$1');
|
|
457
491
|
}
|
|
458
492
|
if (_this.browser == 'Edge') {
|
|
459
|
-
if (_this.
|
|
493
|
+
if (_this.browserVersion > '75') {
|
|
460
494
|
_this.engine = 'Blink';
|
|
461
495
|
} else {
|
|
462
496
|
_this.engine = 'EdgeHTML';
|
|
@@ -466,22 +500,23 @@ var MethodLibrary = {
|
|
|
466
500
|
_this.engine = 'Blink';
|
|
467
501
|
} else if (match['Chrome'] && _this.engine == 'WebKit' && parseInt(_this.browserVersion) > 27) {
|
|
468
502
|
_this.engine = 'Blink';
|
|
469
|
-
} else if (_this.browser == 'Opera' && parseInt(_this.
|
|
503
|
+
} else if (_this.browser == 'Opera' && parseInt(_this.browserVersion) > 12) {
|
|
470
504
|
_this.engine = 'Blink';
|
|
471
505
|
} else if (_this.browser == 'Yandex') {
|
|
472
506
|
_this.engine = 'Blink';
|
|
473
507
|
}
|
|
474
508
|
if (_this.browserVersion) {
|
|
475
|
-
_this.browserMajor = _this.browserVersion.split('.').length &&
|
|
509
|
+
_this.browserMajor = _this.browserVersion.split('.').length && _this.browserVersion.split('.')[0];
|
|
476
510
|
}
|
|
477
511
|
return {
|
|
478
512
|
browser: _this.browser,
|
|
479
513
|
browserVersion: _this.browserVersion,
|
|
480
|
-
engine: _this.engine,
|
|
514
|
+
engine: _this.engine || 'Unknown',
|
|
481
515
|
browserMajor: _this.browserMajor
|
|
482
516
|
};
|
|
483
517
|
}),
|
|
484
|
-
|
|
518
|
+
getGeoPosition: (0, _monitor.monitor)(function (callback) {
|
|
519
|
+
var navigator = getNavigator();
|
|
485
520
|
navigator && navigator.geolocation && navigator.geolocation.getCurrentPosition(function (position) {
|
|
486
521
|
callback(position);
|
|
487
522
|
}, function (error) {
|
|
@@ -489,21 +524,33 @@ var MethodLibrary = {
|
|
|
489
524
|
});
|
|
490
525
|
})
|
|
491
526
|
};
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
527
|
+
MethodLibrary.getGeoPostion = MethodLibrary.getGeoPosition;
|
|
528
|
+
function getDeviceInfo() {
|
|
529
|
+
var browserWindow = getBrowserWindow();
|
|
530
|
+
if (!browserWindow) {
|
|
531
|
+
return {};
|
|
532
|
+
}
|
|
533
|
+
var screen = browserWindow.screen || {
|
|
534
|
+
width: 0,
|
|
535
|
+
height: 0
|
|
536
|
+
};
|
|
537
|
+
var target = {};
|
|
538
|
+
var osInfo = MethodLibrary.getOS(target);
|
|
539
|
+
var osVersionInfo = MethodLibrary.getOSVersion(target);
|
|
540
|
+
var browserInfo = MethodLibrary.getBrowserInfo(target);
|
|
541
|
+
return {
|
|
542
|
+
os: osInfo,
|
|
543
|
+
osVersion: osVersionInfo.version,
|
|
544
|
+
osVersionMajor: osVersionInfo.osMajor,
|
|
545
|
+
browser: browserInfo.browser,
|
|
546
|
+
browserVersion: browserInfo.browserVersion,
|
|
547
|
+
browserVersionMajor: browserInfo.browserMajor,
|
|
548
|
+
screenSize: screen.width + '*' + screen.height,
|
|
502
549
|
networkType: MethodLibrary.getNetwork(),
|
|
503
|
-
device: MethodLibrary.getDeviceType(),
|
|
550
|
+
device: MethodLibrary.getDeviceType(target),
|
|
504
551
|
timeZone: MethodLibrary.getTimeZone(),
|
|
505
|
-
userAgent:
|
|
552
|
+
userAgent: getUserAgent()
|
|
506
553
|
};
|
|
507
554
|
}
|
|
508
|
-
var deviceInfo = exports.deviceInfo =
|
|
555
|
+
var deviceInfo = exports.deviceInfo = getDeviceInfo();
|
|
509
556
|
//# sourceMappingURL=deviceInfo.js.map
|