Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); const core = require('@sentry/core'); function isVersionMetadata(value) { return core.isObjectLike(value) && "id" in value && typeof value.id === "string"; } function getEnvVar(env, varName) { return core.isObjectLike(env) && varName in env && typeof env[varName] === "string" ? env[varName] : void 0; } function getFinalOptions(userOptions = {}, env) { if (typeof env !== "object" || env === null) { return userOptions; } const release = "SENTRY_RELEASE" in env && typeof env.SENTRY_RELEASE === "string" ? env.SENTRY_RELEASE : "CF_VERSION_METADATA" in env && isVersionMetadata(env.CF_VERSION_METADATA) ? env.CF_VERSION_METADATA.id : void 0; const tracesSampleRate = userOptions.tracesSampleRate ?? parseFloat(getEnvVar(env, "SENTRY_TRACES_SAMPLE_RATE") ?? ""); const spotlight = getSpotlightFromEnv(userOptions.spotlight, getEnvVar(env, "SENTRY_SPOTLIGHT")); return { release, ...userOptions, dsn: userOptions.dsn ?? getEnvVar(env, "SENTRY_DSN"), environment: userOptions.environment ?? getEnvVar(env, "SENTRY_ENVIRONMENT"), tracesSampleRate: isFinite(tracesSampleRate) ? tracesSampleRate : void 0, debug: userOptions.debug ?? core.envToBool(getEnvVar(env, "SENTRY_DEBUG")), tunnel: userOptions.tunnel ?? getEnvVar(env, "SENTRY_TUNNEL"), spotlight }; } function getSpotlightFromEnv(optionsSpotlight, envVar) { if (optionsSpotlight === false) { return false; } if (typeof optionsSpotlight === "string") { return optionsSpotlight; } const envBool = core.envToBool(envVar, { strict: true }); const envUrl = envBool === null && envVar ? envVar : void 0; return optionsSpotlight === true ? envUrl ?? true : envBool ?? envUrl; } exports.getFinalOptions = getFinalOptions; //# sourceMappingURL=options.js.map