nextRoutingInstrumentation.js 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. import { WINDOW } from '@sentry/react';
  2. import { appRouterInstrumentation } from './appRouterRoutingInstrumentation.js';
  3. import { pagesRouterInstrumentation } from './pagesRouterRoutingInstrumentation.js';
  4. /**
  5. * Instruments the Next.js Client Router.
  6. *
  7. * @deprecated Use `browserTracingIntegration()` as exported from `@sentry/nextjs` instead.
  8. */
  9. function nextRouterInstrumentation(
  10. startTransactionCb,
  11. startTransactionOnPageLoad = true,
  12. startTransactionOnLocationChange = true,
  13. startPageloadSpanCallback,
  14. startNavigationSpanCallback,
  15. ) {
  16. const isAppRouter = !WINDOW.document.getElementById('__NEXT_DATA__');
  17. if (isAppRouter) {
  18. appRouterInstrumentation(
  19. startTransactionCb,
  20. startTransactionOnPageLoad,
  21. startTransactionOnLocationChange,
  22. startPageloadSpanCallback || (() => undefined),
  23. startNavigationSpanCallback || (() => undefined),
  24. );
  25. } else {
  26. pagesRouterInstrumentation(
  27. startTransactionCb,
  28. startTransactionOnPageLoad,
  29. startTransactionOnLocationChange,
  30. startPageloadSpanCallback || (() => undefined),
  31. startNavigationSpanCallback || (() => undefined),
  32. );
  33. }
  34. }
  35. export { nextRouterInstrumentation };
  36. //# sourceMappingURL=nextRoutingInstrumentation.js.map