package.build.npm.cjs.tracing.backgroundtab.js.map Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of browser Show documentation
Show all versions of browser Show documentation
Official Sentry SDK for browsers
{"version":3,"file":"backgroundtab.js","sources":["../../../../src/tracing/backgroundtab.ts"],"sourcesContent":["import { SPAN_STATUS_ERROR, getActiveSpan, getRootSpan } from '@sentry/core';\nimport { spanToJSON } from '@sentry/core';\nimport { logger } from '@sentry/utils';\n\nimport { DEBUG_BUILD } from '../debug-build';\nimport { WINDOW } from '../helpers';\n\n/**\n * Add a listener that cancels and finishes a transaction when the global\n * document is hidden.\n */\nexport function registerBackgroundTabDetection(): void {\n if (WINDOW && WINDOW.document) {\n WINDOW.document.addEventListener('visibilitychange', () => {\n const activeSpan = getActiveSpan();\n if (!activeSpan) {\n return;\n }\n\n const rootSpan = getRootSpan(activeSpan);\n\n if (WINDOW.document.hidden && rootSpan) {\n const cancelledStatus = 'cancelled';\n\n const { op, status } = spanToJSON(rootSpan);\n\n if (DEBUG_BUILD) {\n logger.log(`[Tracing] Transaction: ${cancelledStatus} -> since tab moved to the background, op: ${op}`);\n }\n\n // We should not set status if it is already set, this prevent important statuses like\n // error or data loss from being overwritten on transaction.\n if (!status) {\n rootSpan.setStatus({ code: SPAN_STATUS_ERROR, message: cancelledStatus });\n }\n\n rootSpan.setAttribute('sentry.cancellation_reason', 'document.hidden');\n rootSpan.end();\n }\n });\n } else {\n DEBUG_BUILD && logger.warn('[Tracing] Could not set up background tab detection due to lack of global document');\n }\n}\n"],"names":["WINDOW","getActiveSpan","getRootSpan","spanToJSON","DEBUG_BUILD","logger","SPAN_STATUS_ERROR"],"mappings":";;;;;;;AAOA;AACA;AACA;AACA;AACO,SAAS,8BAA8B,GAAS;AACvD,EAAE,IAAIA,cAAA,IAAUA,cAAM,CAAC,QAAQ,EAAE;AACjC,IAAIA,cAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,MAAM;AAC/D,MAAM,MAAM,UAAA,GAAaC,kBAAa,EAAE,CAAA;AACxC,MAAM,IAAI,CAAC,UAAU,EAAE;AACvB,QAAQ,OAAM;AACd,OAAM;AACN;AACA,MAAM,MAAM,QAAS,GAAEC,gBAAW,CAAC,UAAU,CAAC,CAAA;AAC9C;AACA,MAAM,IAAIF,cAAM,CAAC,QAAQ,CAAC,MAAA,IAAU,QAAQ,EAAE;AAC9C,QAAQ,MAAM,eAAgB,GAAE,WAAW,CAAA;AAC3C;AACA,QAAQ,MAAM,EAAE,EAAE,EAAE,MAAA,KAAWG,eAAU,CAAC,QAAQ,CAAC,CAAA;AACnD;AACA,QAAQ,IAAIC,sBAAW,EAAE;AACzB,UAAUC,YAAM,CAAC,GAAG,CAAC,CAAC,uBAAuB,EAAE,eAAe,CAAC,2CAA2C,EAAE,EAAE,CAAC,CAAA,CAAA,CAAA;AACA,SAAA;AACA;AACA;AACA;AACA,QAAA,IAAA,CAAA,MAAA,EAAA;AACA,UAAA,QAAA,CAAA,SAAA,CAAA,EAAA,IAAA,EAAAC,sBAAA,EAAA,OAAA,EAAA,eAAA,EAAA,CAAA,CAAA;AACA,SAAA;AACA;AACA,QAAA,QAAA,CAAA,YAAA,CAAA,4BAAA,EAAA,iBAAA,CAAA,CAAA;AACA,QAAA,QAAA,CAAA,GAAA,EAAA,CAAA;AACA,OAAA;AACA,KAAA,CAAA,CAAA;AACA,GAAA,MAAA;AACA,IAAAF,sBAAA,IAAAC,YAAA,CAAA,IAAA,CAAA,oFAAA,CAAA,CAAA;AACA,GAAA;AACA;;;;"}