@cloudcare/browser-core 3.2.19 → 3.2.24

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 (171) hide show
  1. package/cjs/browser/addEventListener.js +4 -2
  2. package/cjs/browser/addEventListener.js.map +1 -1
  3. package/cjs/browser/asyncClocks.js +68 -0
  4. package/cjs/browser/asyncClocks.js.map +1 -0
  5. package/cjs/browser/pageExitObservable.js +1 -2
  6. package/cjs/browser/pageExitObservable.js.map +1 -1
  7. package/cjs/configuration/configuration.js +1 -2
  8. package/cjs/configuration/configuration.js.map +1 -1
  9. package/cjs/configuration/remoteConfiguration.js +214 -0
  10. package/cjs/configuration/remoteConfiguration.js.map +1 -0
  11. package/cjs/configuration/transportConfiguration.js +1 -0
  12. package/cjs/configuration/transportConfiguration.js.map +1 -1
  13. package/cjs/dataMap.js +4 -7
  14. package/cjs/dataMap.js.map +1 -1
  15. package/cjs/helper/byteUtils.js +2 -4
  16. package/cjs/helper/byteUtils.js.map +1 -1
  17. package/cjs/helper/createEventRateLimiter.js.map +1 -1
  18. package/cjs/helper/deviceInfo.js +11 -7
  19. package/cjs/helper/deviceInfo.js.map +1 -1
  20. package/cjs/helper/display.js +4 -8
  21. package/cjs/helper/display.js.map +1 -1
  22. package/cjs/helper/encoder.js.map +1 -1
  23. package/cjs/helper/enums.js +11 -22
  24. package/cjs/helper/enums.js.map +1 -1
  25. package/cjs/helper/errorTools.js +2 -4
  26. package/cjs/helper/errorTools.js.map +1 -1
  27. package/cjs/helper/eventEmitter.js +1 -2
  28. package/cjs/helper/eventEmitter.js.map +1 -1
  29. package/cjs/helper/getZoneJsOriginalValue.js +2 -1
  30. package/cjs/helper/getZoneJsOriginalValue.js.map +1 -1
  31. package/cjs/helper/instrumentMethod.js.map +1 -1
  32. package/cjs/helper/lifeCycle.js +1 -2
  33. package/cjs/helper/lifeCycle.js.map +1 -1
  34. package/cjs/helper/limitModification.js +7 -7
  35. package/cjs/helper/limitModification.js.map +1 -1
  36. package/cjs/helper/mobileUtil.js +5 -10
  37. package/cjs/helper/mobileUtil.js.map +1 -1
  38. package/cjs/helper/observable.js +1 -2
  39. package/cjs/helper/observable.js.map +1 -1
  40. package/cjs/helper/requestIdleCallback.js +1 -2
  41. package/cjs/helper/requestIdleCallback.js.map +1 -1
  42. package/cjs/helper/sanitize.js +1 -1
  43. package/cjs/helper/sanitize.js.map +1 -1
  44. package/cjs/helper/serialisation/const.js +1 -2
  45. package/cjs/helper/serialisation/const.js.map +1 -1
  46. package/cjs/helper/serialisation/contextManager.js +15 -15
  47. package/cjs/helper/serialisation/contextManager.js.map +1 -1
  48. package/cjs/helper/serialisation/customerDataTracker.js +4 -8
  49. package/cjs/helper/serialisation/customerDataTracker.js.map +1 -1
  50. package/cjs/helper/serialisation/jsonStringify.js +1 -1
  51. package/cjs/helper/serialisation/jsonStringify.js.map +1 -1
  52. package/cjs/helper/serialisation/rowData.js +1 -1
  53. package/cjs/helper/serialisation/rowData.js.map +1 -1
  54. package/cjs/helper/taskQueue.js +1 -2
  55. package/cjs/helper/taskQueue.js.map +1 -1
  56. package/cjs/helper/tools.js +74 -145
  57. package/cjs/helper/tools.js.map +1 -1
  58. package/cjs/helper/valueHistory.js +20 -8
  59. package/cjs/helper/valueHistory.js.map +1 -1
  60. package/cjs/index.js +12 -0
  61. package/cjs/index.js.map +1 -1
  62. package/cjs/init.js +1 -1
  63. package/cjs/init.js.map +1 -1
  64. package/cjs/report/reportObservable.js +1 -2
  65. package/cjs/report/reportObservable.js.map +1 -1
  66. package/cjs/session/sessionConstants.js +3 -6
  67. package/cjs/session/sessionConstants.js.map +1 -1
  68. package/cjs/session/sessionInCookie.js.map +1 -1
  69. package/cjs/session/sessionManagement.js +1 -2
  70. package/cjs/session/sessionManagement.js.map +1 -1
  71. package/cjs/session/sessionState.js +6 -7
  72. package/cjs/session/sessionState.js.map +1 -1
  73. package/cjs/session/sessionStore.js +2 -3
  74. package/cjs/session/sessionStore.js.map +1 -1
  75. package/cjs/session/sessionStoreOperations.js +6 -8
  76. package/cjs/session/sessionStoreOperations.js.map +1 -1
  77. package/cjs/synthetics/syntheticsWorkerValues.js +3 -6
  78. package/cjs/synthetics/syntheticsWorkerValues.js.map +1 -1
  79. package/cjs/telemetry/telemetry.js +1 -2
  80. package/cjs/telemetry/telemetry.js.map +1 -1
  81. package/cjs/telemetry/types.js +2 -4
  82. package/cjs/telemetry/types.js.map +1 -1
  83. package/cjs/tracekit/computeStackTrace.js +2 -4
  84. package/cjs/tracekit/computeStackTrace.js.map +1 -1
  85. package/cjs/tracekit/tracekit.js.map +1 -1
  86. package/cjs/transport/batch.js +1 -3
  87. package/cjs/transport/batch.js.map +1 -1
  88. package/cjs/transport/eventBridge.js +36 -3
  89. package/cjs/transport/eventBridge.js.map +1 -1
  90. package/cjs/transport/flushController.js.map +1 -1
  91. package/cjs/transport/httpRequest.js.map +1 -1
  92. package/cjs/transport/index.js +12 -0
  93. package/cjs/transport/index.js.map +1 -1
  94. package/cjs/transport/sendWithRetryStrategy.js +5 -10
  95. package/cjs/transport/sendWithRetryStrategy.js.map +1 -1
  96. package/cjs/transport/startBatchWithReplica.js.map +1 -1
  97. package/esm/browser/addEventListener.js +4 -2
  98. package/esm/browser/addEventListener.js.map +1 -1
  99. package/esm/browser/asyncClocks.js +60 -0
  100. package/esm/browser/asyncClocks.js.map +1 -0
  101. package/esm/configuration/remoteConfiguration.js +205 -0
  102. package/esm/configuration/remoteConfiguration.js.map +1 -0
  103. package/esm/configuration/transportConfiguration.js +1 -1
  104. package/esm/configuration/transportConfiguration.js.map +1 -1
  105. package/esm/dataMap.js +1 -1
  106. package/esm/dataMap.js.map +1 -1
  107. package/esm/helper/createEventRateLimiter.js.map +1 -1
  108. package/esm/helper/deviceInfo.js +10 -5
  109. package/esm/helper/deviceInfo.js.map +1 -1
  110. package/esm/helper/encoder.js.map +1 -1
  111. package/esm/helper/eventEmitter.js.map +1 -1
  112. package/esm/helper/getZoneJsOriginalValue.js +2 -1
  113. package/esm/helper/getZoneJsOriginalValue.js.map +1 -1
  114. package/esm/helper/instrumentMethod.js.map +1 -1
  115. package/esm/helper/lifeCycle.js.map +1 -1
  116. package/esm/helper/limitModification.js +7 -7
  117. package/esm/helper/mobileUtil.js.map +1 -1
  118. package/esm/helper/observable.js.map +1 -1
  119. package/esm/helper/requestIdleCallback.js.map +1 -1
  120. package/esm/helper/sanitize.js +1 -1
  121. package/esm/helper/serialisation/contextManager.js +15 -15
  122. package/esm/helper/serialisation/contextManager.js.map +1 -1
  123. package/esm/helper/serialisation/customerDataTracker.js.map +1 -1
  124. package/esm/helper/serialisation/jsonStringify.js +1 -1
  125. package/esm/helper/serialisation/rowData.js +1 -1
  126. package/esm/helper/taskQueue.js.map +1 -1
  127. package/esm/helper/tools.js +10 -8
  128. package/esm/helper/tools.js.map +1 -1
  129. package/esm/helper/valueHistory.js +19 -6
  130. package/esm/helper/valueHistory.js.map +1 -1
  131. package/esm/index.js +1 -0
  132. package/esm/index.js.map +1 -1
  133. package/esm/init.js +1 -1
  134. package/esm/init.js.map +1 -1
  135. package/esm/session/sessionInCookie.js.map +1 -1
  136. package/esm/session/sessionManagement.js.map +1 -1
  137. package/esm/session/sessionState.js +5 -5
  138. package/esm/session/sessionStore.js +1 -1
  139. package/esm/session/sessionStore.js.map +1 -1
  140. package/esm/session/sessionStoreOperations.js +4 -4
  141. package/esm/session/sessionStoreOperations.js.map +1 -1
  142. package/esm/telemetry/telemetry.js.map +1 -1
  143. package/esm/tracekit/computeStackTrace.js +2 -4
  144. package/esm/tracekit/computeStackTrace.js.map +1 -1
  145. package/esm/tracekit/tracekit.js.map +1 -1
  146. package/esm/transport/batch.js +0 -1
  147. package/esm/transport/batch.js.map +1 -1
  148. package/esm/transport/eventBridge.js +34 -3
  149. package/esm/transport/eventBridge.js.map +1 -1
  150. package/esm/transport/flushController.js.map +1 -1
  151. package/esm/transport/httpRequest.js.map +1 -1
  152. package/esm/transport/index.js +1 -1
  153. package/esm/transport/index.js.map +1 -1
  154. package/esm/transport/sendWithRetryStrategy.js.map +1 -1
  155. package/esm/transport/startBatchWithReplica.js.map +1 -1
  156. package/package.json +24 -24
  157. package/src/browser/addEventListener.js +7 -2
  158. package/src/browser/asyncClocks.js +69 -0
  159. package/src/configuration/remoteConfiguration.js +213 -0
  160. package/src/configuration/transportConfiguration.js +1 -1
  161. package/src/dataMap.js +1 -0
  162. package/src/helper/deviceInfo.js +6 -1
  163. package/src/helper/getZoneJsOriginalValue.js +2 -1
  164. package/src/helper/valueHistory.js +18 -6
  165. package/src/index.js +1 -0
  166. package/src/session/sessionStore.js +1 -1
  167. package/src/session/sessionStoreOperations.js +4 -16
  168. package/src/tracekit/computeStackTrace.js +2 -1
  169. package/src/transport/eventBridge.js +56 -4
  170. package/src/transport/index.js +6 -1
  171. package/types/index.d.ts +8 -0
package/esm/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["startSessionManager","stopSessionManager","SESSION_TIME_OUT_DELAY","SESSION_STORE_KEY","STORAGE_POLL_DELAY"],"sources":["../src/index.js"],"sourcesContent":["export * from './helper/boundedBuffer'\nexport * from './helper/valueHistory'\nexport * from './helper/deviceInfo'\nexport * from './helper/enums'\nexport * from './helper/instrumentMethod'\nexport * from './helper/errorTools'\nexport * from './helper/byteUtils'\nexport * from './error/trackRuntimeError'\nexport * from './console/consoleObservable'\nexport * from './report/reportObservable'\nexport * from './helper/display'\nexport * from './helper/monitor'\nexport * from './helper/sanitize'\nexport * from './helper/eventEmitter'\nexport * from './helper/lifeCycle'\nexport * from './helper/limitModification'\nexport * from './helper/createEventRateLimiter'\nexport * from './helper/observable'\nexport * from './helper/tools'\nexport * from './helper/urlPolyfill'\nexport * from './helper/mobileUtil'\nexport * from './helper/getZoneJsOriginalValue'\nexport * from './helper/timer'\nexport * from './helper/readBytesFromStream'\nexport * from './helper/requestIdleCallback'\nexport * from './helper/taskQueue'\nexport * from './tracekit'\nexport * from './configuration/configuration'\nexport * from './configuration/transportConfiguration'\nexport * from './browser/cookie'\nexport * from './browser/fetchObservable'\nexport * from './browser/xhrObservable'\nexport * from './browser/pageExitObservable'\nexport * from './browser/htmlDomUtils'\nexport * from './browser/addEventListener'\nexport * from './browser/runOnReadyState'\nexport * from './browser/scroll'\n\nexport * from './dataMap'\nexport * from './init'\nexport {\n startSessionManager,\n stopSessionManager\n} from './session/sessionManagement'\nexport {\n SESSION_TIME_OUT_DELAY,\n SESSION_STORE_KEY\n} from './session/sessionConstants'\nexport { STORAGE_POLL_DELAY } from './session/sessionStore'\nexport * from './transport'\nexport * from './synthetics/syntheticsWorkerValues'\n\nexport * from './helper/serialisation/contextManager'\nexport * from './helper/serialisation/const'\nexport * from './helper/serialisation/jsonStringify'\nexport * from './helper/serialisation/rowData'\nexport * from './helper/serialisation/storedContextManager'\nexport * from './helper/serialisation/customerDataTracker'\nexport * from './helper/encoder'\nexport * from './user'\nexport * from './helper/polyfills'\nexport * from './telemetry/telemetry'\nexport * from './helper/catchUserErrors'\nexport * from './helper/connectivity'\nexport * from './helper/displayAlreadyInitializedError'\n"],"mappings":"AAAA,cAAc,wBAAwB;AACtC,cAAc,uBAAuB;AACrC,cAAc,qBAAqB;AACnC,cAAc,gBAAgB;AAC9B,cAAc,2BAA2B;AACzC,cAAc,qBAAqB;AACnC,cAAc,oBAAoB;AAClC,cAAc,2BAA2B;AACzC,cAAc,6BAA6B;AAC3C,cAAc,2BAA2B;AACzC,cAAc,kBAAkB;AAChC,cAAc,kBAAkB;AAChC,cAAc,mBAAmB;AACjC,cAAc,uBAAuB;AACrC,cAAc,oBAAoB;AAClC,cAAc,4BAA4B;AAC1C,cAAc,iCAAiC;AAC/C,cAAc,qBAAqB;AACnC,cAAc,gBAAgB;AAC9B,cAAc,sBAAsB;AACpC,cAAc,qBAAqB;AACnC,cAAc,iCAAiC;AAC/C,cAAc,gBAAgB;AAC9B,cAAc,8BAA8B;AAC5C,cAAc,8BAA8B;AAC5C,cAAc,oBAAoB;AAClC,cAAc,YAAY;AAC1B,cAAc,+BAA+B;AAC7C,cAAc,wCAAwC;AACtD,cAAc,kBAAkB;AAChC,cAAc,2BAA2B;AACzC,cAAc,yBAAyB;AACvC,cAAc,8BAA8B;AAC5C,cAAc,wBAAwB;AACtC,cAAc,4BAA4B;AAC1C,cAAc,2BAA2B;AACzC,cAAc,kBAAkB;AAEhC,cAAc,WAAW;AACzB,cAAc,QAAQ;AACtB,SACEA,mBAAmB,EACnBC,kBAAkB,QACb,6BAA6B;AACpC,SACEC,sBAAsB,EACtBC,iBAAiB,QACZ,4BAA4B;AACnC,SAASC,kBAAkB,QAAQ,wBAAwB;AAC3D,cAAc,aAAa;AAC3B,cAAc,qCAAqC;AAEnD,cAAc,uCAAuC;AACrD,cAAc,8BAA8B;AAC5C,cAAc,sCAAsC;AACpD,cAAc,gCAAgC;AAC9C,cAAc,6CAA6C;AAC3D,cAAc,4CAA4C;AAC1D,cAAc,kBAAkB;AAChC,cAAc,QAAQ;AACtB,cAAc,oBAAoB;AAClC,cAAc,uBAAuB;AACrC,cAAc,0BAA0B;AACxC,cAAc,uBAAuB;AACrC,cAAc,yCAAyC","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["startSessionManager","stopSessionManager","SESSION_TIME_OUT_DELAY","SESSION_STORE_KEY","STORAGE_POLL_DELAY"],"sources":["../src/index.js"],"sourcesContent":["export * from './helper/boundedBuffer'\nexport * from './helper/valueHistory'\nexport * from './helper/deviceInfo'\nexport * from './helper/enums'\nexport * from './helper/instrumentMethod'\nexport * from './helper/errorTools'\nexport * from './helper/byteUtils'\nexport * from './error/trackRuntimeError'\nexport * from './console/consoleObservable'\nexport * from './report/reportObservable'\nexport * from './helper/display'\nexport * from './helper/monitor'\nexport * from './helper/sanitize'\nexport * from './helper/eventEmitter'\nexport * from './helper/lifeCycle'\nexport * from './helper/limitModification'\nexport * from './helper/createEventRateLimiter'\nexport * from './helper/observable'\nexport * from './helper/tools'\nexport * from './helper/urlPolyfill'\nexport * from './helper/mobileUtil'\nexport * from './helper/getZoneJsOriginalValue'\nexport * from './helper/timer'\nexport * from './helper/readBytesFromStream'\nexport * from './helper/requestIdleCallback'\nexport * from './helper/taskQueue'\nexport * from './tracekit'\nexport * from './configuration/configuration'\nexport * from './configuration/transportConfiguration'\nexport * from './configuration/remoteConfiguration'\nexport * from './browser/cookie'\nexport * from './browser/fetchObservable'\nexport * from './browser/xhrObservable'\nexport * from './browser/pageExitObservable'\nexport * from './browser/htmlDomUtils'\nexport * from './browser/addEventListener'\nexport * from './browser/runOnReadyState'\nexport * from './browser/scroll'\n\nexport * from './dataMap'\nexport * from './init'\nexport {\n startSessionManager,\n stopSessionManager\n} from './session/sessionManagement'\nexport {\n SESSION_TIME_OUT_DELAY,\n SESSION_STORE_KEY\n} from './session/sessionConstants'\nexport { STORAGE_POLL_DELAY } from './session/sessionStore'\nexport * from './transport'\nexport * from './synthetics/syntheticsWorkerValues'\n\nexport * from './helper/serialisation/contextManager'\nexport * from './helper/serialisation/const'\nexport * from './helper/serialisation/jsonStringify'\nexport * from './helper/serialisation/rowData'\nexport * from './helper/serialisation/storedContextManager'\nexport * from './helper/serialisation/customerDataTracker'\nexport * from './helper/encoder'\nexport * from './user'\nexport * from './helper/polyfills'\nexport * from './telemetry/telemetry'\nexport * from './helper/catchUserErrors'\nexport * from './helper/connectivity'\nexport * from './helper/displayAlreadyInitializedError'\n"],"mappings":"AAAA,cAAc,wBAAwB;AACtC,cAAc,uBAAuB;AACrC,cAAc,qBAAqB;AACnC,cAAc,gBAAgB;AAC9B,cAAc,2BAA2B;AACzC,cAAc,qBAAqB;AACnC,cAAc,oBAAoB;AAClC,cAAc,2BAA2B;AACzC,cAAc,6BAA6B;AAC3C,cAAc,2BAA2B;AACzC,cAAc,kBAAkB;AAChC,cAAc,kBAAkB;AAChC,cAAc,mBAAmB;AACjC,cAAc,uBAAuB;AACrC,cAAc,oBAAoB;AAClC,cAAc,4BAA4B;AAC1C,cAAc,iCAAiC;AAC/C,cAAc,qBAAqB;AACnC,cAAc,gBAAgB;AAC9B,cAAc,sBAAsB;AACpC,cAAc,qBAAqB;AACnC,cAAc,iCAAiC;AAC/C,cAAc,gBAAgB;AAC9B,cAAc,8BAA8B;AAC5C,cAAc,8BAA8B;AAC5C,cAAc,oBAAoB;AAClC,cAAc,YAAY;AAC1B,cAAc,+BAA+B;AAC7C,cAAc,wCAAwC;AACtD,cAAc,qCAAqC;AACnD,cAAc,kBAAkB;AAChC,cAAc,2BAA2B;AACzC,cAAc,yBAAyB;AACvC,cAAc,8BAA8B;AAC5C,cAAc,wBAAwB;AACtC,cAAc,4BAA4B;AAC1C,cAAc,2BAA2B;AACzC,cAAc,kBAAkB;AAEhC,cAAc,WAAW;AACzB,cAAc,QAAQ;AACtB,SACEA,mBAAmB,EACnBC,kBAAkB,QACb,6BAA6B;AACpC,SACEC,sBAAsB,EACtBC,iBAAiB,QACZ,4BAA4B;AACnC,SAASC,kBAAkB,QAAQ,wBAAwB;AAC3D,cAAc,aAAa;AAC3B,cAAc,qCAAqC;AAEnD,cAAc,uCAAuC;AACrD,cAAc,8BAA8B;AAC5C,cAAc,sCAAsC;AACpD,cAAc,gCAAgC;AAC9C,cAAc,6CAA6C;AAC3D,cAAc,4CAA4C;AAC1D,cAAc,kBAAkB;AAChC,cAAc,QAAQ;AACtB,cAAc,oBAAoB;AAClC,cAAc,uBAAuB;AACrC,cAAc,0BAA0B;AACxC,cAAc,uBAAuB;AACrC,cAAc,yCAAyC","ignoreList":[]}
package/esm/init.js CHANGED
@@ -1,4 +1,4 @@
1
- function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
1
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
2
  import { each, assign } from './helper/tools';
