@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.
Files changed (67) hide show
  1. package/cjs/browser/asyncClocks.js +2 -2
  2. package/cjs/browser/asyncClocks.js.map +1 -1
  3. package/cjs/configuration/remoteConfiguration.js +1 -0
  4. package/cjs/configuration/remoteConfiguration.js.map +1 -1
  5. package/cjs/console/consoleObservable.js +17 -11
  6. package/cjs/console/consoleObservable.js.map +1 -1
  7. package/cjs/helper/deviceInfo.js +91 -44
  8. package/cjs/helper/deviceInfo.js.map +1 -1
  9. package/cjs/helper/errorTools.js +12 -7
  10. package/cjs/helper/errorTools.js.map +1 -1
  11. package/cjs/helper/monitor.js +11 -7
  12. package/cjs/helper/monitor.js.map +1 -1
  13. package/cjs/helper/polyfills.js +1 -1
  14. package/cjs/helper/polyfills.js.map +1 -1
  15. package/cjs/helper/tools.js +4 -4
  16. package/cjs/helper/tools.js.map +1 -1
  17. package/cjs/helper/valueHistory.js +1 -1
  18. package/cjs/helper/valueHistory.js.map +1 -1
  19. package/cjs/report/reportObservable.js +2 -2
  20. package/cjs/report/reportObservable.js.map +1 -1
  21. package/cjs/session/sessionManagement.js +1 -0
  22. package/cjs/session/sessionManagement.js.map +1 -1
  23. package/cjs/session/sessionStore.js +1 -1
  24. package/cjs/session/sessionStore.js.map +1 -1
  25. package/cjs/synthetics/syntheticsWorkerValues.js +2 -2
  26. package/cjs/synthetics/syntheticsWorkerValues.js.map +1 -1
  27. package/esm/browser/asyncClocks.js +2 -2
  28. package/esm/browser/asyncClocks.js.map +1 -1
  29. package/esm/configuration/remoteConfiguration.js +1 -0
  30. package/esm/configuration/remoteConfiguration.js.map +1 -1
  31. package/esm/console/consoleObservable.js +19 -13
  32. package/esm/console/consoleObservable.js.map +1 -1
  33. package/esm/helper/deviceInfo.js +90 -44
  34. package/esm/helper/deviceInfo.js.map +1 -1
  35. package/esm/helper/errorTools.js +11 -7
  36. package/esm/helper/errorTools.js.map +1 -1
  37. package/esm/helper/monitor.js +10 -7
  38. package/esm/helper/monitor.js.map +1 -1
  39. package/esm/helper/polyfills.js +1 -1
  40. package/esm/helper/polyfills.js.map +1 -1
  41. package/esm/helper/tools.js +4 -4
  42. package/esm/helper/tools.js.map +1 -1
  43. package/esm/helper/valueHistory.js +1 -1
  44. package/esm/helper/valueHistory.js.map +1 -1
  45. package/esm/report/reportObservable.js +2 -0
  46. package/esm/report/reportObservable.js.map +1 -1
  47. package/esm/session/sessionManagement.js +1 -0
  48. package/esm/session/sessionManagement.js.map +1 -1
  49. package/esm/session/sessionStore.js +1 -1
  50. package/esm/session/sessionStore.js.map +1 -1
  51. package/esm/synthetics/syntheticsWorkerValues.js +2 -2
  52. package/esm/synthetics/syntheticsWorkerValues.js.map +1 -1
  53. package/package.json +2 -2
  54. package/src/browser/asyncClocks.js +2 -2
  55. package/src/configuration/remoteConfiguration.js +1 -0
  56. package/src/console/consoleObservable.js +20 -18
  57. package/src/helper/deviceInfo.js +105 -53
  58. package/src/helper/errorTools.js +22 -12
  59. package/src/helper/monitor.js +10 -8
  60. package/src/helper/polyfills.js +1 -1
  61. package/src/helper/tools.js +4 -4
  62. package/src/helper/valueHistory.js +1 -1
  63. package/src/report/reportObservable.js +2 -0
  64. package/src/session/sessionManagement.js +1 -0
  65. package/src/session/sessionStore.js +4 -1
  66. package/src/synthetics/syntheticsWorkerValues.js +6 -4
  67. 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;EACnD,CAAC,CAAC;AACJ;AACA,SAASC,iBAAiBA,CAACH,eAAe,EAAEE,GAAG,EAAE;EAC/C,IAAME,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
+ {"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":[]}
@@ -53,6 +53,7 @@ var modifiableFieldPaths = {
53
53
  actionNameAttribute: 'string',
54
54
  trackViewsManually: 'boolean',
55
55
  workerUrl: 'string',
56
+ replayCanvasWorkerUrl: 'string',
56
57
  compressIntakeRequests: 'boolean',
57
58
  traceType: 'string'
58
59
  };
