@coralogix/browser 1.6.0 → 1.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (183) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/package.json +4 -4
  3. package/src/Request.js +32 -0
  4. package/src/Request.js.map +1 -0
  5. package/src/add-timing.js +9 -0
  6. package/src/add-timing.js.map +1 -0
  7. package/src/before-send.js +40 -0
  8. package/src/before-send.js.map +1 -0
  9. package/src/configuration.js +67 -0
  10. package/src/configuration.js.map +1 -0
  11. package/src/constants.js +183 -0
  12. package/src/constants.js.map +1 -0
  13. package/src/custom-spans/custom-spans.consts.js +4 -0
  14. package/src/custom-spans/custom-spans.consts.js.map +1 -0
  15. package/src/custom-spans/custom-spans.types.js +2 -0
  16. package/src/custom-spans/custom-spans.types.js.map +1 -0
  17. package/src/custom-spans/custom-spans.utils.js +40 -0
  18. package/src/custom-spans/custom-spans.utils.js.map +1 -0
  19. package/src/custom-spans/index.js +4 -0
  20. package/src/custom-spans/index.js.map +1 -0
  21. package/src/filters/filters.js +28 -0
  22. package/src/filters/filters.js.map +1 -0
  23. package/src/helpers.js +21 -0
  24. package/src/helpers.js.map +1 -0
  25. package/src/index.js +391 -0
  26. package/src/index.js.map +1 -0
  27. package/src/instrumentations/CoralogixCustomLogInstrumentation.js +35 -0
  28. package/src/instrumentations/CoralogixCustomLogInstrumentation.js.map +1 -0
  29. package/src/instrumentations/CoralogixDOMInstrumentation.js +33 -0
  30. package/src/instrumentations/CoralogixDOMInstrumentation.js.map +1 -0
  31. package/src/instrumentations/CoralogixErrorInstrumentation.js +257 -0
  32. package/src/instrumentations/CoralogixErrorInstrumentation.js.map +1 -0
  33. package/src/instrumentations/CoralogixInternalInstrumentation.js +50 -0
  34. package/src/instrumentations/CoralogixInternalInstrumentation.js.map +1 -0
  35. package/src/instrumentations/CoralogixLongTaskInstrumentation.js +47 -0
  36. package/src/instrumentations/CoralogixLongTaskInstrumentation.js.map +1 -0
  37. package/src/instrumentations/CoralogixResourcesInstrumentation.js +106 -0
  38. package/src/instrumentations/CoralogixResourcesInstrumentation.js.map +1 -0
  39. package/src/instrumentations/CoralogixWebVitalsInstrumentation.js +193 -0
  40. package/src/instrumentations/CoralogixWebVitalsInstrumentation.js.map +1 -0
  41. package/src/instrumentations/custom-measurements/CoralogixCustomMeasurementInstrumentation.js +26 -0
  42. package/src/instrumentations/custom-measurements/CoralogixCustomMeasurementInstrumentation.js.map +1 -0
  43. package/src/instrumentations/custom-measurements/custom-measurements.types.js +2 -0
  44. package/src/instrumentations/custom-measurements/custom-measurements.types.js.map +1 -0
  45. package/src/instrumentations/custom-measurements/index.js +4 -0
  46. package/src/instrumentations/custom-measurements/index.js.map +1 -0
  47. package/src/instrumentations/custom-measurements/timeMeasurementTracker.js +38 -0
  48. package/src/instrumentations/custom-measurements/timeMeasurementTracker.js.map +1 -0
  49. package/src/instrumentations/instrumentation.consts.js +61 -0
  50. package/src/instrumentations/instrumentation.consts.js.map +1 -0
  51. package/src/instrumentations/instrumentation.helper.js +4 -0
  52. package/src/instrumentations/instrumentation.helper.js.map +1 -0
  53. package/src/instrumentations/instrumentation.model.js +18 -0
  54. package/src/instrumentations/instrumentation.model.js.map +1 -0
  55. package/src/instrumentations/memory-usage/CoralogixMemoryUsageInstrumentation.js +58 -0
  56. package/src/instrumentations/memory-usage/CoralogixMemoryUsageInstrumentation.js.map +1 -0
  57. package/src/instrumentations/memory-usage/index.js +5 -0
  58. package/src/instrumentations/memory-usage/index.js.map +1 -0
  59. package/src/instrumentations/memory-usage/memory-usage-constants.js +4 -0
  60. package/src/instrumentations/memory-usage/memory-usage-constants.js.map +1 -0
  61. package/src/instrumentations/memory-usage/memory-usage.types.js +2 -0
  62. package/src/instrumentations/memory-usage/memory-usage.types.js.map +1 -0
  63. package/src/instrumentations/memory-usage/memory-usage.utils.js +33 -0
  64. package/src/instrumentations/memory-usage/memory-usage.utils.js.map +1 -0
  65. package/src/instrumentations/network/CoralogixFetchInstrumentation.js +103 -0
  66. package/src/instrumentations/network/CoralogixFetchInstrumentation.js.map +1 -0
  67. package/src/instrumentations/network/CoralogixXhrInstrumentation.js +61 -0
  68. package/src/instrumentations/network/CoralogixXhrInstrumentation.js.map +1 -0
  69. package/src/instrumentations/network/HeadersManager.js +42 -0
  70. package/src/instrumentations/network/HeadersManager.js.map +1 -0
  71. package/src/instrumentations/network/NetworkDataManager.js +87 -0
  72. package/src/instrumentations/network/NetworkDataManager.js.map +1 -0
  73. package/src/instrumentations/network/constants.js +7 -0
  74. package/src/instrumentations/network/constants.js.map +1 -0
  75. package/src/instrumentations/network/network.utils.js +11 -0
  76. package/src/instrumentations/network/network.utils.js.map +1 -0
  77. package/src/instrumentations/screenshot/CoralogixScreenshotInstrumentation.js +28 -0
  78. package/src/instrumentations/screenshot/CoralogixScreenshotInstrumentation.js.map +1 -0
  79. package/src/instrumentations/screenshot/screenshot.utils.js +3 -0
  80. package/src/instrumentations/screenshot/screenshot.utils.js.map +1 -0
  81. package/src/instrumentations/user-interaction/CoralogixUserInteractionInstrumentation.js +65 -0
  82. package/src/instrumentations/user-interaction/CoralogixUserInteractionInstrumentation.js.map +1 -0
  83. package/src/instrumentations/user-interaction/user-interaction.utils.js +73 -0
  84. package/src/instrumentations/user-interaction/user-interaction.utils.js.map +1 -0
  85. package/src/internal-event-reporter.js +7 -0
  86. package/src/internal-event-reporter.js.map +1 -0
  87. package/src/label-providers/url-based-label-provider.js +24 -0
  88. package/src/label-providers/url-based-label-provider.js.map +1 -0
  89. package/src/labels/index.js +2 -0
  90. package/src/labels/index.js.map +1 -0
  91. package/src/labels/labels.utils.js +11 -0
  92. package/src/labels/labels.utils.js.map +1 -0
  93. package/src/mfe/mfe.types.js +2 -0
  94. package/src/mfe/mfe.types.js.map +1 -0
  95. package/src/otel/CoralogixPropgator.js +9 -0
  96. package/src/otel/CoralogixPropgator.js.map +1 -0
  97. package/src/otel/CoralogixWebTracerProvider.js +4 -0
  98. package/src/otel/CoralogixWebTracerProvider.js.map +1 -0
  99. package/src/otel/custom-sampler.js +9 -0
  100. package/src/otel/custom-sampler.js.map +1 -0
  101. package/src/otel/index.js +3 -0
  102. package/src/otel/index.js.map +1 -0
  103. package/src/otel/otel.consts.js +20 -0
  104. package/src/otel/otel.consts.js.map +1 -0
  105. package/src/otel/otel.utils.js +14 -0
  106. package/src/otel/otel.utils.js.map +1 -0
  107. package/src/otel/propagators.js +67 -0
  108. package/src/otel/propagators.js.map +1 -0
  109. package/src/processors/CoralogixExporter.js +103 -0
  110. package/src/processors/CoralogixExporter.js.map +1 -0
  111. package/src/processors/CoralogixNavigationProcessor.js +25 -0
  112. package/src/processors/CoralogixNavigationProcessor.js.map +1 -0
  113. package/src/processors/CoralogixSnapshotSpanProcessor.js +83 -0
  114. package/src/processors/CoralogixSnapshotSpanProcessor.js.map +1 -0
  115. package/src/processors/CoralogixSpanAttributesProcessor.js +56 -0
  116. package/src/processors/CoralogixSpanAttributesProcessor.js.map +1 -0
  117. package/src/processors/CoralogixSpanMapProcessor.js +273 -0
  118. package/src/processors/CoralogixSpanMapProcessor.js.map +1 -0
  119. package/src/processors/processor-base.model.js +2 -0
  120. package/src/processors/processor-base.model.js.map +1 -0
  121. package/src/processors/processor.helper.js +6 -0
  122. package/src/processors/processor.helper.js.map +1 -0
  123. package/src/session/session-idle.js +41 -0
  124. package/src/session/session-idle.js.map +1 -0
  125. package/src/session/session.consts.js +24 -0
  126. package/src/session/session.consts.js.map +1 -0
  127. package/src/session/session.helper.js +77 -0
  128. package/src/session/session.helper.js.map +1 -0
  129. package/src/session/session.model.js +11 -0
  130. package/src/session/session.model.js.map +1 -0
  131. package/src/session/sessionManager.js +175 -0
  132. package/src/session/sessionManager.js.map +1 -0
  133. package/src/session/sessionRecorder.js +336 -0
  134. package/src/session/sessionRecorder.js.map +1 -0
  135. package/src/session/sessionWithError.consts.js +15 -0
  136. package/src/session/sessionWithError.consts.js.map +1 -0
  137. package/src/session/workerManager.js +45 -0
  138. package/src/session/workerManager.js.map +1 -0
  139. package/src/snapshot/snapshot.consts.js +9 -0
  140. package/src/snapshot/snapshot.consts.js.map +1 -0
  141. package/src/snapshot/snapshot.model.js +2 -0
  142. package/src/snapshot/snapshot.model.js.map +1 -0
  143. package/src/snapshot/snapshotManager.js +29 -0
  144. package/src/snapshot/snapshotManager.js.map +1 -0
  145. package/src/tools/addEventListener.js +30 -0
  146. package/src/tools/addEventListener.js.map +1 -0
  147. package/src/tools/getGlobalObject.js +36 -0
  148. package/src/tools/getGlobalObject.js.map +1 -0
  149. package/src/tools/getZoneJsOriginalDom.js +17 -0
  150. package/src/tools/getZoneJsOriginalDom.js.map +1 -0
  151. package/src/tti-polyfill/tti-polyfill.d.ts +4 -0
  152. package/src/tti-polyfill/tti-polyfill.js +267 -0
  153. package/src/tti-polyfill/tti-polyfill.js.map +1 -0
  154. package/src/types-external.js +10 -0
  155. package/src/types-external.js.map +1 -0
  156. package/src/types.d.ts +1 -1
  157. package/src/types.js +39 -0
  158. package/src/types.js.map +1 -0
  159. package/src/utils/all.js +195 -0
  160. package/src/utils/all.js.map +1 -0
  161. package/src/utils/array.js +18 -0
  162. package/src/utils/array.js.map +1 -0
  163. package/src/utils/general.js +10 -0
  164. package/src/utils/general.js.map +1 -0
  165. package/src/utils/index.js +4 -0
  166. package/src/utils/index.js.map +1 -0
  167. package/src/utils/internal-rum-data.js +12 -0
  168. package/src/utils/internal-rum-data.js.map +1 -0
  169. package/src/utils/object.js +86 -0
  170. package/src/utils/object.js.map +1 -0
  171. package/src/utils/regex.js +16 -0
  172. package/src/utils/regex.js.map +1 -0
  173. package/src/utils/string.js +33 -0
  174. package/src/utils/string.js.map +1 -0
  175. package/src/utils/time.js +7 -0
  176. package/src/utils/time.js.map +1 -0
  177. package/src/version.d.ts +1 -1
  178. package/src/version.js +2 -0
  179. package/src/version.js.map +1 -0
  180. package/src/workers/session-recording-worker.js +77 -0
  181. package/src/workers/session-recording-worker.js.map +1 -0
  182. package/coralogix-browser-sdk.esm.d.ts +0 -1
  183. package/coralogix-browser-sdk.esm.js +0 -6635