3
3
  import { setDebugMode } from './helper/monitor';
4
4
  import { catchUserErrors } from './helper/catchUserErrors';
package/esm/init.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","names":["each","assign","setDebugMode","catchUserErrors","makePublicApi","stub","publicApi","onReady","callback","Object","defineProperty","get","enumerable","defineGlobal","global","name","api","existingGlobalVariable","q","fn","getGlobalObject","globalThis","_typeof","prototype","configurable","globalObject","_gc_temp_","self","window"],"sources":["../src/init.js"],"sourcesContent":["import { each, assign } from './helper/tools'\nimport { setDebugMode } from './helper/monitor'\nimport { catchUserErrors } from './helper/catchUserErrors'\n\nexport function makePublicApi(stub) {\n var publicApi = assign(\n {\n onReady: function (callback) {\n callback()\n }\n },\n stub\n )\n\n // Add an \"hidden\" property to set debug mode. We define it that way to hide it\n // as much as possible but of course it's not a real protection.\n Object.defineProperty(publicApi, '_setDebug', {\n get: function () {\n return setDebugMode\n },\n enumerable: false\n })\n\n return publicApi\n}\nexport function defineGlobal(global, name, api) {\n var existingGlobalVariable = global[name]\n global[name] = api\n if (existingGlobalVariable && existingGlobalVariable.q) {\n each(existingGlobalVariable.q, function (fn) {\n catchUserErrors(fn, 'onReady callback threw an error:')()\n })\n }\n}\n\nexport function getGlobalObject() {\n if (typeof globalThis === 'object') {\n return globalThis\n }\n Object.defineProperty(Object.prototype, '_gc_temp_', {\n get: function () {\n return this\n },\n configurable: true\n })\n // @ts-ignore\n var globalObject = _gc_temp_\n // @ts-ignore\n delete Object.prototype._gc_temp_\n if (typeof globalObject !== 'object') {\n // on safari _gc_temp_ is available on window but not globally\n // fallback on other browser globals check\n if (typeof self === 'object') {\n globalObject = self\n } else if (typeof window === 'object') {\n globalObject = window\n } else {\n globalObject = {}\n }\n }\n return globalObject\n}\n"],"mappings":";AAAA,SAASA,IAAI,EAAEC,MAAM,QAAQ,gBAAgB;AAC7C,SAASC,YAAY,QAAQ,kBAAkB;AAC/C,SAASC,eAAe,QAAQ,0BAA0B;AAE1D,OAAO,SAASC,aAAaA,CAACC,IAAI,EAAE;EAClC,IAAIC,SAAS,GAAGL,MAAM,CACpB;IACEM,OAAO,EAAE,SAAAA,QAAUC,QAAQ,EAAE;MAC3BA,QAAQ,CAAC,CAAC;IACZ;EACF,CAAC,EACDH,IACF,CAAC;;EAED;EACA;EACAI,MAAM,CAACC,cAAc,CAACJ,SAAS,EAAE,WAAW,EAAE;IAC5CK,GAAG,EAAE,SAAAA,IAAA,EAAY;MACf,OAAOT,YAAY;IACrB,CAAC;IACDU,UAAU,EAAE;EACd,CAAC,CAAC;EAEF,OAAON,SAAS;AAClB;AACA,OAAO,SAASO,YAAYA,CAACC,MAAM,EAAEC,IAAI,EAAEC,GAAG,EAAE;EAC9C,IAAIC,sBAAsB,GAAGH,MAAM,CAACC,IAAI,CAAC;EACzCD,MAAM,CAACC,IAAI,CAAC,GAAGC,GAAG;EAClB,IAAIC,sBAAsB,IAAIA,sBAAsB,CAACC,CAAC,EAAE;IACtDlB,IAAI,CAACiB,sBAAsB,CAACC,CAAC,EAAE,UAAUC,EAAE,EAAE;MAC3ChB,eAAe,CAACgB,EAAE,EAAE,kCAAkC,CAAC,CAAC,CAAC;IAC3D,CAAC,CAAC;EACJ;AACF;AAEA,OAAO,SAASC,eAAeA,CAAA,EAAG;EAChC,IAAI,QAAOC,UAAU,iCAAAC,OAAA,CAAVD,UAAU,OAAK,QAAQ,EAAE;IAClC,OAAOA,UAAU;EACnB;EACAZ,MAAM,CAACC,cAAc,CAACD,MAAM,CAACc,SAAS,EAAE,WAAW,EAAE;IACnDZ,GAAG,EAAE,SAAAA,IAAA,EAAY;MACf,OAAO,IAAI;IACb,CAAC;IACDa,YAAY,EAAE;EAChB,CAAC,CAAC;EACF;EACA,IAAIC,YAAY,GAAGC,SAAS;EAC5B;EACA,OAAOjB,MAAM,CAACc,SAAS,CAACG,SAAS;EACjC,IAAIJ,OAAA,CAAOG,YAAY,MAAK,QAAQ,EAAE;IACpC;IACA;IACA,IAAI,QAAOE,IAAI,iCAAAL,OAAA,CAAJK,IAAI,OAAK,QAAQ,EAAE;MAC5BF,YAAY,GAAGE,IAAI;IACrB,CAAC,MAAM,IAAI,QAAOC,MAAM,iCAAAN,OAAA,CAANM,MAAM,OAAK,QAAQ,EAAE;MACrCH,YAAY,GAAGG,MAAM;IACvB,CAAC,MAAM;MACLH,YAAY,GAAG,CAAC,CAAC;IACnB;EACF;EACA,OAAOA,YAAY;AACrB","ignoreList":[]}
1
+ {"version":3,"file":"init.js","names":["each","assign","setDebugMode","catchUserErrors","makePublicApi","stub","publicApi","onReady","callback","Object","defineProperty","get","enumerable","defineGlobal","global","name","api","existingGlobalVariable","q","fn","getGlobalObject","globalThis","_typeof","prototype","configurable","globalObject","_gc_temp_","self","window"],"sources":["../src/init.js"],"sourcesContent":["import { each, assign } from './helper/tools'\nimport { setDebugMode } from './helper/monitor'\nimport { catchUserErrors } from './helper/catchUserErrors'\n\nexport function makePublicApi(stub) {\n var publicApi = assign(\n {\n onReady: function (callback) {\n callback()\n }\n },\n stub\n )\n\n // Add an \"hidden\" property to set debug mode. We define it that way to hide it\n // as much as possible but of course it's not a real protection.\n Object.defineProperty(publicApi, '_setDebug', {\n get: function () {\n return setDebugMode\n },\n enumerable: false\n })\n\n return publicApi\n}\nexport function defineGlobal(global, name, api) {\n var existingGlobalVariable = global[name]\n global[name] = api\n if (existingGlobalVariable && existingGlobalVariable.q) {\n each(existingGlobalVariable.q, function (fn) {\n catchUserErrors(fn, 'onReady callback threw an error:')()\n })\n }\n}\n\nexport function getGlobalObject() {\n if (typeof globalThis === 'object') {\n return globalThis\n }\n Object.defineProperty(Object.prototype, '_gc_temp_', {\n get: function () {\n return this\n },\n configurable: true\n })\n // @ts-ignore\n var globalObject = _gc_temp_\n // @ts-ignore\n delete Object.prototype._gc_temp_\n if (typeof globalObject !== 'object') {\n // on safari _gc_temp_ is available on window but not globally\n // fallback on other browser globals check\n if (typeof self === 'object') {\n globalObject = self\n } else if (typeof window === 'object') {\n globalObject = window\n } else {\n globalObject = {}\n }\n }\n return globalObject\n}\n"],"mappings":";AAAA,SAASA,IAAI,EAAEC,MAAM,QAAQ,gBAAgB;AAC7C,SAASC,YAAY,QAAQ,kBAAkB;AAC/C,SAASC,eAAe,QAAQ,0BAA0B;AAE1D,OAAO,SAASC,aAAaA,CAACC,IAAI,EAAE;EAClC,IAAIC,SAAS,GAAGL,MAAM,CACpB;IACEM,OAAO,EAAE,SAATA,OAAOA,CAAYC,QAAQ,EAAE;MAC3BA,QAAQ,CAAC,CAAC;IACZ;EACF,CAAC,EACDH,IACF,CAAC;;EAED;EACA;EACAI,MAAM,CAACC,cAAc,CAACJ,SAAS,EAAE,WAAW,EAAE;IAC5CK,GAAG,EAAE,SAALA,GAAGA,CAAA,EAAc;MACf,OAAOT,YAAY;IACrB,CAAC;IACDU,UAAU,EAAE;EACd,CAAC,CAAC;EAEF,OAAON,SAAS;AAClB;AACA,OAAO,SAASO,YAAYA,CAACC,MAAM,EAAEC,IAAI,EAAEC,GAAG,EAAE;EAC9C,IAAIC,sBAAsB,GAAGH,MAAM,CAACC,IAAI,CAAC;EACzCD,MAAM,CAACC,IAAI,CAAC,GAAGC,GAAG;EAClB,IAAIC,sBAAsB,IAAIA,sBAAsB,CAACC,CAAC,EAAE;IACtDlB,IAAI,CAACiB,sBAAsB,CAACC,CAAC,EAAE,UAAUC,EAAE,EAAE;MAC3ChB,eAAe,CAACgB,EAAE,EAAE,kCAAkC,CAAC,CAAC,CAAC;IAC3D,CAAC,CAAC;EACJ;AACF;AAEA,OAAO,SAASC,eAAeA,CAAA,EAAG;EAChC,IAAI,QAAOC,UAAU,iCAAAC,OAAA,CAAVD,UAAU,OAAK,QAAQ,EAAE;IAClC,OAAOA,UAAU;EACnB;EACAZ,MAAM,CAACC,cAAc,CAACD,MAAM,CAACc,SAAS,EAAE,WAAW,EAAE;IACnDZ,GAAG,EAAE,SAALA,GAAGA,CAAA,EAAc;MACf,OAAO,IAAI;IACb,CAAC;IACDa,YAAY,EAAE;EAChB,CAAC,CAAC;EACF;EACA,IAAIC,YAAY,GAAGC,SAAS;EAC5B;EACA,OAAOjB,MAAM,CAACc,SAAS,CAACG,SAAS;EACjC,IAAIJ,OAAA,CAAOG,YAAY,MAAK,QAAQ,EAAE;IACpC;IACA;IACA,IAAI,QAAOE,IAAI,iCAAAL,OAAA,CAAJK,IAAI,OAAK,QAAQ,EAAE;MAC5BF,YAAY,GAAGE,IAAI;IACrB,CAAC,MAAM,IAAI,QAAOC,MAAM,iCAAAN,OAAA,CAANM,MAAM,OAAK,QAAQ,EAAE;MACrCH,YAAY,GAAGG,MAAM;IACvB,CAAC,MAAM;MACLH,YAAY,GAAG,CAAC,CAAC;IACnB;EACF;EACA,OAAOA,YAAY;AACrB","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"sessionInCookie.js","names":["isChromium","getCurrentSite","areCookiesAuthorized","getCookie","setCookie","SESSION_EXPIRATION_DELAY","SESSION_TIME_OUT_DELAY","SESSION_STORE_KEY","toSessionString","toSessionState","getExpiredSessionState","selectCookieStrategy","initConfiguration","cookieOptions","buildCookieOptions","type","undefined","initCookieStrategy","cookieStore","isLockEnabled","persistSession","persistSessionCookie","retrieveSession","retrieveSessionCookie","expireSession","expireSessionCookie","options","session","sessionString","secure","useSecureSessionCookie","usePartitionedCrossSiteSessionCookie","useCrossSiteSessionCookie","crossSite","partitioned","trackSessionAcrossSubdomains","domain"],"sources":["../../src/session/sessionInCookie.js"],"sourcesContent":["import { isChromium } from '../helper/tools'\nimport {\n getCurrentSite,\n areCookiesAuthorized,\n getCookie,\n setCookie\n} from '../browser/cookie'\nimport {\n SESSION_EXPIRATION_DELAY,\n SESSION_TIME_OUT_DELAY,\n SESSION_STORE_KEY\n} from './sessionConstants'\nimport {\n toSessionString,\n toSessionState,\n getExpiredSessionState\n} from './sessionState'\n\nexport function selectCookieStrategy(initConfiguration) {\n const cookieOptions = buildCookieOptions(initConfiguration)\n return areCookiesAuthorized(cookieOptions)\n ? { type: 'Cookie', cookieOptions }\n : undefined\n}\n\nexport function initCookieStrategy(cookieOptions) {\n const cookieStore = {\n /**\n * Lock strategy allows mitigating issues due to concurrent access to cookie.\n * This issue concerns only chromium browsers and enabling this on firefox increases cookie write failures.\n */\n isLockEnabled: isChromium(),\n persistSession: persistSessionCookie(cookieOptions),\n retrieveSession: retrieveSessionCookie(cookieOptions),\n expireSession: function () {\n return expireSessionCookie(cookieOptions)\n }\n }\n return cookieStore\n}\n\nfunction persistSessionCookie(options) {\n return function (session) {\n setCookie(\n SESSION_STORE_KEY,\n toSessionString(session),\n SESSION_EXPIRATION_DELAY,\n options\n )\n }\n}\n\nfunction expireSessionCookie(options) {\n setCookie(\n SESSION_STORE_KEY,\n toSessionString(getExpiredSessionState()),\n SESSION_TIME_OUT_DELAY,\n options\n )\n}\n\nfunction retrieveSessionCookie(options) {\n return function () {\n var sessionString = getCookie(SESSION_STORE_KEY, options)\n return toSessionState(sessionString)\n }\n}\n\nexport function buildCookieOptions(initConfiguration) {\n const cookieOptions = {}\n\n cookieOptions.secure =\n !!initConfiguration.useSecureSessionCookie ||\n !!initConfiguration.usePartitionedCrossSiteSessionCookie ||\n !!initConfiguration.useCrossSiteSessionCookie\n cookieOptions.crossSite =\n !!initConfiguration.usePartitionedCrossSiteSessionCookie ||\n !!initConfiguration.useCrossSiteSessionCookie\n cookieOptions.partitioned =\n !!initConfiguration.usePartitionedCrossSiteSessionCookie\n\n if (initConfiguration.trackSessionAcrossSubdomains) {\n cookieOptions.domain = getCurrentSite()\n }\n\n return cookieOptions\n}\n"],"mappings":"AAAA,SAASA,UAAU,QAAQ,iBAAiB;AAC5C,SACEC,cAAc,EACdC,oBAAoB,EACpBC,SAAS,EACTC,SAAS,QACJ,mBAAmB;AAC1B,SACEC,wBAAwB,EACxBC,sBAAsB,EACtBC,iBAAiB,QACZ,oBAAoB;AAC3B,SACEC,eAAe,EACfC,cAAc,EACdC,sBAAsB,QACjB,gBAAgB;AAEvB,OAAO,SAASC,oBAAoBA,CAACC,iBAAiB,EAAE;EACtD,IAAMC,aAAa,GAAGC,kBAAkB,CAACF,iBAAiB,CAAC;EAC3D,OAAOV,oBAAoB,CAACW,aAAa,CAAC,GACtC;IAAEE,IAAI,EAAE,QAAQ;IAAEF,aAAa,EAAbA;EAAc,CAAC,GACjCG,SAAS;AACf;AAEA,OAAO,SAASC,kBAAkBA,CAACJ,aAAa,EAAE;EAChD,IAAMK,WAAW,GAAG;IAClB;AACJ;AACA;AACA;IACIC,aAAa,EAAEnB,UAAU,CAAC,CAAC;IAC3BoB,cAAc,EAAEC,oBAAoB,CAACR,aAAa,CAAC;IACnDS,eAAe,EAAEC,qBAAqB,CAACV,aAAa,CAAC;IACrDW,aAAa,EAAE,SAAAA,cAAA,EAAY;MACzB,OAAOC,mBAAmB,CAACZ,aAAa,CAAC;IAC3C;EACF,CAAC;EACD,OAAOK,WAAW;AACpB;AAEA,SAASG,oBAAoBA,CAACK,OAAO,EAAE;EACrC,OAAO,UAAUC,OAAO,EAAE;IACxBvB,SAAS,CACPG,iBAAiB,EACjBC,eAAe,CAACmB,OAAO,CAAC,EACxBtB,wBAAwB,EACxBqB,OACF,CAAC;EACH,CAAC;AACH;AAEA,SAASD,mBAAmBA,CAACC,OAAO,EAAE;EACpCtB,SAAS,CACPG,iBAAiB,EACjBC,eAAe,CAACE,sBAAsB,CAAC,CAAC,CAAC,EACzCJ,sBAAsB,EACtBoB,OACF,CAAC;AACH;AAEA,SAASH,qBAAqBA,CAACG,OAAO,EAAE;EACtC,OAAO,YAAY;IACjB,IAAIE,aAAa,GAAGzB,SAAS,CAACI,iBAAiB,EAAEmB,OAAO,CAAC;IACzD,OAAOjB,cAAc,CAACmB,aAAa,CAAC;EACtC,CAAC;AACH;AAEA,OAAO,SAASd,kBAAkBA,CAACF,iBAAiB,EAAE;EACpD,IAAMC,aAAa,GAAG,CAAC,CAAC;EAExBA,aAAa,CAACgB,MAAM,GAClB,CAAC,CAACjB,iBAAiB,CAACkB,sBAAsB,IAC1C,CAAC,CAAClB,iBAAiB,CAACmB,oCAAoC,IACxD,CAAC,CAACnB,iBAAiB,CAACoB,yBAAyB;EAC/CnB,aAAa,CAACoB,SAAS,GACrB,CAAC,CAACrB,iBAAiB,CAACmB,oCAAoC,IACxD,CAAC,CAACnB,iBAAiB,CAACoB,yBAAyB;EAC/CnB,aAAa,CAACqB,WAAW,GACvB,CAAC,CAACtB,iBAAiB,CAACmB,oCAAoC;EAE1D,IAAInB,iBAAiB,CAACuB,4BAA4B,EAAE;IAClDtB,aAAa,CAACuB,MAAM,GAAGnC,cAAc,CAAC,CAAC;EACzC;EAEA,OAAOY,aAAa;AACtB","ignoreList":[]}
1
+ {"version":3,"file":"sessionInCookie.js","names":["isChromium","getCurrentSite","areCookiesAuthorized","getCookie","setCookie","SESSION_EXPIRATION_DELAY","SESSION_TIME_OUT_DELAY","SESSION_STORE_KEY","toSessionString","toSessionState","getExpiredSessionState","selectCookieStrategy","initConfiguration","cookieOptions","buildCookieOptions","type","undefined","initCookieStrategy","cookieStore","isLockEnabled","persistSession","persistSessionCookie","retrieveSession","retrieveSessionCookie","expireSession","expireSessionCookie","options","session","sessionString","secure","useSecureSessionCookie","usePartitionedCrossSiteSessionCookie","useCrossSiteSessionCookie","crossSite","partitioned","trackSessionAcrossSubdomains","domain"],"sources":["../../src/session/sessionInCookie.js"],"sourcesContent":["import { isChromium } from '../helper/tools'\nimport {\n getCurrentSite,\n areCookiesAuthorized,\n getCookie,\n setCookie\n} from '../browser/cookie'\nimport {\n SESSION_EXPIRATION_DELAY,\n SESSION_TIME_OUT_DELAY,\n SESSION_STORE_KEY\n} from './sessionConstants'\nimport {\n toSessionString,\n toSessionState,\n getExpiredSessionState\n} from './sessionState'\n\nexport function selectCookieStrategy(initConfiguration) {\n const cookieOptions = buildCookieOptions(initConfiguration)\n return areCookiesAuthorized(cookieOptions)\n ? { type: 'Cookie', cookieOptions }\n : undefined\n}\n\nexport function initCookieStrategy(cookieOptions) {\n const cookieStore = {\n /**\n * Lock strategy allows mitigating issues due to concurrent access to cookie.\n * This issue concerns only chromium browsers and enabling this on firefox increases cookie write failures.\n */\n isLockEnabled: isChromium(),\n persistSession: persistSessionCookie(cookieOptions),\n retrieveSession: retrieveSessionCookie(cookieOptions),\n expireSession: function () {\n return expireSessionCookie(cookieOptions)\n }\n }\n return cookieStore\n}\n\nfunction persistSessionCookie(options) {\n return function (session) {\n setCookie(\n SESSION_STORE_KEY,\n toSessionString(session),\n SESSION_EXPIRATION_DELAY,\n options\n )\n }\n}\n\nfunction expireSessionCookie(options) {\n setCookie(\n SESSION_STORE_KEY,\n toSessionString(getExpiredSessionState()),\n SESSION_TIME_OUT_DELAY,\n options\n )\n}\n\nfunction retrieveSessionCookie(options) {\n return function () {\n var sessionString = getCookie(SESSION_STORE_KEY, options)\n return toSessionState(sessionString)\n }\n}\n\nexport function buildCookieOptions(initConfiguration) {\n const cookieOptions = {}\n\n cookieOptions.secure =\n !!initConfiguration.useSecureSessionCookie ||\n !!initConfiguration.usePartitionedCrossSiteSessionCookie ||\n !!initConfiguration.useCrossSiteSessionCookie\n cookieOptions.crossSite =\n !!initConfiguration.usePartitionedCrossSiteSessionCookie ||\n !!initConfiguration.useCrossSiteSessionCookie\n cookieOptions.partitioned =\n !!initConfiguration.usePartitionedCrossSiteSessionCookie\n\n if (initConfiguration.trackSessionAcrossSubdomains) {\n cookieOptions.domain = getCurrentSite()\n }\n\n return cookieOptions\n}\n"],"mappings":"AAAA,SAASA,UAAU,QAAQ,iBAAiB;AAC5C,SACEC,cAAc,EACdC,oBAAoB,EACpBC,SAAS,EACTC,SAAS,QACJ,mBAAmB;AAC1B,SACEC,wBAAwB,EACxBC,sBAAsB,EACtBC,iBAAiB,QACZ,oBAAoB;AAC3B,SACEC,eAAe,EACfC,cAAc,EACdC,sBAAsB,QACjB,gBAAgB;AAEvB,OAAO,SAASC,oBAAoBA,CAACC,iBAAiB,EAAE;EACtD,IAAMC,aAAa,GAAGC,kBAAkB,CAACF,iBAAiB,CAAC;EAC3D,OAAOV,oBAAoB,CAACW,aAAa,CAAC,GACtC;IAAEE,IAAI,EAAE,QAAQ;IAAEF,aAAa,EAAbA;EAAc,CAAC,GACjCG,SAAS;AACf;AAEA,OAAO,SAASC,kBAAkBA,CAACJ,aAAa,EAAE;EAChD,IAAMK,WAAW,GAAG;IAClB;AACJ;AACA;AACA;IACIC,aAAa,EAAEnB,UAAU,CAAC,CAAC;IAC3BoB,cAAc,EAAEC,oBAAoB,CAACR,aAAa,CAAC;IACnDS,eAAe,EAAEC,qBAAqB,CAACV,aAAa,CAAC;IACrDW,aAAa,EAAE,SAAfA,aAAaA,CAAA,EAAc;MACzB,OAAOC,mBAAmB,CAACZ,aAAa,CAAC;IAC3C;EACF,CAAC;EACD,OAAOK,WAAW;AACpB;AAEA,SAASG,oBAAoBA,CAACK,OAAO,EAAE;EACrC,OAAO,UAAUC,OAAO,EAAE;IACxBvB,SAAS,CACPG,iBAAiB,EACjBC,eAAe,CAACmB,OAAO,CAAC,EACxBtB,wBAAwB,EACxBqB,OACF,CAAC;EACH,CAAC;AACH;AAEA,SAASD,mBAAmBA,CAACC,OAAO,EAAE;EACpCtB,SAAS,CACPG,iBAAiB,EACjBC,eAAe,CAACE,sBAAsB,CAAC,CAAC,CAAC,EACzCJ,sBAAsB,EACtBoB,OACF,CAAC;AACH;AAEA,SAASH,qBAAqBA,CAACG,OAAO,EAAE;EACtC,OAAO,YAAY;IACjB,IAAIE,aAAa,GAAGzB,SAAS,CAACI,iBAAiB,EAAEmB,OAAO,CAAC;IACzD,OAAOjB,cAAc,CAACmB,aAAa,CAAC;EACtC,CAAC;AACH;AAEA,OAAO,SAASd,kBAAkBA,CAACF,iBAAiB,EAAE;EACpD,IAAMC,aAAa,GAAG,CAAC,CAAC;EAExBA,aAAa,CAACgB,MAAM,GAClB,CAAC,CAACjB,iBAAiB,CAACkB,sBAAsB,IAC1C,CAAC,CAAClB,iBAAiB,CAACmB,oCAAoC,IACxD,CAAC,CAACnB,iBAAiB,CAACoB,yBAAyB;EAC/CnB,aAAa,CAACoB,SAAS,GACrB,CAAC,CAACrB,iBAAiB,CAACmB,oCAAoC,IACxD,CAAC,CAACnB,iBAAiB,CAACoB,yBAAyB;EAC/CnB,aAAa,CAACqB,WAAW,GACvB,CAAC,CAACtB,iBAAiB,CAACmB,oCAAoC;EAE1D,IAAInB,iBAAiB,CAACuB,4BAA4B,EAAE;IAClDtB,aAAa,CAACuB,MAAM,GAAGnC,cAAc,CAAC,CAAC;EACzC;EAEA,OAAOY,aAAa;AACtB","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"sessionManagement.js","names":["Observable","createValueHistory","relativeNow","clocksOrigin","ONE_MINUTE","DOM_EVENT","addEventListener","addEventListeners","clearInterval","setInterval","SESSION_TIME_OUT_DELAY","startSessionStore","VISIBILITY_CHECK_DELAY","SESSION_CONTEXT_TIMEOUT_DELAY","stopCallbacks","startSessionManager","configuration","productKey","computeSessionState","renewObservable","expireObservable","sessionStore","sessionStoreStrategyType","push","stop","sessionContextHistory","expireDelay","subscribe","add","buildSessionContext","notify","closeActive","expandOrRenewSession","relative","trackActivity","trackVisibility","expandSession","trackResume","restartSession","id","getSession","trackingType","hasError","findSession","startTime","options","find","sessionStateUpdateObservable","expire","updateSessionState","stopSessionManager","forEach","e","_addEventListeners","window","CLICK","TOUCH_START","KEY_DOWN","SCROLL","capture","passive","expandSessionWhenVisible","document","visibilityState","_addEventListener","VISIBILITY_CHANGE","visibilityCheckInterval","cb","_addEventListener2","RESUME"],"sources":["../../src/session/sessionManagement.js"],"sourcesContent":["import { Observable } from '../helper/observable'\nimport { createValueHistory } from '../helper/valueHistory'\nimport { relativeNow, clocksOrigin, ONE_MINUTE } from '../helper/tools'\nimport { DOM_EVENT } from '../helper/enums'\nimport {\n addEventListener,\n addEventListeners\n} from '../browser/addEventListener'\nimport { clearInterval, setInterval } from '../helper/timer'\nimport { SESSION_TIME_OUT_DELAY } from './sessionConstants'\nimport { startSessionStore } from './sessionStore'\n\nexport const VISIBILITY_CHECK_DELAY = ONE_MINUTE\nconst SESSION_CONTEXT_TIMEOUT_DELAY = SESSION_TIME_OUT_DELAY\nlet stopCallbacks = []\n\nexport function startSessionManager(\n configuration,\n productKey,\n computeSessionState\n) {\n const renewObservable = new Observable()\n const expireObservable = new Observable()\n\n const sessionStore = startSessionStore(\n configuration.sessionStoreStrategyType,\n productKey,\n computeSessionState\n )\n stopCallbacks.push(function () {\n return sessionStore.stop()\n })\n\n const sessionContextHistory = createValueHistory({\n expireDelay: SESSION_CONTEXT_TIMEOUT_DELAY\n })\n stopCallbacks.push(function () {\n return sessionContextHistory.stop()\n })\n\n sessionStore.renewObservable.subscribe(function () {\n sessionContextHistory.add(buildSessionContext(), relativeNow())\n renewObservable.notify()\n })\n sessionStore.expireObservable.subscribe(function () {\n expireObservable.notify()\n sessionContextHistory.closeActive(relativeNow())\n })\n\n // manager is started.\n sessionStore.expandOrRenewSession()\n sessionContextHistory.add(buildSessionContext(), clocksOrigin().relative)\n\n trackActivity(function () {\n sessionStore.expandOrRenewSession()\n })\n trackVisibility(function () {\n return sessionStore.expandSession()\n })\n trackResume(function () {\n sessionStore.restartSession()\n })\n\n function buildSessionContext() {\n return {\n id: sessionStore.getSession().id,\n trackingType: sessionStore.getSession()[productKey],\n hasError: !!sessionStore.getSession().hasError\n }\n }\n\n return {\n findSession: function (startTime, options) {\n return sessionContextHistory.find(startTime, options)\n },\n renewObservable,\n expireObservable,\n sessionStateUpdateObservable: sessionStore.sessionStateUpdateObservable,\n expire: sessionStore.expire,\n updateSessionState: sessionStore.updateSessionState\n }\n}\n\nexport function stopSessionManager() {\n stopCallbacks.forEach(function (e) {\n e()\n })\n stopCallbacks = []\n}\n\nfunction trackActivity(expandOrRenewSession) {\n const { stop } = addEventListeners(\n window,\n [\n DOM_EVENT.CLICK,\n DOM_EVENT.TOUCH_START,\n DOM_EVENT.KEY_DOWN,\n DOM_EVENT.SCROLL\n ],\n expandOrRenewSession,\n { capture: true, passive: true }\n )\n stopCallbacks.push(stop)\n}\n\nfunction trackVisibility(expandSession) {\n const expandSessionWhenVisible = function () {\n if (document.visibilityState === 'visible') {\n expandSession()\n }\n }\n\n const { stop } = addEventListener(\n document,\n DOM_EVENT.VISIBILITY_CHANGE,\n expandSessionWhenVisible\n )\n stopCallbacks.push(stop)\n\n const visibilityCheckInterval = setInterval(\n expandSessionWhenVisible,\n VISIBILITY_CHECK_DELAY\n )\n stopCallbacks.push(function () {\n clearInterval(visibilityCheckInterval)\n })\n}\n\nfunction trackResume(cb) {\n const { stop } = addEventListener(window, DOM_EVENT.RESUME, cb, {\n capture: true\n })\n stopCallbacks.push(stop)\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"sessionManagement.js","names":["Observable","createValueHistory","relativeNow","clocksOrigin","ONE_MINUTE","DOM_EVENT","addEventListener","addEventListeners","clearInterval","setInterval","SESSION_TIME_OUT_DELAY","startSessionStore","VISIBILITY_CHECK_DELAY","SESSION_CONTEXT_TIMEOUT_DELAY","stopCallbacks","startSessionManager","configuration","productKey","computeSessionState","renewObservable","expireObservable","sessionStore","sessionStoreStrategyType","push","stop","sessionContextHistory","expireDelay","subscribe","add","buildSessionContext","notify","closeActive","expandOrRenewSession","relative","trackActivity","trackVisibility","expandSession","trackResume","restartSession","id","getSession","trackingType","hasError","findSession","startTime","options","find","sessionStateUpdateObservable","expire","updateSessionState","stopSessionManager","forEach","e","_addEventListeners","window","CLICK","TOUCH_START","KEY_DOWN","SCROLL","capture","passive","expandSessionWhenVisible","document","visibilityState","_addEventListener","VISIBILITY_CHANGE","visibilityCheckInterval","cb","_addEventListener2","RESUME"],"sources":["../../src/session/sessionManagement.js"],"sourcesContent":["import { Observable } from '../helper/observable'\nimport { createValueHistory } from '../helper/valueHistory'\nimport { relativeNow, clocksOrigin, ONE_MINUTE } from '../helper/tools'\nimport { DOM_EVENT } from '../helper/enums'\nimport {\n addEventListener,\n addEventListeners\n} from '../browser/addEventListener'\nimport { clearInterval, setInterval } from '../helper/timer'\nimport { SESSION_TIME_OUT_DELAY } from './sessionConstants'\nimport { startSessionStore } from './sessionStore'\n\nexport const VISIBILITY_CHECK_DELAY = ONE_MINUTE\nconst SESSION_CONTEXT_TIMEOUT_DELAY = SESSION_TIME_OUT_DELAY\nlet stopCallbacks = []\n\nexport function startSessionManager(\n configuration,\n productKey,\n computeSessionState\n) {\n const renewObservable = new Observable()\n const expireObservable = new Observable()\n\n const sessionStore = startSessionStore(\n configuration.sessionStoreStrategyType,\n productKey,\n computeSessionState\n )\n stopCallbacks.push(function () {\n return sessionStore.stop()\n })\n\n const sessionContextHistory = createValueHistory({\n expireDelay: SESSION_CONTEXT_TIMEOUT_DELAY\n })\n stopCallbacks.push(function () {\n return sessionContextHistory.stop()\n })\n\n sessionStore.renewObservable.subscribe(function () {\n sessionContextHistory.add(buildSessionContext(), relativeNow())\n renewObservable.notify()\n })\n sessionStore.expireObservable.subscribe(function () {\n expireObservable.notify()\n sessionContextHistory.closeActive(relativeNow())\n })\n\n // manager is started.\n sessionStore.expandOrRenewSession()\n sessionContextHistory.add(buildSessionContext(), clocksOrigin().relative)\n\n trackActivity(function () {\n sessionStore.expandOrRenewSession()\n })\n trackVisibility(function () {\n return sessionStore.expandSession()\n })\n trackResume(function () {\n sessionStore.restartSession()\n })\n\n function buildSessionContext() {\n return {\n id: sessionStore.getSession().id,\n trackingType: sessionStore.getSession()[productKey],\n hasError: !!sessionStore.getSession().hasError\n }\n }\n\n return {\n findSession: function (startTime, options) {\n return sessionContextHistory.find(startTime, options)\n },\n renewObservable,\n expireObservable,\n sessionStateUpdateObservable: sessionStore.sessionStateUpdateObservable,\n expire: sessionStore.expire,\n updateSessionState: sessionStore.updateSessionState\n }\n}\n\nexport function stopSessionManager() {\n stopCallbacks.forEach(function (e) {\n e()\n })\n stopCallbacks = []\n}\n\nfunction trackActivity(expandOrRenewSession) {\n const { stop } = addEventListeners(\n window,\n [\n DOM_EVENT.CLICK,\n DOM_EVENT.TOUCH_START,\n DOM_EVENT.KEY_DOWN,\n DOM_EVENT.SCROLL\n ],\n expandOrRenewSession,\n { capture: true, passive: true }\n )\n stopCallbacks.push(stop)\n}\n\nfunction trackVisibility(expandSession) {\n const expandSessionWhenVisible = function () {\n if (document.visibilityState === 'visible') {\n expandSession()\n }\n }\n\n const { stop } = addEventListener(\n document,\n DOM_EVENT.VISIBILITY_CHANGE,\n expandSessionWhenVisible\n )\n stopCallbacks.push(stop)\n\n const visibilityCheckInterval = setInterval(\n expandSessionWhenVisible,\n VISIBILITY_CHECK_DELAY\n )\n stopCallbacks.push(function () {\n clearInterval(visibilityCheckInterval)\n })\n}\n\nfunction trackResume(cb) {\n const { stop } = addEventListener(window, DOM_EVENT.RESUME, cb, {\n capture: true\n })\n stopCallbacks.push(stop)\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,9 +1,9 @@
1
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
1
+ function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
2
2
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
3
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
4
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
5
- function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i["return"] && (_r = _i["return"](), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
6
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
3
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
4
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
5
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
6
+ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
7
7
  import { isEmptyObject, objectEntries, dateNow, map } from '../helper/tools';
8
8
  import { SESSION_EXPIRATION_DELAY, SESSION_TIME_OUT_DELAY } from './sessionConstants';
9
9
  var SESSION_ENTRY_REGEXP = /^([a-zA-Z]+)=([a-z0-9-]+)$/;
@@ -150,7 +150,7 @@ export function startSessionStore(sessionStoreStrategyType, productKey, computeS
150
150
  expandOrRenewSession: throttledExpandOrRenewSession,
151
151
  expandSession: expandSession,
152
152
  getSession: function getSession() {
153
- return sessionCache || {};
153
+ return sessionCache;
154
154
  },
155
155
  renewObservable: renewObservable,
156
156
  expireObservable: expireObservable,
@@ -1 +1 @@
1
- {"version":3,"file":"sessionStore.js","names":["clearInterval","setInterval","Observable","ONE_SECOND","dateNow","throttle","UUID","assign","selectCookieStrategy","initCookieStrategy","getExpiredSessionState","isSessionInExpiredState","isSessionInNotStartedState","isSessionStarted","initLocalStorageStrategy","selectLocalStorageStrategy","processSessionStoreOperations","STORAGE_POLL_DELAY","selectSessionStoreStrategyType","initConfiguration","sessionStoreStrategyType","allowFallbackToLocalStorage","startSessionStore","productKey","computeSessionState","renewObservable","expireObservable","sessionStateUpdateObservable","sessionStoreStrategy","type","cookieOptions","expireSession","watchSessionTimeoutId","watchSession","sessionCache","startSession","_throttle","process","sessionState","synchronizedSession","synchronizeSession","expandOrRenewSessionState","after","hasSessionInCache","renewSessionInCache","throttledExpandOrRenewSession","throttled","cancelExpandOrRenewSession","cancel","expandSession","undefined","isSessionInCacheOutdated","expireSessionInCache","notify","previousState","newState","_computeSessionState","trackingType","isTracked","isExpired","id","created","String","updateSessionState","partialSessionState","expandOrRenewSession","getSession","restartSession","expire","stop"],"sources":["../../src/session/sessionStore.js"],"sourcesContent":["import { clearInterval, setInterval } from '../helper/timer'\nimport { Observable } from '../helper/observable'\nimport { ONE_SECOND, dateNow, throttle, UUID, assign } from '../helper/tools'\nimport { selectCookieStrategy, initCookieStrategy } from './sessionInCookie'\nimport {\n getExpiredSessionState,\n isSessionInExpiredState,\n isSessionInNotStartedState,\n isSessionStarted\n} from './sessionState'\nimport {\n initLocalStorageStrategy,\n selectLocalStorageStrategy\n} from './sessionInLocalStorage'\nimport { processSessionStoreOperations } from './sessionStoreOperations'\n\n/**\n * Every second, the storage will be polled to check for any change that can occur\n * to the session state in another browser tab, or another window.\n * This value has been determined from our previous cookie-only implementation.\n */\nexport const STORAGE_POLL_DELAY = ONE_SECOND\n\n/**\n * Checks if cookies are available as the preferred storage\n * Else, checks if LocalStorage is allowed and available\n */\nexport function selectSessionStoreStrategyType(initConfiguration) {\n let sessionStoreStrategyType = selectCookieStrategy(initConfiguration)\n if (\n !sessionStoreStrategyType &&\n initConfiguration.allowFallbackToLocalStorage\n ) {\n sessionStoreStrategyType = selectLocalStorageStrategy()\n }\n return sessionStoreStrategyType\n}\n\n/**\n * Different session concepts:\n * - tracked, the session has an id and is updated along the user navigation\n * - not tracked, the session does not have an id but it is updated along the user navigation\n * - inactive, no session in store or session expired, waiting for a renew session\n */\nexport function startSessionStore(\n sessionStoreStrategyType,\n productKey,\n computeSessionState\n) {\n const renewObservable = new Observable()\n const expireObservable = new Observable()\n const sessionStateUpdateObservable = new Observable()\n const sessionStoreStrategy =\n sessionStoreStrategyType.type === 'Cookie'\n ? initCookieStrategy(sessionStoreStrategyType.cookieOptions)\n : initLocalStorageStrategy()\n const { expireSession } = sessionStoreStrategy\n\n const watchSessionTimeoutId = setInterval(watchSession, STORAGE_POLL_DELAY)\n let sessionCache\n\n startSession()\n\n const {\n throttled: throttledExpandOrRenewSession,\n cancel: cancelExpandOrRenewSession\n } = throttle(function () {\n processSessionStoreOperations(\n {\n process: function (sessionState) {\n if (isSessionInNotStartedState(sessionState)) {\n return\n }\n\n const synchronizedSession = synchronizeSession(sessionState)\n expandOrRenewSessionState(synchronizedSession)\n return synchronizedSession\n },\n after: function (sessionState) {\n if (isSessionStarted(sessionState) && !hasSessionInCache()) {\n renewSessionInCache(sessionState)\n }\n sessionCache = sessionState\n }\n },\n sessionStoreStrategy\n )\n }, STORAGE_POLL_DELAY)\n\n function expandSession() {\n processSessionStoreOperations(\n {\n process: function (sessionState) {\n return hasSessionInCache()\n ? synchronizeSession(sessionState)\n : undefined\n }\n },\n sessionStoreStrategy\n )\n }\n\n /**\n * allows two behaviors:\n * - if the session is active, synchronize the session cache without updating the session store\n * - if the session is not active, clear the session store and expire the session cache\n */\n function watchSession() {\n processSessionStoreOperations(\n {\n process: function (sessionState) {\n return isSessionInExpiredState(sessionState)\n ? getExpiredSessionState()\n : undefined\n },\n after: synchronizeSession\n },\n sessionStoreStrategy\n )\n }\n\n function synchronizeSession(sessionState) {\n if (isSessionInExpiredState(sessionState)) {\n sessionState = getExpiredSessionState()\n }\n if (hasSessionInCache()) {\n if (isSessionInCacheOutdated(sessionState)) {\n expireSessionInCache()\n } else {\n sessionStateUpdateObservable.notify({\n previousState: sessionCache,\n newState: sessionState\n })\n sessionCache = sessionState\n }\n }\n return sessionState\n }\n\n function startSession() {\n processSessionStoreOperations(\n {\n process: function (sessionState) {\n if (isSessionInNotStartedState(sessionState)) {\n return getExpiredSessionState()\n }\n },\n after: function (sessionState) {\n sessionCache = sessionState\n }\n },\n sessionStoreStrategy\n )\n }\n\n function expandOrRenewSessionState(sessionState) {\n if (isSessionInNotStartedState(sessionState)) {\n return false\n }\n\n const { trackingType, isTracked } = computeSessionState(\n sessionState[productKey]\n )\n sessionState[productKey] = trackingType\n delete sessionState.isExpired\n if (isTracked && !sessionState.id) {\n sessionState.id = UUID()\n sessionState.created = String(dateNow())\n }\n }\n\n function hasSessionInCache() {\n return sessionCache[productKey] !== undefined\n }\n\n function isSessionInCacheOutdated(sessionState) {\n return (\n sessionCache.id !== sessionState.id ||\n sessionCache[productKey] !== sessionState[productKey]\n )\n }\n\n function expireSessionInCache() {\n sessionCache = getExpiredSessionState()\n expireObservable.notify()\n }\n\n function renewSessionInCache(sessionState) {\n sessionCache = sessionState\n renewObservable.notify()\n }\n\n function updateSessionState(partialSessionState) {\n processSessionStoreOperations(\n {\n process: function (sessionState) {\n return assign({}, sessionState, partialSessionState)\n },\n after: synchronizeSession\n },\n sessionStoreStrategy\n )\n }\n\n return {\n expandOrRenewSession: throttledExpandOrRenewSession,\n expandSession,\n getSession: function () {\n return sessionCache || {}\n },\n renewObservable,\n expireObservable,\n sessionStateUpdateObservable,\n restartSession: startSession,\n expire: function () {\n cancelExpandOrRenewSession()\n expireSession()\n synchronizeSession(getExpiredSessionState())\n },\n stop: function () {\n clearInterval(watchSessionTimeoutId)\n },\n updateSessionState\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"sessionStore.js","names":["clearInterval","setInterval","Observable","ONE_SECOND","dateNow","throttle","UUID","assign","selectCookieStrategy","initCookieStrategy","getExpiredSessionState","isSessionInExpiredState","isSessionInNotStartedState","isSessionStarted","initLocalStorageStrategy","selectLocalStorageStrategy","processSessionStoreOperations","STORAGE_POLL_DELAY","selectSessionStoreStrategyType","initConfiguration","sessionStoreStrategyType","allowFallbackToLocalStorage","startSessionStore","productKey","computeSessionState","renewObservable","expireObservable","sessionStateUpdateObservable","sessionStoreStrategy","type","cookieOptions","expireSession","watchSessionTimeoutId","watchSession","sessionCache","startSession","_throttle","process","sessionState","synchronizedSession","synchronizeSession","expandOrRenewSessionState","after","hasSessionInCache","renewSessionInCache","throttledExpandOrRenewSession","throttled","cancelExpandOrRenewSession","cancel","expandSession","undefined","isSessionInCacheOutdated","expireSessionInCache","notify","previousState","newState","_computeSessionState","trackingType","isTracked","isExpired","id","created","String","updateSessionState","partialSessionState","expandOrRenewSession","getSession","restartSession","expire","stop"],"sources":["../../src/session/sessionStore.js"],"sourcesContent":["import { clearInterval, setInterval } from '../helper/timer'\nimport { Observable } from '../helper/observable'\nimport { ONE_SECOND, dateNow, throttle, UUID, assign } from '../helper/tools'\nimport { selectCookieStrategy, initCookieStrategy } from './sessionInCookie'\nimport {\n getExpiredSessionState,\n isSessionInExpiredState,\n isSessionInNotStartedState,\n isSessionStarted\n} from './sessionState'\nimport {\n initLocalStorageStrategy,\n selectLocalStorageStrategy\n} from './sessionInLocalStorage'\nimport { processSessionStoreOperations } from './sessionStoreOperations'\n\n/**\n * Every second, the storage will be polled to check for any change that can occur\n * to the session state in another browser tab, or another window.\n * This value has been determined from our previous cookie-only implementation.\n */\nexport const STORAGE_POLL_DELAY = ONE_SECOND\n\n/**\n * Checks if cookies are available as the preferred storage\n * Else, checks if LocalStorage is allowed and available\n */\nexport function selectSessionStoreStrategyType(initConfiguration) {\n let sessionStoreStrategyType = selectCookieStrategy(initConfiguration)\n if (\n !sessionStoreStrategyType &&\n initConfiguration.allowFallbackToLocalStorage\n ) {\n sessionStoreStrategyType = selectLocalStorageStrategy()\n }\n return sessionStoreStrategyType\n}\n\n/**\n * Different session concepts:\n * - tracked, the session has an id and is updated along the user navigation\n * - not tracked, the session does not have an id but it is updated along the user navigation\n * - inactive, no session in store or session expired, waiting for a renew session\n */\nexport function startSessionStore(\n sessionStoreStrategyType,\n productKey,\n computeSessionState\n) {\n const renewObservable = new Observable()\n const expireObservable = new Observable()\n const sessionStateUpdateObservable = new Observable()\n const sessionStoreStrategy =\n sessionStoreStrategyType.type === 'Cookie'\n ? initCookieStrategy(sessionStoreStrategyType.cookieOptions)\n : initLocalStorageStrategy()\n const { expireSession } = sessionStoreStrategy\n\n const watchSessionTimeoutId = setInterval(watchSession, STORAGE_POLL_DELAY)\n let sessionCache\n\n startSession()\n\n const {\n throttled: throttledExpandOrRenewSession,\n cancel: cancelExpandOrRenewSession\n } = throttle(function () {\n processSessionStoreOperations(\n {\n process: function (sessionState) {\n if (isSessionInNotStartedState(sessionState)) {\n return\n }\n\n const synchronizedSession = synchronizeSession(sessionState)\n expandOrRenewSessionState(synchronizedSession)\n return synchronizedSession\n },\n after: function (sessionState) {\n if (isSessionStarted(sessionState) && !hasSessionInCache()) {\n renewSessionInCache(sessionState)\n }\n sessionCache = sessionState\n }\n },\n sessionStoreStrategy\n )\n }, STORAGE_POLL_DELAY)\n\n function expandSession() {\n processSessionStoreOperations(\n {\n process: function (sessionState) {\n return hasSessionInCache()\n ? synchronizeSession(sessionState)\n : undefined\n }\n },\n sessionStoreStrategy\n )\n }\n\n /**\n * allows two behaviors:\n * - if the session is active, synchronize the session cache without updating the session store\n * - if the session is not active, clear the session store and expire the session cache\n */\n function watchSession() {\n processSessionStoreOperations(\n {\n process: function (sessionState) {\n return isSessionInExpiredState(sessionState)\n ? getExpiredSessionState()\n : undefined\n },\n after: synchronizeSession\n },\n sessionStoreStrategy\n )\n }\n\n function synchronizeSession(sessionState) {\n if (isSessionInExpiredState(sessionState)) {\n sessionState = getExpiredSessionState()\n }\n if (hasSessionInCache()) {\n if (isSessionInCacheOutdated(sessionState)) {\n expireSessionInCache()\n } else {\n sessionStateUpdateObservable.notify({\n previousState: sessionCache,\n newState: sessionState\n })\n sessionCache = sessionState\n }\n }\n return sessionState\n }\n\n function startSession() {\n processSessionStoreOperations(\n {\n process: function (sessionState) {\n if (isSessionInNotStartedState(sessionState)) {\n return getExpiredSessionState()\n }\n },\n after: function (sessionState) {\n sessionCache = sessionState\n }\n },\n sessionStoreStrategy\n )\n }\n\n function expandOrRenewSessionState(sessionState) {\n if (isSessionInNotStartedState(sessionState)) {\n return false\n }\n\n const { trackingType, isTracked } = computeSessionState(\n sessionState[productKey]\n )\n sessionState[productKey] = trackingType\n delete sessionState.isExpired\n if (isTracked && !sessionState.id) {\n sessionState.id = UUID()\n sessionState.created = String(dateNow())\n }\n }\n\n function hasSessionInCache() {\n return sessionCache[productKey] !== undefined\n }\n\n function isSessionInCacheOutdated(sessionState) {\n return (\n sessionCache.id !== sessionState.id ||\n sessionCache[productKey] !== sessionState[productKey]\n )\n }\n\n function expireSessionInCache() {\n sessionCache = getExpiredSessionState()\n expireObservable.notify()\n }\n\n function renewSessionInCache(sessionState) {\n sessionCache = sessionState\n renewObservable.notify()\n }\n\n function updateSessionState(partialSessionState) {\n processSessionStoreOperations(\n {\n process: function (sessionState) {\n return assign({}, sessionState, partialSessionState)\n },\n after: synchronizeSession\n },\n sessionStoreStrategy\n )\n }\n\n return {\n expandOrRenewSession: throttledExpandOrRenewSession,\n expandSession,\n getSession: function () {\n return sessionCache\n },\n renewObservable,\n expireObservable,\n sessionStateUpdateObservable,\n restartSession: startSession,\n expire: function () {\n cancelExpandOrRenewSession()\n expireSession()\n synchronizeSession(getExpiredSessionState())\n },\n stop: function () {\n clearInterval(watchSessionTimeoutId)\n },\n updateSessionState\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -41,7 +41,7 @@ export function processSessionStoreOperations(operations, sessionStoreStrategy)
41
41
  var currentStore = retrieveStore();
42
42
  if (isLockEnabled) {
43
43
  // if someone has lock, retry later
44
- if (currentStore.lock && !isSessionInNotStartedState(currentStore.session)) {
44
+ if (currentStore.lock) {
45
45
  retryLater(operations, sessionStoreStrategy, numberOfRetries);
46
46
  return;
47
47
  }
@@ -50,7 +50,7 @@ export function processSessionStoreOperations(operations, sessionStoreStrategy)
50
50
  persistWithLock(currentStore.session);
51
51
  // if lock is not acquired, retry later
52
52
  currentStore = retrieveStore();
53
- if (currentStore.lock !== currentLock && !isSessionInNotStartedState(currentStore.session)) {
53
+ if (currentStore.lock !== currentLock) {
54
54
  retryLater(operations, sessionStoreStrategy, numberOfRetries);
55
55
  return;
56
56
  }
@@ -59,7 +59,7 @@ export function processSessionStoreOperations(operations, sessionStoreStrategy)
59
59
  if (isLockEnabled) {
60
60
  // if lock corrupted after process, retry later
61
61
  currentStore = retrieveStore();
62
- if (currentStore.lock !== currentLock && !isSessionInNotStartedState(currentStore.session)) {
62
+ if (currentStore.lock !== currentLock) {
63
63
  retryLater(operations, sessionStoreStrategy, numberOfRetries);
64
64
  return;
65
65
  }
@@ -78,7 +78,7 @@ export function processSessionStoreOperations(operations, sessionStoreStrategy)
78
78
  if (!(processedSession && isSessionInExpiredState(processedSession))) {
79
79
  // if lock corrupted after persist, retry later
80
80
  currentStore = retrieveStore();
81
- if (currentStore.lock !== currentLock && !isSessionInNotStartedState(currentStore.session)) {
81
+ if (currentStore.lock !== currentLock) {
82
82
  retryLater(operations, sessionStoreStrategy, numberOfRetries);
83
83
  return;
84
84
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sessionStoreOperations.js","names":["setTimeout","UUID","assign","expandSessionState","isSessionInExpiredState","isSessionInNotStartedState","LOCK_RETRY_DELAY","LOCK_MAX_TRIES","bufferedOperations","ongoingOperations","processSessionStoreOperations","operations","sessionStoreStrategy","numberOfRetries","arguments","length","undefined","isLockEnabled","persistSession","expireSession","persistWithLock","session","lock","currentLock","retrieveStore","retrieveSession","push","next","currentStore","retryLater","processedSession","process","after","sessionStore","currentNumberOfRetries","nextOperations","shift"],"sources":["../../src/session/sessionStoreOperations.js"],"sourcesContent":["import { setTimeout } from '../helper/timer'\nimport { UUID, assign } from '../helper/tools'\nimport {\n expandSessionState,\n isSessionInExpiredState,\n isSessionInNotStartedState\n} from './sessionState'\n\nexport const LOCK_RETRY_DELAY = 10\nexport const LOCK_MAX_TRIES = 100\nconst bufferedOperations = []\nlet ongoingOperations\n\nexport function processSessionStoreOperations(\n operations,\n sessionStoreStrategy,\n numberOfRetries = 0\n) {\n const { isLockEnabled, persistSession, expireSession } = sessionStoreStrategy\n const persistWithLock = function (session) {\n return persistSession(assign({}, session, { lock: currentLock }))\n }\n const retrieveStore = function () {\n const session = sessionStoreStrategy.retrieveSession()\n const lock = session.lock\n if (session.lock) {\n delete session.lock\n }\n\n return {\n session,\n lock\n }\n }\n\n if (!ongoingOperations) {\n ongoingOperations = operations\n }\n if (operations !== ongoingOperations) {\n bufferedOperations.push(operations)\n return\n }\n if (isLockEnabled && numberOfRetries >= LOCK_MAX_TRIES) {\n next(sessionStoreStrategy)\n return\n }\n let currentLock\n let currentStore = retrieveStore()\n if (isLockEnabled) {\n // if someone has lock, retry later\n if (\n currentStore.lock &&\n !isSessionInNotStartedState(currentStore.session)\n ) {\n retryLater(operations, sessionStoreStrategy, numberOfRetries)\n return\n }\n // acquire lock\n currentLock = UUID()\n persistWithLock(currentStore.session)\n // if lock is not acquired, retry later\n currentStore = retrieveStore()\n if (\n currentStore.lock !== currentLock &&\n !isSessionInNotStartedState(currentStore.session)\n ) {\n retryLater(operations, sessionStoreStrategy, numberOfRetries)\n return\n }\n }\n let processedSession = operations.process(currentStore.session)\n if (isLockEnabled) {\n // if lock corrupted after process, retry later\n currentStore = retrieveStore()\n if (\n currentStore.lock !== currentLock &&\n !isSessionInNotStartedState(currentStore.session)\n ) {\n retryLater(operations, sessionStoreStrategy, numberOfRetries)\n return\n }\n }\n if (processedSession) {\n if (isSessionInExpiredState(processedSession)) {\n expireSession()\n } else {\n expandSessionState(processedSession)\n isLockEnabled\n ? persistWithLock(processedSession)\n : persistSession(processedSession)\n }\n }\n if (isLockEnabled) {\n // correctly handle lock around expiration would require to handle this case properly at several levels\n // since we don't have evidence of lock issues around expiration, let's just not do the corruption check for it\n if (!(processedSession && isSessionInExpiredState(processedSession))) {\n // if lock corrupted after persist, retry later\n currentStore = retrieveStore()\n if (\n currentStore.lock !== currentLock &&\n !isSessionInNotStartedState(currentStore.session)\n ) {\n retryLater(operations, sessionStoreStrategy, numberOfRetries)\n return\n }\n persistSession(currentStore.session)\n processedSession = currentStore.session\n }\n }\n // call after even if session is not persisted in order to perform operations on\n // up-to-date session state value => the value could have been modified by another tab\n if (operations.after) {\n operations.after(processedSession || currentStore.session)\n }\n next(sessionStoreStrategy)\n}\n\nfunction retryLater(operations, sessionStore, currentNumberOfRetries) {\n setTimeout(function () {\n processSessionStoreOperations(\n operations,\n sessionStore,\n currentNumberOfRetries + 1\n )\n }, LOCK_RETRY_DELAY)\n}\n\nfunction next(sessionStore) {\n ongoingOperations = undefined\n const nextOperations = bufferedOperations.shift()\n if (nextOperations) {\n processSessionStoreOperations(nextOperations, sessionStore)\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"sessionStoreOperations.js","names":["setTimeout","UUID","assign","expandSessionState","isSessionInExpiredState","isSessionInNotStartedState","LOCK_RETRY_DELAY","LOCK_MAX_TRIES","bufferedOperations","ongoingOperations","processSessionStoreOperations","operations","sessionStoreStrategy","numberOfRetries","arguments","length","undefined","isLockEnabled","persistSession","expireSession","persistWithLock","session","lock","currentLock","retrieveStore","retrieveSession","push","next","currentStore","retryLater","processedSession","process","after","sessionStore","currentNumberOfRetries","nextOperations","shift"],"sources":["../../src/session/sessionStoreOperations.js"],"sourcesContent":["import { setTimeout } from '../helper/timer'\nimport { UUID, assign } from '../helper/tools'\nimport {\n expandSessionState,\n isSessionInExpiredState,\n isSessionInNotStartedState\n} from './sessionState'\n\nexport const LOCK_RETRY_DELAY = 10\nexport const LOCK_MAX_TRIES = 100\nconst bufferedOperations = []\nlet ongoingOperations\n\nexport function processSessionStoreOperations(\n operations,\n sessionStoreStrategy,\n numberOfRetries = 0\n) {\n const { isLockEnabled, persistSession, expireSession } = sessionStoreStrategy\n const persistWithLock = function (session) {\n return persistSession(assign({}, session, { lock: currentLock }))\n }\n const retrieveStore = function () {\n const session = sessionStoreStrategy.retrieveSession()\n const lock = session.lock\n if (session.lock) {\n delete session.lock\n }\n\n return {\n session,\n lock\n }\n }\n\n if (!ongoingOperations) {\n ongoingOperations = operations\n }\n if (operations !== ongoingOperations) {\n bufferedOperations.push(operations)\n return\n }\n if (isLockEnabled && numberOfRetries >= LOCK_MAX_TRIES) {\n next(sessionStoreStrategy)\n return\n }\n let currentLock\n let currentStore = retrieveStore()\n if (isLockEnabled) {\n // if someone has lock, retry later\n if (currentStore.lock) {\n retryLater(operations, sessionStoreStrategy, numberOfRetries)\n return\n }\n // acquire lock\n currentLock = UUID()\n persistWithLock(currentStore.session)\n // if lock is not acquired, retry later\n currentStore = retrieveStore()\n if (currentStore.lock !== currentLock) {\n retryLater(operations, sessionStoreStrategy, numberOfRetries)\n return\n }\n }\n let processedSession = operations.process(currentStore.session)\n if (isLockEnabled) {\n // if lock corrupted after process, retry later\n currentStore = retrieveStore()\n if (currentStore.lock !== currentLock) {\n retryLater(operations, sessionStoreStrategy, numberOfRetries)\n return\n }\n }\n if (processedSession) {\n if (isSessionInExpiredState(processedSession)) {\n expireSession()\n } else {\n expandSessionState(processedSession)\n isLockEnabled\n ? persistWithLock(processedSession)\n : persistSession(processedSession)\n }\n }\n if (isLockEnabled) {\n // correctly handle lock around expiration would require to handle this case properly at several levels\n // since we don't have evidence of lock issues around expiration, let's just not do the corruption check for it\n if (!(processedSession && isSessionInExpiredState(processedSession))) {\n // if lock corrupted after persist, retry later\n currentStore = retrieveStore()\n if (currentStore.lock !== currentLock) {\n retryLater(operations, sessionStoreStrategy, numberOfRetries)\n return\n }\n persistSession(currentStore.session)\n processedSession = currentStore.session\n }\n }\n // call after even if session is not persisted in order to perform operations on\n // up-to-date session state value => the value could have been modified by another tab\n if (operations.after) {\n operations.after(processedSession || currentStore.session)\n }\n next(sessionStoreStrategy)\n}\n\nfunction retryLater(operations, sessionStore, currentNumberOfRetries) {\n setTimeout(function () {\n processSessionStoreOperations(\n operations,\n sessionStore,\n currentNumberOfRetries + 1\n )\n }, LOCK_RETRY_DELAY)\n}\n\nfunction next(sessionStore) {\n ongoingOperations = undefined\n const nextOperations = bufferedOperations.shift()\n if (nextOperations) {\n processSessionStoreOperations(nextOperations, sessionStore)\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"telemetry.js","names":["ConsoleApiName","toStackTraceString","NO_ERROR_STACK_PRESENT_MESSAGE","createBoundedBuffer","computeStackTrace","Observable","getConnectivity","displayIfDebugEnabled","startMonitorErrorCollection","startsWith","assign","performDraw","timeStampNow","extend2Lev","jsonStringify","NonErrorPrefix","TelemetryStatusType","TelemetryType","ALLOWED_FRAME_URLS","TelemetryService","LOGS","RUM","preStartTelemetryBuffer","onRawTelemetryEventCollected","event","add","startTelemetry","telemetryService","configuration","contextProvider","observable","alreadySentEvents","Set","telemetryEnabled","telemetrySampleRate","runtimeEnvInfo","getRuntimeEnvInfo","_onRawTelemetryEventCollected","rawEvent","stringifiedEvent","size","maxTelemetryEventsPerPage","has","toTelemetryEvent","notify","addTelemetryError","type","date","service","version","__BUILD_ENV__SDK_VERSION__","source","telemetry","runtime_env","connectivity","undefined","setContextProvider","provider","enabled","is_local_file","window","location","protocol","is_worker","self","startFakeTelemetry","events","push","drainPreStartTelemetry","drain","resetTelemetry","addTelemetryDebug","message","context","log","status","debug","e","error","formatError","addTelemetryConfiguration","addTelemetryUsage","usage","Error","stackTrace","kind","name","stack","scrubCustomerFrames","UNCAUGHT","filter","frame","url","some","allowedFrameUrl"],"sources":["../../src/telemetry/telemetry.js"],"sourcesContent":["import { ConsoleApiName } from '../helper/display'\nimport {\n toStackTraceString,\n NO_ERROR_STACK_PRESENT_MESSAGE\n} from '../helper/errorTools'\nimport { createBoundedBuffer } from '../helper/boundedBuffer'\nimport { computeStackTrace } from '../tracekit'\nimport { Observable } from '../helper/observable'\nimport { getConnectivity } from '../helper/connectivity'\nimport {\n displayIfDebugEnabled,\n startMonitorErrorCollection\n} from '..//helper/monitor'\nimport {\n startsWith,\n assign,\n performDraw,\n timeStampNow,\n extend2Lev\n} from '../helper/tools'\nimport { jsonStringify } from '../helper/serialisation/jsonStringify'\nimport { NonErrorPrefix } from '../helper/enums'\nimport { TelemetryStatusType, TelemetryType } from './types'\n\nconst ALLOWED_FRAME_URLS = [\n 'https://static.guance.com',\n 'http://localhost',\n '<anonymous>'\n]\n\nexport var TelemetryService = {\n LOGS: 'browser-logs-sdk',\n RUM: 'browser-rum-sdk'\n}\n\n// eslint-disable-next-line local-rules/disallow-side-effects\nvar preStartTelemetryBuffer = createBoundedBuffer()\nvar onRawTelemetryEventCollected = function (event) {\n preStartTelemetryBuffer.add(function () {\n onRawTelemetryEventCollected(event)\n })\n}\n\nexport function startTelemetry(telemetryService, configuration) {\n let contextProvider\n var observable = new Observable()\n const alreadySentEvents = new Set()\n const telemetryEnabled =\n configuration.telemetryEnabled &&\n performDraw(configuration.telemetrySampleRate)\n const runtimeEnvInfo = getRuntimeEnvInfo()\n onRawTelemetryEventCollected = function (rawEvent) {\n const stringifiedEvent = jsonStringify(rawEvent)\n if (\n telemetryEnabled &&\n alreadySentEvents.size < configuration.maxTelemetryEventsPerPage &&\n !alreadySentEvents.has(stringifiedEvent)\n ) {\n var event = toTelemetryEvent(telemetryService, rawEvent, runtimeEnvInfo)\n observable.notify(event)\n alreadySentEvents.add(stringifiedEvent)\n }\n }\n startMonitorErrorCollection(addTelemetryError)\n\n function toTelemetryEvent(telemetryService, event, runtimeEnvInfo) {\n return extend2Lev(\n {\n type: 'telemetry',\n date: timeStampNow(),\n service: telemetryService,\n version: __BUILD_ENV__SDK_VERSION__,\n source: 'browser',\n telemetry: extend2Lev(event, {\n runtime_env: runtimeEnvInfo,\n connectivity: getConnectivity()\n })\n },\n contextProvider !== undefined ? contextProvider() : {}\n )\n }\n\n return {\n setContextProvider: function (provider) {\n contextProvider = provider\n },\n observable: observable,\n enabled: telemetryEnabled\n }\n}\nfunction getRuntimeEnvInfo() {\n return {\n is_local_file: window.location.protocol === 'file:',\n is_worker: 'WorkerGlobalScope' in self\n }\n}\nexport function startFakeTelemetry() {\n const events = []\n\n onRawTelemetryEventCollected = function (event) {\n events.push(event)\n }\n\n return events\n}\nexport function drainPreStartTelemetry() {\n preStartTelemetryBuffer.drain()\n}\nexport function resetTelemetry() {\n preStartTelemetryBuffer = createBoundedBuffer()\n onRawTelemetryEventCollected = function (event) {\n preStartTelemetryBuffer.add(function () {\n onRawTelemetryEventCollected(event)\n })\n }\n}\n\nexport function addTelemetryDebug(message, context) {\n displayIfDebugEnabled(message, context)\n onRawTelemetryEventCollected(\n assign(\n {\n type: TelemetryType.log,\n message: message,\n status: TelemetryStatusType.debug\n },\n context\n )\n )\n}\n\nexport function addTelemetryError(e, context) {\n onRawTelemetryEventCollected(\n assign(\n {\n type: TelemetryType.log,\n status: TelemetryStatusType.error\n },\n formatError(e),\n context\n )\n )\n}\n\nexport function addTelemetryConfiguration(configuration) {\n onRawTelemetryEventCollected({\n type: TelemetryType.configuration,\n configuration: configuration\n })\n}\n\nexport function addTelemetryUsage(usage) {\n onRawTelemetryEventCollected({\n type: TelemetryType.usage,\n usage: usage\n })\n}\n\nexport function formatError(e) {\n if (e instanceof Error) {\n var stackTrace = computeStackTrace(e)\n return {\n error: {\n kind: stackTrace.name,\n stack: toStackTraceString(scrubCustomerFrames(stackTrace))\n },\n message: stackTrace.message\n }\n }\n return {\n error: {\n stack: NO_ERROR_STACK_PRESENT_MESSAGE\n },\n message: NonErrorPrefix.UNCAUGHT + ' ' + jsonStringify(e)\n }\n}\n\nexport function scrubCustomerFrames(stackTrace) {\n stackTrace.stack = stackTrace.stack.filter(function (frame) {\n return (\n !frame.url ||\n ALLOWED_FRAME_URLS.some(function (allowedFrameUrl) {\n return startsWith(frame.url, allowedFrameUrl)\n })\n )\n })\n return stackTrace\n}\n"],"mappings":"AAAA,SAASA,cAAc,QAAQ,mBAAmB;AAClD,SACEC,kBAAkB,EAClBC,8BAA8B,QACzB,sBAAsB;AAC7B,SAASC,mBAAmB,QAAQ,yBAAyB;AAC7D,SAASC,iBAAiB,QAAQ,aAAa;AAC/C,SAASC,UAAU,QAAQ,sBAAsB;AACjD,SAASC,eAAe,QAAQ,wBAAwB;AACxD,SACEC,qBAAqB,EACrBC,2BAA2B,QACtB,oBAAoB;AAC3B,SACEC,UAAU,EACVC,MAAM,EACNC,WAAW,EACXC,YAAY,EACZC,UAAU,QACL,iBAAiB;AACxB,SAASC,aAAa,QAAQ,uCAAuC;AACrE,SAASC,cAAc,QAAQ,iBAAiB;AAChD,SAASC,mBAAmB,EAAEC,aAAa,QAAQ,SAAS;AAE5D,IAAMC,kBAAkB,GAAG,CACzB,2BAA2B,EAC3B,kBAAkB,EAClB,aAAa,CACd;AAED,OAAO,IAAIC,gBAAgB,GAAG;EAC5BC,IAAI,EAAE,kBAAkB;EACxBC,GAAG,EAAE;AACP,CAAC;;AAED;AACA,IAAIC,uBAAuB,GAAGnB,mBAAmB,CAAC,CAAC;AACnD,IAAIoB,8BAA4B,GAAG,SAAAA,6BAAUC,KAAK,EAAE;EAClDF,uBAAuB,CAACG,GAAG,CAAC,YAAY;IACtCF,8BAA4B,CAACC,KAAK,CAAC;EACrC,CAAC,CAAC;AACJ,CAAC;AAED,OAAO,SAASE,cAAcA,CAACC,gBAAgB,EAAEC,aAAa,EAAE;EAC9D,IAAIC,eAAe;EACnB,IAAIC,UAAU,GAAG,IAAIzB,UAAU,CAAC,CAAC;EACjC,IAAM0B,iBAAiB,GAAG,IAAIC,GAAG,CAAC,CAAC;EACnC,IAAMC,gBAAgB,GACpBL,aAAa,CAACK,gBAAgB,IAC9BtB,WAAW,CAACiB,aAAa,CAACM,mBAAmB,CAAC;EAChD,IAAMC,cAAc,GAAGC,iBAAiB,CAAC,CAAC;EAC1Cb,8BAA4B,GAAG,SAAAc,8BAAUC,QAAQ,EAAE;IACjD,IAAMC,gBAAgB,GAAGzB,aAAa,CAACwB,QAAQ,CAAC;IAChD,IACEL,gBAAgB,IAChBF,iBAAiB,CAACS,IAAI,GAAGZ,aAAa,CAACa,yBAAyB,IAChE,CAACV,iBAAiB,CAACW,GAAG,CAACH,gBAAgB,CAAC,EACxC;MACA,IAAIf,KAAK,GAAGmB,gBAAgB,CAAChB,gBAAgB,EAAEW,QAAQ,EAAEH,cAAc,CAAC;MACxEL,UAAU,CAACc,MAAM,CAACpB,KAAK,CAAC;MACxBO,iBAAiB,CAACN,GAAG,CAACc,gBAAgB,CAAC;IACzC;EACF,CAAC;EACD/B,2BAA2B,CAACqC,iBAAiB,CAAC;EAE9C,SAASF,gBAAgBA,CAAChB,gBAAgB,EAAEH,KAAK,EAAEW,cAAc,EAAE;IACjE,OAAOtB,UAAU,CACf;MACEiC,IAAI,EAAE,WAAW;MACjBC,IAAI,EAAEnC,YAAY,CAAC,CAAC;MACpBoC,OAAO,EAAErB,gBAAgB;MACzBsB,OAAO,EAAEC,0BAA0B;MACnCC,MAAM,EAAE,SAAS;MACjBC,SAAS,EAAEvC,UAAU,CAACW,KAAK,EAAE;QAC3B6B,WAAW,EAAElB,cAAc;QAC3BmB,YAAY,EAAEhD,eAAe,CAAC;MAChC,CAAC;IACH,CAAC,EACDuB,eAAe,KAAK0B,SAAS,GAAG1B,eAAe,CAAC,CAAC,GAAG,CAAC,CACvD,CAAC;EACH;EAEA,OAAO;IACL2B,kBAAkB,EAAE,SAAAA,mBAAUC,QAAQ,EAAE;MACtC5B,eAAe,GAAG4B,QAAQ;IAC5B,CAAC;IACD3B,UAAU,EAAEA,UAAU;IACtB4B,OAAO,EAAEzB;EACX,CAAC;AACH;AACA,SAASG,iBAAiBA,CAAA,EAAG;EAC3B,OAAO;IACLuB,aAAa,EAAEC,MAAM,CAACC,QAAQ,CAACC,QAAQ,KAAK,OAAO;IACnDC,SAAS,EAAE,mBAAmB,IAAIC;EACpC,CAAC;AACH;AACA,OAAO,SAASC,kBAAkBA,CAAA,EAAG;EACnC,IAAMC,MAAM,GAAG,EAAE;EAEjB3C,8BAA4B,GAAG,SAAAc,8BAAUb,KAAK,EAAE;IAC9C0C,MAAM,CAACC,IAAI,CAAC3C,KAAK,CAAC;EACpB,CAAC;EAED,OAAO0C,MAAM;AACf;AACA,OAAO,SAASE,sBAAsBA,CAAA,EAAG;EACvC9C,uBAAuB,CAAC+C,KAAK,CAAC,CAAC;AACjC;AACA,OAAO,SAASC,cAAcA,CAAA,EAAG;EAC/BhD,uBAAuB,GAAGnB,mBAAmB,CAAC,CAAC;EAC/CoB,8BAA4B,GAAG,SAAAc,8BAAUb,KAAK,EAAE;IAC9CF,uBAAuB,CAACG,GAAG,CAAC,YAAY;MACtCF,8BAA4B,CAACC,KAAK,CAAC;IACrC,CAAC,CAAC;EACJ,CAAC;AACH;AAEA,OAAO,SAAS+C,iBAAiBA,CAACC,OAAO,EAAEC,OAAO,EAAE;EAClDlE,qBAAqB,CAACiE,OAAO,EAAEC,OAAO,CAAC;EACvClD,8BAA4B,CAC1Bb,MAAM,CACJ;IACEoC,IAAI,EAAE7B,aAAa,CAACyD,GAAG;IACvBF,OAAO,EAAEA,OAAO;IAChBG,MAAM,EAAE3D,mBAAmB,CAAC4D;EAC9B,CAAC,EACDH,OACF,CACF,CAAC;AACH;AAEA,OAAO,SAAS5B,iBAAiBA,CAACgC,CAAC,EAAEJ,OAAO,EAAE;EAC5ClD,8BAA4B,CAC1Bb,MAAM,CACJ;IACEoC,IAAI,EAAE7B,aAAa,CAACyD,GAAG;IACvBC,MAAM,EAAE3D,mBAAmB,CAAC8D;EAC9B,CAAC,EACDC,WAAW,CAACF,CAAC,CAAC,EACdJ,OACF,CACF,CAAC;AACH;AAEA,OAAO,SAASO,yBAAyBA,CAACpD,aAAa,EAAE;EACvDL,8BAA4B,CAAC;IAC3BuB,IAAI,EAAE7B,aAAa,CAACW,aAAa;IACjCA,aAAa,EAAEA;EACjB,CAAC,CAAC;AACJ;AAEA,OAAO,SAASqD,iBAAiBA,CAACC,KAAK,EAAE;EACvC3D,8BAA4B,CAAC;IAC3BuB,IAAI,EAAE7B,aAAa,CAACiE,KAAK;IACzBA,KAAK,EAAEA;EACT,CAAC,CAAC;AACJ;AAEA,OAAO,SAASH,WAAWA,CAACF,CAAC,EAAE;EAC7B,IAAIA,CAAC,YAAYM,KAAK,EAAE;IACtB,IAAIC,UAAU,GAAGhF,iBAAiB,CAACyE,CAAC,CAAC;IACrC,OAAO;MACLC,KAAK,EAAE;QACLO,IAAI,EAAED,UAAU,CAACE,IAAI;QACrBC,KAAK,EAAEtF,kBAAkB,CAACuF,mBAAmB,CAACJ,UAAU,CAAC;MAC3D,CAAC;MACDZ,OAAO,EAAEY,UAAU,CAACZ;IACtB,CAAC;EACH;EACA,OAAO;IACLM,KAAK,EAAE;MACLS,KAAK,EAAErF;IACT,CAAC;IACDsE,OAAO,EAAEzD,cAAc,CAAC0E,QAAQ,GAAG,GAAG,GAAG3E,aAAa,CAAC+D,CAAC;EAC1D,CAAC;AACH;AAEA,OAAO,SAASW,mBAAmBA,CAACJ,UAAU,EAAE;EAC9CA,UAAU,CAACG,KAAK,GAAGH,UAAU,CAACG,KAAK,CAACG,MAAM,CAAC,UAAUC,KAAK,EAAE;IAC1D,OACE,CAACA,KAAK,CAACC,GAAG,IACV1E,kBAAkB,CAAC2E,IAAI,CAAC,UAAUC,eAAe,EAAE;MACjD,OAAOrF,UAAU,CAACkF,KAAK,CAACC,GAAG,EAAEE,eAAe,CAAC;IAC/C,CAAC,CAAC;EAEN,CAAC,CAAC;EACF,OAAOV,UAAU;AACnB","ignoreList":[]}
1
+ {"version":3,"file":"telemetry.js","names":["ConsoleApiName","toStackTraceString","NO_ERROR_STACK_PRESENT_MESSAGE","createBoundedBuffer","computeStackTrace","Observable","getConnectivity","displayIfDebugEnabled","startMonitorErrorCollection","startsWith","assign","performDraw","timeStampNow","extend2Lev","jsonStringify","NonErrorPrefix","TelemetryStatusType","TelemetryType","ALLOWED_FRAME_URLS","TelemetryService","LOGS","RUM","preStartTelemetryBuffer","onRawTelemetryEventCollected","event","add","startTelemetry","telemetryService","configuration","contextProvider","observable","alreadySentEvents","Set","telemetryEnabled","telemetrySampleRate","runtimeEnvInfo","getRuntimeEnvInfo","rawEvent","stringifiedEvent","size","maxTelemetryEventsPerPage","has","toTelemetryEvent","notify","addTelemetryError","type","date","service","version","__BUILD_ENV__SDK_VERSION__","source","telemetry","runtime_env","connectivity","undefined","setContextProvider","provider","enabled","is_local_file","window","location","protocol","is_worker","self","startFakeTelemetry","events","push","drainPreStartTelemetry","drain","resetTelemetry","addTelemetryDebug","message","context","log","status","debug","e","error","formatError","addTelemetryConfiguration","addTelemetryUsage","usage","Error","stackTrace","kind","name","stack","scrubCustomerFrames","UNCAUGHT","filter","frame","url","some","allowedFrameUrl"],"sources":["../../src/telemetry/telemetry.js"],"sourcesContent":["import { ConsoleApiName } from '../helper/display'\nimport {\n toStackTraceString,\n NO_ERROR_STACK_PRESENT_MESSAGE\n} from '../helper/errorTools'\nimport { createBoundedBuffer } from '../helper/boundedBuffer'\nimport { computeStackTrace } from '../tracekit'\nimport { Observable } from '../helper/observable'\nimport { getConnectivity } from '../helper/connectivity'\nimport {\n displayIfDebugEnabled,\n startMonitorErrorCollection\n} from '..//helper/monitor'\nimport {\n startsWith,\n assign,\n performDraw,\n timeStampNow,\n extend2Lev\n} from '../helper/tools'\nimport { jsonStringify } from '../helper/serialisation/jsonStringify'\nimport { NonErrorPrefix } from '../helper/enums'\nimport { TelemetryStatusType, TelemetryType } from './types'\n\nconst ALLOWED_FRAME_URLS = [\n 'https://static.guance.com',\n 'http://localhost',\n '<anonymous>'\n]\n\nexport var TelemetryService = {\n LOGS: 'browser-logs-sdk',\n RUM: 'browser-rum-sdk'\n}\n\n// eslint-disable-next-line local-rules/disallow-side-effects\nvar preStartTelemetryBuffer = createBoundedBuffer()\nvar onRawTelemetryEventCollected = function (event) {\n preStartTelemetryBuffer.add(function () {\n onRawTelemetryEventCollected(event)\n })\n}\n\nexport function startTelemetry(telemetryService, configuration) {\n let contextProvider\n var observable = new Observable()\n const alreadySentEvents = new Set()\n const telemetryEnabled =\n configuration.telemetryEnabled &&\n performDraw(configuration.telemetrySampleRate)\n const runtimeEnvInfo = getRuntimeEnvInfo()\n onRawTelemetryEventCollected = function (rawEvent) {\n const stringifiedEvent = jsonStringify(rawEvent)\n if (\n telemetryEnabled &&\n alreadySentEvents.size < configuration.maxTelemetryEventsPerPage &&\n !alreadySentEvents.has(stringifiedEvent)\n ) {\n var event = toTelemetryEvent(telemetryService, rawEvent, runtimeEnvInfo)\n observable.notify(event)\n alreadySentEvents.add(stringifiedEvent)\n }\n }\n startMonitorErrorCollection(addTelemetryError)\n\n function toTelemetryEvent(telemetryService, event, runtimeEnvInfo) {\n return extend2Lev(\n {\n type: 'telemetry',\n date: timeStampNow(),\n service: telemetryService,\n version: __BUILD_ENV__SDK_VERSION__,\n source: 'browser',\n telemetry: extend2Lev(event, {\n runtime_env: runtimeEnvInfo,\n connectivity: getConnectivity()\n })\n },\n contextProvider !== undefined ? contextProvider() : {}\n )\n }\n\n return {\n setContextProvider: function (provider) {\n contextProvider = provider\n },\n observable: observable,\n enabled: telemetryEnabled\n }\n}\nfunction getRuntimeEnvInfo() {\n return {\n is_local_file: window.location.protocol === 'file:',\n is_worker: 'WorkerGlobalScope' in self\n }\n}\nexport function startFakeTelemetry() {\n const events = []\n\n onRawTelemetryEventCollected = function (event) {\n events.push(event)\n }\n\n return events\n}\nexport function drainPreStartTelemetry() {\n preStartTelemetryBuffer.drain()\n}\nexport function resetTelemetry() {\n preStartTelemetryBuffer = createBoundedBuffer()\n onRawTelemetryEventCollected = function (event) {\n preStartTelemetryBuffer.add(function () {\n onRawTelemetryEventCollected(event)\n })\n }\n}\n\nexport function addTelemetryDebug(message, context) {\n displayIfDebugEnabled(message, context)\n onRawTelemetryEventCollected(\n assign(\n {\n type: TelemetryType.log,\n message: message,\n status: TelemetryStatusType.debug\n },\n context\n )\n )\n}\n\nexport function addTelemetryError(e, context) {\n onRawTelemetryEventCollected(\n assign(\n {\n type: TelemetryType.log,\n status: TelemetryStatusType.error\n },\n formatError(e),\n context\n )\n )\n}\n\nexport function addTelemetryConfiguration(configuration) {\n onRawTelemetryEventCollected({\n type: TelemetryType.configuration,\n configuration: configuration\n })\n}\n\nexport function addTelemetryUsage(usage) {\n onRawTelemetryEventCollected({\n type: TelemetryType.usage,\n usage: usage\n })\n}\n\nexport function formatError(e) {\n if (e instanceof Error) {\n var stackTrace = computeStackTrace(e)\n return {\n error: {\n kind: stackTrace.name,\n stack: toStackTraceString(scrubCustomerFrames(stackTrace))\n },\n message: stackTrace.message\n }\n }\n return {\n error: {\n stack: NO_ERROR_STACK_PRESENT_MESSAGE\n },\n message: NonErrorPrefix.UNCAUGHT + ' ' + jsonStringify(e)\n }\n}\n\nexport function scrubCustomerFrames(stackTrace) {\n stackTrace.stack = stackTrace.stack.filter(function (frame) {\n return (\n !frame.url ||\n ALLOWED_FRAME_URLS.some(function (allowedFrameUrl) {\n return startsWith(frame.url, allowedFrameUrl)\n })\n )\n })\n return stackTrace\n}\n"],"mappings":"AAAA,SAASA,cAAc,QAAQ,mBAAmB;AAClD,SACEC,kBAAkB,EAClBC,8BAA8B,QACzB,sBAAsB;AAC7B,SAASC,mBAAmB,QAAQ,yBAAyB;AAC7D,SAASC,iBAAiB,QAAQ,aAAa;AAC/C,SAASC,UAAU,QAAQ,sBAAsB;AACjD,SAASC,eAAe,QAAQ,wBAAwB;AACxD,SACEC,qBAAqB,EACrBC,2BAA2B,QACtB,oBAAoB;AAC3B,SACEC,UAAU,EACVC,MAAM,EACNC,WAAW,EACXC,YAAY,EACZC,UAAU,QACL,iBAAiB;AACxB,SAASC,aAAa,QAAQ,uCAAuC;AACrE,SAASC,cAAc,QAAQ,iBAAiB;AAChD,SAASC,mBAAmB,EAAEC,aAAa,QAAQ,SAAS;AAE5D,IAAMC,kBAAkB,GAAG,CACzB,2BAA2B,EAC3B,kBAAkB,EAClB,aAAa,CACd;AAED,OAAO,IAAIC,gBAAgB,GAAG;EAC5BC,IAAI,EAAE,kBAAkB;EACxBC,GAAG,EAAE;AACP,CAAC;;AAED;AACA,IAAIC,uBAAuB,GAAGnB,mBAAmB,CAAC,CAAC;AACnD,IAAIoB,8BAA4B,GAAG,SAA/BA,4BAA4BA,CAAaC,KAAK,EAAE;EAClDF,uBAAuB,CAACG,GAAG,CAAC,YAAY;IACtCF,8BAA4B,CAACC,KAAK,CAAC;EACrC,CAAC,CAAC;AACJ,CAAC;AAED,OAAO,SAASE,cAAcA,CAACC,gBAAgB,EAAEC,aAAa,EAAE;EAC9D,IAAIC,eAAe;EACnB,IAAIC,UAAU,GAAG,IAAIzB,UAAU,CAAC,CAAC;EACjC,IAAM0B,iBAAiB,GAAG,IAAIC,GAAG,CAAC,CAAC;EACnC,IAAMC,gBAAgB,GACpBL,aAAa,CAACK,gBAAgB,IAC9BtB,WAAW,CAACiB,aAAa,CAACM,mBAAmB,CAAC;EAChD,IAAMC,cAAc,GAAGC,iBAAiB,CAAC,CAAC;EAC1Cb,8BAA4B,GAAG,SAA/BA,6BAA4BA,CAAac,QAAQ,EAAE;IACjD,IAAMC,gBAAgB,GAAGxB,aAAa,CAACuB,QAAQ,CAAC;IAChD,IACEJ,gBAAgB,IAChBF,iBAAiB,CAACQ,IAAI,GAAGX,aAAa,CAACY,yBAAyB,IAChE,CAACT,iBAAiB,CAACU,GAAG,CAACH,gBAAgB,CAAC,EACxC;MACA,IAAId,KAAK,GAAGkB,gBAAgB,CAACf,gBAAgB,EAAEU,QAAQ,EAAEF,cAAc,CAAC;MACxEL,UAAU,CAACa,MAAM,CAACnB,KAAK,CAAC;MACxBO,iBAAiB,CAACN,GAAG,CAACa,gBAAgB,CAAC;IACzC;EACF,CAAC;EACD9B,2BAA2B,CAACoC,iBAAiB,CAAC;EAE9C,SAASF,gBAAgBA,CAACf,gBAAgB,EAAEH,KAAK,EAAEW,cAAc,EAAE;IACjE,OAAOtB,UAAU,CACf;MACEgC,IAAI,EAAE,WAAW;MACjBC,IAAI,EAAElC,YAAY,CAAC,CAAC;MACpBmC,OAAO,EAAEpB,gBAAgB;MACzBqB,OAAO,EAAEC,0BAA0B;MACnCC,MAAM,EAAE,SAAS;MACjBC,SAAS,EAAEtC,UAAU,CAACW,KAAK,EAAE;QAC3B4B,WAAW,EAAEjB,cAAc;QAC3BkB,YAAY,EAAE/C,eAAe,CAAC;MAChC,CAAC;IACH,CAAC,EACDuB,eAAe,KAAKyB,SAAS,GAAGzB,eAAe,CAAC,CAAC,GAAG,CAAC,CACvD,CAAC;EACH;EAEA,OAAO;IACL0B,kBAAkB,EAAE,SAApBA,kBAAkBA,CAAYC,QAAQ,EAAE;MACtC3B,eAAe,GAAG2B,QAAQ;IAC5B,CAAC;IACD1B,UAAU,EAAEA,UAAU;IACtB2B,OAAO,EAAExB;EACX,CAAC;AACH;AACA,SAASG,iBAAiBA,CAAA,EAAG;EAC3B,OAAO;IACLsB,aAAa,EAAEC,MAAM,CAACC,QAAQ,CAACC,QAAQ,KAAK,OAAO;IACnDC,SAAS,EAAE,mBAAmB,IAAIC;EACpC,CAAC;AACH;AACA,OAAO,SAASC,kBAAkBA,CAAA,EAAG;EACnC,IAAMC,MAAM,GAAG,EAAE;EAEjB1C,8BAA4B,GAAG,SAA/BA,6BAA4BA,CAAaC,KAAK,EAAE;IAC9CyC,MAAM,CAACC,IAAI,CAAC1C,KAAK,CAAC;EACpB,CAAC;EAED,OAAOyC,MAAM;AACf;AACA,OAAO,SAASE,sBAAsBA,CAAA,EAAG;EACvC7C,uBAAuB,CAAC8C,KAAK,CAAC,CAAC;AACjC;AACA,OAAO,SAASC,cAAcA,CAAA,EAAG;EAC/B/C,uBAAuB,GAAGnB,mBAAmB,CAAC,CAAC;EAC/CoB,8BAA4B,GAAG,SAA/BA,6BAA4BA,CAAaC,KAAK,EAAE;IAC9CF,uBAAuB,CAACG,GAAG,CAAC,YAAY;MACtCF,8BAA4B,CAACC,KAAK,CAAC;IACrC,CAAC,CAAC;EACJ,CAAC;AACH;AAEA,OAAO,SAAS8C,iBAAiBA,CAACC,OAAO,EAAEC,OAAO,EAAE;EAClDjE,qBAAqB,CAACgE,OAAO,EAAEC,OAAO,CAAC;EACvCjD,8BAA4B,CAC1Bb,MAAM,CACJ;IACEmC,IAAI,EAAE5B,aAAa,CAACwD,GAAG;IACvBF,OAAO,EAAEA,OAAO;IAChBG,MAAM,EAAE1D,mBAAmB,CAAC2D;EAC9B,CAAC,EACDH,OACF,CACF,CAAC;AACH;AAEA,OAAO,SAAS5B,iBAAiBA,CAACgC,CAAC,EAAEJ,OAAO,EAAE;EAC5CjD,8BAA4B,CAC1Bb,MAAM,CACJ;IACEmC,IAAI,EAAE5B,aAAa,CAACwD,GAAG;IACvBC,MAAM,EAAE1D,mBAAmB,CAAC6D;EAC9B,CAAC,EACDC,WAAW,CAACF,CAAC,CAAC,EACdJ,OACF,CACF,CAAC;AACH;AAEA,OAAO,SAASO,yBAAyBA,CAACnD,aAAa,EAAE;EACvDL,8BAA4B,CAAC;IAC3BsB,IAAI,EAAE5B,aAAa,CAACW,aAAa;IACjCA,aAAa,EAAEA;EACjB,CAAC,CAAC;AACJ;AAEA,OAAO,SAASoD,iBAAiBA,CAACC,KAAK,EAAE;EACvC1D,8BAA4B,CAAC;IAC3BsB,IAAI,EAAE5B,aAAa,CAACgE,KAAK;IACzBA,KAAK,EAAEA;EACT,CAAC,CAAC;AACJ;AAEA,OAAO,SAASH,WAAWA,CAACF,CAAC,EAAE;EAC7B,IAAIA,CAAC,YAAYM,KAAK,EAAE;IACtB,IAAIC,UAAU,GAAG/E,iBAAiB,CAACwE,CAAC,CAAC;IACrC,OAAO;MACLC,KAAK,EAAE;QACLO,IAAI,EAAED,UAAU,CAACE,IAAI;QACrBC,KAAK,EAAErF,kBAAkB,CAACsF,mBAAmB,CAACJ,UAAU,CAAC;MAC3D,CAAC;MACDZ,OAAO,EAAEY,UAAU,CAACZ;IACtB,CAAC;EACH;EACA,OAAO;IACLM,KAAK,EAAE;MACLS,KAAK,EAAEpF;IACT,CAAC;IACDqE,OAAO,EAAExD,cAAc,CAACyE,QAAQ,GAAG,GAAG,GAAG1E,aAAa,CAAC8D,CAAC;EAC1D,CAAC;AACH;AAEA,OAAO,SAASW,mBAAmBA,CAACJ,UAAU,EAAE;EAC9CA,UAAU,CAACG,KAAK,GAAGH,UAAU,CAACG,KAAK,CAACG,MAAM,CAAC,UAAUC,KAAK,EAAE;IAC1D,OACE,CAACA,KAAK,CAACC,GAAG,IACVzE,kBAAkB,CAAC0E,IAAI,CAAC,UAAUC,eAAe,EAAE;MACjD,OAAOpF,UAAU,CAACiF,KAAK,CAACC,GAAG,EAAEE,eAAe,CAAC;IAC/C,CAAC,CAAC;EAEN,CAAC,CAAC;EACF,OAAOV,UAAU;AACnB","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
1
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
2
  import { each } from '../helper/tools';
3
3
  var UNKNOWN_FUNCTION = '?';
4
4
 
@@ -47,7 +47,6 @@ function parseChromeLine(line) {
47
47
  parts[3] = submatch[2]; // line
48
48
  parts[4] = submatch[3]; // column
49
49
  }
50
-
51
50
  return {
52
51
  args: isNative ? [parts[2]] : [],
53
52
  column: parts[4] ? +parts[4] : undefined,
@@ -84,7 +83,7 @@ function parseWinLine(line) {
84
83
  url: parts[2]
85
84
  };
86
85
  }
87
- var GECKO_LINE_RE = /^\s*(.*?)(?:\((.*?)\))?(?:^|@)((?:file|https?|blob|chrome|webpack|resource|capacitor|\[native).*?|[^@]*bundle)(?::(\d+))?(?::(\d+))?\s*$/i;
86
+ var GECKO_LINE_RE = /^\s*(.*?)(?:\((.*?)\))?(?:^|@)((?:file|https?|blob|chrome|webpack|resource|capacitor|\[native).*?|[^@]*bundle|\[wasm code\])(?::(\d+))?(?::(\d+))?\s*$/i;
88
87
  var GECKO_EVAL_RE = /(\S+) line (\d+)(?: > eval line \d+)* > eval/i;
89
88
  function parseGeckoLine(line) {
90
89
  var parts = GECKO_LINE_RE.exec(line);
@@ -99,7 +98,6 @@ function parseGeckoLine(line) {
99
98
  parts[4] = submatch[2];
100
99
  parts[5] = undefined; // no column when eval
101
100
  }
102
-
103
101
  return {
104
102
  args: parts[2] ? parts[2].split(',') : [],
105
103
  column: parts[5] ? +parts[5] : undefined,
@@ -1 +1 @@
1
- {"version":3,"file":"computeStackTrace.js","names":["each","UNKNOWN_FUNCTION","computeStackTrace","ex","stack","stackProperty","tryToGetString","exString","String","startsWith","slice","length","split","line","stackFrame","parseChromeLine","parseChromeAnonymousLine","parseWinLine","parseGeckoLine","func","push","message","name","fileUrl","filePosition","CHROME_LINE_RE","RegExp","CHROME_EVAL_RE","parts","exec","isNative","indexOf","isEval","submatch","args","column","undefined","url","CHROME_ANONYMOUS_FUNCTION_RE","WINJS_LINE_RE","GECKO_LINE_RE","GECKO_EVAL_RE","candidate","property","_typeof","value"],"sources":["../../src/tracekit/computeStackTrace.js"],"sourcesContent":["import { each } from '../helper/tools'\nvar UNKNOWN_FUNCTION = '?'\n\n/**\n * Computes a stack trace for an exception.\n */\nexport function computeStackTrace(ex) {\n var stack = []\n\n var stackProperty = tryToGetString(ex, 'stack')\n var exString = String(ex)\n if (stackProperty && stackProperty.startsWith(exString)) {\n stackProperty = stackProperty.slice(exString.length)\n }\n if (stackProperty) {\n each(stackProperty.split('\\n'), function (line) {\n var stackFrame =\n parseChromeLine(line) ||\n parseChromeAnonymousLine(line) ||\n parseWinLine(line) ||\n parseGeckoLine(line)\n if (stackFrame) {\n if (!stackFrame.func && stackFrame.line) {\n stackFrame.func = UNKNOWN_FUNCTION\n }\n stack.push(stackFrame)\n }\n })\n }\n\n return {\n message: tryToGetString(ex, 'message'),\n name: tryToGetString(ex, 'name'),\n stack: stack\n }\n}\nvar fileUrl =\n '((?:file|https?|blob|chrome-extension|electron|native|eval|webpack|<anonymous>|\\\\w+\\\\.|\\\\/).*?)'\nvar filePosition = '(?::(\\\\d+))'\nvar CHROME_LINE_RE = new RegExp(\n '^\\\\s*at (.*?) ?\\\\(' +\n fileUrl +\n filePosition +\n '?' +\n filePosition +\n '?\\\\)?\\\\s*$',\n 'i'\n)\nvar CHROME_EVAL_RE = new RegExp(\n '\\\\((\\\\S*)' + filePosition + filePosition + '\\\\)'\n)\n\nfunction parseChromeLine(line) {\n var parts = CHROME_LINE_RE.exec(line)\n\n if (!parts) {\n return\n }\n\n var isNative = parts[2] && parts[2].indexOf('native') === 0 // start of line\n var isEval = parts[2] && parts[2].indexOf('eval') === 0 // start of line\n var submatch = CHROME_EVAL_RE.exec(parts[2])\n\n if (isEval && submatch) {\n // throw out eval line/column and use top-most line/column number\n parts[2] = submatch[1] // url\n parts[3] = submatch[2] // line\n parts[4] = submatch[3] // column\n }\n\n return {\n args: isNative ? [parts[2]] : [],\n column: parts[4] ? +parts[4] : undefined,\n func: parts[1] || UNKNOWN_FUNCTION,\n line: parts[3] ? +parts[3] : undefined,\n url: !isNative ? parts[2] : undefined\n }\n}\n\nvar CHROME_ANONYMOUS_FUNCTION_RE = new RegExp(\n '^\\\\s*at ?' + fileUrl + filePosition + '?' + filePosition + '??\\\\s*$',\n 'i'\n)\n\nfunction parseChromeAnonymousLine(line) {\n var parts = CHROME_ANONYMOUS_FUNCTION_RE.exec(line)\n\n if (!parts) {\n return\n }\n\n return {\n args: [],\n column: parts[3] ? +parts[3] : undefined,\n func: UNKNOWN_FUNCTION,\n line: parts[2] ? +parts[2] : undefined,\n url: parts[1]\n }\n}\n\nvar WINJS_LINE_RE =\n /^\\s*at (?:((?:\\[object object\\])?.+) )?\\(?((?:file|ms-appx|https?|webpack|blob):.*?):(\\d+)(?::(\\d+))?\\)?\\s*$/i\n\nfunction parseWinLine(line) {\n var parts = WINJS_LINE_RE.exec(line)\n if (!parts) {\n return\n }\n\n return {\n args: [],\n column: parts[4] ? +parts[4] : undefined,\n func: parts[1] || UNKNOWN_FUNCTION,\n line: +parts[3],\n url: parts[2]\n }\n}\n\nvar GECKO_LINE_RE =\n /^\\s*(.*?)(?:\\((.*?)\\))?(?:^|@)((?:file|https?|blob|chrome|webpack|resource|capacitor|\\[native).*?|[^@]*bundle)(?::(\\d+))?(?::(\\d+))?\\s*$/i\nvar GECKO_EVAL_RE = /(\\S+) line (\\d+)(?: > eval line \\d+)* > eval/i\n\nfunction parseGeckoLine(line) {\n var parts = GECKO_LINE_RE.exec(line)\n if (!parts) {\n return\n }\n\n var isEval = parts[3] && parts[3].indexOf(' > eval') > -1\n var submatch = GECKO_EVAL_RE.exec(parts[3])\n\n if (isEval && submatch) {\n // throw out eval line/column and use top-most line number\n parts[3] = submatch[1]\n parts[4] = submatch[2]\n parts[5] = undefined // no column when eval\n }\n\n return {\n args: parts[2] ? parts[2].split(',') : [],\n column: parts[5] ? +parts[5] : undefined,\n func: parts[1] || UNKNOWN_FUNCTION,\n line: parts[4] ? +parts[4] : undefined,\n url: parts[3]\n }\n}\n\nfunction tryToGetString(candidate, property) {\n if (typeof candidate !== 'object' || !candidate || !(property in candidate)) {\n return undefined\n }\n var value = candidate[property]\n return typeof value === 'string' ? value : undefined\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"computeStackTrace.js","names":["each","UNKNOWN_FUNCTION","computeStackTrace","ex","stack","stackProperty","tryToGetString","exString","String","startsWith","slice","length","split","line","stackFrame","parseChromeLine","parseChromeAnonymousLine","parseWinLine","parseGeckoLine","func","push","message","name","fileUrl","filePosition","CHROME_LINE_RE","RegExp","CHROME_EVAL_RE","parts","exec","isNative","indexOf","isEval","submatch","args","column","undefined","url","CHROME_ANONYMOUS_FUNCTION_RE","WINJS_LINE_RE","GECKO_LINE_RE","GECKO_EVAL_RE","candidate","property","_typeof","value"],"sources":["../../src/tracekit/computeStackTrace.js"],"sourcesContent":["import { each } from '../helper/tools'\nvar UNKNOWN_FUNCTION = '?'\n\n/**\n * Computes a stack trace for an exception.\n */\nexport function computeStackTrace(ex) {\n var stack = []\n\n var stackProperty = tryToGetString(ex, 'stack')\n var exString = String(ex)\n if (stackProperty && stackProperty.startsWith(exString)) {\n stackProperty = stackProperty.slice(exString.length)\n }\n if (stackProperty) {\n each(stackProperty.split('\\n'), function (line) {\n var stackFrame =\n parseChromeLine(line) ||\n parseChromeAnonymousLine(line) ||\n parseWinLine(line) ||\n parseGeckoLine(line)\n if (stackFrame) {\n if (!stackFrame.func && stackFrame.line) {\n stackFrame.func = UNKNOWN_FUNCTION\n }\n stack.push(stackFrame)\n }\n })\n }\n\n return {\n message: tryToGetString(ex, 'message'),\n name: tryToGetString(ex, 'name'),\n stack: stack\n }\n}\nvar fileUrl =\n '((?:file|https?|blob|chrome-extension|electron|native|eval|webpack|<anonymous>|\\\\w+\\\\.|\\\\/).*?)'\n\nvar filePosition = '(?::(\\\\d+))'\nvar CHROME_LINE_RE = new RegExp(\n '^\\\\s*at (.*?) ?\\\\(' +\n fileUrl +\n filePosition +\n '?' +\n filePosition +\n '?\\\\)?\\\\s*$',\n 'i'\n)\nvar CHROME_EVAL_RE = new RegExp(\n '\\\\((\\\\S*)' + filePosition + filePosition + '\\\\)'\n)\n\nfunction parseChromeLine(line) {\n var parts = CHROME_LINE_RE.exec(line)\n\n if (!parts) {\n return\n }\n\n var isNative = parts[2] && parts[2].indexOf('native') === 0 // start of line\n var isEval = parts[2] && parts[2].indexOf('eval') === 0 // start of line\n var submatch = CHROME_EVAL_RE.exec(parts[2])\n\n if (isEval && submatch) {\n // throw out eval line/column and use top-most line/column number\n parts[2] = submatch[1] // url\n parts[3] = submatch[2] // line\n parts[4] = submatch[3] // column\n }\n\n return {\n args: isNative ? [parts[2]] : [],\n column: parts[4] ? +parts[4] : undefined,\n func: parts[1] || UNKNOWN_FUNCTION,\n line: parts[3] ? +parts[3] : undefined,\n url: !isNative ? parts[2] : undefined\n }\n}\n\nvar CHROME_ANONYMOUS_FUNCTION_RE = new RegExp(\n '^\\\\s*at ?' + fileUrl + filePosition + '?' + filePosition + '??\\\\s*$',\n 'i'\n)\n\nfunction parseChromeAnonymousLine(line) {\n var parts = CHROME_ANONYMOUS_FUNCTION_RE.exec(line)\n\n if (!parts) {\n return\n }\n\n return {\n args: [],\n column: parts[3] ? +parts[3] : undefined,\n func: UNKNOWN_FUNCTION,\n line: parts[2] ? +parts[2] : undefined,\n url: parts[1]\n }\n}\n\nvar WINJS_LINE_RE =\n /^\\s*at (?:((?:\\[object object\\])?.+) )?\\(?((?:file|ms-appx|https?|webpack|blob):.*?):(\\d+)(?::(\\d+))?\\)?\\s*$/i\n\nfunction parseWinLine(line) {\n var parts = WINJS_LINE_RE.exec(line)\n if (!parts) {\n return\n }\n\n return {\n args: [],\n column: parts[4] ? +parts[4] : undefined,\n func: parts[1] || UNKNOWN_FUNCTION,\n line: +parts[3],\n url: parts[2]\n }\n}\n\nvar GECKO_LINE_RE =\n /^\\s*(.*?)(?:\\((.*?)\\))?(?:^|@)((?:file|https?|blob|chrome|webpack|resource|capacitor|\\[native).*?|[^@]*bundle|\\[wasm code\\])(?::(\\d+))?(?::(\\d+))?\\s*$/i\nvar GECKO_EVAL_RE = /(\\S+) line (\\d+)(?: > eval line \\d+)* > eval/i\n\nfunction parseGeckoLine(line) {\n var parts = GECKO_LINE_RE.exec(line)\n if (!parts) {\n return\n }\n\n var isEval = parts[3] && parts[3].indexOf(' > eval') > -1\n var submatch = GECKO_EVAL_RE.exec(parts[3])\n\n if (isEval && submatch) {\n // throw out eval line/column and use top-most line number\n parts[3] = submatch[1]\n parts[4] = submatch[2]\n parts[5] = undefined // no column when eval\n }\n\n return {\n args: parts[2] ? parts[2].split(',') : [],\n column: parts[5] ? +parts[5] : undefined,\n func: parts[1] || UNKNOWN_FUNCTION,\n line: parts[4] ? +parts[4] : undefined,\n url: parts[3]\n }\n}\n\nfunction tryToGetString(candidate, property) {\n if (typeof candidate !== 'object' || !candidate || !(property in candidate)) {\n return undefined\n }\n var value = candidate[property]\n return typeof value === 'string' ? value : undefined\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"tracekit.js","names":["instrumentMethod","isNullUndefinedDefaultValue","computeStackTrace","ERROR_TYPES_RE","startUnhandledErrorCollection","callback","_instrumentOnError","instrumentOnError","_instrumentUnhandledRejection","instrumentUnhandledRejection","stop","window","params","parameters","messageObj","url","line","column","errorObj","stackTrace","Error","location","parse","tryToParseMessage","name","message","stack","toString","call","groups","exec","e","reason"],"sources":["../../src/tracekit/tracekit.js"],"sourcesContent":["import { instrumentMethod } from '../helper/instrumentMethod'\nimport { isNullUndefinedDefaultValue } from '../helper/tools'\nimport { computeStackTrace } from './computeStackTrace'\n\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error#Error_types\nvar ERROR_TYPES_RE =\n /^(?:[Uu]ncaught (?:exception: )?)?(?:((?:Eval|Internal|Range|Reference|Syntax|Type|URI|)Error): )?([\\s\\S]*)$/\n/**\n * Cross-browser collection of unhandled errors\n *\n * Supports:\n * - Firefox: full stack trace with line numbers, plus column number\n * on top frame; column number is not guaranteed\n * - Opera: full stack trace with line and column numbers\n * - Chrome: full stack trace with line and column numbers\n * - Safari: line and column number for the top frame only; some frames\n * may be missing, and column number is not guaranteed\n * - IE: line and column number for the top frame only; some frames\n * may be missing, and column number is not guaranteed\n *\n * In theory, TraceKit should work on all of the following versions:\n * - IE5.5+ (only 8.0 tested)\n * - Firefox 0.9+ (only 3.5+ tested)\n * - Opera 7+ (only 10.50 tested; versions 9 and earlier may require\n * Exceptions Have Stacktrace to be enabled in opera:config)\n * - Safari 3+ (only 4+ tested)\n * - Chrome 1+ (only 5+ tested)\n * - Konqueror 3.5+ (untested)\n *\n * Tries to catch all unhandled errors and report them to the\n * callback.\n *\n * Callbacks receive a StackTrace object as described in the\n * computeStackTrace docs.\n *\n * @memberof TraceKit\n * @namespace\n */\n\nexport function startUnhandledErrorCollection(callback) {\n var _instrumentOnError = instrumentOnError(callback)\n var _instrumentUnhandledRejection = instrumentUnhandledRejection(callback)\n return {\n stop: function () {\n _instrumentOnError.stop()\n _instrumentUnhandledRejection.stop()\n }\n }\n}\n\n/**\n * Install a global onerror handler\n */\nfunction instrumentOnError(callback) {\n return instrumentMethod(window, 'onerror', function (params) {\n var parameters = params.parameters\n var messageObj = parameters[0]\n var url = parameters[1]\n var line = parameters[2]\n var column = parameters[3]\n var errorObj = parameters[4]\n var stackTrace\n if (errorObj instanceof Error) {\n stackTrace = computeStackTrace(errorObj)\n } else {\n var location = {\n url: url,\n column: column,\n line: line\n }\n var parse = tryToParseMessage(messageObj)\n\n stackTrace = {\n name: parse.name,\n message: parse.message,\n stack: [location]\n }\n }\n callback(stackTrace, isNullUndefinedDefaultValue(errorObj, messageObj))\n })\n}\nfunction tryToParseMessage(messageObj) {\n let name\n let message\n if ({}.toString.call(messageObj) === '[object String]') {\n var groups = ERROR_TYPES_RE.exec(messageObj)\n if (groups) {\n name = groups[1]\n message = groups[2]\n }\n }\n return { name: name, message: message }\n}\n/**\n * Install a global onunhandledrejection handler\n */\nfunction instrumentUnhandledRejection(callback) {\n return instrumentMethod(window, 'onunhandledrejection', function (params) {\n var parameters = params.parameters\n var e = parameters[0]\n var reason = e.reason || 'Empty reason'\n var stack = computeStackTrace(reason)\n callback(stack, reason)\n })\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"tracekit.js","names":["instrumentMethod","isNullUndefinedDefaultValue","computeStackTrace","ERROR_TYPES_RE","startUnhandledErrorCollection","callback","_instrumentOnError","instrumentOnError","_instrumentUnhandledRejection","instrumentUnhandledRejection","stop","window","params","parameters","messageObj","url","line","column","errorObj","stackTrace","Error","location","parse","tryToParseMessage","name","message","stack","toString","call","groups","exec","e","reason"],"sources":["../../src/tracekit/tracekit.js"],"sourcesContent":["import { instrumentMethod } from '../helper/instrumentMethod'\nimport { isNullUndefinedDefaultValue } from '../helper/tools'\nimport { computeStackTrace } from './computeStackTrace'\n\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error#Error_types\nvar ERROR_TYPES_RE =\n /^(?:[Uu]ncaught (?:exception: )?)?(?:((?:Eval|Internal|Range|Reference|Syntax|Type|URI|)Error): )?([\\s\\S]*)$/\n/**\n * Cross-browser collection of unhandled errors\n *\n * Supports:\n * - Firefox: full stack trace with line numbers, plus column number\n * on top frame; column number is not guaranteed\n * - Opera: full stack trace with line and column numbers\n * - Chrome: full stack trace with line and column numbers\n * - Safari: line and column number for the top frame only; some frames\n * may be missing, and column number is not guaranteed\n * - IE: line and column number for the top frame only; some frames\n * may be missing, and column number is not guaranteed\n *\n * In theory, TraceKit should work on all of the following versions:\n * - IE5.5+ (only 8.0 tested)\n * - Firefox 0.9+ (only 3.5+ tested)\n * - Opera 7+ (only 10.50 tested; versions 9 and earlier may require\n * Exceptions Have Stacktrace to be enabled in opera:config)\n * - Safari 3+ (only 4+ tested)\n * - Chrome 1+ (only 5+ tested)\n * - Konqueror 3.5+ (untested)\n *\n * Tries to catch all unhandled errors and report them to the\n * callback.\n *\n * Callbacks receive a StackTrace object as described in the\n * computeStackTrace docs.\n *\n * @memberof TraceKit\n * @namespace\n */\n\nexport function startUnhandledErrorCollection(callback) {\n var _instrumentOnError = instrumentOnError(callback)\n var _instrumentUnhandledRejection = instrumentUnhandledRejection(callback)\n return {\n stop: function () {\n _instrumentOnError.stop()\n _instrumentUnhandledRejection.stop()\n }\n }\n}\n\n/**\n * Install a global onerror handler\n */\nfunction instrumentOnError(callback) {\n return instrumentMethod(window, 'onerror', function (params) {\n var parameters = params.parameters\n var messageObj = parameters[0]\n var url = parameters[1]\n var line = parameters[2]\n var column = parameters[3]\n var errorObj = parameters[4]\n var stackTrace\n if (errorObj instanceof Error) {\n stackTrace = computeStackTrace(errorObj)\n } else {\n var location = {\n url: url,\n column: column,\n line: line\n }\n var parse = tryToParseMessage(messageObj)\n\n stackTrace = {\n name: parse.name,\n message: parse.message,\n stack: [location]\n }\n }\n callback(stackTrace, isNullUndefinedDefaultValue(errorObj, messageObj))\n })\n}\nfunction tryToParseMessage(messageObj) {\n let name\n let message\n if ({}.toString.call(messageObj) === '[object String]') {\n var groups = ERROR_TYPES_RE.exec(messageObj)\n if (groups) {\n name = groups[1]\n message = groups[2]\n }\n }\n return { name: name, message: message }\n}\n/**\n * Install a global onunhandledrejection handler\n */\nfunction instrumentUnhandledRejection(callback) {\n return instrumentMethod(window, 'onunhandledrejection', function (params) {\n var parameters = params.parameters\n var e = parameters[0]\n var reason = e.reason || 'Empty reason'\n var stack = computeStackTrace(reason)\n callback(stack, reason)\n })\n}\n"],"mappings":"AAAA,SAASA,gBAAgB,QAAQ,4BAA4B;AAC7D,SAASC,2BAA2B,QAAQ,iBAAiB;AAC7D,SAASC,iBAAiB,QAAQ,qBAAqB;;AAEvD;AACA,IAAIC,cAAc,GAChB,8GAA8G;AAChH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,OAAO,SAASC,6BAA6BA,CAACC,QAAQ,EAAE;EACtD,IAAIC,kBAAkB,GAAGC,iBAAiB,CAACF,QAAQ,CAAC;EACpD,IAAIG,6BAA6B,GAAGC,4BAA4B,CAACJ,QAAQ,CAAC;EAC1E,OAAO;IACLK,IAAI,EAAE,SAANA,IAAIA,CAAA,EAAc;MAChBJ,kBAAkB,CAACI,IAAI,CAAC,CAAC;MACzBF,6BAA6B,CAACE,IAAI,CAAC,CAAC;IACtC;EACF,CAAC;AACH;;AAEA;AACA;AACA;AACA,SAASH,iBAAiBA,CAACF,QAAQ,EAAE;EACnC,OAAOL,gBAAgB,CAACW,MAAM,EAAE,SAAS,EAAE,UAAUC,MAAM,EAAE;IAC3D,IAAIC,UAAU,GAAGD,MAAM,CAACC,UAAU;IAClC,IAAIC,UAAU,GAAGD,UAAU,CAAC,CAAC,CAAC;IAC9B,IAAIE,GAAG,GAAGF,UAAU,CAAC,CAAC,CAAC;IACvB,IAAIG,IAAI,GAAGH,UAAU,CAAC,CAAC,CAAC;IACxB,IAAII,MAAM,GAAGJ,UAAU,CAAC,CAAC,CAAC;IAC1B,IAAIK,QAAQ,GAAGL,UAAU,CAAC,CAAC,CAAC;IAC5B,IAAIM,UAAU;IACd,IAAID,QAAQ,YAAYE,KAAK,EAAE;MAC7BD,UAAU,GAAGjB,iBAAiB,CAACgB,QAAQ,CAAC;IAC1C,CAAC,MAAM;MACL,IAAIG,QAAQ,GAAG;QACbN,GAAG,EAAEA,GAAG;QACRE,MAAM,EAAEA,MAAM;QACdD,IAAI,EAAEA;MACR,CAAC;MACD,IAAIM,KAAK,GAAGC,iBAAiB,CAACT,UAAU,CAAC;MAEzCK,UAAU,GAAG;QACXK,IAAI,EAAEF,KAAK,CAACE,IAAI;QAChBC,OAAO,EAAEH,KAAK,CAACG,OAAO;QACtBC,KAAK,EAAE,CAACL,QAAQ;MAClB,CAAC;IACH;IACAhB,QAAQ,CAACc,UAAU,EAAElB,2BAA2B,CAACiB,QAAQ,EAAEJ,UAAU,CAAC,CAAC;EACzE,CAAC,CAAC;AACJ;AACA,SAASS,iBAAiBA,CAACT,UAAU,EAAE;EACrC,IAAIU,IAAI;EACR,IAAIC,OAAO;EACX,IAAI,CAAC,CAAC,CAACE,QAAQ,CAACC,IAAI,CAACd,UAAU,CAAC,KAAK,iBAAiB,EAAE;IACtD,IAAIe,MAAM,GAAG1B,cAAc,CAAC2B,IAAI,CAAChB,UAAU,CAAC;IAC5C,IAAIe,MAAM,EAAE;MACVL,IAAI,GAAGK,MAAM,CAAC,CAAC,CAAC;MAChBJ,OAAO,GAAGI,MAAM,CAAC,CAAC,CAAC;IACrB;EACF;EACA,OAAO;IAAEL,IAAI,EAAEA,IAAI;IAAEC,OAAO,EAAEA;EAAQ,CAAC;AACzC;AACA;AACA;AACA;AACA,SAAShB,4BAA4BA,CAACJ,QAAQ,EAAE;EAC9C,OAAOL,gBAAgB,CAACW,MAAM,EAAE,sBAAsB,EAAE,UAAUC,MAAM,EAAE;IACxE,IAAIC,UAAU,GAAGD,MAAM,CAACC,UAAU;IAClC,IAAIkB,CAAC,GAAGlB,UAAU,CAAC,CAAC,CAAC;IACrB,IAAImB,MAAM,GAAGD,CAAC,CAACC,MAAM,IAAI,cAAc;IACvC,IAAIN,KAAK,GAAGxB,iBAAiB,CAAC8B,MAAM,CAAC;IACrC3B,QAAQ,CAACqB,KAAK,EAAEM,MAAM,CAAC;EACzB,CAAC,CAAC;AACJ","ignoreList":[]}
@@ -94,7 +94,6 @@ export var processedMessageByDataMap = function processedMessageByDataMap(messag
94
94
  rowData.time = message.date; // 这里不需要转译
95
95
  }
96
96
  });
97
-
98
97
  return {
99
98
  rowStr: hasFileds ? rowStr : '',
100
99
  rowData: hasFileds ? rowData : undefined