@@ -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, function (param) {
53
- return param instanceof Error;
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: 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 (param instanceof Error) {
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","error","ConsoleApiName","firstErrorParam","find","Error","stack","toStackTraceString","computeStackTrace","undefined","causes","flattenErrorCauses","startClocks","clocksNow","source","ErrorSource","CONSOLE","handling","ErrorHandling","HANDLED","formatErrorMessage","jsonStringify"],"sources":["../../src/console/consoleObservable.js"],"sourcesContent":["import { computeStackTrace } from '../tracekit'\nimport {\n createHandlingStack,\n formatErrorMessage,\n toStackTraceString,\n flattenErrorCauses\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 } from '../helper/enums'\nimport { ErrorSource } from '../helper/errorTools'\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 var error\n if (api === ConsoleApiName.error) {\n var firstErrorParam = find(params, function (param) {\n return param instanceof Error\n })\n error = {\n stack: firstErrorParam\n ? toStackTraceString(computeStackTrace(firstErrorParam))\n : undefined,\n causes: firstErrorParam\n ? flattenErrorCauses(firstErrorParam, 'console')\n : undefined,\n startClocks: clocksNow(),\n message: message,\n source: ErrorSource.CONSOLE,\n handling: ErrorHandling.HANDLED,\n handlingStack: handlingStack\n }\n }\n\n return {\n api: api,\n message: message,\n error: error,\n handlingStack: handlingStack\n }\n}\n\nfunction formatConsoleParameters(param) {\n if (typeof param === 'string') {\n return param\n }\n if (param instanceof Error) {\n return formatErrorMessage(computeStackTrace(param))\n }\n return jsonStringify(param, undefined, 2)\n}\n"],"mappings":";;;;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AAMA,IAAAE,WAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AACA,IAAAI,cAAA,GAAAJ,OAAA;AACA,IAAAK,QAAA,GAAAL,OAAA;AACA,IAAAM,QAAA,GAAAN,OAAA;AACA,IAAAO,MAAA,GAAAP,OAAA;AAEA,IAAIQ,uBAAuB,GAAG,CAAC,CAAC;AAEzB,SAASC,qBAAqBA,CAACC,IAAI,EAAE;EAC1C,IAAIC,kBAAkB,GAAG,IAAAC,UAAG,EAACF,IAAI,EAAE,UAAUG,GAAG,EAAE;IAChD,IAAI,CAACL,uBAAuB,CAACK,GAAG,CAAC,EAAE;MACjCL,uBAAuB,CAACK,GAAG,CAAC,GAAGC,uBAAuB,CAACD,GAAG,CAAC;IAC7D;IACA,OAAOL,uBAAuB,CAACK,GAAG,CAAC;EACrC,CAAC,CAAC;EAEF,OAAOE,4BAAgB,CAACC,KAAK,CAAC,IAAI,EAAEL,kBAAkB,CAAC;AACzD;AACO,SAASM,sBAAsBA,CAAA,EAAG;EACvCT,uBAAuB,GAAG,CAAC,CAAC;AAC9B;AACA;AACA,SAASM,uBAAuBA,CAACD,GAAG,EAAE;EACpC,OAAO,IAAIK,sBAAU,CAAC,UAAUC,UAAU,EAAE;IAC1C,IAAIC,kBAAkB,GAAGC,OAAO,CAACR,GAAG,CAAC;IACrCQ,OAAO,CAACR,GAAG,CAAC,GAAG,YAAY;MACzB,IAAIS,MAAM,GAAG,EAAE,CAACC,KAAK,CAACC,IAAI,CAACC,SAAS,CAAC;MACrCL,kBAAkB,CAACJ,KAAK,CAACK,OAAO,EAAEI,SAAS,CAAC;MAC5C,IAAIC,aAAa,GAAG,IAAAC,+BAAmB,EAAC,CAAC;MACzC,IAAAC,sBAAa,EAAC,YAAY;QACxBT,UAAU,CAACU,MAAM,CAACC,eAAe,CAACR,MAAM,EAAET,GAAG,EAAEa,aAAa,CAAC,CAAC;MAChE,CAAC,CAAC;IACJ,CAAC;IACD,OAAO,YAAY;MACjBL,OAAO,CAACR,GAAG,CAAC,GAAGO,kBAAkB;IACnC,CAAC;EACH,CAAC,CAAC;AACJ;AAEA,SAASU,eAAeA,CAACR,MAAM,EAAET,GAAG,EAAEa,aAAa,EAAE;EACnD,IAAIK,OAAO,GAAG,IAAAnB,UAAG,EAACU,MAAM,EAAE,UAAUU,KAAK,EAAE;IACzC,OAAOC,uBAAuB,CAACD,KAAK,CAAC;EACvC,CAAC,CAAC,CAACE,IAAI,CAAC,GAAG,CAAC;EACZ,IAAIC,KAAK;EACT,IAAItB,GAAG,KAAKuB,uBAAc,CAACD,KAAK,EAAE;IAChC,IAAIE,eAAe,GAAG,IAAAC,WAAI,EAAChB,MAAM,EAAE,UAAUU,KAAK,EAAE;MAClD,OAAOA,KAAK,YAAYO,KAAK;IAC/B,CAAC,CAAC;IACFJ,KAAK,GAAG;MACNK,KAAK,EAAEH,eAAe,GAClB,IAAAI,8BAAkB,EAAC,IAAAC,2BAAiB,EAACL,eAAe,CAAC,CAAC,GACtDM,SAAS;MACbC,MAAM,EAAEP,eAAe,GACnB,IAAAQ,8BAAkB,EAACR,eAAe,EAAE,SAAS,CAAC,GAC9CM,SAAS;MACbG,WAAW,EAAE,IAAAC,gBAAS,EAAC,CAAC;MACxBhB,OAAO,EAAEA,OAAO;MAChBiB,MAAM,EAAEC,uBAAW,CAACC,OAAO;MAC3BC,QAAQ,EAAEC,oBAAa,CAACC,OAAO;MAC/B3B,aAAa,EAAEA;IACjB,CAAC;EACH;EAEA,OAAO;IACLb,GAAG,EAAEA,GAAG;IACRkB,OAAO,EAAEA,OAAO;IAChBI,KAAK,EAAEA,KAAK;IACZT,aAAa,EAAEA;EACjB,CAAC;AACH;AAEA,SAASO,uBAAuBA,CAACD,KAAK,EAAE;EACtC,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;IAC7B,OAAOA,KAAK;EACd;EACA,IAAIA,KAAK,YAAYO,KAAK,EAAE;IAC1B,OAAO,IAAAe,8BAAkB,EAAC,IAAAZ,2BAAiB,EAACV,KAAK,CAAC,CAAC;EACrD;EACA,OAAO,IAAAuB,4BAAa,EAACvB,KAAK,EAAEW,SAAS,EAAE,CAAC,CAAC;AAC3C","ignoreList":[]}
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":[]}
@@ -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
- navigator: typeof window !== 'undefined' && typeof window.navigator != 'undefined' ? window.navigator : {},
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',, 'WechatWork', 'Taobao', 'Alipay', 'Weibo', 'Douban', 'Suning', 'iQiYi'],
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 (_this) {
87
- var u = VariableLibrary.navigator.userAgent || '';
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 = VariableLibrary.navigator.userAgent || '';
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 connection = window.navigator.connection || window.navigator.mozConnection || window.navigator.webkitConnection;
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 language = VariableLibrary.navigator.browserLanguage || VariableLibrary.navigator.language || '';
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 u = VariableLibrary.navigator.userAgent || '';
252
+ var browserWindow = getBrowserWindow();
253
+ var navigator = getNavigator();
254
+ var u = getUserAgent();
224
255
  var _mime = function _mime(option, value) {
225
- var mimeTypes = VariableLibrary.navigator.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 (typeof window !== 'undefined' && window.chrome) {
269
+ if (browserWindow && browserWindow.chrome) {
236
270
  var chrome_version = u.replace(/^.*Chrome\/([\d]+).*$/, '$1');
237
- if (chrome_version > 36 && window.showModalDialog) {
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 (VariableLibrary.navigator && VariableLibrary.navigator.connection && typeof VariableLibrary.navigator['connection']['saveData'] == 'undefined') {
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 = window.screenTop - window.screenY;
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.version = u.replace(/^.*Browser\/([\d.]+).*$/, '$1');
490
+ _this.browserVersion = u.replace(/^.*Browser\/([\d.]+).*$/, '$1');
457
491
  }
458
492
  if (_this.browser == 'Edge') {
459
- if (_this.version > '75') {
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.version) > 12) {
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 && this.browserVersion.split('.')[0];
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
- getGeoPostion: (0, _monitor.monitor)(function (callback) {
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
- var _deviceInfo = {};
493
- if (typeof window !== 'undefined') {
494
- _deviceInfo = {
495
- os: MethodLibrary.getOS(),
496
- osVersion: MethodLibrary.getOSVersion().version,
497
- osVersionMajor: MethodLibrary.getOSVersion().osMajor,
498
- browser: MethodLibrary.getBrowserInfo().browser,
499
- browserVersion: MethodLibrary.getBrowserInfo().browserVersion,
500
- browserVersionMajor: MethodLibrary.getBrowserInfo().browserMajor,
501
- screenSize: window.screen.width + '*' + window.screen.height,
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: VariableLibrary.navigator.userAgent || ''
552
+ userAgent: getUserAgent()
506
553
  };
507
554
  }
508
- var deviceInfo = exports.deviceInfo = _deviceInfo;
555
+ var deviceInfo = exports.deviceInfo = getDeviceInfo();
509
556
  //# sourceMappingURL=deviceInfo.js.map