@sentry/browser
Version:
Official Sentry SDK for browsers
71 lines (67 loc) • 3.14 kB
JavaScript
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
const browser = require('@sentry/core/browser');
const client = require('./client.js');
const breadcrumbs = require('./integrations/breadcrumbs.js');
const browserapierrors = require('./integrations/browserapierrors.js');
const browsersession = require('./integrations/browsersession.js');
const culturecontext = require('./integrations/culturecontext.js');
const globalhandlers = require('./integrations/globalhandlers.js');
const httpcontext = require('./integrations/httpcontext.js');
const linkederrors = require('./integrations/linkederrors.js');
const spotlight = require('./integrations/spotlight.js');
const stackParsers = require('./stack-parsers.js');
const fetch = require('./transports/fetch.js');
const normalizeStringifyValue = require('./normalizeStringifyValue.js');
const detectBrowserExtension = require('./utils/detectBrowserExtension.js');
function getDefaultIntegrations(_options) {
return [
// TODO(v11): Replace with `eventFiltersIntegration` once we remove the deprecated `inboundFiltersIntegration`
// eslint-disable-next-line deprecation/deprecation
browser.inboundFiltersIntegration(),
browser.functionToStringIntegration(),
browser.conversationIdIntegration(),
browserapierrors.browserApiErrorsIntegration(),
breadcrumbs.breadcrumbsIntegration(),
globalhandlers.globalHandlersIntegration(),
linkederrors.linkedErrorsIntegration(),
browser.dedupeIntegration(),
httpcontext.httpContextIntegration(),
culturecontext.cultureContextIntegration(),
browsersession.browserSessionIntegration()
];
}
function init(options = {}) {
const shouldDisableBecauseIsBrowserExtenstion = !options.skipBrowserExtensionCheck && detectBrowserExtension.checkAndWarnIfIsEmbeddedBrowserExtension();
let defaultIntegrations = options.defaultIntegrations == null ? getDefaultIntegrations() : options.defaultIntegrations;
/*! rollup-include-development-only */
if (options.spotlight) {
if (!defaultIntegrations) {
defaultIntegrations = [];
}
const args = typeof options.spotlight === "string" ? { sidecarUrl: options.spotlight } : void 0;
defaultIntegrations.push(spotlight.spotlightBrowserIntegration(args));
}
/*! rollup-include-development-only-end */
const clientOptions = {
...options,
enabled: shouldDisableBecauseIsBrowserExtenstion ? false : options.enabled,
stackParser: browser.stackParserFromStackParserOptions(options.stackParser || stackParsers.defaultStackParser),
integrations: browser.getIntegrationsToSetup({
integrations: options.integrations,
defaultIntegrations
}),
transport: options.transport || fetch.makeFetchTransport
};
browser.setNormalizeStringifier(normalizeStringifyValue.normalizeStringifyValue);
return browser.initAndBind(client.BrowserClient, clientOptions);
}
function forceLoad() {
}
function onLoad(callback) {
callback();
}
exports.forceLoad = forceLoad;
exports.getDefaultIntegrations = getDefaultIntegrations;
exports.init = init;
exports.onLoad = onLoad;
//# sourceMappingURL=sdk.js.map