package/CHANGELOG.md CHANGED
@@ -1,3 +1,9 @@
1
+ ## 1.7.0 (2025-01-21)
2
+
3
+ ### 🚀 Features
4
+
5
+ - Revert rollup bundling due to unexpected issues
6
+
1
7
  ## 1.6.0 (2025-01-19)
2
8
 
3
9
  ### 🚀 Features
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@coralogix/browser",
3
- "version": "1.6.0",
3
+ "version": "1.7.0",
4
4
  "description": "Official Coralogix SDK for browsers",
5
5
  "license": "Apache-2.0",
6
6
  "author": "Coralogix",
@@ -36,8 +36,8 @@
36
36
  "peerDependencies": {
37
37
  "typescript": ">=4.4.2"
38
38
  },
39
- "module": "./coralogix-browser-sdk.esm.js",
39
+ "types": "./src/index.d.ts",
40
+ "module": "./src/index.js",
40
41
  "type": "module",
41
- "main": "./coralogix-browser-sdk.esm.js",
42
- "types": "./coralogix-browser-sdk.esm.d.ts"
42
+ "main": "./src/index.js"
43
43
  }
package/src/Request.js ADDED
@@ -0,0 +1,32 @@
1
+ import { getSdkConfig } from './helpers';
2
+ import { CoralogixDomainsApiUrlMap, PROXY_CX_FORWARD_PARAMETER, } from './constants';
3
+ export class Request {
4
+ constructor(requestConfig) {
5
+ this.requestConfig = requestConfig;
6
+ this.resolvedUrl = '';
7
+ this.resolvedHeaders = {};
8
+ this.init();
9
+ }
10
+ init() {
11
+ const { proxyUrl, coralogixDomain, public_key } = getSdkConfig();
12
+ const { suffix, headers } = this.requestConfig;
13
+ const cxEndpoint = `${CoralogixDomainsApiUrlMap[coralogixDomain]}${suffix}`;
14
+ this.resolvedUrl = proxyUrl
15
+ ? `${proxyUrl}?${PROXY_CX_FORWARD_PARAMETER}=${encodeURIComponent(cxEndpoint)}`
16
+ : cxEndpoint;
17
+ if (public_key) {
18
+ headers['Authorization'] = `Bearer ${public_key}`;
19
+ }
20
+ this.resolvedHeaders = headers;
21
+ }
22
+ send(body) {
23
+ return fetch(this.resolvedUrl, {
24
+ method: 'POST',
25
+ headers: this.resolvedHeaders,
26
+ body,
27
+ }).catch((e) => {
28
+ return e;
29
+ });
30
+ }
31
+ }
32
+ //# sourceMappingURL=Request.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Request.js","sourceRoot":"","sources":["../../../../libs/browser/src/Request.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EACL,yBAAyB,EACzB,0BAA0B,GAC3B,MAAM,aAAa,CAAC;AAOrB,MAAM,OAAO,OAAO;IAGlB,YAAoB,aAA4B;QAA5B,kBAAa,GAAb,aAAa,CAAe;QAFxC,gBAAW,GAAW,EAAE,CAAC;QACzB,oBAAe,GAAgB,EAAE,CAAC;QAExC,IAAI,CAAC,IAAI,EAAE,CAAC;IACd,CAAC;IAEO,IAAI;QACV,MAAM,EAAE,QAAQ,EAAE,eAAe,EAAE,UAAU,EAAE,GAAG,YAAY,EAAE,CAAC;QACjE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;QAE/C,MAAM,UAAU,GAAG,GAAG,yBAAyB,CAAC,eAAe,CAAC,GAAG,MAAM,EAAE,CAAC;QAE5E,IAAI,CAAC,WAAW,GAAG,QAAQ;YACzB,CAAC,CAAC,GAAG,QAAQ,IAAI,0BAA0B,IAAI,kBAAkB,CAC7D,UAAU,CACX,EAAE;YACL,CAAC,CAAC,UAAU,CAAC;QAEf,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,CAAC,eAAe,CAAC,GAAG,UAAU,UAAU,EAAE,CAAC;QACpD,CAAC;QAED,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC;IACjC,CAAC;IAEM,IAAI,CAAC,IAAc;QACxB,OAAO,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE;YAC7B,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,IAAI,CAAC,eAAe;YAC7B,IAAI;SACL,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;YACb,OAAO,CAAC,CAAC;QACX,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -0,0 +1,9 @@
1
+ import { getNowTime } from './utils/time';
2
+ import { getSessionManager } from './helpers';
3
+ export function getTiming(duration) {
4
+ if (typeof duration === 'number') {
5
+ return duration;
6
+ }
7
+ return getNowTime() - getSessionManager().currentPageTimestamp;
8
+ }
9
+ //# sourceMappingURL=add-timing.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"add-timing.js","sourceRoot":"","sources":["../../../../libs/browser/src/add-timing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAE9C,MAAM,UAAU,SAAS,CAAC,QAAiB;IACzC,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;QACjC,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,OAAO,UAAU,EAAE,GAAG,iBAAiB,EAAE,CAAC,oBAAqB,CAAC;AAClE,CAAC"}
@@ -0,0 +1,40 @@
1
+ import { __rest } from "tslib";
2
+ import { isObject } from './utils/object';
3
+ export function processBeforeSend(cxSpan, options) {
4
+ if (!(options === null || options === void 0 ? void 0 : options.beforeSend)) {
5
+ return cxSpan;
6
+ }
7
+ const cxRumEvent = cxSpan.text.cx_rum;
8
+ const editableCxRumEvent = cxRumEventToEditable(cxRumEvent);
9
+ const beforeSendResult = options.beforeSend(editableCxRumEvent);
10
+ if (!validateBeforeSendResult(beforeSendResult)) {
11
+ return null;
12
+ }
13
+ const { version_metadata: { app_name: applicationName }, event_context: { severity }, } = beforeSendResult;
14
+ return Object.assign(Object.assign({}, cxSpan), { applicationName,
15
+ severity, text: { cx_rum: editableToCxRumEvent(beforeSendResult, cxRumEvent) } });
16
+ }
17
+ function validateBeforeSendResult(beforeSendResult) {
18
+ if (beforeSendResult == null)
19
+ return null;
20
+ const requiredKeys = [
21
+ 'version_metadata',
22
+ 'session_context',
23
+ 'page_context',
24
+ 'event_context',
25
+ ];
26
+ const isMissingRequiredKey = () => requiredKeys.some((key) => !(beforeSendResult === null || beforeSendResult === void 0 ? void 0 : beforeSendResult[key]));
27
+ if (!isObject(beforeSendResult) || isMissingRequiredKey()) {
28
+ console.warn('CoralogixRum: beforeSend must return null, undefined or a valid event.');
29
+ return null;
30
+ }
31
+ return beforeSendResult;
32
+ }
33
+ function cxRumEventToEditable(cxRumEvent) {
34
+ const { session_context: { user_id, user_name, user_email, user_metadata }, browser_sdk, timestamp } = cxRumEvent, rest = __rest(cxRumEvent, ["session_context", "browser_sdk", "timestamp"]);
35
+ return Object.assign(Object.assign({}, rest), { session_context: { user_id, user_email, user_name, user_metadata } });
36
+ }
37
+ function editableToCxRumEvent(editable, cxRumEvent) {
38
+ return Object.assign(Object.assign(Object.assign({}, cxRumEvent), editable), { session_context: Object.assign(Object.assign({}, cxRumEvent.session_context), editable.session_context) });
39
+ }
40
+ //# sourceMappingURL=before-send.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"before-send.js","sourceRoot":"","sources":["../../../../libs/browser/src/before-send.ts"],"names":[],"mappings":";AAOA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,MAAM,UAAU,iBAAiB,CAC/B,MAAc,EACd,OAAkC;IAElC,IAAI,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,UAAU,CAAA,EAAE,CAAC;QACzB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;IACtC,MAAM,kBAAkB,GAAG,oBAAoB,CAAC,UAAU,CAAC,CAAC;IAC5D,MAAM,gBAAgB,GAAG,OAAO,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC;IAEhE,IAAI,CAAC,wBAAwB,CAAC,gBAAgB,CAAC,EAAE,CAAC;QAChD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,EACJ,gBAAgB,EAAE,EAAE,QAAQ,EAAE,eAAe,EAAE,EAC/C,aAAa,EAAE,EAAE,QAAQ,EAAE,GAC5B,GAAG,gBAAiB,CAAC;IAEtB,uCACK,MAAM,KACT,eAAe;QACf,QAAQ,EACR,IAAI,EAAE,EAAE,MAAM,EAAE,oBAAoB,CAAC,gBAAiB,EAAE,UAAU,CAAC,EAAE,IACrE;AACJ,CAAC;AAED,SAAS,wBAAwB,CAC/B,gBAAkC;IAElC,IAAI,gBAAgB,IAAI,IAAI;QAAE,OAAO,IAAI,CAAC;IAE1C,MAAM,YAAY,GAA6C;QAC7D,kBAAkB;QAClB,iBAAiB;QACjB,cAAc;QACd,eAAe;KAChB,CAAC;IAEF,MAAM,oBAAoB,GAAG,GAAY,EAAE,CACzC,YAAY,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAG,GAAG,CAAC,CAAA,CAAC,CAAC;IAEvD,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,oBAAoB,EAAE,EAAE,CAAC;QAC1D,OAAO,CAAC,IAAI,CACV,wEAAwE,CACzE,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,gBAAgB,CAAC;AAC1B,CAAC;AAED,SAAS,oBAAoB,CAAC,UAAsB;IAClD,MAAM,EACJ,eAAe,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,aAAa,EAAE,EAClE,WAAW,EACX,SAAS,KAEP,UAAU,EADT,IAAI,UACL,UAAU,EALR,+CAKL,CAAa,CAAC;IAEf,uCACK,IAAI,KACP,eAAe,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,IAClE;AACJ,CAAC;AAED,SAAS,oBAAoB,CAC3B,QAA4B,EAC5B,UAAsB;IAEtB,qDACK,UAAU,GACV,QAAQ,KACX,eAAe,kCACV,UAAU,CAAC,eAAe,GAC1B,QAAQ,CAAC,eAAe,KAE7B;AACJ,CAAC"}
@@ -0,0 +1,67 @@
1
+ import { MASK_CLASS_DEFAULT, MASK_INPUT_TYPES_DEFAULT, OPTIONS_DEFAULTS, REQUIRED_CONFIG_KEYS, } from './constants';
2
+ import { isNil } from './utils/general';
3
+ import { resolveSessionConfig, resolveSessionRecordingConfig, } from './session/session.helper';
4
+ import { MEMORY_USAGE_DEFAULT_INTERVAL } from './instrumentations/memory-usage';
5
+ function isInitialConfigValid(initConfig) {
6
+ if (!initConfig) {
7
+ console.warn('CoralogixRum: Initialization configuration missing');
8
+ return;
9
+ }
10
+ // Ensure public key is provided when no proxy URL is set
11
+ if (!initConfig.proxyUrl && !initConfig.public_key) {
12
+ console.warn('CoralogixRum: Public key is missing');
13
+ return;
14
+ }
15
+ for (const requiredProp of REQUIRED_CONFIG_KEYS) {
16
+ if (isNil(initConfig[requiredProp])) {
17
+ console.error(`CoralogixRum: Initialization aborted. Please provide the required property "${requiredProp}".`);
18
+ return;
19
+ }
20
+ }
21
+ return true;
22
+ }
23
+ export function validateAndResolveInitConfig(config) {
24
+ var _a, _b, _c;
25
+ if (!isInitialConfigValid(config)) {
26
+ return;
27
+ }
28
+ const { ignoreUrls, urlBlueprinters, proxyUrl } = config;
29
+ const resolvedIgnoreUrls = [];
30
+ ignoreUrls && resolvedIgnoreUrls.push(...ignoreUrls);
31
+ if (proxyUrl)
32
+ resolvedIgnoreUrls.push(new RegExp(proxyUrl));
33
+ OPTIONS_DEFAULTS.ignoreUrls &&
34
+ resolvedIgnoreUrls.push(...OPTIONS_DEFAULTS.ignoreUrls);
35
+ return Object.assign(Object.assign(Object.assign({}, OPTIONS_DEFAULTS), config), { maskInputTypes: (_a = config.maskInputTypes) !== null && _a !== void 0 ? _a : MASK_INPUT_TYPES_DEFAULT, maskClass: (_b = config.maskClass) !== null && _b !== void 0 ? _b : MASK_CLASS_DEFAULT, ignoreUrls: resolvedIgnoreUrls, urlBlueprinters: resolveUrlBlueprinters(urlBlueprinters), sessionSampleRate: (_c = config.sessionSampleRate) !== null && _c !== void 0 ? _c : 100, sessionConfig: resolveSessionConfig(config.sessionConfig), sessionRecordingConfig: resolveSessionRecordingConfig(config.sessionRecordingConfig), memoryUsageConfig: resolveMemoryUsageConfig(config.memoryUsageConfig), trackSoftNavigations: !!config.trackSoftNavigations, supportMfe: !!config.supportMfe });
36
+ }
37
+ function resolveMemoryUsageConfig(memoryUsageConfig) {
38
+ var _a;
39
+ if (!memoryUsageConfig) {
40
+ return { enabled: false };
41
+ }
42
+ return Object.assign(Object.assign({}, memoryUsageConfig), { interval: (_a = memoryUsageConfig.interval) !== null && _a !== void 0 ? _a : MEMORY_USAGE_DEFAULT_INTERVAL });
43
+ }
44
+ function resolveUrlBlueprinters(urlBlueprinters) {
45
+ if (!urlBlueprinters) {
46
+ return OPTIONS_DEFAULTS.urlBlueprinters;
47
+ }
48
+ const resolvedUrlBlueprinters = {
49
+ pageUrlBlueprinters: [],
50
+ networkUrlBlueprinters: [],
51
+ };
52
+ const concatBlueprinters = (urlBlueprinters) => {
53
+ const { pageUrlBlueprinters, networkUrlBlueprinters } = urlBlueprinters || {};
54
+ if (pageUrlBlueprinters) {
55
+ resolvedUrlBlueprinters.pageUrlBlueprinters.push(...pageUrlBlueprinters);
56
+ }
57
+ if (networkUrlBlueprinters) {
58
+ resolvedUrlBlueprinters.networkUrlBlueprinters.push(...networkUrlBlueprinters);
59
+ }
60
+ };
61
+ concatBlueprinters(urlBlueprinters);
62
+ if (OPTIONS_DEFAULTS.urlBlueprinters) {
63
+ concatBlueprinters(OPTIONS_DEFAULTS.urlBlueprinters);
64
+ }
65
+ return resolvedUrlBlueprinters;
66
+ }
67
+ //# sourceMappingURL=configuration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configuration.js","sourceRoot":"","sources":["../../../../libs/browser/src/configuration.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,183 @@
1
+ import { CoralogixErrorInstrumentation, ERROR_INSTRUMENTATION_NAME, ErrorAttributes, } from './instrumentations/CoralogixErrorInstrumentation';
2
+ import { CoralogixFetchInstrumentation } from './instrumentations/network/CoralogixFetchInstrumentation';
3
+ import { CoralogixXhrInstrumentation } from './instrumentations/network/CoralogixXhrInstrumentation';
4
+ import { CoralogixCustomLogInstrumentation } from './instrumentations/CoralogixCustomLogInstrumentation';
5
+ import { CoralogixWebVitalsInstrumentation } from './instrumentations/CoralogixWebVitalsInstrumentation';
6
+ import { CUSTOM_MEASUREMENT_INSTRUMENTATION_NAME, DOM_INSTRUMENTATION_NAME, INTERNAL_INSTRUMENTATION_NAME, LONG_TASKS_INSTRUMENTATION_NAME, RESOURCES_INSTRUMENTATION_NAME, WEB_VITALS_INSTRUMENTATION_NAME, } from './instrumentations/instrumentation.consts';
7
+ import { CoralogixLongTaskInstrumentation } from './instrumentations/CoralogixLongTaskInstrumentation';
8
+ import { CoralogixResourcesInstrumentation } from './instrumentations/CoralogixResourcesInstrumentation';
9
+ import { replacePatternsInUrl } from './utils';
10
+ import { millisecondsPerSecond } from './utils/time';
11
+ import { CoralogixUserInteractionInstrumentation } from './instrumentations/user-interaction/CoralogixUserInteractionInstrumentation';
12
+ import { CoralogixMemoryUsageInstrumentation, MEMORY_USAGE_INSTRUMENTATION_NAME, } from './instrumentations/memory-usage';
13
+ import { CoralogixScreenshotInstrumentation } from './instrumentations/screenshot/CoralogixScreenshotInstrumentation';
14
+ import { SCREENSHOT_INSTRUMENTATION_NAME } from './instrumentations/screenshot/screenshot.utils';
15
+ import { CoralogixCustomMeasurementInstrumentation } from './instrumentations/custom-measurements';
16
+ import { CoralogixInternalInstrumentation } from './instrumentations/CoralogixInternalInstrumentation';
17
+ import { CoralogixDOMInstrumentation } from './instrumentations/CoralogixDOMInstrumentation';
18
+ export const CORALOGIX_LOGS_URL_SUFFIX = '/browser/v1beta/logs';
19
+ export const CORALOGIX_RECORDING_URL_SUFFIX = '/sessionrecording';
20
+ export const MAX_EXPORT_BATCH_SIZE = 50;
21
+ export const MAX_INTERACTION_ELEMENT_SIZE = 1024;
22
+ export const MAX_CHARACTERS = 1024;
23
+ export const SCHEDULE_DELAY_MILLIS = 2 * millisecondsPerSecond;
24
+ export const REQUIRED_CONFIG_KEYS = [
25
+ 'application',
26
+ 'version',
27
+ 'coralogixDomain',
28
+ ];
29
+ export const SDK_CONFIG_KEY = 'sdkConfig';
30
+ export const ID_MASK_KEY = '{id}';
31
+ export const UUID_REGEX = /[0-9a-fA-F-]{36}/g;
32
+ export const NANOID_REGEX = /^[a-zA-Z0-9-_]{21}$/;
33
+ export const PAGE_URL_LABEL_PROVIDERS_KEY = 'PAGE_URL_LABEL_PROVIDERS';
34
+ export const NETWORK_URL_LABEL_PROVIDERS_KEY = 'NETWORK_URL_LABEL_PROVIDERS';
35
+ export const RUM_INTERNAL_DATA_KEY = 'rumInternalData';
36
+ export const MASKED_TEXT = '***';
37
+ export const MASK_CLASS_DEFAULT = 'cx-mask';
38
+ export const MASK_INPUT_TYPES_DEFAULT = [
39
+ 'password',
40
+ 'email',
41
+ 'tel',
42
+ ];
43
+ const idPatterns = [
44
+ {
45
+ pattern: new RegExp(UUID_REGEX),
46
+ replacement: ID_MASK_KEY,
47
+ },
48
+ {
49
+ pattern: new RegExp(NANOID_REGEX),
50
+ replacement: ID_MASK_KEY,
51
+ },
52
+ ];
53
+ const defaultUrlBlueprinters = {
54
+ pageUrlBlueprinters: [
55
+ (url) => replacePatternsInUrl({ patterns: idPatterns, url }),
56
+ ],
57
+ };
58
+ export const OPTIONS_DEFAULTS = {
59
+ ignoreUrls: [
60
+ new RegExp(CORALOGIX_LOGS_URL_SUFFIX),
61
+ new RegExp(CORALOGIX_RECORDING_URL_SUFFIX),
62
+ ],
63
+ user_context: {
64
+ user_id: '',
65
+ user_name: '',
66
+ },
67
+ labels: {},
68
+ urlBlueprinters: defaultUrlBlueprinters,
69
+ collectIPData: true,
70
+ };
71
+ export const INSTRUMENTATIONS = [
72
+ {
73
+ Instrument: CoralogixErrorInstrumentation,
74
+ confKey: ERROR_INSTRUMENTATION_NAME,
75
+ disable: false,
76
+ },
77
+ {
78
+ Instrument: CoralogixFetchInstrumentation,
79
+ confKey: 'fetch',
80
+ disable: false,
81
+ },
82
+ {
83
+ Instrument: CoralogixXhrInstrumentation,
84
+ confKey: 'xhr',
85
+ disable: false,
86
+ },
87
+ {
88
+ Instrument: CoralogixCustomLogInstrumentation,
89
+ confKey: 'custom',
90
+ disable: false,
91
+ },
92
+ {
93
+ Instrument: CoralogixUserInteractionInstrumentation,
94
+ confKey: 'interactions',
95
+ disable: false,
96
+ },
97
+ {
98
+ Instrument: CoralogixWebVitalsInstrumentation,
99
+ confKey: WEB_VITALS_INSTRUMENTATION_NAME,
100
+ disable: false,
101
+ },
102
+ {
103
+ Instrument: CoralogixLongTaskInstrumentation,
104
+ confKey: LONG_TASKS_INSTRUMENTATION_NAME,
105
+ disable: false,
106
+ },
107
+ {
108
+ Instrument: CoralogixResourcesInstrumentation,
109
+ confKey: RESOURCES_INSTRUMENTATION_NAME,
110
+ disable: false,
111
+ },
112
+ {
113
+ Instrument: CoralogixInternalInstrumentation,
114
+ confKey: INTERNAL_INSTRUMENTATION_NAME,
115
+ disable: false,
116
+ },
117
+ {
118
+ Instrument: CoralogixDOMInstrumentation,
119
+ confKey: DOM_INSTRUMENTATION_NAME,
120
+ disable: false,
121
+ },
122
+ {
123
+ Instrument: CoralogixCustomMeasurementInstrumentation,
124
+ confKey: CUSTOM_MEASUREMENT_INSTRUMENTATION_NAME,
125
+ disable: false,
126
+ },
127
+ {
128
+ Instrument: CoralogixMemoryUsageInstrumentation,
129
+ confKey: MEMORY_USAGE_INSTRUMENTATION_NAME,
130
+ disable: false,
131
+ },
132
+ {
133
+ Instrument: CoralogixScreenshotInstrumentation,
134
+ confKey: SCREENSHOT_INSTRUMENTATION_NAME,
135
+ disable: false,
136
+ },
137
+ ];
138
+ export const CoralogixAttributes = {
139
+ USER_AGENT: 'user_agent',
140
+ LOCATION_HREF: 'location_href',
141
+ EVENT_TYPE: 'event_type',
142
+ SEVERITY: 'severity',
143
+ APPLICATION_CONTEXT: 'application_context',
144
+ USER_CONTEXT: 'user_context',
145
+ CUSTOM_MEASUREMENT_CONTEXT: 'custom_measurement_context',
146
+ MEMORY_USAGE_CONTEXT: 'memory_usage_context',
147
+ COUNTRY: 'country',
148
+ SOURCE: 'source',
149
+ ERROR: ErrorAttributes,
150
+ LOG: 'cx_log',
151
+ CUSTOM_LABELS: 'custom_labels',
152
+ ENVIRONMENT: 'environment',
153
+ INTERACTION_EVENT_NAME: 'interaction_event_name',
154
+ ELEMENT_INNER_TEXT: 'element_inner_text',
155
+ ELEMENT_INNER_HTML: 'element_inner_html',
156
+ ELEMENT_ID: 'element_id',
157
+ ELEMENT_CLASSES: 'element_classes',
158
+ TARGET_XPATH: 'target_xpath',
159
+ TARGET_ELEMENT: 'target_element',
160
+ TARGET_ELEMENT_TYPE: 'target_element_type',
161
+ TIMESTAMP: 'timestamp',
162
+ INTERNAL: 'internal',
163
+ PAGE_CONTEXT: 'page_context',
164
+ IS_NAVIGATION_EVENT: 'is_navigation_event',
165
+ SCREENSHOT_CONTEXT: 'screenshot_context',
166
+ };
167
+ export const CoralogixDomainsApiUrlMap = {
168
+ EU1: 'https://ingress.eu1.rum-ingress-coralogix.com', // eu-west-1 (Ireland)
169
+ EU2: 'https://ingress.eu2.rum-ingress-coralogix.com', // eu-north-1 (Stockholm)
170
+ US1: 'https://ingress.us1.rum-ingress-coralogix.com', // us-east-2 (Ohio)
171
+ US2: 'https://ingress.us2.rum-ingress-coralogix.com', // us-west-2 (Oregon)
172
+ AP1: 'https://ingress.ap1.rum-ingress-coralogix.com', // ap-south-1 (Mumbai)
173
+ AP2: 'https://ingress.ap2.rum-ingress-coralogix.com', // ap-southeast-1 (Singapore)
174
+ AP3: 'https://ingress.ap3.rum-ingress-coralogix.com', // ap-southeast-3 (Jakarta)
175
+ STAGING: 'https://ingress.staging.rum-ingress-coralogix.com',
176
+ };
177
+ export const PROXY_CX_FORWARD_PARAMETER = 'cxforward';
178
+ export const CX_MAPPED_SPAN = 'cx_mapped_span';
179
+ export const BASE_PATH = '/';
180
+ export const HASH_SEPARATOR = '#';
181
+ export const PARAMS_SEPARATOR = '?';
182
+ export const PROTOCOL_SEPARATOR = '://';
183
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../libs/browser/src/constants.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,6BAA6B,EAC7B,0BAA0B,EAC1B,eAAe,GAChB,MAAM,kDAAkD,CAAC;AAC1D,OAAO,EAAE,6BAA6B,EAAE,MAAM,0DAA0D,CAAC;AACzG,OAAO,EAAE,2BAA2B,EAAE,MAAM,wDAAwD,CAAC;AACrG,OAAO,EAAE,iCAAiC,EAAE,MAAM,sDAAsD,CAAC;AACzG,OAAO,EAAE,iCAAiC,EAAE,MAAM,sDAAsD,CAAC;AACzG,OAAO,EACL,uCAAuC,EACvC,wBAAwB,EACxB,6BAA6B,EAC7B,+BAA+B,EAC/B,8BAA8B,EAC9B,+BAA+B,GAChC,MAAM,2CAA2C,CAAC;AACnD,OAAO,EAAE,gCAAgC,EAAE,MAAM,qDAAqD,CAAC;AACvG,OAAO,EAAE,iCAAiC,EAAE,MAAM,sDAAsD,CAAC;AACzG,OAAO,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,EAAE,uCAAuC,EAAE,MAAM,6EAA6E,CAAC;AACtI,OAAO,EACL,mCAAmC,EACnC,iCAAiC,GAClC,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,kCAAkC,EAAE,MAAM,kEAAkE,CAAC;AACtH,OAAO,EAAE,+BAA+B,EAAE,MAAM,gDAAgD,CAAC;AACjG,OAAO,EAAE,yCAAyC,EAAE,MAAM,wCAAwC,CAAC;AACnG,OAAO,EAAE,gCAAgC,EAAE,MAAM,qDAAqD,CAAC;AACvG,OAAO,EAAE,2BAA2B,EAAE,MAAM,gDAAgD,CAAC;AAE7F,MAAM,CAAC,MAAM,yBAAyB,GAAG,sBAAsB,CAAC;AAChE,MAAM,CAAC,MAAM,8BAA8B,GAAG,mBAAmB,CAAC;AAElE,MAAM,CAAC,MAAM,qBAAqB,GAAG,EAAE,CAAC;AAExC,MAAM,CAAC,MAAM,4BAA4B,GAAG,IAAI,CAAC;AACjD,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,CAAC;AAEnC,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,GAAG,qBAAqB,CAAC;AAE/D,MAAM,CAAC,MAAM,oBAAoB,GAA2C;IAC1E,aAAa;IACb,SAAS;IACT,iBAAiB;CAClB,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,WAAW,CAAC;AAC1C,MAAM,CAAC,MAAM,WAAW,GAAG,MAAM,CAAC;AAClC,MAAM,CAAC,MAAM,UAAU,GAAG,mBAAmB,CAAC;AAC9C,MAAM,CAAC,MAAM,YAAY,GAAG,qBAAqB,CAAC;AAClD,MAAM,CAAC,MAAM,4BAA4B,GAAG,0BAA0B,CAAC;AACvE,MAAM,CAAC,MAAM,+BAA+B,GAAG,6BAA6B,CAAC;AAC7E,MAAM,CAAC,MAAM,qBAAqB,GAAG,iBAAiB,CAAC;AACvD,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,CAAC;AACjC,MAAM,CAAC,MAAM,kBAAkB,GAAG,SAAS,CAAC;AAC5C,MAAM,CAAC,MAAM,wBAAwB,GAAgB;IACnD,UAAU;IACV,OAAO;IACP,KAAK;CACN,CAAC;AAEF,MAAM,UAAU,GAAyB;IACvC;QACE,OAAO,EAAE,IAAI,MAAM,CAAC,UAAU,CAAC;QAC/B,WAAW,EAAE,WAAW;KACzB;IACD;QACE,OAAO,EAAE,IAAI,MAAM,CAAC,YAAY,CAAC;QACjC,WAAW,EAAE,WAAW;KACzB;CACF,CAAC;AAEF,MAAM,sBAAsB,GAAoB;IAC9C,mBAAmB,EAAE;QACnB,CAAC,GAAG,EAAE,EAAE,CAAC,oBAAoB,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC;KAC7D;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAuC;IAClE,UAAU,EAAE;QACV,IAAI,MAAM,CAAC,yBAAyB,CAAC;QACrC,IAAI,MAAM,CAAC,8BAA8B,CAAC;KAC3C;IACD,YAAY,EAAE;QACZ,OAAO,EAAE,EAAE;QACX,SAAS,EAAE,EAAE;KACd;IACD,MAAM,EAAE,EAAE;IACV,eAAe,EAAE,sBAAsB;IACvC,aAAa,EAAE,IAAI;CACpB,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B;QACE,UAAU,EAAE,6BAA6B;QACzC,OAAO,EAAE,0BAA0B;QACnC,OAAO,EAAE,KAAK;KACf;IACD;QACE,UAAU,EAAE,6BAA6B;QACzC,OAAO,EAAE,OAAO;QAChB,OAAO,EAAE,KAAK;KACf;IACD;QACE,UAAU,EAAE,2BAA2B;QACvC,OAAO,EAAE,KAAK;QACd,OAAO,EAAE,KAAK;KACf;IACD;QACE,UAAU,EAAE,iCAAiC;QAC7C,OAAO,EAAE,QAAQ;QACjB,OAAO,EAAE,KAAK;KACf;IACD;QACE,UAAU,EAAE,uCAAuC;QACnD,OAAO,EAAE,cAAc;QACvB,OAAO,EAAE,KAAK;KACf;IACD;QACE,UAAU,EAAE,iCAAiC;QAC7C,OAAO,EAAE,+BAA+B;QACxC,OAAO,EAAE,KAAK;KACf;IACD;QACE,UAAU,EAAE,gCAAgC;QAC5C,OAAO,EAAE,+BAA+B;QACxC,OAAO,EAAE,KAAK;KACf;IACD;QACE,UAAU,EAAE,iCAAiC;QAC7C,OAAO,EAAE,8BAA8B;QACvC,OAAO,EAAE,KAAK;KACf;IACD;QACE,UAAU,EAAE,gCAAgC;QAC5C,OAAO,EAAE,6BAA6B;QACtC,OAAO,EAAE,KAAK;KACf;IACD;QACE,UAAU,EAAE,2BAA2B;QACvC,OAAO,EAAE,wBAAwB;QACjC,OAAO,EAAE,KAAK;KACf;IACD;QACE,UAAU,EAAE,yCAAyC;QACrD,OAAO,EAAE,uCAAuC;QAChD,OAAO,EAAE,KAAK;KACf;IACD;QACE,UAAU,EAAE,mCAAmC;QAC/C,OAAO,EAAE,iCAAiC;QAC1C,OAAO,EAAE,KAAK;KACf;IACD;QACE,UAAU,EAAE,kCAAkC;QAC9C,OAAO,EAAE,+BAA+B;QACxC,OAAO,EAAE,KAAK;KACf;CACO,CAAC;AAEX,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,UAAU,EAAE,YAAY;IACxB,aAAa,EAAE,eAAe;IAC9B,UAAU,EAAE,YAAY;IACxB,QAAQ,EAAE,UAAU;IACpB,mBAAmB,EAAE,qBAAqB;IAC1C,YAAY,EAAE,cAAc;IAC5B,0BAA0B,EAAE,4BAA4B;IACxD,oBAAoB,EAAE,sBAAsB;IAC5C,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,QAAQ;IAChB,KAAK,EAAE,eAAe;IACtB,GAAG,EAAE,QAAQ;IACb,aAAa,EAAE,eAAe;IAC9B,WAAW,EAAE,aAAa;IAC1B,sBAAsB,EAAE,wBAAwB;IAChD,kBAAkB,EAAE,oBAAoB;IACxC,kBAAkB,EAAE,oBAAoB;IACxC,UAAU,EAAE,YAAY;IACxB,eAAe,EAAE,iBAAiB;IAClC,YAAY,EAAE,cAAc;IAC5B,cAAc,EAAE,gBAAgB;IAChC,mBAAmB,EAAE,qBAAqB;IAC1C,SAAS,EAAE,WAAW;IACtB,QAAQ,EAAE,UAAU;IACpB,YAAY,EAAE,cAAc;IAC5B,mBAAmB,EAAE,qBAAqB;IAC1C,kBAAkB,EAAE,oBAAoB;CACzC,CAAC;AAEF,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,GAAG,EAAE,+CAA+C,EAAE,sBAAsB;IAC5E,GAAG,EAAE,+CAA+C,EAAE,yBAAyB;IAC/E,GAAG,EAAE,+CAA+C,EAAE,mBAAmB;IACzE,GAAG,EAAE,+CAA+C,EAAE,qBAAqB;IAC3E,GAAG,EAAE,+CAA+C,EAAE,sBAAsB;IAC5E,GAAG,EAAE,+CAA+C,EAAE,6BAA6B;IACnF,GAAG,EAAE,+CAA+C,EAAE,2BAA2B;IACjF,OAAO,EAAE,mDAAmD;CAC7D,CAAC;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAG,WAAW,CAAC;AAEtD,MAAM,CAAC,MAAM,cAAc,GAAG,gBAAgB,CAAC;AAE/C,MAAM,CAAC,MAAM,SAAS,GAAG,GAAG,CAAC;AAC7B,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,CAAC;AAClC,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,CAAC;AACpC,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,CAAC"}
@@ -0,0 +1,4 @@
1
+ export const GLOBAL_SPAN_KEY = '__globalSpan__';
2
+ export const CUSTOM_TRACER_KEY = '__customTracer__';
3
+ export const CUSTOM_TRACER_IGNORED_INSTRUMENTS = '__customTracerIgnoredInstruments__';
4
+ //# sourceMappingURL=custom-spans.consts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom-spans.consts.js","sourceRoot":"","sources":["../../../../../libs/browser/src/custom-spans/custom-spans.consts.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,eAAe,GAAG,gBAAgB,CAAC;AAChD,MAAM,CAAC,MAAM,iBAAiB,GAAG,kBAAkB,CAAC;AACpD,MAAM,CAAC,MAAM,iCAAiC,GAC5C,oCAAoC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=custom-spans.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom-spans.types.js","sourceRoot":"","sources":["../../../../../libs/browser/src/custom-spans/custom-spans.types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,40 @@
1
+ import { CUSTOM_TRACER_IGNORED_INSTRUMENTS, CUSTOM_TRACER_KEY, GLOBAL_SPAN_KEY, } from './custom-spans.consts';
2
+ export function setGlobalSpan(globalSpan) {
3
+ window[GLOBAL_SPAN_KEY] = globalSpan;
4
+ }
5
+ export function getGlobalSpan() {
6
+ return window[GLOBAL_SPAN_KEY];
7
+ }
8
+ export function clearGlobalSpan() {
9
+ delete window[GLOBAL_SPAN_KEY];
10
+ }
11
+ export function setCustomTracer(customTracer) {
12
+ window[CUSTOM_TRACER_KEY] = customTracer;
13
+ }
14
+ export function getCustomTracer() {
15
+ return window[CUSTOM_TRACER_KEY];
16
+ }
17
+ export function clearCustomTracer() {
18
+ delete window[CUSTOM_TRACER_KEY];
19
+ }
20
+ export function setCustomTracerIgnoredInstruments(ignoredInstruments) {
21
+ window[CUSTOM_TRACER_IGNORED_INSTRUMENTS] = ignoredInstruments;
22
+ }
23
+ export function getCustomTracerIgnoredInstruments() {
24
+ return window[CUSTOM_TRACER_IGNORED_INSTRUMENTS];
25
+ }
26
+ export function shouldAttachSpanToGlobalSpan(instrumentationType) {
27
+ var _a;
28
+ return (getGlobalSpan() &&
29
+ !((_a = getCustomTracerIgnoredInstruments()) === null || _a === void 0 ? void 0 : _a.includes(instrumentationType)));
30
+ }
31
+ export function attachChildSpanToGlobalSpan(name) {
32
+ let span;
33
+ const globalSpan = getGlobalSpan();
34
+ globalSpan.withContext(() => {
35
+ const childSpan = globalSpan.startCustomSpan(name);
36
+ span = childSpan.span;
37
+ });
38
+ return span;
39
+ }
40
+ //# sourceMappingURL=custom-spans.utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom-spans.utils.js","sourceRoot":"","sources":["../../../../../libs/browser/src/custom-spans/custom-spans.utils.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,iCAAiC,EACjC,iBAAiB,EACjB,eAAe,GAChB,MAAM,uBAAuB,CAAC;AAI/B,MAAM,UAAU,aAAa,CAAC,UAAsB;IAClD,MAAM,CAAC,eAAe,CAAC,GAAG,UAAU,CAAC;AACvC,CAAC;AAED,MAAM,UAAU,aAAa;IAC3B,OAAO,MAAM,CAAC,eAAe,CAAC,CAAC;AACjC,CAAC;AAED,MAAM,UAAU,eAAe;IAC7B,OAAO,MAAM,CAAC,eAAe,CAAC,CAAC;AACjC,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,YAAoB;IAClD,MAAM,CAAC,iBAAiB,CAAC,GAAG,YAAY,CAAC;AAC3C,CAAC;AAED,MAAM,UAAU,eAAe;IAC7B,OAAO,MAAM,CAAC,iBAAiB,CAAC,CAAC;AACnC,CAAC;AAED,MAAM,UAAU,iBAAiB;IAC/B,OAAO,MAAM,CAAC,iBAAiB,CAAC,CAAC;AACnC,CAAC;AAED,MAAM,UAAU,iCAAiC,CAC/C,kBAAoD;IAEpD,MAAM,CAAC,iCAAiC,CAAC,GAAG,kBAAkB,CAAC;AACjE,CAAC;AAED,MAAM,UAAU,iCAAiC;IAC/C,OAAO,MAAM,CAAC,iCAAiC,CAAC,CAAC;AACnD,CAAC;AAED,MAAM,UAAU,4BAA4B,CAC1C,mBAAmD;;IAEnD,OAAO,CACL,aAAa,EAAE;QACf,CAAC,CAAA,MAAA,iCAAiC,EAAE,0CAAE,QAAQ,CAAC,mBAAmB,CAAC,CAAA,CACpE,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,IAAY;IACtD,IAAI,IAAW,CAAC;IAEhB,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;IAEnC,UAAU,CAAC,WAAW,CAAC,GAAG,EAAE;QAC1B,MAAM,SAAS,GAAG,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QACnD,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC;IACxB,CAAC,CAAC,CAAC;IAEH,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -0,0 +1,4 @@
1
+ export * from './custom-spans.consts';
2
+ export * from './custom-spans.types';
3
+ export * from './custom-spans.utils';
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../libs/browser/src/custom-spans/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC"}
@@ -0,0 +1,28 @@
1
+ import { CoralogixEventType, } from '../types';
2
+ import { stringMatchesSomePattern } from '../utils';
3
+ import { ErrorSource } from '../instrumentations/CoralogixErrorInstrumentation';
4
+ export function shouldDropEvent(cxRumEvent, options) {
5
+ if (isDocumentErrorWithoutMessage(cxRumEvent)) {
6
+ options.debug && console.warn('Document error without message dropped.');
7
+ return true;
8
+ }
9
+ if (isIgnoredError(cxRumEvent, options.ignoreErrors)) {
10
+ options.debug && console.warn('Ignored error dropped.');
11
+ return true;
12
+ }
13
+ return false;
14
+ }
15
+ function isDocumentErrorWithoutMessage(cxRumEvent) {
16
+ const { event_context, error_context } = cxRumEvent || {};
17
+ return (event_context.type === CoralogixEventType.ERROR &&
18
+ event_context.source === ErrorSource.DOCUMENT &&
19
+ !(error_context === null || error_context === void 0 ? void 0 : error_context.error_message));
20
+ }
21
+ function isIgnoredError(cxRumEvent, ignoreErrors) {
22
+ if (!cxRumEvent.error_context || !(ignoreErrors === null || ignoreErrors === void 0 ? void 0 : ignoreErrors.length)) {
23
+ return false;
24
+ }
25
+ const errorMessage = cxRumEvent.error_context.error_message || '';
26
+ return stringMatchesSomePattern(errorMessage, ignoreErrors);
27
+ }
28
+ //# sourceMappingURL=filters.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filters.js","sourceRoot":"","sources":["../../../../../libs/browser/src/filters/filters.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,kBAAkB,GAEnB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,wBAAwB,EAAE,MAAM,UAAU,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,mDAAmD,CAAC;AAEhF,MAAM,UAAU,eAAe,CAC7B,UAAsB,EACtB,OAAkC;IAElC,IAAI,6BAA6B,CAAC,UAAU,CAAC,EAAE,CAAC;QAC9C,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC;QACzE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,cAAc,CAAC,UAAU,EAAE,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;QACrD,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;QACxD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,6BAA6B,CAAC,UAAsB;IAC3D,MAAM,EAAE,aAAa,EAAE,aAAa,EAAE,GAAG,UAAU,IAAI,EAAE,CAAC;IAC1D,OAAO,CACL,aAAa,CAAC,IAAI,KAAK,kBAAkB,CAAC,KAAK;QAC/C,aAAa,CAAC,MAAM,KAAK,WAAW,CAAC,QAAQ;QAC7C,CAAC,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,aAAa,CAAA,CAC9B,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CACrB,UAAsB,EACtB,YAAuD;IAEvD,IAAI,CAAC,UAAU,CAAC,aAAa,IAAI,CAAC,CAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,MAAM,CAAA,EAAE,CAAC;QACvD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,YAAY,GAAW,UAAU,CAAC,aAAa,CAAC,aAAa,IAAI,EAAE,CAAC;IAE1E,OAAO,wBAAwB,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;AAC9D,CAAC"}
package/src/helpers.js ADDED
@@ -0,0 +1,21 @@
1
+ import { SDK_CONFIG_KEY } from './constants';
2
+ import { SESSION_MANAGER_KEY, SESSION_RECORDER_KEY, } from './session/session.consts';
3
+ import { SNAPSHOT_MANAGER_KEY } from './snapshot/snapshot.consts';
4
+ export function getSnapshotManager() {
5
+ return window[SNAPSHOT_MANAGER_KEY];
6
+ }
7
+ export function getSessionManager() {
8
+ return window[SESSION_MANAGER_KEY];
9
+ }
10
+ export function getSessionRecorder() {
11
+ return window[SESSION_RECORDER_KEY];
12
+ }
13
+ export function getSdkConfig() {
14
+ return window[SDK_CONFIG_KEY];
15
+ }
16
+ export function clearMemoryFrom(keys) {
17
+ keys.forEach((key) => {
18
+ delete window[key];
19
+ });
20
+ }
21
+ //# sourceMappingURL=helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../../libs/browser/src/helpers.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAG7C,OAAO,EACL,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAGlE,MAAM,UAAU,kBAAkB;IAChC,OAAO,MAAM,CAAC,oBAAoB,CAAC,CAAC;AACtC,CAAC;AAED,MAAM,UAAU,iBAAiB;IAC/B,OAAO,MAAM,CAAC,mBAAmB,CAAC,CAAC;AACrC,CAAC;AAED,MAAM,UAAU,kBAAkB;IAChC,OAAO,MAAM,CAAC,oBAAoB,CAAC,CAAC;AACtC,CAAC;AAED,MAAM,UAAU,YAAY;IAC1B,OAAO,MAAM,CAAC,cAAc,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,IAAc;IAC5C,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;QACnB,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;IACrB,CAAC,CAAC,CAAC;AACL,CAAC"}